UDP(用户数据报协议)是互联网核心传输层协议之一,以无连接、低延迟著称,不保证送达但开销极小,广泛用于视频直播、语音通话、在线游戏、DNS 查询等对实时性要求高的场景。

| 类型 | 传输层协议 |
| 设计者 | David P. Reed |
| 推出时间 | 1980 年(RFC 768) |
| 所属协议族 | TCP/IP 协议族 |
| 头部大小 | 8 字节 |
| 官网 | ietf.org |
UDP(User Datagram Protocol,用户数据报协议)是互联网传输层的核心协议之一,提供一种无连接、不可靠但极为轻量的数据传输方式,常与 TCP 并列为最重要的两大传输协议。
UDP 由 David P. Reed 设计,于 1980 年在 RFC 768 中正式定义,是 TCP/IP 协议族中最简洁的传输层协议。它工作在 IP 层之上,为应用程序提供端口号复用和基本的差错校验,除此之外几乎不做任何额外处理。
与 TCP 不同,UDP 发送数据前不需要建立连接,也不维护连接状态、不确认收包、不重传丢包、不保证顺序。这种「尽力而为」的设计让它省去了握手和确认的开销,延迟低、效率高,特别适合那些「宁可丢一点数据也不能等」的实时应用。
UDP 的报文头部只有 8 个字节,包含源端口、目标端口、长度和校验和四个字段,远小于 TCP 头部,因此传输开销非常小。可靠性问题则交由应用层自行解决——需要时应用可以在 UDP 之上实现自己的重传和排序逻辑。
UDP 广泛用于实时音视频(直播、视频会议、VoIP 语音)、在线游戏、DNS 域名解析、DHCP、NTP 时间同步等场景。近年来最著名的应用是 QUIC 协议——HTTP/3 的底层传输就构建在 UDP 之上,在保留低延迟的同时于应用层实现了可靠性和加密,被主流浏览器和大型网站广泛采用。
问:UDP 和 TCP 该怎么选?答:需要数据完整可靠(网页、文件、邮件)用 TCP;追求实时性、能容忍少量丢包(直播、游戏、语音)用 UDP。
问:UDP 不可靠,为什么还有这么多应用用它?答:因为实时应用里「迟到的数据不如不到」,重传旧数据反而造成卡顿;而且应用可以在 UDP 之上按需自建可靠机制,比 TCP 更灵活。
问:UDP 安全吗?答:UDP 本身不加密也不验证来源,源地址容易被伪造,因此常被用于反射放大攻击;实际应用中通常配合 DTLS 或 QUIC 等加密层使用。

| 类型 | 传输层协议 |
| 设计者 | David P. Reed |
| 推出时间 | 1980 年(RFC 768) |
| 所属协议族 | TCP/IP 协议族 |
| 头部大小 | 8 字节 |
| 官网 | ietf.org |
登录 后参与讨论
暂无讨论,来发表第一条评论吧