Cookie

Testare la velocità della connessione con Linux

Pubblicato da TheJoe il

Tempo di lettura stimato: 4 minuti

Esistono diversi strumenti online per testare la velocità della tua connessione, uno fra tutti lo Speed Test by Ookla e lo speed test di Google. Strumenti come questi ultimi sono sicuramente utili e veloci nel caso dovessimo testare la velocità della rete alla quale è collegato il computer su cui stiamo lavorando, ma oggi voglio controllare la velocità di un server remoto al quale sono collegato in SSH. Si tratta di una installazione headless, quindi non avremo a disposizione l’interfaccia grafica e dovremo lavorare esclusivamente con il terminale.

Alcune delle utility che vedremo insieme in questo articolo sono le seguenti:

  • speed test
  • fast
  • iPerf
  • iftop
  • wget
  • youtube-dl

Fra i prerequisiti per testare gli strumenti elencati ci sono:

  • una installazione Linux (qualsiasi, ma meglio che integri un package manager)
  • permessi di root / sudo
  • accesso a un terminale

Speedtest-cli

Si tratta dello stesso servizio già citato nelle premesse: il famoso Speed Test by Ookla. Il software è pacchettizzato per un gran numero di distribuzioni, oppure è possibile usare pip per installarlo con python.

# pip install speedtest-cli

Per avviarlo digitiamo da terminale speedtest.

~ $ speedtest
Retrieving speedtest.net configuration...
Testing from Telecom Italia Business (188.10.211.206)...
Retrieving speedtest.net server list...
Selecting best server based on ping...
Hosted by Avelia (Verona) [107.07 km]: 13.87 ms
Testing download speed...................
Download: 47.87 Mbit/s
Testing upload speed.....................
Upload: 20.00 Mbit/s

Fast-cli

Fast è una utility CLI leggera basata sul test di velocità offerto da fast.com. Il test usa i server di Netflix dislocati golbalmente per restituire il risultato.

Fast-cli è relativamente semplice da utilizzare, ma dev’essere installato usando NPM (Nodejs). L’installazione di Node non è oggetto di questo articolo, ogni distribuzione ha il suo gestore dei pacchetti / repository. Dopo averlo installato lanciamo:

~ $ npm install --global fast-cli

E lanciamo il programma:

~ $ fast


  ⠼ 31 Mbps ↓

iPerf

Il software iPerf permette di configurare svariate opzioni per testare la velocità della connessione tra due apparecchi. La differenza fra quest’ultimo software e i precedenti è che dovremo necessariamente disporre di due PC per eseguire il test. Installeremo il programma su entrambi, ma uno sarà il server e l’altro il client. iPerf è molto più utile nel caso si voglia testare la velocità di due PC connessi localmente.

Anche in questo caso ogni distribuzione ha il suo gestore pacchetti e i suoi repository.

Sul server avvieremo il comando iperf3 -s, mentre sul client che eseguirà il test lanceremo iperf3 -c <IP del server>.

~ $ iperf3 -c 192.168.5.10
Connecting to host 192.168.5.10, port 5201
[  5] local 192.168.5.2 port 59472 connected to 192.168.5.10 port 5201
[ ID] Interval           Transfer     Bitrate         Retr  Cwnd
[  5]   0.00-1.00   sec  2.12 MBytes  17.8 Mbits/sec   55   77.0 KBytes       
[  5]   1.00-2.00   sec  1.50 MBytes  12.6 Mbits/sec    0   94.3 KBytes       
[  5]   2.00-3.00   sec  1.25 MBytes  10.5 Mbits/sec    0    120 KBytes       
[  5]   3.00-4.00   sec   896 KBytes  7.34 Mbits/sec    6    128 KBytes       
[  5]   4.00-5.00   sec   896 KBytes  7.34 Mbits/sec   43   89.0 KBytes       
[  5]   5.00-6.00   sec   640 KBytes  5.24 Mbits/sec    1   62.4 KBytes       
[  5]   6.00-7.00   sec  0.00 Bytes   0.00  bits/sec   47   1.33 KBytes       
[  5]   7.00-8.00   sec   640 KBytes  5.24 Mbits/sec   55   69.1 KBytes       
[  5]   8.00-9.00   sec  1.50 MBytes  12.6 Mbits/sec    0   97.0 KBytes       
[  5]   9.00-10.00  sec  1.12 MBytes  9.42 Mbits/sec    0   91.6 KBytes       
- - - - - - - - - - - - - - - - - - - - - - - - -
[ ID] Interval           Transfer     Bitrate         Retr
[  5]   0.00-10.00  sec  10.5 MBytes  8.81 Mbits/sec  207        sender
[  5]   0.00-10.08  sec  10.0 MBytes  8.33 Mbits/sec             receiver

iperf Done.

Lo stesso report sarà visibile sul server prima di arrestare iPerf.

Guarda qui:  File manager a riga di comando per Linux

iftop

Iftop permette di controllare la velocità del traffico su una specifica interfaccia di rete definita dall’utente. Anche questo programma può essere facilmente installato tramite repository.

Per prima cosa controlliamo quale nome sia stato assegnato all’interfaccia di rete che vogliamo monitorare. Nel mio caso la scheda Wi-Fi:

~ $ ip a
1: lo: <LOOPBACK,UP,LOWER_UP> mtu 65536 qdisc noqueue state UNKNOWN group default qlen 1000
    link/loopback 00:00:00:00:00:00 brd 00:00:00:00:00:00
    inet 127.0.0.1/8 scope host lo
       valid_lft forever preferred_lft forever
    inet6 ::1/128 scope host noprefixroute 
       valid_lft forever preferred_lft forever
2: enp9s0: <NO-CARRIER,BROADCAST,MULTICAST,UP> mtu 1500 qdisc fq_codel state DOWN group default qlen 1000
    link/ether 70:54:d2:5b:1f:f8 brd ff:ff:ff:ff:ff:ff
3: wlp8s0: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc noqueue state UP group default qlen 1000
    link/ether 20:16:d8:5b:19:b3 brd ff:ff:ff:ff:ff:ff
    inet 192.168.1.4/24 brd 192.168.1.255 scope global dynamic noprefixroute wlp8s0
       valid_lft 68747sec preferred_lft 68747sec
    inet6 fe80::f123:5636:87bc:af11/64 scope link noprefixroute 
       valid_lft forever preferred_lft forever

La scheda Wi-Fi è indicata dall’iniziale “w”: nel mio caso “wlp8s0“. Per lanciarlo usiamo l’argomento “-i” e specifichiamo l’interfaccia di rete da monitorare:

~ $ sudo iftop -i wlp8s0

Le statistiche di trasmission (TX) e ricezione (RX) sono a fondo pagina.

wget

Wget è in questa lista, anche se la sua funzione principale non è certamente quella di monitorare la velocità della connessione. Infatti si tratta di un download manager sofisticato e molto longevo, che offre però anche le informazioni che cerchiamo circa la velocità.

Serve l’indirizzo di un file scaricabile… direi di almeno qualche MB. Ho cercato su Google “fotografia filetype:pdf” sperando in qualche brochure fotografica, invece ho trovato un catalogo di microscopi digitali.

~ $ wget -O /dev/null -q --show-progress http://bio-plast.net/pdf/Catalogue/Optika/DIGITAL%202009_IT.pdf
/dev/null                 30%[=========>                        ] 899,54K   184KB/s    prev 13s 

Con questo comando non verrà salvato nulla perché stiamo dicendo a wget di mettere tutto in /dev/null, ma lo scaricamento avverrà comunque e dall’ultima riga possiamo vedere a che velocità.

youtube-dl

Youtube-dl, come wget, è un altro programma che non è pensato per il nostro scopo. Ma ugualmente non c’è motivo di non utilizzarlo.

~ $ yt-dlp -f best --no-part --no-cache-dir -o /dev/null --newline <una qualsiasi URL di youtube>
[download] Destination: /dev/null
[download]   0.0% of   19.65MiB at  Unknown B/s ETA Unknown
[download]   0.0% of   19.65MiB at    1.44MiB/s ETA 00:13
[download]   0.0% of   19.65MiB at   81.41KiB/s ETA 04:07
[download]   0.1% of   19.65MiB at  171.64KiB/s ETA 01:57
[download]   0.2% of   19.65MiB at  171.12KiB/s ETA 01:57
[download]   0.3% of   19.65MiB at  202.58KiB/s ETA 01:39
[download]   0.6% of   19.65MiB at   71.21KiB/s ETA 04:40
[download]   0.8% of   19.65MiB at   95.49KiB/s ETA 03:28
[download]   1.3% of   19.65MiB at  144.05KiB/s ETA 02:17
[download]   2.1% of   19.65MiB at  198.62KiB/s ETA 01:39

Ho dimenticato qualcosa? Fatemelo sapere nei commenti.


TheJoe

Mantengo questo blog a livello amatoriale dal 2009. Sono appassionato di grafica, tecnologia, software Open Source. Fra i miei articoli non sarà difficile trovarne circa la musica, ed alcuni di riflessioni personali, ma preferisco indirizzare la linea del blog principalmente verso la tecnologia. Per informazioni contattami.

0 commenti

Lascia un commento

Segnaposto per l'avatar

Il tuo indirizzo email non sarà pubblicato. I campi obbligatori sono contrassegnati *

Questo sito usa Akismet per ridurre lo spam. Scopri come i tuoi dati vengono elaborati.