A Look at IPv6
Vinton Cerf and Bob Kahn came up with the original version of TCP (Transmission Control Protocol, RFC 675; December 1974) and Jon Postel with that of IP (Internet Protocol, RFC 760; January 1980) 20 years ago and more. These increased the network “address space” to 32 bits, but the structure of the ARPANET was “classless”, that is, the hierarchical distributed database we are familiar with came about only with Dave Mills' conceptualization of the Domain Name System (DNS; RFC 799; September 1981) and its implementation by Paul Mockapetris (RFCs 882 and 883; November 1983). Mockapetris' implementation was called Jeeves. BIND (Berkeley Internet Name Daemon; written by Kevin Dunlap, maintained by Paul Vixie) is currently the most-used.
Thus we achieved 32-bit addressing and a hierarchical array of classes of networks: A, B, C, D and E. There are 128 Class A addresses, each of which can have 16,777,216 unique host identifiers. There are 16,384 Class B addresses with 65,536 unique identifiers, 2,097,192 Class C addresses and over 268 million Class D groups. Class E addresses have never been available for general use.
Using this scheme, DNS allowed for about four billion hosts on 16.7 million networks. This seemed like a very large number of addresses. But the expansion of Internet use over the past decade has been explosive.
In August 1990, during the Vancouver Internet Engineering Task Force (IETF) meeting, Frank Solensky, Phill Gross and Sue Hares projected the current rate of assignment would exhaust the Class B space by March of 1994.
Classless Inter-Domain Routing (CIDR, RFCs 1518 and 1519; September 1993) was introduced to improve both routing scalability and address-space utilization in the Internet. By eliminating the notion of “network classes”, CIDR allows for a better match between address requirements and address allocation. CIDR has enabled the Internet to function while growth continues.
Even with CIDR, it was revealed at the July 1994 Toronto meeting of the IETF that the Internet would exhaust the IPv4 address space between 2005 and 2011. With several more years of experience, we can push these dates out a bit, but exhaustion will come.
The Internet has grown with the number of intranets (what we used to think of as “internal corporate networks”) and the number of different uses to which they are put (Internet radio, telephone, mobile computing, etc.).
The Toronto IETF meeting set up an “IPng” (Internet Protocol Next Generation) or “IPv6” task force, cochaired by Scott Bradner and Allison Mankin. Recommendations from that task force were released in October 1994 for discussion at the December 1994 IETF meeting. The basic goal was to have something in place before 2000, so that the time limit would not be pushed. Unfortunately, as Bradner and Mankin put it in their recommendation:
Some people pointed out that this type of projection makes an assumption of no paradigm shifts in IP usage. If someone were to develop a new “killer application” (for example cable TV set-top boxes), the resultant rise in the demand for IP addresses could make this an overestimate of the time available.
IPv6 provides for 128-bit addressing. This is a gigantic number, larger than the estimated total number of molecules in the moon. Just how this will work is still unclear; as I write this, the new protocol has yet to be widely deployed. Among other things, going from 32 to 128 bits will entail renumbering a large number of addresses already in use.
However, it is absurd to state that address space depletion is the only driving force behind IPv6. While the address space now provided for is enormous, it's not everything. A number of other abilities “have been developed in direct response to current business requirements for more scalable network architectures, mandatory security and data integrity, an additional field for quality-of-service (QoS), autoconfiguration and more efficient network route aggregation at the global backbone level.”--IETF draft; no longer on-line.
A business or private user might well say “So what?” to this, thinking that IPv6 support for a large variety of network devices just isn't an end-user or business concern.
Over the next few years, conventional computers on the Internet will be joined by a variety of new devices, including palmtop personal data assistants (PDA), hybrid mobile-phone technology with data processing capabilities, smart set-top boxes with integrated web browsers, and embedded network components in equipment ranging from office copy machines to kitchen appliances. Many devices requiring IP addresses and connectivity will be consumer-oriented, such as your coffee machine, dishwasher, etc.
IPv6's 128-bit address space will allow businesses to deploy a huge array of new desktop, mobile and embedded network devices in a cost-effective, manageable manner. Furthermore, IPv6's autoconfiguration features will make it feasible for large numbers of devices to attach dynamically to the network, without incurring unsupportable administration costs for an ever-increasing number of adds, moves and changes. The business requirement for IPv6 will be driven by end-user applications.
Peter H. Salus, the author of A Quarter Century of UNIX and Casting the Net, is Editorial Director of Linux Journal.
|Dynamic DNS—an Object Lesson in Problem Solving||May 21, 2013|
|Using Salt Stack and Vagrant for Drupal Development||May 20, 2013|
|Making Linux and Android Get Along (It's Not as Hard as It Sounds)||May 16, 2013|
|Drupal Is a Framework: Why Everyone Needs to Understand This||May 15, 2013|
|Home, My Backup Data Center||May 13, 2013|
|Non-Linux FOSS: Seashore||May 10, 2013|
- Dynamic DNS—an Object Lesson in Problem Solving
- Making Linux and Android Get Along (It's Not as Hard as It Sounds)
- Using Salt Stack and Vagrant for Drupal Development
- New Products
- A Topic for Discussion - Open Source Feature-Richness?
- Drupal Is a Framework: Why Everyone Needs to Understand This
- Validate an E-Mail Address with PHP, the Right Way
- RSS Feeds
- Readers' Choice Awards
- Tech Tip: Really Simple HTTP Server with Python
3 hours 12 min ago
- Reply to comment | Linux Journal
3 hours 45 min ago
- All the articles you talked
6 hours 8 min ago
- All the articles you talked
6 hours 11 min ago
- All the articles you talked
6 hours 13 min ago
10 hours 38 min ago
- Keeping track of IP address
12 hours 29 min ago
- Roll your own dynamic dns
17 hours 42 min ago
- Please correct the URL for Salt Stack's web site
20 hours 53 min ago
- Android is Linux -- why no better inter-operation
23 hours 9 min ago
Enter to Win an Adafruit Pi Cobbler Breakout Kit for Raspberry Pi
It's Raspberry Pi month at Linux Journal. Each week in May, Adafruit will be giving away a Pi-related prize to a lucky, randomly drawn LJ reader. Winners will be announced weekly.
Fill out the fields below to enter to win this week's prize-- a Pi Cobbler Breakout Kit for Raspberry Pi.
Congratulations to our winners so far:
- 5-8-13, Pi Starter Pack: Jack Davis
- 5-15-13, Pi Model B 512MB RAM: Patrick Dunn
- 5-21-13, Prototyping Pi Plate Kit: Philip Kirby
- Next winner announced on 5-27-13!
Free Webinar: Hadoop
How to Build an Optimal Hadoop Cluster to Store and Maintain Unlimited Amounts of Data Using Microservers
Realizing the promise of Apache® Hadoop® requires the effective deployment of compute, memory, storage and networking to achieve optimal results. With its flexibility and multitude of options, it is easy to over or under provision the server infrastructure, resulting in poor performance and high TCO. Join us for an in depth, technical discussion with industry experts from leading Hadoop and server companies who will provide insights into the key considerations for designing and deploying an optimal Hadoop cluster.
Some of key questions to be discussed are:
- What is the “typical” Hadoop cluster and what should be installed on the different machine types?
- Why should you consider the typical workload patterns when making your hardware decisions?
- Are all microservers created equal for Hadoop deployments?
- How do I plan for expansion if I require more compute, memory, storage or networking?