Site icon port135.com

What are iperf, jperf and xjperf? How to use them to test network performance?

iperf -s
iperf --help

Iperf is a very helpful tool written in C++ to measure network bandwidth and quality. It can be used to analyze both TCP and UDP traffic.

Jperf or Xjperf (both of them are the same thing. Don’t confuse about the difference) equip Iperf with graphical interface. If you don’t like to spend your time by command line, use Jperf.

I am going to give you some information about Iperf and Jperf. First of all, the project links of these tools are here:

Quick Iperf Example:

Iperf is an “exe” file (I am talking about Windows of course. If you are wonder about Iperf on Linux, see last section of this article). Download this exe file by here or here. Open a command prompt (Start > Run > cmd). Go to folder which exe file is in.

We are beginning to study Iperf

It can be used as server or client. I mean the same exe file can be server or client.

Iperf as server
Iperf as client

As you see above, average bandwidth is 13.0 Mbits/sec in this example. To find out that, Iperf has sent 15.5 MBytes in 10 seconds.

More on Iperf

Indeed, Iperf is not easy as It seems. There are almost 30 commands for Iperf. To see all commands, use this command:

iperf --help
Iperf commands

In this case, we want to test our download and upload speed for TCP by specific windows size, interval and time.

Testing download speed:

Here is the environment:

The key point is client sends packets to server (Client generates network traffic). So:

Testing download speed for Computer1

Write these commands for the test:

Do not forget to write your IP address instead of IPaddress

After that, command lines are going to be like that:

After TCP download test for Computer 1. This screenshot is from Iperf client (Computer 2)
After TCP download test for Computer 1. This screenshot is from Iperf server (Computer 1)

As you see, totally 29.2 MB has been sent in 10 seconds. Average speed is 24.3 Mbits/sec.

Testing upload speed:

The environment is going to be the same with “testing download speed” section but iperf server and client computers should change.

Testing upload speed for Computer1

Write these commands for the test:

Do not forget to write your IP address instead of IPaddress!

After that, command lines are going to be like that:

After TCP upload test for Computer 1. This screenshot is from Iperf server (Computer 2)
After TCP upload test for Computer 1. This screenshot is from Iperf client (Computer 1)

As you see, totally 12.6 MB has been sent in 10 seconds. Average speed is 10.4 Mbits/sec.

UDP Test

You need to -u parameter for UDP test. You can see jitter (delay correlation) and data gram. Here is a quick example.

UDP test result of Iperf client
UDP test result of Iperf server

Iperf on Linux

To install Iperf on Linux, use these commands:

wget http://78.40.227.80/~depo/iperf-2.0.5.tar.gz
tar xvfz iperf-2.0.5.tar.gz
cd iperf-2.0.5
./configure
make
&& make install

Commands are the same as commands on Iperf Windows version. Just be aware of default windows packet size (It is 85.3 KB).

Iperf on Linux

Jperf

Jperf installation is as easy as regular program installation on Windows. Just you need to JDK or JRE first of all.

Jperf UI

Notes

 

iperf -c IPaddress -i 1 -t 20 -w384K > c:\output.txt

Enjoy!

If you have any question, send a comment guys. I am working hard with Iperf nowadays.

Exit mobile version