Peer-to-Peer Networking and Applications

, Volume 2, Issue 4, pp 311–333 | Cite as

Structured P2P technologies for distributed command and control

  • Daniel R. Karrels
  • Gilbert L. PetersonEmail author
  • Barry E. Mullins


The utility of Peer-to-Peer (P2P) systems extends far beyond traditional file sharing. This paper provides an overview of how P2P systems are capable of providing robust command and control for Distributed Multi-Agent Systems (DMASs). Specifically, this article presents the evolution of P2P architectures to date by discussing supporting technologies and applicability of each generation of P2P systems. It provides a detailed survey of fundamental design approaches found in modern large-scale P2P systems highlighting design considerations for building and deploying scalable P2P applications. The survey includes unstructured P2P systems, content retrieval systems, communications structured P2P systems, flat structured P2P systems and finally Hierarchical Peer-to-Peer (HP2P) overlays. It concludes with a presentation of design tradeoffs and opportunities for future research into P2P overlay systems.


Multi-agent system Distributed system Peer to peer Large-scale Command and control 


  1. 1.
    Adar E, Huberman BA (2000) Free riding on gnutella. First Monday 5Google Scholar
  2. 2.
    Clarke I, Sandberg O, Wiley B, Hong TW (2001) Freenet: a distributed anonymous information storage and retrieval system. Lect Notes Comput Sci 2009:46–63CrossRefGoogle Scholar
  3. 3.
    Gerkey BP, Mataric MJ (2004) A formal analysis and taxonomy of task allocation in multi-robot systems. Int J Rob Res 23:939–954CrossRefGoogle Scholar
  4. 4.
    Chalupsky H, Gil Y, Knoblock CA, Lerman K, Oh J, Pynadath DV, Russ TA, Tambe M (2001) Electric elves: applying agent technology to support human organizations. In: Proceedings of the thirteenth conference on innovative applications of artificial intelligence conference. AAAI, Menlo Park, pp 51–58Google Scholar
  5. 5.
    Stanney KM, Mourant RR, Kennedy RS (1998) Human factors issues in virtual environments: a review of the literature. Presence Teleoper Virtual Environ 7(4):327–351CrossRefGoogle Scholar
  6. 6.
    Barella A, Carrascosa C, Botti V, Martí M (2007) Multi-agent systems applied to virtual environments: a case study. In: VRST ’07: proceedings of the 2007 ACM symposium on virtual reality software and technology. ACM, New York, pp 237–238CrossRefGoogle Scholar
  7. 7.
    Tao N, Baxter J, Weaver L (2001) A multi-agent policy-gradient approach to network routing. In: ICML ’01: proceedings of the eighteenth international conference on machine learning. Morgan Kaufmann, San Francisco, pp 553–560Google Scholar
  8. 8.
    Cormen TH, Leiserson CE, Rivest RL, Stein C (2001) Introduction to algorithms, 2nd edn. MIT, CambridgezbMATHGoogle Scholar
  9. 9.
    Yang B, Garcia-Molina H (2003) Designing a super-peer network. icde. 00:49Google Scholar
  10. 10.
    Milgram S (1967) The small world problem. Psychol Today (2):60–67Google Scholar
  11. 11.
    Kleinberg J (2000) The small-world phenomenon: an algorithmic perspective. In: Proceedings of the 32nd ACM symposium on theory of computing. ACM, New York, pp 163–170Google Scholar
  12. 12.
    Cao YU, Fukunaga AS, Kahng AB (1997) Cooperative mobile robotics: antecedents and directions. Auton Robots 4(1):7–23CrossRefGoogle Scholar
  13. 13.
    Dudek G, Jenkin M, Milios E, Wilkes D (1996) A taxonomy for multi-agent robotics. Auton Robots 3:375–397Google Scholar
  14. 14.
    Lua K, Crowcroft J, Pias M, Sharma R, Lim, S (2005) A survey and comparison of peer-to-peer overlay network schemes. Commun Surv Tutor IEEE 7:72–93CrossRefGoogle Scholar
  15. 15.
    Rowstron AIT, Druschel P (2001) Pastry: scalable, decentralized object location, and routing for large-scale peer-to-peer systems. In: Middleware ’01: proceedings of the IFIP/ACM international conference on distributed systems platforms heidelberg. Springer, London, pp 329–350Google Scholar
  16. 16.
    Zhao B, Huang L, Stribling J, Rhea S, Joseph A, Kubiatowicz J (2004) Tapestry: a resilient global-scale overlay for service deployment. IEEE J Sel Areas Commun 22:41–53CrossRefGoogle Scholar
  17. 17.
    Gummadi K, Gummadi R, Gribble S, Ratnasamy S, Shenker S, Stoica I (2003) The impact of dht routing geometry on resilience and proximity. In: SIGCOMM ’03: proceedings of the 2003 conference on applications, technologies, architectures, and protocols for computer communications. ACM, New York, pp 381–394CrossRefGoogle Scholar
  18. 18.
    Gnutella (2009) Internet.
  19. 19.
    Cohen B. Bittorrent protocol specification v1.0. WWWGoogle Scholar
  20. 20.
    Bustamante FE, Qiao Y (2008) Designing less-structured p2p systems for the expected high churn. IEEE/ACM Trans Netw 16(3):617–627CrossRefGoogle Scholar
  21. 21.
    Loguinov D, Kumar A, Rai V, Ganesh S (2003) Graph-theoretic analysis of structured peer-to-peer systems: routing distances and fault resilience. In: SIGCOMM ’03: proceedings of the 2003 conference on applications, technologies, architectures, and protocols for computer communications. ACM, New York, pp 395–406CrossRefGoogle Scholar
  22. 22.
    Li J, Stribling J, Morris R, Kaashoek MF (2005) Bandwidth-efficient management of dht routing tables. In: NSDI’05: proceedings of the 2nd conference on symposium on networked systems design & implementation. USENIX Association, Berkeley, pp 99–114Google Scholar
  23. 23.
    Rhea S, Geels D, Roscoe T, Kubiatowicz J (2004) Handling churn in a dht. In: ATEC ’04: proceedings of the annual conference on USENIX annual technical conference. USENIX Association, Berkeley, pp 10–10Google Scholar
  24. 24.
    Fiat A, Saia J (2002) Censorship resistant peer-to-peer content addressable networks. In: SODA ’02: proceedings of the thirteenth annual ACM-SIAM symposium on discrete algorithms. Society for Industrial and Applied Mathematics, Philadelphia, pp 94–103Google Scholar
  25. 25.
    Ratnasamy S, Francis P, Handley M, Karp R, Schenker S (2001) A scalable content-addressable network. In: SIGCOMM ’01: proceedings of the 2001 conference on applications, technologies, architectures, and protocols for computer communications. ACM, New York, pp 161–172CrossRefGoogle Scholar
  26. 26.
    Stoica I, Morris R, Karger D, Kaashoek F, Balakrishnan H (2001) Chord: a scalable peer-to-peer lookup service for internet applications. In: Proceedings of the 2001 ACM SIGCOMM conference. ACM, New York, pp 149–160Google Scholar
  27. 27.
    Alima LO, Ghodsi A, Haridi S (2004) A framework for structured peer-to-peer overlay networks. Lect Notes Comput Sci 3267:223–250CrossRefGoogle Scholar
  28. 28.
    Maymounkov P, Mazières D (2002) Kademlia: a peer-to-peer information system based on the xor metric. In: IPTPS ’01: revised papers from the first international workshop on peer-to-peer systems. Springer, London, pp 53–65Google Scholar
  29. 29.
    Gupta I, Birman K, Linga P, Demers A, van Renesse R (2003) Kelips: building an efficient and stable P2P DHT through increased memory and background overhead. In: Proceedings of the 2nd international workshop on peer-to-peer systems (IPTPS ’03)Google Scholar
  30. 30.
    Kaashoek MF, Karger DR (2003) Koorde: a simple degree-optimal distributed hash table. In: Proceedings of the 2nd international workshop on peer-to-peer systems (IPTPS ’03)Google Scholar
  31. 31.
    Bharambe AR, Agrawal M, Seshan S (2004) Mercury: supporting scalable multi-attribute range queries. SIGCOMM Comput Commun Rev 34(4):353–366CrossRefGoogle Scholar
  32. 32.
    Gupta A, Liskov B, Rodrigues R (2004) Efficient routing for peer-to-peer overlays. In: NSDI’04: proceedings of the 1st conference on symposium on networked systems design and implementation. USENIX Association, Berkeley, pp 9–9Google Scholar
  33. 33.
    Aberer K (2001) P-grid: a self-organizing access structure for p2p information systems. In: CoopIS, pp 179–194Google Scholar
  34. 34.
    Harvey NJA, Jones MB, Saroiu S, Theimer M, Wolman A (2003) Skipnet: a scalable overlay network with practical locality properties. In: USITS’03: proceedings of the 4th conference on USENIX symposium on internet technologies and systems. USENIX Association, Berkeley, pp 9–9Google Scholar
  35. 35.
    Manku GS, Bawa M, Raghavan P (2003) Symphony: distributed hashing in a small world. In: USITS’03: proceedings of the 4th conference on USENIX symposium on internet technologies and systems. USENIX Association, Berkeley, pp 10–10Google Scholar
  36. 36.
    Malkhi D, Naor M, Ratajczak D (2002) Viceroy: a scalable and dynamic emulation of the butterfly. In: PODC ’02: proceedings of the twenty-first annual symposium on principles of distributed computing. ACM, New York, pp 183–192CrossRefGoogle Scholar
  37. 37.
    Wolpert DH, Macready WG (1995) No free lunch theorems for search. Santa Fe Institute, Working Papers 95-02-010Google Scholar
  38. 38.
    Karger D, Lehman E, Leighton T, Panigrahy R, Levine M, Lewin D (1997) Consistent hashing and random trees: distributed caching protocols for relieving hot spots on the world wide web. In: STOC ’97: proceedings of the twenty-ninth annual ACM symposium on theory of computing. ACM, New York, pp 654–663CrossRefGoogle Scholar
  39. 39.
    Horowitz E, Sahni S, Rajasckaran S (1996) Computer algorithms: C++. W H Freeman, New YorkGoogle Scholar
  40. 40.
    Kumar V, Grama A, Gupta A, Karypis G (1994) Introduction to parallel computing: design and analysis of algorithms. Benjamin-Cummings, Redwood CityzbMATHGoogle Scholar
  41. 41.
    Ateconi S, Hales D, Babaoglu O (2007) Broadcasting at the critical threshold in peer-to-peer networks. Tech. Rep., University of Bologna, Department of Computer Science University of Bologna Mura Anteo Zamboni 7 40127 Bologna (Italy)Google Scholar
  42. 42.
    Vishnevsky V, Safonov A, Yakimov M, Shim E, Gelman AD (2006) Scalable blind search and broadcasting in peer-to-peer networks. In: P2P ’06: proceedings of the sixth IEEE international conference on peer-to-peer computing. IEEE Computer Society, Washington, DC, pp 259–266CrossRefGoogle Scholar
  43. 43.
    Ripeanu M, Iamnitchi A, Foster I (2002) Mapping the gnutella network. IEEE Internet Computing 6(1):50–57CrossRefGoogle Scholar
  44. 44.
    Zeinalipour-Yatzi D, Folias T (2002) A quantitative analysis of the gnutella network traffic. Technical report, University of California, RiversideGoogle Scholar
  45. 45.
    Kalogeraki V, Gunopulos D, Zeinalipour-Yazti D (2002) A local search mechanism for peer-to-peer networks. In: CIKM ’02: proceedings of the eleventh international conference on information and knowledge management. ACM, New York, pp 300–307CrossRefGoogle Scholar
  46. 46.
    Coulouris GF, Dollimore J (1988) Distributed systems: concepts and design. Addison-Wesley Longman, BostonzbMATHGoogle Scholar
  47. 47.
    Lv Q, Cao P, Cohen E, Li K, Shenker S (2002) Search and replication in unstructured peer-to-peer networks. In: ICS ’02: proceedings of the 16th international conference on supercomputing. ACM, New York, pp 84–95CrossRefGoogle Scholar
  48. 48.
    Vuong S, Li J (2003) Efa: an efficient content routing algorithm in large peer-to-peer overlay networks. In: P2P ’03: proceedings of the 3rd international conference on peer-to-peer computing. IEEE Computer Society, Washington, DC, p 216Google Scholar
  49. 49.
    Krishnamurthy B, Wang J, Xie Y (2001) Early measurements of a cluster-based architecture for p2p systems. In: IMW ’01: proceedings of the 1st ACM SIGCOMM workshop on internet measurement. ACM, New York, pp 105–109CrossRefGoogle Scholar
  50. 50.
    Saroiu S, Gummadi KP, Gribble SD (2003) Measuring and analyzing the characteristics of napster and gnutella hosts. Multimedia Syst 9(2):170–184CrossRefGoogle Scholar
  51. 51.
    Leibowitz N, Ripeanu M, Wierzbicki A (2003) Deconstructing the kazaa network. In: WIAPP ’03: proceedings of the the third IEEE workshop on internet applications. IEEE Computer Society, Washington, DC, p 112CrossRefGoogle Scholar
  52. 52.
    Ganesh AJ, Kermarrec A-M, Massoulié L (2001) Scamp: peer-to-peer lightweight membership service for large-scale group communication. In: NGC ’01: proceedings of the third international COST264 workshop on networked group communication. Springer, London, pp 44–55Google Scholar
  53. 53.
    Li HC, Clement A, Wong EL, Napper J, Roy I, Alvisi L, Dahlin M (2006) Bar gossip. In: USENIX’06: proceedings of the 7th conference on USENIX symposium on operating systems design and implementation. USENIX Association, Berkeley, pp 14–14Google Scholar
  54. 54.
    Abdallah M, Temal L (2003) Gridb: a scalable distributed database sharing system for grid environments. Tech. Rep., Paris University, 8, rue du Capitaine Scott 75015 Paris, FranceGoogle Scholar
  55. 55.
    Androutsellis-Theotokis S, Spinellis D (2004) A survey of peer-to-peer content distribution technologies. ACM Comput Surv 36(4):335–371CrossRefGoogle Scholar
  56. 56.
    Lu J, Callan J (2004) Federated search of text-based digital libraries in hierarchical peer-to-peer networks. In: Proceedings of the 27th European conference on information retrievalGoogle Scholar
  57. 57.
    Lu J, Callan J (2006) Content-based peer-to-peer network overlay for full-text federated search. In: Proceedings of the eighth recherche d’information assistee par ordinateur (RIAO) conferenceGoogle Scholar
  58. 58.
    Zhang H, Croft WB, Levine B, Lesser V (2004) A multi-agent approach for peer-to-peer based information retrieval system. aamas 01:456–463Google Scholar
  59. 59.
    Zhang H, Lesser V (2004) A dynamically formed hierarchical agent organization for a distributed content sharing system. In: IAT ’04: proceedings of the intelligent agent technology, IEEE/WIC/ACM international conference on (IAT’04). IEEE Computer Society, Washington, DC, pp 169–175CrossRefGoogle Scholar
  60. 60.
    Zhang H, Lesser V (2006) Multi-agent based peer-to-peer information retrieval systems with concurrent search sessions. In: AAMAS ’06: proceedings of the fifth international joint conference on autonomous agents and multiagent systems. ACM, New York, pp 305–312CrossRefGoogle Scholar
  61. 61.
    Aberer K, Cudré-Mauroux P, Datta A, Despotovic Z, Hauswirth M. Punceva M, Schmidt R (2003) P-grid: a self-organizing structured p2p system. SIGMOD Rec 32(3):29–33CrossRefGoogle Scholar
  62. 62.
    Bao X, Fang B, Hu M, Xu B (2005) Heterogeneous search in unstructured peer-to-peer networks. IEEE Distrib Syst Online 6(2):1CrossRefGoogle Scholar
  63. 63.
    Brunskill E (2001) Building peer-to-peer systems with chord, a distributed lookup service. In: HOTOS ’01: proceedings of the eighth workshop on hot topics in operating systems. IEEE Computer Society, Washington, DC, p 81Google Scholar
  64. 64.
    Kaufman C, Perlman R, Speciner M (2002) Network security: PRIVATE communication in a PUBLIC world. Prentice Hall PTR, Upper Saddle RiverGoogle Scholar
  65. 65.
    Li J, Stribling J, Morris R, Kaashoek MF, Gil TM (2005) A performance vs. cost framework for evaluating dht design tradeoffs under churn. In: INFOCOM. IEEE, Piscataway, pp 225–236Google Scholar
  66. 66.
    Wikipedia, De bruijn graph. Internet.
  67. 67.
    Castro M, Druschel P, Charlie Y, Rowstron HA (2002) Exploiting network proximity in peer-to-peer overlay networks. Tech. RepGoogle Scholar
  68. 68.
    Dabek F, Li J, Sit E, Robertson J, Kaashoek MF, Morris R (2004) Designing a dht for low latency and high throughput. In: NSDI’04: proceedings of the 1st conference on symposium on networked systems design and implementation. USENIX Association, Berkeley, pp 7–7Google Scholar
  69. 69.
    WikiPedia (2008) Kademlia. WWW.
  70. 70.
    Ghodsi A, Alima L, El-Ansary S, Brand P, Haridi S (2003) Self-correcting broadcast in distributed hash tables. ACTA, AnaheimGoogle Scholar
  71. 71.
    Ghodsi A, Alima LO, Haridi S (2005) Low-bandwidth topology maintenance for robustness in structured overlay networks. In: HICSS ’05: proceedings of the proceedings of the 38th annual Hawaii international conference on system sciences (HICSS’05) - track 9. IEEE Computer Society, Washington, DC, p 302.1Google Scholar
  72. 72.
    Garces-Erice L, Biersack EW, Ross KW, Felber PA, Urvoy-Keller G (2003) Hierarchical p2p systems. In: Proceedings of ACM/IFIP international conference on parallel and distributed computing (Euro-Par), KlagenfurtGoogle Scholar
  73. 73.
    Xue G, Jiang Y, You Y, Li M (2007) A topology-aware hierarchical structured overlay network based on locality sensitive hashing scheme. In: UPGRADE ’07: proceedings of the second workshop on use of P2P, GRID and agents for the development of content networks. ACM, New York, pp 3–8CrossRefGoogle Scholar
  74. 74.
    Zhao BY, Duan Y, Huang L, Joseph AD, Kubiatowicz J (2002) Brocade: landmark routing on overlay networks. In: IPTPS ’01: revised papers from the first international workshop on peer-to-peer systems. Springer, London, pp 34–44Google Scholar
  75. 75.
    Ganesan P, Gummadi K, Garcia-Molina H (2004) Canon in g major: designing dhts with hierarchical structure. In: ICDCS ’04: proceedings of the 24th international conference on distributed computing systems (ICDCS’04). IEEE Computer Society, Washington, DC, pp 263–272Google Scholar
  76. 76.
    Zoels S, Despotovic Z, Kellerer W (2008) On hierarchical dht systems—an analytical approach for optimal designs. Comput Commun 31(3):576–590CrossRefGoogle Scholar
  77. 77.
    Hofstätter Q, Zöls S, Michel M, Despotovic Z, Kellerer W (2008) Chordella—a hierarchical peer-to-peer overlay implementation for heterogeneous, mobile environments. In: P2P ’08: proceedings of the 2008 eighth international conference on peer-to-peer computing. IEEE Computer Society, Washington, DC, pp 75–76CrossRefGoogle Scholar
  78. 78.
    Datar M (2002) Butterflies and peer-to-peer networks. In: ESA ’02: proceedings of the 10th annual European symposium on algorithms. Springer, London, pp 310–322Google Scholar
  79. 79.
    Zöls S, Schollmeier R, Kellerer W, Tarlano A (2005) The hybrid chord protocol: a peer-to-peer lookup service for context-aware mobile applications. In: Lorenz P, Dini P (eds) Networking—ICN 2005. 4th international conference on networking, proceedings, part II. Ser. lecture notes computer science, vol 3421. Springer, Berlin Heidelberg New York, pp 781–792Google Scholar
  80. 80.
    Zoels S, Schubert S, Kellerer W, Despotovic Z (2006) Hybrid dht design for mobile environments. In: Proc. AP2P workshop at AAMAS 2006, Hakodate, 9–12 May 2006Google Scholar
  81. 81.
    Wallach DS (2002) A survey of peer-to-peer security issues. In: International symposium on software security, pp 42–57Google Scholar
  82. 82.
    Shehory O, Kraus S (1995) Coalition formation among autonomous agents: strategies and complexity (preliminary report). In: Castelfranchi C, Müller J-P (eds) From reaction to cognition—fifth European workshop on modelling autonomous agents in a multi-agent world, MAAMAW-93, LNAI, vol 957. Springer, Heidelberg, pp 56–72Google Scholar
  83. 83.
    Ketchpel SP (1994) Forming coalitions in the face of uncertain rewards. In: National conference on artificial intelligence, pp 414–419Google Scholar
  84. 84.
    Winter E (2002) The handbook of game theory. The Shapley value. North-Holldand, Amsterdam, pp 2026–2052Google Scholar
  85. 85.
    Shehory O, Kraus S (1995) Task allocation via coalition formation among autonomous agents. In: Proceedings of the fourteenth international joint conference on artificial intelligence (IJCAI-95), Montréal, pp 655–661Google Scholar
  86. 86.
    Gerkey BP (2003) On multi-robot task allocation. PhD dissertation, University of Southern CaliforniaGoogle Scholar

Copyright information

© Springer Science + Business Media, LLC 2009

Authors and Affiliations

  • Daniel R. Karrels
    • 1
  • Gilbert L. Peterson
    • 1
    Email author
  • Barry E. Mullins
    • 1
  1. 1.Air Force Institute of Technology, Wright-Patterson Air Force BaseDaytonUSA

Personalised recommendations