Skip to content

Relationship to Kademlia

mlawren edited this page Apr 28, 2011 · 2 revisions

The Kademlia paper describes a Distributed Hash Table (DHT). The nodes of a DHT discover each other (using a lower-level FIND primitive) and find and set values on the basis of a hash function which spreads the locations of keys evenly across (multiple) nodes. The "normal" use of a DHT is for storing and retrieving key/value pairs, which implies that the main user(caller) interface involves GET, and PUT operations.

TeleHash consists of nodes which still FIND each other using a hash function. However instead of storing and retrieving values, TeleHash offers a subscribe and publish model, implying that the main user(caller) interface involve a longer-term SUBSCRIBE (listen) operation that listens out for one-time PUBLISH (send) requests. The difference is that data is not stored even temporarily in TeleHash. You can only catch messages as they pass though certain areas if you happen to be listening at that time. Perhaps it would be better to describe TeleHash as a Distributed Message Passing Interface (DMPI).