Ein von Google entwickelter Congestion Control Algorithmus, der BBR ( B ottleneck B andwidth und R ound-trip Ausbreitungszeit) ist eine Lösung zur Erhöhung der Übertragungsgeschwindigkeit von Paketen über das Internet. Aber was ist ein Congestion Control Algorithmus? Die Congestion Control Algorithmen sind die verschiedenen Möglichkeiten, wie die Pakete über das Internet gesendet werden können. Diese sind in jedem Netzwerkgerät eingebaut und entscheiden die Geschwindigkeit der Datenübertragung auf der Basis von Staus, Paketverlust etc.
Das Internet verwendet am häufigsten verlustbasierte Staukontrolle, die beschlossen hat, die Pakete auf der Basis von Paketverlust zu senden. Wenn der besagte Algorithmus den Paketverlust erkennt, würde er den Zustand der Überlastung annehmen und das Senden von Paketen beenden oder seine Geschwindigkeit begrenzen. Eine Hauptbeschränkung eines solchen Staukontrollalgorithmus ist, dass Staus nicht der einzige Faktor für Paketverlust ist. Paketverlust kann aufgrund zahlreicher Gründe wie fehlerhafte Übertragungsmedien und flache Puffer auftreten. In solchen Fällen nimmt der Algorithmus eine Überlastung an und begrenzt die Übertragungsrate.
Der BBR-Algorithmus wurde jedoch unter Berücksichtigung all dieser Faktoren geschrieben. BBR wertet das Netzwerk und die Geschwindigkeit, mit der es in der Lage ist, Daten zu übertragen, indem er die Netzgeschwindigkeit und die Rundlaufzeit überwacht. Dadurch wird die maximale Bandbreite und die minimale Rundlaufzeit ausgewertet, die den BBR leitet, um die maximal mögliche Datenmenge zu einem bestimmten Zeitpunkt zu senden.
TCP BBR Staukontrolle auf Ubuntu / Debian
Der TCP BBR Patch muss auf den Linux Kernel angewendet werden.
Voraussetzungen
1. Die Version von Linux Kernel sollte 4,9 oder höher sein.
2. Die folgenden Funktionen sollten im Linux-Kernel verfügbar sein.
#CONFIG_TCP_CONG_BBR
#CONFIG_NET_SCH_FQ
(Hinweis: Sie können überprüfen, ob diese verfügbar sind, indem Sie die unten genannten Befehle ausführen.)
Grep 'CONFIG_TCP_CONG_BBR' / boot / config - $ (uname -r)
Grep 'CONFIG_NET_SCH_FQ' / boot / config - $ (uname -r)
Egrep 'CONFIG_TCP_CONG_BBR | CONFIG_NET_SCH_FQ' / boot / config - $ (uname -r)
Konfiguration
1. Bearbeiten Sie eine der folgenden Dateien mit Hilfe eines beliebigen Texteditors Ihrer Wahl. Wir haben vi editor benutzt.
Sudo vi /etc/sysctl.conf
Sudo vi /etc/sysctl.d/10-custom-kernel-bbr.conf
2. Folgende Zeilen sollten den obigen Dateien hinzugefügt werden.
Net.core.default_qdisc = fq
Net.ipv4.tcp_congestion_control = bbr
3. Speichern Sie die Datei und starten Sie das System neu, um die Änderungen wirksam zu machen.
Sudo reboot
4. Sie können versuchen, das Netzwerk mit Hilfe von Netzwerkwerkzeugen zu testen.
Sobald die Änderungen wirksam werden, werden Sie eine Änderung Ihrer Datengeschwindigkeit feststellen.