CentOS 7/8开启Google BBR
更新记录
2021.7.14更新: 此方法依旧有效,适合手动开启 BBR,避免使用不熟悉的脚本造成服务器意外事故。 调整了展示界面,条理更清晰。如果出现界面错误,请尝试使用Chrome打开。
BBR介绍
Google BBR (Bottleneck Bandwidth and RTT) 是一种新的TCP拥塞控制算法,它可以高效增加吞吐和降低网络延迟,并且Linux Kernel4.9+已经集成该算法。开启BBR也非常简单,因为它只需要在发送端开启,网络其他节点和接收端不需要任何改变。
升级内核
打开Terminal
输入
uname -r
查看内核版本,如果输出类似
3.10.0-514.21.2.el7.x86_64
升级内核
安装 ELRepo 仓库
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
安装最新版kernel
yum --enablerepo=elrepo-kernel install kernel-ml -y
确认是否安装成功
rpm -qa | grep kernel
如果输出类似如下,包含kernel-ml-4.13.10-1.el7.elrepo.x86_64或更高版本内核,则表示安装成功。
kernel-3.10.0-693.el7.x86_64 kernel-tools-3.10.0-693.el7.x86_64 kernel-ml-4.13.10-1.el7.elrepo.x86_64 kernel-tools-libs-3.10.0-693.el7.x86_64
设置开机默认启动项
先执行下面代码
egrep ^menuentry /etc/grub2.cfg | cut -f 2 -d '
输出结果类似如下
CentOS Linux 7 Rescue f212d2d7754a4a6bb2b98950c20cc0b5 (4.13.10-1.el7.elrepo.x86_64)
CentOS Linux (4.13.10-1.el7.elrepo.x86_64) 7 (Core)
CentOS Linux (3.10.0-693.el7.x86_64) 7 (Core) CentOS Linux (0-rescue-d1f142097d497f24c021d7de9b81cab4) 7 (Core)
设置启动项
该列表从0开始索引,所以4.13内核索引为1
grub2-set-default 1
重启
reboot
查看内核版本
uname -r
如果输出类似
4.13.10-1.el7.elrepo.x86_64
则表示升级完成
开启Google BBR
修改sysctl配置
echo 'net.core.default_qdisc=fq' | tee -a /etc/sysctl.conf echo 'net.ipv4.tcp_congestion_control=bbr' | tee -a /etc/sysctl.conf sysctl -p
检查是否加载BBR
lsmod | grep bbr
如果输出结果包含tcp_bbr,则表示开启成功
tcp_bbr 20480 0
进一步加速
2021.7.14更新:此方案已弃用,BBR Plus 效果在大部分情况下不如最新版 BBR。
如果需要更激进的加速算法,推荐采用BBR plus,可使用一键安装脚本。
wget "https://github.com/chiakge/Linux-NetSpeed/raw/master/tcp.sh" && chmod +x tcp.sh && ./tcp.sh
版权声明:
作者:xinbao
链接:https://ixinb.com/centos/centos-7-8%e5%bc%80%e5%90%afgoogle-bbr/
文章版权归作者所有,未经允许请勿转载。
THE END