Ricerca nel sito web

Come aumentare la velocità Internet del server Linux con TCP BBR


BBR (Bottleneck Bandwidth e RTT) è un algoritmo di controllo della congestione relativamente nuovo scritto dagli ingegneri del software di Google. È l’ultima soluzione dei persistenti tentativi di Google di rendere Internet più veloce tramite il protocollo TCP, il cavallo di battaglia di Internet.

Lo scopo principale di BBR è quello di avviare l'utilizzo della rete e ridurre le code (che si traducono in un'attività di rete lenta): dovrebbe essere distribuito sui server, ma non nella rete o sul lato client. In Linux, BBR è implementato nella versione del kernel 4.9 o successiva.

In questo articolo, spiegheremo brevemente TCP BBR, quindi procederemo a mostrare come aumentare la velocità Internet di un server Linux utilizzando il controllo della congestione TCP BBR in Linux.

Requisiti

Dovresti avere il kernel Linux versione 4.9 o successiva installato, compilato con queste opzioni (come modulo o integrato al suo interno):

  • CONFIG_TCP_CONG_BBR
  • CONFIG_NET_SCH_FQ
  • CONFIG_NET_SCH_FQ_CODEL

Come controllare i moduli del kernel in Linux

Per verificare se le opzioni di cui sopra sono compilate nel tuo kernel, esegui questi comandi:


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

Per aggiornare il kernel, consulta queste guide:

  1. Come aggiornare il kernel all'ultima versione in Ubuntu
  2. Come installare o aggiornare all'ultima versione del kernel in CentOS 7

Abilitazione del controllo della congestione TCP BBR in Linux

BBR funziona in modo efficace con il pacing, quindi deve essere utilizzato insieme allo scheduler di pacchetti senza classi fq qdisc per il pacing del traffico. Per trovare ulteriori informazioni su fq qdisc, digita:

man tc-fq

Con una corretta comprensione di BBR, ora puoi configurarlo sul tuo server. Apri il file /etc/sysctl.conf utilizzando il tuo editor preferito.

vi /etc/sysctl.conf

Aggiungi le opzioni seguenti alla fine del file.

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

Salva e chiudi il file. Effettuare quindi le modifiche nel sistema utilizzando il comando sysctl.

sysctl --system

Dall'immagine della schermata è possibile vedere che le opzioni sono state aggiunte con i valori appropriati.

Test della configurazione del controllo di congestione TCP BBR

Dopo aver eseguito le configurazioni necessarie, puoi verificare se funziona praticamente. Esistono diversi strumenti per misurare la velocità della larghezza di banda come Speedtest-CLI:

  1. Come testare la velocità di Internet in modo bidirezionale dalla riga di comando utilizzando lo strumento "Speedtest-CLI".

Altri strumenti includono bmon (monitor della larghezza di banda), nload, Wget – downloader di file basato su comandi e cURL che mostrano tutti la larghezza di banda della rete; puoi usarli per i test.

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

Potrebbe interessarti anche leggere i seguenti articoli correlati.

  1. Configura il tuo "Speedtest Mini Server" per testare la velocità della larghezza di banda Internet
  2. Come limitare la larghezza di banda di rete utilizzata dalle applicazioni in un sistema Linux con Trickle
  3. Come modificare i parametri di runtime del kernel in modo persistente e non persistente

In questo articolo, abbiamo mostrato come aumentare la velocità Internet del server Linux utilizzando il controllo della congestione TCP BBR in Linux. Testalo in modo completo in diversi scenari e forniscici eventuali feedback importanti tramite il modulo di commento qui sotto.

Credito: Nixcraft