Sunday, October 25, 2009

Chapter 09

Team-Fly
 

 

TCP/IP Illustrated, Volume 2: The Implementation
By
Gary R. Wright, W. Richard Stevens
Table of Contents

Appendix A. 
Solutions to Selected Exercises




Chapter 9


9.1


RFC 1122 says that the behavior is implementation dependent when conflicting options appear in a packet. Net/3 processes the first source route option correctly, but since this updates ip_dst in the packet header, the second source route processing will be incorrect.

9.2


The host within the network can be used as a relay to access other hosts within the network. To communicate with an otherwise-blocked host, the source host need only construct packets with a loose route to the relay host and then to the final destination host. The router does not drop the packets because the destination address is the relay host, which will process the route and forward the packet to the final destination host. The destination host reverses the route and uses the relay host to return packets.

9.3


The same principle from the previous exercise applies. We pick a relay router that can communicate with the source and destination hosts and construct source routes to pass through the relay and to the destination. The relay router must be on the same network as the destination host so that a default route is not required for communication.

This technique can be extended to allow two hosts to communicate even if they do not have routes to each other, as long as they can find willing relay hosts.

9.4


If the source route is the only IP option, the NOP option causes all the IP addresses to be on a 4-byte boundary in the IP header. This can optimize memory references to these addresses on many architectures. This alignment technique also works when multiple options are present if each option is padded with NOPs to a 4-byte boundary.

9.5


A nonstandard time value cannot be confused with a standard value since the largest standard time value is 86,399,999 (24x60x60x1000�1) and this value can be represented in 28 bits, which avoids any conflict with the high-order bit since time values are 32 bits long.

9.6


The source route option code may change ip_dst in the packet during processing. The destination is saved so that the timestamp processing code uses the original destination.




    Team-Fly
     

     
    Top
     


    No comments: