BBR是个什么东西我就不赘述了,可以理解为和锐速差不多的一个东西,但是呢,锐速过高的价格和不再低端售卖。导致了我们并无法实现一个免费好用的单边加速功能;所以,在这个前提下,咱们现在可以选择BBR(新的 TCP 拥塞控制算法Bottleneck Bandwidth and RTT)。
众所周知,ubuntu开启bbr的前提是系统内核必须等于高于4.9,所以想要使用这个牛逼的玩意儿,需要先看看你的内核是否是4.9或者以上。
查看命令:
uname -a
如果是4.9或者以上,那么恭喜你,升级系统内核这一步你就可以跳过了,如果在4.9以下,那就需要更新一下系统内核了;很遗憾GCE官方默认搭载的镜像,内核是4.4的,所以我必须要做一波内核升级了。
一、ubuntu内核升级
升级过程中其实比较简单,先确定你的系统是32位还是64位的,可以用下面的命令查看
查看命令:
getconf LONG_BIT
确定系统之后,需要下载必要的升级程序包
http://kernel.ubuntu.com/~kernel-ppa/mainline/
这个网站可以找到最新的程序包,根据自己的需要使用wget命令来下载到服务器;
比如我的服务器是64位,安装4.10.2的内核:
sudo wget http://kernel.ubuntu.com/~kernel-ppa/mainline/v4.10.2/linux-image-4.10.2-041002-generic_4.10.2-041002.201703120131_amd64.deb
(拥有root权限的话可以去掉命令前面的“sudo”)
然后切换到你的文件下载目录,执行下列命令来升级:
sudo dpkg -i linux-image-4.10.2-041002-generic_4.10.2-041002.201703120131_amd64.deb
最后,执行命令sudo update-grub,更新grub引导装入程序。
一旦各方面都已完成,重启机器,你就可以准备使用了。系统重启后,打开终端窗口,执行命令uname -a,确保你实际上是在运行你更新之后的内核。
二、开启TCP BBR
修改系统变量:
echo “net.core.default_qdisc=fq” >> /etc/sysctl.conf
echo “net.ipv4.tcp_congestion_control=bbr” >> /etc/sysctl.conf
重点,执行以上命令,如果显示拒绝访问可以尝试使用如下命令
sudo bash -c ‘echo “net.core.default_qdisc=fq” >> /etc/sysctl.conf’
sudo bash -c ‘echo “net.ipv4.tcp_congestion_control=bbr” >> /etc/sysctl.conf’
保存生效
sysctl -p
执行
sysctl net.ipv4.tcp_available_congestion_control
如果返回结果
net.ipv4.tcp_available_congestion_control = bbr cubic reno
那么恭喜你BBR开启成功了!
也可以执行
lsmod | grep bbr
来检测 BBR 是否真的开启成功……
至此,你的服务器BBR开启成功,赶紧去爽一波!