Justin du Coeur (jducoeur) wrote,
Justin du Coeur

The Bufferbloat Crisis

[Warning: this one's mainly for the techies]

I confess that I'm way behind on my technical blogs, so everyone may already know this one. But I only found out about it today, when my mother (the least techie member of the family) sent me a link to a brief Mother Jones article which boiled down to "Death of the Internet -- news at 11". That led to a slightly overwrought and confusing blog post from Robert Cringely, on the subject of "bufferbloat", which he predicted is going to be the next year's big online problem. Fortunately, *that* led me to a long series of blog posts by Jim Gettys, who was the one that put all the pieces together, and who actually explains the problem in ridiculously gory detail.

The above link to the Gettys series picks up in the middle, but seems to be where he is transitioning from lots of posts about experiments, and begins to talk about what's going on. I commend the series to anybody who is inclined to the technical side of the Internet, understands terms like "TCP", "router", "buffering", and suchlike, and has some attention span -- it's not brief.

The upshot, though, is that the Internet appears to be Pretty Damned Broken at the moment. The problem mostly shows up in weird latency lagginess, especially when you're sharing a line with a high-bandwidth connection (such as video). The crux of the issue is a well-intentioned tragedy of the commons, an accident of Moore's Law. It appears that, since memory is so cheap, everyone is building Massively Huge Memory Buffers into pretty much every piece of networking equipment -- and unless those buffers are integrated with smart traffic shaping, they totally screw up TCP's traffic management. The result is that everyone is slamming way more traffic onto the Net than they should be, over-saturating a lot of connections and causing surprisingly bad packet loss and latency.

Or to put it more simply: there's no *good* reason why people see as much lagginess on the Internet as they do today -- it's heavily the result of building buffers into network equipment that individually make some sense, but in context make things worse.

At least, I think that's what it's saying -- I won't kid you, I haven't spent anywhere near enough time to really internalize his argument yet. But it does sound like there's a subtle but pervasive bug in the way people are building equipment, which is causing the Net to badly underperform relative to what it *should* be able to do, and the problem is getting steadily worse...
Tags: technology

  • Post a new comment


    Anonymous comments are disabled in this journal

    default userpic

    Your reply will be screened

    Your IP address will be recorded