This version of the end of the internet as we know it is a bit more subtle than simply running out of numbers. This one is usually described as the "routing" problem. Let's see if I can describe it for folks who don't naturally count in binary.
For an analogy, let's talk about the post office and the zip code system. The way US mail works is pretty simple, actually. Mail gets sent to regional centers, where it's sorted into sets of mail based on the zip code on the envelope. (It's actually a bit more complicated, but let's stay with this for a moment.) Imagine that a sorting center can only handle 1,000 buckets, perhaps due to a limit on available physical space. There are, on the other hand, 10,000 zip codes. Fortunately, not all of the zip codes are in use.
Pretend that only 500 are in use. In that case, everything works great - there's plenty of bins to cover all of the zip codes. The number of zip codes in use slowly grows, however, so at some point there might be 950 zip codes in use. While there's still enough bins, there's clearly a limit coming. Perhaps the post office decides to upgrade their facilities to support 2,000 bins. That's an excellent solution, for the short term, but you eventually run out of available bins. The only solution is to build 10,000 bins. (Or, do something entirely different, like sorting regionally on the first three digits, and then sorting locally on all five digits, which is actually more how it works.) If there's not room for 10,000 bins, you'll have to get creative. If some facilities can support 2,000, while other can support 3,000, some of this model can get kinda complicated.
In the internet, IP addresses are used to route traffic. (Remember those from yesterday? They look like 134.173.32.4, for example.) We don't use a fixed set of those digits for routing, but it's sort of like the idealized post office described above. We're running out of bins, and it's difficult to make enough.
There's another angle to this problem, too. The post office doesn't specify where you live in your zip code. That's only used to get the envelope close to the right general place. The identifier for where you live is your street address. In the internet, that IP address is used for both functions: it identifies where you are *and* who you are. That combination is helping to fuel how fast we run out of bins. This is, in the industry jargon, the loc/id split problem. (For the truly geeky, go read the IRTF RRG working group's mailing list for waaaaay more information than you really want.)
To get back to our analogy, if the Internet worked like our fictional post office, we'd need bins not just for all of the zip codes, but for every single possible mailing address, and that's just to route letters to the right place! As you can imagine, this is a bit of a scaling problem.
I'll admit that this one is a bit more obscure than simply running out of addresses, but it's just as nasty for the ongoing operation of the Internet.
In my previous post, I mentioned NANOG, the North American Network Operators' Group. They are definitely worried about this one. I kind of did these posts out of order, though, 'cause the group really worried about the addressing problem is ARIN, the American Registry for Internet Numbers.
Lots of very smart people are working on both problems. Let's hope they get it figured out before it all breaks!
Showing posts with label networking. Show all posts
Showing posts with label networking. Show all posts
Wednesday, October 17, 2007
Tuesday, October 16, 2007
The End
There are at least two key problems that could entirely break the Internet, or at least severely limit its future growth, and I'm going to try to lay them out such that people who aren't card carrying geeks can understand them. For today, let's stick to one of them: the address problem.
First, a bit of background. When you use, for example, a web browser, you enter an address for a page you want to view. You might, for example, ask for www.google.com. The underlying network that connects you to Google (and your own computer, too) has no idea what that set of roman letters means. There's a system for converting that name that's (mostly) readable by humans into something that a computer can understand. Not surprisingly, that address is in binary; that is, it's a bunch of zeros and ones. It's normal for network operators to look at these addresses in a more human readable format, so the address for www.google.com might be something like 72.14.253.104.
So far, so good.
Here's the problem: we're running out of these addresses. The central authority (IANA) that coordinates these numbers will run out of available space in 2010. It will become difficult to acquire new ones in about 2012 as a result. (There's a certain amount stored up in regional registries, but that's a piece of complexity that's unnecessary for our discussion.)
Fortunately, there is a solution. It's called IPv6, and it's a vastly larger pool of addresses, although the new addresses are incompatible with the old addresses. That's a real problem.
For devices like routers (the pieces of the network that decide where to send your data), supporting IPv6 means an upgrade. I don't know how often any of you upgrade your home computers, but service providers don't like to upgrade too often - it's expensive! Content providers (like Google, Amazon, eBay, et al.) have no reason to upgrade (yet) because there's not a good justification for the cost, since no one will use the IPv6 version. (The web page would look the same, only the technical goo would be different.)
This is a basic chicken and egg problem. Until there are users, there won't be content on this "new" Internet. Symmetrically, there won't be any users until there's some useful content. It's also a bit like the Y2K problem, expect there isn't a hard deadline, and the deadline will be different for every organization. Also, hitting the deadline won't cause your network to stop working, although you won't be able to make it bigger.
Given the time required to make the necessary changes, we're already too late. This is going to be a mess, and probably very expensive. You can bet that the cost will get passed on to someone.
Why is this interesting on this trip? I'm presently at the NANOG conference. Check out the link if you're feeling geeky.
I'll talk about the other "death of the Internet" problem sometime soon.
First, a bit of background. When you use, for example, a web browser, you enter an address for a page you want to view. You might, for example, ask for www.google.com. The underlying network that connects you to Google (and your own computer, too) has no idea what that set of roman letters means. There's a system for converting that name that's (mostly) readable by humans into something that a computer can understand. Not surprisingly, that address is in binary; that is, it's a bunch of zeros and ones. It's normal for network operators to look at these addresses in a more human readable format, so the address for www.google.com might be something like 72.14.253.104.
So far, so good.
Here's the problem: we're running out of these addresses. The central authority (IANA) that coordinates these numbers will run out of available space in 2010. It will become difficult to acquire new ones in about 2012 as a result. (There's a certain amount stored up in regional registries, but that's a piece of complexity that's unnecessary for our discussion.)
Fortunately, there is a solution. It's called IPv6, and it's a vastly larger pool of addresses, although the new addresses are incompatible with the old addresses. That's a real problem.
For devices like routers (the pieces of the network that decide where to send your data), supporting IPv6 means an upgrade. I don't know how often any of you upgrade your home computers, but service providers don't like to upgrade too often - it's expensive! Content providers (like Google, Amazon, eBay, et al.) have no reason to upgrade (yet) because there's not a good justification for the cost, since no one will use the IPv6 version. (The web page would look the same, only the technical goo would be different.)
This is a basic chicken and egg problem. Until there are users, there won't be content on this "new" Internet. Symmetrically, there won't be any users until there's some useful content. It's also a bit like the Y2K problem, expect there isn't a hard deadline, and the deadline will be different for every organization. Also, hitting the deadline won't cause your network to stop working, although you won't be able to make it bigger.
Given the time required to make the necessary changes, we're already too late. This is going to be a mess, and probably very expensive. You can bet that the cost will get passed on to someone.
Why is this interesting on this trip? I'm presently at the NANOG conference. Check out the link if you're feeling geeky.
I'll talk about the other "death of the Internet" problem sometime soon.
Subscribe to:
Posts (Atom)