资讯动态

system-design-101 精讲:UDP 最流行的四大应用场景(直播、DNS、行情组播与 IoT)

发布时间:2026/10/3 7:39:47 来源:尧图企业网站定制
后端文档教程【免费下载链接】system-design-101Explain complex systems using visuals and simple terms. Help you prepare for system design interviews.项目地址https://gitcode.com/GitHub_Trending/sy/system-design-101点击查看免费下载本指南以 top-4-most-popular-use-cases-for-udp.md 为核心脉络系统讲解 UDP用户数据报协议在现代软件架构中最典型的四大应用实时音视频直播、DNS 域名解析、金融行情组播与 IoT 设备通信。读完本文你将理解 UDP 相比 TCP 在简单、快速、低开销三个维度上的取舍逻辑掌握每种场景下 UDP 被选中的技术理由以及 DNS、DHCP、NTP 等基于 UDP 的常见服务与端口细节并能对照仓库内多篇网络协议指南形成完整的知识链路。为什么 UDP 会出现在这么多架构里UDPUser Datagram Protocol与 TCP 同属 OSI 模型的传输层协议。在 what-is-osi-model.md 描述的封装流程中应用层数据在传输层会被加上 TCP 或 UDP 头部TCP 头部包含源端口、目的端口与序列号用于构建可靠的字节流而 UDP 则轻量得多直接以数据报datagram形式把数据交给网络层。UDP 的核心特征可以概括为三点无连接Connectionless发送前无需三次握手建立会话直接向目标计算机发送数据报低开销Low Overhead头部极小没有 TCP 那样的序号、确认、窗口与重传机制网络与 CPU 开销都更小尽力而为Best-effort不保证送达、不保证顺序、不保证不丢包把可靠性交给上层应用自己处理。正如 explaining-8-popular-network-protocols-in-1-diagram.md 中所概括的UDP 常被用于对时间敏感time-sensitive的通信场景——在这些场景里偶尔丢包比等待重传更好。这一取舍原则正是下面四个主流用例的共同出发点。用例一实时视频流与音视频会议核心诉求更低的延迟能容忍偶发丢包。VoIP网络电话和视频会议应用大量使用 UDP。原因很直观实时通信对延迟极其敏感TCP 一旦丢包就会触发重传数据必须等待丢失的包补齐才能继续交付而这会造成可感知的卡顿与画面停顿。相比之下UDP 丢一帧画面、一段语音听者/观者几乎无感应用层完全可以用丢弃旧帧、使用新帧的方式平滑过渡。这一类应用往往还会在 UDP 之上叠加轻量的可靠性机制形成可靠 UDPReliable UDPRUDP的工程实践。仓库中的 what-protocol-does-online-gaming-use-to-transmit-data.md 就详细描述了这一思路在模拟射击类游戏里游戏服务器向客户端按序推送状态包当某个中间包丢失时客户端先把后续包缓冲起来buffered待服务器重传丢失包后缓冲的包一起变为已交付状态最终实现**最终一致eventually-synchronized**的游戏状态同步。这种局部可靠 全局低延迟的做法正是 UDP 在实时媒体与实时互动场景中的通用范式。此外随着 HTTP/3 的普及UDP 的使用范围进一步扩大。http1-http2-http3.md 指出HTTP/3 基于 Google 的 QUIC 协议而 QUIC 构建在 UDP 之上——也就是说 HTTP/3 已经从 TCP 迁移到了 UDP。explaining-8-popular-network-protocols-in-1-diagram.md 进一步说明QUIC 专为移动端重度联网场景设计它让网页响应更快而 VR 等需要高带宽渲染虚拟场景的应用也会从中受益。用例二DNS 域名解析核心诉求查询轻快绝大多数请求用一个小包就能完成。DNSDomain Name Service查询的默认承载协议就是 UDP。DNS 查询的报文通常非常小——一个域名查询请求往往只有一个数据报使用 UDP 无需握手、无需维持连接解析速度极快能够支撑海量并发的域名解析流量。原文档特别指出一个重要边界DNS 也可以使用 TCP主要用于两类场景大响应当响应数据超过单个 UDP 报文能承载的大小通常受限于 512 字节的传统限制或 EDNS0 协商后的更大值时改用 TCP 分片传输区域传输Zone Transfer主从 DNS 服务器之间同步完整区域数据时为了保证可靠性而使用 TCP。也就是说DNS 用 UDP是默认形态DNS 用 TCP是必要时的兜底形态二者互补而非互斥。端口层面仓库中的 18-common-ports-worth-knowing.md 给出了精确记录DNS 使用 UDP 或 TCP 的 53 号端口进行查询。同一份端口清单还列出了其他典型的 UDP 服务端口可以帮助你快速建立哪些服务默认走 UDP的直觉服务默认端口传输协议DNS 域名查询53UDP 或 TCPDHCP 服务器67UDPDHCP 客户端68UDPNTP 网络时间协议123UDPDHCP 与 NTP 选择 UDP 的理由与 DNS 一致请求短小、需要即时响应。DHCP 客户端甚至需要在未获取 IP 之前就广播请求只有无连接的 UDP 能胜任NTP 的时间同步报文对时效要求极高宁可丢弃过期样本也不愿意等待重传。用例三金融行情组播Market Data Multicast核心诉求一份数据同时高效送达多个接收方延迟极低。在低延迟交易low-latency trading领域UDP 被用于高效地向多个接收方同时分发市场行情数据。这里的组播multicast是关键行情源只需要在网络中发送一份数据报文网络设备如交换机会将它复制并分发到所有订阅了该组播组的接收端而不是像单播那样为每个接收方各发一份。这种模式对交易系统有三个直接价值带宽效率行情数据量大每秒成千上万条报价与成交组播避免了 N 份拷贝的带宽浪费低延迟UDP 无握手、无确认、无重传等待行情到达时间更可预期这是高频交易抢占时机的基础高吞吐去掉了 TCP 的流量控制与拥塞控制发送端可以全速推送行情流。代价是可能丢包。因此金融行情系统通常会在应用层构建丢失检测与补偿机制例如通过序号检测缺口再通过专门的恢复通道补包这正是UDP 负责快、上层负责可靠分工的典型体现。整个按序号检测、缓冲、重传、最终一致的机制细节可以对照 what-protocol-does-online-gaming-use-to-transmit-data.md 中 RUDP 的逐包状态推进过程来理解——两者在原理上是同构的。用例四IoT 设备通信核心诉求设备资源受限、报文小、数量大需要极简协议。IoT物联网设备场景大量使用 UDP 在设备之间传输小块数据原因同样清晰资源受限大量传感器、嵌入式设备内存小、算力弱、电池有限无法承担 TCP 连接状态与重传缓冲的开销UDP 的无状态设计几乎不消耗设备资源报文短小遥测数据温度、湿度、电量、开关状态等往往只有几十个字节用一个小 UDP 数据报即可完成一次上报无需经历 TCP 的连接建立与拆除流程海量规模物联网动辄上百万台设备并发上报无连接的 UDP 让服务端无需维护海量连接状态大幅降低网关与云端的负载。工业实践中许多物联网协议栈就是在 UDP 之上叠加一层极简的可靠性/会话管理来实现轻量且够用的通信语义。可以说IoT 与直播场景共享同一句判断标准当连接管理的成本高于偶发丢包的代价时UDP 就是更优解。拓展理解 UDP 取舍的通用框架综合上面四个场景可以把 UDP 的选型逻辑提炼成一个可复用的判断框架延迟敏感吗实时互动音视频、游戏、行情、时间同步优先 UDP报文小、请求频次高吗DNS、DHCP、NTP、IoT 遥测这类短小高频的请求优先 UDP接收方多吗需要一对多高效分发行情组播、组播推送时优先 UDP可靠性由谁兜底应用层愿意自己实现序号检测、缓冲、重传RUDP 思路或业务本身容忍少量丢失时放心选用 UDP。反之当业务需要严格可靠的字节流、有序交付与拥塞控制如文件传输、网页、邮件TCP 仍然是正确选择。这份指南在仓库中处于 Computer Fundamentals 知识板块可与以下文档串联阅读形成完整的网络协议知识链what-protocol-does-online-gaming-use-to-transmit-data.mdUDP 之上实现可靠机制的完整流程explaining-8-popular-network-protocols-in-1-diagram.mdHTTP/3、WebSocket、TCP、UDP 等 8 种协议的横向对比http1-http2-http3.mdHTTP 从 TCP 走向 QUIC/UDP 的演进脉络18-common-ports-worth-knowing.mdDNS53、DHCP67/68、NTP123等 UDP 服务的端口速查what-is-osi-model.mdUDP 在传输层的封装与解封装位置。总结而言UDP 凭借简单、快速、低开销三个特性在实时媒体、域名解析、金融行情与物联网四大领域站稳了脚跟。它把可靠性问题抛给应用层换来了 TCP 无法比拟的延迟与吞吐表现——理解并善用这个取舍是系统设计者在面对快但会丢与稳但会慢这对矛盾时的核心功力。赞分享后端文档教程【免费下载链接】system-design-101Explain complex systems using visuals and simple terms. Help you prepare for system design interviews.项目地址https://gitcode.com/GitHub_Trending/sy/system-design-101点击查看免费下载相关推荐System Design 101负载均衡算法与应用场景System Design 101负载均衡算法与应用场景 你是否曾遇到过网站访问缓慢、服务频繁崩溃的情况在高并发场景下单一服务器往往难以承受巨大的流量压力后端文档教程system-design-101 精讲如何用 Multipart Upload 高效上传大文件到 S3system design 101 精讲如何用 Multipart Upload 高效上传大文件到 S3 本指南以 system design 101 仓库中后端文档教程System Design 101 幂等性实战6 大典型应用场景与工程实现要点System Design 101 幂等性实战6 大典型应用场景与工程实现要点 本文是开源仓库 System Design 101 https://link.后端文档教程创作声明:本文部分内容由AI辅助生成(AIGC),仅供参考

读完文章,也想定制专属网站?

尧图设计师 24 小时内与您沟通定制方案

免费获取报价 →
↑