计算机网络 第三章: 封装成桢和透明传输

文章目录

封装成帧

封装成帧是指数据链路层给上层交付下来的协议数据单元PDU添加一个首部和一个尾部,使之成为帧。

  • 帧的首部和尾部中包含有一些 重要的控制信息。
  • 帧首部和尾部的作用之一就是帧定界。


接收方的数据链路层如何从物理层交付上来的比特流中提取出一个个的帧???

???


为了提高数据链路层传输帧的效率,应当使帧的数据载荷的长度尽可能地大于首部和尾部的长度。

考虑到对缓存空间的需求以及差错控制等诸多因素,每一种数据链路层协议都规定了帧的数据载荷的长度上限,即最大传送单元(Maximum Transfer Unit,MTU)。例如,以太网的MTU为1500个字节。

透明传输

透明传输是指数据链路层对上层交付下来的协议数据单元PDU没有任何限制,就好像数据链路层不存在一样。

反例 下图就演示了接收方不能正常收到桢信息的案例. 不满足透明传输.

措施:

发送方在把桢交给物理层之前, 对桢的数据载荷进行扫描, 每出现一个桢定界符, 就在其前面插入一个转义字符. 接收方的数据链路层在物理层交付的比特流中提取帧时, 遇到转义字符就知道了其后面是数据而不是帧定界符.

上面的措施似乎不错呢, 解决了透明传输的问题. 那么此时如果数据载荷本身中既包含帧定界符又包含转义字符, 阁下又该如何应对呢?

  • 面向字节的物理链路使用字节填充的方法实现透明传输。

  • 面向比特的物理链路使用比特填充的方法实现透明传输。

注意上面的两种方法并不是所有的协议采用的方法, 还有其他的 这里就不介绍了.

发送方的数据链路层将数据发送给物理层前先对数据载荷进行扫描, 发现连续5个比特1, 就在其后填充一个比特0. 经过如此一番填充操作就可以保证其数据载荷不会包含帧定界符了.

接收方的数据链路层在把数据载荷向上交付给网络层前, 对数据载荷进行扫描, 当发现5个连续的比特1时, 就把其后面的一个比特0删除掉, 就还原出原始数据的数据载荷.


习题

【2013年 题37】HDLC协议对0111110001111110组帧后对应的比特串为( )。

A. 011111000011111010

B. 011111000111110101111110

C. 01111100011111010

D. 011111000111111001111101

【练习】在某个数据链路层协议中使用下列字符编码:

A:01000111

B:11100011

ESC:11100000

FLAG:01111110

其中,FLAG作为帧定界符,ESC作为转义字符。

假设帧的数据载荷为4个字符A、B、ESC以及FLAG,请分别使用字符填充法和零比特填充法将其封装成帧。


解析

【2013年 题37】

高级数据链路控制协议HDLC采用帧首部和帧尾部中的标志字段作为帧定界符,其值为01111110。

HDLC为了实现"透明传输",采用"零比特填充法",即每五个连续比特1后面插入一个比特0。

练习题:


相关推荐
忆源8 分钟前
SOME/IP-SD -- 协议英文原文讲解9(ERROR处理)
网络·网络协议·tcp/ip
夜星辰202329 分钟前
WiFi(无线局域网)技术的多种工作模式
网络·wifi
EasyNVR1 小时前
国标GB28181视频监控平台EasyCVR保驾护航休闲娱乐“九小场所”安全运营
网络·安全
Ai野生菌2 小时前
工具介绍 | SafeLLMDeploy教程来了 保护本地LLM安全部署
网络·人工智能·安全·大模型·llm
melck2 小时前
liunx日志查询常用命令总结
java·服务器·网络
【云轩】3 小时前
《混沌钟的RISC-V指令集重构》
网络·安全
EasyGBS3 小时前
视频设备轨迹回放平台EasyCVR打造视频智能融合新平台,驱动智慧机场迈向数字新时代
网络·人工智能·安全·音视频
EasyGBS4 小时前
视频设备轨迹回放平台EasyCVR综合智能化,搭建运动场体育赛事直播方案
网络·安全·音视频