What is BBR
BBR(Bottleneck Bandwidth and RTT) is a new congestion control algorithm for TCP released by Google recently. It’s added into Linux kernel since 4.9. Instead of regarding packet loss as the signal of congestion, BBR sequentially probes the bottleneck bandwidth and RTT.
How to switch to BBR
If the kernel supports BBR, using BBR is as simple as executing some sysctl commands.
echo "net.core.default_qdisc=fq" >> /etc/sysctl.conf echo "net.ipv4.tcp_congestion_control=bbr" >> /etc/sysctl.conf sysctl -p
However, only Linux kernel version >= 4.9 supports BBR. So, maybe you have to install the latest kernel by yourself for now.
If you’re running Debian/Ubuntu, you can get the deb package here and then install by
dpkg -i linux-image-*.deb.
The result after switching to BBR
After testing the network performance using iperf3, BBR shows a great performance improvement over the default congest control algorith, cubic.
As an example, cubic managed to achieve 1.06 Mbits/sec in a test, while BBR reached 22.3 Mbits/sec.