Sådan øges Linux Server Internet Speed med TCP BBR


BBR (Bottleneck Bandwidth and RTT) er en relativt ny algoritme til overbelastningskontrol skrevet af softwareingeniører hos Google. Det er den nyeste løsning ud af Googles vedvarende forsøg på at gøre Internettet hurtigere via TCP-protokollen - arbejdshesten på Internettet.

Det primære mål med BBR er at starte netværksudnyttelse og reducere køer (som resulterer i langsom netværksaktivitet): den skal distribueres på servere, men ikke på netværket eller klientsiden. I Linux implementeres BBR i kerneversion 4.9 eller nyere.

I denne artikel vil vi kort forklare TCP BBR og derefter fortsætte med at vise, hvordan man øger en Linux-serverens internethastighed ved hjælp af TCP BBR-overbelastningskontrol i Linux.

Du skal have Linux-kerneversion 4.9 eller nyere installeret, kompileret med disse muligheder (enten som et modul eller indbygget i det):

  • CONFIG_TCP_CONG_BBR
  • CONFIG_NET_SCH_FQ
  • CONFIG_NET_SCH_FQ_CODEL

Sådan kontrolleres kernemoduler i Linux

For at kontrollere, om ovenstående indstillinger er samlet i din kerne, skal du køre disse kommandoer:

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

For at opdatere din kerne, se disse vejledninger:

  1. Sådan opgraderes kernen til den nyeste version i Ubuntu
  2. Sådan installeres eller opgraderes til den nyeste kerneversion i CentOS 7

Aktivering af TCP BBR Congestion Control i Linux

BBR fungerer effektivt med pacing, så det skal bruges sammen med fq qdisc klasseløs pakkeplanlægning til trafikpacing. For at finde flere oplysninger om fq qdisc, skriv:

# man tc-fq

Med en fair forståelse af BBR kan du nu konfigurere det på din server. Åbn filen /etc/sysctl.conf ved hjælp af din yndlingseditor.

# vi /etc/sysctl.conf

Tilføj indstillingerne nedenfor i slutningen af filen.

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

Gem og luk filen. Foretag derefter ændringer i systemet ved hjælp af sysctl-kommandoen.

# sysctl --system

Fra skærmbilledet kan du se, at indstillingerne er tilføjet med de relevante værdier.

Test af TCP BBR Congestion Control Configuration

Efter at have udført de nødvendige konfigurationer, kan du teste, om det praktisk talt fungerer. Der er flere værktøjer til måling af båndbreddeshastighed, såsom Speedtest-CLI:

  1. Sådan tester du din internethastighed tovejs fra kommandolinjen ved hjælp af værktøjet 'Speedtest-CLI'

Andre værktøjer inkluderer Wget - kommandobaseret fildownloader og cURL, som alle viser netværksbåndbredde; du kan bruge dem til test.

BBR Github-arkiv: https://github.com/google/bbr

Du kan også lide at læse følgende relaterede artikler.

  1. Opsæt din egen “Speedtest Mini Server” til at teste internetbåndbreddeshastighed
  2. Sådan begrænses netværksbåndbredden, der bruges af applikationer i et Linux-system med Trickle
  3. Sådan ændres kerneens kørselsparametre på en vedvarende og ikke-vedvarende måde

I denne artikel viste vi, hvordan man øger Linux-serverens internethastighed ved hjælp af TCP BBR-overbelastningskontrol i Linux. Test det grundigt under forskellige scenarier, og giv os enhver vigtig feedback via kommentarformularen nedenfor.