iPerf3 è uno strumento per misurare attivamente la massima larghezza di banda raggiungibile su una rete IP. Supporta la regolazione di vari parametri relativi a tempistiche, buffer e protocolli (TCP, UDP, SCTP con IPv4 e IPv6). Per ogni test, riporta larghezza di banda, perdita e altri parametri. Questa è una nuova implementazione che non condivide codice con l'iPerf originale e non è retrocompatibile. iPerf è stato originariamente sviluppato da NLANR/DAST. iPerf3 è stato sviluppato principalmente da ESnet/Lawrence Berkeley National Laboratory.
La famiglia di strumenti iperf esegue misurazioni attive per determinare la massima larghezza di banda raggiungibile su una rete IP. Supporta la regolazione di vari parametri relativi a tempistiche, protocolli e buffer. Per ogni test, riporta la produttività misurata, la perdita e altri parametri.
Questa versione, talvolta chiamata iperf3, è una riprogettazione della versione originale sviluppata da NLANR / DAST. IPerf3 è una nuova implementazione da zero che mira a una base di codice più piccola e semplice, e a una versione della libreria che può essere utilizzata in altri programmi. IPERF3 incorpora anche funzionalità di molti altri strumenti come NutTCP e Netperf, che mancano nell'IPERF originale. Questi includono, ad esempio, la modalità di copia zero e l'output JSON opzionale. Nota che iperf3 non è retrocompatibile con l'iperf originale.
iPerf3 può essere utilizzato per testare la velocità di comunicazione di rete del dispositivo, e iPerf3 può essere installato su due dispositivi informatici, uno come server e l'altro come client, e la velocità di comunicazione può essere testata inviando messaggi tra loro tramite iPerf3.
I parametri di iPerf3 sono i seguenti:
Usage: iperf [-s|-c host] [options] iperf [-h|--aiuto] [-v|--versione]
Server o Client: -p, --porta # porta server per ascoltare/connettersi -f, --format [kmgKMG] formato da riportare: Kbits, Mbits, KBytes, MBytes -i, --intervallo # secondi tra i rapporti periodici di larghezza di banda -F, --nome file xmit/recv il file specificato -B, --bind <host> bind a un'interfaccia specifica -V, --ormai più dettagliata -J, --output json in formato JSON --logfile f invia output a un log file -d, --debug emette output di debug -v, --versione mostra informazioni sulla versione e chiudi -h, --aiuta a mostrare questo messaggio e smetti Specifico del server: -s, --server eseguito in modalità server -D, --demon gestisce il server come un daemon -I, --file pidfile scrivi file PID -1, --una sola soluzione gestisci una connessione client e poi esci Specifico per il cliente: -c, --<host>client eseguito in modalità client, connettendosi a <host> -u, --udp usa UDP invece di TCP -b, --banda banda #[KMG][/#] larghezza di banda target in bit/sec (0 per illimitato) (predefinito 1 Mbit/sec per UDP, illimitato per TCP) (barra e conteggio dei pacchetti opzionali per la modalità burst) -t, --tempo # tempo in secondi per trasmettere per (predefinito 10 secondi) -n, --byte #[KMG] numero di byte da trasmettere (invece di -t) -k, --blockcount #[KMG] numero di blocchi (pacchetti) da trasmettere (invece di -t o -n) -l, --len #[KMG] lunghezza del buffer per leggere o scrivere (predefinito 128 KB per TCP, 8 KB per UDP) --<port>cport binding a una specifica porta client (TCP e UDP, predefinita: porta effimera) -P, --parallelo # numero di flussi client paralleli da eseguire -R, --esecuzione inversa in modalità inversa (server invia, client riceve) -w, --finestra #[KMG] imposta dimensione finestra / dimensione del buffer socket -M, --set-mss # imposta la dimensione massima del segmento TCP/SCTP (MTU - 40 byte) -N, --set senza ritardo TCP/SCTP nessun ritardo, disabilitando l'algoritmo di Nagle -4, --version4 usano solo IPv4 -6, --version6 usano solo IPv6 -S, ---tos N imposta il 'tipo di servizio' IP -Z, --zerocopy usano un metodo 'zero copy' per inviare dati -O, --ometti N ometti i primi n secondi -T, --title str prefisso a ogni riga di output con questa stringa --get-server-output get results dal server --UDP-counters-64bit utilizzano contatori a 64 bit nei pacchetti di test UDP
[KMG] indica opzioni che supportano un suffisso K/M/G per kilo-, mega- o giga-
Homepage di IPERF3 su:http://software.es.net/iperf/ Segnala bug a: https://github.com/esnet/iperf Indirizzo di download della versione Windows a 64 bit:Il login del link ipertestuale è visibile.
I server LINUX, prendendo ad esempio CentOS, possono installare lo strumento iPerf3 usando il comando yum, il comando è il seguente:
server
Con il server Linux come lato server, esegui il seguente comando:
cliente
Usando il mio computer locale come lato client, eseguii il seguente comando:
Osservazione:192.168.50.227 è l'indirizzo IP sul lato Server.
sommario
Il registro del server mostra che è stata ricevuta una richiesta di test da 192.168.50.243, porta sorgente 22376. Il lato client effettua un test continuo per 10 secondi e mostra il numero di byte trasmessi al secondo e le informazioni sulla larghezza di banda. Le statistiche inviate e ricevute vengono riassunte dopo il completamento del test. L'ascolto della porta 5201 continua anche dopo la chiusura della connessione client.
Connessione all'host 192.168.50.227, porta 5201 [ 4] locale 192.168.50.243 porta 22377 collegato a 192.168.50.227 porta 5201 [ ID] Banda di trasferimento intervallo [ 4] 0,00-1,00 sec 112 MByte 943 Mbit/s [ 4] 1,00-2,00 sec 112 MByte 940 Mbit/s [ 4] 2,00-3,00 sec 112 MByte 941 Mbit/sec [ 4] 3,00-4,00 sec 112 MByte 940 Mbit/sec [ 4] 4,00-5,00 sec 112 MByte 941 Mbit/sec [ 4] 5,00-6,00 sec 112 MByte 941 Mbit/s [ 4] 6,00-7,00 sec 112 MByte 942 Mbit/sec [ 4] 7,00-8,00 sec 112 MByte 941 Mbit/s [ 4] 8,00-9,00 sec 112 MByte 942 Mbit/s [ 4] 9,00-10,00 sec 112 MByte 942 Mbit/s - - - - - - - - - - - - - - - - - - - - - - - - - [ ID] Banda di trasferimento intervallo [ 4] 0,00-10,00 sec 1,10 GByte 941 Mbit/s mittente [ 4] 0,00-10,00 sec ricevitore 1,10 GBytes 941 Mbit/sec
iperf Fatto. Sia il server che i dispositivi client sono Etherport Gigabit, e anche i router sono Etherport Gigabit, quindi una larghezza di banda di 941 Mbit/sec è normale.
Macchine virtuali di test sotto ESXI
Entrambi sono sistemi CentOS, e al router fisico viene assegnato un indirizzo IP privato, che viene testato tramite l'IP privato come segue:
Connessione all'host 192.168.50.227, porta 5201 [5] locale 192.168.50.131 porta 35394 collegata a 192.168.50.227 porta 5201 [ID] Trasferimento Intervallo Bitrate Retr Cwnd [5] 0,00-1,00 secondi 2,72 GByte 23,3 Gbit/sec 0 1,39 MByte [5] 1,00-2,00 sec 2,74 GByte 23,5 Gbit/s 0 1,48 MByte [5] 2,00-3,00 sec 2,60 GByte 22,3 Gbit/s 0 1,48 MByte [5] 3,00-4,00 secondi 2,58 GByte 22,2 Gbit/sec 0 1,48 MByte [5] 4,00-5,00 sec 2,67 GByte 23,0 Gbit/s 0 1,48 MByte [5] 5,00-6,00 sec 2,65 GByte 22,7 Gbit/sec 0 1,48 MByte [5] 6,00-7,00 sec 2,67 GByte 23,0 Gbit/sec 0 1,48 MByte [5] 7,00-8,00 secondi 2,64 GByte 22,7 Gbit/sec 0 1,48 MByte [5] 8,00-9,00 secondi 2,63 GByte 22,6 Gbit/sec 0 1,48 MByte [5] 9,00-10,00 sec 2,67 GByte 22,9 Gbit/sec 0 1,48 MByte - - - - - - - - - - - - - - - - - - - - - - - - - [ID] Velocità di Trasferimento Intervallata Retr [5] 0,00-10,00 sec 26,6 GByte 22,8 Gbit/sec 0 mittente [5] 0,00-10,04 sec 26,6 GByte ricevitore 22,7 Gbits/sec
iperf Fatto. Questo è un po' anormale, perché sono un router Gigabit e la velocità di test è di 22,7 Gbit/secondo, non è forse tramite una scheda di rete fisica?
Informazioni di accesso:https://communities.vmware.com/t ... Routes/ta-p/2783083
VM1 e VM2 sono collegati allo stesso vSwitch chiamato "vSwitch1", allo stesso gruppo di porte chiamato Production e allo stesso VLAN chiamato VLAN 20, e inoltre entrambi girano nello stesso host ESXi chiamato ESX1. Il traffico di rete tra queste VM (VM1 e VM2) non va alle carte di rede fisiche sull'host ESXi e questi frame non vengono inoltrati alla rete fisica come switch fisico e router perché le VM lo fanno comunica all'interno del vSwitch e porta a ottenere una maggiore velocità di rete e una latenza di rete minore. VM1 e VM2 sono collegati allo stesso vSwitch chiamato "vSwitch1", allo stesso gruppo di porte chiamato Production e alla stessa VLAN chiamata VLAN 20, e entrambi girano nello stesso host ESXi chiamato ESX1. traffico di rete tra queste VM (VM1 e VM2).Non va alla scheda fisica dell'host ESXi, e anche questi fotogrammiNon viene inoltrato alla rete fisica(come switch fisici e router) perché le VM comunicano all'interno del vSwitch, con conseguente velocità di rete più elevate e una latenza minore.
Ho testato personalmente l'ambiente.Due VM sono sullo stesso host e vSwitch, ma non sullo stesso gruppo di porte, sembra che non venga inoltrato alla scheda di rete fisica e alla rete fisica.
|