一、 封装成帧
◆ “帧”是数据链路层数据的基本单位
◆ 发送端在网络层的一段数据前后添加特定标记形成“帧”
◆ 接收端根据前后特定标记识别出“帧”
◆ 帧首部和尾部是特定的控制字符(特定比特流)
SOH: 00000001
EOT: 00000100
二、 透明传输
◆ “透明”在计算机领域是非常重要的一个术语
◆ “一种实际存在的事物却又看起来不存在一样”
◆ “即是控制字符在帧数据中,但是要当做不存在的去处理”
对数据中的控制字符进行特殊处理
三、 差错监测
◆ 物理层只管传输比特流,无法控制是否出错
◆ 数据链路层负责起“差错监测”的工作
◆ 奇偶校验码
00110010 1 0 + 0 + 1 + 1 + 0 + 0 + 1 + 0 = 3
00111010 0 0 + 0 + 1 + 1 + 1 + 0 + 1 + 0 = 4
◆ 循环冗余校验码CRC
◆ 一种根据传输或保存的数据而产生固定位数校验码的方法
◆ 检测数据传输或者保存后可能出现的错误
◆ 生成的数字计算出来并且附加到数据后面
模“2”除法
◆ 模“2”除法是二进制下的除法
◆ 与算术除法类似,但除法不借位,实际是“异或”操作
◆ 选定一个用于校验的多项式G(x),并在数据尾部添加r个0
◆ 将添加r个0后的数据,使用模“2”除法除以多项式的位串
◆ 得到的余数填充在原数据r个0的位置得到可校验的位串
101001000 -> 101001011
◆ CRC的错误检测能力与位串的阶数r有关
◆ 数据链路层只进行数据的检测,不进行纠正
扫描二维码关注公众号,回复:
10492752 查看本文章