From an overview in Read/Write Web at http://www.readwriteweb.com/archives/p2p_introduction_real_world_applications.php
"Peer-to-Peer (P2P) networks have been receiving increasing demand from users and are now accepted as a standard way of distributing information, because its architecture enables scalability, efficiency and performance as key concepts. A peer-to-peer network is decentralized, self-organized, and dynamic in its pure sense, and offers an alternative to the traditional client-server model of computing. Client-server architecture enables individuals to connect to a server - but although servers are scalable, there is a limit to what they can do. P2P networks are almost unlimited in their scalability.
In "pure" P2P systems, every node acts as a server and client - and they share resources without any centralized control. However most P2P applications have some degree of centralization. These are called "hybrid" P2P networks and they centralize at least the list of users. This is how instant messengers or file sharing programs work - the system keeps a list of users with their IP addresses.
Different applications of P2P networks enable users to share the computation power (distributed systems), data (file-sharing), and bandwidth (using many nodes for transferring data). P2P uses an individual's computer power and resources, instead of powerful centralized servers. The shared resources guarantee high availability among peers." (http://www.readwriteweb.com/archives/p2p_introduction_real_world_applications.php)
"used in many applications to allow connecting to the same network and searching files in a centralized manner. It's an open, decentralized search protocol for finding files through the peers. Gnutella is a pure P2P network, without any centralized servers.
Using the same search protocol, such as Gnutella, forms a compatible network for different applications. Anybody who implements the Gnutella protocol is able to search and locate files on that network. Here's how it works. At start up, Gnutella will try to find at least one node to connect to. After the connection, the client requests a list of working addresses and proceeds to connect to other nodes until it reaches a quota. When the client searches for files, it sends the request to each node it is connected to, which then forwards the request to the other nodes it is connected, until a number of "hops" occurs from the sender." (http://www.readwriteweb.com/archives/p2p_introduction_real_world_applications.php)
"the use of P2P changed the whole idea of IM. The bandwidth was shared between users, enabling faster and more scalable communication." (http://www.readwriteweb.com/archives/p2p_introduction_real_world_applications.php)
P2P Filesharing Networks
These are the P2P Filesharing platforms and networks, that allow people to exchange files, and that are based on the principles of P2P Computing. They are to be distinguished from the P2P Clients, i.e. the software used to access one or more of these platforms.
Amongst those platforms are:
The article mentions
- collaborative computing, with Groove as an example
- IP Telephony, with Skype as an example
Future applications are discussed in the second part of this series on P2P Networks by the Read/Write web blog, at http://www.readwriteweb.com/archives/p2p_potential_future_applications.php