Saturday, January 01, 2011

20% of peak internet traffic is Netflix streaming? And what about net neutrality?

This article on gizmodo.com says yes: "A recent study says that 20 percent of all downstream internet traffic during peak times in the US is Netflix streaming." The study quoted is here, and a 2009 report says that video-on-demand is about 27% of global internet traffic (never mind peak downstream bandwidth).

I'm no expert on network traffic, but this makes me wonder about net neutrality. I know the analogy isn't quite apt, but I think back to the old days, when one big expensive central processing unit served lots of users "simultaneously." In those days, one might imagine a very long process (a simulation of tomorrow's weather, for example) competing for CPU bandwidth with a very short process (an undergraduate programming assignment that typically would include an aborted compilation).

In those days, operating systems would tend to give short, interactive tasks a higher execution priority than long-running batch-oriented tasks. So if your weather simulation took many hours to run, you'd typically schedule a cheaper (yes, they used to charge users for computer time!) class of service -- you wanted to pay a low per-CPU-second rate -- that would nevertheless let your task use a lot of memory and CPU time, but would let other users (like the undergraduate who hasn't yet mastered the programming language's syntax, or the 72-character line length limit) slip in for a few seconds with quick turnaround.

Likewise, the undergraduates were given a class of service that would give them quick turnaround but with strict limits on how much they could use in the way of computing resources -- CPU-seconds, pages printed, memory, access to files stored on disk, etc.

But what do we do in this new world where during peak times, 20% of all downstream traffic is consumed by Netflix streaming? Is it reasonable that these bytes get the same treatment as the bytes of the short email I'm trying to send, or the blog post I'm trying to read?

Typically, interactive traffic used to involve small amounts of CPU time; lots of CPU time meant something that one knew was going to take a long time and hence didn't involve high "urgency." If we bring the analogy to today, where a big download (of, say, the OpenSUSE 11.3 DVD image) involves a lot of kbytes (not CPU-seconds), vs interactive traffic (when you click "recalculate total" on a merchant's website for example) which involves fewer kbytes but with more stringent latency requirements.

But when we're talking about interactive video (lots of kbytes with stringent latency requirements) or streaming movies (REALLY lots of kbytes, albeit with slightly less stringent latency issues -- that "buffering..." business), I have to say that if a network provider wanted to charge a higher rate for high-volume high-urgency service, that wouldn't seem all that unreasonable to me.

If it costs Netflix less than a dime to stream a two-hour HD movie (3 Gbytes), and it suddenly cost them more like a quarter to stream it -- vs what, 88 cents to ship a DVD to your house and for you to ship it back to them -- well, that wouldn't seem all that unreasonable either.

NOTE: I'm not in the employ of any network infrastructure outfits, nor have I received any bribes or fees for writing this. Nor am I a netflix hater.

No comments: