iperf3: misurare la vera velocità della rete locale
Uno speedtest dipende da Internet e dal server remoto. iperf3 elimina questa variabile e permette di misurare direttamente il throughput tra due dispositivi della LAN, rendendolo uno degli strumenti migliori per diagnosticare Ethernet e Wi-Fi.
Se una connessione Internet da 2,5 Gbps produce uno speedtest basso, non sappiamo immediatamente se il limite si trova nella rete domestica oppure oltre il router.
iperf3 risolve questo problema creando un test direttamente tra due dispositivi della nostra rete locale.
💡 Concetto chiave
Con iperf3 possiamo testare la LAN senza dipendere dalla velocità della fibra, dal routing dell’ISP o dalla capacità di un server speedtest.
🔗 Come funziona iperf3
Per effettuare il test servono normalmente due dispositivi.
Uno viene configurato come server iperf3, l’altro come client.
Server iperf3
Client iperf3
Il client genera il traffico di prova verso il server e iperf3 misura quanto traffico riesce realmente ad attraversare la rete.
Perché è diverso da uno speedtest
| Speedtest | iperf3 |
|---|---|
| Attraversa Internet | Può rimanere interamente nella LAN |
| Dipende dal server remoto | Dipende dai dispositivi scelti per il test |
| Misura linea + LAN + Internet | Può isolare LAN o Wi-Fi |
| Ottimo per valutare la connessione Internet | Ottimo per trovare colli di bottiglia locali |
💻 Installare iperf3
iperf3 è disponibile per diversi sistemi operativi.
Una volta ottenuto l’eseguibile appropriato, conviene aprire il terminale direttamente nella cartella che contiene il programma.
⚠️ Usa iperf3 su reti che controlli
Per questa guida lo utilizziamo esclusivamente tra dispositivi della propria LAN. In questo modo il test rimane semplice, controllato e facilmente interpretabile.
🖥️ Avviare il server iperf3
Sul primo computer avviamo iperf3 in modalità server:
iperf3 -sIl programma rimane in ascolto in attesa che un client avvii il test.
Trovare l’indirizzo IP del server
Sul computer server, in Windows, possiamo usare:
ipconfigSupponiamo che l’indirizzo IPv4 sia:
192.168.1.50Questo è l’indirizzo che utilizzeremo sul secondo computer.
🚀 Avviare il client
Sul secondo dispositivo eseguiamo:
iperf3 -c 192.168.1.50Il client si collega al server e inizia il trasferimento di prova.
Come leggere il risultato
Un output semplificato potrebbe contenere:
[ ID] Interval Transfer Bitrate
[ 5] 0.00-10.00 sec 1.09 GBytes 936 Mbits/sec
[ 5] 0.00-10.00 sec 1.09 GBytes 935 Mbits/sec receiverIl valore che ci interessa maggiormente è il bitrate o throughput misurato.
📈 Cosa aspettarsi su Gigabit Ethernet
Su un collegamento Gigabit Ethernet ben configurato, un test TCP iperf3 può normalmente avvicinarsi molto alla capacità utile del link, restando sotto il Gigabit teorico.
Perché non vedo esattamente 1.000 Mbps
La velocità Ethernet indicata dal link è una capacità nominale.
Il traffico reale deve includere overhead e informazioni necessarie ai protocolli.
Per questo il throughput applicativo è normalmente inferiore alla velocità fisica nominale del link.
🔄 Test nella direzione opposta
Di default, il client invia dati verso il server.
Possiamo testare la direzione opposta usando:
iperf3 -c 192.168.1.50 -RL’opzione -R esegue il test in reverse mode.
Perché è utile?
Se le due direzioni mostrano risultati molto differenti, possiamo indagare driver, schede, Wi-Fi o altri elementi del percorso.
🕑 Aumentare la durata del test
Possiamo eseguire un test più lungo, ad esempio 30 secondi:
iperf3 -c 192.168.1.50 -t 30Un test più lungo può essere utile per osservare eventuali oscillazioni del throughput.
📶 Testare il Wi-Fi con iperf3
Uno degli utilizzi più interessanti consiste nel collegare un computer server via Ethernet al router e il client via Wi-Fi.
Ethernet
Wi-Fi
In questo modo il test misura soprattutto le prestazioni del collegamento wireless e della LAN, senza dipendere dalla connessione Internet.
Perché il server dovrebbe stare via Ethernet
Se entrambi i dispositivi sono Wi-Fi, il test coinvolge due collegamenti wireless e l’interpretazione diventa più complessa.
Collegare il server via Ethernet riduce il numero di variabili e rende più semplice capire le prestazioni del client wireless.
🔌 Testare una rete 2,5G
Per superare il Gigabit è necessario che l’intero percorso lo permetta.
- Scheda Ethernet 2,5G sul server.
- Scheda Ethernet 2,5G sul client.
- Porte 2,5G sullo switch o router.
- Cablaggio adeguato e funzionante.
- Computer sufficientemente performanti.
Un singolo elemento da 1 Gbps limiterà il test.
Testare 10 Gigabit
A 10 Gbps il test diventa molto più esigente.
Possono diventare colli di bottiglia:
- CPU.
- Driver della scheda.
- Bus del sistema.
- Configurazione del sistema operativo.
- Capacità dell’adattatore di rete.
Per questo un risultato inferiore a 10 Gbps non indica automaticamente un problema nel cavo o nello switch.
🔧 Stream paralleli
Su alcuni sistemi, soprattutto ad alta velocità, un singolo flusso TCP può non sfruttare completamente il percorso.
Possiamo provare più stream paralleli:
iperf3 -c 192.168.1.50 -P 4L’opzione -P 4 crea quattro stream paralleli.
Non usare più stream solo per ottenere un numero più alto
Il test parallelo è utile per capire se il limite riguarda il singolo flusso. Bisogna però interpretare separatamente il risultato single-stream e quello multi-stream.
📡 TCP e UDP
I test standard di iperf3 utilizzano normalmente TCP.
È possibile effettuare anche test UDP:
iperf3 -c 192.168.1.50 -uCon UDP possiamo analizzare anche parametri come perdita e jitter, ma il test richiede maggiore attenzione nell’interpretazione.
Specificare il bitrate UDP
Con UDP è importante definire quanto traffico vogliamo generare.
Un esempio:
iperf3 -c 192.168.1.50 -u -b 500MIn questo caso chiediamo al client di generare circa 500 Mbps di traffico UDP.
Firewall di Windows
Se il client non riesce a collegarsi al server, una delle possibili cause è il firewall.
Quando avvii iperf3, Windows può chiedere se consentire la comunicazione dell’applicazione.
Assicurati che il traffico sia consentito sulla rete locale utilizzata per il test.
🛠️ Procedura pratica consigliata
Controlla la velocità dei link
Verifica prima che le schede abbiano negoziato la velocità prevista.
Avvia il server
iperf3 -sAvvia il client
iperf3 -c IP_DEL_SERVERRipeti in reverse
iperf3 -c IP_DEL_SERVER -RConfronta Ethernet e Wi-Fi
Mantieni lo stesso server e cambia soltanto il collegamento del client.
Solo dopo prova lo speedtest
Se la LAN funziona correttamente ma Internet è lento, puoi spostare la diagnostica oltre la rete locale.
🧩 Interpretazione rapida
| Risultato | Possibile interpretazione |
|---|---|
| iperf3 LAN veloce, speedtest lento | Il collo di bottiglia potrebbe essere oltre la LAN |
| iperf3 lento anche via Ethernet | Controllare link, cavi, porte, driver e hardware |
| Ethernet veloce, Wi-Fi lento | Problema o limite nella parte wireless |
| Client → server veloce, reverse lento | Indagare la direzione problematica |
| 1G link ma circa 940 Mbps | Risultato coerente con una LAN Gigabit ben funzionante |
| 2.5G link ma circa 940 Mbps | Probabile collo di bottiglia Gigabit o altro limite |
🧠 Cosa devi ricordare
- iperf3 misura il throughput tra due dispositivi.
- Può testare la LAN senza utilizzare Internet.
- Un dispositivo funziona da server e uno da client.
- iperf3 -s avvia il server.
- iperf3 -c IP avvia il test dal client.
- L’opzione -R permette di invertire la direzione del test.
- Con -P possiamo provare stream TCP paralleli.
- Per testare il Wi-Fi è utile mantenere il server via Ethernet.
- iperf3 e speedtest misurano parti differenti del percorso.
❓ Domande frequenti
Cos’è iperf3?
È uno strumento utilizzato per generare traffico di prova tra due dispositivi e misurare le prestazioni di una rete IP.
iperf3 usa Internet?
Non necessariamente. Se server e client si trovano nella stessa LAN, il traffico può rimanere completamente all’interno della rete locale.
Qual è la differenza tra iperf3 e Speedtest?
Speedtest misura un percorso verso un server Internet. iperf3 può invece misurare direttamente il collegamento tra due dispositivi locali.
Perché su Gigabit ottengo circa 940 Mbps?
Perché il throughput disponibile alle applicazioni è inferiore al valore nominale del link Ethernet a causa dell’overhead dei protocolli.
Come faccio a testare il Wi-Fi con iperf3?
Un metodo molto utile consiste nel collegare il server via Ethernet al router e utilizzare un client Wi-Fi per generare il test.
A cosa serve iperf3 -R?
Inverte la direzione del trasferimento rispetto al test standard e permette di confrontare le prestazioni nelle due direzioni.
A cosa serve -P 4?
Avvia quattro stream paralleli. Può essere utile per verificare se un singolo flusso TCP non riesce a sfruttare completamente una connessione veloce.
Perché iperf3 non raggiunge 10 Gbps su una rete 10G?
A queste velocità possono diventare limitanti CPU, driver, adattatori, bus del sistema e configurazione software. Bisogna quindi analizzare l’intera piattaforma e non soltanto il link Ethernet.

