服务器节点,位于新加坡,但是国内网页访问加载速度很慢:
什么是BBR:
BBR(瓶颈带宽和RTT)是一种新的拥塞控制算法,由Google提供给Linux内核TCP堆栈。有了BBR,Linux服务器可以显着提高吞吐量并减少连接延迟。此外,部署BBR很容易,因为该算法只需要在发送方进行更新,而不需要在网络或接收方进行更新。
准备:
- CentOS 7.x 服务器
一、升级内核
使用BBR,需要将CentOS 7的内核升级到最新
查看服务器当前内核
uname -r
当前内核为3.10.0
安装ELRepo仓库
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安装最新内核:
sudo yum --enablerepo=elrepo-kernel install kernel-ml -y
查看结果
rpm -qa | grep kernel
如上图所示,如果安装成功,可以看到,我的最新为5.9.12版本
设置默认的grub2引导条目来启用5.9.12内核
显示grub2菜单中的所有条目:
sudo egrep ^menuentry /etc/grub2.cfg | cut -f 2 -d ’
索引从0开始,0 1 2 3 4 5,你的内核在第几个就写第几个
sudo grub2-set-default 0
重启系统
sudo shutdown -r now
待重启完成后,查看内核,此时已经是5.9了:
uname -r
二、启用BBR
修改sysctl配置
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
检查内核模块是否已加载:
lsmod | grep bbr
至此,BBR已经部署完成,再去访问你的网页,你会发现网页加载速度提升了百倍之多!!