Press "Enter" to skip to content

CentOS7更换内核开启BBR

Linodovultr 1

网路颠簸,对于一些我们购买的国外服务器,高峰期或多或少都会感到延迟高、速度慢的问题,而除了不开源的锐速外,Google出品的BBR是个非常不错的选择,不管是上网还是下载大文件,都能明显加快速度。

BBR的具体原理我们暂且不表,只说说如何在CentOS7下更换内核并开启BBR。

添加EPEL源

由于后面要添加的elrepo源依赖EPEL源,首先我们要添加EPEL源:

yum install epel-release -y

添加elrepo

更换CentOS7内核版本之前,需要添加elrepo源:

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

由于CentOS7默认内核为3.9.x,要开启BBR需要4.9+版本的内核,所以,我们下面开始安装主线版本的内核。

安装主线版本内核

yum –enablerepo=elrepo-kernel install kernel-ml -y

安装之后,查看内核列表:

rpm -qa | grep kernel

我是在Vultr日本的云主机上安装的,安装过程没有报错。查看是否有4.9+的输出,如果有,则证明安装成功了:

[xxx@Linodovultr ~]$  rpm -qa | grep kernel
kernel-tools-libs-3.10.0-693.11.6.el7.x86_64
kernel-ml-4.14.13-1.el7.elrepo.x86_64
kernel-3.10.0-693.11.6.el7.x86_64
kernel-tools-3.10.0-693.11.6.el7.x86_64
kernel-3.10.0-327.36.3.el7.x86_64

看输出结果,第一个就是刚安装的,将其设置为默认启动内核就好了:

grub2-set-default 0

注意,上面最后一个0是4.9+内核所在的位置,从0开始数,第一个就是0,第二个是1,以此类推就好了。

设置完之后,重启系统:

reboot

重新登陆服务器,查看当前使用的内核信息:

[xxx@Linodovultr ~]$ uname -a
Linux Linodovultr 4.14.13-1.el7.elrepo.x86_64 #1 SMP Wed Jan 10 15:12:12 EST 2018 x86_64 x86_64 x86_64 GNU/Linux

可以看出,已经是使用新内核了。

配置BBR

其实启用BBR很简单,只需要三行命令就行,注意一下命令需要在root权限下执行

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

查看结果:

sysctl -n net.ipv4.tcp_congestion_control
lsmod | grep bbr

如果两行命令输出都有BBR字样,则说明已经开启BBR成功。

发表评论

电子邮件地址不会被公开。 必填项已用*标注