|
CMU-CS-05-171
Computer Science Department
School of Computer Science, Carnegie Mellon University
CMU-CS-05-171
Self-Adjusting Distributed Trees
Michael K. Reiter*, Asad Samar**, Chenxi Wang**
September 2005
CMU-CS-05-171.pdf
Keywords: Tree balancing, distributed algorithms, amortized cost
An object retrieval protocol that enforces mutually exclusive access to
a shared object is an important primitive employed by many distributed
applications including distributed directories, distributed resource
sharing systems and ordered multicast protocols, to name a few. Most
existing implementations of this object retrieval primitive use a tree
as the underlying communication structure due to the simple acyclic nature
of trees. The worst case performance of this primitive and of the large
body of applications built upon it, is O(n) for n nodes
sharing the object. In this paper, we present a novel distributed
self-adjusting tree for
object retrieval protocols that guarantees the message complexity per
retrieval, averaged over the worst case sequence of retrievals, to be
O(log n). In addition, our algorithm adjusts only portions of the tree
in which retrievals occur; this is advantageous when the tree structure
reflects network proximity. We implement best known techniques from the
centralized setting and compare their performance with our algorithm.
Results are presented from experiments carried out on PlanetLab to
evaluate the performance of different schemes under different workloads.
We also present extensions to our basic protocol allowing a wide range
of distributed applications including atomic broadcast and content
discovery to achieve better performance using our techniques. To our
knowledge, this is the first attempt to reduce access costs in a
distributed tree where the tree dynamically adjusts itself during use
to achieve O(log n) performance for worst case workloads.
23 pages
**Computer Science Department and Department of Electrical and Computer Engineering, Carnegie Mellon
**Department of Electrical and Computer Engineering, Carnegie Mellon
|