IP version 6 or IPv6 is also known as IPng – (ng for new/next generation). The changes from IPv4 to IPv6 fall under the major categories described below:
Expanded Addressing Capabilities
IPv6 increases the IP address size from 32 bits to 128 bits, to support more levels of addressing hierarchy, a much greater number of addressable nodes, and simpler auto-configuration of addresses. The scalability of multicast routing is improved by adding a “scope” field to multicast addresses. A new type of address called an “anycast address” is defined, and can used to send a packet to any one of a group of nodes.
Header Format Simplification
Some IPv4 header fields have been dropped or made optional, to reduce the common-case processing cost of packet handling and to limit the bandwidth cost of the IPv6 header.
Improved Support for Extensions and Options
Changes in the way IP header options are encoded allows for more efficient forwarding, less stringent limits on the length of options, and greater flexibility for introducing new options in the future.
Flow Labeling Capability
A new capability is added to enable the labeling of packets belonging to particular traffic “flows” for which the sender requests special handling, such as non-default quality of service or “real-time” service.
Authentication and Privacy Capabilities
Extensions to support authentication, data integrity, and (optional) data confidentiality are specified for IPv6
Description of Internet Protocol – Version 6 Packet Header
The format consists of Version, Class, Flow Label, Payload Length, Next Header, Hop Limit, Source
Address, Destination Address, Data, and Payload fields.
Expanded addressing moves us from 32-bit address to a 128-bit addressing method. It also provides newer unicast and broadcasting methods, injects hexadecimal into the IP address, and moves from
using “.” to using “:” as delimiters.
An IPv6 address is represented as 8 16-bit numbers in hexadecimal, like
FEDC:BA98:0:0:0:BA98:7654:3210. It is not possible to remember these. And you don’t have to. The DNS service will be modified to handle both 32-bit and 128-bit addresses. Also, an IPv6 address can be dynamically built when you plug in a device, by sensing the network address from the network you are connecting to, and then using your ethernet card’s address (or the hardware address of whatever interface you are using) to build an IPv6 address. Thus you can reconfigure automatically when
moving from place to place. Your IPv6 addresses also change.
Routing with Internet Protocol – Version 6
Routing has been totally reworked to build hierarchies. That is, the IPv6 address itself tells the network where exactly to deliver the packets. These addresses will be portioned out to various ISPs and regulatory bodies and a huge chunk kept in reserve. This also means that your IPv6 address will
change when you move to another ISP (this is currently effective due to CIDR – classless InterDomain routing – which was invented to temporarily surmount the huge problems with addressing and routing tables).
Broadcasting is done away with in IPv6. Only multi-casting is present. There is also an “anycast” feature where multiple devices listen on the same address, but the packet will be sent to only one, the “nearest” device. Currently this definition can be used only by routers. This would allow, for example, the Microsoft Network worldwide to use the same IPv6 address for ALL its routers. Your packet will go to the NEAREST router depending on which part of the world you are currently located in. Combined with plug-and-play, this is ideal for mobile devices.
IPv6 datagrams can be Jumbograms (upto 4 billion bytes long)!. This is for better resource utilization in very fast networks (possibly intranets). You can “tunnel” IPv6 packets through IPv4 networks using
machines that have “dual stacks” (running both IPv6 & IPv4) at the edge of the network. You can also tunnel IPv4 packets through an IPv6 network by using special addressing schemes on the IPv6 network edges. However, to make full use of IPv6 features – including security and quality-of-service
(QoS) – currently running applications will have to be modified. The socket APIs will expand, and many of the higher level abstractions can change to accommodate IPv6 features and addressing.
Quality of service (QOS)
Quality of service (QOS) is a very important feature of IPv6. In fact, this is what has made ATM networks popular. IPv6 makes it possible to make network bandwidth reservations on traffic flows. A protocol known as RSVP (Resource Reservation Protocol) is invoked here. Essentially, all routers in the path recognize and honor flow-reservations and expedite or slow down packets as required, to meet bandwidth guarantees. They can also timeout and free up resources that are unused. RSVP can be applied to multicast as well! The end result is that multimedia streaming applications may reserve network bandwidth and proceed without worrying about delivery hassles.