408真题解析-2009-35-网络-后退N帧协议

一 真题2009-35

2009-35题. 数据链路层采用后退N帧(GBN)协议,发送方已经发生了编号为0-7的帧。当计时器超时时,若发送方只收到0,2,3号帧的确认,则发送方需要重发的帧数是()。

A. 2

B. 3

C. 4

D. 5

二 题目要素解析

场景: 数据链路层,后退 N 帧协议 (GBN)

已知条件:

  • 发送方已发送帧:0, 1, 2, 3, 4, 5, 6, 7(共 8 帧)。
  • 超时发生时收到的确认(ACK):0, 2, 3
  • 隐含条件:GBN 协议采用累积确认(Cumulative Acknowledgment)。

求: 发送方需要重发的帧数。

核心考点: GBN 协议的确认机制 (累积确认)和重发策略(回退 N 帧)。

三 哔哔详解

这道题的关键在于理解 GBN 协议中 "累积确认" 的含义。

  1. 分析收到的 ACK:

    • 题目说收到了 0, 2, 3 号帧的确认。
    • 在 GBN 中,确认帧 ACK n 的意思是:编号为 *n* 的帧以及它之前的所有帧都已经正确收到了
    • 所以:
      • 收到 ACK 3 → 说明 0, 1, 2, 3 号帧都已经被接收方正确接收了。
      • 收到 ACK 2 和 ACK 0 其实是冗余的,因为 ACK 3 已经包含了它们的确认信息。
  2. 确定窗口位置:

    • 既然 0-3 号帧都确认了,那么发送窗口的下一个要发送的帧4 号。
    • 这意味着,4, 5, 6, 7 号帧是未确认的。
  3. 处理超时与重发:

    • 题目提到 "计时器超时"。在 GBN 中,只要超时发生(通常是最早发送的那个未确认帧超时),发送方就会重发所有未被确认的帧。
    • 未被确认的帧是:4, 5, 6, 7
    • 一共是 4 帧。

    所以,发送方需要重发 4 帧。

四 参考答案

参考答案 C

五 考点精析

5.1 停止等待\GBN\SR 区别与联系

比较维度 停止等待(Stop-and-Wait, SW) 后退 N 帧(Go-Back-N, GBN) 选择重传(Selective Repeat, SR)
核心思想 每发一帧,停等 ACK;收到后才发下一帧。 允许连续发送;一旦出错,从第一个未确认帧开始全部重传 允许连续发送;仅重传出错/丢失帧,缓存乱序帧
发送窗口大小 1 >1(最大为 2\^n - 1 ,n 为序号位数) >1(需满足 W_s + W_r \\leq 2\^n
接收窗口大小 1 1 >1(通常等于发送窗口)
确认方式 逐个确认 累积确认(ACKn 表示 0~n 全收) 逐个确认(ACKn 仅确认帧 n)
乱序帧处理 不可能出现 丢弃 缓存,待缺失帧到达后按序交付
重传粒度 单帧 从出错帧开始全部重传 仅重传出错或超时的帧
信道利用率 很低(尤其在高延迟链路中大量空闲) 中等 很高(避免无效重传)
实现复杂度 最简单(无需缓存、单计时器) 中等(单计时器或逻辑等效,无接收缓存) 最复杂(需接收缓存、每帧独立计时器、序号管理)
优点 实现简单,逻辑清晰,资源开销小 比 SW 利用率高,实现相对简单 带宽效率最高,适合高误码率环境
缺点 信道利用率极低,不适合高速或长距离链路 出错时重传大量正确帧,浪费带宽 实现复杂,需更多内存和控制逻辑
适用场景 低速、可靠、短距离链路(如早期串口通信) 一般网络环境(如 HDLC、部分无线协议) 高带宽、高误码率链路(如卫星通信、现代 Wi-Fi、TCP 变种)

5.2 三种协议的信道利用率

5.2.1 信道利用率的定义

定义:

信道利用率是指发送方在一个完整的传输周期内,实际用于发送有效数据的时间总时间的比例。

公式表达:

U=发送有效数据的时间 ÷ 一个完整的传输周期

  • 分子: 发送方把数据 "推" 到信道上所花费的时间(纯干活的时间)。
  • 分母: 从发送第一比特数据开始,到发送方收到确认(或超时重传)为止的总时间(干活 + 等待)。

5.2.2 关键参数设定

符号 含义 单位
LLL 数据帧长度 bit
LackL_{\text{ack}}Lack 确认帧(ACK)长度 bit
RRR 链路带宽 bps
dpropd_{\text{prop}}dprop 单向传播时延 s
Tt=LRT_t = \frac{L}{R}Tt=RL 数据帧传输时延 s
Tack=LackRT_{\text{ack}} = \frac{L_{\text{ack}}}{R}Tack=RLack ACK 帧传输时延 s
Tp=dpropT_p = d_{\text{prop}}Tp=dprop 单向传播时延 s

📌 关键比值:

若忽略 ACK 时延,则设 TackT_{\text{ack}}Tack≈0

若考虑 ACK 时延,则保留 TackT_{\text{ack}}Tack

5.2.3 计算公式

协议 忽略 ACK 时延的利用率 考虑 ACK 时延的利用率 关键影响
停止等待 TtTt+2Tp\displaystyle \frac{T_t}{T_t + 2T_p}Tt+2TpTt TtTt+Tack+2Tp\displaystyle \frac{T_t}{T_t + T_{\text{ack}} + 2T_p}Tt+Tack+2TpTt ACK 时延直接降低效率
GBN / SR (窗口受限) WTtWTt+2Tp\displaystyle \frac{W T_t}{W T_t + 2T_p}WTt+2TpWTt WTtWTt+Tack+2Tp\displaystyle \frac{W T_t}{W T_t + T_{\text{ack}} + 2T_p}WTt+Tack+2TpWTt ACK 时延影响较小(因 W 较大)
GBN / SR (窗口 ≥ 所需最小值) 111 (100%) WTtWTt+Tack≈1\displaystyle \frac{W T_t}{W T_t + T_{\text{ack}}} \approx 1WTt+TackWTt≈1 几乎无影响

六 考点跟踪

年份 题号 考查内容 CSDN 参考链接 VX参考链接
2009 第 35 题 GBN 协议超时重传帧数计算
2012 第 36 题 GBN 协议/信道利用率
2015 第 35 题 GBN 协议/信道利用率
2016 第 35 题 滑动窗口协议
2018 第 35 题 停止等待协议
2019 第 35 题 滑动窗口协议
2020 第 36题 停止等待协议
2023 第 35 题 GBN 协议/停止等待协议/SR
2024 第 37 题 SR(滑动窗口协议)

说明 :本文内容基于公开资料整理,参考了包括但不限于《数据结构》(严蔚敏)、《计算机操作系统》(汤小丹)、《计算机网络》(谢希仁)、《计算机组成原理》(唐朔飞)等国内高校经典教材,以及其他国际权威著作。同时,借鉴了王道、天勤、启航等机构出版的计算机专业考研辅导系列丛书 中的知识体系框架与典型题型分析思路。文中所有观点、例题解析及文字表述均为作者结合自身理解进行的归纳与重述,未直接复制任何出版物原文。内容仅用于学习交流,若有引用不当或疏漏之处,敬请指正。

相关推荐
早日退休!!!2 小时前
Roofline模型核心原理:延迟、吞吐与并发的底层逻辑
大数据·网络·数据库
tobias.b2 小时前
408真题解析-2009-37-网络-最短帧长和争用期计算
网络·计算机考研·408考研·408真题解析
是娇娇公主~2 小时前
TCP和UDP的区别全面对比讲解
网络·tcp/ip·udp
Arenaschi2 小时前
关于垃圾的CSDN
java·网络·chrome·笔记·其他·oracle·pdf
欧洵.2 小时前
深入理解TCP协议
java·网络·tcp/ip
txinyu的博客2 小时前
TCP的可靠性问题
网络·网络协议·tcp/ip
edisao2 小时前
二。星链真正危险的地方,不在天上,而在网络底层
大数据·网络·人工智能·python·科技·机器学习
tobias.b2 小时前
408真题解析-2009-34-网络-数据传输速率
网络·408考研·408真题解析
佑白雪乐3 小时前
<Linux基础第3集>清华镜像源配置+网络基础概念理解(IP地址+网卡+网关+子网掩码+DNS...)
linux·网络·tcp/ip