Monday, January 12, 2009

A series of tubes

Let's start by observing that Ted Stevens is a despicable person. But that has nothing to do with this post.

Ted got tons of ridicule heaped onto him for his ill-expressed analogy about the Internet. Here's the relevant bit:
And again, the Internet is not something that you just dump something on. It's not a big truck. It's a series of tubes. And if you don't understand, those tubes can be filled and if they are filled, when you put your message in, it gets in line and it's going to be delayed by anyone that puts into that tube enormous amounts of material, enormous amounts of material.
Now, Ted's analogy is not exactly accurate. To be sure, Ted was probably repeating something someone told him which he didn't quite understand. But it's nowhere near as inaccurate as people have criticized him for. It's more accurate than most similar analogies stated in similar situations by people who aren't in the techie trades. I feel bad for Ted getting ragged on so badly for saying something that actually shows probably more insight than 60% of the other people in the Senate chambers would have had that same day.

In context, the contrast between trucks and tubes is actually pretty apt as a means of illustrating the difference between throughput, bandwidth, and latency, and which one is more important for any particular issue. When you get right down to it, the Internet is a lot more like a series of tubes than it is like a bunch of trucks.

Most physical analogies break down when they fail to account for the fact that information is infinitely and perfectly copyable, while bits never are; and both the trucks and tubes analogies utterly fail on that, as do almost all the other analogies you've heard over the years, and the ones my Computer Science professors used back in college. But analogies don't have to match every point, just the points relevant to the argument being made.

Like a series of tubes, you can't just add more trucks to double the bandwidth without having some effect on the other characteristics like latency. (Ignore, for now, that there's only so many lanes on the highway. Ah, highway, speaking of overused analogies for the Internet that are wrong in key ways but still quite useful.) Like a series of tubes, the Internet's good at diverting the same input to a large number of outputs. Like a series of tubes, the Internet has mechanisms for routing around blockages which depend more on there being at least one path that works, and the carrier trying multiple paths so that at least part of it will find that one path, rather than the method of each individual truck driver having to be smart enough to deal with the problem himself. Like a series of tubes, the Internet sends most of it what it sends in lots of small parts which can be separated and recombined a hundred times before it arrives, reassembling itself into something useful at the other end, rather than having large discrete packets that either make it in whole or not at all. Like a series of tubes, the length of the tube is only part of the question of how long it takes something to make it to the destination, unlike trucks where the speed of each truck versus the distance of the road is almost all that matters. Like a series of tubes, the Internet can be substantially impacted by a small number of packets being routed badly or taking up more than their share, in a way that impacts millions of smaller, simpler packets; whereas trucks might be worse at rerouting around everyday minor interruptions (as each driver has to invent the answer separately) but they're less vulnerable to these kinds of large-scale interruptions. (This last point will decrease a lot with IPv6 and support for multicast.) And like a series of tubes, the Internet seems to be a lot more likely to be carrying sewage and refuse than valuable goods, compared to a bunch of trucks!

Ted, by virtue of his position in the public eye (again, setting aside that he's a loathsome reptile), has earned a fair amount of jibes over his ignorance of things that he's legislating. Is it fair to expect Senators to know about everything just because they're expected to legislate everything? Maybe, maybe not: big topic, for another day. But it's certainly fair to make fun of them. But when it gets too much it starts to seem unfair, and in Ted's case, I think it got too much quite a while ago.

Anyway, let's just make fun of him for being an unscrupulous wretch. It's more satisfying, anyway.

No comments: