You are on page 1of 8

AL-Baath University ‫ﺟـــﺎﻣــﻌـــﺔ اﻟــﺑـﻌــــــــــــــــث‬

College of IT ‫ﻛـﻠﯾــﺔ اﻟﮭﻧدﺳــﺔ اﻟﻣﻌﻠوﻣﺎﺗﯾــﺔ‬

Third Year ‫اﻟـــﺳــــــﻧـﺔ اﻟـﺛـﺎﻟـﺛــــــــــــــﺔ‬


IPv6 Protocol

 Majed Jemmieh

 Shihap Ghaya

 24/ April/2008

IPv6 4/14/2008

 Introduction :

The current version of the Internet Protocol (known as IP version 4 or IPv4)

has not been substantially changed since RFC 791 was published in 1981.
IPv4 has proven to be robust, easily implemented and interoperable, and has
stood the test of scaling an internetwork to a global utility the size of today's
Internet. This is a tribute to its initial design.

However, the initial design did not anticipate:

 The recent exponential growth of the Internet and the impending

exhaustion of the IPv4 address space.
 The growth of the Internet and the ability of Internet backbone routers
to maintain large routing tables.
 The need for simpler configuration.
 The requirement for security at the IP level.
 The need for better support for real-time delivery of data (also known
as quality of service).

To address these concerns, the Internet Engineering Task Force (IETF) has
developed a suite of protocols and standards known as IP version 6 (IPv6).
This new version, previously named IP-The Next Generation (IPng),
incorporates the concepts of many proposed methods for updating the IPv4
protocol. IPv6 is intentionally designed for minimal impact on upper and
lower layer protocols by avoiding the arbitrary addition of new features.

 IPv6 Features :
 New header format

 Large address space

 Efficient and hierarchical addressing and routing infrastructure
 Stateless and stateful address configuration
 Built-in security
 Better support for prioritized delivery
 New protocol for neighboring node interaction

 Extensibility

IPv6 4/14/2008

 Differences Between IPv4 and IPv6 :

Fig 1 highlights some of the key differences between IPv4 and IPv6.

IPv4 IPv6
Source and destination addresses Source and destination addresses are 128
are 32 bits (4 bytes) in length. bits (16 bytes) in length. For more
information, see “IPv6 Addressing.”
Header includes a checksum. Header does not include a checksum. For
more information, see “IPv6 Header.”
Header includes options. All optional data is moved to IPv6 extension
headers. For more information, see “IPv6
Address Resolution Protocol (ARP) ARP Request frames are replaced with
uses broadcast ARP Request multicast Neighbor Solicitation messages.
frames to resolve an IPv4 address For more information, see “Neighbor
to a link layer address. Discovery.”
Internet Group Management IGMP is replaced with Multicast Listener
Protocol (IGMP) is used to manage Discovery (MLD) messages. For more
local subnet group membership. information, see “Multicast Listener
ICMP Router Discovery is used to ICMP Router Discovery is replaced with
determine the IPv4 address of the ICMPv6 Router Solicitation and Router
best default gateway and is optional. Advertisement messages and is required.
For more information, see “Neighbor
Broadcast addresses are used to There are no IPv6 broadcast addresses.
send traffic to all nodes on a subnet. Instead, a link-local scope all-nodes
multicast address is used. For more
information, see “Multicast IPv6 Addresses.”
Uses host address (A) resource Uses host address (AAAA) resource
records in the Domain Name records in the Domain Name System (DNS)
System (DNS) to map host names to map host names to IPv6 addresses. For
to IPv4 addresses. more information, see “IPv6 and DNS.”
Uses pointer (PTR) resource Uses pointer (PTR) resource records in the
records in the IN-ADDR.ARPA DNS IP6.ARPA DNS domain to map IPv6
domain to map IPv4 addresses to addresses to host names. For more
host names. information, see “IPv6 and DNS.”
Must support a 576-byte packet size Must support a 1280-byte packet size
(possibly fragmented). (without fragmentation). For more
information, see “IPv6 MTU.”

Fig. 1 Differences between IPv4 and IPv6

IPv6 4/14/2008

 IPv6 Header
The IPv6 header is a streamlined version of the IPv4 header. It eliminates
fields that are unneeded or rarely used and adds fields that provide better
support for real-time traffic.
Structure of an IPv6 Packet
Fig 2 shows the structure of an IPv6 packet.

Fig. 2 the structure of an IPv6 packet

The IPv6 header is always present and is a fixed size of 40 bytes.

IPv6 is using two distinct types of headers:

Main/Regular IPv6 Header and IPv6 Extension Headers.

The main IPv6 header is equivalent to the basic IPv4 one despite some field differences.
The IPv4 and IPv6 main headers are shown in Fig 3.

Fig3. IPv4 and IPv6 Headers

IPv6 4/14/2008

The fields in the main IPv6 header are:

Version – 4 bits are used to indicate the version of IP and is set to 6.
Traffic Class – Like the IPv4 Type of Service field, specifies a DSCP values and flags for ECN. The
size of this field is 8 bits.
Flow Label – Indicates that this packet belongs to a specific sequence of packets between a source
and destination, requiring special handling by intermediate IPv6 routers. The size of this field is
20 bits. The Flow Label is used for non-default quality of service connections, such as those
needed by real-time data (voice and video). For default router handling, the Flow Label is set to 0.
There can be multiple flows between a source and destination, as distinguished by separate non-
zero Flow Labels. The use of the Flow Label field is defined in RFC 3697.
Payload Length – Indicates the length of the IPv6 payload. The size of this field is 16 bits. The
Payload Length field includes the extension headers and the upper layer PDU. With 16 bits, an
IPv6 payload of up to 65,535 bytes can be indicated. For payload lengths greater than 65,535
bytes, the Payload Length field is set to 0 and the Jumbo Payload option is used in the Hop-by-
Hop Options extension header.

Next Header – Indicates either the first extension header (if present) or the protocol in the upper layer
PDU (such as TCP, UDP, or ICMPv6). The size of this field is 8 bits. When indicating an upper
layer protocol above the Internet layer, the same values used in the IPv4 Protocol field are used
Hop Limit – Indicates the maximum number of links over which the IPv6 packet can travel before
being discarded. The size of this field is 8 bits. The Hop Limit is similar to the IPv4 TTL field
except that there is no historical relation to the amount of time (in seconds) that the packet is
queued at the router. When the Hop Limit equals 0, an ICMPv6 Time Exceeded message is sent
to the source address and the packet is discarded.
Source Address – Stores the IPv6 address of the originating host. The size of this field is 128 bits.
Destination Address – Stores the IPv6 address of the current destination host. The size of this field
is 128 bits. In most cases the Destination Address is set to the final destination address.
However, if a Routing extension header is present, the Destination Address might be set to the
next router interface in the source route list.

IPv6 Extension Headers:

The IPv4 header includes all options. Therefore, each intermediate router must
check for their existence and process them when present. This can cause
performance degradation in the forwarding of IPv4 packets. With IPv6, delivery and
forwarding options are moved to extension headers. The only extension header that
must be processed at each intermediate router is the Hop-by-Hop Options extension
header. This increases IPv6 header processing speed and improves forwarding
process performance.

IPv6 4/14/2008

RFC 2460 defines the following IPv6 extension headers that must be supported by all IPv6
Hop-by-Hop Options header
Destination Options header
Routing header
Fragment header
Authentication header
Encapsulating Security Payload header
In a typical IPv6 packet, no extension headers are present. If special handling is required by
either the intermediate routers or the destination, one or more extension headers are added
by the sending host.
Each extension header must fall on a 64-bit (8-byte) boundary. Extension headers of variable
size contain a Header Extension Length field and must use padding as needed to ensure that
their size is a multiple of 8 bytes.
Fig 4 shows the Next Header field in the IPv6 header and zero or more extension headers
that form a chain of pointers. Each pointer indicates the type of header that comes after the
immediate header until the upper layer protocol is ultimately identified.

Fig 4. Chaining Extension Headers in IPv6 Packets

IPv6 4/14/2008

RFC2460 defines the extension headers as shown in the following table along
Fig 5 :

Extension Headers Description

Hop-by-Hop Options Miscellaneous information for routers

Routing Full or partial route to follow

Fragment Management of datagram fragment

Authentication Verification of the ender's identity

Encrypted Security Payload Information about the encrypted content

Destination Options Additional information for the destination

Fig. 5. IPv6 Extension Headers

Fig 6 shows an extension header for datagram's exceeding 64k ( Jumbograms ),for

Next header 0 194 0

Jumbo payload length

Fig. 6. The hop-by-hop extension header for larger datagram's ( Jumbograms ).

Fig. 7 The extension header for routing

Next header 0 Number addresses Next address

Bit map

Jumbo payload length

Fig. 7 The extension header for routing

IPv6 4/14/2008

 Concluding :
Extension headers are an intrinsic building block of IPv6. tI is critically
important to understand their role and mode of use as well as the
processing requirements they have on various network devices. Deployed
IPv6 networks must be capable to handle IPv6 traffic containing
extension headers. They must orward f such IPv6 traffic at op timal,
production level performance in the presence of adv anced features such
as Access Lists.

In IPv6 ,unlike in IPv4 , only the source host can fragment a

packet . If a router is confronted with a packet that I too large , it
discards the packet and sends an ICMP packet back to the source ,
so the source fragments the packet and tries again .

 Reference :

2. Windows Server® 2008

Introduction to IP Version 6, Published: September 2003 , Updated: January 2008

3. RFC2460 “Internet Protocol, Version 6 (IPv6) Specification” S. Deering and R.

Hinden, December 1998.

4. Supplement Computer Network ( Telecommunication ) .