拥抱BBR,再见锐速

今天Hostloc几乎被BBR刷屏,我也第一时间在自己的服务器上进行了测试,效果的确喜人,比起需要使用破解版的锐速,直接更改内核开启bbr更为方便也更为安全。在一台安装了锐速的Ks3c和一台开启了bbr的OVH-vps上分别下载一个300M的文件,vps在十几秒后速度达到了1.5M/s,而Ks3c在半分钟后速度达到了1.3M/s,结果还是很明显了。

tcp拥塞控制算法BBR

9.16号的时候,Google发布了一个新的tcp拥塞控制算法,名字叫做Bottleneck Bandwidth and RTT,简称BBR,目前patch已经打在net分支下面,预计会随kernel 4.9版本正式发布,Google的论文也会随后发布。

BBR 目的是要尽量跑满带宽,并且尽量不要有排队的情况。

开启tcp bbr拥塞控制算法

我一般用的都是debian发行版,所以此篇笔记也建立在debian的基础上,因为只需要升级内核,所以各发行版都大同小异。最新 4.9.0-rc8 内核已支持 tcpbbr,下面简单讲述如何开启。

wget http://kernel.ubuntu.com/~kernel-ppa/mainline/v4.9-rc8/linux-image-4.9.0-040900rc8-generic_4.9.0-040900rc8.201612051443_amd64.deb
  • 安装内核
dpkg -i linux-image-4.9.0*.deb
  • 删除其余内核
dpkg -l|grep linux-image 
apt-get purge 旧内核
  • 更新 grub 系统引导文件并重启
update-grub
# 如果提示找不到命令,先安装grub-pc
apt-get install grub-pc
  • 重启系统后开启bbr
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
# 如果结果中有bbr, 则证明你的内核已开启bbr

执行 lsmod | grep bbr , 看到有 tcp_bbr 模块即说明bbr已启动


本页最后更新时间:2016-12-08 Thu 22:41.
小过的布拉格 - Copyright©2013-2017 - @xiaoguo - Powered by Emacs 26.1 (Org mode 9.1.1)
行路难,行路难, 多歧路,今安在。长风破浪会有时,直挂云帆济沧海。