TCP BBR ile Linux Sunucu İnternet Hızı Nasıl Artırılır


BBR (Darboğaz Bant Genişliği ve RTT), Google'daki yazılım mühendisleri tarafından yazılan nispeten yeni bir tıkanıklık kontrol algoritmasıdır. Bu, Google'ın, İnternet'in beygir gücü olan TCP protokolü aracılığıyla İnternet'i daha hızlı hale getirmeye yönelik ısrarlı girişimlerinin en son çözümüdür.

BBR'nin birincil amacı ağ kullanımını başlatmak ve kuyrukları azaltmaktır (bu durum ağ etkinliğinin yavaşlamasına neden olur): sunuculara dağıtılmalıdır, ancak ağda veya istemci tarafında dağıtılmamalıdır. Linux'ta BBR, 4.9 çekirdek sürümünde veya daha yüksek bir sürümde uygulanır.

Bu makalede kısaca TCP BBR'yi açıklayacağız, ardından Linux'ta TCP BBR tıkanıklık kontrolünü kullanarak bir Linux sunucusunun İnternet hızının nasıl artırılacağını göstermeye devam edeceğiz.

Gereksinimler

Aşağıdaki seçeneklerle derlenmiş (bir modül olarak veya yerleşik olarak) Linux çekirdeği sürüm 4.9 veya üzeri kurulu olmalıdır:

  • CONFIG_TCP_CONG_BBR
  • CONFIG_NET_SCH_FQ
  • CONFIG_NET_SCH_FQ_CODEL

Linux'ta Çekirdek Modülleri Nasıl Kontrol Edilir

Yukarıdaki seçeneklerin çekirdeğinizde derlenip derlenmediğini kontrol etmek için şu komutları çalıştırın:


cat /boot/config-$(uname -r) | grep 'CONFIG_TCP_CONG_BBR'
cat /boot/config-$(uname -r) | grep 'CONFIG_NET_SCH_FQ'

Çekirdeğinizi güncellemek için şu kılavuzlara göz atın:

  1. Ubuntu'da Çekirdek En Son Sürüme Nasıl Yükseltilir
  2. CentOS 7'de En Son Çekirdek Sürümü Nasıl Kurulur veya Yükseltilir

Linux'ta TCP BBR Tıkanıklık Denetimini Etkinleştirme

BBR ilerleme hızıyla etkili bir şekilde çalışır, bu nedenle trafik ilerleme hızı için fq qdisc sınıfsız paket zamanlayıcıyla birlikte kullanılması gerekir. fq qdisc hakkında daha fazla bilgi bulmak için şunu yazın:

man tc-fq

BBR'yi yeterince anladığınıza göre, artık onu sunucunuzda yapılandırabilirsiniz. Favori düzenleyicinizi kullanarak /etc/sysctl.conf dosyasını açın.

vi /etc/sysctl.conf

Aşağıdaki seçenekleri dosyanın sonuna ekleyin.

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

Dosyayı kaydedip kapatın. Daha sonra sysctl komutunu kullanarak sistemdeki değişiklikleri gerçekleştirin.

sysctl --system

Ekran görüntüsü darbesinden seçeneklerin uygun değerlerle eklendiğini görebilirsiniz.

TCP BBR Tıkanıklık Kontrolü Yapılandırmasını Test Etme

Gerekli konfigürasyonları yaptıktan sonra pratikte çalışıp çalışmadığını test edebilirsiniz. Bant genişliği hızını ölçmek için Speedtest-CLI gibi çeşitli araçlar vardır:

  1. 'Speedtest-CLI' Aracını Kullanarak İnternet Hızınızı Komut Satırından Çift Yönlü Olarak Test Etme

Diğer araçlar arasında tümü ağ bant genişliğini gösteren bmon (bant genişliği monitörü), nload, Wget – komut tabanlı dosya indirici ve cURL yer alır; bunları test için kullanabilirsiniz.

BBR Github deposu: https://github.com/google/bbr

Aşağıdaki ilgili makaleleri de okumak isteyebilirsiniz.

  1. İnternet Bant Genişliği Hızını Test Etmek İçin Kendi “Speedtest Mini Sunucunuzu” Kurun
  2. Linux Sistemindeki Uygulamaların Kullandığı Ağ Bant Genişliğini Trickle ile Nasıl Sınırlandırabiliriz?
  3. Çekirdek Çalışma Zamanı Parametrelerini Kalıcı ve Kalıcı Olmayan Bir Şekilde Değiştirme

Bu yazımızda Linux'ta TCP BBR tıkanıklık kontrolünü kullanarak Linux sunucusu İnternet hızının nasıl artırılacağını gösterdik. Farklı senaryolar altında kapsamlı bir şekilde test edin ve aşağıdaki yorum formunu kullanarak bize önemli geri bildirimlerinizi iletin.

Kredi bilgileri: Nixcraft