ttcp - test TCP and UDP performance
SYNOPSIS
ttcp -t [-u] [-s] [-p port] [-l buflen] [-b size] [-n num
bufs] [-A align] [-O offset] [-f format] [-D] [-v] host
[<in]
ttcp -r [-u] [-s] [-p port] [-l buflen] [-b size]
[-A align] [-O offset] [-f format] [-B] [-T] [-v] [>out]
DESCRIPTION
Ttcp times the transmission and reception of data between
two systems using the UDP or TCP protocols. It differs
from common ``blast'' tests, which tend to measure the
remote inetd as much as the network performance, and which
usually do not allow measurements at the remote end of a
UDP transmission.
For testing, the transmitter should be started with -t and
-s after the receiver has been started with -r and -s.
Tests lasting at least tens of seconds should be used to
obtain accurate measurements. Graphical presentations of
throughput versus buffer size for buffers ranging from
tens of bytes to several ``pages'' can illuminate bottle
necks.
Ttcp can also be used as a ``network pipe'' for moving
directory hierarchies between systems when routing prob
lems exist or when the use of other mechanisms is undesir
able. For example, on the destination machine, use: ttcp
-r -B | tar xvpf -
and on the source machine: tar cf - directory | ttcp -t
dest_machine
Additional intermediate machines can be included by: ttcp
-r | ttcp -t next_machine
OPTIONS
-t Transmit mode.
-r Receive mode.
-u Use UDP instead of TCP.
-s If transmitting, source a data pattern to net
work; if receiving, sink (discard) the data.
Without the -s option, the default is to trans
mit data from stdin or print the received data
to stdout.
-l length Length of buffers in bytes (default 8192). For
UDP, this value is the number of data bytes in
each packet. The system limits the maximum UDP
the -b option.
-b size Set size of socket buffer. The default varies
from system to system. This parameter affects
the maximum UDP packet length. It may not be
possible to set this parameter on some systems
(for example, 4.2BSD).
-n numbufs
Number of source buffers transmitted (default
2048).
-p port Port number to send to or listen on (default
2000). On some systems, this port may be allo
cated to another network daemon.
-D If transmitting using TCP, do not buffer data
when sending (sets the TCP_NODELAY socket
option). It may not be possible to set this
parameter on some systems (for example, 4.2BSD).
-B When receiving data, output only full blocks,
using the block size specified by -l. This
option is useful for programs, such as tar(1),
that require complete blocks.
-A align Align the start of buffers to this modulus
(default 16384).
-O offset Align the start of buffers to this offset
(default 0). For example, ``-A8192 -O1'' causes
buffers to start at the second byte of an
8192-byte page.
-f format Specify, using one of the following characters,
the format of the throughput rates as kilo
bits/sec ('k'), kilobytes/sec ('K'),
megabits/sec ('m'), megabytes/sec ('M'), giga
bits/sec ('g'), or gigabytes/sec ('G'). The
default is 'K'.
-T ``Touch'' the data as they are read in order to
measure cache effects.
-v Verbose: print more statistics.
-d Debug: set the SO_DEBUG socket option.
SEE ALSO
ping(1M), traceroute(1M), netsnoop(1M)
Man(1) output converted with
man2html