博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
数据链路层
阅读量:5899 次
发布时间:2019-06-19

本文共 1512 字,大约阅读时间需要 5 分钟。

一、概述

1-使用点对点信道的数据链路层

数据链路和帧
三个基本问题

2-点对点协议 PPP
PPP 协议的特点
PPP 协议的帧格式
PPP 协议的工作状态

3-使用广播信道的数据链路层
局域网的数据链路层
CSMA/CD 协议

4-使用广播信道的以太网
使用集线器的星形拓扑
以太网的信道利用率
以太网的 MAC 层

5-扩展的以太网
在物理层扩展以太网
在数据链路层扩展以太网

6-高速以太网
100BASE-T 以太网
吉比特以太网
10 吉比特以太网
使用高速以太网进行宽带接入

7-其他类型的高速局域网接口

二、数据链路层的任务

1-将在网络层交下来的IP数据报组装成帧

2-在两个相邻结点间的链路上传送以帧为单位的数据

3-每一帧包括数据和必要的控制信息(如同步信息、地址信息、差错控制以及流量控制信息等)。

同步——控制信息使接收端能够知道一个帧从哪个比特开始和到哪个比特结束。
差错控制——控制信息还使接收端能够检测到所接受到帧中有无差错。并且可以进行差错处理。

三、数据链路层使用的信道

主要有以下两种类型:

1-点对点信道。

这种信道使用一对一的点对点通信方式。

2-广播信道。

这种信道使用一对多的广播通信方式,因此过程比较复杂。广播信道上连接的主机很多,因此必须使用专用的共享信道协议来协调这些主机的数据发送。

 

四、数据链路与帧

链路(link)是一条无源的点到点的物理线路段,中间没有任何其他的交换结点。

一条链路只是一条通路的一个组成部分。

数据链路(data link) 除了物理线路外,还必须有通信协议来控制这些数据的传输。若把实现这些协议的硬件和软件加到链路上,就构成了数据链路。
       现在最常用的方法是使用适配器(即网卡)来实现这些协议的硬件和软件。
       一般的适配器都包括了数据链路层和物理层这两层的功能。

帧=数据+控制信息

数据链路层传送的是帧

五、三个基本问题

(1) 封装成帧
(2) 透明传输
(3) 差错控制

1

封装成帧(framing)就是在一段数据的前后分别添加首部和尾部,然后就构成了一个帧。

首部和尾部的一个重要作用就是进行帧定界。

透明传输

传输的数据中不允许出现用作帧定界的控制字符,否则会出现帧界定错误。

解决透明传输问题

发送端的数据链路层在数据中出现控制字符“SOH”或“EOT”的前面插入一个转义字符“ESC”。

接收端的数据链路层在将数据送往网络层之前删除插入的转义字符。
这种方法被称为字节填充(byte stuffing)或字符填充(character stuffing)
如果转义字符也出现数据当中,那么应在转义字符前面插入一个转义字符。当接收端收到连续的两个转义字符时,就删除其中前面的一个。

 

3

差错检测

在传输过程中可能会产生比特差错:1 可能会变成 0 而 0 也可能变成 1。
误码率与信噪比有很大的关系。

为了保证数据传输的可靠性,在计算机网络传输数据时,必须采用各种差错检测措施。

在数据链路层传送的帧中,广泛使用了循环冗余检验 CRC 的检错技术(Cyclic Redundancy Check)。

在发送端,先把数据划分为组。假定每组 k 个比特。
假设待传送的一组数据 M = 101001(现在 k = 6)。我们在 M 的后面再添加供差错检测用的 n 位冗余码一起发送。
在数据后面添加上的冗余码称为帧检验序列 FCS (Frame Check Sequence)。
接收端对收到的每一帧进行 CRC 检验。

 

 

 

 

转载于:https://www.cnblogs.com/wander-clouds/p/8963884.html

你可能感兴趣的文章
Hadoop学习笔记系列文章导航
查看>>
Win7 64位 php-5.5.13+Apache 2.4.9+mysql-5.6.19 配置
查看>>
不同页面之间实现参数传递的几种方式讨论
查看>>
程序员进阶之路—如何独当一面
查看>>
SpringMVC中ModelAndView addObject()设置的值jsp取不到的问题
查看>>
Prometheus : 入门
查看>>
使用 PowerShell 创建和修改 ExpressRoute 线路
查看>>
PHP如何学习?
查看>>
谈教育与成长
查看>>
jni c++
查看>>
在C#中获取如PHP函数time()一样的时间戳
查看>>
Redis List数据类型
查看>>
大数据项目实践(四)——之Hive配置
查看>>
初学vue2.0-组件-文档理解笔记v1.0
查看>>
NG-ZORRO-MOBILE 0.11.9 发布,基于 Angular 7 的 UI 组件
查看>>
我就是一个救火员(DBA救援)
查看>>
Centos7安装Gitlab10.0
查看>>
Windows Server 笔记(六):Active Directory域服务:域控制器安装
查看>>
discuz X3登录流程分析
查看>>
上传图片预览
查看>>