Larger Address Space
IPv6 addresses are 128-bits long which gives us a theoretical address space of 3.4 x 1038 addresses, like IPv4 some address space is reserved for special purpose but still there is a huge number of public routable addresses.
Aggregation
A larger address space allows for large address allocations to ISPs and Organization. This allows them to use a single prefix for the entire network making summarization easy and flexible which turn promotes efficient and scalable routing.
New Improved Header Format
Optional and non-essential fields are removed from the IPv6 Header and are moved the Extension Header that is placed after the IPv6 Header. Fewer fields of fixed lengths mean Header overhead is minimized and processing performance is improved. Another significant enhancement is that all routers in a path do need to do checksum recalculation for an IPv6 Packet instead error detection is handled by data-link layer technologies checksums of the end-to-end connection at transport layer. Figure 1 shows an IPv6 Header followed by Extension Header.
Figure 1
Allocation
IPv6 addresses are composed of two parts, 64-bit Network Prefix and 64-bit host part. The IPv6 address allocation follows a generally acceptable assignment policy as shown in figure 1. This allows for an efficient, hierarchical, and summarizable routing infrastructure.
Figure 2
Easy Address Assignment Methods
IPv6 has three assignment methods
- Static
- DHCPv6 (Stateful)
- Autoconfiguration (Stateless)
An IPv6 host can configure a link-local address for each interface automatically. By using ICMPv6 router discovery messages, a host can also determine the addresses of routers, additional addresses, and other configuration parameters.
Built-in Security
IPSec is built into IPv6 unlike IPv4 in which it is optional. IPSec requirement is mandatory in IPv6 Protocol Suite Implementation. IPv6 networks have potentially more end-to-end security because of IPSec availability on all nodes.
Extensibility
New futures for IPv6 can be added through the use of Extension Headers. At present there are various Extension Headers specified for QoS, Security, Mobility and Routing purposes.
Mobility
Mobility is built in to IPv6 which allows any node to use Mobile IP. Mobility is achieved using Mobility Extension Headers.
Better Quality of Service Support
IPv6 Header includes a new field called Flow Label that allows routers to identify and provide special handling for packets that belong to a particular flow. This field allows for easier identification of traffic without doing any tricks even when the packet payload is encrypted with IPSec.
Neighbor Discovery Protocol
Neighbor Discovery Protocol uses ICMPv6 messages to perform various functions such as
- Stateless Auto-configuration
- Router Discovery
- Prefix Discovery
- Address Resolution
- Neighbor Unreachability Detection
- Link MTU Discovery
- Duplicate Address Detection
- Next Hop Determination
Transition
The transition options supported by IPv6 to transition from IPv4 are another key feature of the protocol. Many Transitions mechanism are available for different scenarios. They are mentioned below
- Dual-Stack
- Tunneling IPv6 over IPv4 networks
- Protocol Translation
Within each option are various different techniques to support transition. A few tunneling mechanism are mentioned below
- Static GRE Tunnels
- 6to4 Tunnels
- ISATAP
- Automatic IPv4-Compatible IPv6 Tunnels
In this article we covered a some of the features of IPv6, these rich features enable easy deployment, migration and operation of IPv6 networks.