Issue No.09 - September (2009 vol.20)
pp: 1339-1351
Rodrigo Rodrigues , Max Planck Institute for Software Systems (MPI-SWS), Kaiserslautern and Saarbrück
Anjali Gupta , The Wellcome Trust Centre for Human Genetics, Oxford
Pedro Fonseca , Max Planck Institute for Software Systems (MPI-SWS), Kaiserslautern and Saarbrücken
Most peer-to-peer lookup schemes keep a small amount of routing state per node, typically logarithmic in the number of overlay nodes. This design assumes that routing information at each member node must be kept small so that the bookkeeping required to respond to system membership changes is also small, given that aggressive membership dynamics are expected. As a consequence, lookups have high latency as each lookup requires contacting several nodes in sequence. In this paper, we question these assumptions by presenting a peer-to-peer routing algorithm with small lookup paths. Our algorithm, called “OneHop,” maintains full information about the system membership at each node, routing in a single hop whenever that information is up to date and in a small number of hops otherwise. We show how to disseminate information about membership changes quickly enough so that nodes maintain accurate complete membership information. We also present analytic bandwidth requirements for our scheme that demonstrate that it could be deployed in systems with hundreds of thousands of nodes and high churn. We validate our analytic model using a simulated environment and a real implementation. Our results confirm that OneHop is able to achieve high efficiency, usually reaching the correct node directly 99 percent of the time.
Distributed systems, peer to peer, network topology, routing protocol, distributed data structures.
Rodrigo Rodrigues, Anjali Gupta, Pedro Fonseca, "Full-Information Lookups for Peer-to-Peer Overlays", IEEE Transactions on Parallel & Distributed Systems, vol.20, no. 9, pp. 1339-1351, September 2009, doi:10.1109/TPDS.2008.222
[1] A. Gupta, B. Liskov, and R. Rodrigues, “Efficient Routing for Peer-to-Peer Overlays,” Proc. First Symp. Networked Systems Design and Implementation (NSDI '04), Mar. 2004.
[2] I. Stoica, R. Morris, D. Karger, F. Kaashoek, and H. Balakrishnan, “Chord: A Scalable Peer-to-Peer Lookup Service for Internet Applications,” Proc. ACM SIGCOMM '01, Aug. 2001.
[3] S. Ratnasamy, P. Francis, M. Handley, R. Karp, and S. Shenker, “AScalable Content-Addressable Network,” Proc. ACM SIGCOMM'01, Aug. 2001.
[4] A. Rowstron and P. Druschel, “Pastry: Scalable, Decentralized Object Location, and Routing for Large-Scale Peer-to-Peer Systems,” Proc. IFIP/ACM Int'l Conf. Distributed Systems Platforms (Middleware '01), Nov. 2001.
[5] B.Y. Zhao, J.D. Kubiatowicz, and A.D. Joseph, “Tapestry: An Infrastructure for Fault-Tolerant Wide-Area Location and Routing,” Technical Report UCB/CSD-01-1141, Univ. of California, Berkeley, Apr. 2001.
[6] S. Saroiu, P.K. Gummadi, and S.D. Gribble, “A Measurement Study of Peer-to-Peer File Sharing Systems,” Proc. Multimedia Computing and Networking Conf. (MMCN '02), Jan. 2002.
[7] M. Steiner, E.W. Biersack, and T. Ennajjary, “Actively Monitoring Peers in KAD,” Proc. Sixth Int'l Workshop Peer-to-Peer Systems (IPTPS '07), Feb. 2007.
[8] J. Tian and Y. Dai, “Understanding the Dynamic of Peer-to-Peer Systems,” Proc. Sixth Int'l Workshop Peer-to-Peer Systems (IPTPS '07), Feb. 2007.
[9] “The Chord/Dhash Project,”, 2008.
[10] A. Vahdat, K. Yocum, K. Walsh, P. Mahadevan, D. Kostic, J. Chase, and D. Becker, “Scalability and Accuracy in a Large-Scale Network Emulator,” Proc. Fifth Symp. Operating Systems Design and Implementation (OSDI), 2002.
[11] I. Stoica, R. Morris, D. Karger, M.F. Kaashoek, and H. Balakrishnan, “Chord: A Scalable Peer-to-Peer Lookup Service for Internet Applications,” Technical Report MIT-LCS-TR-819, Mass. Inst. of Technology (MIT), Mar. 2001.
[12] B. Zhao, Y. Duan, L. Huang, A. Joseph, and J. Kubiatowicz, “Brocade: Landmark Routing on Overlay Networks,” Proc. First Int'l Workshop Peer-to-Peer Systems (IPTPS '02), Mar. 2002.
[13] K.P. Gummadi, S. Saroiu, and S.D. Gribble, “King: Estimating Latency between Arbitrary Internet End Hosts,” Proc. ACM SIGCOMM Internet Measurement Workshop (IMW '02), Nov. 2002.
[14] T. Gil, F. Kaashoek, J. Li, R. Morris, and J. Stribling, “P2PSIM: ASimulator for Peer-to-Peer Protocols,” http://www.pdos.lcs. mit.edup2psim/, 2008.
[15] D. Mazières, “A Toolkit for User-Level File Systems,” Proc. Usenix Ann. Technical Conf., pp. 261-274, 2001.
[16] F. Dabek, M.F. Kaashoek, D. Karger, R. Morris, and I. Stoica, “Wide-Area Cooperative Storage with CFS,” Proc. 18th ACM Symp. Operating Systems Principles (SOSP '01), Oct. 2001.
[17] E. Sit, F. Dabek, and J. Robertson, “UsenetDHT: A Low Overhead Usenet Server,” Proc. Third Int'l Workshop Peer-to-Peer Systems (IPTPS '04), Feb. 2004.
[18] J. Stribling, J. Li, I.G. Councill, M.F. Kaashoek, and R. Morris, “Overcite: A Distributed, Cooperative Citeseer,” Proc. Third Symp. Networked Systems Design and Implementation (NSDI '06), May 2006.
[19] F. Kaashoek and D.R. Karger, “Koorde: A Simple Degree-Optimal Hash Table,” Proc. Second Int'l Workshop Peer-to-Peer Systems (IPTPS), 2003.
[20] R. Rodrigues, B. Liskov, and L. Shrira, “The Design of a Robust Peer-to-Peer System,” Proc. 10th SIGOPS European Workshop, Sept. 2002.
[21] J.R. Douceur, A. Adya, W.J. Bolosky, D. Simon, and M. Theimer, “Reclaiming Space from Duplicate Files in a Serverless Distributed File System,” Proc. 22nd IEEE Int'l Conf. Distributed Computing Systems (ICDCS '02), July 2002.
[22] I. Gupta, K. Birman, P. Linga, A. Demers, and R. van Renesse, “Kelips: Building an Efficient and Stable P2P DHT through Increased Memory and Background Overhead,” Proc. Second Int'l Workshop Peer-to-Peer Systems (IPTPS '03), Feb. 2003.
[23] R. Mahajan, M. Castro, and A. Rowstron, “Controlling the Cost of Reliability in Peer-to-Peer Overlays,” Proc. Second Int'l Workshop Peer-to-Peer Systems (IPTPS '03), Feb. 2003.
[24] D. Liben-Nowell, H. Balakrishnan, and D. Karger, “Analysis of the Evolution of Peer-to-Peer Systems,” Proc. 21st Ann. ACM Symp. Principles of Distributed Computing (PODC '02), July 2002.
[25] J. Li, J. Stribling, R. Morris, and M.F. Kaashoek, “Bandwidth-Efficient Management of DHT Routing Tables,” Proc. Second Usenix Symp. Networked Systems Design and Implementation (NSDI '05), May 2005.
[26] B. Leong and J. Li, “Achieving One-Hop DHT Lookup and Strong Stabilization by Passing Tokens,” Proc. 12th Int'l Conf. Networks (ICON '04), Nov. 2004.
[27] L.R. Monnerat and C.L. Amorim, “D1HT: A Distributed One Hop Hash Table,” Proc. 20th IEEE Int'l Parallel and Distributed Processing Symp. (IPDPS '06), Apr. 2006.
[28] C. Tang, M.J. Buco, R.N. Chang, S. Dwarkadas, L.Z. Luan, E. So, and C. Ward, “Low Traffic Overlay Networks with Large Routing Tables,” ACM SIGMETRICS Performance Evaluation Rev., vol. 33, no. 1, pp. 14-25, 2005.