UDP 用户数据报协议
User Datagram Protocol。在 IP 之上提供无连接、不可靠的数据传输。
跟 TCP 的对比:
| TCP | UDP | |
|---|---|---|
| 连接 | 需要(三次握手) | 不需要 |
| 可靠性 | 丢包重传 | 丢了就丢 |
| 顺序 | 保证 | 不保证 |
| 速度 | 慢 | 快 |
| 开销 | 大 | 小 |
UDP 的核心 trade-off:牺牲可靠性换低延迟。
用 UDP 的场景:
- 实时视频/语音通话(丢一帧无所谓,但不能等)
- 在线游戏(同上)
- DNS 查询(数据小、可以重试)
- 流媒体直播
- VoIP
不用 UDP 的场景:任何数据不能丢、必须按顺序的 —— 那些用 tcp。