Years ago (maybe 7 or better) I found a cool utility with a small footprint for testing bandwidth.  You could expose this to the WAN if you wanted to and let others test their bandwidth against yours which is what Rutgers seems to be doing but don’t abuse them or you’ll be whacked! :P

I also downloaded iperf from their website and at the time of posting this supposedly you could get it from iperf’s homepage but it doesn’t seem to be working for me.  You might also have luck at Sourceforge.

* Update:  It seems that iperfs homepage is dead, the Rutgers team no longer has the Windows IPerf download on their server and Sourceforge only has the source and no Windows Binary.  FORTUNATELY FOR YOU I still have the Windows Binary of IPerf I downloaded when the link did work from Rutgers, it’s the older 1.7 version BUT it still works and might help you out.

Download it here:  Link to iperf-1.7.0-win32.exe

If anyone else has a link to the 2.x Windows binary feel free to share, I don’t feel compelled to compile it myself but maybe I’ll get around to it, we’ll see :p

To use it you need to make sure that port 5001 is open (unless you specify another port), you can adjust that with the port command to use a different port.  By the way, this is all for Windows users.  I haven’t used it on Linux but maybe the commands port over 1 for 1?

Basic commands for iperf:

Get command line help with iperf:  iperf –help

Makes an iperf ‘server’ clients will connect to:  iperf -s

You’ll see this output:

Server listening on TCP port 5001
TCP window size: 8.00 KByte (default)

* Also note the default listen port is 5001 with this command

Makes an iperf server listen on port 80:  iperf -s -p 80

To end the program use control C like you typically would in windows to break a batch file or command line action.

There are many more options for iperf that I haven’t used like making it a daemon (service) with the -D option, changing how it reports transfer bandwidth in Mb, KB or MB’s, you can create an output interval, etc.  It’s a nice tool to use!

On the other PC (the client) you simply type this command to connect:

iperf -c yourserver

* You can type in an IP, a host name or ‘localhost’ like I did for my test.

My output for localhost was:

[1900] local 127.0.0.1 port 5001 connected with 127.0.0.1 port 4194
[ ID] Interval       Transfer     Bandwidth
[1900]  0.0-10.0 sec  2.39 GBytes  2.05 Gbits/sec