The IPv6 Header
As shown in Figure 1, the IPv6 header has been designed to be simple and
easy to process. This enables IPv6 devices the ability to spend the
majority of their time dealing with the data contained within the packet
and not the packet header itself.
Version :
The version field is 4 bits long and is used to tell the processing
equipment the version of the IP header that can be expected; when
building an IPv6 header the value of the Version field is 6 (0110).
Traffic Class :
The Traffic Class field is an 8 bit field that is used to signify the
importance of the data contained within this specific packet. With
IPv4, this information was signified with the TOS field and supported
both IP precedence and Differentiated Services Code Point (DSCP). The
Traffic Class field used with IPv6 supports DSCP solely; this
specification uses the first 6 bits to indicate the Per Hop Behavior
(PHB) of the contained data; these PHB’s are defined in RFC 2474 and its
additions.
Flow Label :
Before understanding the Flow Label the definition of a
flow
must be understood. Think of a
flow as a stream of traffic
that is coming from one source and destined for one or more
destinations; a
flow will contain multiple packets which can
each be treated exactly the same way by intermediate routing devices.
The Flow Label is used to identify these
flows and enables
these intermediate routing devices to treat all of the packets within
the
flow the same, this reduces processing time and because of
this delay.
Payload Length :
The Payload Length field is used to indicate the total size of the
payload contained within the IPv6 packet. This is then used by the
processing devices to ensure that the packet has been completely
received. It is important to note that this differs from how the Length
field is used with the IPv4 header which contains the length for the
whole IPv4 packet.
Next Header :
The Next Header field can be used in two different ways depending on
the makeup of the specific IPv6 packet. The first is to indicate the
protocol that is contained within the packet. The second is a little
more complex; IPv6 has the ability to add
extension headers
after the main IPv6 packet header. These
extension headers are
used to indicate that the packet has specific options attached to it;
this information was contained within the Options (or IP Options) IPv4
header field.
Hop Limit :
The Hop Limit field is very simple and replaces the
Time to Live
(TTL) field that is contained within IPv4 packets. The value that is
placed within the field limits the total number of hops that the
specific packet is allowed to travel, for example if the value was 2,
the packet could only travel a total of 2 additional hops before being
discarded.
Source Address and Destination Address
The source and destination fields contain the original IPv6 device
source address and the original IPv6 destination address. This
information is then used by all intermediate devices to route the packet
to its expected destination and to return traffic to the original
source should a problem occur.
Summary
While the IPv6 header is different in its structure from the IPv4
header, its function is exactly the same. Knowledge of the IPv6 header
has become mandatory knowledge for most network engineers as the
transition to IPv6 is here for many organizations. Hopefully the
information contained within this article will help in becoming more
familiar with IPv6 and how it operates.