A Modular Paradigm for Building Self-Organizing Peer-to-Peer Applications
Peer-to-peer (P2P) technology has undergone rapid growth, producing new protocols and applications, many of which enjoy considerable commercial success and academic interest. Yet, P2P applications are often based on complex protocols, whose behavior is not completely understood. We believe that in order to enable an even more widespread adoption of P2P systems in commercial and scientific applications, what is needed is a modular paradigm in which well-understood, predictable components with clean interfaces can be combined to implement arbitrarily complex functions. The goal of this paper is to promote this idea by describing our initial experiences in this direction. Our recent work has resulted in a collection of simple and robust components, which include aggregation and membership management. This paper shows how to combine them to obtain a novel load-balancing algorithm that is close to optimal with respect to load transfer. We also describe briefly our simulation environment, explicitly designed to efficiently support our modular approach to P2P protocol design.
Unable to display preview. Download preview PDF.
- 3.Demers, A., Greene, D., Hauser, C., Irish, W., Larson, J., Shenker, S., Sturgis, H., Swinehart, D., Terry, D.: Epidemic Algorithms for Replicated Database Management. In: Proc. of the 6th Annual ACM Symposium on Principles of Distributed Computing (PODC 1987), Vancouver, August 1987, pp. 1–12. ACM Press, New York (1987)CrossRefGoogle Scholar
- 4.Druschel, P., Rowstron, A.: PAST: A Persistent Anonymous Store. In: HotOS VIII (May 2001)Google Scholar
- 6.Jelasity, M., Kowalczyk, W., van Steen, M.: Newscast Computing (submitted for publication)Google Scholar
- 7.Jelasity, M., Montresor, A.: Epidemic-Style Proactive Aggregation in Large Overlay Networks (2004) (to appear)Google Scholar
- 8.Joseph, S.: An Extendible Open-Source Simulator. P2P Journal (November 2003)Google Scholar
- 9.Kok, P., Loh, K., Hsu, W.J., Wentong, C., Sriskanthan, N.: How Network Topology Affects Dynamic Load Balancing. IEEE Parallel & Distributed Technology 4(3) (September 1996)Google Scholar
- 10.Milojicic, D.S., Kalogeraki, V., Lukose, R., Nagaraja, K., Pruyne, J., Richard, B., Rollins, S., Xu, Z.: Peer-to-Peer Computing. Technical Report HPL-2002-57, HP Labs, Palo Alto (2002)Google Scholar
- 11.Network Simulator 2, http://www.isi.edu/nsnam/ns/
- 12.Peterson, L., Anderson, T., Culler, D., Roscoe, T.: A Blueprint for Introducing Disruptive Technology into the Internet. In: Proc. of the First ACM Workshop on Hot Topics in Networks (HotNets-I), Princeton, NJ (October 2002)Google Scholar
- 15.Schlosser, M., Kamvar, S.: Simulating a file-sharing p2p network. In: Proc. of the First Workshop on Semantics in P2P and Grid Computing (2002)Google Scholar
- 16.Ting, N.S., Deters, R.: A P2P Network Simulator. In: Proc. of the 3rd IEEE International Conference on Peer-to-Peer Computing (P2P 2003), Linkoping, Sweden (September 2003)Google Scholar
- 19.Zhao, B., Huang, L., Stribling, J., Rhea, S., Joseph, A., Kubiatowicz, J.: Tapestry: A Resilient Global-scale Overlay for Service Deployment. To appear in IEEE Journal on Selected Areas in Communications (2003)Google Scholar