jashmenn / chordjerl

An Erlang implementation of the Chord distributed hash lookup protocol

This URL has Read+Write access

name age message
file .gitignore Tue Feb 17 12:13:35 -0800 2009 changed nbit for testing tweaks to make sure p... [jashmenn]
file README.md Thu Feb 19 08:34:05 -0800 2009 Updated readme, added images [jashmenn]
file Rakefile Wed Feb 25 07:46:16 -0800 2009 added in skelerl [jashmenn]
file chordjerl.pub Fri Jan 16 22:29:50 -0800 2009 added .pub file [jashmenn]
directory doc/ Wed Feb 25 07:34:19 -0800 2009 added a todo doc [jashmenn]
directory include/ Fri Feb 27 17:33:00 -0800 2009 Added comm as an option [Ari Lerner]
directory priv/ Wed Feb 25 07:46:16 -0800 2009 added in skelerl [jashmenn]
directory src/ Fri Feb 27 19:05:27 -0800 2009 Merge branch 'master' of git@github.com:jashmen... [jashmenn]
directory test/ Fri Feb 27 18:15:01 -0800 2009 cleanup. tests pass [jashmenn]
README.md

Chordjerl

The goal of Chordjerl (pronounced: cordial) is to be an reusable Erlang implementation of the Chord distrubuted key lookup protocol.

Chord

Chord is a lookup protocol for efficient location of a node that stores a desired data item in a decentralized, peer-to-peer system. The Chord algorithm provides the foundation for a reliable, efficient, scalable decentralized distributed hash.

Chord provides support for just one operation: given a key, it maps the key onto a node.

You can read more about Chord in the paper from Stoica et al. "Chord: A Scalable Peer-to-peer Lookup Protocol for Internet Applications" (http://pdos.csail.mit.edu/papers/ton:chord/paper-ton.pdf)

Status

Pre-Alpha

Integration

Chordjerl is designed to work with Ari Lerner's layers http://github.com/auser/layers/tree/master and converse http://github.com/auser/converse/tree/master

Screenshots

Here's a simple network of 7 nodes where m (the number of bits in the hash function) = 7

nodes!

Here's a a more complex, but stable, network of 20 nodes with m=15

nodes!