From: www.itworld.com
IPv6 header fields -- simply elegant
by Robert Currier
December 11, 2000 —
In my last column, I explained preparing your network for IPv6 is a good idea. In this
edition, we'll peek under the hood of the IPv6 header and see how it's put together.
The IPv6 header is, surprisingly, less complicated than the IPv4 header. This is a
credit to its designers, who have substantially improved functionality while reducing
complexity.
The length of an IPv4 packet's header varies, and thus requires the use of a header
length field. IPv6 uses 40 bytes in an eight-field header. A fixed-length header makes
it much easier for routers to process the packet.
Three of the fields are the same in both versions:
The other five fields in the IPv6 header are new. I don't have room to go into great
detail; if you're interested in digging deeper, check out
href="http://www.ietf.org/rfc/rfc2460.txt">the IPv6 RFC.
- The traffic class field (8 bits) allows devices to differentiate
between latency-sensitive traffic (like video and voice) and low-priority data (like
email and Web traffic). There are several groups currently developing ways to best
utilize this field, with the
Differentiated Services project currently in the lead.
- The flow label field (20 bits) can be used by a host to request
special handling from IPv6-compliant routers. The ability to manage flows -- traffic
between end stations -- is important in providing quality of service. This field allows
IPv6 to operate in a manner similar to the IPv4 leader in flow management,
href="http://www.ietf.org/html.charters/mpls-charter.html">Multiprotocol Label
Switching.
- The next header field (8 bits) alerts routers about additional
headers that need to be examined. While the IPv6 header's length is fixed, the protocol
can add other headers to the main header. These additional headers provide features
such as source routing, encryption, and authentication.
- The payload length field (16 bits) describes the length in
octets of the payload (data) portion of the IPv6 packet. The 16-bit field length (2^16)
lets version 6 support payloads in excess of 64,000 octets.
- The hop limit field (8 bits) specifies the number of routing
hops a packet can take before being discarded. Hop limits provide routing loop
protection and keep packets from circulating indefinitely. At 8 bits, this field allows
for a maximum of 255 hops, though in today's networks a path would not likely be that
long.
This wraps up our discussion of the IPv6 header. In my next -- and final -- column
on IPv6, I'll discuss addressing. If you think you have a hard time remembering IPv4
addresses now, just wait until you see what version 6 has in store!
ITworld.com