Open Akamaization with Coral

Last week I wondered about the emergence of a grassroots grid. The other day Brady Joslin pointed me to Coral, a "peer-to-peer content distribution network comprised of a world-wide network of web proxies and nameservers." It's simple to use. Just append nyud.net:8090 to the domain name of any URL. So for example in the meme tracking script I wrote about last week, Brady altered this:

var deliciousUrl = 'http://del.icio.us/url/?url=' + currentPage;
to this:
var deliciousUrl = 'http://del.icio.us.nyud.net:8090/url/?url=' + currentPage;
The results are usually slower to come back, but as Brady points out, the asynchronicity of XmlHttpRequest can deal with that.

The details are in a paper entitled Democratizing Content Publication with Coral, by Michael J. Freedman, Eric Freudenthal, and David Mazières. It's fascinating, and I'm really curious to see how far this kind of thing might go.

The use of such systems will tend to flush out several latent issues. One, as I mentioned before, is the use of HTTP GET for resource-transforming operations.

Another is the problem of URLs that are aliased unnecessarily. This is an aspect of content management that's almost always overlooked. For me, the dictum Cool URIs don't change isn't only about assuring namespace continuity across site reorganizations and content-management-system switcheroos. Even when these are held constant, you often see multiple paths to the same resource. When the URL is the rendezvous mechanism that bloggers and social bookmarkers use to coordinate their activities, unnecessary aliasing thwarts aggregation as well as caching.

We've all been working with URLs for so long, you'd think there could be nothing new or surprising about them. But in several ways, we're only now starting to build out infrastructures that expose some of their deep properties.


Former URL: http://weblog.infoworld.com/udell/2005/04/19.html#a1218