Appearance
408
计算机网络
CN-03-02 组帧(字符填充/比特填充/字节计数)
一、定位信息
- 圈层:核心层
- 前置知识:帧的概念(CN-03-01)、比特与字节的基本概念
- 知识网络位置:本单元是数据链路层的第一项功能——组帧的具体实现方法,是后续差错控制和流量控制的基础
- 考点热度等级:M级(中频常考)——比特填充是408常考的细节题,近5年约2次
二、知识点讲解
1. 为什么需要组帧
物理层只传输比特流,接收方不知道一帧从哪里开始、到哪里结束。组帧就是解决帧定界(Frame Delimiting)问题,让接收方能正确识别每个帧的边界。
2. 四种组帧方法
(1)字符计数法
在帧首部用一个字段标明该帧包含的字节数。接收方根据该计数值确定帧的结束位置。
- 优点:实现简单
- 缺点:计数字段出错会导致后续所有帧定界错误(灾难性后果),可靠性差
(2)字符填充法(面向字符)
使用特定的特殊字符(如SOH、EOT)作为帧开始和结束的标志。当数据中出现与标志字符相同的字符时,在其前面插入转义字符(ESC)进行填充。
- 优点:实现较简单
- 缺点:依赖于字符集(如ASCII),不适用于任意比特流
(3)比特填充法(面向比特)★重点
使用特定的比特模式 01111110(六个连续1)作为帧的开始和结束标志。
工作规则:
- 发送方:在数据部分中,每当出现5个连续1,就自动在其后插入一个0
- 接收方:在数据部分中,每当收到5个连续1,就自动删除其后的一个0
示例:
原始数据:
01101111110111110填充后:
0110111110101111100(5个1后插入0)接收方去除插入的0即可恢复原始数据
优点:不依赖字符集,适用于任意比特流
缺点:增加了少量传输开销
(4)违规编码法
利用物理层编码中不会出现的"违规"电平作为帧定界标志。例如在曼彻斯特编码中,每个码元中间必须有跳变,可以用"没有跳变"的电平作为帧边界。
- 优点:不增加额外开销
- 缺点:依赖于物理层编码方式
3. 四种方法对比
| 方法 | 定界方式 | 优点 | 缺点 | 应用 |
|---|---|---|---|---|
| 字符计数法 | 首部计数字段 | 简单 | 计数出错影响后续帧 | 很少使用 |
| 字符填充法 | SOH/EOT标志+转义字符 | 较简单 | 依赖字符集 | BSC协议 |
| 比特填充法 | 01111110标志+插入0 | 通用性强 | 增加开销 | HDLC、PPP |
| 违规编码法 | 利用违规电平 | 无额外开销 | 依赖编码方式 | IEEE 802 |
三、记忆与理解辅助
- 比特填充口诀:"见5个1插1个0"——数据中出现5个连续1,自动插入一个0
- 帧定界标志:
01111110——连续6个1(填充后最多5个连续1,所以6个1只能是标志) - 字符填充口诀:"见标志加ESC"——数据中出现标志字符前加转义字符
四、例题与精解
例题1(基础巩固)
题目:在HDLC协议中,使用比特填充法组帧。若要传输的数据为 01111101111110,则填充后的数据是什么?
命题意图:考查比特填充法的具体操作。
精解:
审题分析:原始数据为
01111101111110,需要在5个连续1后插入0。解题思路:从左到右扫描数据,每遇到5个连续1就插入一个0。
完整步骤:
- 原始数据:
0 1 1 1 1 1 0 1 1 1 1 1 1 0 - 第一组5个连续1(位置2-6):
011111001111110→ 插入0 - 第二组5个连续1(位置9-13):
0111110011111010→ 插入0 - 填充后数据:
0111110011111010
- 原始数据:
方法反思:比特填充是逐位扫描的,插入0后继续往后扫描。注意不要把插入的0也算入连续1的计数。
例题2(中等提升)
题目:若使用字符计数法组帧,计数字段用1个字节表示。现在传输5个帧,第2个帧的计数字段因传输错误从4变为7,问后续哪些帧会受影响?
命题意图:考查字符计数法的致命缺陷。
精解:
审题分析:第2个帧的计数字段出错,4变成7,会导致接收方对帧边界的判断错误。
解题思路:接收方根据计数字段确定帧边界,计数错误会导致帧边界错位。
完整步骤:
- 正常情况:帧1(长度L1)→ 帧2(长度4)→ 帧3(长度L3)→ ...
- 错误情况:帧1正常 → 帧2的计数变为7,接收方认为帧2有7字节 → 帧2的边界后移3字节 → 帧3、帧4、帧5的边界全部错位
- 结论:第3、4、5帧全部受影响,无法正确定界。
方法反思:这是字符计数法的致命缺陷——一个帧的计数错误会"传播"到后续所有帧。这也是该方法很少使用的原因。
五、考情分析
- 考查频次:比特填充法近5年约2次
- 常见题型:选择题(填充计算)和简答题(方法对比)
- 分值占比:2–5分
- 命题趋势:比特填充的计算题是高频考点,四种方法的对比也常出现。基于大纲与命题规律推测
六、易错点提醒
错误表现:比特填充时将插入的0也计入连续1的计数 错误原因:扫描时未正确跳过插入的0 正确理解:插入0后应从下一个比特继续扫描,插入的0不参与连续1的计数
错误表现:混淆字符填充和比特填充 错误原因:两种方法名称相似 正确理解:字符填充面向字符(用转义字符),比特填充面向比特(用插入0)
错误表现:认为字符计数法是可靠的组帧方法 错误原因:只看到其简单性,忽略了计数出错的致命后果 正确理解:字符计数法的计数字段出错会导致后续所有帧定界错误
七、来源标注
- 依据2026考研统考大纲
- 依据《计算机网络》(第8版)谢希仁版
- 依据大学本科经典教材共识