CentOS7下启用bbr加速

Linux CentOS BBR

> 自Google于2016年9月宣布将BBR开源起,世界各国的极客们就开始研究了,对于常年受制于特殊网络环境下的我国民众,长期都在寻找各种提速的方法。之前流行的锐速(后开始收费)以及FinalSpeed等都曾备受大家的“爱戴”。对于bbr而言,通俗来讲就是对Linux内核TCP协议的优化从而达到提速的目的,但是注意的是,1)bbr不能改变地理位置的限制,也就是说他不会改变网络的线路,该绕还是绕;2)安装和开启bbr往往要更新内核,因此对于VPS而言,推荐选择KVM构架。本文将简述bbr在CentOS 7下的安装和启用的方法,亲测有效,整个流程也十分简单。对于Debian或者Ubuntu的用户我会在后面的教程中加以补充。 ### 1.yum系统更新(更新到7.3) ``` yum update ``` ### 2. 查看系统版本 ``` cat /etc/redhat-release ``` 输出如下,则表示已升级到7.3 CentOS Linux release 7.3.1611 (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 ``` 正常情况下将输出如下, ``` Transaction Summary ================================================================================ Install 1 Package Total download size: 39 M Installed size: 169 M Downloading packages: kernel-ml-4.9.0-1.el7.elrepo.x86_64.rpm | 39 MB 00:00 Running transaction check Running transaction test Transaction test succeeded Running transaction Warning: RPMDB altered outside of yum. Installing : kernel-ml-4.9.0-1.el7.elrepo.x86_64 1/1 Verifying : kernel-ml-4.9.0-1.el7.elrepo.x86_64 1/1 Installed: kernel-ml.x86_64 0:4.9.0-1.el7.elrepo Complete! ``` ### 4.更新grub文件并重启(reboot后,ssh会断开,稍等一会儿重新连接) ``` egrep ^menuentry /etc/grub2.cfg | cut -f 2 -d \' grub2-set-default 0 reboot ``` ### 5.开机后查看内核是否已更换为4.9 ``` uname -r ``` 输出如下内容则表示内核4.9已经启动了 ``` 4.9.0-1.el7.elrepo.x86_64 ``` ### 6.开启bbr ``` vi /etc/sysctl.conf ``` 添加如下内容 ``` net.core.default_qdisc = fq net.ipv4.tcp_congestion_control = bbr ``` 加载系统参数(正常情况下会输出我们之前加入的内容) ``` sysctl -p ``` 4.确定bbr已经开启 a.若 ``` sysctl net.ipv4.tcp_available_congestion_control ``` 返回 ``` net.ipv4.tcp_available_congestion_control = bbr cubic reno ``` 则成功 b.若 ``` lsmod | grep bbr ``` 返回形如 ``` tcp_bbr 16384 1 ``` 则成功