16 年年底的 4.9.0 内核中支持了 TCP-BBR 拥塞控制算法,大家都说不错,可以和锐速的效果一拼,虽然我已经有了阿里云的梯子,但折腾的心还是停不下来,花了点时间把我 DO 的 VPS 的内核也给换了,把踩到的坑写出来供大家参考。
开启 BBR
下载内核
wget http://kernel.ubuntu.com/~kernel-ppa/mainline/v4.9/linux-image-4.9.0-040900-generic_4.9.0-040900.201612111631_amd64.deb安装内核
dpkg -i linux-image-4.9.0*.deb删除就内核(可选)
dpkg -l|grep linux-image apt-get purge 旧内核更新 grub 引导
update-grub reboot开机后查看内核
uname -r开启 BBR
网上很多教程说直接往
/etc/sysctl.conf里写,我觉得不太好,还是借鉴 Shadowsocks 优化记录 里的方法,在/etc/sysctl.d/下新建一个conf,把新的配置写进去比较好。net.core.default_qdisc=fq net.ipv4.tcp_congestion_control=bbr保存生效。
sysctl --system查看是否成功。
sysctl net.ipv4.tcp_available_congestion_control sysctl net.ipv4.tcp_congestion_control如果都有
bbr,则说明已经开启成功。
踩坑
步骤就是上面的步骤,下载安装更新引导重启
DO 的后台是有一个换内核的功能的,直接在 Kernel 里选自己想换的内核就行,翻了好一会找到一个 4.9.0 的,换上后 reboot,发现没改,又仔细看了下,发现 DO 里换内核需要在后台点完 Change 按钮后,去命令行里 poweroff,再去后台开机。
开完机发现内核是换了,但按上面的步骤开启 BBR 失败,提示 No such file or directory,说明换上的内核还不支持 BBR,好烦,那还是自己手动下一个换上吧。
又完完整整按上面的步骤走了一遍,开机,内核一点变化没有,我真是。。。疑惑了好一会,想起后台换内核的时候前几个选项是什么 GrubLoader 什么的,估计是 VPS 的内核是直接加载的后台设置的那个,如果想自己换内核还得再后台设置成 GrubLoader。
再重启一次,搞定。
测试了一下,比裸连好多了,不过效果也只能算勉强 1080p 吧,还是阿里云香港靠谱啊,贵不是没有道理的。
我是移动直连DO新加坡,高峰开了bbr也只能720p。。有空试试锐速
我的是 DO LA,直连的时候感觉比新加坡稳定点。
好文,拜读,以后常看学习。
为什么我的DO内核不可以修改...
可能要在控制台里选 grub,不然就是固定的内核。
谢谢回复,官网提供了控制台不可更改内核,在ubuntu中修改内核的方法。
你好,能说一下哪里有吗。我还是一直更换不了
我也换好了,digitalocean 的老版kernel 管理机制真的不好用。试了好几次,据说新版的主机直接shell 里面升级就行,就和物理机一样。美滋滋
对,新版的可以直接在shell里弄好。