Jak zwiększyć prędkość Internetu serwera Linux za pomocą protokołu TCP BBR
BBR (Przepustowość wąskiego gardła i RTT) to stosunkowo nowy algorytm kontroli zatorów napisany przez inżynierów oprogramowania w Google. Jest to najnowsze rozwiązanie będące efektem nieustannych wysiłków Google, aby przyspieszyć działanie Internetu za pomocą protokołu TCP – konia roboczego Internetu.
Głównym celem BBR jest zwiększenie wykorzystania sieci i zmniejszenie kolejek (które powodują powolną aktywność sieci): należy go wdrożyć na serwerach, ale nie w sieci lub po stronie klienta. W Linuksie BBR jest zaimplementowany w jądrze w wersji 4.9 lub wyższej.
W tym artykule pokrótce wyjaśnimy TCP BBR, a następnie pokażemy, jak zwiększyć prędkość Internetu serwera Linux za pomocą kontroli przeciążenia TCP BBR w systemie Linux.
Wymagania
Powinieneś mieć zainstalowane jądro Linuksa w wersji 4.9 lub nowszej, skompilowane z następującymi opcjami (jako moduł lub wbudowane):
- CONFIG_TCP_CONG_BBR
- CONFIG_NET_SCH_FQ
- CONFIG_NET_SCH_FQ_CODEL
Jak sprawdzić moduły jądra w systemie Linux
Aby sprawdzić, czy powyższe opcje są wkompilowane w twoim jądrze, uruchom następujące polecenia:
cat /boot/config-$(uname -r) | grep 'CONFIG_TCP_CONG_BBR'
cat /boot/config-$(uname -r) | grep 'CONFIG_NET_SCH_FQ'
Aby zaktualizować jądro, zapoznaj się z tymi przewodnikami:
- Jak zaktualizować jądro do najnowszej wersji w Ubuntu
- Jak zainstalować lub uaktualnić do najnowszej wersji jądra w CentOS 7
Włączanie kontroli przeciążenia TCP BBR w systemie Linux
BBR skutecznie współpracuje z stymulacją, dlatego należy go używać razem z bezklasowym harmonogramem pakietów fq qdisc do stymulacji ruchu. Aby znaleźć więcej informacji o fq qdisc, wpisz:
man tc-fq
Dzięki dobremu zrozumieniu BBR możesz teraz skonfigurować go na swoim serwerze. Otwórz plik /etc/sysctl.conf w swoim ulubionym edytorze.
vi /etc/sysctl.conf
Dodaj poniższe opcje na końcu pliku.
net.core.default_qdisc=fq
net.ipv4.tcp_congestion_control=bbr
Zapisz i zamknij plik. Następnie dokonaj zmian w systemie za pomocą polecenia sysctl.
sysctl --system
Na zrzucie ekranu widać, że opcje zostały dodane z odpowiednimi wartościami.
Testowanie konfiguracji kontroli przeciążenia protokołu TCP BBR
Po wykonaniu niezbędnych konfiguracji można przetestować czy działa to w praktyce. Istnieje kilka narzędzi do pomiaru szybkości łącza, takich jak Speedtest-CLI:
- Jak przetestować prędkość Internetu dwukierunkowo z wiersza poleceń za pomocą narzędzia „Speedtest-CLI”.
Inne narzędzia obejmują bmon (monitor przepustowości), nload, Wget – narzędzie do pobierania plików oparte na poleceniach i cURL, które pokazują przepustowość sieci; możesz ich użyć do testów.
Repozytorium BBR Github: https://github.com/google/bbr
Możesz także przeczytać następujące powiązane artykuły.
- Skonfiguruj własny „Speedtest Mini Server”, aby przetestować przepustowość Internetu
- Jak ograniczyć przepustowość sieci używaną przez aplikacje w systemie Linux za pomocą funkcji Trickle
- Jak zmieniać parametry wykonawcze jądra w sposób trwały i nietrwały
W tym artykule pokazaliśmy, jak zwiększyć prędkość Internetu serwera Linux za pomocą kontroli przeciążenia TCP BBR w systemie Linux. Przetestuj go kompleksowo w różnych scenariuszach i przekaż nam ważne uwagi za pomocą poniższego formularza komentarza.
Źródło: Nixcraft