在点对点信道中
-
链路和数据链路的区别:
- 链路是相邻结点之间的物理线路。
- 数据链路里除了物理线路,还包括实现协议的硬件和软件,比如适配器。 -
点对点信道数据链路层的通信步骤:
- 首先A结点的数据链路层把网络层传下的IP数据报添加首部尾部封装成帧。
- A把封装好的帧发送给B的数据链路层。
- 若B的数据链路层接收无误,则去掉首部尾部恢复成IP数据报上传给网络层;若有误,丢弃。
- 注:可以直接将该过程想象为两结点的数据链路层之间的水平传输。 -
数据链路层协议应当解决的三个基本问题:
- 1.封装成帧:在某一段数据的首部和尾部分别添加标记信息和控制信息。理论上要做到数据部分的长度要尽可能大于首尾部长度,但是也有一个数据部分长度上限。在传输数据时,只有收到开始符SOH和结束符EOT,才算是收到了一段完整数据。
- 2.透明传输:在封装成帧后要进行传输,SOH和EOT表示一段数据的开始和结束。但是如果在数据部分恰好有某一小段的内容为SOH或EOT,接收端就有可能将其错误的默认为开始符或结束符。为了解决这个问题,在数据内容中出现的“SOH”和“EOT”之前会插入一个转义字符ESC,最后会在接收端删除。假如ESC也恰好出现在数据内容中,则要在这个“ESC”前再插入一个真正的ESC,接收端收到连续两个ESC后便会删除前面的一个
- 3.差错检测:一般都会使用循环冗余检