Mini guida per aumentare la velocità di connessione TCP di un server linux
Quanti progressi sono stati fatti in brevissimo tempo nel mondo di Internet? Molte tecnologie sono state scoperte, implementate e, spesso, stravolte.
Alcuni algoritmi tutt’oggi utilizzati nei Sistemi Operativi, invece, sono rimasti lì, proprio dove erano nati, negli anni ’80.
Quando Internet era un posto molto diverso da come lo conosciamo.
Ebbene, a distanza di circa 30 anni c’è una novità molto interessante nell’ambito degli algoritmi utili a ottimizzare il traffico della rete.
Il colosso di Mountain View ha infatti di recente annunciato che è riuscito a migliorare tra il 4% e il 14% la velocità di connessione TCP sui server linux grazie a una nuova implementazione dell’algoritmo che gestisce il controllo di congestione TCP.
La nuova implementazione si chiama BBR, acronimo di “Bottleneck Bandwidth and Round-trip time”.
Tale patch è stata ufficialmente inclusa nel kernel 4.9, e se lo hai disponibile o se hai la possibilità di installarlo, la configurazione sarà estremamente semplice.
E, così facendo, potrai aumentare la velocità di connessione del tuo server linux.
Ecco come procedere e vedere risultati concreti sulla velocità
Verifichiamo che il kernel sia >= a 4.9 con il comando:
uname -r
e verifichiamo quali sono gli algoritmi attualmente utilizzati.
sysctl net.ipv4.tcp_available_congestion_control
A questo punto creiamo un file per ridefinire i parametri:
/etc/sysctl.d/10-custom-kernel-bbr.conf
nel quale andremo a inserire:
net.core.default_qdisc=fq net.ipv4.tcp_congestion_control=bbr
A questo punto, non ci resta che eseguire il comando per abilitare i valori:
sysctl --system
e verificare che l’algoritmo sia effettivamente disponibile con:
sysctl net.ipv4.tcp_available_congestion_control
Abbiamo eseguito alcuni test nulla nostra infrastruttura e in molti contesti i benefici sono stati tangibili.
Ti invitiamo quindi a provare a fare la stessa cosa e vedere se ne trai vantaggio anche tu!
Un test che si può facilmente eseguire è con il tool iperf presente sui repository.
Su una debian 9 si può facilmente installare:
apt update && apt install iperf
lanciare il server che sarà in ascolto sulla porta di default 5001 al quale dovremmo connetterci:
iperf -s
e poi eseguire un client, sul nostro pc o su un altro server che si connetta al precedente server ed esegua dei benchmark di connettività:
iperf -c 5.144.175.245 -i 1 -t 20
Di seguito, trovi dei test eseguiti prima e dopo la configurazione in oggetto sul nostro servizio EasyCloud:
E ora, misuriamo se otteniamo vantaggi.
Condividi anche tu con noi i benefici che hai tratto grazie a questa nuova implementazione e…buon lavoro!
Reference:
[2] https://ripe76.ripe.net/presentations/10-2018-05-15-bbr.pdf
[3] https://queue.acm.org/detail.cfm?id=3022184
Articoli correlati:
- Time to first byte: aumentare la velocità di un sito WordPress
- Com’è la tua connessione DSL? Fai il tuo speed test con noi
- Server di streaming con Linux: come realizzarlo
- Kernelcare, l’estensione Plesk per aggiornare il kernel linux
- Cloud Server GPU: applicazioni nella ricerca
- Cloud Seeweb: perché la scelta di KVM Linux