开启TCP BBR

参考这篇文章,开启TCP BBR后,性能会有比较大的提升。

BBR(Bottleneck Bandwidth and RTT)是 Google 提出的 TCP 拥塞控制算法。

传统 TCP 拥塞控制(如 Cubic、Reno),基于丢包作为拥塞信号——看到丢包就认为网络满了,然后减速。但现代网络中丢包不一定是拥塞造成的(可能是无线干扰、缓冲区溢出等),所以这种方法效率不高。

BBR 不靠丢包来判断拥塞,而是主动建模网络的带宽和延迟特性,找到一个最优发送速率,既不浪费带宽,也不塞满缓冲区。使得 BBR 在高带宽、有缓冲膨胀(bufferbloat)的网络中表现显著优于 Cubic 等传统算法。

具体开启方法,就是在/etc/sysctl.conf中加入以下几行

net.core.default_qdisc=fq
net.ipv4.tcp_congestion_control=bbr
net.ipv4.tcp_window_scaling = 1

修改后执行 sudo sysctl -p 即可。

修改前,速度为119Kbps

修改后,接近3000kbps,20倍的提升

发表评论