The biggest topic throughout much of the blogosphere today has been so-called net neutrality, which is basically about whether or not bandwidth providers can charge different rates for different kinds of traffic. This issue can be “framed” in two very different ways, depending on which side you’re already on.

  • Without net neutrality, bandwidth providers will be the ones deciding which sites everyone can view, and/or charge extortionate “tolls” for net use. Innovation will suffer, startups will die, and we’ll all be cast back into the dark ages before you could buy your neighbors’ cast-off junk on eBay. This view is espoused mostly by content providers (such as eBay) and content-provider wannabes (e.g. bloggers trying to make money from AdWords).
  • With net neutrality, a surge of traffic to some entertainment site could damage the internet’s ability to deliver services essential to serious business or even life itself if emergency services’ voice-over-IP lines stopped working. Bandwidth terms and prices will be determined by Big Bad Government instead of supply demand, representing another setback for free markets yadda yadda yadda. This view is espoused mostly by the bandwidth providers and people who understand how the net actually works under the covers.

I’ve written about this from a political/economic perspective on It Affects You, but here I’d like to address a more technical issue – the attempt to represent net neutrality as a necessary extension of the end-to-end principle (E2E). This largely seems to stem from a comment by Lessig and McChesney in their article on “net-neut” (as it’s being called):

Net neutrality means simply that all like Internet content must be treated alike and move at the same speed over the network. The owners of the Internet’s wires cannot discriminate. This is the simple but brilliant “end-to-end” design of the Internet that has made it such a powerful force for economic and social good: All of the intelligence and control is held by producers and users, not the networks that connect them.

E2E does NOT require that all traffic be treated alike and moved at the same speed; the equivalence that they’re trying to establish is totally bogus. E2E is about the endpoints taking responsibility for their own needs (especially reliability) themselves as much as possible, but taking responsibility does not mean prohibiting others from doing what they need to or what they believe might help. It just means don’t make assumptions. Don’t assume that the underlying network will handle timeouts and retransmission, fragmentation and reassembly, checksums and everything else. If they do handle all of those things, great. You’ll have to do less work that way, but you had better be prepared to do more work if necessary.

As it turns out, networks can’t be – and already aren’t – based on a such a “totalitarian” form of E2E anyway. No matter how much responsibility endpoints take, for example, they can’t make up bandwidth that’s not there. They don’t even know how to route stuff. If the internet were based on totalitarian E2E, every node on it would have to specify every element of every packet’s path to a destination – what we network folks call source routing. Every node would need a routing table the size of Kansas, and the overhead of keeping every one up to date (and/or dealing with misrouted packets) would be more than the network could bear. That’s obviously not how things work. In actual fact, even the nodes that do have huge routing tables have to take “short cuts” such as BGP and shortest-prefix routing and MPLS and a very large bag of other tricks all of which involve the network being far more aware of the traffic passing through it than “treat alike and move at the same speed” would allow. That’s just not a design that can work. It’s taking a fundamentally good principle and perverting it by (mis)applying it in ways it wasn’t meant to be applied.

Reasonable people might or might not believe that net neutrality is necessary for the continued growth of the internet (not that growth is in and of itself necessarily a good thing). I happen to be among the dissenters, but I can accept that I’m in the minority. What I will not accept, though, is net-neutrality proponents trying to ride on E2E’s coat-tails when net neutrality and E2E really have little to do with one another. Why not just portray net neutrality as a way of protecting the poor little children while you’re at it? Better yet, find an argument that doesn’t rely so much on misrepresentation.