Re: ip/icmp/echo messages

William Westfield (BILLW@MATHOM.CISCO.COM)
Fri 8 Jan 88 13:39:07-PST

I don't know about 4.3 unix, but I can answer your questions in a more
general sense.

         3) who has already implemented such an animal (probably only
                 about 50,000 people or so?). I understand there's a program
                 called "ping" which uses echo. Is it what I'm looking for?

  Cisco systems gateways and terminal severs have a ping command that
fully supports (both loose and strict) source routes, timestamps, and
record route. A number of design decisions were made so that these
would be maximally useful.

         1) Can icmp echo/reply messages can be sent with ip headers
                 that specify strict source routing.

Yes, of course you can send ICMP messages with source routes. However,
it is not clearly defined what should happen when, say, and ICMP echo
request with options is received. The ICMP spec says that you should
just swap the IP source and destination addresses and send the packet.
However, if the packet has a source route, you might want to use the
reverse route for the echo reply, and this requires more processing.
In the cisco products, source routes are reversed, but record route
and timestamp pointers are left unchanged (so you can see both paths).
4.3 bsd sends out the echo reply with no options whatsoever...

Another problem is that very many systems, including gateways, do not
fully (or correctly) support IP options. In the case of a source routed
packet, it will probably just get dropped along the way, even if the path
is good. Record route and timestamps just won't get filled in.

An additional problems is that the IP header really isn't quite big enough.
It could be really useful to have a loose source route and a record route
in the same packet, but they would only be able to hold a total of 8 hops,
which is not enough to be useful.

         2) whether this would be useful in creating a looptest tool for
                 customer service to check out specific serial links, and

Well, the PING command all by itself is about the single most useful
network debugging tool we have found. It isn't clear how useful
adding option support to it is. I guess potentially this would allow
you to debug more of a network from some specific site, especially if
you have gateways that cannot be remotely logged into. And yes, it is
especially useful for debugging serial links. Cisco's ping process
wont reply to a ping addressed to a 'down' interface, even if the ping
arrives and would be sent out on an 'up' interface. This is a useful
feature, as it potentially lets you tell which side of a link is down,
but I think that it is not common.

Bill Westfield
cisco Systems.

This archive was generated by hypermail 2.0b3 on Thu Mar 09 2000 - 14:40:40 GMT