Wednesday, April 30, 2014

A critical shortage

Recently we have run out of a critical supply. No, there's still enough oil for the moment, the electric grid is working fine, at least in my area of the world, and there's no shortage of food where distribution is not being deliberately sabotaged. We're short of IP addresses.
When the current familiar IP scheme that you're used to was invented in 1981, networked computers were kind of rare. It was though that the 4 billion addresses possible under the system could never possibly be used up, since networked computers were primarily owned by governments and major educational institutions. In the early days, addresses were handed out like candy, with groups getting a class A (everything starting with one particular number, like all addresses starting with 12".) all to themselves just because. In addition, the entire 127 block (from 127.0.0.1 to 127.255.255.255) were all allocated to "loopback" meaning "Don't actually use the network because it's right in this computer right here." You should only need one address for that.
Later, when more and more countries were going online, it became apparent that since there were 5 billion people in the world, who all wanted to go online, and only 4 billion possible addresses, that something would have to give. More justification had to be given to be assigned large blocks of addresses instead of small ones.
This was then made worse by devices, as well as individual people and servers, also wanting IP addresses for projects like an Internet-connected refrigerator. (The refrigerator can report its state to, say, the grocery store, so instead of you ordering milk, the refrigerator does it for you.)
By last year, justification had to be given to get any sort of IP address at all. Groups with large allocations were asked to give them back. This faired poorly -- generally the response was to come up with dumber and dumber schemes to "prove" why ownership of their entire allocation was "necessary." Some organizations did in fact give their blocks back, most notably Stanford University.
So next month, we run out completely. If you want to go online -- well, too bad, all slots are full. Now what?
Thankfully, this whole thing was seen well in advance, and a new specification, IPv6 was written in 1998. (version 5 was a beta that turned out to not be very useful.) IPv6 increased the address size by four times, which due to the way that computers stores numbers, exponentially increases the possible addresses. IPv6 has enough addresses to give every atom in the solar system, if not the visible universe, its own unique address. I won't say that running out is impossible -- I suppose that in the deep future we could develop some sort of teleportation and quantum entanglement technology that makes us have a galaxy-spanning empire of hexadecitellions of people, but it won't happen anytime soon unless we're REALLY stupid about how we allocate addresses.
To use IPv6, your operating system has to support it, your software has to support it, and your ISP has to support it. Generally the las step is the sticking point. My company offers browsing customers a hybrid stack, where you have an IPv6 address, but IPv4-only websites will see you as this one address that the ISP has reserved. That address is a node that understands both protocols, and can route between the two.
China is the most excited by this news, as when IPv4 was first written, most of China didn't have electricity, much less computers, and so they were allocated extremely few IP addresses. Since pretty much everyone in China wants to go online, they need to go IPv6, or it's just not going to happen.
Everyone should try to go to IPv6, but there are some transition costs, and I think we're going to have to struggle with it for quite a while, and the pain is higher because we waited so long.

No comments:

Related Posts Plugin for WordPress, Blogger...