Network Performance – iPerf and jperf

I recently setup my new laptop and wanted to test the network connection. I have had some issues with the speed and performance on wireless with the new T410. My home network has both a G wireless and N wireless network available. I have been seeing poor performance on the new thinkpad, while the old T61 would get almost twice the performance. I wanted to test this, and found a great tool iperf to allow me to validate my concern (I have since learned that the wireless cart in the t410 is a bit suspect)

iperf is a little gem to have for testing. It is a network packet generation tool that will allow you to measure bandwidth. It has a server and a client portion.

You can read about iperf here: http://en.wikipedia.org/wiki/Iperf
I used a quick tutorial from Linhost.info http://linhost.info/2010/02/iperf-on-windows/ to get the install going. I had 2 cases I wanted to test. My new laptop to another box on the wireless network and my laptop to a pc on the wired network. (both G and N).

First Step was to download the application. I got it from here. UCF.edu: (https://nocweboldcst.ucf.edu/files/iperf.exe)

To run you only need to open a command prompt (start | run | cmd) and change directory to where you saved the file.

I needed to run iperf on both a windows and a linux box. The install for windows is simply download and run the iperf.exe. On linux I needed to grab the latest release. I am running ubuntu so it can simply be done by running sudo apt-get install iperf

To configure the the server side of iperf you only need to run the command iperf -s (both on linux and windows). To allow this to work on linux I needed to open port 5100. To do this on ubuntu I ran the following command to open ufw.
sudo ufw allow 5100

To test I ran iperf -s on both the ubuntu and my windows pc on the network.
On the client machine, the T410 laptop in my case I ran

iperf -c 192.168.2.22 (this calls iperf with the client switch and the name of the server to communicate with-192.168.2.22).
Here are the results of the Ubuntu box on the wireless network
Client

The results were: (6.67 Mbits/sec)
Interval Transfer Bandwidth
0.0-10.0 sec 7.96 MBytes 6.67 Mbits/sec
Server

I then ran the same test to the PC on the LAN directly to the wireless AP. This resulted in 14.8 Mbits/sec

From my test results I can see that using the G network is only getting me about 2Mbits per second. However connecting to a wired pc through the G network results in about 14Mbits per seconds.

To be a bit more robust in testing I had the Linux box run the test to the windows PC as well.

this shows that 2 wireless clients do not get that great of throughput between them.

To round out this post there is also a graphical element to iperf (jperf) it is written java and can be downloaded at Google Code http://code.google.com/p/xjperf/downloads/detail?name=jperf-2.0.2.zip&can=2&q=

Once you download and extract the files you can run jperf.bat to launch the application.
Here is a screen capture of jperf running on the Laptop connecting to the Windows PC on the LAN

Overall iperf has been a great tool to help diagnose issues with network latency and bandwidth.

7 thoughts on “Network Performance – iPerf and jperf”

  1. Hi,
    can you please let me know if jperf can also be run on a linux machine?

    thanks

  2. Thanks for the reply
    I have downloaded Jperf from the link you mentioned.

    Its a zip file and contains .bat and .sh files
    When I “double click” on the .bat it gives me an error message saying ” The file is of unknown type”
    How do I run the tool in Ubuntu 12.04?

    Please help

    Thanks
    Anantharaman

  3. If I remember to install I had to have the java jre. That was a pain to install. Once that was there the usage was pretty straight forward.

Leave a Comment