echoping(1)		     echoping		      echoping(1)


NAME
       echoping - tests a remote host with TCP or UDP


SYNOPSIS
       echoping	 [-vudcrC]  [-s number]	 [-n number]  [-w number]
       [-t number] [-h URL] [-i URL] [-S] hostname [:port]


DESCRIPTION
       echoping is a small program to test (approximatively) per-
       formances  of  a	 remote	 Internet  host by sending it TCP
       "echo" packets. It can use other protocols as well (HTTP -
       which  makes  it	 a  good  tool	to  test Web servers, UDP
       "echo", etc).

       echoping simply shows the elapsed time, including the time
       to  set	up  the	 TCP connection and to transfer the data.
       Therefore, it is unsuitable to physical line raw	 through-
       put measures (unlike bing or treno). On the other end, the
       action it performs are close from, for  instance,  a  HTTP
       request and it is meaningful to use it (carefully) to mea-
       sure Web performances.


ARGUMENT
       hostname[:port]
	      Name of the server to test. For HTTP, you can spec-
	      ify a port number.


OPTIONS
       -v     Verbose

       -s nnn Size  of the data to send. Large values can produce
	      strange results with some echo servers.

       -n nnn Numbers of repeated tests. With  this  option,  you
	      have  also the minimum, maximum, average and median
	      time. The median is the value such that half of the
	      measures	are under it and the other half is above.
	      When you measure highly variables values,	 like  it
	      is  often the case on the whole Internet, median is
	      better than average to avoid  "extreme" values.

       -w nnn Number  of  seconds  to  wait  between  two   tests
	      (default is one)

       -t nnn Number of seconds to wait a reply before giving up.
	      For TCP, this is the maximum number of seconds  for
	      the whole connection (setup and data exchange).

       -u     Use UDP instead of TCP

       -d     Use the "discard" service instead of echo

       -c     Use the "chargen" service instead of echo

       -h url Use  the	HTTP  protocol	(instead of echo) for the
	      given URL. The URL has to be a  relative	one  (for
	      instance	'/'  or	 '/pics/foobar.gif') because HTTP
	      1.0 servers will not understand a	 request  for  an
	      absolute URL.

       -i url Use  the	ICP  protocol  (instead	 of echo) for the
	      given URL. The URL has to be an absolute one.  This
	      is mostly for testing Squid Web proxy/caches.

       -C     Use the SSL (cryptography) protocol. For HTTP tests
	      only.

       -S     Use the SMTP protocol (instead  of  echo)	 for  the
	      given server.

       -r     Use  T/TCP  (if  it has been compiled with it). See
	      the INSTALL file for details.

       -f character
	      Fill the packet with  this  character  (default  is
	      random filling)

       -p n   Send  packets with the socket priority to the inte-
	      ger n.  The mapping of the socket priority  into	a
	      network layer or a link layer priority depends upon
	      the network protocol and link protocol in use.  For
	      more details see SO_PRIORITY in socket(7).

       -P n   Set the IP type of service octet in the transmitted
	      packets to the least significant eight bits of  the
	      integer n.

EXAMPLES
       echoping -v foobar.example.com
	      Tests  the remote machine with TCP echo (one test).

       echoping -n 5 -w 10 foobar.example.com
	      Tests the remote machine with TCP echo (five tests,
	      every ten seconds).

       echoping -h / foobar.example.com
	      Tests the remote Web server and asks its home page.
	      Note you don't indicate the whole URL.

       echoping -h http://www.example.com/ cache.example.com:3128
	      Tests  the  remote  Web  proxy-cache and asks a Web
	      page. Note that you must indicate the whole URL.

       echoping -u -P 0xa0 foobar.example.com
	      Sends several UDP Echo packets with  an  IP  Prece-
	      dence of 5.

IP TYPE OF SERVICE OCTET
       The  IP	packet header contains 8 bits named the The value
       of the octet is set with the -P option.	 The  effects  of
       the  octet are defined differently in RFC791 Internet Pro-
       tocol and RFC2474 Definition of	the  Differentiated  Ser-
       vices Field (DS Field) in the IPv4 and IPv6 Headers.

       RFC791 defines Precedence which has ascending priorities 0
       through to 7, and the bits Delay, Throughput, Reliability,
       and  Cost which indicates the application's preference for
       the properties of the packet's path through  the	 network.
       Precedence  is  in  the most significant three bits of the
       type of service octet, followed in decending  significance
       order  by  the  D, T, R and C bits.  The least significant
       bit must be zero.  Only one of the D, T, R or C	bits  may
       be set.

       RFC2474	defines	 the  Distributed Services Code Point, or
       DSCP.   This  acts  as  a  selector  between  64	 possible
       behaviours  that the network can apply to the packet.  The
       DSCP is in the most significant six bits of  the	 type  of
       service	octet.	 The remaining least significant two bits
       of the octet must be zero.


BUGS
       UDP isn't really useable with  large  packets  because  of
       sockets limitations and the lack of workaround code.

       The numeric arguments to -p and -P can be in decimal (such
       as 11), octal (such as 013) or hexadecimal (such as 0x0b).
       So  padding  decimal  arguments	with  leading  zeros will
       change the value read.

       You may need to be superuser to set some -p or -P  values.

       ICP support is far from perfect, specially on the Alpha or
       when something goes wrong (filtering for instance).

       If a Web page is empty, echoping will display  meaningless
       messages.

       Timeouts on T/TCP connections are a bit experimental.

       Since  echoping	writes	everything  to	the  server, then
       begins to read the reply, some echo servers  will  timeout
       if you send very long messages, because they expect you to

SEE ALSO
       See the README for information about  other  network  mea-
       surements programs.


AUTHOR
       Stephane Bortzmeyer <bortz@users.sourceforge.net>


















































ECHOPING		   July 6, 2000				4


