TL;DR
版本:v1.0,日期:2025-08-15。结论先写在前面:低丢包、长连接、浏览网页优先看 VLESS;中等网络质量、兼顾兼容性看 Trojan;高丢包、移动网络、跨洲链路优先看 Hysteria2。我的测试里,东京到新加坡的 200 次 HTTPS 请求,VLESS 平均 RTT 138ms,Trojan 142ms,Hysteria2 149ms;但在 3% 人为丢包下,Hysteria2 的 50MB 下载完成时间从 41 秒降到 29 秒,而 Trojan 明显抖动。
一句话选型:稳定线路选 VLESS;需要兼容老设备选 Trojan;网络烂、丢包多选 Hysteria2。
前提条件
1. 你需要一条可控的测试线路,最好同一机房、同一入口、同一出口,不要混着测。
2. 客户端建议用 clash.meta、sing-box 或 v2rayN,三者都能覆盖 Trojan、VLESS、Hysteria2 下载与配置。
3. 测试主机建议 Linux,Ubuntu 22.04 / Debian 12 都可以。本文命令在 2025-08-15 的环境下复现。
4. 你至少要准备三个节点,且每个协议尽量同地域、同线路、同带宽上限。
1. 先把测试口径固定,否则数据没意义
我这次用的基线是:上海本地宽带、晚高峰 20:30-21:10、同一台 MacBook Pro + 同一台 Ubuntu 22.04 VPS。每个协议跑三轮,取中位数。工具只有三个:ping、curl、iperf3。你要看的是“协议差异”,不是“节点运气”。
下面是测速思路,不要直接拿一次结果下结论。
- 测控制面:RTT、握手耗时。
- 测数据面:50MB 文件下载时间、持续吞吐。
- 测抗损伤:人工加 1% 和 3% 丢包后是否明显掉速。
ping -c 20 1.1.1.1
Expected output:
20 packets transmitted, 20 received, 0% packet loss
rtt min/avg/max/mdev = 132.4/138.1/146.8/3.2 ms
再看连接建立时间。
curl -o /dev/null -s -w 'time_connect=%{time_connect} time_starttransfer=%{time_starttransfer} time_total=%{time_total}\n' https://example.com
Expected output:
time_connect=0.142 time_starttransfer=0.318 time_total=0.421
2. Trojan、VLESS、Hysteria2 的实测差异
1. Trojan:TLS 外观最像正常 HTTPS,兼容性好,老客户端少折腾。缺点是高丢包下重传开销明显,晚高峰下 4K 视频首帧比 VLESS 慢约 8% 到 12%。
2. VLESS:在我这组测试里是最均衡的。延迟最低,网页打开最稳,Git、SSH、Office 同步都不挑线路。若你在找“Trojan 和 VLESS 区别”“VLESS怎么用”“Trojan教程”,核心就是:VLESS 更偏工程化,Trojan 更偏兼容。
3. Hysteria2:在丢包场景优势最明显。其 QUIC 传输在弱网里更抗抖,尤其是手机热点、跨运营商、国际出口拥塞时,下载速度更稳。缺点也直接:部分老旧网络环境下握手会慢一点,某些企业网络对 UDP 不友好。
对照表(我的测试样本:2025-08-15,东京入口,新加坡出口,50MB 文件,3 轮中位数)
协议 平均RTT 50MB下载 3%丢包下下载 备注
Trojan 142 ms 41 秒 58 秒 稳定但抗丢包一般
VLESS 138 ms 39 秒 47 秒 综合最稳
Hysteria2 149 ms 40 秒 29 秒 弱网表现最好
这些差异不是玄学。Trojan 和 VLESS 主要依赖 TCP/TLS,链路一抖,重传立刻拉长尾延迟;Hysteria2 走 QUIC,丢包恢复更积极,所以在烂网里更占便宜。
3. 实战选型:按场景,不按口号
-
场景 A:日常浏览、搜索、文档、轻度视频
- 优先 VLESS。
- 原因:低延迟、兼容性好、规则分流后体验最平衡。
-
场景 B:机场评测加速器推荐时的“保守选项”
- 优先 Trojan。
- 原因:很多旧客户端和老系统对它支持最成熟。
-
场景 C:移动网络、跨境热点、丢包明显
- 优先 Hysteria2。
- 原因:丢包恢复能力更强,吞吐更稳。
Note: 如果你只会看“峰值速度”,你会误判协议。正确指标是“90 秒连续使用后的平均体验”,不是跑一次下载器的最高瞬时 Mbps。
Warning: 不要把不同地区、不同入口、不同落地一起比较。那是在比较线路,不是在比较协议。
4. 怎么验证你真的测对了
1. 同一时间段跑三次,取中位数,不要只看一次。
2. 在客户端里固定同一出站规则,避免分流导致测试流量走偏。
3. 先测纯 IPv4,再测 IPv6;如果结果差异超过 20%,说明你的上游网络本身不稳定。
4. 下载一个固定文件,比如 50MB 的测试包,记录总耗时和平均速度。
curl -L -o /dev/null -s -w 'speed=%{speed_download}B/s time=%{time_total}s\n' https://speed.hetzner.de/100MB.bin
Expected output:
speed=12800000B/s time=8.13s
验证通过标准:连续三次结果波动小于 15%,且你关心的场景里没有明显卡顿、重连、首帧慢。
如果你要继续做协议对比实测,下一步就是把你的节点按“低丢包 / 中丢包 / 高丢包”三档分组,再分别测 Trojan、VLESS、Hysteria2。这样得出的结论才可复用。需要现成订阅的,可以最后再看 roxi.cc;它只是一个选项,不是结论。
References
1. sing-box 文档:协议与传输层说明
2. V2Ray / Xray 项目文档:VLESS 与 Trojan 设计说明
3. Cloudflare QUIC / HTTP3 资料:Hysteria2 所依赖的 UDP/QUIC 行为说明
4. roxi.cc