Relay-Version: version B 2.10 5/3/83; site utzoo.UUCP Path: utzoo!mnetor!uunet!husc6!mit-eddie!ll-xn!ames!sdcsvax!ucbvax!MATHOM.CISCO.COM!BILLW From: BILLW@MATHOM.CISCO.COM (William Westfield) Newsgroups: comp.protocols.tcp-ip Subject: Re: Question about IP options Message-ID: <12335457880.12.BILLW@MATHOM.CISCO.COM> Date: Thu, 17-Sep-87 20:53:55 EDT Article-I.D.: MATHOM.12335457880.12.BILLW Posted: Thu Sep 17 20:53:55 1987 Date-Received: Sat, 19-Sep-87 18:22:11 EDT References: Sender: daemon@ucbvax.BERKELEY.EDU Organization: The ARPA Internet Lines: 36 [ Indented quotes from Jonathan Biggar, ">"ed quotes from Mike Brescia ] 2) When using either loose or strict source routing, does the next hop or the final destination go in the destination address field of the IP header? >Next hop. A rationale for this choice, based on processing power needed, is >that a gateway does not have to look at the options unless the IP destination >address is the gateway. Then you look for options, and, finding a source >route, send it back out again. Unfortunately this rationale is completely false, since there are many IP options that must be processed whether or not the IP destination is the gateway's address. (These include record route, timestamping, and security.) A better reason is the behavior that you get when some gateway does not implement source routing is much more sociable this way. Consider a packet sent from A to D with source route B:C:D, and where B does not implement source routing. If the original destination D stays in the header through the entire trip, then the packet will arrive at B, and be forwarded on to some gateway (perhaps C) without processing the source route option. C will get the packet, notice that it has an incomplete source route, and forward it to the next gateway in the list, which is still B. The packet will loop between B and C until it dies. Depending on the type of link between them, this could be very expensive in some sense. When the IP destination is replaced at each hop, all that happens is that B receives the packet, and probably throws it out due to some higher level protocol checksum faliure... Bill Westfield cisco Systems -------