skip to content
Liu Yang's Blog

游戏延迟优化实测:自建中继 vs 商业加速器

/ 9 min read

Table of Contents

本文记录一次系统性的游戏延迟测试,对比通过中继服务器加速与商业加速器在不同地区的实际表现,并分析不同网络方案对游戏延迟和稳定性的影响。

测试环境

  • 测试点:上海电信
  • 本地设备:WiFi 6(网卡 AX201),路由器 ZTE AX3000(存在一定损耗和波动)
  • 测试游戏:CS2(对波动极敏感)、Apex(对波动容忍度稍高,二者对丢包都敏感)
  • 服务器配置:Debian,开启 BBR + FQ 队列,未做额外 UDP 优化
  • 对照组:雷神加速器(使用 Ucloud UDPN,国内多个区域集中入口)

商业加速器基准延迟(雷神)

地区CS2(设置面板)Apex(游戏内)
香港33ms45~57ms
日本东京34~35ms41~47ms
美国西雅图117~118ms128~132ms
德国法兰克福140~143ms142~148ms

英雄联盟台服参考:32~33ms


中继加速延迟实测

端内延迟记录 Ping,Tcping 往往更有参照性,二者在稳定线路下相差不大。

地区方案(端内延迟)CS2Apex线路类型隧道方式备注
HK深港专线 → HK 落地(28ms)28~29ms29~34ms专线TCP 封装非常稳定,大带宽
HK高端 HK 直连(30ms)30~31ms31~36ms高端TCP 封装极稳,零波动,大带宽
HK深港专线 → HK 落地(33ms)33~34ms55~60ms专线原生 UDP稳定,游戏小包
HK大厂优化线路 → HK 落地(29ms)32~35ms40~55ms优化TCP 封装偶有丢包,不稳
HK优化线路 HK(37ms)38~39ms43~48ms优化TCP 封装晚高峰 66ms,原生 UDP 差,需搭配落地
TYO沪日专线 → JP 落地(37ms)37~38ms40~50ms专线原生 UDP非常稳定,游戏小包
TYO高端 JP 直连(33~35ms)34~36ms41~53ms高端TCP 封装非常稳定,大带宽,体验最佳
TYO优化 JP(35ms)36~38ms38~45ms优化TCP 封装小幅波动,需搭配落地
SEA高端 JP → JP 骨干 → SEA(118ms)125~126ms128~131ms高端+专线两层 TCP 封装链式多跳,非常稳定,大带宽
SEA沪日专线 → JP 骨干 → SEA(119ms)127ms129~136ms专线原生 UDP稳定,游戏小包
LAX高端 LAX 直连(129ms)134ms163~168ms高端TCP 封装非常稳定,不适合 FPS
FRA北京骨干 → DE(27+116ms)155ms(荷兰节点)163~170ms高端TCP 封装非常稳定
FRA北京骨干 → DE → DE 落地(144ms)153~154ms154~161ms高端TCP 封装两层转发,稳定

各地区评价

香港:专线延迟和高端直连接近,优化线路(大厂前置)延迟可接受但偶有波动。线路类型优先级:专线 ≈ 高端 > 优化。

日本:沪日专线受众少但延迟出色;高端直连国际互联好,是综合体验最稳的方案。

美国:亚太 → 美西西雅图采用日本中转可将延迟压到 117~119ms 范围,与商业加速器基本持平。路径质量取决于日本到西雅图段走的骨干网(RETN、GSL、SIX),不同骨干延迟差 3~5ms。

欧洲:自建中继方案延迟比商业加速器约高 10~15ms,主要瓶颈在国内出口段。走联通 9929 骨干到德国是目前延迟最优的路径,约 144ms。FPS 游戏场景对该差距感知明显,休闲游戏可以接受。

教育网:若出口先绕到北京汇聚,优化线路的意义会打折。接入 HKIX 的香港主机直连通常延迟不差,IPv6 路径更为直接。


UDP over TCP 的技术分析

游戏流量本质是 UDP,但部分中继场景下会将其封装进 TCP 隧道(UDP over TCP,简称 UoT)传输。以下分析其固有影响。

为什么要用 TCP 封装 UDP

跨国链路上,运营商有时会对 UDP 流量做 QoS 限速甚至丢弃,TLS 流量则很少受影响。将游戏 UDP 包封装成看起来像普通 HTTPS 的 TCP 流量,可以规避这一问题,代价是引入了 TCP 协议本身的特性。

UoT 的固有缺陷

队头阻塞(Head-of-Line Blocking) 是最核心的问题:

  • UDP 本身无序,一个包丢了不影响后续传输,对实时游戏非常友好
  • TCP 可靠有序,一旦某个包丢失,后续所有包都要等待重传
  • 把游戏 UDP 放进 TCP 隧道后,任意 TCP 包丢失都会导致整个隧道阻塞,表现为延迟突然飙高、卡顿

额外开销:每个原始 UDP 包都要套上多层协议封装头,包体积增大,小包(如游戏心跳包)的封装开销占比尤其高。

处理延迟:TCP 握手、拥塞控制算法、封包解包的 CPU 开销,会引入额外的毫秒级延迟。

实测影响

在线路质量好(稳定、不丢包)的条件下,UoT 对延迟的影响极小:

  • 高端直连线路:TCP 封装 vs 原生 UDP,延迟差距在 1ms 以内,可忽略
  • 专线(有原生 UDP 入口):原生 UDP 略优于 TCP 封装,但差距同样在 1ms 量级
  • 线路存在 UDP QoS:TCP 封装显著改善稳定性,这时稳定性的收益远大于延迟的微小损耗

结论:线路存在 QoS 风险时优先 TCP 封装;专线且链路干净时可以用原生 UDP。不必过度纠结,协议封装层面的优化远不如换条更好的线路来得直接。


隧道方式对延迟的影响

  1. 多跳链式转发场景:由于跨国 UDP 质量不稳定,这类方案通常全程使用 TCP 封装。不同封装方案(如 WebSocket + TLS、纯 TLS 等)之间的延迟差异极小,基本可以忽略,速度上略有差异。

  2. 专线直连场景:隧道方式的选择影响不大,主要取决于线路本身是否存在 QoS。有原生 UDP 入口时略优,不必为此额外投入。

  3. 总结:隧道方式对延迟的影响在毫秒量级,线路质量和节点位置才是游戏体验的决定因素。优化顺序应该是:线路 → 节点位置 → 封装方式。


多层中继的延迟分析

观察规律:香港、日本区域,Ping 累加基本等于游戏内延迟;但欧美区域,游戏延迟比 Ping 往往高出 5~10ms。

可能的原因:欧美区域通常需要 2 跳以上的中继,每一跳的封包处理、路由判断都会累积少量延迟。亚太区由于物理距离近,单跳或两跳即可到达,这部分损耗不明显。

几个可能的优化方向:

  1. 优化国内入口:商业加速器的北京入口往往比 9929 骨干的延迟低 5ms,这是自建方案的主要劣势所在
  2. 减少中继层数:每减少一跳,就少一份封包开销
  3. 更轻量的封装方案:对中继段使用开销更小的隧道协议(如纯 UDP 或 QUIC)
  4. 重复发包补偿丢包:高端线路通常不丢包,但若线路偶发丢包,重复发包可以提升实时性