Chord: A Scalable Peer-to-Peer Lookup Service for Internet Applications

Robert Morris, David Karger, Frans Kaashoek, Hari Balakrishnan
ACM SIGCOMM 2001, San Diego, CA, September 2001

A fundamental problem that confronts peer-to-peer applications is to efficiently locate the node that stores a particular data item. This paper presents Chord, a distributed lookup protocol that addresses this problem. Chord provides support for just one operation: given a key, it maps the key onto a node. Data location can be easily implemented on top of Chord by associating a key with each data item, and storing the key/data item pair at the node to which the key maps. Chord adapts efficiently as nodes join and leave the system, and can answer queries even if the system is continuously changing. Results from theoretical analysis, simulations, and experiments show that Chord is scalable, with communication cost and the state maintained by each node scaling logarithmically with the number of Chord nodes.

See also the Chord Web page

[PDF (162KB)] [PostScript (386KB)] [Gzipped PostScript (113KB)]

Bibtex Entry:

@inproceedings{morris2001chord,
   author =       "Robert Morris and David Karger and Frans Kaashoek and Hari Balakrishnan",
   title =        "{Chord: A Scalable Peer-to-Peer Lookup Service for Internet Applications}",
   booktitle =    {ACM SIGCOMM 2001},
   year =         {2001},
   month =        {September},
   address =      {San Diego, CA}
}