Tutorials  /  Linux Basics

Enable BBR on CentOS 7: Boost Linux Network Performance

Ccentron Redaktion · June 2025 ·6 min read ·Linux Basics, Tutorial

BBR, short for Bottleneck Bandwidth and Round-Trip Time, is an advanced congestion control algorithm developed by Google and integrated into the Linux kernel's TCP stack. Implementing BBR can result in notably enhanced throughput and lower latency for network connections on a Linux server. A major advantage of BBR is its simplicity in deployment—it only requires changes on the sender's end, with no adjustments needed on the network infrastructure or the receiver's system.

Requirements

  • A CentOS 7 x64 virtual server
  • User access with sudo privileges
VM

Matching infrastructure at centron

No hardware needed to follow along: ccloud³ VMs with full root access start at €3.12 per month, billed by the hour and ready in seconds. Rent a cloud server →

Step 1: Kernel Upgrade via ELRepo Repository

To activate BBR, the Linux kernel on your CentOS 7 machine must be upgraded to version 4.9.0. This can be done smoothly using the ELRepo RPM repository.

Check the Current Kernel Version

Before proceeding with the upgrade, verify your current kernel version:

Code
uname -r

This should return a string similar to:

Code
3.10.0-514.2.2.el7.x86_64

This indicates that your current kernel is version 3.10.0.

Enable the ELRepo Repository

Install the ELRepo GPG key and repository package:

Console
sudo rpm --import https://www.elrepo.org/RPM-GPG-KEY-elrepo.org
sudo rpm -Uvh http://www.elrepo.org/elrepo-release-7.0-2.el7.elrepo.noarch.rpm

Install the Latest Kernel

Now, use the ELRepo source to install the mainline kernel version 4.9.0:

Console
sudo yum --enablerepo=elrepo-kernel install kernel-ml -y

Verify Installed Kernels

Ensure that the kernel has been successfully installed:

Code
rpm -qa | grep kernel

Among the results, you should see entries like:

Code
kernel-ml-4.9.0-1.el7.elrepo.x86_64
kernel-3.10.0-514.el7.x86_64
kernel-tools-libs-3.10.0-514.2.2.el7.x86_64
kernel-tools-3.10.0-514.2.2.el7.x86_64
kernel-3.10.0-514.2.2.el7.x86_64

Set Default Kernel to 4.9.0

Configure GRUB2 to boot with the new kernel by default. First, list the available menu entries:

Console
sudo egrep ^menuentry /etc/grub2.cfg | cut -f 2 -d \'

The output may include entries such as:

Code
CentOS Linux 7 Rescue a0cbf86a6ef1416a8812657bb4f2b860 (4.9.0-1.el7.elrepo.x86_64)
CentOS Linux (4.9.0-1.el7.elrepo.x86_64) 7 (Core)
CentOS Linux (3.10.0-514.2.2.el7.x86_64) 7 (Core)
CentOS Linux (3.10.0-514.el7.x86_64) 7 (Core)
CentOS Linux (0-rescue-bf94f46c6bd04792a6a42c91bae645f7) 7 (Core)

Since the 4.9.0 entry is at position 1, configure it as default:

Console
sudo grub2-set-default 1

Restart and Confirm

Restart your system to apply the changes:

Console
sudo shutdown -r now

After the server reboots, reconnect and check the current kernel version again:

Code
uname -r

You should now see:

Code
4.9.0-1.el7.elrepo.x86_64

Step 2: Activating the BBR Congestion Control Mechanism

To switch on the BBR algorithm, you'll need to adjust the system's sysctl configuration settings as shown below:

Console
echo 'net.core.default_qdisc=fq' | sudo tee -a /etc/sysctl.conf
echo 'net.ipv4.tcp_congestion_control=bbr' | sudo tee -a /etc/sysctl.conf
sudo sysctl -p

After making these changes, you can verify that BBR has been properly enabled using the following commands:

Console
sudo sysctl net.ipv4.tcp_available_congestion_control

This command should output something like:

Code
net.ipv4.tcp_available_congestion_control = bbr cubic reno

Next, check which congestion control algorithm is currently active:

Console
sudo sysctl -n net.ipv4.tcp_congestion_control

The expected output is:

Code
bbr

To ensure the BBR kernel module is actively loaded, run this:

Code
lsmod | grep bbr

The terminal should return something similar to:

Code
tcp_bbr                16384  0

Step 3 (Optional): Verifying Network Speed Improvements with BBR

To determine the performance improvements achieved by BBR, you can conduct a file download test through a web browser from your desktop. Begin by installing and starting Apache HTTP Server:

Console
sudo yum install httpd -y
sudo systemctl start httpd.service

Next, adjust your firewall settings to permit HTTP traffic:

Console
sudo firewall-cmd --zone=public --permanent --add-service=http
sudo firewall-cmd --reload

Now create a dummy file for download testing:

Console
cd /var/www/html
sudo dd if=/dev/zero of=500mb.zip bs=1024k count=500

Finally, open a browser on your local machine and navigate to:

http://[your-server-IP]/500mb.zip

This will allow you to download the test file and observe the download speed for performance assessment.

Conclusion

By following the steps above, you've successfully enabled BBR on your CentOS 7 server. This modern congestion control algorithm can significantly boost your server's network throughput and minimize latency, especially under heavy traffic conditions. The process involves updating your kernel, modifying system configurations, and optionally testing performance improvements through a simple HTTP download.

Since BBR only requires changes on the sender side, it's ideal for server administrators looking to optimize data transmission without making changes to clients or network infrastructure. With BBR now active, your server is better equipped to handle demanding network conditions with improved efficiency.

Jetzt 200 € Guthaben sichern

Testen Sie Ihr Setup auf ccloud³

Registrieren Sie sich in der ccloud³ und erhalten Sie 200 € Startguthaben für Ihr Projekt – z. B. für eine PostgreSQL-VM mit automatischen Backups.

centron Redaktion Technische Redaktion

Das Redaktionsteam von centron schreibt Anleitungen aus dem Betriebsalltag: getestet auf unserer eigenen Plattform, betrieben im Rechenzentrum in Hallstadt bei Bamberg.

Kategorie Linux Basics
Teilen
Noch offene Fragen?

Unser Team hilft Ihnen bei Ihrem konkreten Setup weiter – von Menschen, die die Plattform selbst betreiben.

War dieses Tutorial hilfreich?

Ihre Antwort wird anonym gespeichert und hilft uns, die Tutorials zu verbessern.

Kommentare

Noch keine Kommentare – stellen Sie die erste Frage zu diesem Tutorial.

Zum Kommentieren anmelden

Kommentare stehen centron-Kunden offen. Melden Sie sich in Ihrem Konto an, um eine Frage zu diesem Tutorial zu stellen.

Weiterlesen

Das könnte Sie auch interessieren

Jetzt kostenlos anfangen

Melden Sie sich an und erhalten Sie in den ersten 60 Tagen ein Guthaben von 200 € bei centron.

Dieses Werbeangebot gilt nur für neue Konten. Angebot ausschließlich für Gewerbetreibende.

Jetzt loslegen Sales kontaktieren