18
votes

What are some of the better tools/utilities for testing real bandwidth across a link? In my case I am testing the real throughput across a wifi bridge.

8 Answers 8

22
votes

I find iperf to be one of the more useful utilities to test point-to-point bandwidth. It has many options to test over tcp/udp, with udp it can tell you how much jitter there was. Ports of iperf are available for almost every OS.

I also like testing with NDT, but it is isn't quite as easy to work with as iperf since NDT basically has to be setup as a server somewhere, and the client must have java installed.

3
  • 1
    While iperf gives you the best possible transfer rates, it could be added that it makes debugging whether the issue is related to the protocol or configuration or the actual link itself.
    – Chealion
    May 6, 2009 at 6:10
  • 3
    Notes to others: on machine A (iperf -s) on machine B(iperf -c machineAname)
    – John M
    Jan 27, 2012 at 20:22
  • There's a neat graphical frontend to iperf called xjperf
    – Ben
    May 19, 2012 at 7:11
6
votes

I would pipe something like /dev/urandom (or /dev/zero to test the devices' compression if any) across using two *nix machines.

Listen and pipe to /dev/null on one machine

nc –l –p 7000 | /dev/null

Connect and pipe 100MiB of random data on the other

dd if=/dev/urandom bs=1M count=100 | nc 192.168.1.120 7000 –q 10

For realtime stats use pipeviewer

dd if=/dev/urandom bs=1M count=100 | pv | nc 192.168.1.120 7000 -q 10
3
  • 1
    The bottleneck in this case could very likely be /dev/urandom. Although a data source that is hard to compress makes sense when testing an unknown path, a less-expensive random number generator should be considered.
    – carlito
    Jun 1, 2009 at 19:44
  • Streaming MP3s might be an alternative Jul 18, 2011 at 20:35
  • Or just build your 100MiB of random data beforehand, and then pass it to netcat's stdin. You can reuse it to make your later tests more comparable, too.
    – nickgrim
    Sep 21, 2012 at 10:48
3
votes

Here's a brute-force and ignorance approach...

Many command-line FTP clients report transfer statistics, so you could simply use FTP to GET or PUT a large enough file for the statistics to be meaningful.

1
vote

IxChariot. Not free, but it can simulate all kinds of traffic. SmallNetBuilder.com uses it for their product tests.

1
vote

What do you consider "real network throughput?" This depends entirely upon your network's function and your users' needs.

For example, bandwidth is not going to be a defining attribute of how your network performs if you have six users that are not permitted to stream video/audio or transfer files. In that case, once you have enough bandwidth for their standard traffic more is simply a waste.

Benchmarks are useful for determining weak spots in your network, but you shouldn't take them as a reflection of user experience unless they mimic your users' traffic patterns.

If you're just trying to figure out how much bandwidth you can push through wireless bridge before it falls over, you really can't beat iperf and FTP (though you may need a couple machines testing at the same time). Remember to test bidrectional traffic as well.

If you're interested in figuring out projected user experience, we'll need some more information.

1
vote

I have used PCATTCP to test straight throughput. The program is set to receive on one computer, and then the other computer transmits.

http://www.pcausa.com/Utilities/pcattcp.htm

0
0
votes

You can use D-ITG software. It's free and can be downloaded from http://www.grid.unina.it/software/ITG/

I have used it to test several computers connected in a network with various operating system. Throughput, jitter and delay can be easily measured.

0
votes

A commercial alternative is Netrounds (www.netrounds.com). It is a cloud-service (SaaS) which means there is no investments. There is also a free 30 day trial.

It uses active probe appliances, which are easily downloaded. These probes use an optimized Linux kernel for highest performance and best control of the network hardware.

Netrounds can generate and measure up to 10 Gbit/s using standard PC hardware, both TCP and UDP (even multicast). Support for VLANs and multiple QoS streams.

2

You must log in to answer this question.

Not the answer you're looking for? Browse other questions tagged .