Linux 开启 BBR + fastopen
TCP BBR
由谷歌开发,即 TCP 拥塞控制算法,其目的在于最大化利用网络链路。知乎上的解释非常贴切:一条网络链路就像一根水管,最大化利用这根水管的办法则是用水将其充满。
BBR 要解决的问题
- 充分利用存在一定丢包率的网络链路;
- 降低网络延迟;
检查内核
Linux kernel 4.9+ 已经集成 TCP BBR 算法,启用前检查内核:
$ uname -r
4.9.103-0409103-generic
启用 BBR
以管理员身份执行以下命令:
# echo "net.core.default_qdisc=fq" >> /etc/sysctl.conf
# echo "net.ipv4.tcp_congestion_control=bbr" >> /etc/sysctl.conf
使设置生效:
# sysctl -p
net.core.default_qdisc = fq
net.ipv4.tcp_congestion_control = bbr
检查 BBR 是否开启
下方命令有 bbr
字样即代表开启成功
# sysctl net.ipv4.tcp_available_congestion_control
net.ipv4.tcp_available_congestion_control = bbr cubic reno
也可以使用查看启用状态:
# lsmod | grep bbr
tcp_bbr 20480 0
禁用 BBR
逆执行以上操作即可。
开启 FastOpen
注意:Linux 内核的 Fast Open 实现太过保守,不仅用处不大,而且还会表现出独特的流量特征,建议不要为 VPS 启用该功能!
# echo 3 > /proc/sys/net/ipv4/tcp_fastopen
编辑 /etc/sysctl.conf
添加:
net.ipv4.tcp_fastopen = 3
- 版权声明:本作品采用 自由转载-非商业性使用-禁止演绎 4.0 国际许可协议 进行许可
- 发布日期:May 27, 2018
评论区