第三章 - 数据链路层
数据链路层使用的信道主要有两种:
点对点
信道广播
信道。
链路
:从一个结点到相邻结点的一段物理线路,而中间没有任何其他的交换结点
数据链路
:把实现通信协议的硬件和软件加到链路上,就构成了数据链路
数据链路层的协议很多,但都有三个共同的问题:
- 封装成帧
- 透明传输
- 差错检测
PPP的数据链路层的主要通信步骤:
- 首先,结点A的数据链路层把网络层交下来的IP数据报添加
首部
和尾部
封装成帧 - 然后,结点A把封装好的帧发送给结点B的数据链路层
- 最后,若结点B的数据链路层收到的帧无差错,则从收到的帧中提取出IP数据报上交给上面的网络层,否则丢弃这个帧
PPP信道的数据链路层的协议数据单元是--帧
。
Δ 数据链路层的功能
把网络层交下来的数据帧构成帧发送到链路上,以及把接收到的帧中的数据取出并上交给网络层。在因特网中,网络层协议数据单元就是IP数据报(数据报、分组或包)。
2、常见的组帧的方法
3、循环冗余校验码CRC的原理
在发送端,将数据划分为组,每组 k 个比特,CRC运算即在数据 M 的后面添加共差错检测用的 n 位冗余码,然后构成一个帧发送出去。
n 位冗余码的计算:
- 用二进制的模2运算进行的运算(相当于在 M 后面添加 n 个0),得到一个 k+n 位的数
- 将这个 k+n 位的数除以双方事先商定的长度为 n+1 位的除数 P,得到商 Q,余数 R
- R 即为冗余码(又称帧检验序列FCS),将 R 拼接在 M 的后面,构成一个帧发送出去
在接收端,用模2运算将收到的每个帧除以相同的除数 P,然后检查余数 R,如果传输没有比特差错,则 R 为0,如果 R 不为0,则传输中有比特差错,丢弃该帧(如果有比特差错 R 仍为0的概率极低)