QUIC协议是什么?有什么缺点、要不要关闭,怎么查看HTTP/3
QUIC协议是一种基于 UDP 的加密传输协议,HTTP/3 用它来传送网页请求。它能减少连接建立的等待,并改善多条请求并行时的丢包影响,但不能保证在所有网络上都更快。
正常上网时,通常不用专门关闭它。只有特定网页在当前网络或代理环境下反复失败,才值得做一次开关对照。先确认浏览器是否真的用了 HTTP/3,再分清你关的是网页传输,还是 VPN 客户端连接服务器的传输方式。
UDP、QUIC和HTTP/3分别负责什么
这三个名字对应不同层次。UDP 负责发送数据报;建立在它之上的传输协议补上连接、加密、可靠传输等机制;HTTP/3 则规定网页请求与响应怎样在这些连接上交换。IETF 工作组列出了这套协议的核心标准。
| 名称 | 负责的事情 | 不能仅凭它判断什么 |
|---|---|---|
| UDP | 发送独立的数据报 | 不能据此认定上层应用一定不可靠 |
| QUIC | 加密连接、多路数据流、丢包恢复与流量控制 | 不能据此认定每个网站都使用 HTTP/3 |
| HTTP/3 | 在上述连接上传送 HTTP 请求与响应 | 不能据此判断 VPN 的底层协议 |
因此,“用了 UDP,文件丢一块就无法恢复”是误解。普通 UDP 本身不提供可靠传输,但上层可以实现;这套协议的数据流能够按序交付字节,丢失的数据可以恢复。文件下载不会因为底层使用 UDP 就变成不完整的文件。相关机制见 RFC 9000。
它改善了什么又有哪些局限
浏览器加载一个页面时,会同时请求 HTML、图片、脚本等资源。HTTP/2 可以在一条 TCP 连接上并行传送这些请求,但底层字节缺失时,后面的字节需要等缺口补齐,其他请求也可能跟着等待。
新的传输方式把可靠交付放在独立数据流上。一条流的数据丢失,不必让所有其他流都等待同一个缺口。不过,多条流仍可能共享连接的拥塞控制,网络拥堵也会影响它们。独立数据流解决的是一类等待问题,不能消除所有卡顿。HTTP/3 标准解释了这一区别。
连接建立也做了优化:加密协商和传输参数协商结合在一起。满足此前通信等条件时,还可能使用 0-RTT 提前发送部分数据。第一次访问所有网站都零等待,并不成立。
局限同样明确。UDP 被网络设备过滤、限流或代理链路不支持时,连接可能失败;设备性能、协议实现和服务器负载也影响体验。换成新协议不会增加你购买的宽带带宽,也不会缩短网络路径的物理距离。
用浏览器查看当前网页的协议
以 Chrome 为例,不需要安装插件:
- 打开要检查的网页,按
F12,或通过菜单打开开发者工具。 - 切到
Network(网络)面板。 - 在请求列表的表头上点击右键,勾选
Protocol(协议)。 - 保持面板打开,刷新页面;如果没有看到新的网络请求,可以勾选
Disable cache后再刷新。 - 看具体请求对应的协议,尤其是文档、图片和视频资源。
h3 表示 HTTP/3,h2 表示 HTTP/2,http/1.1 表示 HTTP/1.1。列的开启方式和含义可以对照 Chrome 官方网络面板说明。
一个页面可能混用不同协议。 主页面显示 h2,某个视频域名的请求显示 h3,两者可以同时成立,不能只看第一行就给整个网站下结论。
没有看到 h3,也不代表网络一定有故障。目标服务器可能没有启用,当前访问方式可能不使用它,或者浏览器已经选择其他协议。查看这一列的作用,是确认请求实际用了什么,不能单独拿它给网络打分。
什么时候值得临时关闭
网络正常就保留默认行为。遇到问题,先固定同一个网页、网络和代理模式,再一次只改一个设置,刷新或重启浏览器后观察。
Chrome 的部分版本提供实验性开关:地址栏输入 chrome://flags/#enable-quic,如果页面中有 Experimental QUIC protocol,记下原设置,临时选择 Disabled,按提示重新启动浏览器。重测后,无论有没有改善,都先恢复原设置;确认有稳定差异,再决定如何处理。
这个入口属于实验性设置,可能随版本变化。找不到时不要随意修改其他开关,也不要照搬旧教程中的注册表设置。Cisco 的兼容性说明给出了这类浏览器检查与临时禁用方法,针对的是特定安全网关环境。
| 对照结果 | 更合理的判断 | 下一步 |
|---|---|---|
关闭后同一网页多次恢复,协议变成 h2 或 http/1.1 | 当前环境存在 HTTP/3 路径或兼容性问题的可能性上升 | 记录网络和代理模式,检查 UDP 转发与网关要求 |
| 开关前后没有变化 | 暂无证据说明它是原因 | 恢复设置,继续查 DNS、规则或服务器响应 |
| 换网络后正常 | 原网络或其与当前配置的组合值得排查 | 在两种网络上保持其他设置相同再比较 |
| 所有网页与所有节点都失败 | 单个浏览器协议开关解释不了全部现象 | 按节点超时排查定位 |
有的网站可以回退到旧版 HTTP,但回退并不保证立即发生,也不代表每个应用都有替代路径。临时关闭后恢复,只能帮助缩小范围,不能直接证明“运营商封了所有 UDP”。
浏览器开关与VPN协议开关别混用
一条代理连接里可以同时出现两层传输:浏览器与网站之间传网页数据,客户端与代理服务器之间传代理流量。两层选择的协议可以不同。
例如,客户端使用基于 UDP 的隧道,浏览器访问网站却显示 h2;关闭浏览器的实验性开关,并不会把这个隧道自动改成 TCP。反过来,在客户端或防火墙中禁止所有 UDP,可能影响整个隧道、语音或游戏,范围比网页协议开关大得多。
系统代理通常不会接管普通应用发出的所有 UDP。TUN 能把更多流量交给客户端,但仍需要相应的转发能力和规则。两种模式的区别见TUN模式是什么;需要确认代理是否能转发数据报,可以继续看节点UDP测试。
即使付费 VPN 能连接,也不等于它能接管和转发所有应用的 UDP。 客户端模式、节点能力和规则都要一起检查。网页回退后能打开,不能替代游戏或语音的实际测试。
常见问题
QUIC协议是什么?
它是基于 UDP 的加密传输协议,提供连接、多路数据流和可靠交付等机制。HTTP/3 使用它传网页数据,但它还可以被其他应用协议使用。
QUIC协议有什么缺点?
对 UDP 不友好的网络和部分代理环境可能造成兼容性问题,实际性能也取决于设备和实现。它改善连接建立和数据流等待,无法保证消除拥堵、丢包或服务器故障。
QUIC协议要不要关闭?
正常使用就保留默认设置。只有具体网页反复失败,且临时关闭后多次恢复,才有依据继续排查相关路径;一次加载快了不足以认定长期关闭更好。
QUIC协议端口是多少?
普通 HTTPS 网站的 HTTP/3 常用 UDP 443,但协议本身没有限定所有应用都只能用这个端口。端口数字相同也要区分 TCP 和 UDP,不能因为 TCP 443 可用就推断 UDP 443 可用。
QUIC协议代理和HTTP/3是一回事吗?
两者对应的用途不同。代理可以用它连接代理服务器,HTTP/3 用它交换网页请求;关闭浏览器的网页协议开关,不会自动关闭代理客户端的底层传输。