ciscoLogo

Internet Protocol Version 6: The Next Generation

Dr Daniel Prince, Lancaster University

Dan Prince is a Cisco Networking Academy instructor and lectures at the University of Lancaster in the UK. Dan is also an Advanced ICT Course Trainer/Manager at ICT Focus, InfoLab21’s Training Department. He is responsible for the design and delivery of systems courses on ICT Focus’s range of certificates as well as Microsoft Official Curriculum classes and has a strong interest in systems management and security.

We have all seen the slides and read the text in the CCNA Cisco Academy materials regarding the use of IPv6, “It’s the saviour of the Internet!” In this article, I’ll talk about the background to IPv6 and how its development came about.

IPv4 (RFC 791, 1981) was designed in a simpler time, where the goal of the people driving the technology was to communicate and Bill Gates believed that nobody would ever need more that 640K of RAM! The first network enabled worm, the Morris Worm, would not appear for another seven years after the IPv4 protocol was published. The design of IPv4 had some very specific goals, mainly to survive a nuclear attack.

As such, IPv4 is a military grade communications protocol. Security was not a concern because it was designed for Military applications and communication occurred over secure lines, with the line termination locations guarded by nice men and women with very big guns. In addition, the military network is protected by heavy legal penalties; as tampering with a military network could be classed as treason! However, as we all know IPv4 did not remain as a military project and has been adopted worldwide as the data communication protocol of choice.

This adoption has seen IPv4 deployed over unsecured physical connections creating public access networks providing what has become known as the Internet.

The big issue that has plagued IPv4 since the 1980s is that of addressing. IPv4 has 32bits in its address, so how come 4295 million IP address is not enough? Well it all comes down to allocation; originally the ARPANET (the forerunner to the Internet) divided the 32bits into two parts, 8bits for the network number and 24bits to identify the hosts on each network. Eight bits and 256 network numbers was not enough to support the growing Internet so when RFC 791 was published the concept of classed based network addressing was defined (see Figure 1). Extensions to this scheme were given in RFC 950, published in 1985, allowing network administrators to create their own sub-networks by robbing bits from the host portion.

As we have all seen the class based address policy combined with class based subnetting has led to a waste of IPv4 addresses. The different classes of address were never the correct size for organisations and class based subnetting is incredibly wasteful in terms of addresses. Later additions to the IPv4 addressing scheme, such as CIDR and VLSM, tried to resolve these problems, but ultimately IPv4 addresses will run out, although estimates of when this will happen vary.

Another problem with IPv4 is that it was the first datagram based, connectionless oriented, data network technology over unreliable network links. The designers could not possibly predict what would be needed and so they designed a protocol that would be as flexible and robust as possible.

In combination with the addressing problems and security issues in public inter-networks, IPv4 is like an old VW camper van; full of interesting things that never really got used properly, easy to break into, enough engine power to get it around but was tinkered with so much that it ultimately lost most of its potency!

It became clear to many in the IETF that the introduction of technologies intended to alleviate the IPv4 address space exhaustion problem were not working well. So the IETF created a new IP-Next Generation (IPng) Working Group which, in 1993 requested proposals for a next generation Internet layer protocol (RFC 1550). After several proposals were submitted, the Simple Internet Protocol Plus (128bit) was accepted and by 1996 several RFCs detailing IPv6 were released. The main thrust of the work was to overcome the problem with addressing in IPv4. However, it also provided an opportunity for the IETF to use protocol design developments to streamline and add additional features to the future powerhouse of the Internet.

IPv6 is therefore much more like a Bugatti Veyron than it’s IPv4 VW camper van precursor; it’s sleek, fast, stylish and has 128 bhp (Binary Horse Power) addressing when compared to the IPv4 VW camper van’s 32bph addressing! The introduction of IPv6 enabled the IETF an opportunity to radically rethink Internet communication and prepare it for an Interstellar future (see NASA JPL InterPlanetary Network).

Here are some facts on the IPv6 address space to whet your appetite a little more:

  • 128 bits gives 3.4x1038 addresses, that’s 739130434782608695652 times more than the estimated number of seconds that the Universe has existed for, or if you draw a square 1.5 inches by 1.5 inches to represent the IPv4 address space you would have to draw a square the size of the solar system to represent the IPv6 address space.
  •  It is clear that while the number of bits has quadrupled the increase in the number of addresses is astronomical there are 7.9x1029 more addresses.
  •  These figures are incredibly hard to comprehend, but on the plus side the designers of IPv6 have made subnetting those 128bits easier than with IPv4.