COMP5416 Midterm Quiz 模拟卷:20 题(依 Kurose 官方交互题型出题)

COMP5416 Midterm Quiz 模拟卷:20 题(Week 1–5)

课程:COMP5416/COMP4416 — Advanced Network Technologies,Semester 2 2026

⚠️ 真实考试信息

  • 时间Week 6
  • 权重20%
  • 形式20 道选择题
  • 范围Week 1–5 —— ✅ 老师已明确说明期中不考 Week 6 的内容

本卷的出题依据老师推荐的 Kurose 官方交互练习站 每一题都对照该站某一道真实交互题的题型、提问方式和答案口径出的,题目下方标注了来源, 做完可以直接回站上点 "Another Problem Like This" 刷同类的无限新实例。

💡 建议用法先掐 25 分钟做完,再对答案。 所有数值都用代码验算过。 对照指南(哪些题必做、哪些超纲)见 Kurose 交互练习指南


试题

板块一:分层与网络性能(Week 1–2,教材第 1 章)


Q1. 下列描述对应 IP 协议栈的哪一层:「把数据报从源主机送到目的主机」

  • A. 链路层(Link Layer)
  • B. 传输层(Transport Layer)
  • C. 网络层(Network Layer)
  • D. 应用层(Application Layer)

📎 题型来源:The IP Stack and Protocol Layering


Q2. 一个由交换机 A、B、C、D 构成的环形电路交换网络:A–B 之间 14 条电路,B–C 之间 14 条,C–D 之间 11 条,D–A 之间 20 条。任一时刻网络中最多能同时进行多少条连接?

  • A. 49
  • B. 59
  • C. 20
  • D. 11

📎 题型来源:Circuit Switching


Q3. 承接上题的网络。现在规定每条连接都必须经过恰好 2 跳,且沿顺时针方向(即只允许 A→C、B→D、C→A、D→B 四种)。此时最多能同时进行多少条连接?

  • A. 20
  • B. 22
  • C. 25
  • D. 29

📎 题型来源:Circuit Switching(第 3 问)


Q4. 一条 100 Mbps 链路上有 8 个分组交换用户,每个用户传输时需要 25 Mbps,且只有 15% 的时间在传输恰好有一个用户(任意一个)在传输、其余全部沉默的概率约为:

  • A. 0.048
  • B. 0.385
  • C. 0.150
  • D. 0.663

📎 题型来源:Quantitative Comparison of Packet Switching and Circuit Switching


Q5. 一条端到端路径由 3 段链路串联,分组长度 8000 比特,传播速率 3×10⁸ m/s

链路 传输速率 长度
1 20 Mbps 2 km
2 500 Mbps 4000 km
3 50 Mbps 5 km

端到端总时延(传输 + 传播)约为:

  • A. 0.58 ms
  • B. 4.07 ms
  • C. 13.93 ms
  • D. 40.0 ms

📎 题型来源:End-to-End Delay


Q6. 四台服务器分别经三跳路径连到四台客户。中间的共享链路 R = 120 Mbps 由四对公平均分;每台服务器到共享链路的链路 Rs = 80 Mbps;共享链路到每台客户的链路 Rc = 15 Mbps。假设各服务器都以最大速率发送,则共享链路 R 的利用率是:

  • A. 0.1875
  • B. 0.125
  • C. 1.00
  • D. 0.50

📎 题型来源:End-to-End Throughput and Bottleneck Links


板块二:应用层(Week 3,教材第 2 章)


Q7. Alice 给 Bob 发邮件,两人的用户代理都使用 HTTP 收发。关于 SMTP 与 HTTP 的推拉性质,下列哪一项正确

  • A. SMTP 是 pull,HTTP 是 push
  • B. SMTP 是 push,HTTP 是 pull
  • C. 两者都是 push
  • D. 两者都是 pull

📎 题型来源:Electronic Mail and SMTP


Q8. 承接上题。SMTP 使用的传输层协议和端口分别是:

  • A. TCP,25
  • B. TCP,80
  • C. UDP,25
  • D. UDP,53

📎 题型来源:Electronic Mail and SMTP


Q9. 客户与服务器之间 RTT = 45 ms,服务器把一个对象发上出链路需 2 ms,不含对象的 HTTP 消息传输时间忽略。客户依次发出 60 个请求(收到回复才发下一个),使用 HTTP/1.1 与 If-Modified-Since,其中 70% 的对象自上次下载后未改变。从发出第一个请求到最后一个请求完成,共需:

  • A. 2700 ms
  • B. 2712 ms
  • C. 2736 ms
  • D. 2820 ms

📎 题型来源:Browser Caching


Q10. 承接上题。对于那 70% 未改变的对象,服务器返回的状态码是:

  • A. 200 OK
  • B. 304 Not Modified
  • C. 301 Moved Permanently
  • D. 404 Not Found

📎 题型来源:Browser Caching(条件 GET 的前提)


板块三:DNS 与 P2P(Week 4,教材第 2 章)


Q11. DNS 使用哪种传输层协议:TCP、UDP、还是两者都用

  • A. 只用 UDP
  • B. 只用 TCP
  • C. 两者都用(Both)
  • D. 视记录类型而定

📎 题型来源:DNS – Basics


Q12. 某 TLD DNS 服务器上有记录 (www.enterprise.com, dns.enterprise.com, NS)(dns.enterprise.com, 146.54.20.201, A)。本地 DNS 代你查询 www.enterprise.com 并联系该 TLD 服务器时,会返回几条资源记录(RR)

  • A. 1
  • B. 2
  • C. 3
  • D. 4

📎 题型来源:DNS – Basics


Q13. enterprise.com权威 DNS 服务器上有以下 4 条记录:

(www.enterprise.com,  west5.enterprise.com,  CNAME)
(west5.enterprise.com, 142.81.17.206, A)
(enterprise.com, mail.enterprise.com, MX)
(mail.enterprise.com, 247.29.157.43, A)

该权威服务器上共有几种不同类型的 RR?

  • A. 2
  • B. 3
  • C. 4
  • D. 5

📎 题型来源:DNS – Basics ⚠️ 本题官方口径有冲突,详解里单独说明 —— 务必看。


Q14. 一个 2400 Mbit 的文件要分发给 12 个对等方。服务器上传速率 90 Mbps,各对等方上传速率之和 190 Mbps,其中最小下载速率为 25 Mbps。用客户/服务器方式分发的最小时间是:

  • A. 96.00 秒
  • B. 102.86 秒
  • C. 26.67 秒
  • D. 320.00 秒

📎 题型来源:A comparison of client-server and P2P file distribution delays


Q15. 承接上题,改用 P2P 方式,最小分发时间与瓶颈分别是:

  • A. 26.67 秒;瓶颈是服务器上传
  • B. 96.00 秒;瓶颈是下载最慢的客户
  • C. 102.86 秒;瓶颈是系统总上传能力
  • D. 320.00 秒;瓶颈是服务器上传

📎 题型来源:A comparison of client-server and P2P file distribution delays


板块四:传输层(Week 5,教材第 3 章)


Q16. 点击链接取一个网页,本地未缓存 IP,需访问 2 台 DNS 服务器 ms、 ms。与 Web 服务器之间 ms。网页含基础 HTML + 12 个很小的引用对象,客户最多支持 5 条并行 TCP 连接,使用持久 HTTP。忽略传输时间,总时延为:

  • A. 157 ms
  • B. 247 ms
  • C. 382 ms
  • D. 1192 ms

📎 题型来源:DNS and HTTP delays ⚠️ 这是本卷最容易错的一题。


Q17. 承接上题,其余条件不变,改用非持久 HTTP(仍最多 5 条并行连接),总时延为:

  • A. 247 ms
  • B. 292 ms
  • C. 382 ms
  • D. 1192 ms

📎 题型来源:DNS and HTTP delays


Q18. 计算下列两个 16 位字的 Internet 校验和

1011001101011010
0110111010011101

校验和是:

  • A. 0010000111111000
  • B. 0010000111110111
  • C. 1101111000001000
  • D. 1101111000000111

📎 题型来源:Internet checksum


Q19. 一台服务器用同一个 UDP 套接字(端口 5300)同时与两个客户通信:客户甲的套接字端口 8100,客户乙的套接字端口 8200服务器发往客户乙的那个段,其(源端口, 目的端口)是:

  • A. (8200, 5300)
  • B. (5300, 8200)
  • C. (8100, 8200)
  • D. (5300, 5300)

📎 题型来源:UDP Multiplexing and Demultiplexing


Q20. 一台 TCP 服务器在欢迎套接字端口 6950 上接受了三条连接:左侧客户(IP = A)的一条,源端口 5371;右侧客户(IP = C)的两条,源端口分别为 54126316。服务器上因这三条连接建立了几个套接字(不含欢迎套接字)?

  • A. 1
  • B. 2
  • C. 3
  • D. 4

📎 题型来源:TCP Multiplexing and Demultiplexing



答案与详解

答案速览

1 2 3 4 5 6 7 8 9 10
C B C B C D B A C B
11 12 13 14 15 16 17 18 19 20
C B B D C B C D B C

Q1 — 答案 C

网络层:把数据报(datagram)从源主机送到目的主机。

官方给的五句话对应关系(每句只对应一层,背下来就是送分题)

描述
「把帧从一个结点经某种介质传到另一个结点」 链路层
「处理来自应用层的段的交付,可靠或不可靠」 传输层
「把数据报从源主机送到目的主机」 网络层
「处理来自各种网络应用的消息」 应用层
「比特在线缆上」 物理层

⚠️ B 的陷阱:传输层管的是段(segment)进程到进程;网络层管的是数据报主机到主机看到「datagram」和「host to host」就选网络层。

📖 Week 01 讲义


Q2 — 答案 B

原理每条链路上的电路可以各自独立地承载一条单跳连接, 所以最大并发数 = 所有链路的电路数之和(此时每条连接都只走一跳)。

⚠️ C(20)的陷阱:那是单条链路的最大值,不是全网。 ⚠️ A(49)的陷阱:漏掉了 D–A 那 20 条中的一部分(误算成 14+14+11+10)。

📖 Week 02 讲义


Q3 — 答案 C

设四种连接的条数 A→C(占用 AB、BC), B→D(占用 BC、CD), C→A(占用 CD、DA), D→B(占用 DA、AB)。

约束

把 AB 与 CD 两条约束相加(这两条恰好覆盖全部四个变量各一次):

取到等号的一组解(BC 用 5 ≤ 14 ✓,DA 用 20 ≤ 20 ✓)。

一句话方法找出两条「不共享变量、又覆盖全部连接类型」的链路,它们容量之和就是上界。 本题是 AB + CD = 25(也可以取 BC + DA = 34,但那个界更松,不是最紧的)。

⚠️ 别用 59÷2 之类的估算 —— 瓶颈由最紧的那一对决定。

📖 Week 02 讲义


Q4 — 答案 B

⚠️⚠️ 本题是官方最爱设的陷阱 —— 「指定某个用户」和「任意一个用户」差一个因子

问法 公式 本题值
某个指定用户在发、其余沉默 0.048
任意一个用户在发、其余沉默 0.385

A(0.048)就是漏乘 的结果。

💡 顺带记住配套结论:本题的链路电路交换只能支持 个用户, 而分组交换可以放 8 个 —— 「超过 4 个同时发」的概率只有 0.29%, 这就是分组交换用统计复用换来的效率。

📖 Week 02 讲义


Q5 — 答案 C

逐段算「传输时延 + 传播时延

链路 小计
1
2
3

两个必须注意的单位坑

  1. 公里要换成米(题目给 km,公式要 m)—— 4000 km = m
  2. 传播时延只跟「距离」有关,跟「速率」无关传输时延只跟「速率」有关,跟「距离」无关

本题的教学点链路 2 虽然速率最高(500 Mbps),却贡献了 95% 的总时延 —— 因为它有 4000 km 长。长距离链路由传播时延主导,短距离链路由传输时延主导。

📖 Week 02 讲义Lab 02 解析


Q6 — 答案 D

第一步:找瓶颈

第二步:各链路利用率 = 瓶颈速率 ÷ 该链路容量

链路 计算 利用率
(服务器侧) 0.1875
(客户侧) 1.00
(共享,问的是这个) 0.50

⚠️ 共享链路的利用率要跟「它分给每对的份额 」比,不是跟 比。 ⚠️ A(0.1875)是 的利用率,看错了问的是哪条链路。

结论很直观瓶颈链路的利用率一定是 1.00(它被跑满了), 其余链路都跑不满 —— 这正是「瓶颈」的定义。

📖 Week 02 讲义


Q7 — 答案 B

SMTP 是 push,HTTP 是 pull。

怎么理解

协议 方向 谁发起
SMTP 把邮件「推」到对方的邮件服务器上 发送方
HTTP 从服务器「拉」东西下来 接收方(浏览器)

官方图里的三个点

位置 协议
Alice 的 UA → Alice 的邮件服务器 SMTP
Alice 的邮件服务器 → Bob 的邮件服务器 SMTP
Bob 的邮件服务器 → Bob 的 UA HTTP(题目说 UA 用 HTTP)

⚠️ 注意最后一段如果题目说 Bob 用 POP3 或 IMAP,那一段就是 POP3/IMAP —— SMTP 只负责「送到对方服务器」,最后一公里是取信协议。

📖 Week 03 讲义


Q8 — 答案 A

SMTP 用 TCP,端口 25。

顺带把端口全背了

协议 端口
HTTP 80
SMTP 25
DNS 53
FTP 控制 / 数据 21 / 20

⚠️ 邮件相关的题几乎必考 25 这个数。

📖 Week 03 讲义


Q9 — 答案 C

公式

两个关键理解

  1. 每个请求都要花一个 RTT —— 哪怕对象没变,也得发条件 GET 去「问一声」, 这就是为什么第一项是 而不是
  2. 只有那 30% 变过的对象才需要真正传输 —— 未变的服务器只回 304,不含对象体

⚠️ A(2700)忘了加传输时间D(2820)把命中率算反了(用 70% 而不是 30% 去乘)。

📖 Week 03 讲义


Q10 — 答案 B

304 Not Modified

条件 GET 的完整机制

方向 内容
客户 → 服务器 GET ... + If-Modified-Since: <date>
服务器(未改) 304 Not Modified响应不含对象
服务器(已改) 200 OK + 对象数据

这正是 Q9 里「未命中才传对象」的协议层原因。

📖 Week 03 讲义


Q11 — 答案 C

Both(两者都用)。

官方原文DNS 一般用 UDP,但在某些情况(如区域传送 zone transfer)会用 TCP,所以答案是 Both。

场景 协议
普通查询/应答 UDP(报文小、省一个建连 RTT)
区域传送(zone transfer) TCP(数据量大且必须可靠)
应答超过 512 字节 TCP(UDP 被截断后改用 TCP 重试)

⚠️ A 是最常见的错选。 很多题库把 DNS 写成「UDP」—— 但只要选项里出现 Both,本课程的官方答案就是 Both。 只有问「DNS 主要用哪个」时才答 UDP。

📖 Week 04 讲义Week 05 Tutorial


Q12 — 答案 B

2 条:一条 NS 记录 + 一条 A 记录。

为什么必须成对返回

  • NS 记录只告诉你权威服务器叫什么名字dns.enterprise.com
  • 不知道它的 IP 就联系不上它;若为解析这个名字再发一次查询,会陷入死循环
  • 所以 TLD 把对应的 A 记录一起塞进「附加区(Additional Section)」

这条随行的 A 记录有个正式名称:胶水记录(glue record)。

💡 同样的结构也出现在 MX 上MX 记录的 value 是邮件服务器的「名字」要拿 IP 还得再查一条 A —— 「指名字的记录」永远需要一条 A 兜底。

📖 Week 04 讲义


Q13 — 答案 B(但这题的官方口径互相打架,必须读完

按题面列出的 4 条记录数,类型是 CNAME、A、MX、A:

A 出现了两次,但只算一种类型 —— 问的是「类型数」不是「记录数」。

⚠️ 三个来源给出了两个不同答案

来源 答案
Kurose 交互题的自动判分答案 3
Kurose 交互题的文字解答 4(写的是 "A, CNAME, NS, and MX")
COMP5416 tutorial 的 Tutor's version 4

也就是说:Kurose 站上「机器判分的标准答案」是 3,但它自己的文字解答写的是 4 —— 站上自相矛盾,而课程的答案 PDF 抄的是那段文字解答(4)

谁更有道理3。 因为题面明确把 NS 记录列在 TLD 服务器上, 而问的是权威服务器上有几种。按题面数就是 3 种。 说 4 的理由是「现实中权威服务器也持有自己区域的 NS 记录」—— 这在现实里成立,但题面没把它列出来。

考试怎么办

  • 如果题干和课程 tutorial 一字不差写 4(跟助教的评分标准走)
  • 如果题干强调「根据上面列出的记录」写 3
  • 两种理由都要能说出来,这题真正考的是「类型数 ≠ 记录数」这个点

📖 Week 05 Tutorial 详解


Q14 — 答案 D

两项的含义

含义
服务器必须逐份上传 N 个副本 —— 随 N 线性增长
下载最慢的那个客户至少要这么久

本题瓶颈是服务器上传(320 > 96)。

⚠️ A(96)只算了 B(102.86)是 P2P 的答案,看错了问的是哪种方式。

📖 Week 04 讲义


Q15 — 答案 C

取到的是第三项 ⇒ 瓶颈是「系统总上传能力」。

⚠️⚠️ P2P 的第一项是 ,不是 —— 服务器只需要把文件上传「一份」,剩下的靠对等方之间互传。 这是本公式最常错的地方,也是 P2P 相对 C/S 的全部优势来源。

三项分别对应三种瓶颈

取到哪项 瓶颈 官方答案代号
服务器上传 s
下载最慢的客户 c
系统总上传能力 cu

对比 Q14同样的参数,C/S 要 320 秒,P2P 只要 102.86 秒 —— 快 3.1 倍。

📖 Week 04 讲义


Q16 — 答案 B(本卷最容易错的一题

DNS 时延 ms

12 个对象、上限 5 条并行连接 ⇒ 要分

⚠️⚠️ A(157 ms)就是那个陷阱 —— 它来自死记的错误公式

「持久 HTTP 只要 1 个 RTT」只在 (一轮取完)时成立。 本题 要分 3 轮,每轮各 1 个 RTT,所以是 而不是

官方解答的原话:取回前 5 个之后, "the remaining embedded objects can be retrieved (in parallel). This second round takes only one more RTT."

正确的三条公式

情形 公式
非持久·串行
非持久·并行(上限
持久 + 并行(上限

只有「持久 + 流水线、不限并行连接数」才是恒定的

💡 课程 tutorial 那道题是 ,只有一轮,恰好掩盖了这个区别 —— 所以一定要拿 的实例练一遍。

📖 Week 05 TutorialWeek 03 讲义


Q17 — 答案 C

同样分 3 轮,但非持久每轮要 2 个 RTT(建连 + 请求):

持久与非持久的差别,就是「每轮 1 个 RTT」还是「每轮 2 个 RTT」 —— 持久省掉的正是每轮的建连那一个 RTT。

本题两种方式相差 ms,恰好等于 3 轮 × 45 ms。

⚠️ D(1192 ms)是完全串行的答案),忽略了并行。

📖 Week 05 Tutorial


Q18 — 答案 D

第一步:相加

  1011001101011010      (45914)
+ 0110111010011101 (28317)
────────────────────
10010000111110111 17 位,最高位是进位

第二步:回卷(把进位加回低 16 位)

  0010000111110111
+ 1
────────────────────
0010000111111000SUM

第三步:取反

SUM      = 0010000111111000
取反 →
CHECKSUM = 1101111000000111

自检(全 1)✓

⚠️ 三个干扰项分别对应三种典型错误

选项 错在哪
A 给的是 SUM,忘了最后取反
B 忘了回卷那个 +1(拿 当和)
C 回卷漏加 1 之后才取反

手算三步口诀相加 → 回卷 → 取反,一步都不能少。

📖 Week 05 讲义


Q19 — 答案 B

服务器发出的段:源端口 = 自己的 5300,目的端口 = 客户乙的 8200。

UDP 的关键性质

事实 说明
UDP 套接字只由二元组标识 目的 IP + 目的端口
两个客户发来的段进同一个套接字 因为它们的目的端口都是 5300
服务器靠什么区分客户 recvfrom() 返回的地址,不是靠套接字

发回复时,把「收到的源端口」当作「要发的目的端口」填回去 —— 这就是「源端口号提供了返回地址」的含义。

⚠️ A 把方向搞反了(那是客户乙发给服务器的段)。

📖 Week 05 讲义


Q20 — 答案 C

3 个套接字。

三个四元组互不相同 ⇒ 三个不同的套接字。

⚠️⚠️ 本题与 Q19 是刻意配对的对比题

UDP(Q19) TCP(Q20)
套接字标识 二元组:目的 IP + 目的端口 四元组:源 IP + 源端口 + 目的 IP + 目的端口
多个客户 → 同一服务器端口 全进同一个套接字 各自独立的套接字
本题结果 1 个套接字 3 个套接字

注意右侧那台客户(IP = C)开了两条连接源 IP 相同、目的完全相同,只有源端口不同(5412 vs 6316),照样是两个套接字 —— 这正说明 TCP 用的是四元组而非二元组。

⚠️ A(1 个)就是把 TCP 当成 UDP 来想的结果。 💡 欢迎套接字(welcoming socket)不算在内 —— 它只负责接受连接请求。

📖 Week 05 讲义


考后复盘

一、按板块统计

板块 题号 对应笔记
分层与性能 Q1–Q6 Week 01 / Week 02
应用层 Q7–Q10 Week 03
DNS 与 P2P Q11–Q15 Week 04
传输层 Q16–Q20 Week 05 / Tutorial

二、公式速查

主题 公式
传输时延 / 传播时延
端到端吞吐 路径上各链路容量 链路利用率 = 瓶颈速率 ÷ 该链路容量
电路交换最大连接 单跳:各链路电路数之和;限定路由时用最紧的一对链路求上界
分组交换概率 个在发:任意一个:
条件 GET 总时间
非持久·串行
非持久·并行(上限
持久 + 并行(上限
C/S 分发时间
P2P 分发时间
Internet 校验和 相加 → 回卷 → 取反

三、最容易失分的 8 个点

  1. 持久 HTTP 死记「3 个 RTT」 —— 时要分 轮(Q16
  2. 「指定某用户」漏乘 —— 任意一个要乘 Q4
  3. P2P 第一项写成 —— 应是 Q15
  4. 校验和忘了回卷或忘了取反 —— 三步一步都不能少(Q18
  5. 把 TCP 当 UDP 想 —— 四元组 vs 二元组(Q19 / Q20
  6. 条件 GET 漏算「每个请求都要一个 RTT」Q9
  7. RR 数「类型数 ≠ 记录数」Q13
  8. 共享链路利用率拿 而不是 去除Q6

四、想继续刷题

Kurose 交互练习站, 点每道题的 "Another Problem Like This" 可以无限生成新数字的同类题。

哪些题必做、哪些超纲,见 对照指南

⚠️ 两个使用提醒

  1. 站上的 Queuing Delay 那题用的闭式是 , 这个式子在 取最大、然后随 反而降到 0 —— 与教材「流量强度趋近 1 时排队时延趋于无穷」的定性结论相反。 考试按教材的定性结论答,那道交互题当熟悉概念用就好。
  2. 站上的 AI Tutors(Chapter 1–8 聊天机器人)平时可以用,但 Week 01 笔记记录的考试规则写明 midterm 禁止使用 AI。