Content Providers and Neutrality
I don’t seem to be writing too timely, but I hope these posts nevertheless remain interesting. Last week the course I TA for was discussing the idea of network neutrality. Broadly defined this is a debate over whether ISPs can discriminate (packet shape) between different services or content sources.
During the discussion group, however, I was thinking about another element of neutrality on the network—I’ll call it “device neutrality.” There are of course different capabilities of different browsers or devices that permit certain web sites to function on one device and not on another. The lack of support for Adobe Flash on iPod/iPad/iPhone devices is an easy example. Smaller screen sizes of mobile devices might also make it desirable for a web site operator to serve different content to different devices (think of Mobile Gmail, for instance).
To this end, each browser/device sends information about itself when it requests a web page from a server. When GoogleTV launched, it followed this convention and informed web sites that the device accessing them was a (slightly) modified version of its Chrome browser on a GoogleTV device. GoogleTV has the same features of a standard browser with most of the plug-ins including Adobe Flash; so, websites should have been able to serve existing versions of webpages with no issues. Most sites did this, but notably, the US video streaming service Hulu along with broadcasters NBC, CBS, and ABC, specifically singled out GoogleTV devices for special attention.
As noted on NPR and the New York Times, Hulu incorrectly told visitors using GoogleTV that the device was unsupported. I suppose this could have initially been a simple error in coding, but given that a loophole was found and then that stopped working and Hulu’s history of blocking browsers, it seems far more likely this was a deliberate decision to not permit users of GoogleTV (and Boxee, etc.) to access the service. Of course, desktop users are still welcome to simply connect a PC directly to the TV and watch Hulu just the same as a GoogleTV user would have.
These are the sort of knee-jerk reactions by content providers that keep file sharing alive and call for caution of new cloud based multimedia storage services (a.k.a. digital lockers). A downloaded file works on a device or it doesn’t, but the device generally doesn’t lie about the possibility, and isn’t susceptible to the whims of bureaucrat a distant company.
In general greater transparency is needed. Transparency, yes, in the bandwidth shaping practices of ISPs, but also in protocols and content. If Hulu wants to block GoogleTV they should have the cojones to admit what they are doing and tell the user so. To erroneously state the device is unsupported is weak and pathetic. The same can be said of most British ISPs in their filtering practices. (Many provided a fake “404 page not found” error message when they were in fact blocking the Virgin Killer Wikipedia page in late 2008.)
One way to enhance privacy and transparency would be to slightly modify the initially HTTP request protocol. The amount of information sent by a browser to webserver is staggering, and as demonstrated by the panopticlick project of the EFF, this information can be used to track users even after removing cookies, etc. In place of sending all this information, one option would be to add a method to allow the client to query a server for the versions of a page available. The client device/browser could then respond and select the version it wanted. Mobile devices could select a mobile versions (if available) and desktop browsers a desktop version; the desired language could be selected among those the server says it supports. There is no need to tell a web server with only one version of a page my screen size, operating system, browser make, language preference, etc. on every request of a page. These preferences for versions of a page could be automatically selected by the browser or the user could manually make a choice. They could be the same for every website, or each different versions could be requested from different websites.
Overall, however, I just wish that content providers (and ISPs) would be more transparent in their practices.