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