Skip to content

2010年 408 计算机网络 第 34 题

计算机网络2010年选择题2分

题目

在下图所示的采用"存储 - 转发"方式的分组交换网络中,所有链路的数据传输速率为 100 Mbps,分组大小为 1000 B,其中分组头大小为 20 B。若主机 H1 向主机 H2 发送一个大小为 980 000 B 的文件,则在不考虑分组拆装时间和传播延迟的情况下,从 H1 发送开始到 H2 接收完为止,需要的时间至少是( )。

H1R1R2R3H2

图说:原图三个路由器为空圆,编号 R1 / R2 / R3 仅为表述方便。"至少所需时间"取最短路径 H1 → R1 → R2 → H2(共 3 段链路);R3 这条绕路不会被走。

错因

A

漏掉了"尾巴"两跳——只算了 H1 把 1000 个分组全部推上线缆的 80000 μs,忘了最后一个分组还要走 R1 → R2 → H2 两跳的存储转发时延。错的根源是把"流水线"误解为"H1 发完所有分组 = 全部到达 H2",但实际上最后一个分组从 H1 出发后还要爬完后面两跳才算到达。

B

只算了 1 跳尾巴(80 μs),漏算了第二跳的 80 μs。算到 80000 + 80 = 80080 μs。可能脑子里的画面是"分组 5000 出 H1 后,到 R1 已经是终点附近",但 R1 还要把这个分组转发到 R2、R2 再转发到 H2 共 2 段链路。

D

多算了 1 跳尾巴(240 μs 应只是 160 μs)。常见走法:把"H1 → R1 → R2 → H2 三段链路"每一段都额外加一次 80 μs 当尾巴(80 × 3 = 240 μs)。错因是没意识到 H1 → R1 这一段的传输时延已经被"H1 推 1000 个分组的 80000 μs 主线"完全包住,不能再额外加。尾巴只发生在最后一个分组离开 H1 之后的剩余跳数上。

总解析

抠出关键参数

  • 每分组传输时延:1000 × 8 bit / 100 Mbps = 8000 / 10⁸ = 80 μs
  • 分组数:每分组载荷 = 1000 - 20 = 980 B;文件 980 000 B → 980 000 / 980 = 1000 个分组
  • 不计传播延迟、不计拆装时延(题面给定)

最短路径:H1 → R1 → R2 → H2,3 段链路(不绕 R3)。

流水线时序(每跳 80 μs,存储转发):

  • 主线:H1 把 1000 个分组连续推上 H1 → R1 链路,时长 = 1000 × 80 μs = 80 000 μs
  • 尾巴:最后一个分组从 H1 出发后,还要在 R1 → R2R2 → H2 两跳上各走 80 μs:

理解要点:"流水线主线 + 尾巴"是存储转发题的固定套路:

  • 主线 = 分组数 × 单分组传输时延(在瓶颈链路上推完所有分组的时间)
  • 尾巴的传输部分 = (跳数 − 1) × 单分组传输时延(第一跳已在主线里、不重复算)
  • 尾巴的传播部分 = 跳数 × 单跳传播时延(如果题面要求计入;本题"不考虑传播延迟"所以为 0)

本题 3 跳、不计传播:尾巴 = 2 × 80 = 160 μs。对照 cn-2023-33 的 2 跳计传播:尾巴 = 1 × 80 + 2 × 10 = 100 μs,是同一公式的不同代入。

最终答案是 C(80.16 ms)

最后更新:

🎬 可视化演示
加载中...

提示:可在可视化区直接操作播放、步进、修改参数