TCP BBR 拥塞控制算法是 Google开源的一个项目,可以充分发挥服务器的带宽,虫子实测同一个服务器,开启与否BBR加速,网速的能相差好几倍!目前该算法已经并提交到了 Linux 内核,从 Linux 4.9 开始已经默认安装编译了该算法。
1.为服务器一键安装BBR加速
像CentOS 6,Debian 7,Ubuntu 12这些系统的内核一般在Linux 4.9以下,并无内置BBR加速,所以需要手动安装。下面安装方法虽然适合以上系统,但是个人建议仅对CentOS使用;Debian 服务器,可以重新安装系统,安装Debian 9,然后通过《Linux命令:开启Debian9自带的TCP BBR加速》一键开启。
打开Xshell等软件连接服务器,执行下方来自秋水逸冰的BBR一键安装脚本:
wget --no-check-certificate https://github.com/teddysun/across/raw/master/bbr.sh && chmod +x bbr.sh && ./bbr.sh
1.1第一种提示:
如果执行命令后立马提示 bash: wget: command not found
说明你服务器系统没有安装wget,需要先执行如下命令安装wget
//CentOS系统: yum -y install wget //Debian/Ubuntu系统: apt-get install -y wget
wget安装成功,然后重新执行安装脚本,开始重新安装:
wget --no-check-certificate https://github.com/teddysun/across/raw/master/bbr.sh && chmod +x bbr.sh && ./bbr.sh
1.2第二种提示:
如果提示的是 Press any key to start...or Press Ctrl+C to cancel
,说明系统可以安装,那么点击一下回车键开始自动安装。
等一段时间,安装完毕会提示Do you want to restart system? [y/n]
,输入y
点击回车,系统重启。
2.检查BBR是否安装成功并已启动
2.1执行:
uname -r
如果显示的内核版本是最新的(超过4.9),说明已安装成功.
2.2执行:
sysctl net.ipv4.tcp_available_congestion_control
反馈的结果多为以下两种之一
net.ipv4.tcp_available_congestion_control = reno cubic bbr
net.ipv4.tcp_available_congestion_control = bbr cubic reno
2.3执行:
sysctl net.ipv4.tcp_congestion_control
一般返回结果是:
net.ipv4.tcp_congestion_control = bbr
2.4执行:
sysctl net.core.default_qdisc
一般返回结果是:
net.core.default_qdisc = fq
2.5执行:
lsmod | grep bbr
如果显示类似tcp_bbr
加一串数字的,如tcp_bbr 0480 4
,说明BBR模块已启动。
以上命令执行过程图示
3.CentOS 下最新版内核 headers 安装方法
3.1卸载原版内核headers,执行:
yum remove kernel-headers
确认无误后,输入 y,回车开始卸载。注意:有时候这么操作还会卸载一些对内核 headers 依赖的安装包,比如 gcc、gcc-c++ 之类的(看卸载列表是否包含,未包含说明没有卸载)。不过不要紧,我们可以在安装完最新版内核 headers 后再重新安装回来即可。
3.2安装新版内核headers,执行:
yum --enablerepo=elrepo-kernel -y install kernel-ml-headers
以上安装过程图示()
通过上述步骤,你的CentOS系统服务器,已成功安装并启动了BBR加速模块,可以享受BBR算法对网速的提升了。