机场知识 知识解读
Hysteria2 是什么?基于 QUIC 的代理协议原理、优缺点与适用场景
Hysteria2 是基于 QUIC/UDP 的代理协议,在丢包较多的弱网环境下速度表现突出,但会受运营商 UDP QoS 影响。本文讲清原理、Brutal 拥塞控制、优缺点与使用建议。
- 作者
- 网络研究组
- 首次发布
- 最后更新
- 内容类型
- 知识解读
- 资料核对
- 阅读时间
- 约 3 分钟
信息可能随服务调整而变化,请以最新官方信息为准。
直接答案
Hysteria2 是一种基于 QUIC(运行在 UDP 上)的代理协议。它伪装成 HTTP/3 服务,并可使用 Brutal 拥塞控制按设定带宽发送数据,遇到丢包不会像 TCP 那样大幅降速,因此在跨境丢包较多的弱网环境下往往更快。它的主要短板是依赖 UDP:一些运营商会在高峰期对 UDP 限速,部分公司网络和公共 Wi-Fi 会直接阻断 UDP。
- 定义 Hysteria2
- 一种基于 QUIC 协议、运行在 UDP 之上的开源代理协议。它使用 TLS 1.3 加密,认证过程伪装为 HTTP/3 请求,并提供 Brutal 拥塞控制、Salamander 混淆和端口跳跃等功能,侧重在高丢包网络中保持传输速度。
Key Takeaways · 要点速览
- Hysteria2 基于 QUIC/UDP,内置 TLS 1.3 加密,并伪装为 HTTP/3 服务。
- Brutal 拥塞控制按设定带宽发送,在丢包环境下能保持较高吞吐。
- 主要风险是 UDP QoS 与 UDP 阻断,晚高峰表现可能不如白天。
- 带宽参数应如实填写,填得过高反而会加剧丢包。
- UDP 受限时应切换到 Trojan、VLESS 等 TCP 类协议。
Hysteria2 的直接解释
Hysteria2 是开源项目 Hysteria 的第二代协议,整体建立在 QUIC 之上。QUIC 原本是为 HTTP/3 设计的传输协议,运行在 UDP 上,自带 TLS 1.3 加密和多路复用。Hysteria2 利用这一点,让代理连接在外观上接近一个正常的 HTTP/3 服务。
它最突出的特点是在丢包环境中保持速度。传统 TCP 类协议遇到丢包会主动降速,跨境链路一旦丢包增多,速度会迅速下滑;Hysteria2 则可以按用户设定的带宽持续发送,因此在弱网、远距离或拥挤线路上常有更好的表现。
工作原理
基于 QUIC 的传输
- 运行在 UDP 上:不受 TCP 队头阻塞影响,多个连接可在一个 QUIC 会话中复用。
- 内置 TLS 1.3:加密是 QUIC 的一部分,不需要额外套一层 TLS。
- 连接迁移:QUIC 支持在网络切换时保持会话,移动设备在 Wi-Fi 和蜂窝网络之间切换时更平滑(具体效果取决于客户端实现)。
HTTP/3 伪装与认证
客户端以 HTTP/3 请求的形式向服务器发送认证信息。认证成功则建立代理通道;认证失败时,服务器可以表现为普通网站或反向代理一个真实站点,让探测者看到的是正常的 HTTP/3 服务。
Brutal 拥塞控制
Brutal 是 Hysteria 的特色拥塞控制方式:客户端和服务器根据设定的带宽计算发送速率,并根据丢包率补偿发送量,而不是像 TCP 那样在丢包时大幅回退。未设置带宽时,可以回退到 BBR 等常规拥塞控制。
注意Brutal 依赖用户填写的带宽值。如果设定值远高于实际可用带宽,发送速率会超出链路承载能力,造成更多丢包,体验反而变差。不确定时按实际测得的带宽填写,或保持客户端默认设置。
可选功能
- Salamander 混淆:对 QUIC 数据包进行混淆,使其不呈现标准 QUIC 特征,需要服务端和客户端同时开启。
- 端口跳跃:在一段端口范围内切换连接端口,用于缓解针对单一 UDP 端口的限速,具体是否可用以客户端与机场说明为准。
优点与局限
| 方面 | 表现 |
|---|---|
| 丢包环境下的速度 | 好,这是 Hysteria2 的核心优势 |
| 延迟 | QUIC 握手较快,取决于线路本身 |
| UDP 应用支持 | 原生转发 UDP,适合游戏、语音等 |
| UDP QoS 敏感度 | 高,晚高峰可能被限速 |
| UDP 阻断环境 | 无法使用 |
| 设备资源占用 | 高速传输时对 CPU 有一定要求,低性能设备或路由器上需留意 |
| 对网络的友好度 | 激进的发送策略在共享网络中可能挤占他人带宽 |
什么时候适合用 Hysteria2
适合
- 跨境链路丢包较多、TCP 节点速度不稳定的时候。
- 移动网络信号一般、频繁出现重传的场景。
- 需要转发 UDP 的游戏、语音通话等应用。
不适合
- 公司网络、校园网、部分公共 Wi-Fi 等可能限制 UDP 的环境。
- 晚高峰运营商明显对 UDP 限速的地区。
- 对连接稳定性要求高、宁可慢一点也不要断流的长连接场景,此时 TCP 类协议可能更省心。
提示判断是否遇到 UDP 限速,可以在同一时段、同一地区分别测试 Hysteria2 节点和 Trojan / VLESS 节点。如果只有 Hysteria2 在高峰期明显变慢,多半是 UDP QoS。速度突降的完整排查思路见 机场速度突然变慢怎么办。
客户端支持
Clash Verge Rev(Mihomo 内核)、sing-box、v2rayN、Shadowrocket、Stash、Surge 等主流客户端均支持 Hysteria2,但对端口跳跃、混淆等扩展功能的支持程度不同,请以客户端最新版本说明为准。完整的协议支持对比见 代理协议对比。
常见问题排查
- 完全无法连接:先确认当前网络是否允许 UDP 出站,再换一个网络(如手机热点)测试。
- 速度忽快忽慢:检查客户端里的带宽设置是否过高,并在不同时段对比。
- 延迟正常但丢包高:参考 延迟高、丢包排查指南 区分是本地网络还是线路问题。
- 只在晚上变慢:大概率是 UDP QoS,切换到 TCP 类协议节点。
结论
Hysteria2 用 QUIC 和激进的拥塞控制换来弱网下的速度优势,是丢包环境里的有力工具,但它对 UDP 环境高度依赖。把它当作 TCP 类协议之外的补充选项,在网络允许 UDP 时使用,在高峰期受限时及时切换,才能发挥它的价值。如果你更关注 TCP 下的流量特征问题,可以继续阅读 AnyTLS 是什么。
常见问题
Hysteria2 为什么在晚高峰变慢?
晚高峰时部分运营商会对 UDP 流量做 QoS 限速或优先级降低,Hysteria2 完全依赖 UDP,因此会受到影响。可以在高峰期换用 TCP 类协议节点对比,判断是否为 UDP 限速。
Hysteria2 适合玩游戏吗?
对需要 UDP 的游戏和语音场景,Hysteria2 可以原生转发 UDP,有一定优势;但游戏更看重稳定低延迟,最终效果仍取决于线路和你的网络是否限制 UDP。
客户端里的上行、下行带宽要怎么填?
按你本地网络的实际可用带宽如实填写,或者留空使用客户端默认策略。填得远高于实际带宽,会让发送速率超出链路承载能力,反而增加丢包。
公司网络连不上 Hysteria2 节点怎么办?
公司网络常限制或阻断 UDP 出站,这种环境下 Hysteria2 无法正常工作,应改用 Trojan、VLESS 等基于 TCP 的节点。