封装成帧和透明传输
封装成帧
封装成帧就是在一段数据的前后部分添加首部和尾部,这样就构成了一个帧。
接收端在收到物理层上传来的比特流的时候,能够根据首部和尾部的标记,识别从所收到的比特流中识别出帧的开始和结束
首部和尾部包含着许多重要的控制信息,他们有着一个重要的作用:帧定界(确定帧的界限)
帧同步:接受方应当能够从收到的二进制比特流中区分出帧的起始和结束
数据链路的帧长:从帧的首部到帧的尾部的长度(帧首部+帧的数据部分+帧尾部)
最大传输单元(MTU):帧的数据部分的最大长度,在传输数据的时候,帧的数据部分要 ≤ \le ≤帧的最大传输单元
组帧的四种方法
字符计数法
帧首部使用一个计数字段(第一个字节,8位)来标明帧内字符的数目
缺点:帧首部的数据容易出错
字符(节)填充法
这样的情况只出现在所传输的帧是文本文件的时候
当传送的帧是由非ASCII码的文本文件组成的时候,就要采用字符填充的方法实现透明传输
字符填充:利用转义字符来去除帧中数据与标志符号一样的情况
零比特填充法
允许数据帧中的数据包含任意个数的比特
首部和尾部的标志符号一致
操作:
- 在发送端,扫描整个信息字段,只要有连续的5个1,就立即填入一个0
- 在接收端收到一个帧的时候,先找到标志字段确定边界,再用硬件对比特流进行扫描,发现5个连续的1的时候,就将后面的0删除掉
保证了透明传输:在传送的比特流中可以传送任意比特组合,而不会引起对帧边界的误判
违规编码法
可以用“1-1”或者"0-0"作为定界帧的开始或者结束
用两个编码当中不会用的电平方式来标志帧的开始或者结束
透明传输
透明传输指的是不管所传的数据是什么样的比特组合,都应当能够在链路上进行传输
当所传输数据中的比特组合恰巧与某一个控制信息完全一样的时候,就必须采取适当的措施,使得接收方不会将这样的数据误认为是某种控制信息。这样才能够使得数据链路层的传输是透明的