数据链路基础知识

:::danger 数据链路层的三大问题:
1.封装成帧 2.差错控制 3.可靠传输
数据链路层是OSI参考模型第二层,上层是网络层。
1、数据链路层主要目的:将原始的、有差错的物理线路变成无差错的数据链路。
2、数据链路层主要功能:
⑴.链路管理è数据链路的建立、维护、释放;
⑵.帧同步è接收方应从收到的比特流中正确地判断出一帧的开始与结束位;
⑶.流量控制è控制发送方的数据发送速度,使得接收方来得及接收,以致网络不发生拥塞;
⑷.差错控制è发现传输中出现的错误;
⑸.透明传输è采取适当措施,使接收方不至于把数据误认为是控制信息;
⑹.寻址è收发双方应知道对方是谁;
3、数据链路层的简单模型:

c00b4941f25185ded03d9496011125b1.png
4、数据链路层使用的信道主要有以下两种类型:
①.点对点信道è这种信道使用一对一的点对点通信方式
②.广播信道è这种信道使用一对多的广播通信方式,过程比较复杂。广播信道上连接的主机很多,必须使用专用的共享信道协议来协调这些主机的数据发送。
5、基本概念:链路和数据链路
⑴、链路:是一个结点到相邻结点的一段物理线路段,中间没有任何其他的交换结点。
注意:一条链路只是一条通路的一个组成部分;
⑵、数据链路:除了物理线路外,还必须有通信协议来控制这些数据的传输。若
把实现这些协议的硬件和软件加到链路上,就构成了数据链路;
即:数据链路 = 链路 + 控制数据传输的通信协议
①.现在最常用的方法是使用适配器(即网卡)来实现这些协议的硬件和软件
②.一般的适配器都包括了数据链路层和物理层这两层的功能。
6、数据链路层协议传输的数据单位: 数据帧( 简称“帧” )
注意:物理层传输的数据单元是“比特”、网络层传输的数据单元是“IP数据报” (简称:数据报分组);
7、实现数据链路层协议的最常用设备:网络适配器(即:网卡网络接口卡)

:::

点对点信道数据链路层通信主要步骤

:::danger ⑴、发送方A数据链路层将网络层交下来的IP数据报添加首部和尾部封装成帧;
⑵、发送方A将封装好的帧发送给结点B的数据链路层;
⑶、接收方B收到的帧无错,则从帧中提取出IP数据报转交给网络层;若有错,则丢弃该帧(如下图所示)。
24a01c697b024984e71cda0085f28bc0.png
3.1.3、三个基本问题:封装成帧、透明传输、差错检测
1、封装成帧è在一段数据的前后分别添加首部和尾部,就构成了一个帧
⑴、帧的首部和尾部一个重要作用是进行帧定界;
⑵、帧首和帧尾还包括许多必要的控制信息;
⑶、为提高帧传输效率,应使帧的数据部分尽可能大;
⑷、每一种链路层协议都规定了数据部分长度上限èMTU
帧长 = 帧首部长 + 数据部分长 + 帧尾部长

例题3.1】当数据仅由可打印的ASCⅡ码组成的文本文件时,帧定界可以使用特殊的帧定界符。
SOH:表示控制字符名称,ASCⅡ码为00000001,不是‘S’、‘O’、‘H’。
EOT:也是控制字符名称,ASCⅡ码为00000100,不是‘E’、‘O’、‘T’。
2、透明传输:当数据部分是非ASCⅡ文件时,若数据某字节恰好是SOH或EOT这种控制字符时,数据链路层就会错误地处理帧,这就是“不透明传输”,显然:如果数据部分某字节是SOH或EOT字符时也能正确传输,我们称之为透明传输
实现透明传输的方法:插入转义字符ESC00011011):
⑴、若数据部分出现EOT或SOH时,就在这个EOT和SOH前插入ESC;接收方在送交网络层之前将这个ESC删除。
⑵、用ESC ESC表示ESC。
上述方法称之为“字节填充”或“字符填充
3、差错检测
⑴、差错产生的原因和差错类型:
当数据从信源出发经过通信信道时,由于通信信道存在着噪声,因此数据信号通过通信信道到达信宿时,接收到的信号必然是数据信号与信号电平的叠加。
接收方对叠加后的信号进行判断,以确定0、1值。如果判断错误,则会产生数据传输错误。
噪声分两类:热噪声、冲击噪声:
①.热噪声是由传输介质导体的分子热运动产生的。时刻存在,由它引起的噪声是随机的,引起的差错是随机差错;
②.冲击噪声引起突发错。
误码率:二进制比特在数据传输系统中被传错的概率。传输错误的比特数/总比特数 ::: | SOH(帧开始符) | 帧中数据部分 | EOT(帧结束符) | | —- | —- | —- |