Quantcast
Viewing all articles
Browse latest Browse all 11063

折腾 Linux 4.9 BBR 拥堵控制算法

新年折腾 BBR

人是一种很奇怪的东西,以前家里科学上网速度很慢的时候,只要能打开就很满意了。

现在换了联通,Google 明明已经秒开了,却又开始不满足现状了。

恰巧最近看到了各种 KCP, BBR 技术的介绍,就想给自己的梯子折腾折腾了。

KCP 介绍

KCP 是开源社区的一个新轮子,看 commit 记录是从 2014 年开始开发的。算是一个很新的东西了。

KCP是一个快速可靠协议,能以比 TCP浪费10%-20%的带宽的代价,换取平均延迟降低 30%-40%,且最大延迟降低三倍的传输效果。

项目地址: https://github.com/skywind3000/kcp

更多的内容就不详细介绍了,项目主页写得非常详细了。

该项目只是提供了 KCP 的核心算法,而没有对应的应用。如果要用起来的话,可以利用如下两个项目:

kcptun: A Simple UDP Tunnel Based On KCP

项目地址: https://github.com/xtaci/kcptun

和锐速之类的软件一样,可以在底层使用 SS,然后再用 KCP 通道加速。

v2ray: 自称是 SS 的替代者

项目地址: https://www.v2ray.com/

内置 KCP 协议,需要自己搭建,不依赖额外的组建。

KCP 相关的东西就不多介绍了,上面提到的各种产品都体验过。东西都很新,所以其实都还不成熟。

而且最大的问题是,没有好用的客户端,从终端启动也是挺麻烦的。

而且实测也并没有比 SS 快多少,所以就放弃了。

linux 4.9 BBR 拥堵算法介绍

为什么它能为你的 SS 提速?因为之前的 TCP 拥堵算法都是基于丢包的,丢包多了它就认为带宽不够了。

而我们伟大的长城正好利用了这个特性,最终达到了慢却又不是完全不可用的状态。

知乎上有人解答的非常好,一下子就看懂了。

传送门: https://www.zhihu.com/question/53559433

第一次看到 Linux 4.9 我就吓尿了,我之前的 VPS 才 2.6 啊…

之前一直在用 bandwagonhost 高性价比机器,每年不到 100,机器速度也非常不多。唯一的缺点就是它是基于 OpenVZ 架构的。

意味着不能自己更换 Linux 内核。也就是说,继续用 bandwagonhost 的话就无法启用 Linux 4.9 了。

另外,同样很新为什么我更愿意用这个?因为它只是修改了服务器的内核,相关的工具包括所有的客户端都不需要做任何修改。因此部署起来方便,以后不用了也方便。

寻找好机器

既然 bandwagonhost 无法支持,那么第一步就是要找一台好机器了。网上搜寻一番后,发现 vultr 还不错。

每月 $5,可按小时收费 支持 API 调用,可以在不需要的时候关闭机器节约成本 全球各地都有机房,试了一下日本机房速度还不错 KVM 架构,可以自己换内核

利用 此链接 注册,首次充值可多得 $20。

升级内核,启用 BBR

简单介绍一下 Ubuntu x64 下操作方式:

# 下载并安装内核 cd /tmp/ http://kernel.ubuntu.com/~kernel-ppa/mainline/v4.9/linux-headers-4.9.0-040900_4.9.0-040900.201612111631_all.deb http://kernel.ubuntu.com/~kernel-ppa/mainline/v4.9/linux-headers-4.9.0-040900-generic_4.9.0-040900.201612111631_amd64.deb http://kernel.ubuntu.com/~kernel-ppa/mainline/v4.9/linux-image-4.9.0-040900-generic_4.9.0-040900.201612111631_amd64.deb sudo dpkg -i *.deb # 重启 reboot # 查看是否安装成功 uname -r # 启用 BBR 拥堵控制算法 echo "net.core.default_qdisc=fq" >> /etc/sysctl.conf echo "net.ipv4.tcp_congestion_control=bbr" >> /etc/sysctl.conf sysctl -p # 查看是否启用成功,如果出现 BBR 就代表成功 sysctl net.ipv4.tcp_available_congestion_control

整个过程非常简单,其他系统可参考这篇文章: 传送门


Viewing all articles
Browse latest Browse all 11063

Trending Articles