Kuinka lisätä Linux-palvelimen Internet-nopeutta TCP BBR: llä


BBR (Bottleneck Bandwidth ja RTT) on suhteellisen uusi ruuhkanhallintaalgoritmi, jonka ovat kirjoittaneet Googlen ohjelmistosuunnittelijat. Se on uusin ratkaisu Googlen jatkuvista yrityksistä nopeuttaa Internetiä TCP-protokollan – Internetin työhevosen – avulla.

BBR:n ensisijainen tavoite on käynnistää verkon käyttöastetta ja vähentää jonoja (jotka johtavat hitaaseen verkon toimintaan): se tulee ottaa käyttöön palvelimilla, mutta ei verkossa tai asiakaspuolella. Linuxissa BBR on toteutettu ytimen versiossa 4.9 tai uudemmassa.

Tässä artikkelissa selitämme lyhyesti TCP BBR:n ja jatkamme sitten osoittamalla, kuinka voit lisätä Linux-palvelimen Internet-nopeutta käyttämällä TCP BBR -ruuhkanhallintaa Linuxissa.

Vaatimukset

Sinulla pitäisi olla Linux-ytimen versio 4.9 tai uudempi asennettuna, joka on käännetty näillä vaihtoehdoilla (joko moduulina tai sisäänrakennettuna):

  • CONFIG_TCP_CONG_BBR
  • CONFIG_NET_SCH_FQ
  • CONFIG_NET_SCH_FQ_CODEL

Kuinka tarkistaa ydinmoduulit Linuxissa

Voit tarkistaa, onko yllä olevat vaihtoehdot käännetty ytimeen suorittamalla nämä komennot:


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

Jos haluat päivittää ytimen, tutustu näihin oppaisiin:

  1. Kernelin päivittäminen uusimpaan versioon Ubuntussa
  2. Kuinka asentaa tai päivittää uusimpaan ydinversioon CentOS 7:ssä

TCP BBR -ruuhkanhallinnan ottaminen käyttöön Linuxissa

BBR toimii tehokkaasti tahdistuksen kanssa, joten sitä on käytettävä yhdessä fq qdisc -luokaton pakettien ajoittimen kanssa liikenteen tahdistukseen. Saat lisätietoja fq qdiscistä kirjoittamalla:

man tc-fq

Kun ymmärrät BBR:n, voit nyt määrittää sen palvelimellasi. Avaa /etc/sysctl.conf-tiedosto suosikkieditorillasi.

vi /etc/sysctl.conf

Lisää alla olevat vaihtoehdot tiedoston loppuun.

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

Tallenna ja sulje tiedosto. Tee sitten muutokset järjestelmään sysctl-komennolla.

sysctl --system

Näyttökuvasta näet, että vaihtoehdot on lisätty sopivilla arvoilla.

Testataan TCP BBR -ruuhkanhallintakokoonpanoa

Kun olet tehnyt tarvittavat asetukset, voit testata, toimiiko se käytännössä. Kaistanleveyden mittaamiseen on useita työkaluja, kuten Speedtest-CLI:

  1. Kuinka testata Internet-nopeutesi kaksisuuntaisesti komentoriviltä käyttämällä Speedtest-CLI-työkalua

Muita työkaluja ovat bmon (bandwith monitor), nload, Wget – komentopohjainen tiedostolatausohjelma ja cURL, jotka kaikki näyttävät verkon kaistanleveyden. voit käyttää niitä testaamiseen.

BBR Githubin arkisto: https://github.com/google/bbr

Saatat myös haluta lukea seuraavia aiheeseen liittyviä artikkeleita.

  1. Asenna oma "Speedtest Mini Server" testataksesi Internetin kaistanleveyden nopeutta
  2. Kuinka rajoittaa sovellusten käyttämää verkon kaistanleveyttä Linux-järjestelmässä Tricklen avulla
  3. Kuinka muuttaa ytimen ajonaikaisia parametreja pysyvästi ja ei-pysyvästi

Tässä artikkelissa näytimme, kuinka voit lisätä Linux-palvelimen Internet-nopeutta käyttämällä TCP BBR -ruuhkanhallintaa Linuxissa. Testaa sitä kattavasti eri skenaarioissa ja anna meille tärkeä palaute alla olevan kommenttilomakkeen kautta.

Luotto: Nixcraft