Debian Ubuntu升级内核,开启TCP BBR 实现高效单边加速

(Last Updated On: 2017-09-19)
谷歌为我们带来了 新的 TCP 拥塞控制算法 BBR (Bottleneck Bandwidth and RTT)。 目前在 Linux Kernel 4.9 中加入了该算法,所以我们只要升级内核就可以了。TCP BBR 的目的就是要尽量跑满带宽,并且尽量不要有排队的情况。

Debian/Ubuntu 升级内核

1.查看当前系统内核:

uname -a

 

2.下载最新内核,最新内核查看这里

    wget http://kernel.ubuntu.com/~kernel-ppa/mainline/v4.9/linux-image-4.9.0-040900-generic_4.9.0-040900.201612111631_amd64.deb

 

3.安装内核

dpkg -i linux-image-4.9*.deb

 

4.查看已经安装的内核

dpkg -l|grep linux-image
会反馈如下:
ii linux-image-3.16.0-4-amd64 3.16.7-ckt25-1 amd64 Linux 3.16 for 64-bit PCs
ii linux-image-4.9.0-040900-generic 4.9.0-040900.201612111631 amd64 Linux kernel image for version 4.9.0 on 64 bit x86 SMP
ii linux-image-amd64 3.16+63 amd64 Linux for 64-bit PCs (meta-package)

 

5.卸载旧内核

apt-get purge 旧内核
也可以不卸载内核,Ubuntu跟Debian都会默认4.9启动的。

6.更新 grub 系统引导文件并重启

update-grub
reboot

 

然后我们可以查看一下目前的内核版本:
[email protected]:~# uname -a
Linux longsays 4.9.0-040900-generic #201612111631 SMP Sun Dec 11 21:33:00 UTC 2016 x86_64 GNU/Linux
可见已经是最新的了。

开启 TCP BBR

只要 Linux 发行版的 Kernel 即内核版本大于等于 4.9 即可开启,开启方法是通用的,如何升级至 Kernel 将在下面介绍。
修改系统变量:
echo "net.core.default_qdisc=fq" >> /etc/sysctl.conf 
echo "net.ipv4.tcp_congestion_control=bbr" >> /etc/sysctl.conf

 

保存生效
sysctl -p

 

执行
sysctl net.ipv4.tcp_available_congestion_control

 

如果结果是这样
[email protected]:~# sysctl net.ipv4.tcp_available_congestion_control
net.ipv4.tcp_available_congestion_control = bbr cubic reno

 

就开启了。
然后执行下面的命令,看到有 tcp_bbr 模块即说明BBR已启动。
lsmod | grep bbr

 

关闭 TCP BBR

sed -i '/net\.core\.default_qdisc=fq/d' /etc/sysctl.conf
sed -i '/net\.ipv4\.tcp_congestion_control=bbr/d' /etc/sysctl.conf
sysctl -p
执行完上面的代码,就使用reboot重启VPS后才能关闭bbr,重启后再用下面的查看bbr状态代码,查看是否关闭了。
reboot

 

发表评论

电子邮件地址不会被公开。 必填项已用*标注

Solve : *
39 ⁄ 13 =


此站点使用Akismet来减少垃圾评论。了解我们如何处理您的评论数据