简介 BBR

BBR congestion control algorithm
GitHub: Google/BBR
设计目的:存在丢包的情况下,最大优化网络速度.
这不是谷歌的官方项目.

为什么需要升级内核

BBR 已经在4.9.0-rc8内核版本首次测试,而且以后所有的 正式/测试 的内核版本中自带
写这篇文章时候,最新的正式版本是4.9.6,更新日期2017-01-26
你可以在 Kernel.org 得到最新的Linux内核版本情况.

最好请勿在生产环境安装,以免产生不可预测之后果。
重启开不了鸡的,打开 VPS 后台控制面板的 VNC, 开机卡在 grub 引导, 手动选择内核即可。
除了OpenVZ,理论上其他虚拟化全部都支持.
以下命令全部以Root登录执行的,你可能需要Sudo.

安装内核

下载内核

Kernel.Ubuntu.com找到版本号文件夹,amd64linux-image 中含有 generic 这个 deb 包.
然后解压.

wget http://kernel.ubuntu.com/~kernel-ppa/mainline/v4.9.6/linux-image-4.9.6-040906-generic_4.9.6-040906.201701260330_amd64.deb
dpkg -i linux-image-4.9.6-040906-generic_4.9.6-040906.201701260330_amd64.deb

安装完成后,输入/usr/sbin/update-grub,然后重启VPS即可.

BBR

开启BBR

echo "net.core.default_qdisc=fq" >> /etc/sysctl.conf
echo "net.ipv4.tcp_congestion_control=bbr" >> /etc/sysctl.conf

保存使命令生效.

sysctl -p

查看状况

如果以下命令输出有bbr,那么已经成功开启BBR.

sysctl net.ipv4.tcp_available_congestion_control

如果以下命令输出有tcp-bbr,那么BBR正在运行.

lsmod | grep bbr

关闭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

参考

你可能感兴趣的文章

Zagfai · 7月17日

echo "net.core.default_qdisc=fq" >> /etc/sysctl.conf
這句是什麼原因要這樣設置?

回复

0

echo "net.core.default_qdisc=fq" >> /etc/sysctl.conf
echo "net.ipv4.tcp_congestion_control=bbr" >> /etc/sysctl.conf
这两步都是开启BBR的.

n7then 作者 · 7月18日
0

第2步纔是開啓bbr,第一句是改變queuing機制,我覺得沒必要.

Zagfai · 7月18日
载入中...
n7then n7then

14 声望

发布于专栏

I/O - n7then

input and output about n7then.

0 人关注