SlideShare a Scribd company logo
Gruppo 11
Michele Quaresimin 820577
A.A 2008/2009
Iperf- performance tool -
Protocolli di rete
Università Ca’ Foscari di Venezia
Corso di Laurea in Informatica
OUTLINE
Cos’è Iperf
Obiettivi principali
Architettura del tool
Funzionalità a disposizione
Utilizzo pratico
Esempio di funzionamento
Interpretazione dei risultati ottenuti
Caratteristiche modificabili per migliorare le performance di
rete
06/01/152 Quaresimin Michele - Iperf
IPERF
Misurazione del throughput end-to-end generabile da due
stazioni
Rapporto tra il totale dei dati trasferiti e il periodo totale di
trasferimento (tra le due applicazioni host)
Possibilità di scegliere il protocollo a livello trasporto
TCP
UDP
Cambiare vari parametri del protocollo per ottenere
performance migliori
06/01/15Quaresimin Michele - Iperf3
TCP
Misurazione banda effettiva
MSS/MTU (in base al tipo di protocollo network)
Dimensione della finestra scorrevole
Multi-thread per connessioni simultanee
Disabilitazione dell’algoritmo di Nagle per applicazioni
interattive come Telnet o desktop remoti
06/01/15Quaresimin Michele - Iperf4
UDP
Flussi UDP a velocità di trasmissione costante (simili alle
comunicazioni vocali)
Ritardo di arrivo dei datagrammi e conteggio di quelli persi
Multicast
Multi-thread per connessioni simultanee (non supportato in
Windows)
06/01/15Quaresimin Michele - Iperf5
COMUNICAZIONE
Architettura Client/Server
Iperf si lancia con un comando dalla shell
Due istanze del tool comunicano tra di loro
06/01/15Quaresimin Michele - Iperf6
Iperf -c SERVER_IP_ADDRESS Iperf -s
TCP o UDPNum. Porta Num. Porta
STIMARE LA BANDA
Client e server interagiscono per stimare il throughput
1. Il server è in ascolto con il protocollo TCP (o UDP) alla porta
5001 (o specificata)
2. Il client tenta una connessione all’indirizzo dato (protocollo
e porta analoghi) con una finestra di 49,5 KB (o specificata)
3. Client e server si connettono negoziando una nuova porta
casuale
4. Il client invia messaggi di 8 KB (TCP) o di 1470 B (UDP)
ripetutamente per 10 secondi (o dimensione e tempo
specificati)
5. Client e server stampano il tempo di trasferimento e la
banda effettiva
06/01/15Quaresimin Michele - Iperf7
TEST TCP
06/01/15Quaresimin Michele - Iperf8
iperf -c 84.222.121.182 -p 59875
------------------------------------------------------------
Client connecting to 84.222.121.182, TCP port 59875
TCP window size: 16.0 KByte (default)
------------------------------------------------------------
[ 3] local 192.168.1.106 port 57810 connected with 84.222.121.182 port 59875
[ ID] Interval Transfer Bandwidth
[ 3] 0.0-10.1 sec 440 KBytes 356 Kbits/sec
iperf -s -p 59875
------------------------------------------------------------
Server listening on TCP port 59875
TCP window size: 85.3 KByte (default)
------------------------------------------------------------
[ 5] local 192.168.0.3 port 59875 connected with 82.54.227.147 port 57810
[ ID] Interval Transfer Bandwidth
[ 5] 0.0-12.2 sec 440 KBytes 297 Kbits/sec
440 KB / 10.1 s ≈ 44610 B/s
44610 * 8 / 1000 ≈ 356 Kb/s
TEST UDP
06/01/15Quaresimin Michele - Iperf9
iperf -c 84.222.121.182 -p 15859 -u -b 128k
------------------------------------------------------------
Client connecting to 84.222.121.182, UDP port 15859
Sending 1470 byte datagrams
UDP buffer size: 110 KByte (default)
------------------------------------------------------------
[ 3] local 192.168.1.106 port 46583 connected with 84.222.121.182 port 15859
[ ID] Interval Transfer Bandwidth
[ 3] 0.0-10.1 sec 158 KBytes 128 Kbits/sec
[ 3] Sent 110 datagrams
iperf -s -u -p 15859
------------------------------------------------------------
Server listening on UDP port 15859
Receiving 1470 byte datagrams
UDP buffer size: 110 KByte (default)
------------------------------------------------------------
[ 3] local 192.168.0.3 port 15859 connected with 82.54.227.147 port 46583
[ ID] Interval Transfer Bandwidth Jitter Lost/Total Datagrams
[ 3] 0.0- 1.0 sec 14.4 KBytes 118 Kbits/sec 1.083 ms 0/ 10 (0%)
[ 3] 1.0- 2.0 sec 12.9 KBytes 106 Kbits/sec 1.308 ms 2/ 11 (18%)
[ 3] 2.0- 3.0 sec 7.18 KBytes 58.8 Kbits/sec 1.267 ms 6/ 11 (55%)
[ 3] 3.0- 4.0 sec 7.18 KBytes 58.8 Kbits/sec 1.314 ms 6/ 11 (55%)
[ 3] 4.0- 5.0 sec 7.18 KBytes 58.8 Kbits/sec 1.230 ms 6/ 11 (55%)
[ 3] 5.0- 6.0 sec 7.18 KBytes 58.8 Kbits/sec 1.276 ms 6/ 11 (55%)
[ 3] 6.0- 7.0 sec 7.18 KBytes 58.8 Kbits/sec 1.301 ms 6/ 11 (55%)
[ 3] 7.0- 8.0 sec 7.18 KBytes 58.8 Kbits/sec 1.204 ms 5/ 10 (50%)
[ 3] 8.0- 9.0 sec 7.18 KBytes 58.8 Kbits/sec 1.225 ms 6/ 11 (55%)
[ 3] 9.0-10.0 sec 7.18 KBytes 58.8 Kbits/sec 1.496 ms 6/ 11 (55%)
[ 3] 0.0-10.1 sec 86.1 KBytes 69.8 Kbits/sec 1.437 ms 50/ 110 (45%)
La rete è congestionata
e metà dei datagrammi
nei gruppi viene persa
POSSIBILI MODIFICHE
Dimensione della finestra TCP (-w)
Il valore teorico minimo da usare corrisponde al prodotto
Banda minima * RTT
Dimensione MSS – Maximum Segment Size (-M)
Iperf attraverso l’opzione –m fornisce l’MTU che vincola la
dimensione dei pacchetti a seconda del protocollo utilizzato (gli
host devono supportate Path MTU Discovery)
06/01/15Quaresimin Michele - Iperf10
iperf -s -p 59875 -m
------------------------------------------------------------
Server listening on TCP port 59875
TCP window size: 85.3 KByte (default)
------------------------------------------------------------
[ 4] local 192.168.0.3 port 59875 connected with 82.54.227.147 port
35415
[ ID] Interval Transfer Bandwidth
[ 4] 0.0-13.9 sec 504 KBytes 297 Kbits/sec
[ 4] MSS size 1440 bytes (MTU 1500 bytes, ethernet)
ULTERIORI MODIFICHE
Multithreading – Flussi TCP paralleli (-P)
Se la banda aggregata totale è maggiore di quella calcolata su un
flusso sequenziale, qualcosa non va (probabilmente la finestra è
troppo piccola)
Multicast UDP
(Binding al gruppo)
Servizio di sistema
IPv6
06/01/15Quaresimin Michele - Iperf11
iperf -s -p 59875 -w 300k
------------------------------------------------------------
Server listening on TCP port 59875
TCP window size: 256 KByte (WARNING: requested 300 KByte)
------------------------------------------------------------
[ 7] local 192.168.0.3 port 59875 connected with 82.54.227.147 port 39804
[ 4] local 192.168.0.3 port 59875 connected with 82.54.227.147 port 39805
[ 5] local 192.168.0.3 port 59875 connected with 82.54.227.147 port 39806
[ 4] 0.0-21.6 sec 256 KBytes 97.1 Kbits/sec
[ 7] 0.0-23.3 sec 384 KBytes 137 Kbits/sec
[ 5] 0.0-23.3 sec 256 KBytes 84.9 Kbits/sec
[SUM] 0.0-24.7 sec 896 KBytes 297 Kbits/sec
CONCLUSIONI
Le precedenti prove che hanno stimato circa una banda, sia
lato client che lato server, compresa tra 250-300 Kb/s
corrisponde alle attese (linee ADSL 2-4 Mb)
Iperf è utilizzato in controlli ufficiali per verificare se il
throughput dichiarato da un’azienda che fornisce servizi di
comunicazione rispecchia la reale banda
Peccato! Il sito originale del progetto è offline
06/01/15Quaresimin Michele - Iperf12

More Related Content

Similar to Iperf 090524073201-phpapp01

IoT: protocolli, dispositivi, architetture
IoT: protocolli, dispositivi, architettureIoT: protocolli, dispositivi, architetture
IoT: protocolli, dispositivi, architetture
Stefano Valle
 
SMART WATER 4 novembre
SMART WATER 4 novembreSMART WATER 4 novembre
SMART WATER 4 novembrecanaleenergia
 
VMUGIT UC 2013 - 05b Telecom Italia View
VMUGIT UC 2013 - 05b Telecom Italia ViewVMUGIT UC 2013 - 05b Telecom Italia View
VMUGIT UC 2013 - 05b Telecom Italia View
VMUG IT
 
VMUGIT UC 2013 - 05b Telecom Italia View
VMUGIT UC 2013 - 05b Telecom Italia ViewVMUGIT UC 2013 - 05b Telecom Italia View
VMUGIT UC 2013 - 05b Telecom Italia View
VMUG IT
 
Descrizione protocollo InterLINK e licenze firmware CAMILLO
Descrizione protocollo InterLINK e licenze firmware CAMILLODescrizione protocollo InterLINK e licenze firmware CAMILLO
Descrizione protocollo InterLINK e licenze firmware CAMILLO
iBLio
 
Sviluppo del sistema di controllo dell'assetto di un quadricottero con proces...
Sviluppo del sistema di controllo dell'assetto di un quadricottero con proces...Sviluppo del sistema di controllo dell'assetto di un quadricottero con proces...
Sviluppo del sistema di controllo dell'assetto di un quadricottero con proces...
Andrea Gulberti
 
F Temi D Esame
F Temi D EsameF Temi D Esame
F Temi D Esameacapone
 
Jvm performance Tuning
Jvm performance TuningJvm performance Tuning
Jvm performance Tuning
Marco Sabatini
 
Cloudup, cloud server al minuto
Cloudup, cloud server al minutoCloudup, cloud server al minuto
Cloudup, cloud server al minuto
ENTER S.r.l.
 
Smart Technology 3 novembre
Smart Technology 3 novembreSmart Technology 3 novembre
Smart Technology 3 novembrecanaleenergia
 
Crouzet Automation - em4 Ethernet opuscolo, versione italiana
Crouzet Automation - em4 Ethernet opuscolo, versione italiana Crouzet Automation - em4 Ethernet opuscolo, versione italiana
Crouzet Automation - em4 Ethernet opuscolo, versione italiana
Crouzet
 
Brand Rex Seminar 2009 Installation It
Brand Rex Seminar 2009 Installation ItBrand Rex Seminar 2009 Installation It
Brand Rex Seminar 2009 Installation It
Gianluca Musetti
 
Studio di una Architettura per un Sistema Distributivo ad Alta Affidabilità
Studio di una Architettura per un Sistema Distributivo ad Alta AffidabilitàStudio di una Architettura per un Sistema Distributivo ad Alta Affidabilità
Studio di una Architettura per un Sistema Distributivo ad Alta Affidabilità
Roberto Peruzzo
 
Progetto e implementazione di uno script python per la gestione di richieste ...
Progetto e implementazione di uno script python per la gestione di richieste ...Progetto e implementazione di uno script python per la gestione di richieste ...
Progetto e implementazione di uno script python per la gestione di richieste ...
AndreaMajcen
 
Soluzioni per la difesa da attacchi DoS nelle reti SDN
Soluzioni per la difesa da attacchi DoS nelle reti SDNSoluzioni per la difesa da attacchi DoS nelle reti SDN
Soluzioni per la difesa da attacchi DoS nelle reti SDN
Matteo D'Amore
 
Virtualizzare Nanosoft
Virtualizzare   NanosoftVirtualizzare   Nanosoft
Virtualizzare Nanosoft
Dario Vemagi
 
Protocol Rollercoaster: da HTTP a AMQP, passando per CoAP e MQTT
Protocol Rollercoaster: da HTTP a AMQP, passando per CoAP e MQTTProtocol Rollercoaster: da HTTP a AMQP, passando per CoAP e MQTT
Protocol Rollercoaster: da HTTP a AMQP, passando per CoAP e MQTT
Stefano Valle
 
9 Intranetting
9 Intranetting9 Intranetting
9 Intranettingacapone
 
IBM FlashSystem 820 e 720
IBM FlashSystem 820 e 720IBM FlashSystem 820 e 720
IBM FlashSystem 820 e 720
PRAGMA PROGETTI
 
Reti Locali
Reti LocaliReti Locali
Reti Locali
Vincenzo Calabrò
 

Similar to Iperf 090524073201-phpapp01 (20)

IoT: protocolli, dispositivi, architetture
IoT: protocolli, dispositivi, architettureIoT: protocolli, dispositivi, architetture
IoT: protocolli, dispositivi, architetture
 
SMART WATER 4 novembre
SMART WATER 4 novembreSMART WATER 4 novembre
SMART WATER 4 novembre
 
VMUGIT UC 2013 - 05b Telecom Italia View
VMUGIT UC 2013 - 05b Telecom Italia ViewVMUGIT UC 2013 - 05b Telecom Italia View
VMUGIT UC 2013 - 05b Telecom Italia View
 
VMUGIT UC 2013 - 05b Telecom Italia View
VMUGIT UC 2013 - 05b Telecom Italia ViewVMUGIT UC 2013 - 05b Telecom Italia View
VMUGIT UC 2013 - 05b Telecom Italia View
 
Descrizione protocollo InterLINK e licenze firmware CAMILLO
Descrizione protocollo InterLINK e licenze firmware CAMILLODescrizione protocollo InterLINK e licenze firmware CAMILLO
Descrizione protocollo InterLINK e licenze firmware CAMILLO
 
Sviluppo del sistema di controllo dell'assetto di un quadricottero con proces...
Sviluppo del sistema di controllo dell'assetto di un quadricottero con proces...Sviluppo del sistema di controllo dell'assetto di un quadricottero con proces...
Sviluppo del sistema di controllo dell'assetto di un quadricottero con proces...
 
F Temi D Esame
F Temi D EsameF Temi D Esame
F Temi D Esame
 
Jvm performance Tuning
Jvm performance TuningJvm performance Tuning
Jvm performance Tuning
 
Cloudup, cloud server al minuto
Cloudup, cloud server al minutoCloudup, cloud server al minuto
Cloudup, cloud server al minuto
 
Smart Technology 3 novembre
Smart Technology 3 novembreSmart Technology 3 novembre
Smart Technology 3 novembre
 
Crouzet Automation - em4 Ethernet opuscolo, versione italiana
Crouzet Automation - em4 Ethernet opuscolo, versione italiana Crouzet Automation - em4 Ethernet opuscolo, versione italiana
Crouzet Automation - em4 Ethernet opuscolo, versione italiana
 
Brand Rex Seminar 2009 Installation It
Brand Rex Seminar 2009 Installation ItBrand Rex Seminar 2009 Installation It
Brand Rex Seminar 2009 Installation It
 
Studio di una Architettura per un Sistema Distributivo ad Alta Affidabilità
Studio di una Architettura per un Sistema Distributivo ad Alta AffidabilitàStudio di una Architettura per un Sistema Distributivo ad Alta Affidabilità
Studio di una Architettura per un Sistema Distributivo ad Alta Affidabilità
 
Progetto e implementazione di uno script python per la gestione di richieste ...
Progetto e implementazione di uno script python per la gestione di richieste ...Progetto e implementazione di uno script python per la gestione di richieste ...
Progetto e implementazione di uno script python per la gestione di richieste ...
 
Soluzioni per la difesa da attacchi DoS nelle reti SDN
Soluzioni per la difesa da attacchi DoS nelle reti SDNSoluzioni per la difesa da attacchi DoS nelle reti SDN
Soluzioni per la difesa da attacchi DoS nelle reti SDN
 
Virtualizzare Nanosoft
Virtualizzare   NanosoftVirtualizzare   Nanosoft
Virtualizzare Nanosoft
 
Protocol Rollercoaster: da HTTP a AMQP, passando per CoAP e MQTT
Protocol Rollercoaster: da HTTP a AMQP, passando per CoAP e MQTTProtocol Rollercoaster: da HTTP a AMQP, passando per CoAP e MQTT
Protocol Rollercoaster: da HTTP a AMQP, passando per CoAP e MQTT
 
9 Intranetting
9 Intranetting9 Intranetting
9 Intranetting
 
IBM FlashSystem 820 e 720
IBM FlashSystem 820 e 720IBM FlashSystem 820 e 720
IBM FlashSystem 820 e 720
 
Reti Locali
Reti LocaliReti Locali
Reti Locali
 

More from Jamil Jamil

Tonyfortunatoiperfquickstart 1212633021928769-8
Tonyfortunatoiperfquickstart 1212633021928769-8Tonyfortunatoiperfquickstart 1212633021928769-8
Tonyfortunatoiperfquickstart 1212633021928769-8
Jamil Jamil
 
Skripsi perancangan-sistem-informasi-pendataan-biodata-mahasiswa-pada-fakulta...
Skripsi perancangan-sistem-informasi-pendataan-biodata-mahasiswa-pada-fakulta...Skripsi perancangan-sistem-informasi-pendataan-biodata-mahasiswa-pada-fakulta...
Skripsi perancangan-sistem-informasi-pendataan-biodata-mahasiswa-pada-fakulta...
Jamil Jamil
 
Skripsi perancangan-sistem-informasi-pendataan-biodata-mahasiswa-pada-fakulta...
Skripsi perancangan-sistem-informasi-pendataan-biodata-mahasiswa-pada-fakulta...Skripsi perancangan-sistem-informasi-pendataan-biodata-mahasiswa-pada-fakulta...
Skripsi perancangan-sistem-informasi-pendataan-biodata-mahasiswa-pada-fakulta...
Jamil Jamil
 
Skripsi universitas paramadina_jakarta_fitriyani_kepemimpinan_perempuan_dalam...
Skripsi universitas paramadina_jakarta_fitriyani_kepemimpinan_perempuan_dalam...Skripsi universitas paramadina_jakarta_fitriyani_kepemimpinan_perempuan_dalam...
Skripsi universitas paramadina_jakarta_fitriyani_kepemimpinan_perempuan_dalam...Jamil Jamil
 
Silabus disain pemrogramanberorientasiobjek_iki10830
Silabus disain pemrogramanberorientasiobjek_iki10830Silabus disain pemrogramanberorientasiobjek_iki10830
Silabus disain pemrogramanberorientasiobjek_iki10830Jamil Jamil
 
Publikasi 09.22.1115
Publikasi 09.22.1115Publikasi 09.22.1115
Publikasi 09.22.1115Jamil Jamil
 
Publikasi 08.12.3175 2
Publikasi 08.12.3175 2Publikasi 08.12.3175 2
Publikasi 08.12.3175 2Jamil Jamil
 
Publikasi 08.12.3175
Publikasi 08.12.3175Publikasi 08.12.3175
Publikasi 08.12.3175Jamil Jamil
 
Naskah publikasi 09.11.2727
Naskah publikasi 09.11.2727Naskah publikasi 09.11.2727
Naskah publikasi 09.11.2727Jamil Jamil
 
Modul training-php-rc1-u3
Modul training-php-rc1-u3Modul training-php-rc1-u3
Modul training-php-rc1-u3Jamil Jamil
 
M odul 5 komponen dasar visual basic 2
M odul 5 komponen dasar visual basic 2M odul 5 komponen dasar visual basic 2
M odul 5 komponen dasar visual basic 2Jamil Jamil
 
M odul 5 komponen dasar visual basic
M odul 5 komponen dasar visual basicM odul 5 komponen dasar visual basic
M odul 5 komponen dasar visual basicJamil Jamil
 
Membuat laporan berbentuk khs 2
Membuat laporan berbentuk khs 2Membuat laporan berbentuk khs 2
Membuat laporan berbentuk khs 2Jamil Jamil
 
Membuat laporan berbentuk khs
Membuat laporan berbentuk khsMembuat laporan berbentuk khs
Membuat laporan berbentuk khsJamil Jamil
 

More from Jamil Jamil (20)

Tonyfortunatoiperfquickstart 1212633021928769-8
Tonyfortunatoiperfquickstart 1212633021928769-8Tonyfortunatoiperfquickstart 1212633021928769-8
Tonyfortunatoiperfquickstart 1212633021928769-8
 
Skripsi perancangan-sistem-informasi-pendataan-biodata-mahasiswa-pada-fakulta...
Skripsi perancangan-sistem-informasi-pendataan-biodata-mahasiswa-pada-fakulta...Skripsi perancangan-sistem-informasi-pendataan-biodata-mahasiswa-pada-fakulta...
Skripsi perancangan-sistem-informasi-pendataan-biodata-mahasiswa-pada-fakulta...
 
Skripsi perancangan-sistem-informasi-pendataan-biodata-mahasiswa-pada-fakulta...
Skripsi perancangan-sistem-informasi-pendataan-biodata-mahasiswa-pada-fakulta...Skripsi perancangan-sistem-informasi-pendataan-biodata-mahasiswa-pada-fakulta...
Skripsi perancangan-sistem-informasi-pendataan-biodata-mahasiswa-pada-fakulta...
 
Skripsi universitas paramadina_jakarta_fitriyani_kepemimpinan_perempuan_dalam...
Skripsi universitas paramadina_jakarta_fitriyani_kepemimpinan_perempuan_dalam...Skripsi universitas paramadina_jakarta_fitriyani_kepemimpinan_perempuan_dalam...
Skripsi universitas paramadina_jakarta_fitriyani_kepemimpinan_perempuan_dalam...
 
Silabus disain pemrogramanberorientasiobjek_iki10830
Silabus disain pemrogramanberorientasiobjek_iki10830Silabus disain pemrogramanberorientasiobjek_iki10830
Silabus disain pemrogramanberorientasiobjek_iki10830
 
Publikasi 09.22.1115
Publikasi 09.22.1115Publikasi 09.22.1115
Publikasi 09.22.1115
 
Publikasi 08.12.3175 2
Publikasi 08.12.3175 2Publikasi 08.12.3175 2
Publikasi 08.12.3175 2
 
Publikasi 08.12.3175
Publikasi 08.12.3175Publikasi 08.12.3175
Publikasi 08.12.3175
 
Prak 1
Prak 1Prak 1
Prak 1
 
Paper ta
Paper taPaper ta
Paper ta
 
Naskah publikasi 09.11.2727
Naskah publikasi 09.11.2727Naskah publikasi 09.11.2727
Naskah publikasi 09.11.2727
 
Modul training-php-rc1-u3
Modul training-php-rc1-u3Modul training-php-rc1-u3
Modul training-php-rc1-u3
 
Modul 2
Modul 2Modul 2
Modul 2
 
Modul pbo
Modul pboModul pbo
Modul pbo
 
M odul 5 komponen dasar visual basic 2
M odul 5 komponen dasar visual basic 2M odul 5 komponen dasar visual basic 2
M odul 5 komponen dasar visual basic 2
 
M odul 5 komponen dasar visual basic
M odul 5 komponen dasar visual basicM odul 5 komponen dasar visual basic
M odul 5 komponen dasar visual basic
 
Membuat laporan berbentuk khs 2
Membuat laporan berbentuk khs 2Membuat laporan berbentuk khs 2
Membuat laporan berbentuk khs 2
 
Membuat laporan berbentuk khs
Membuat laporan berbentuk khsMembuat laporan berbentuk khs
Membuat laporan berbentuk khs
 
Makalah seminar
Makalah seminarMakalah seminar
Makalah seminar
 
Jurnaltoninetti
JurnaltoninettiJurnaltoninetti
Jurnaltoninetti
 

Iperf 090524073201-phpapp01

  • 1. Gruppo 11 Michele Quaresimin 820577 A.A 2008/2009 Iperf- performance tool - Protocolli di rete Università Ca’ Foscari di Venezia Corso di Laurea in Informatica
  • 2. OUTLINE Cos’è Iperf Obiettivi principali Architettura del tool Funzionalità a disposizione Utilizzo pratico Esempio di funzionamento Interpretazione dei risultati ottenuti Caratteristiche modificabili per migliorare le performance di rete 06/01/152 Quaresimin Michele - Iperf
  • 3. IPERF Misurazione del throughput end-to-end generabile da due stazioni Rapporto tra il totale dei dati trasferiti e il periodo totale di trasferimento (tra le due applicazioni host) Possibilità di scegliere il protocollo a livello trasporto TCP UDP Cambiare vari parametri del protocollo per ottenere performance migliori 06/01/15Quaresimin Michele - Iperf3
  • 4. TCP Misurazione banda effettiva MSS/MTU (in base al tipo di protocollo network) Dimensione della finestra scorrevole Multi-thread per connessioni simultanee Disabilitazione dell’algoritmo di Nagle per applicazioni interattive come Telnet o desktop remoti 06/01/15Quaresimin Michele - Iperf4
  • 5. UDP Flussi UDP a velocità di trasmissione costante (simili alle comunicazioni vocali) Ritardo di arrivo dei datagrammi e conteggio di quelli persi Multicast Multi-thread per connessioni simultanee (non supportato in Windows) 06/01/15Quaresimin Michele - Iperf5
  • 6. COMUNICAZIONE Architettura Client/Server Iperf si lancia con un comando dalla shell Due istanze del tool comunicano tra di loro 06/01/15Quaresimin Michele - Iperf6 Iperf -c SERVER_IP_ADDRESS Iperf -s TCP o UDPNum. Porta Num. Porta
  • 7. STIMARE LA BANDA Client e server interagiscono per stimare il throughput 1. Il server è in ascolto con il protocollo TCP (o UDP) alla porta 5001 (o specificata) 2. Il client tenta una connessione all’indirizzo dato (protocollo e porta analoghi) con una finestra di 49,5 KB (o specificata) 3. Client e server si connettono negoziando una nuova porta casuale 4. Il client invia messaggi di 8 KB (TCP) o di 1470 B (UDP) ripetutamente per 10 secondi (o dimensione e tempo specificati) 5. Client e server stampano il tempo di trasferimento e la banda effettiva 06/01/15Quaresimin Michele - Iperf7
  • 8. TEST TCP 06/01/15Quaresimin Michele - Iperf8 iperf -c 84.222.121.182 -p 59875 ------------------------------------------------------------ Client connecting to 84.222.121.182, TCP port 59875 TCP window size: 16.0 KByte (default) ------------------------------------------------------------ [ 3] local 192.168.1.106 port 57810 connected with 84.222.121.182 port 59875 [ ID] Interval Transfer Bandwidth [ 3] 0.0-10.1 sec 440 KBytes 356 Kbits/sec iperf -s -p 59875 ------------------------------------------------------------ Server listening on TCP port 59875 TCP window size: 85.3 KByte (default) ------------------------------------------------------------ [ 5] local 192.168.0.3 port 59875 connected with 82.54.227.147 port 57810 [ ID] Interval Transfer Bandwidth [ 5] 0.0-12.2 sec 440 KBytes 297 Kbits/sec 440 KB / 10.1 s ≈ 44610 B/s 44610 * 8 / 1000 ≈ 356 Kb/s
  • 9. TEST UDP 06/01/15Quaresimin Michele - Iperf9 iperf -c 84.222.121.182 -p 15859 -u -b 128k ------------------------------------------------------------ Client connecting to 84.222.121.182, UDP port 15859 Sending 1470 byte datagrams UDP buffer size: 110 KByte (default) ------------------------------------------------------------ [ 3] local 192.168.1.106 port 46583 connected with 84.222.121.182 port 15859 [ ID] Interval Transfer Bandwidth [ 3] 0.0-10.1 sec 158 KBytes 128 Kbits/sec [ 3] Sent 110 datagrams iperf -s -u -p 15859 ------------------------------------------------------------ Server listening on UDP port 15859 Receiving 1470 byte datagrams UDP buffer size: 110 KByte (default) ------------------------------------------------------------ [ 3] local 192.168.0.3 port 15859 connected with 82.54.227.147 port 46583 [ ID] Interval Transfer Bandwidth Jitter Lost/Total Datagrams [ 3] 0.0- 1.0 sec 14.4 KBytes 118 Kbits/sec 1.083 ms 0/ 10 (0%) [ 3] 1.0- 2.0 sec 12.9 KBytes 106 Kbits/sec 1.308 ms 2/ 11 (18%) [ 3] 2.0- 3.0 sec 7.18 KBytes 58.8 Kbits/sec 1.267 ms 6/ 11 (55%) [ 3] 3.0- 4.0 sec 7.18 KBytes 58.8 Kbits/sec 1.314 ms 6/ 11 (55%) [ 3] 4.0- 5.0 sec 7.18 KBytes 58.8 Kbits/sec 1.230 ms 6/ 11 (55%) [ 3] 5.0- 6.0 sec 7.18 KBytes 58.8 Kbits/sec 1.276 ms 6/ 11 (55%) [ 3] 6.0- 7.0 sec 7.18 KBytes 58.8 Kbits/sec 1.301 ms 6/ 11 (55%) [ 3] 7.0- 8.0 sec 7.18 KBytes 58.8 Kbits/sec 1.204 ms 5/ 10 (50%) [ 3] 8.0- 9.0 sec 7.18 KBytes 58.8 Kbits/sec 1.225 ms 6/ 11 (55%) [ 3] 9.0-10.0 sec 7.18 KBytes 58.8 Kbits/sec 1.496 ms 6/ 11 (55%) [ 3] 0.0-10.1 sec 86.1 KBytes 69.8 Kbits/sec 1.437 ms 50/ 110 (45%) La rete è congestionata e metà dei datagrammi nei gruppi viene persa
  • 10. POSSIBILI MODIFICHE Dimensione della finestra TCP (-w) Il valore teorico minimo da usare corrisponde al prodotto Banda minima * RTT Dimensione MSS – Maximum Segment Size (-M) Iperf attraverso l’opzione –m fornisce l’MTU che vincola la dimensione dei pacchetti a seconda del protocollo utilizzato (gli host devono supportate Path MTU Discovery) 06/01/15Quaresimin Michele - Iperf10 iperf -s -p 59875 -m ------------------------------------------------------------ Server listening on TCP port 59875 TCP window size: 85.3 KByte (default) ------------------------------------------------------------ [ 4] local 192.168.0.3 port 59875 connected with 82.54.227.147 port 35415 [ ID] Interval Transfer Bandwidth [ 4] 0.0-13.9 sec 504 KBytes 297 Kbits/sec [ 4] MSS size 1440 bytes (MTU 1500 bytes, ethernet)
  • 11. ULTERIORI MODIFICHE Multithreading – Flussi TCP paralleli (-P) Se la banda aggregata totale è maggiore di quella calcolata su un flusso sequenziale, qualcosa non va (probabilmente la finestra è troppo piccola) Multicast UDP (Binding al gruppo) Servizio di sistema IPv6 06/01/15Quaresimin Michele - Iperf11 iperf -s -p 59875 -w 300k ------------------------------------------------------------ Server listening on TCP port 59875 TCP window size: 256 KByte (WARNING: requested 300 KByte) ------------------------------------------------------------ [ 7] local 192.168.0.3 port 59875 connected with 82.54.227.147 port 39804 [ 4] local 192.168.0.3 port 59875 connected with 82.54.227.147 port 39805 [ 5] local 192.168.0.3 port 59875 connected with 82.54.227.147 port 39806 [ 4] 0.0-21.6 sec 256 KBytes 97.1 Kbits/sec [ 7] 0.0-23.3 sec 384 KBytes 137 Kbits/sec [ 5] 0.0-23.3 sec 256 KBytes 84.9 Kbits/sec [SUM] 0.0-24.7 sec 896 KBytes 297 Kbits/sec
  • 12. CONCLUSIONI Le precedenti prove che hanno stimato circa una banda, sia lato client che lato server, compresa tra 250-300 Kb/s corrisponde alle attese (linee ADSL 2-4 Mb) Iperf è utilizzato in controlli ufficiali per verificare se il throughput dichiarato da un’azienda che fornisce servizi di comunicazione rispecchia la reale banda Peccato! Il sito originale del progetto è offline 06/01/15Quaresimin Michele - Iperf12