使用bbr一段时间了。不得不说bbr这东西的确有效果。

使用情景:这台小鸡经常掉包,网站打开过慢。

解决方法:使用bbr进行加速,缓解一下。


参考网站:http://elrepo.org

第一步:

rpm --import https://www.elrepo.org/RPM-GPG-KEY-elrepo.org

第二步:

yum install https://www.elrepo.org/elrepo-release-7.0-4.el7.elrepo.noarch.rpm

第三步:

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

15764007568869.png

然后会看到内核的版本为5.4.3,最新版本可以查看https://www.kernel.org/里,一般我们修改kernel-mlkernel-lt即可。这两个是什么意思呢。结尾ml的是最新稳定版,lt的是长期维护的版本。

最新版指向第三步的命令即可,稳定版(目前4.4.206)就下面这个:

yum --enablerepo=elrepo-kernel install kernel-lt

刚才我们安装了5.4.3版本的内核,下面我们需要把引导切换到这个内核上。

第四步:

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

查看得到

15764037792838.png

CentOS Linux (5.4.3-1.el7.elrepo.x86_64) 7 (Core)
CentOS Linux (3.10.0-1062.9.1.el7.x86_64) 7 (Core)
CentOS Linux (0-rescue-9063ac396d784f4c997ceacdd0590c25) 7 (Core)

按顺序,第一个是0,很明显第一个写着5.4.3就是我们要的版本。所以引导的时候要填0

grub2-set-default 0

然后重启计算机,如果有宝塔面板的建议在宝塔面板里重启服务器,然后没有宝塔面板的直接输入reboot重启即可。

等待重启好了后进入下一步。

第五步:

uname -a

查询得到Linux CentOS-76-64-minimal 5.4.3-1.el7.elrepo.x86_64 #1 SMP Fri Dec 13 07:27:20 EST 2019 x86_64 x86_64 x86_64 GNU/Linux证明已经完成了内核的切换。

第六步:

vi /etc/sysctl.conf

查看有没有,或者有没有#在前面注释掉了。

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

没有的话填上保存即可,实在不懂就用宝塔的文件管理进行添加;然后执行下面命令使他生效。

sysctl -p

到这基本上就完成了。下面我们检查一下。

第七步:

sysctl net.ipv4.tcp_available_congestion_control

输出net.ipv4.tcp_available_congestion_control = reno cubic bbr

sysctl -n net.ipv4.tcp_congestion_control

输出bbr

lsmod | grep bbr

输出tcp_bbr                20480  30


OK搞定。