CentOS 7上部署Google BBR
BBR(瓶颈带宽和RTT)是一种新的拥塞控制算法,由Google提供给Linux内核TCP堆栈。使用BBR,Linux服务器可以显着增加吞吐量并减少连接的延迟。此外,由于该算法只需要在发送方更新,而不是在网络中或在接收端,所以很容易部署BBR。
在本文中,我将向您展示如何在Vultr CentOS 7 KVM服务器实例上部署BBR。
前提条件:
1.kvm架构的vps
2. 系统centOs7
3.有sudo
一、使用ELRepo RPM存储库升级内核
为了使用BBR,您需要将CentOS 7机器的内核升级到4.9.0。您可以使用ELRepo RPM存储库轻松完成此操作。
升级之前,您可以查看当前的内核:
uname -r
输出结果可能是:
目前内核是3.10
安装ELRepo repo:
sudo rpm --import https://www.elrepo.org/RPM-GPG-KEY-elrepo.org
sudo rpm -Uvh http://www.elrepo.org/elrepo-release-7.0-2.el7.elrepo.noarch.rpm
使用ELRepo repo安装4.12.3内核:
sudo yum --enablerepo=elrepo-kernel install kernel-ml -y
确认结果:
rpm -qa | grep kernel
如果安装成功,您应该看到如下:
现在,您需要通过设置默认的grub2引导项来启用4.12.3内核。
sudo egrep ^menuentry /etc/grub2.cfg | cut -f 2 -d \'
设置默认的内核为4.12.3,此处选择1
sudo grub2-set-default 1
重启系统:
sudo shutdown -r now
当服务器重新联机时,再次确认正在使用的内核:
uname -r
结果应该如下
二、启用bbr
首先要修改配置
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
sudo sysctl -p
确认启用BBR:
sudo sysctl net.ipv4.tcp_available_congestion_control
结果为
验证
sudo sysctl -n net.ipv4.tcp_congestion_control
结果应该是:显示bbr
最后检查内核模块是否被加载
lsmod | grep bbr
结果应该是
此时就算完成了,可以测试你的网速了