Dipsea: a modular distributed hash table

  • Authors:
  • Rajeev Motwani;Gurmeet Singh Manku

  • Affiliations:
  • -;-

  • Venue:
  • Dipsea: a modular distributed hash table
  • Year:
  • 2004

Quantified Score

Hi-index 0.00

Visualization

Abstract

Dipsea is a modular architecture for building a Distributed Hash Table (DHT). A DHT is a large hash table that is cooperatively maintained by a large number of machines communicating over the Internet. Decentralization and automatic re-configuration are two key design goals for a DHT. The architecture of Dipsea consists of three layers: ID Management, Overlay Routing and Data Management. The Overlay Routing layer consists of three modules: Emulation Engine, Ring Management and Choice of Long-Distance Links. Efficient algorithms for ID Management are designed—these algorithms require few messages, require few re-assignments of existing IDs and ensure that the hash table is divided among the participating machines as evenly as possible. Ring Management ensures that participating machines establish connections among themselves, as a function of their IDs, to form a fault-tolerant ring. The Emulation Engine is responsible for “emulation” of arbitrary families of routing networks. It handles issues arising out of dynamism (arrival and departure of participating machines), scale (variation in the average number of participating machines) and physical network proximity. Choice of Long-Distance Links allows a DHT to choose any family of routing networks (deterministic or randomized) for emulation. Several deterministic and randomized routing networks are designed and analyzed. Among these are Symphony (one of the first randomized DHT routing networks), Papillon (a deterministic routing network that guarantees asymptotically optimal route lengths with greedy routing for a fixed out-degree of nodes), and Mariposa (a randomized routing network that also guarantees optimal route lengths for a given out-degree of nodes).