This section covers the field of the IPv6 header. The IPv6 header is simpler than the IPv4 header. Some IPv4 fields have been eliminated or changed to optional fields. The IPv6 header size is 40 bytes. The Fragment Offset fields and flags in IPv4 have been eliminated from the header. IPv6 adds a Flow Label field for QoS mechanisms to use.

The use of 128 bits for source and destination addresses provides a significant improvement over IPv4. With 128 bits, there are 3.4 × 1038—or 340 billion billion billion billion—IPv6 addresses, compared to only 4.3 billion IPv4 addresses.

IPv6 improves over IPv4 by using a fixed-length header (see Figure 2-1). The following is a description of each field in the IP header:

Figure 2-1 IPv6 Header Format

  • Version: This field, which is 4 bits long, indicates the format, based on the version number, of the IP header. These bits are set to 0110 for IPv6 packets.
  • Traffic Class: This field, which is 8 bits in length, describes the class or priority of the IPv6 packet and provides functionality similar to that of the IPv4 Type of Service field.
  • Flow Label: This field, which is 20 bits in length, indicates a specific sequence of packets between a source and destination that requires special handling, such as real-time data (voice and video).
  • Payload Length: This field, which is 16 bits in length, indicates the payload’s size, in bytes. Its length includes any extension headers.
  • Next Header: This field, which is 8 bits in length, indicates the type of extension header, if present, that follows this IPv6 header. If no Next Header field is present, it identifies the upper-layer protocol (TCP or UDP). This field is called the Protocol field in the IPv4 header. It uses values defined by the Internet Assigned Numbers Authority (IANA). Table 2-2 shows some key protocol numbers. You can find a full list at https://www.iana.org/assignments/protocol-numbers/protocol-numbers.xhtml.

Table 2-2 IP Protocol Numbers

Protocol NumberProtocol
6Transmission Control Protocol (TCP)
17User Datagram Protocol (UDP)
50Encapsulating Security Payload (ESP)
51Authentication Header (AH)
85ICMP for IPv6
59No Next Header field for IPv6
60Destination options for IPv6
88Enhanced IGRP (EIGRP)
89Open Shortest Path First (OSPF)
  • Hop Limit: This field, which is 8 bits in length, is decremented by 1 by each router that forwards the packets. If this field is 0, the packet is discarded.
  • Source Address: This field, which is 128 bits in length, indicates the sender’s IPv6 address.
  • Destination Address: This field, which is 128 bits in length, indicates the destination host’s IPv6 address.

Notice that although an IPv6 address is four times the length of an IPv4 address, the IPv6 header is only twice the length (40 bytes). Optional network layer information is not included in the IPv6 header; instead, it is included in separate extended headers. Some extended headers are the routing header, fragment header, and hop-by-hop options header. The routing header is used for source routing. The fragment header is included in fragmented datagrams to provide information to allow the fragments to be reassembled. The hop-by-hop extension header is used to support jumbo-grams.

Two important extended headers are the Authentication Header (AH) and the Encapsulating Security Payload (ESP) header. These headers are covered later in the chapter.

You may also like...

Leave a Reply

Your email address will not be published. Required fields are marked *