QA:

  • 为什么建立链路连接?

它将物理层提供的可能出错的传送原始比特流的物理连接改造成逻辑上无差错的数据链路

  • 链路连接与物理连接的联系和区别?
  • 数据链路层上常用的差错控制编码有哪些?
  • 数据链路层上常用的流量控制策略有哪些?
  • 常用的数据链路层协议有哪些?

数据链路层的功能

  1. 帧同步
  2. 差错控制
  3. 流量控制
  4. 链路管理

    4.1 差错控制

    4.1.1 差错的产生及特征

    • 计算机网络通信中,差错控制主要针对 冲击噪声
    • 通过特殊的编码(差错控制码): 检错码、纠错码

      4.1.2 编码效率、检错和纠错能力

    • 码字:信息位+校验位(冗余位)

    • 编码效率:信息位占码字数占比
    • 两个码字的不同位的个数称为这两个码字的距离
    • 这个最小距离称为该码字表(编码系统)的海明距离
    • 检测d位出错,则海明距离至少为d+1.;若纠正d位出错,则海明距离至少为2d+1

      4.1.3 海明码

4.1.4 循环冗余码CRC

信息位:1010001
→信息编码多项式:M(x)=x 5+x4+1
生成多项式:G(x) r次多项式:如x 4+x2+x+1,r=4
**冗余位:R(x)= MOD(xr
M(x)/G(x)) //M(x)后补r个0,然后模2不借位除以G(x)
image.png
→要发送的
码字多项式T(x)=xrM(x)+ R(x)*
接收端:(T′(x))/G(x))=0则正确
CRC检错率取决于生成多项式G(x)

4.1.5 其它差错控制编码

  • 奇偶校验码
  • 定比码:指定每个码字中均含有相同数目的“1”
  • 正反码

    4.2 流量控制

    4.2.1 停—等协议

    超时计时器;保存帧序号
    image.png

信道最大利用率:
image.png
B为信道速率,L为帧长,R为信号在信道中的单程传播延时
_
差错造成的重发,以及帧头、校验和冗余信息:实际利用率

4.2.2 滑动窗口协议

  • 发送窗口:发送方用来保存已发送但尚未经确认的数据帧
  • 接收窗口:接收方用来保存已正确接受但尚未提交给主机(网络层)数据帧
  • 窗口尺寸:窗口中可以保存的帧数目称为窗口尺寸

    image.png

  • 接收窗口尺寸为1的滑动窗口协议,也称“回退n协议”

image.png

  • 优点:仅需一个接收缓冲区
  • 缺点:当信道误码率较高时,会产生大量重发帧

    4.2.3 选择重传协议

    出错后的正确接受帧放在缓冲区里,待收到重传的帧按正确的顺序一起发送给主机

    4.2.4 窗口尺寸受到的限制

    image.png

4.3 数据链路层协议举例

链路层协议在网卡上实现

4.3.1 面向比特的同步协议HDLC

解决帧的首尾问题——“帧同步”

4.3.2 点到点协议PPP