Sunday, December 25, 2005

The Internet isn't broken, but it is misunderstood.

The folks at MIT's Technology Review assert that The Internet Is Broken and proceed to tell all about the wonders of the MIT project to create a new, better internet. Since I'm suitably offended, and have the free time, I will now proceed to pick this apart as my own way of calling bullshit.

The Internet is a set of applications on top of some well defined layers.
The tone of the article is that the Internet is a monolithic whole, and must be completely replaced. This is a Boil The Ocean view of things, and completely misses the point. The entity commonly know as The Internet is actually a simmering pot of stew on top of a few well engineered layers. The strength of the Internet as a whole is that nobody owns it, and anyone can improve it. It's important to know which layers are responsible for which actions if you want to have an intellegent discussion about making changes, which most pundits seem to lack, or are willing to gloss over to support their cause de jure.

IP - the Internet Protocol
A lot of people think of the Internet as a place, a pipe or other things... it's really just a protocol.
A well engineered protocol that has stood the test of time. The base philosophy is one of doing as little as possible, but no less. The ONLY job of the IP layer is to get a packet from its source to its intended destination address. Just as when you drop a single postcard in the mail, you have a reasonable expectation it will arrive, but no guarantee, the same is said for Internet Protocol packets.

Note: There are some safeguards built into IP based on the lessons of experience. They help avert most of the stupid meltdowns that can occur. For example, because IP is a forwarding protocol, one of the most basic problems is that of an infinite loop. To prevent this, all routers (computer nodes that process IP packets) are required to decrement the TTL counter that exists in every IP packet. If the value of the TTL counter reaches zero, the packet is discarded. It's a simple and very effective means to prevent infinite loops.

Now I could continute into a long dissertation about the other layers... but we'll skip that.

It turns out that Bob Metcalf has already done the work for this post.... back in 1998 he wrote Is the Internet Dead go read it.

No comments: