Tapestry: A Resilient Global-scale Overlay for Service Deployment
Ben Y. Zhao
Sean C. Rhea
Anthony D. Joseph
John D. Kubiatowicz
IEEE Journal on Selected Areas in Communications
January 2004, Vol. 22, No. 1, Pgs. 41-53.
[Full Text in GZIP PS Format,
[Full Text in PDF Format, 432KB]
We present Tapestry, a peer-to-peer overlay routing infrastructure
offering efficient, scalable, location-independent routing of messages
directly to nearby copies of an object or service using only localized
resources. Tapestry supports a generic Decentralized Object Location and
Routing (DOLR) API using a self-repairing, soft-state based routing
layer. This article presents the Tapestry architecture, algorithms, and
implementation. It explores the behavior of a Tapestry deployment on
PlanetLab, a global testbed of approximately 100 machines. Experimental
results show that Tapestry exhibits stable behavior and performance as
an overlay, despite the instability of the underlying network layers.
Several widely-distributed applications have been implemented on
Tapestry, illustrating its utility as a deployment infrastructure.