Server Fault is a question and answer site for system and network administrators. It's 100% free, no registration required.

Sign up
Here's how it works:
  1. Anybody can ask a question
  2. Anybody can answer
  3. The best answers are voted up and rise to the top

I need a tool to stress test our network in between two machines.

The app should send out a packet to machine 2, machine 2 should send it back, machine 1 verifys the packet is correct, generates a new packet and the process starts all over.

Anyone know of such an app?


locked by HopelessN00b Dec 5 '14 at 11:39

This question exists because it has historical significance, but it is not considered a good, on-topic question for this site, so please do not use it as evidence that you can ask similar questions here. This question and its answers are frozen and cannot be changed. More info: help center.

mind letting us know what type of machines you're using? until then we're all left guessing which answer is best. – Patrick R Feb 12 '10 at 13:40
up vote 13 down vote accepted

You want iperf. It's super tiny, cross platform, and dead simple to use.


If you are talking about 2 Windows boxes, I like NTTTCP:

NTttcp is a multithreaded, asynchronous application that sends and receives data between two or more endpoints and reports the network performance for the duration of the transfer. It is essentially a Winsock-based port of the ttcp tool that measures networking performance in terms of bytes transferred per second and CPU cycles per byte. Because it can be difficult to diagnose a system's overall performance without dividing the system into smaller subsystems, NTttcp allows users to narrow the focus of their testing and investigation to just the networking subsystem.


It depends on what protocol you want to "stress test".

Ping (as already mentioned) for ICMP, but this is primarily for establishing that you have some sort of connectivity.

To load a network and see how fast it will go, TTCP (PCATTCP if on windows: as long as your protocol is TCP/IP.

Also MTR is a great command for troubleshooting intermittent connectivity issues. If on windows, PingPlotter (not as robust as MTR).


This is exactly what "ping" does.

I would bet a hundred dollars your system already has ping installed!

Note that most versions of ping in modern releases have a flag that lets you set a "data pattern" for detecting specific bit errors.

The following is from the ping man-page:

   -p pattern
          You  may  specify  up to 16 â?~â?~padâ?Tâ?T bytes to fill out the packet
          you send.  This is useful for diagnosing data-dependent problems
          in  a network.  For example, -p ff will cause the sent packet to
          be filled with all ones.

Generally, sending all ones or all zeros will flesh out a hardware problem that has to do with the dropping of bits.



I recommend IXChariot. It can reproduce the flows of your app, on your ports. Simple to use and pretty cost effective for an all software implementation of a network test tool.

IxChariot Website

I don't sell it. I don't service it. I just find it to be an enormously cool and useful tool


Not the answer you're looking for? Browse other questions tagged or ask your own question.