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里弄好。