Peer to Peer Networks.

What are peer to peer networks?

The short answer to this question is simple, depending on your politics. One group sees peer to peer (P2P) networks as evil file sharing tools allowing millions of otherwise law abiding citizens to inflict mortal damage to the music, film and book publishing industries, mainly by downloading free of charge someone else's "intellectual property". Another side sees P2P as the dominant technology which empowers individuals to publish and consume media free of stricture or control.

If I ever get around to it, I'll write a short article on the politics of file-sharing. This article contains only technical information.

Technical discussion

The long answer to the question is not quite as simple. Technically, peer-to-peer (P2P) computing is a networking paradigm in which distributed, homogenous peered devices can notionally consume and provide resources (processing capability, network bandwidth, data storage capacity, content, etc.). P2P networks are classified either as pure: each peer has equal status and is non-essential to the network’s integrity; or hybrid: a coordination authority (node server) is central to the network’s functioning Schollmeier. Further classification of P2P systems Kant has been undertaken to accommodate such networks as multi user games and media streaming, amongst others.

Advantages of P2P networks

One advantage of P2P over client-server (C/S) is its robustness Parameswaran and the dependability Walkerdine associated with the increased robustness. If the server in a C/S network becomes unavailable then the entire network is nonfunctional, whereas pure P2P networks are virtually as resilient as the underlying network topology. (This is not, however, true for hybrid P2P networks). Another advantage is the dynamic load balancing nature of P2P networks. As new services or content become available, and the demand for them increases, the P2P network is quickly able to disseminate such content thereby structurally adapting to change.

Disadvantages of P2P networks

One disadvantage of P2P networks over CS networks is the control deficit Marti they offer. It is not possible to guarantee that a particular node will have access to a particular resource at a particular time, due to the fluid arrangement of network membership in P2P nets; peers generally make no contracts as to their continued association or their trustworthiness Wang. Another disadvantage of P2P over CS networks is that their inefficient directory lookup Mizrak (search) algorithms cause scalability problems compared to centralized networks. P2P networks must query much of the network to ascertain a peer’s membership or the location of a service, CS systems generally constantly and consistently provide a centralized repository (the server).

P2P networks can be used for a variety of applications:

  • File Sharing (including music and video)
  • Groupware, including project management
  • News dissemination (RSS Feeds, NNTP)
  • Distributed computing, distributed computations

P2P in vivo

P2P has become synonymous with file sharing, a contentious issue within the current legal framework of copyright and intellectual property law. This is, however, not what P2P is, just how P2P has been used. An analogy can be found in the early days of the printing press: when it was first invented Gutenberg's press was primarily used as a way to provide subversive views and political ideas to the populace, leading to the rise of Lutherism in Europe. Gutenberg's press was not the subversive element of the time, it was merely the disruptive technology enabling Lutherism. P2P networks and distributed computing have in large part been funded by governmental grants.

There are a large number of popular peer to peer networks. I have listed some of them here and categorized them as either pure or hybrid according to the definition I gave earlier. It should be noted that each network is defined by a common protocol, with potentially several different and competing implementations running on each protocol.

 

List of Popular P2P Programs
Implementation Protocol Type Major Use Licensing Model Revenue Model Tech Details URL
BCDC++ Direct Connect Hybrid, hubs and supernodes File Sharing ?? ?? C++
image
BearShare Gnutella Hybrid, hubs File Sharing Closed Source Advertising Windows Only
image
BitTorrent BItTorrent Decentral-ized, mixed roles File Sharing, RSS Feed sharing Open Source, imageMIT License Voluntary - donations, some advertising ? Python with xWindos client.
image
DC++ Direct Connect Hybrid, hubs and supernodes File Sharing Open Source, imageGNU GPL Voluntary C++, Client only
image
eDonkey eDonkey Decentral-ized File Sharing Closed Source Voluntary, not for profit ??  
image
eMule eDonkey Decentralized File Sharing Closed Source Voluntary, not for profit Windows only
image
Freenet Freenet Hybrid, nodes Information dispersal, Anonymous Open Source, imageGNU GPL Voluntary Java
image
GnouGat JXTA Decentralized FileSharing Open Source, imageSun Project JXTA Software License Voluntary Java only (JINI)
image
GnuNet-GTK GnuNet Decentralized, anonymous File Sharing Open Source, imageGNU GPL Voluntary

Source only, UNIX GTK,
HTTP, SMTP, UDP over TCP-IP

image
Grokster FastTrack Hybrid File Sharing Closed Source Advertising, Content distribution fee Windows Only
image
Groove Groove Decentralized Groupware Closed Source Fee Based Windows Only
image
iMesh FastTrack Decentral-ized File Sharing Closed Source , freeware Advertising Windows Client
image
KaZaa FastTrack
Hybrid File Sharing Closed source Advertising, Spyware, Malware  
image
Morpheus FastTrack, Gnutela2, Direct Connect Hybrid File Sharing Closed Source Advertising Windows only
image
Napster Napster Napster is now defunct as a P2P network.
image
NeoModus Direct Connect Hybrid, hubs and supernodes File Sharing Closed Source Advertising C++, C#
image
OverNet Overnet,
eDonkey
Decentral-ized File Sharing (large files) Closed Source Voluntary, some advertising ?? Windows client only
image
Piolet / Blubster Manolito, MP2P Decentral-ized File Sharing, MP3 only Closed Source ?? Windows Only
image
Rebol Rebol IOS Decentralized Internet Operating System Closed Source Commercial Over 40 OSs
image
ShareAza BitTorrent,
eDonkey,
Gnutella,
Gnutella2
Hybrid File Sharing Closed Source, freeware Advertising Windows Client
image
Soulseek Soulseek Centralized MP3 File Sharing Closed Source Contribution based  
image
WinMX OpenNap,
WPNP
Hybrid File Sharing ? ? Windows Client
image

P2P Network Topologies

Most of the examples given here are based on the works of TanenbaumTanenbaum and Nelson Minar. P2P networks implement a particular topology. In order to qualify as P2P, as stated earlier, they may implement any topology except the centralized one, shown here.

Client Server Topology

The simplest avoidance of this reliance on the central server is a ring topology. This kind of reminds of IBM's token ring network. The problem here is, that some nodes will most likely see data not destined for them, routing is very inefficient.

Ring Topology

A popular P2P network topology is the hierarchical one. Famously, this system was in use by Napster, which made it very easy to shut down the entire network. This system is also in force in the Domain Name System (DNS), which is by coincidence possibly the world's most important P2P network.

Hierarchical Topology

The previous systems all had some degree of centralization, common among them was their fallibility, their reliance on a particular node for coordination services. The following topology does not have that problem. It is a decentralized, random, chaotic and entropic network. Communication can occur between any two nodes, with each node holding routing information for others. Gnutella uses this network. Decentralized networks, with no coordinating authorities, rely on broadcast flooding. Flooding is hardly efficient and entails some bandwidth overhead for the network.

Entropic Topology

Hybrid topologies are formed from a combination of the preceding three basic topologies. There is the ring/centralized topology, a common favourite of web server farms. The ring represents the farm of web / streaming / database servers which are redundant and provide fail over safety. The ring itself is centralized, processing request from many clients. This is an improvement over the C/S topology, but it is still centralized.

Ring Centralized Topology

The centralized - centralized topology is more complex. These can arise when the central server acts as a gateway server between two different networks using two separate protocols.

Centralized - Centralized Network

There is also the centralized - decentralized topology currently in use on networks such as FastTrack. One of the internet's core protocols, SMTP, also relies heavily on this topology for routing email between mail exchanges.

Centralized - Decentralized Network

P2P research & development

Many of the worlds largest governmental and privately owned organizations are conducting or funding research into all aspects of P2P networks. Here is a short sample:

Correspondingly, academic research efforts in the area of P2P computing is growing at an alarming rate, there is too much to do justice to here.

One very interesting area of research is in the field of broadcast optimization. When a P2P node issues a search query, this is typically broadcast to every other node on the network, within the query's time to live (TTL), the same as in any other TCP broadcast network. The introduction of "Rumor Mongering"Portmann, based on gossip message broadcast seems very promisingNovaes.

An old idea which doesn't seem to have come far due to hash based distribution tables was IP multicasting.Vahamaki This is an interesting and efficient possibility, being revived in the context of P2P multimedia streaming.

Any distributed, collaborative application must deal with connectivity issues. Typically, most computers are on private networks which are inaccessible from the internet, hidden behind NAT boxes, routers and firewalls. SOAP and Web Services, based around the WDSL and UDDI protocols offer promising alternatives to the current practice of punching holes in firewalls Rein. The ability to tunnel through the HTTP protocol will come as a boom to many users, leaving network admins free to use stateful packet inspection for their security needs.

With the huge success of the rating systems implemented for books and goods at Amazon, and for people and services at Ebay Mui, the utility of trust and reputation (T&R) systems has attracted huge academic attention. The degree of attention is unsurprising, since it seats neatly between computer technology and human sociology Barkai. This kind of thing has always attracted seriously large amounts of funding, since it is superficially able to answer the questions "What good is it to me, how can it be used" . Trust and reputation based P2P applications are likely to soon begin appearing on the scene, along with T&R web searches and more. T&R based systems are subject to abuse Damiani, of course, the challenge for academics is to integrate abuse resistance Surridge into their T&R models. Unsurprisingly, research has already been published on how to misuse P2P systems in order to trick users in to downloading fake (misleading) mp3 music files Kwong.

References

  • R. Schollmeier, "A definition of peer-to-peer networking for the classification of peer-to-peer architectures and applications," presented at Peer-to-Peer Computing, 2001. Proceedings. First International Conference on, 2001.
  • K. Kant, R. Iyer, and V. Tewari, "A framework for classifying peer-to-peer technologies," presented at Cluster Computing and the Grid 2nd IEEE/ACM International Symposium CCGRID2002, 2002.
  • M. Parameswaran, A. Susarla, and A. B. Whinston, "P2P networking: an information sharing alternative," Computer, vol. 34, pp. 31-38, 2001.
  • J. Walkerdine, L. Melville, and I. Sommerville, "Dependability properties of P2P architectures," presented at Peer-to-Peer Computing, 2002. (P2P 2002). Proceedings. Second International Conference on, 2002.
  • S. Marti and H. Garcia-Molina, "Identity crisis: anonymity vs reputation in P2P systems," presented at Peer-to-Peer Computing, 2003. (P2P 2003). Proceedings. Third International Conference on, 2003.
  • Y. Wang and J. Vassileva, "Trust and reputation model in peer-to-peer networks," presented at Peer-to-Peer Computing, 2003. (P2P 2003). Proceedings. Third International Conference on, 2003.
  • A. T. Mizrak, Y. Cheng, V. Kumar, and S. Savage, "Structured superpeers: leveraging heterogeneity to provide constant-time lookup," presented at Internet Applications. WIAPP 2003. Proceedings. The Third IEEE Workshop on, 2003.
  • A. S. Tanenbaum, Distributed Systems: Principles and Paradigms: Prentice Hall, 2001.
  • M. Portmann and A. Seneviratne, "The cost of application-level broadcast in a fully decentralized peer-to-peer network," presented at Computers and Communications, 2002. Proceedings. ISCC 2002. Seventh International Symposium on, 2002.
  • O. J. Vahamaki, A. J. Allen, and J. T. Gaff, "High speed peer-to-peer communication system for integrated protection and control in distribution networks," presented at Developments in Power System Protection, Sixth International Conference on (Conf. Publ. No. 434), 1997.
  • M. Novaes and C. Codella, "Peer to peer multicast: an infrastructure for dynamically trading network resources," presented at Universal Multiservice Networks, 2002. ECUMN 2002. 2nd European Conference on, 2002.
  • L. Rein, "Peer-to-peer XML," Internet Computing, IEEE, vol. 6, pp. 100, 2002.
  • D. Barkai, "Technologies for sharing and collaborating on the Net," presented at Peer-to-Peer Computing, 2001. Proceedings. First International Conference on, 2001.
  • L. Mui, M. Mohtashemi, and A. Halberstadt, "A computational model of trust and reputation," presented at System Sciences, 2002. HICSS. Proceedings of the 35th Annual Hawaii International Conference on, 2002.
  • M. Surridge and C. Upstill, "Grid security: lessons for peer-to-peer systems," presented at Peer-to-Peer Computing, 2003. (P2P 2003). Proceedings. Third International Conference on, 2003.
  • T. C. H. Kwong and M. K. O. Lee, "Behavioral intention model for the exchange mode Internet music piracy," presented at System Sciences, 2002. HICSS. Proceedings of the 35th Annual Hawaii International Conference on, 2002.
  • E. Damiani, S. De Capitani Di Vimercati, S. Paraboschi, and P. Samarati, "Managing and sharing servants' reputations in P2P systems," Knowledge and Data Engineering, IEEE Transactions on, vol. 15, pp. 840-854, 2003.
  • A. Oram, Peer-to-Peer: O'Reilly, 2001.

This reference list is available as an XML document.

Page created by Richard Quinn on March 19th 2004.

Creative Commons License
This work is licensed under a Creative Commons License.