一般情况下,我们常用的CentOS和Debian系统都是内置的BBR,直接启用,安全。但是我们也可以根据需要重新安装原生的BBR加速。具体的过程记录。

一、CentOS 7启用原生Google BBR

(一)更新CentOS 7内核为支持BBR的内核

1、查看Centos内核

uname -r


2、如果低于4.10,则更新内核

rpm --import https://www.elrepo.org/RPM-GPG-KEY-elrepo.org
rpm -Uvh http://www.elrepo.org/elrepo-release-7.0-2.el7.elrepo.noarch.rpm
yum --enablerepo=elrepo-kernel install kernel-ml -y


3、安装完成后,查看已安装的内核:

rpm -qa | grep kernel


如果看到 kernel-ml-5.3.5-1.el7.elrepo.x86_64 字样的,即是成功。

4、更新开机启动

egrep ^menuentry /etc/grub2.cfg | cut -f 2 -d \'


会看到类似这样的

CentOS Linux (5.3.5-1.el7.elrepo.x86_64) 7 (Core)
CentOS Linux (3.10.0-957.1.3.el7.x86_64) 7 (Core)
CentOS Linux (0-rescue-96820b9851c24560b5f942f2496b9aeb) 7 (Core)


设置CentOS Linux (5.3.5-1.el7.elrepo.x86_64) 7 (Core)为第一启动顺序(因为启动是从0开始计算)

grub2-set-default 0


5、重启系统

reboot


(二)CentOS 7启用BBR

1、执行

echo 'net.core.default_qdisc=fq' | sudo tee -a /etc/sysctl.conf
echo 'net.ipv4.tcp_congestion_control=bbr' | sudo tee -a /etc/sysctl.conf
sysctl -p


2、查看内核是否已开启BBR

sysctl net.ipv4.tcp_available_congestion_control




lsmod | grep bbr


如果均显示BBR字样的,表示开启BBR成功。

二、Debian启用原生Google BBR

1、修改系统变量

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


2、保存生效

sysctl -p


3、查看内核是否已开启BBR

sysctl net.ipv4.tcp_available_congestion_control


显示如下内容表示开启:

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


4、通过上面的操作应该已经启动了BBR。再看下BBR是否启动。

lsmod | grep bbr


显示以下即启动成功:

lsmod | grep bbr
tcp_bbr 20480 14