QUIC 模式:弱网环境性能调优
何时以及如何切换到 QUIC 以应对跨境或高丢包场景。
QUIC 是 UDP 隧道(默认端口 9555)。矿场到服务器之间丢包、地址会变时用它。路径干净、或者防火墙封 UDP 时,8555 上的 TCP+TLS 更合适。
两个不同的开关
这两个很容易混在一起。
- client.toml 的 [client.connection] transport:auto 或 quic 先拨 QUIC,失败再走 TCP。tcp 先拨 TCP,失败再走 QUIC。遥测、升级和矿机后台穿透也跟这个偏好走。
- 端口映射的 protocol:该监听端口标成 quic 就只走 QUIC 栈,标成 tcp 就只走 TCP。两套栈互不影响。
toml
[client.connection]
transport = "auto"
reconnect_interval = 5
max_reconnect_attempts = 0
heartbeat_interval = 60
heartbeat_timeout_count = 3让 UDP 真的通
- 在服务器防火墙上放行 9555/udp。只放行 8555/tcp 时 QUIC 连不上,auto 会一直落在 TCP 回退上。
- 中间设备改写或丢弃 UDP 时,把 transport 设为 tcp,别再优先一条走不通的路。
- 丢包严重的链路上,重要映射用 protocol "quic"。必须穿过封 UDP 的防火墙时,用 "tcp"。
QUIC 自己已经是 TLS 1.3。不要指望 QUIC 路径上还有第二层帧加密。frame_encrypt_alg 是 TCP TLS 隧道上的可选附加层,两端必须一致。