The New Internet

There is a major problem with the Internet right now. No, I don't mean the NSA. They are a problem ON the Internet, not WITH the Internet. No, I am talking about the outdated version we are currently using.

The Internet runs on a protocol (think of protocols as language computers use to talk to each other) call Internet Protocol or IP. The name makes sense. Right now we are using version 4 of the Internet Protocol, or IPv4. This version was released in 1981, one year before I was born. While IPv4 has worked very well for us over the years, there is a major flaw in it. It doesn't have enough addresses for all of the computers trying to use it.

Computers use addresses to talk to each other, just like we use phone numbers to call each other. In the United States we use a phone number with a three digit area code followed by a seven digit phone number, making for ten digits in all. With those digits, and ignoring any reserved or non-used numbers, there is a possibility to have 10 billion phone numbers (9,999,999,999 plus 0). Since this is significantly more than the population of the United States, we are fine for the time being when it comes to giving out phone numbers.

IPv4 uses a binary number (meaning each place can only be either 0 or 1 instead of the numbers we typically use which can be from 0, 1, 2, 3, 4, 5, 6, 7, 8, or 9) with 32 places, or bits. This 32 bit number has only 4.3 billion possible numbers, again ignoring any reserved or non-used addresses. What to check my math? Multiply 2 by itself 32 times, or 232. So while the United States has 10 billion phone numbers, the entire world has only 4.3 billion IP addresses.

Why so few? Well, when the Internet was being invented by Vint Cerf and Bob Kahn they used a 32 bit address as a temporary number for testing purposes. They never intended IPv4 to be the live production version of the Internet. For testing purposes 4.3 billion addresses was WAY more than they needed. As they began testing the Internet and fixing problems many people wanted to be part of the test. Eventually the entire world became wired, but the protocol was never updated to add addresses. Essentially the Internet is still in a testing or "beta" phase.

Every computer that connects to the Internet needs one of these addresses. There are technologies that can mitigate the problem, but only for so long and not without side effects.

The main technology used is called Network Address Translation, or NAT. Think of our phone analogy again. NAT is like a receptionist who answer the phone then transfers the call to the correct office. This way a company only needs one phone number that can be used to call any number of people in an office.

NAT works a little bit differently, however. Instead of letting someone call into your computer, you computer has to first connect out from you NAT network. Clicking a link on a webpage or typing in a website address makes this connection so the NAT knows where to send the webpage when it come from the website. Back to our phone analogy, the people calling in don't know your name until you call them and ask them to call you back.

Than analogy is a little crude and not perfectly accurate, but it gets the point across.

The routers we use at home use NAT to share one IP address with all of the computers in your home. This includes your smart phone, iPad, XBox, Playstation, anything that connects to the Internet.

This technology is also used by many Internet companies to connect entire cities to the Internet. This is OK for now, unless you are trying to play many games when it can be a problem. But once several NAT's get layered on top of each other then we start running into major problems. It's like getting transferred all over the place before finally getting to talk to the person you want.

The only permanent fix to the problem is a new version of IP, IPv6. This expands the address number out to 128 binary places providing 3.4 * 1038 addresses, or nearly 340,000,000,000,000,000,000,000,000,000,000,000,000. More than enough. Compare that to the current 4,300,000,000 addresses and we see the difference. (We also the the power of exponents.)

The problem is that these technologies need to be installed by our Internet companies to work. Most of them don't seem to be motivated to fix the problem.

Comments

Popular Posts