欢迎来到天天文库
浏览记录
ID:56698707
大小:456.53 KB
页数:19页
时间:2020-07-05
《数据链路层解决的3个基本问题.pdf》由会员上传分享,免费在线阅读,更多相关内容在行业资料-天天文库。
1、3.1.2三个基本问题数据链路层协议有许多种,但有三个基本问题则是共同的。这三个基本问题是:1.封装成帧2.透明传输3.差错控制1.封装成帧封装成帧(framing)就是在一段数据的前后分别添加首部和尾部,然后就构成了一个帧。确定帧的界限。首部和尾部的一个重要作用就是进行帧定界。帧开始IP数据报帧结束发送帧首部帧的数据部分帧尾部MTU数据链路层的帧长课件制作人:谢希仁从这里开始发送用帧首部和帧尾部封装成帧用控制字符进行帧定界的方法举例当数据是由可打印的ASCII码组成的文本文件时,帧定界可以使用特殊的帧定界符。控制
2、字符SOH(StartOfHeader)放在一帧的最前面,表示帧的首部开始。另一个控制字符EOT(EndOfTransmission)表示帧的结束。帧开始符帧结束符SOH装在帧中的数据部分EOT帧发送在前用控制字符进行帧定界的方法举例2.透明传输如果数据中的某个字节的二进制代码恰好和SOH或EOT一样,数据链路层就会错误地“找到帧的边界”。出现了“EOT”完整的帧发送数据部分在前SOHEOTEOT被接收端被接收端当作无效帧而丢弃误认为是一个帧数据部分恰好出现与EOT一样的代码解决透明传输问题解决方法:字节填充(bytest
3、uffing)或字符填充(characterstuffing)。发送端的数据链路层在数据中出现控制字符“SOH”或“EOT”的前面插入一个转义字符“ESC”(其十六进制编码是1B)。接收端的数据链路层在将数据送往网络层之前删除插入的转义字符。如果转义字符也出现在数据当中,那么应在转义字符前面插入一个转义字符ESC。当接收端收到连续的两个转义字符时,就删除其中前面的一个。用字节填充法解决透明传输的问题帧开始符帧结束符原始数据SOHEOTSOHESCSOHEOT字节填充字节填充字节填充字节填充SOHESCEOTESCSOHE
4、SCESCESCSOHEOT经过字节填充后发送的数据发送在前用字节填充法解决透明传输的问题3.差错检测在传输过程中可能会产生比特差错:1可能会变成0而0也可能变成1。在一段时间内,传输错误的比特占所传输比特总数的比率称为误码率BER(BitErrorRate)。误码率与信噪比有很大的关系。为了保证数据传输的可靠性,在计算机网络传输数据时,必须采用各种差错检测措施。3.差错检测循环冗余检验的原理在数据链路层传送的帧中,广泛使用了循环冗余检验CRC的检错技术。在发送端,先把数据划分为组。假定每组k个比特。假设待传送的
5、一组数据M=101001(现在k=6)。我们在M的后面再添加供差错检测用的n位冗余码一起发送。冗余码的计算用二进制的模2运算进行2n乘M的运算,这相当于在M后面添加n个0。得到的(k+n)位的数除以事先选定好的长度为(n+1)位的除数P,得出商是Q而余数是R,余数R比除数P少1位,即R是n位。将余数R作为冗余码拼接在数据M后面发送出去。即R=余数【】冗余码的计算举例现在k=6,M=101001。设n=3,除数P=1101,被除数是2nM=101001000。模2运算的结果是:商Q=110101,余数R=001
6、。把余数R作为冗余码添加在数据M的后面发送出去。发送的数据是:2nM+R即:101001001,共(k+n)位。循环冗余检验的原理说明110100Q(商)P(除数)11011010010002nM(被除数)11011110110101110000111011010110000011001101001R(余数),作为FCS发送端发送101001001;接收端接收后除以P后,若余数为0,即传输正确。请尝试计算验证。冗余码的计算举例现在k=6,M=101001。设n=3,除数P=1101,被除数是2nM=101001000。
7、模2运算的结果是:商Q=110101,余数R=001。把余数R作为冗余码添加在数据M的后面发送出去。发送的数据是:2nM+R即:101001001,共(k+n)位。生成多项式G除数(或叫生成多项式G)可由标准生成,例如CRC-4=++1;多项式只列出二进制值为1的位,也就是这个二进制的第4位、第3位、第0位的二进制均为1,其它位均为0。此CRC-4的除数二进制比特串为11001。冗余码的计算举例2试求:基于此生成多项式11001的二进制序列10110011的CRC校验码CRC校验码计算示例接收端对收到的每一帧进行CR
8、C检验(1)若得出的余数R=0,则判定这个帧没有差错,就接受(accept)。(2)若余数R0,则判定这个帧有差错,就丢弃。但这种检测方法并不能确定究竟是哪一个或哪几个比特出现了差错。只要经过严格的挑选,并使用位数足够多的除数P,那么出现检测不到的差错的概率就很小很
此文档下载收益归作者所有