CentOS开启TCP BBR拥塞控制算法

Linux kernel 4.9.x开始支持tcp_bbr,本文以CentOS 7 64bit系统为例,介绍如何升级kernel开启TCP BBR拥塞控制算法。

记得先把/etc/sysctl.conf文件中关于net.ipv4.tcp_congestion_control的配置注释掉。

通过使用ELRepo源的方式在CentOS中安装最新版kernel开启TCP BBR拥塞控制算法,安装脚本如下:

rpm --import https://www.elrepo.org/RPM-GPG-KEY-elrepo.org
rpm -Uvh http://www.elrepo.org/elrepo-release-7.0-3.el7.elrepo.noarch.rpm
yum --enablerepo=elrepo-kernel install kernel-ml-devel kernel-ml -y
grub2-set-default 0
echo "net.core.default_qdisc=fq" >> /etc/sysctl.conf
echo "net.ipv4.tcp_congestion_control=bbr" >> /etc/sysctl.conf
sysctl -p
reboot

查看当前系统内核:

uname -a

执行下面的命令,如果结果中有bbr, 则证明你的内核已开启BBR。

sysctl net.ipv4.tcp_available_congestion_control

执行下面的命令,看到有 tcp_bbr 模块即说明BBR已启动。

lsmod | grep bbr

参考资料:
https://github.com/google/bbr
https://patchwork.ozlabs.org/patch/672072/
http://blog.csdn.net/dog250/article/details/52830576
http://elrepo.org/