We study robust and efficient distributed algorithms for searching, storing,
and maintaining data in dynamic Peer-to-Peer (P2P) networks. P2P networks are
highly dynamic networks that experience heavy node churn (i.e., nodes join and
leave the network continuously over time). Our goal is to guarantee, despite
high node churn rate, that a large number of nodes in the network can store,
retrieve, and maintain a large number of data items. Our main contributions are
fast randomized distributed algorithms that guarantee the above with high
probability (whp) even under high adversarial churn:
1. A randomized distributed search algorithm that (whp) guarantees that
searches from as many as n−o(n) nodes (n is the stable network size)
succeed in O(logn)-rounds despite O(n/log1+δn) churn, for
any small constant δ>0, per round. We assume that the churn is
controlled by an oblivious adversary (that has complete knowledge and control
of what nodes join and leave and at what time, but is oblivious to the random
choices made by the algorithm).
2. A storage and maintenance algorithm that guarantees (whp) data items can
be efficiently stored (with only Θ(logn) copies of each data item)
and maintained in a dynamic P2P network with churn rate up to
O(n/log1+δn) per round. Our search algorithm together with our
storage and maintenance algorithm guarantees that as many as n−o(n) nodes
can efficiently store, maintain, and search even under O(n/log1+δn) churn per round. Our algorithms require only polylogarithmic in n bits to
be processed and sent (per round) by each node.
To the best of our knowledge, our algorithms are the first-known,
fully-distributed storage and search algorithms that provably work under highly
dynamic settings (i.e., high churn rates per step).Comment: to appear at SPAA 201