TestPipe is a pair of bandwidth measuring binaries that are client (ssend) and server (srecv). They pipe data across a connection without reading or writing it to disk. Because the systems are not reading/writing to disk they are only bound by CPU and network bandwidth, and therefore represent a more accurate measurement of network performance.

TestPipe was designed and intended for measuring high bandwidth (TCP/IP) interconnects where filling bandwidth with a file as a source or destination tends to interfere with the measurement when the disk transfer speed is less than the interconnect.

Here is the help output from the commands:

$ ssend -h
ssend - A network stream writer used with srecv.
  Version: 0.11.0

  Usage: ssend [options] <address>

   -d <size>  Set the packet send size to <size> bytes.
   -p <port>  Set the port number to <port>.
   -s <size>  Send a total of <size> Meg of data.
   -t <time>  Send data for <time> seconds.

$ srecv -h
srecv - A network stream reader used with ssend.
  Version: 0.11.0

  Usage: srecv [options] <address>

   -p <port>  Set the port number to <port>.

The Distribution:

The distribution is C source and a number of pre-compiled binaries.

Latest Source:



RHEL 4 ssendsrecv Original port.
Fedora Core 5 ssendsrecv 
AIX 5.3 ssendsrecv Compiled with gcc (not VAC).
Sparc Solaris 10 ssendsrecv 
OS X 10.4 ssendsrecv Universal binaries.
FreeBSD 6.1 ssendsrecv 

This code is released under the GNU license.

Application Notes: