Software:Coral Content Distribution Network

From HandWiki
Coral Content Distribution Network
Coral CDN logo.png
Developer(s)Michael J. Freedman
Initial release2004
Operating systemCross-platform (web-based application)
TypeP2P Web cache
Websitewww.coralcdn.org

The Coral Content Distribution Network, sometimes called Coral Cache or Coral, was a free peer-to-peer content distribution network that ran from 2004 until 2015. It was designed and operated by Michael J. Freedman. Coral used the bandwidth of a worldwide network of web proxies and name servers to mirror World Wide Web content, often to avoid the Slashdot effect or to reduce the load on web servers.

Operation

Coral avoided high loads on individual nodes through an indexing abstraction called a distributed sloppy hash table (DSHT); DSHTs create self-organizing clusters of nodes which fetch information from each other to avoid communicating with more distant or heavily-loaded servers. DSHT is described in the paper Sloppy hashing and self-organizing clusters.[1]

The sloppy hash table refers to the fact that Coral was made up of concentric rings of distributed hash tables (DHTs), each ring representing a wider and wider geographic range (or rather, ping range). The DHTs are composed of nodes all within some latency of each other (for example, a ring of nodes within 20 milliseconds of each other). It avoids hot spots (the 'sloppy' part) by only continuing to query progressively larger sized rings if they are not overburdened. In other words, if the two top-most rings are experiencing too much traffic, a node will just ping closer ones: when a node that is overloaded is reached, upward progression stops. This minimises the occurrence of hot spots, with the disadvantage that knowledge of the system as a whole is reduced.

Usage

Coral users could access content through the Coral Cache by adding .nyud.net to the hostname in the site's URL, resulting in what is known as a 'coralized link'. So, for example,

http://example.com

becomes

http://example.com.nyud.net

Any additional address component after the hostname remains after .nyud.net; hence

http://example.com/folder/page.html

becomes

http://example.com.nyud.net/folder/page.html

For websites that use a non-standard port, for example,

http://example.com:8080

becomes

http://example.com.nyud.net:8080

History

The project was deployed in March 2004, during which it has been hosted on PlanetLab, a large-scale distributed research network of several hundred servers deployed at universities worldwide. It has not, as originally intended, been deployed by third-party volunteer systems. About 300 to 400 PlanetLab servers were running CoralCDN. The source code is freely available under the terms of the GNU GPL.

In August 2012 it was stated that active development had been "stopped for a while", although the CDN itself would continue to operate.[2]

(As of April 2015) *.nyud.net had stopped resolving, rendering the CDN non-functional.[3][4] The project website is still up, but has not been updated since 2012.

See also

References

  1. Freedman, Michael J.; Mazières, David (2003) (PDF). Sloppy Hashing and Self-Organizing Clusters. https://www.coralcdn.org/docs/coral-iptps03.pdf. Retrieved July 11, 2018. 
  2. "News and Overview". 20 August 2012. http://www.coralcdn.org/overview/. Retrieved 24 September 2016.  News last updated 20 August 2012 (as of September 2016)
  3. Freedman, Mike (6 April 2016). "[coral-users Coral CDN Down?"]. https://cs.nyu.edu/pipermail/coral-users/2016-April/000648.html. Retrieved 10 June 2018. 
  4. Freedman, Mike (4 December 2016). "[coral-users So, no more nyud.net?"]. https://cs.nyu.edu/pipermail/coral-users/2016-December/000651.html. Retrieved 10 June 2018. 

External links