page

Tuesday, February 1, 2011

The Difference Engine: No more addresses

REMEMBER the panic over the “millennium bug”, when computers everywhere were expected to go haywire on January 1st 2000 thanks to the way a lot of old software used just two digits to represent the year instead of four? Doomsters predicted all sorts of errors in calculations involving dates when the clocks rolled over from 99 to 00. In the event, the millennium dawned without incident. That may have been because of the draconian preparations undertaken beforehand. Or perhaps, as many suspected, the problem was grossly exaggerated in the first place. Certainly, the computer industry made a packet out of all the panic-buying of new hardware and software in the months leading up to the new millennium.

Well, something similar is about to happen in the months ahead. This time, the issue concerns the exhaustion of internet addresses—those four numbers ranging from 0 to 255 separated by dots that uniquely identify every device attached to the internet. According to Hurricane Electric, an internet backbone and services provider based in Fremont, California, the internet will run out of bulk IP addresses sometime next week—given the rate addresses are currently being gobbled up.

The Internet Assigned Numbers Authority (IANA) will then have doled out all its so-called "slash-eight" blocks of addresses to the five regional internet registries around the world. In turn, the registries are expected to have allocated all their remaining addresses to local network operators by October at the latest. After that, any organisation applying for new addresses will be told, sorry, none left.

The issue is real and has been a long time in the making. The Economist first warned about it ten years ago (see "Upgrading the internet", March 22nd 2001). The problem concerns the address space of the existing version of the internet protocol (IPv4), which is only 32 bits wide. The total number of binary addresses possible with such an arrangement is therefore two raised to the power 32—or roughly 4.3 billion in decimal terms. Back in the 1980s, when the internet connected just a couple of dozen research institutes in America, that seemed like a huge number. Besides, the internet was thought at the time to be just a temporary network anyway.

But with the invention of the web in 1990 came an explosion in popular demand. It was soon clear that it was only a matter of time before the internet would exhaust its supply of addresses. Work on a replacement for IPv4 began in the early 1990s, with IPv6 finally being made available around 1998 (IPv5 was an experimental protocol for streaming audio and video that has since ceased to exist). By giving the new internet version an address space of 128 bits, the designers pretty well guaranteed that it would not run out of unique identifiers for decades, or even centuries, to come.

Two raised to the 128th power is an astronomical number. In decimal terms, it is roughly 340 billion billion billion billion—or, as Martin Levy of Hurricane Electric likes to say, “more than four quadrillion addresses for every star in the observable universe.”

That will come in handy when the "internet of things" becomes a reality (see “Chattering objects”, August 13th 2010). Already, some two billion people have access to the internet. Add all the televisions, phones, cars and household appliances that are currently being given internet access—plus, eventually, every book, pill case and item of inventory as well—and a world or two of addresses could easily be accounted for.

Apart from providing locators for every person and thing on the planet and beyond, IPv6's huge address space makes routing traffic over the internet a good deal easier. Above all, it eliminates the need for network address translation (NAT), a fudge used to extend the useful life of IPv4. NAT works by allocating a single address to, say, an organisation's gateway computer to the outside world. In turn, this public access computer allocates addresses to all the other devices on the organisation's internal network, allowing them all to share the one IPv4 address.

Dispensing with NAT improves the performance of networks and, in principle, makes them much easier to configure. It also goes some way towards re-establishing the overarching philosophy of “end-to-end connectivity” espoused by the internet's founding fathers. To allow the internet to evolve and meet the needs of unknown future applications, the designers wisely decided that all packets of data travelling over the internet should be treated equally, and delivered from a computer at one end to a computer at the other end without prejudice or interference. Over the years, things like NAT and firewalls—plus attempts to provide some form of "quality-of-service" preferences for speech and video—have eroded the internet's end-to-end principle considerably.
Though a vast improvement, IPv6 is not without its problems. The biggest is that it is simply not backwardly compatible with IPv4. To reduce the amount of processing the routing computers have to do as they direct packets of data over the internet, IPv6 was given a far simpler packet format. That speeds things up no end. Unfortunately, while the two internet versions can coexist on a single device, they have to function independently of one another as two separate networks. When a device on one needs to communicate with a device on the other, various relay services and tunnelling tricks have to be employed, with IPv6 packets getting wrapped inside IPv4 packets or vice versa.
By all accounts, the two separate internets will have to live side by side for the foreseeable future. That could mean putting up with interoperability hassles for decades—at least, in the United States. One reason is that network operators in America have invested heavily in NAT boxes and other address-saving technologies. Also, being the inventor and earliest user of the internet, America received the lion’s share of addresses before today’s rules were put in place. As a result, many large companies, universities and government agencies in the United States still have plenty of spare IPv4 addresses lying around unused. The pressure to upgrade has therefore been minimal.

That is not the case elsewhere. The biggest single demonstration of IPv6 to date was during the 2008 Summer Olympics in Beijing, when everything from live television and data feeds to security and traffic information was streamed over a vast IPv6 network. Being one of the last to embrace the internet, China has only one address for every four people. Hence the urgency in Beijing to adopt IPv6 as rapidly as possible. The same goes for Russia, South Korea and Japan. NTT, Japan’s largest telecoms firm, has been offering IPv6 services to the public since 2000.

The next showcase for the new internet technology is to be “World IPv6 Day” on June 8th. While doing all he can to help, Vint Cerf, one of the fathers of the internet and today chief internet evangelist at Google, warns that the day could be marred by huge configuration difficulties. But the main purpose of the event is to air precisely such difficulties and get their fixes circulated.

And not before time, too. The American Registry for Internet Numbers, which allocates blocks of IP addresses to internet service providers and other network operators throughout North America, has suggested that all websites that face the public in its region be ready to support IPv6 by January 1st 2012. The aim, as The Economist has noted before, is to turn today's few islands of IPv6 computers in a sea of IPv4 into a world with a few remaining islands of IPv4 machines in a vast ocean of IPv6.

No comments: