0
点赞
收藏
分享

微信扫一扫

Data Link Layer

(一)通信模型

Data Link Layer_透明传输

I.信道类型

(1)点对点信道:就是使用​一对一​的点对点通信方式。

Data Link Layer_数据链路层_02


(2)广播信道:广播信道上连接多个主机,需要使用专用的​共享信道协议​来协调主机的数据发送。

详情可以参考:

​​        ​https://www.cnblogs.com/cone/p/14869605.html​​


II.内部结构

Data Link Layer_透明传输_03

(二)解决问题

I.封装成帧(frame)

在数据的前后分别加上首部和尾部(​包含了许多控制信息​),构成了一个帧。

首部和尾部作用之一就是:​帧定界(确定帧的界限)。

MTU(​Maximum Transfer Unit​):最大数据传输单元。

注意​:并不是所有的帧都需要帧定界,如MAC帧则就是不需要,它是通过在帧的一端加入​前导码​。

Data Link Layer_透明传输_04

II.透明传输

数据链路对上层的传输数据没有任何限制,就好像数据链路层不存在一样。

通俗理解就是在数据传输的过程中,​数据能够被完整无误的传输(‘‘透明传输’’)​,如果传输的数据不完整,就不是“​透明传输​”,因为有阻碍数据完整传输的因素存在。

为了使数据实现透明传输,需要解决传输数据中出现和帧定界相同的信息

面向字节​的物理链路,使用​字节填充(或字符填充​)的方法来实现透明传输。

Data Link Layer_数据链路层_05

说明:通过使用转义字符“ESC”来进行转义的

面向比特​的物理链路,使用​比特填充​的方法来实现透明传输

Data Link Layer_透明传输_06

III.差错检测

   ​在比特传输的过程中可能会产生差错,比如0变成了1或1变为了0,称为​“比特差错​”。

检错方法:

方法一:奇偶校验法

Data Link Layer_差错检测_07

说明:奇校验就是说加上校验位后“1”的总数是​奇数个

         偶校验就是说加上检验位后“1”的总数是​偶数个

如果在接收端检测发现​奇数个的“1”变为偶数个“1​”或​偶数个的“1”变为奇数个“1”,则就可以检查出错误

缺点:会出现“漏检“”(由于突变的比特位总数是偶数位)

方法二:循环冗余校验码(​CRC:Cyclic Redundancy Check​)

具体详情请看:

​​https://blog.51cto.com/u_15314328/5119093​​

可靠传输与不可靠传输

可靠传输​:就是数据链路层的发送端发送什么,在接收端就接受什么。

不可靠传输​:在传输的过程中出现了差错(传输差错或比特差错)

详情参考:

​​https://www.zhihu.com/question/39324847​​

(三)点对点协议PPP

I.内容

Data Link Layer_封装成帧_08

(1)​一个将IP数据报封装到串行链路的方法​。PPP既支持异步链路,也支持面向比特的同步链路。同步:发送方发出数据后,等接收方发回响应以后才发下一个数据包的通讯方式。  异步:发送方发出数据后,不等接收方发回响应,接着发送下个数据包的通讯方式。

具体区分可以参考:

​​https://www.csdn.net/tags/OtDacg4sMzA3MDQtYmxvZwO0O0OO0O0O.html​​

(2)一个用来建立、配置和测试数据链路连接的链路控制协议LCP(Link Control Protocol).

(3)一套网络控制协议NCP(Network Control Protocol),其中每一个协议支持不同的网络层协议

有关NCP介绍:

​​http://www.zhaozhishi.com/pc/11/2007-11-17/668.html

PPP协议具体特点可以参考:

​​https://www.html.cn/qa/other/21314.html​​

II.帧格式

Data Link Layer_封装成帧_09

MAC帧​​数据帧​​​的一种。而所谓数据帧,就是​​数据链路层​​​​​协议数据单元​​​,它包括三部分:帧头,数据部分,帧尾

PPP协议下的字节填充和比特填充请参考:

​​https://www.csdn.net/tags/MtjaIg1sMTA5OTctYmxvZwO0O0OO0O0O.html​​












举报

相关推荐

0 条评论