TCP BBR Congestion Control Setup Guide for Debian 12

This guide intends to provide TCP BBR Congestion Control Setup on Debian 12. TCP BBR, which stands for TCP Bottleneck Bandwidth and Round-Trip Time, is a congestion control algorithm developed by Google. BBR works by estimating the bottleneck bandwidth and the round-trip time of the network path. Then, it uses this information to calculate the optimal sending rate for TCP packets, aiming to maximize throughput while minimizing latency and packet loss.

Now you can follow the steps below to enable TCP BBR on Debian 12.

Step-by-Step TCP BBR Congestion Control Setup Guide for Debian 12

Before you start to enable TCP BBR, you must access your server as a non-root user with sudo privileges. For this purpose, you can check the Initial Server Setup with Debian 12.

Then, proceed to the next steps to complete this guide.

Step 1 – List Congestion Control Algorithms

The first step is to check the available Congestion Control Algorithms on your server. Run the system update and upgrade with the command below:

sudo apt update && sudo apt upgarde -y

As you may know, Linux uses Reno and Cubic algorithms. Reno and Cubic are both TCP congestion control algorithms, but cubic is a more modern algorithm designed to improve performance in challenging network conditions compared to Reno, which was developed earlier.

To check the existing congestion control algorithm on Debian 12, you can run:

sudo sysctl net.ipv4.tcp_congestion_control
Example Output
net.ipv4.tcp_congestion_control = cubic

Also, you can list available Congestion Control Algorithms with the command below:

sudo sysctl net.ipv4.tcp_available_congestion_control
Example Output
net.ipv4.tcp_available_congestion_control = reno cubic

As you can see, you have Reno and Cubic on the list. Now you need to add the TCP BBR.

Step 2 – Add and Enable TCP BBR on Debian 12

To add TCP BBR, you need to open the sysctl.conf file with your desired text editor like Vi editor or Nano editor:

sudo vi /etc/sysctl.conf

Add the following content to the file:

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

When you are done, save and close the file.

Then, use the command below to reload the configuration and enable BBR:

sudo sysctl -p
Example Output
net.core.default_qdisc = fq
net.ipv4.tcp_congestion_control = bbr

Step 3 – Verify TCP BBR is Running on Debian 12

At this point, you can use the following command to verify that BBR is active and running on Debian 12:

sudo sysctl net.ipv4.tcp_congestion_control
Example Output
net.ipv4.tcp_congestion_control = bbr

Also, you can use the following command instead:

lsmod | grep bbr
Example Output
tcp_bbr                20480  1

Finally, list available TCP congestion controls on your server again:

sudo sysctl net.ipv4.tcp_available_congestion_control

You should see BBR in your list:

Example Output
net.ipv4.tcp_available_congestion_control = reno cubic bbr

That’s it. You have successfully added TCP BBR to Debian 12.

Step 4 – Monitor Performance with BBR Enabled

Once BBR is enabled and configured, you can monitor the network performance. You can use tools like iperf, netperf, or built-in Linux utilities like netstat, iftop, and tcpdump to analyze network traffic and performance metrics.

Conclusion

TCP BBR is a significant advancement in TCP congestion control, offering improved performance, particularly in high-speed and long-distance networks. It’s become increasingly popular and is now supported in various operating systems, including Linux, where it’s often used as the default congestion control algorithm.

Hope you enjoy it. Also, you may like to read the following articles:

7-Zip Installation on Debian 12 – CLI and GUI

Understanding Login Shell and Interactive Shell in Linux

Deepin Desktop Environment Setup Guide Ubuntu 22.04

Install Remmina Remote Desktop on AlmaLinux 9

CyberPanel Email Server Setup and Configuration

LEAVE A REPLY

Please enter your comment!
Please enter your name here

Latest Articles

POPULAR TAGS

Most Popular