延迟与带宽
带宽(Mbps)是连接每秒能承载多少数据;延迟以 ping 的毫秒数表示,是数据往返一趟需要多久。快节奏网游尽量低于 50 ms;按 NVIDIA 的要求,云游戏到最近数据中心需低于 80 ms;通话的单向时延应保持在 150 ms 以内,这是 ITU-T G.114 的建议。
各类活动的延迟目标
| 活动 | 目标 | 来源 |
|---|---|---|
| 云游戏(GeForce NOW) | 到最近数据中心的往返时延低于 80 ms | NVIDIA |
| 快节奏网游(射击、格斗、竞速) | 低于 50 ms;超过 100 ms 会明显感觉到 | 本站建议 |
| 视频和语音通话、直播 | 单向时延低于 150 ms | ITU-T G.114 |
| 看视频、浏览网页、下载 | 不敏感;播放器会提前缓冲 | – |
注意单向和往返的区别。测速显示的 ping 是往返时间。ITU-T G.114 说的是单向时延,所以在两个方向耗时大致相同的典型路径上,150 ms 的单向上限大约相当于 300 ms 的往返。通话比游戏宽容得多,更严格的限制在游戏上。
为什么 Mbps 更高,ping 却不降
带宽决定大量数据多快到达,延迟决定任何数据多快能到。游戏状态更新和通话音频都是小数据包,无论套餐多快,把每个包推上线路所花的时间都微乎其微:
发送时间 = 数据包比特数 ÷ 线路速率 1,500 字节数据包,100 Mbps = 12,000 ÷ 100,000,000 = 0.12 ms 1,500 字节数据包,1000 Mbps = 12,000 ÷ 1,000,000,000 = 0.012 ms
从 100M 升级到千兆,每个数据包大约只省下十分之一毫秒。一个 ping 40 ms 的游戏,升级后 ping 仍然接近 40 ms。其余的时延来自别处:
- 距离。信号传播需要时间,连到其他地区的服务器会增加任何套餐都消除不了的时延。
- 路由。运营商通往游戏或通话服务器的路径,可能比直线距离长得多。
- 接入方式。不同的接入技术,在流量离开你所在区域之前就会增加不同程度的时延。
- 家庭网络。Wi-Fi 和繁忙的路由器会增加时延和波动。
- 排队。线路满载时,数据包要排队等待,也就是下文说的缓冲膨胀。
这就是为什么在射击游戏里,一条 ping 15 ms 的 50 Mbps 线路,可能比一条 ping 120 ms 的千兆线路手感更好。要测量线路实际承载的速度,网络吞吐量计算器可以把任意一次传输换算成 Mbps。
抖动:ping 忽高忽低
抖动是延迟在相邻数据包之间的波动幅度。稳定的 60 ms,往往比在 20 到 150 之间来回跳的 ping 更容易接受。通话软件会用一个小的抖动缓冲区来平滑音频,这本身会增加时延;当波动超过缓冲区时,你就会听到机器人般或断断续续的声音。在游戏里,抖动表现为角色瞬移、打中了却不算。Wi-Fi 干扰和线路跑满是最常见的原因。
缓冲膨胀:为什么上传时 ping 会飙升
当到达的数据多于线路能发出的数据时,路由器和光猫会把数据包排进队列。如果队列很大,繁忙的链路就会增加大量时延:有人开始云备份,上行被占满,备份期间全家的 ping 都会跳高。罪魁祸首通常是上行,因为在大多数套餐里它是较小的那个方向。
检查方法是比较线路空闲时的 ping 和测速过程中的 ping。现在很多测速工具除了空闲延迟,也会显示负载延迟。如果负载时的数字高出很多,可以试试:
- 如果路由器支持,打开智能队列管理(SQM)或类似的 QoS 功能;
- 限制备份和同步软件的上传速率,或把它们安排在夜间运行;
- 对照家里同时发出的数据量检查套餐的上行,例如用网速需求计算器。
有线与 Wi-Fi
Wi-Fi 要和所有设备以及邻居的网络共享空中信道,丢帧要重传,距离远、隔墙多速度就下降。这些都会增加时延,更明显的是增加抖动。网线可以避开这一切。对于游戏电脑、游戏主机或整天开会的办公桌,插网线是最可靠的办法。实在没法布线,就让设备靠近路由器或无线接入点,并尽量连接 5 GHz 或 6 GHz 频段。
如何测试延迟
要点
- 带宽是容量,延迟是时延。两者相互独立,而宽带套餐卖的是带宽。
- 快节奏游戏尽量低于 50 ms,GeForce NOW 云游戏低于 80 ms。
- 通话更宽容:ITU-T G.114 把上限定为单向 150 ms。
- 从 100M 升到千兆,每个数据包只省约 0.1 ms,解决不了高 ping。
- 抖动和缓冲膨胀是通话和游戏体验差的常见原因;用网线、限制上传速率都有帮助。