Ant Rowstron

Principal Researcher, Microsoft Research Cambridge

Pastry (Distributed Hash Table) and related overlay work

The original Pastry etc web site is still available here and has information on Pastry, Squirrel, PAST, Scribe and SplitStream. Please visit the project web site most of the work on this web site was done as a collaboration between MSR and Rice University.

For later projects that were done just inside of MSR - please see this page.  

Pastry is a large-scale decentralised key-based routing infrastructure for peer-to-peer applications. It is from the family of protocols that are commonly known as Distributed Hash Tables (DHT).

Pastry has been used in a wide variety of applications including web caching (Squirrel), archival file storage (PAST), application-level multicast (Scribe) and video/content streaming (SplitStream).  Some of the key publications from Pastry and the related applications:

A. Rowstron and P. Druschel, "Pastry: Scalable, distributed object location and routing for large-scale peer-to-peer systems", Middleware'2001, Germany, November 2001. [ pdf.zip | ps.zip | pdf | ps ]

M. Castro, P. Druschel, A-M. Kermarrec, A. Nandi, A. Rowstron and A. Singh, "SplitStream: High-bandwidth multicast in a cooperative environment", SOSP'03, Lake Bolton, New York, October, 2003.   [ pdf.zip | ps.zip pdf | ps ]

A. Rowstron and P. Druschel, "Storage management and caching in PAST, a large-scale, persistent peer-to-peer storage utility", 18th SOSP'01, Banff, Canada, October 2001.  [ pdf.zip | ps.zip | pdf | ps ]

M. Castro, P. Druschel, A. Ganesh, A. Rowstron, and D. S. Wallach, "Security for structured peer-to-peer overlay networks".  In Proceedings of the Fifth Symposium on Operating Systems Design and Implementation (OSDI'02), Boston, MA, December 2002. [ pdf.zip | ps.zip | pdf | ps ]

M. Castro, M. Costa, and A. Rowstron, "Debunking some myths about structured and unstructured overlays", NSDI'05, Boston, MA, USA, May 2005. [ ps | pdf ]

Beyond overlays

In the last few years I have been exploring how to take key concepts from overlays and apply them to other areas. Currently I am very interested in understanding the differences between a physical and virtual topology.