Wednesday, 1 February 2017

iperf:Network performance measuring tool

 Iperf is a commonly used network testing tool that can create Transmission Control Protocol (TCP) and User Datagram Protocol (UDP) data streams and measure the throughput of a network that is carrying them.

 Installation

 wget http://downloads.es.net/pub/iperf/iperf-3.0.11.tar.gz
gunzip -c iperf-3.0.11.tar.gz | tar xopf –
cd iperf-3.0.11
./configure
make
make install
export PATH=$PATH:/home/opc/iperf-3.0.11/src

Test execution

Assume that we need to measure network performance between machines “A” and “B”

Scenario#1:- A:client B:server
 In this scenario A sends data to B.B acts as a receiver 
  • Step#1: Start the listener in B(server)

          iperf3 –s –p {port number}

 

  • Step#2: start the client (machine A) 

     

    iperf3 –c  {machine B ip} –p {port number}  –i  1 –t 90 –O 30 –w 1.5M –P 1 

     

    i:how frequently we want to collect the data(in our example its 1s)
    t:test duration in sec(in our example its 90s)
    O:omits the results  for those many second(in our example its 30s)
    w:tcp window size for sender and receiver
    P:Number of parallel threads you want to run(in our example its 1)
Parameter in sysctl which are related to tcp are "net.core.wmem_max,  net.core.rmem_max,  net.ipv4.tcp_window_scaling,  net.ipv4.tcp_wmem,  net.ipv4.tcp_rmem".

 http://www.slashroot.in/iperf-how-test-network-speedperformancebandwidth

No comments:

Post a Comment