拥塞控制算法 BBR (Bottleneck Bandwidth and RTT) 由 Google 开发,供 Linux 内核的 TCP 协议栈使用,有了 BBR 算法,Linux 服务器可以显著提高吞吐量并减少连接延迟,简单来说 BBR 能加速网络传输速度。 Linux内核从4.9版开始集成BBR算法。相比锐速,BBR的加速效果更为温和、稳定,能够有效的降低服务器的网络丢包率,减少网络拥堵。Debian 9、 Ubuntu 18.04的默认内核就是4.9,编译了TCP BBR的内容,也就是说从Debian 9、 Ubuntu 18.04开始可以直接通过参数开启。

环境要求Debian 9+  Ubuntu 18.04+

一、开启

0.查看内核版本

root@debian:~# uname -r
4.19.0-8-amd64

1.添加系统变量

echo "net.core.default_qdisc=fq" >> /etc/sysctl.conf
echo "net.ipv4.tcp_congestion_control=bbr" >> /etc/sysctl.conf

2.保存载入配置

sysctl -p

正常情况返回结果如下

net.core.default_qdisc = fq
net.ipv4.tcp_congestion_control = bbr

3.是否开启BBR

①查看内核是否开启

sysctl net.ipv4.tcp_available_congestion_control

正常情况返回结果如下

net.ipv4.tcp_available_congestion_control = reno cubic bbr

②查看BBR是否启动成功

lsmod | grep bbr

正常情况返回结果如下(数字可能不同)

tcp_bbr                20480  30

二、关闭

1.注释掉/etc/sysctl.conf中的最后两行

vi /etc/sysctl.conf
#net.core.default_qdisc = fq
#net.ipv4.tcp_congestion_control = bbr

2.保存配置并重启

sysctl -p
reboot

3.查看是否关闭

#sysctl net.ipv4.tcp_available_congestion_control
net.ipv4.tcp_available_congestion_control = reno cubic