I have been looking into enabling bbr congestion control on some of our servers to test if they make any difference for our workloads.

We are on Amazon Linux 2:

# uname -a
Linux ip-10-1-66-180.us-east-1.aws.dckr.io 4.14.173-137.229.amzn2.x86_64 #1 SMP Wed Apr 1 18:06:08 UTC 2020 x86_64 x86_64 x86_64 GNU/Linux

I had a look into available congestion control and got this

# cat /proc/sys/net/ipv4/tcp_available_congestion_control
cubic reno

Does this mean bbr support is not available in our kernel? I saw some people showing the same output of the above command and still setting sysctls to bbr regardless.

I also checked the kernel modules as I've read somewhere that some bbr module needs to be loaded but I suspect that was necessary for older Kernels.

# lsmod | grep -i bbr

Is there a way I can enable bbr on our servers given the kernel version I mentioned earlier?


The kernels in Amazon Linux 2 do indeed include BBR congestion control support. You enable it like any other congestion control method.

[root@localhost ~]# echo bbr > /proc/sys/net/ipv4/tcp_congestion_control 
[root@localhost ~]# cat /proc/sys/net/ipv4/tcp_congestion_control 

Because it was built as a module it is loaded on demand, so it deos not show up as available unless the module had already been loaded. Now you can see it:

[root@localhost ~]# cat /proc/sys/net/ipv4/tcp_available_congestion_control
bbr cubic reno
[root@localhost ~]# lsmod | grep -i bbr
tcp_bbr                20480  5

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

Not the answer you're looking for? Browse other questions tagged or ask your own question.