【脚本】Linux 安装BBR和优化TCP

当前使用内核

uname -r

安装内核脚本

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

查看内核列表,第一个的编号是 0

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

返回信息,可以看见刚刚安装的内核 4.9 处于第1位,编号 0

CentOS Linux (4.9.0-1.el7.elrepo.x86_64) 7 (Core)
CentOS Linux (3.10.0-327.13.1.el7.x86_64) 7 (Core)
CentOS Linux (3.10.0-327.10.1.el7.x86_64) 7 (Core)
CentOS Linux (3.10.0-229.20.1.el7.x86_64) 7 (Core)
CentOS Linux (0-rescue-fd8cf26e06e411e4a9d004010897bd01) 7 (Core)

设置处于编号 0 的 4.9 内核默认运行

grub2-set-default 0

重启服务器

reboot

查看内核是否在使用 4.9

uname -r

写入参数到 sysctl.conf

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

检测设置是否生效

sysctl net.ipv4.tcp_available_congestion_control

返回信息,可以看见 bbr 已经启用

[root@set-fire ~]# sysctl net.ipv4.tcp_available_congestion_control
net.ipv4.tcp_available_congestion_control = bbr cubic reno

查看 bbr 是否在运行

lsmod | grep bbr

返回信息

[root@set-fire ~]# lsmod | grep bbr
tcp_bbr                16384  29 

这样应该安装完成了,可以测试一下有没有传输速度上的提升。
提升肯定是有的,只是效果的差别,有些服务器作用明显,有些服务器因为网路传输原因而作用微小... 而且中国大陆有着神奇的网路。

最后修改:2019 年 01 月 12 日 09 : 14 PM