User Tools

Site Tools


Sidebar

Writing /var/www/html/john.de-graaff.net/webroot/wiki/data/cache/0/0092a5a5c3ee73bac6ab0dd9af271dca.metadata failed
Writing /var/www/html/john.de-graaff.net/webroot/wiki/data/cache/b/b94b6a665c58cc929457e4b81b260c2e.metadata failed
Writing /var/www/html/john.de-graaff.net/webroot/wiki/data/cache/b/b94b6a665c58cc929457e4b81b260c2e.xhtml failed

img_6759_face.jpg .

Info

Links

links:iperf
Writing /var/www/html/john.de-graaff.net/webroot/wiki/data/cache/0/0092a5a5c3ee73bac6ab0dd9af271dca.xhtml failed

iperf

  • iperf (short for “IP performance”) is a client/server throughput (bandwidth) measurement tool
  • iperf uses a TCP-connection (by default) to sent traffic at maximum possible speed and measuring the capacity (troughput or bandwidth) of the connection.
    This is similar to a file-download (or upload) and calculating the bandwith by dividing the file-size by the copy duration.
  • Advantages of iperf (compared to a file-copy):
    • no need to create a large file and manual copying
    • bandwidth calculation is automatic and is shown at certain intervals (configurable)
    • test upload and download sequentially or concurrently
    • test upload and download with multiple parallel channels

Example

Example of a Windows client and a server on a 100 Mbps LAN :

Note that 94 Mbps is the maximum TCP-performance that you can expect on a 100 Mbps Ethernet connection, because you loose approximately 6% of bandwidth due to protocol and header overhead.

To put it this way: Layer-4 (TCP) bandwidth = 94% of Layer-2 (Ethernet) bandwidth

Technically:

  • layer-4 (TCP) bandwidth is called “throughput”,
    that is including protocol-overhead, transmit delays and retransmissions due to packet-loss.
  • layer-2 (Ethernet) bandwidth is the “line-speed” (eg. 10/100/1000Mbps)

Download iperf for Windows

Check the MD5-checksum if you want to verify the file integrity:

md5sum iperf-1.7.0-win32.exe 
624b6717901c90f3ca254f2f91ab15f3  iperf-1.7.0-win32.exe

iperf info

iperf usage

Typical usage server-side:

iperf -s -w64000 -i1

Typical usage client-side:

iperf -c 12.12.1.1 -w64000 -i1 -t5 -r

Options:

-s       Server mode (listening)
-c <ip>  Client mode, connect to <ip>
-i 1     Display speed each 1 second
-m       Display MSS and MTU (when done)
-w 64k   Change TCP Windows size (helps on Windows hosts)
-t 4     Run 4 secs instead of default 10 sec
-r       do Reverse: first push Client->Server,
         then pull Client<-Server 
         (use to test symmetricy bandwidth and duplex mismatches)
-d       do Dual: push and pull at the same time 
         (test full-duplex)
-P 4     use 4 channels parallel (default 1) (note: 'P' is capital)

Notes

  • iperf default TCP-port is 5001
  • TCP-connection (SYN) is “client → server”
  • Stream is “client → server”, so data-PUSH from client→server.
    So from client perspective this is upload bandwidth!
    (use -r to test sequentially upload and then download)
/var/www/html/john.de-graaff.net/webroot/wiki/data/pages/links/iperf.txt · Last modified: 2019/03/06 07:33 (external edit)