📄 一句话概括
控制消息(DNS 查询、DHCP 分配等)天然适合 UDP:一个包装得下、来去一趟、丢了下次自然补。
📝 本节和前面几节的关系
2.6.1 立了取舍原则;本篇看哪些业务踩中它。
一、两个代表
DNS 查询:一问一答各一包; DHCP:分配地址的广播协商,客户端此时连 IP 都没有, TCP 无从谈起——UDP 广播是唯一解。
二、判断口诀
一包装得下+丢了可重试+不需要连接=UDP; 任何一条不满足=TCP。
三、动手 Demo:控制用的短数据
适合 UDP 的三个理由:
for s in ['1. 消息短——一个包装得下',
'2. 来回少——省去连接/断开开销',
'3. 丢了就丢了——下一次查询自然补上']:
print(s)
实跑输出:
--------------------------------------------------------------------
控制用的短数据
--------------------------------------------------------------------
控制消息走 UDP 的三个理由:
1. 消息短——一个包装得下,无需拆分对账
2. 来回少——省去连接/断开的开销
3. 丢了就丢了——下一次查询自然补上
教材点名两例:DNS 查询、DHCP 分配。
DHCP 那条最有说服力:设备刚连网时连 IP 都没有, TCP 三次握手根本没法开始。
30 秒实验
- 用 Wireshark 过滤 udp.port==53 看一次 DNS 查询。
- 想想 NTP 对时为什么用 UDP。
- 举一个【看似适合 UDP 其实必须 TCP】的场景。
常见误区
- 以为 UDP 只能干杂活——QUIC 证明了它的大用。
- 以为控制消息丢了没关系——协议里通常有重试设计。
自测三问(点开对答案)
1. DHCP 为什么必须 UDP? —— 客户端还没有 IP,无法建 TCP。 2. 选 UDP 的口诀是什么? —— 装得下+可重试+不需要连接。 3. DNS 与 DHCP 分别做什么? —— 域名解析;自动分配网络配置。- ☐ 下一节(2.6.3 音频和视频数据)
相关笔记
- 对必要的设置进行自动设置(DHCP) — DHCP 全解
- DNS服务器的基本工作 — DNS 侧视角
- 🔌 网络是怎样连接的 · 索引