IP 地址与网络

延迟 (Latency)

约 4 分钟阅读

什么是延迟

延迟 (Latency) 是指数据从发送端传输到目的地所需的时间。通常以毫秒 (ms) 为单位衡量,数值越小表示响应越快。

当你在浏览器中输入 URL 后,页面开始显示之前的大部分「等待时间」都是由延迟造成的。DNS 域名解析、TLS 握手、服务器处理时间以及数据往返的物理传播延迟层层叠加,共同构成了用户感知到的「慢」。

延迟常被比喻为「水管的长度」。从拧开水龙头到水流出来的时间就是延迟,而水流出后的流量就是带宽。无论水管多粗 (高带宽),如果管道很长,第一滴水到达仍需要时间。

延迟的测量方法

测量延迟最常用的工具是 pingtraceroute

ping
发送 ICMP Echo Request 并测量往返时间 (RTT)。最简便的延迟检测手段。执行 ping example.com 即可查看平均、最小、最大 RTT 及丢包率。
traceroute
逐跳显示数据包到达目的地途中每个路由器的延迟,帮助定位延迟瓶颈所在的网段。Windows 使用 tracert,macOS/Linux 使用 traceroute
mtr
将 ping 和 traceroute 合二为一的工具,实时持续显示每一跳的延迟和丢包率,特别适合检测间歇性延迟问题。

需要注意的是,延迟会随时间段和网络拥塞状况大幅波动。不要仅凭一次测量下结论,应在不同时段多次测量以把握整体趋势。

延迟与带宽的区别

延迟和带宽容易混淆,但它们衡量的是完全不同的指标。

延迟
数据到达的「时间」,单位为毫秒 (ms)。取决于物理距离、路由器数量和处理延迟。
带宽
单位时间内可传输的数据「量」,单位为 Mbps/Gbps。相当于管道的粗细。

即使测速显示下行 1 Gbps,如果延迟高达 200 ms,网页加载仍然会感觉很慢。反之,延迟仅 5 ms 但带宽只有 1 Mbps,大文件下载也会很慢。实时通信 (游戏、视频会议) 中延迟是主导因素,大容量传输 (流媒体、备份) 中带宽更为关键。

不同场景下延迟的影响

  • 在线游戏:FPS 和实时对战游戏中,20 ms 以下为理想值,超过 50 ms 操作延迟可被明显感知,超过 100 ms 则严重影响竞技体验。游戏服务器的物理距离是最大影响因素,CDN 和边缘服务器的运用十分有效。
  • 视频会议:150 ms 以下可进行自然对话,超过 300 ms 发言节奏错乱,对话变得困难。音频比视频对延迟更敏感。
  • 视频流媒体:缓冲机制使播放过程中延迟影响不大,但初始缓冲时间受延迟影响。直播场景下低延迟直接影响观看体验。
  • 网页浏览:页面加载涉及多个 HTTP 请求,每个请求的延迟会累积叠加。HTTP/2 和 HTTP/3 的多路复用技术可有效缓解此问题。

如何降低延迟

降低延迟需要从缩短物理距离和优化协议两方面入手。

  • CDN:从离用户最近的边缘服务器分发内容,最大限度减少物理传播延迟。现代 CDN 还支持动态内容缓存和 API 响应加速。
  • 边缘计算:将计算本身放在离用户更近的位置执行。Cloudflare Workers 和 AWS Lambda@Edge 是典型代表,可消除到源服务器的往返延迟。
  • HTTP/3 (QUIC):基于 UDP 的协议,将 TCP 三次握手和 TLS 握手合并,减少连接建立的往返次数。首次连接实现 1-RTT,重连实现 0-RTT。
  • DNS 优化:使用高速公共 DNS (Cloudflare 1.1.1.1、Google 8.8.8.8) 缩短域名解析延迟。DNS 预取 (<link rel="dns-prefetch">) 也有帮助。
  • 连接预热<link rel="preconnect"> 提前完成 DNS 解析、TCP 连接和 TLS 握手,减少实际请求时的延迟。

常见误解

网速快延迟就低
带宽 (网速) 和延迟是相互独立的指标。即使拥有 1 Gbps 的光纤连接,访问地球另一端的服务器延迟仍会超过 200 ms。光速的物理限制决定了无论带宽多大,距离造成的延迟都无法消除。
延迟是服务器端的问题
延迟在从客户端到服务器的整条路径上累积产生。家中 Wi-Fi 路由器的处理延迟、ISP 骨干网的拥塞、海底光缆的物理距离、经过的路由器数量都是影响因素。服务器响应时间只是延迟的一部分。
ping 值低就意味着所有应用都流畅
ping 测量的是 ICMP 数据包的往返时间,而实际应用使用 TCP/UDP,数据包大小和通信模式各不相同。此外,抖动 (延迟波动) 和丢包也会显著影响体验质量,仅凭 ping 值无法全面评估连接质量。
分享

相关术语