The speed of response on a server is a task that is always subject to have an importance within the responsibilities of a sysadmin. To help with response times, I will show you how to enable BBR on Ubuntu 22.04. I will also explain what it is and what advantage it brings.
Introduction to BBR
BBR is a modern TCP congestion control algorithm. It originated from Google, who tested it in their data centers. This not-so-new algorithm overcomes many of the problems encountered in both Reno and CUBIC (the default CCAs).
As you can imagine, TCP BBR is already in use with Google servers and many other companies worldwide. You can do it, too, as long as your Linux machine is running the kernel 4.9 or newer.
Advantages of enabling BBR on Ubuntu 22.04
The advantages that BBR provides are basically these
- Significant bandwidth improvements by the system.
- Decreases latency generated on connections.
- It evaluates the network and the speed at which it can transmit data by monitoring the network speed.
These advantages simply translate into a faster server and better response times to requests. Therefore, if you have a VPS or you are starting as a sysadmin, it is interesting to learn how to do it.
Requirements to enable BBR on Ubuntu 22.04
To enable BBR on Ubuntu 22.04 you need the following
- Linux kernel version must be greater than 4.19. Distributions like Ubuntu 22.04 include an even more recent version, so you won’t have any problems.
- Have the
CONFIG_NET_SCH_FQoptions compiled and added to the kernel.
Although Ubuntu 22.04 meets these requirements, it is not a bad thing to learn how to check if your system meets all of them.
Check if the system meets the requirements
First, open a terminal using the main menu or start an SSH session.
Then, update the whole system.
sudo apt update sudo apt upgrade
Then check the installed kernel version
The kernel version is correct.
Now to check if the
CONFIG_NET_SCH_FQ options are compiled and added to the kernel, run this command
sudo cat /boot/config-$(uname -r) | grep 'CONFIG_TCP_CONG_BBR'
And you should have an output like this:
For the other option, run:
sudo cat /boot/config-$(uname -r) | grep 'CONFIG_NET_SCH_FQ'
You should have an output screen like this
CONFIG_NET_SCH_FQ_CODEL=m CONFIG_NET_SCH_FQ=m CONFIG_NET_SCH_FQ_PIE=m
As you can see, the system meets the requirements to enable BBR.
Enable BBR on Ubuntu 22.04
First, check if BBR is enabled on the system. To do this, run.
And you will get an output screen like this:
net.ipv4.tcp_available_congestion_control = reno cubic
Another check can be done with this command:
net.ipv4.tcp_congestion_control = cubic
And to enable BBR, edit the
sudo nano /etc/sysctl.conf
At the end of the file, add the following lines:
Save the changes and close the editor,
Now restart the server to apply the changes.
BBR helps to improve the connection speed of an Ubuntu 22.04 server. This tool, which originates from Google, works really well, and it is not surprising that it has become an ideal option for many sysadmins.
I hope you liked this post, and you can share it with all your friends.