SS / VMess / Trojan 协议横向对比
同样是"代理",为什么有的协议更抗封锁、有的速度更快?这篇文章从加密方式、伪装能力、性能开销三个维度,把主流协议摆在一起对比清楚。
协议到底解决什么问题
不管是 Shadowsocks 还是 VMess,它们本质上都是把你的网络流量包装一层,让中间的网络设备(运营商、防火墙)难以识别这是"代理流量",同时保证数据在传输过程中不被窃听或篡改。协议之间的差异主要体现在三点:
-
加密强度用什么算法加密数据,是否支持前向安全,被破解或分析的难度有多大。
-
伪装能力流量特征是否像正常的 HTTPS/TLS 流量,越像越难被基于流量特征的封锁识别。
-
性能开销加密解密和握手过程消耗的计算资源与延迟,直接影响使用体验。
Shadowsocks(SS):轻量但特征明显
Shadowsocks 是最早流行起来的协议,设计思路非常简单:用一个共享密钥对数据做对称加密(常见 AEAD 加密如 chacha20-ietf-poly1305、aes-256-gcm),几乎没有额外的握手开销。
- 优点:实现简单、速度快、客户端资源占用低,几乎所有平台都有成熟实现。
- 缺点:流量特征相对固定,容易被基于流量分析的深度包检测(DPI)识别,在审查严格的网络环境下更容易被针对性限速或封锁。
- 适合场景:网络环境相对宽松、追求速度和稳定性优先的场景。
VMess:V2Ray 生态的核心协议
VMess 出自 V2Ray 项目,在 SS 的基础上加入了时间戳校验、用户 UUID 鉴权等机制,并支持搭配 WebSocket + TLS 传输,把代理流量伪装成普通的网页 HTTPS 请求,伪装能力比原生 SS 更强。
- 优点:搭配 WS+TLS 后伪装性好,生态成熟,支持多路复用(mux)减少连接握手次数。
- 缺点:配置项较多,加密/解密与协议头解析的开销比 SS 略高,对时间同步有一定要求(客户端与服务器时间差过大会导致鉴权失败)。
- 适合场景:需要较强伪装能力,同时能接受稍微复杂一点配置的场景。
Trojan:伪装成真实网站的 HTTPS 流量
Trojan 的设计理念很直接:直接复用标准 TLS 协议,服务端伪装成一个普通的 HTTPS 网站(甚至可以配置真实的网页内容),代理流量和正常访问该网站的流量在特征上几乎无法区分,因为它本身就是标准 TLS。
Trojan 服务端通常会配合 Nginx 做端口复用和证书管理,被封锁时甚至可以直接访问伪装的网页内容,进一步提高抗探测能力。这是它相比 VMess 更受青睐的原因之一。
- 优点:伪装能力最强、协议开销小(复用标准 TLS 库),部署相对简单。
- 缺点:需要一张有效的域名证书(通常用 Let's Encrypt 免费证书即可),对服务端运维要求略高。
- 适合场景:审查严格的网络环境,或希望长期稳定使用、不想频繁换协议的场景。
Hysteria2 / TUIC:基于 QUIC 的新一代协议
近两年兴起的 Hysteria2、TUIC 等协议基于 QUIC(UDP)传输层,相比传统基于 TCP 的协议,天然具备更好的抗丢包能力和更低的连接建立延迟,在弱网、高延迟环境下(比如跨国长距离链路)体验提升明显。
- 优点:基于 UDP,抗丢包、连接建立快,弱网环境下速度优势明显,内置拥塞控制算法针对代理场景优化。
- 缺点:部分网络环境对 UDP 流量限速或封锁比 TCP 更严格,生态成熟度和客户端支持度略逊于前三者。
- 适合场景:网络质量不稳定、跨国距离远、对下载/流媒体速度要求高的场景。
一张表看懂如何选择
优先选择 Shadowsocks 或 Hysteria2,握手快、开销低,日常浏览和下载体验最佳。
优先选择 Trojan,标准 TLS 伪装让流量几乎无法被针对性识别,长期使用被封风险最低。
VMess 配合 V2Ray/Xray 生态,插件和传输方式选择最丰富,适合喜欢折腾配置的用户。
Hysteria2 / TUIC 基于 QUIC 抗丢包能力强,跨国高延迟链路下体验优势明显。
实际使用中,很多订阅服务会同时提供多种协议的节点,你完全不需要自己搭建——只需要在 Clash 客户端里根据延迟和当前网络环境,直接切换策略组里的节点或协议类型即可,不满意随时换。
常见问题
协议越"新"就一定越好吗?
不一定。新协议往往在某个维度(比如抗丢包、伪装能力)有优势,但生态成熟度、客户端兼容性可能不如经典协议。选择时应该结合自己的网络环境和实际需求,而不是盲目追新。
同一个订阅里有多种协议节点,怎么知道该用哪个?
可以直接在 Clash 控制面板的"代理"页里对比各节点的延迟测速结果,延迟低且稳定的优先使用。不确定的话,交给策略组的自动选择(url-test)模式,客户端会自动挑选当前最优节点。
Clash 客户端支持所有这些协议吗?
主流 Clash 客户端(Clash Verge、Clash Meta 内核 / Mihomo)都已支持 SS、VMess、Trojan、Hysteria2、TUIC 等协议,直接导入订阅即可自动识别,无需手动配置协议参数。
学完了?把 Clash 装上试试
全平台安装包一站获取,跟着推荐标签选就不会错,几分钟就能用上。