Tuesday, October 20, 2009

Section 24.4.  IPv4 Versus IPv6










24.4. IPv4 Versus IPv6












IPv6 is very similar to IPv4 as far as the L3 to L4 protocol interface is concerned. L4 protocols can register via inet6_add_protocol and deregister them via inet6_del_protocol, both defined in net/ipv6/protocol.c. Handlers are stored in a table called inet6_protos of the same size (MAX_INET_PROTOS) used by IPv4. L4 protocols that run on top of IPv6 are represented by inet6_protocol data structures (defined in include/net/protocol.h), whose definition is almost identical to the one used by IPv4. The only differences are in the prototypes of the handler and err_handler function pointers and the use of a flag instead of an integer to store such information as the presence of security policies.


The field used by IPv6 to identify the upper-layer protocol in the IPv6 header is called next_header and is an 8-bit value like the one used by IPv4. See Figure 24-8 for the location of the field in the header.



Figure 24-8. IPv6 header and next_header protocol identifier













No comments:

Post a Comment