基本原理

1 概述

两种链路

  • 广播信道:有线局域网、卫星网、混合光纤同轴电缆接入网的多台主机。需要媒体访问控制协议(多路访问控制协议)
  • 点对点通信链路。不需要多路访问控制协议。

概念

  • 结点:运行链路层协议的设备
  • 链路:沿通信路径,连接相邻节点的通信信道

服务

  • 成帧:用链路层帧封装上层数据。网络层数据报插在数据字段。
  • 链路接入:媒体访问控制协议规定了帧在链路上的传输规则,MAC协调多个节点的帧传输,点对点传输不需要媒体访问控制协议。
  • 可靠交付:通过确认重传
  • 差错检测和纠正。

实现

在网络适配器中实现。

在发送端,控制器取的协议栈高层生成并存储在主机内存中的数据包,在链路层中封装该数据包。遵循链路接入协议,将该帧传入通信链路。

在接收端,控制器接受了整个帧,抽取网络层数据报。执行差错检测。

2 差错检测和纠正技术

概述

比特及差错检测和纠正。从一个结点到临近节点,发送的链路层帧中,比特损伤检测和纠正。(Error-Detection and Correction,EDC)

包括奇偶校验、校验和方法、循环冗余检测。

奇偶校验

发送方附加一个比特,使得d+1个比特中的1的总数是奇数或者偶数。接收方进行校验(前向纠错FEC)

二维奇偶校验,在行列二维进行奇偶校验,能够定位错误并纠正。

检验和方法

d比特数据作为一个k比特整数序列处理。将k个比特整数加起来,并且用得到的和作为差错检测比特。

循环冗余检测

  1. 构造CRC冗余检测帧:
    接收方和发送方协商一个r+1比特,称为G。d比特的帧D,在其后添加r比特校验位R。计算R的方法,d后添加r个0bit,再用G去除以这个加了0bit的帧。得到的余R。发送方使用D与R构成循环校验的帧。
    $$
    R=remainder\frac{D\times2^r}{G}
    $$

  2. 计算说明:CRC冗余检测中的加减都是XOR异或运算,加法不进位,减法不借位。

  3. 接受方检测:接受方把得到的帧去除以G。如果余数为0,则表示传输正确。否则传输出错。
    $$
    \frac{D\times 2^r XOR R}{G}= \dotsm 0
    $$