游戏延迟高,最直接的原因是物理距离。绝大多数热门游戏的服务器都部署在特定城市,如果你身处内陆,而服务器在沿海,光缆传输本身就有延迟。光在光纤中的速度大约是每毫秒两百公里,看似极快,但网络数据包并不是直线飞过去的。它要经过城市骨干网、省级节点、国家级干线,甚至跨海光缆,每一段路由设备都会带来几毫秒到几十毫秒的延迟。从北京到上海,直线距离一千多公里,理想延迟大约十几毫秒,但实际走公网路由,经常要绕到南京或武汉,延迟可能飙到四十毫秒以上。如果服务器在海外,比如美西,跨太平洋光缆单程就有一百多毫秒,一来一回就是三百毫秒,游戏体验自然卡顿严重。
带宽充足时,延迟依然高,另一个常见原因是链路拥塞和路由抖动。游戏数据包非常小,一个典型的数据包只有几十到几百字节,对带宽几乎不构成压力。但家庭宽带的出口拥塞点往往不在你家里,而在运营商的城域网出口。晚高峰时,大量用户同时进行视频下载、直播上传,共享的出口带宽被占满,你的小数据包就会被排在大量文件传输的后面。这就像高速公路上车很多,你的车虽然轻巧,但也被堵在大货车流里。更为隐蔽的是,运营商有时候为了让流量走更便宜的互网络径,会故意设置路由策略,让你的数据包绕经其他城市的节点。比如从广州到香港的服务器,明明直线很近,但数据包可能先北上到武汉,再南下,延迟平白增加了三十多毫秒。这些情况用测速软件根本看不出来,因为测速只关心总吞吐量,而游戏关心的是每一个包的到达时间。
家里的Wi-Fi也是延迟的重要来源。许多人觉得无线路由器信号满格,网速也快,就忽视了无线干扰。Wi-Fi是共享半双工介质,同一时间只能有一个设备发送数据。如果家里有多台手机、平板、智能电视同时联网,路由器需要不断切换服务对象,每次切换都会带来排队等待。更麻烦的是微波炉、蓝牙音箱、邻居的Wi-Fi,都可能在同一频段制造干扰。Wi-Fi的降噪重传机制会让数据包反复重发,延迟随之飙升。即便你离路由器很近,无线网卡本身的处理延迟也有几毫秒,而稳定的有线连接通常能将延迟降低五到十毫秒。对于需要精确到毫秒级别的射击游戏,这个差距足以决定生死。
网络设备自身的处理瓶颈也不容忽视。光猫、路由器、交换机,每一个设备都在执行接收、解析、转发的工作。如果你的路由器是比较老旧的型号,它的CPU和内存不足以处理大流量转发,就会出现延迟积压。特别是开启了QoS流量整形、家长控制、VPN等复杂功能后,路由器要处理的任务更多,延迟反而升高。很多玩家不知道,默认的光猫其实内置了路由功能,如果再接一个路由器,就形成了双重NAT。数据包每次都要经过两层网络地址转换,多一次转换就意味着多一毫秒到三毫秒的处理时间,而且可能引发最致命的“IPv6与IPv4转换”问题。你的游戏服务器如果只支持IPv4,而你的网络默认优先使用IPv6,数据包就得经过隧道转换,延迟增加十几毫秒甚至更高。
游戏本身的帧同步机制也放大了延迟的感知。不像网页浏览或视频播放可以缓存,在线游戏要求所有玩家的状态实时一致。你的每一次操作都要打包上传到服务器,服务器再广播给其他玩家。这个过程天生就有至少一个RTT的延迟。如果网络出现抖动,哪怕只有几十毫秒的间断,游戏客户端就会等下一帧状态,造成画面停顿和瞬移。有些游戏采用延迟补偿算法,比如通过插值预测来减少卡顿感,但这反过来会让玩家感到“明明有延迟却还要挨打”。更糟的是,如果游戏服务器本身负载过高,比如大量玩家同时在线,服务器每帧处理时间变长,你收到的数据包间隔就会不均匀,形成俗称的“跳Ping”。这时候你的宽带再快也无济于事,因为瓶颈在游戏服务端。

此外,本地电脑的硬件和驱动也会影响延迟。无线网卡的省电模式会定期关闭接收通道,导致数据包积压;显卡渲染延迟、鼠标采样率、显示器刷新率,虽然不直接影响网络延迟,但会改变你对延迟的感知。你按下鼠标到屏幕上出现画面,整个过程包括硬件输入延迟、操作系统调度、游戏引擎渲染、网络往返,任何一个环节卡壳,都会让游戏觉得“反应慢”。
解决这个问题,不能单靠提升宽带套餐。先查游戏服务器的真实IP,用ping命令测试对端延迟,如果延迟高于五十毫秒,考虑使用加速器甚至更换服务器节点。把家里的网络设备换成有线连接,关闭路由器的QoS和复杂安全功能,手动修改本地DNS为公共DNS,减少解析环节。如果被迫使用Wi-Fi,一定要用5G频段并尽量靠近路由器。最终要理解,带宽是水管粗细,延迟是水流速度,水管再粗,水流要绕过整座山,依然快不起来。游戏需要的是短而直的路,而不是宽而绕的路。