Iperf èjperf-2.0.2 uno strumento per misurare l’ampiezza di banda di cui avevo già accennato qui. Il sito originale nel frattempo è sparito ma si trovano parecchi tutorial, dei quali vi segnalo questo. Per fortuna il progetto non è stato del tutto abbandonato e sebbene il codice originale sia sempre lo stesso, Google Code ospita JPerf.

Si tratta di un frontend grafico pensato per semplificare l’utilizzo di Iperf e aggiungere dei grafici abbastanza gradevoli. Permette di salvare risultati e configurazione mentre per i grafici ci si deve arrangiare con uno screenshot, almeno al momento. Si basa su Java ed è quindi multipiattaforma.

Molto utile per la redazione delle relazioni tecniche, croce e deliza dei sistemisti; ha il vantagio di produrre risultati abbastanza comprensibili anche per i non addetti ai lavori, perlomeno con le impostazioni predefinite.

Tags: , , , , ,
Di: Andrea - 24/09/2009

Iperf è uno strumento per misurare l’ampiezza di banda su TCP, abbastanza flessibile, open source e disponibile per diversi sistemi operativi.

Ecco le caratteristiche:

  • TCP
    • Measure bandwidth
    • Report MSS/MTU size and observed read sizes.
    • Support for TCP window size via socket buffers.
    • Multi-threaded if pthreads or Win32 threads are available. Client and server can have multiple simultaneous connections.
  • UDP
    • Client can create UDP streams of specified bandwidth.
    • Measure packet loss
    • Measure delay jitter
    • Multicast capable
    • Multi-threaded if pthreads are available. Client and server can have multiple simultaneous connections. (This doesn’t work in Windows.)
  • Where appropriate, options can be specified with K (kilo-) and M (mega-) suffices. So 128K instead of 131072 bytes.
  • Can run for specified time, rather than a set amount of data to transfer.
  • Picks the best units for the size of data being reported.
  • Server handles multiple connections, rather than quitting after a single test.
  • Print periodic, intermediate bandwidth, jitter, and loss reports at specified intervals.
  • Run the server as a daemon.
  • Run the server as a Windows NT Service
  • Use representative streams to test out how link layer compression affects your achievable bandwidth.
  • A library of useful functions and C++ classes.

Permette di controllare l’effetto della variazione di diversi parametri tipo la TCP windows size o l’MTU, supporta IPV6 e ha diverse opzioni per girare come demone o servizio.

Senza scendere in usi troppo esoterici è utile per controllare la banda a disposizione tra due siti connessi via WAN e/o VPN. L’uso più semplice è lanciare

iperf -s

sull’host “server” e

iperf -c IP_HOST_SERVER

sul client, e dopo qualche secondo apparirà il responso. La porta di default su cui deve poter essere raggiunto il server è la 5001/TCP. Ripetere in senso inverso per valutare le performance nei due sensi della connessione. (Vi ricordo che la “A” di ADSL sta per “Asymmetric”).

Tags: , , , , ,
Di: Andrea - 10/04/2008