开启BBR

1 什么是BBR

TCP BBR是谷歌出品的TCP拥塞控制算法,BBR目的是要尽量跑满带宽,并且尽量不要有排队的情况。BBR可以起到单边加速TCP连接的效果。替代锐速再合适不过,毕竟免费。

Google提交到Linux主线并发表在ACM queue期刊上的TCP-BBR拥塞控制算法。继承了Google“先在生产环境上部署,再开源和发论文”的研究传统。TCP-BBR已经再YouTube服务器和Google跨数据中心的内部广域网(B4)上部署。由此可见出该算法的前途。

TCP-BBR的目标就是最大化利用网络上瓶颈链路的带宽。一条网络链路就像一条水管,要想最大化利用这条水管,最好的办法就是给这跟水管灌满水。

BBR解决了两个问题:

  1. 再有一定丢包率的网络链路上充分利用带宽。非常适合高延迟,高带宽的网络链路。
  2. 降低网络链路上的buffer占用率,从而降低延迟。非常适合慢速接入网络的用户。

项目地址:https://github.com/google/bbr

4.9以上版本的Linux内核已经集成BBR了。

2 开启BBR

2.1 修改SYSCTL.CONF

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

2.2 保存生效

sysctl -p

2.3 检测是否已启用BBR模块

lsmod | grep bbr

如果含有bbr即说明内核内已启用bbr模块。