计算机网络学习(二):数据链路层和网络层
第三章 数据链路层 数据链路层基本概念及基本问题 基本概念 三个基本问题 封装成帧 首部和尾部的一个重要作用就是进行帧定界(即确定帧的界限)。此外,首部和尾部还包括许多必要的控制信息。 为了提高帧的传输效率,应当使帧的数据部分长度尽量大于首部和尾部的长度。最大传输单元MTU(Maximum Transfer Unit):帧数据部分长度上限。 MTU: 透明传输 透明传输是指不管所传数据是什么样的比特组合,都应当能够在链路上传送。 发送端的数据链路层如果在数据中出现控制字符SOH (start of heading)或EOT,那么会在前面插入一个转义字符ESC(ascii编码是1B),如果数据中出现了转义字符,那么会在转义字符前面插入一个转义字符 字节填充 或 字符填充 ---接收端的数据链路层在将数据送往网络层之前删除插入的转义字符。 差错检测 比较常用的是循环冗余检测(CRC) 通过模2运算来计算。模2运算是一种二进制算法,也包括模2加法,减乘除,与四则运算不同的是模2运算不考虑进位与借位。 CRC采用模2除法来计算,实际上就是异或(相同为0,不同为1)。 如图,要传的数据是101001,加上三个0,,除以一个数,这个数是4位,除数的位数是加上0的个数再多一位,余数就作为FCS(添加到数据后面的冗余码) 接收方收到后