TCP Brutal 使用指南
Brutal: 这是 Hysteria 自有的拥塞控制算法。与 BBR 不同,Brutal 采用固定速率模型,丢包或 RTT 变化不会降低速度。相反,如果无法达到预定的目标速率,反而会根据计算的丢包率提高发送速率来进行补偿。Brutal 只在你知道(并正确设置了)当前网络的最大速度时才能正常运行。其擅长在拥塞的网络中抢占带宽,因此得名。
Brutal 如果带宽设置低于实际最大值也能正常运行;相当于限速。重要的是不要将其设置得高于实际最大值,否则会因为补偿机制导致连接速度慢、不稳定,且浪费流量。
My response to the recent controversy about TCP Brutal
服务端安装 TCP Brutal
安装脚本:
bash <(curl -fsSL https://tcp.hy2.sh/)
需要内核版本 4.9 或以上,推荐使用 5.8 以上的内核。对于小于 5.8 的内核, 只支持 IPv4。
"multiplex": {
"enabled": true,
"padding": false,
"brutal": {
"enabled": true,
"up_mbps": 100, // 对每个客户端,服务端的上行最大速率
"down_mbps": 20
}
}
需要 sing-box 版本 1.7.0 或更高。
-
VLESS-Vision-REALITY / VLESS-Vision-TLS 中
"flow": ""
必须留空,或不写"flow": ""
-
两端 "padding" 必须一致
-
服务端 "up_mbps" 小于 客户端 "down_mbps" 时,以服务端为准
"multiplex": {
"enabled": true,
"protocol": "h2mux", // 默认值 h2mux,可选 smux | yamux | h2mux
"max_connections": 1, // 建议填 1,填其它值时可能无效
"min_streams": 4,
"padding": false, // 默认值 false,可选 false | true
"brutal": {
"enabled": true,
"up_mbps": 20,
"down_mbps": 100 // 客户端的下行最大速率
}
}
需要 sing-box 版本 1.7.0 或更高。
-
VLESS-Vision-REALITY / VLESS-Vision-TLS 中
"flow": ""
必须留空,或不写"flow": ""
-
两端 "padding" 必须一致
-
客户端 "down_mbps" 小于 服务端 "up_mbps" 时,以客户端为准