CentOS7系统服务器配置BBR加速 国外服务器提速方案

什么是BBR

TCP BBR是谷歌出品的TCP拥塞控制算法。BBR目的是要尽量跑满带宽,并且尽量不要有排队的情况。BBR可以起到单边加速TCP连接的效果。Google提交到Linux主线并发表在ACM queue期刊上的TCP-BBR拥塞控制算法。继承了Google“先在生产环境上部署,再开源和发论文”的研究传统。TCP-BBR已经再YouTube服务器和Google跨数据中心的内部广域网(B4)上部署。由此可见出该算法的前途。

TCP-BBR的目标就是最大化利用网络上瓶颈链路的带宽。一条网络链路就像一条水管,要想最大化利用这条水管,最好的办法就是给这跟水管灌满水。

对于TCP单边加速,并非所有人都很熟悉,不过有另外一个大名鼎鼎的商业软件“锐速”,相信很多人都清楚。由于国外服务器速度不是很乐观,所以就需要来配置BBR来提升访问速度,好了说这么多都是废话,自己试试效果就知道了。

升级内核

适用于CentOS系统的加速方案。BBR算法是Google在Linux Kernel 4.9内核上加入的TCP拥塞控制算法。所以要对内核进行升级:

1.yum更新系统版本:
yum update
2.查看系统版本:
cat /etc/redhat-release
CentOS Linux release 7.7.1908 (Core)
3.安装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
yum --enablerepo=elrepo-kernel install kernel-ml -y
4.更新grub文件并重启系统:
egrep ^menuentry /etc/grub2.cfg | cut -f 2 -d \'
grub2-set-default 0
reboot
5.重启完成后查看内核是否已更换为4.9或者更高版本:
uname -r

开启BBR加速

1.执行以下代码:
lsmod | grep bbr
查看是否有tcp_bbr,如果没有执行以下代码:
modprobe tcp_bbr
echo "tcp_bbr" >> /etc/modules-load.d/modules.conf
echo "net.core.default_qdisc=fq" >> /etc/sysctl.conf
echo "net.ipv4.tcp_congestion_control=bbr" >> /etc/sysctl.conf
上面的代码一行一行执行,也可以直接复制 2.保存生效
sysctl -p
测试
sysctl net.ipv4.tcp_available_congestion_control
sysctl net.ipv4.tcp_congestion_control

如果含有tcp_bbr则证明你的内核已开启 bbr,同样可以在验证一下:

lsmod | grep bbr
结果肯定会有tcp_bbr

BBR Plus加速方案

wget --no-check-certificate -O tcp.sh https://github.com/cx9208/Linux-NetSpeed/raw/master/tcp.sh && chmod +x tcp.sh && ./tcp.sh

除了bbr加速,还有其他的加速方案,这个脚本就是包含了多种加速方案,可以自己试一下,不过需要注意几点

  • 加速工具都是TCP加速,可以为梯子油管进行网络加速。
  • 其中都涉及到内核的更改,加速效果不叠加。安装其中一版内核后,会自动替换上一版内核。
  • 脚本菜单中的第9项,可以卸载全部加速效果。
  • 脚本菜单中的第10项,可以对系统中的一些网络参数进行额外优化。

脚本运行过程中可能会出现Yes或者No的选择,直接选择Yes

发表评论