You are viewing an old version of this page. View the current version.
Compare with Current
View Page History
« Previous
Version 54
Next »
WiscNet hosted speedtest.net
For a quick and easy speed test you may use WiscNet's HTML based browser test here speedtest.wiscnet.net.
WiscNet hosted Iperf
Iperf is a network testing tool used to help measure network throughput. It's developed by ESnet / Lawrence Berkeley National Laboratory. For more information please visit http://software.es.net/iperf/ and https://github.com/esnet/iperf
Click here to expand technical details...
Overview
- Iperf is an open source tool. There are clients for Mac, Linux, BSD, etc. There is a port for Windows; however, in our testing we found it to lack certain features and to lag in performance.
- Iperf operates where one end is the client, the other is the server.
WiscNet Server Details
TCP vs UDP Testing
Iperf uses TCP by default. TCP has built in congestion avoidance. If TCP detects any packet loss, it assumes that the link capacity has been reached, and it slows down. This works very well, unless there is packet loss caused by something other than congestion. If there is packet loss due to errors, TCP will back off even if there is plenty of capacity. iperf allows TCP to send as fast as it can, which generally works to fill a clean, low latency link with packets. If a path is not clean/error free or has high latency, TCP will have a difficult time filling it. For testing higher capacity links and for links with higher latency, you will want to adjust the window size (-w option).
- By using the -u option, you have told iperf to use UDP packets, rather than TCP. UDP has no built in congestion avoidance, and iperf doesn't implement it either. When doing a UDP test, iperf requires that the bandwidth of the test be specified. If it isn't, it defaults to 1Mb/s. You can use the -b option to specify bandwidth to test. iperf will then send packets at the request rate for the requested period of time. The other end measures how many packets are received vs how many were sent and reports its results.
Some Common Iperf Flags
- Enter iperf -h or man iperf depending on your operating system. Here are some common flags:
Flag | Details | Example |
---|
-c | Client mode | -c |
-t | Time to run the test in seconds | -t 30 |
-P | Number of parallel connections | -P 2 |
-u | UDP (default is TCP) | -u |
-b | Bandwidth per thread | -b 250m |
-i | Interval between bandwidth reports in seconds | -i 1 |
-L | Listen on port | -L 5001 |
-r | bidirectional test (individually) | -r |
-d | bidirectional test (simultaneously) | -d |
Unidirectional UDP 1Gbps circuit test
Command
iperf -c iperf.wiscnet.net -t 10 -P 4 -u -b 250m -i1
Results
Click here to expand results...
When runing multiple threads you must look at the SUM lines for total throughput. Output below shows successfully getting 953Mbits/sec through
Bidirectional UDP 1Gbps circuit test
Command
iperf -c iperf.wiscnet.net -t 10 -P 4 -u -b 250m -i1 -r
Installation Guides
Apple macOS
Click here to expand the MacOS example...
macOS - Install
iMac:~ $ cd Downloads/iperf-2.0.5-macos-x86_64
iMac:iperf-2.0.5-macos-x86_64 $ ls -lh
total 176
-rw-r--r-- 1 staff 693B Feb 20 2011 README
drwxr-xr-x@ 8 staff 272B Feb 20 2011 doc
-rwxr-xr-x@ 1 staff 78K Feb 20 2011 iperf
-rw-r--r--@ 1 staff 3.7K Feb 20 2011 iperf.1
macOS - Example
iMac:iperf-2.0.5-macos-x86_64 $ ./iperf -c iperf.wiscnet.net
------------------------------------------------------------
Client connecting to iperf.wiscnet.net, TCP port 5001
TCP window size: 128 KByte (default)
------------------------------------------------------------
[ 5] local 10.0.10.100 port 51961 connected with 205.213.14.56 port 5001
[ ID] Interval Transfer Bandwidth
[ 5] 0.0-10.0 sec 184 MBytes 154 Mbits/sec
iMac:iperf-2.0.5-macos-x86_64 $
Unix/Linux
Click here to expand the Ubuntu example...
Many Lunix and Unix distros will have iperf in official repositories. Make sure to install iperf2 (iperf), not iperf3, to have compatability with WiscNet's iPerf server.
Ubuntu - Install
$ apt-cache search iperf | grep -i iperf
iperf - Internet Protocol bandwidth measuring tool
iperf3 - Internet Protocol bandwidth measuring tool
$ sudo apt-get install iperf
Ubuntu - Example
user@Latitude-E7440:~$ iperf -c iperf.wiscnet.net -t 10 -P 4
------------------------------------------------------------
Client connecting to iperf.wiscnet.net, TCP port 5001
TCP window size: 85.0 KByte (default)
------------------------------------------------------------
[ 4] local 10.0.10.168 port 37014 connected with 205.213.14.56 port 5001
[ 3] local 10.0.10.168 port 37010 connected with 205.213.14.56 port 5001
[ 6] local 10.0.10.168 port 37016 connected with 205.213.14.56 port 5001
[ 5] local 10.0.10.168 port 37012 connected with 205.213.14.56 port 5001
[ ID] Interval Transfer Bandwidth
[ 4] 0.0-10.0 sec 266 MBytes 222 Mbits/sec
[ 5] 0.0-10.0 sec 264 MBytes 221 Mbits/sec
[ 3] 0.0-10.0 sec 278 MBytes 233 Mbits/sec
[ 6] 0.0-10.0 sec 310 MBytes 259 Mbits/sec
[SUM] 0.0-10.0 sec 1.09 GBytes 934 Mbits/sec
user@Latitude-E7440:~$
Microsoft Windows
Click here to expand the Windows example...
Windows - Install
cd \Users\Administrator\iperf-2.0.10-win\
dir
Windows - Example