Peer to Peer Network Explained

Thursday, 31 January 2013


What is peer to peer networks ?
A communication network where every node in the network acts alike.
As opposed to the Client-Server model, where one node provides services and other nodes use the services.
Every node is designed to (but may not by user choice) provide some service that helps other nodes in the network to get service.

Each node potentially has the same responsibility.P2P computing takes advantage of existing computing power, computer storage and networking connectivity, allowing users to leverage their collective power to the ‘benefit’ of all. All peers in a P2P network are the same.
Data and computation are decentralized. Search for data in real time. Peers and their connections are volatile.
Advantages of P2P Computing:
No central point of failure:
  • Most internet and web services use the client-server model (e.g. HTTP), so a specific service does have a central point of failure.
  • E.g., the Internet and the Web do not have a central point of failure.
Scalability:      
  • Since every peer is alike, it is possible to add more peers to the system and scale to larger networks.
Reliability:
  • Replicas
  • Geographic distribution
  • No single point of failure
Ease of administration:
  • Nodes are self organized
  • No need to deploy servers to satisfy demand (c.f. scalability)
  • Built-in fault tolerance, replication, and load balancing
P2P File Sharing Applications:
Improves data availability as there are more number of servers to cope up with the clients. And there is also the replication of data in order to compensate for failures occurred during the transfer of data.
E.g., Napster, Gnutella, Freenet, KaZaA  (FastTrack).
  • Napster
 It is not P2P in the strictest sense. A way to share music files with others. It was created only for the purpose of for sharing MP3 files. It has a centralized server holds file indexes and other metadata. Peers query the central server. But due to copyright claims Napster could not hold out and was sued by the recording studios. Its Centralized architecture allowed it to be easily shut down.
  • Gnutella
Like Napster, Gnutella was also created for a similar purpose. But it was used for sharing cooking recipes alone and further extended its network in sharing movies, songs and data. Unlike Napster, Gnutella has a decentralized architecture. Flooding of peers interconnected with one another provides easier file transfer and improved speed. In other words, Gnutella has no central control or central server. But still a Gnutella node needs a server (or a set of servers) to “start-up”.
P2P Process Sharing Applications:
The P2P process sharing applications are usually for large-scale computations, data analysis, data mining, scientific computations. It has a set of distributed systems that operate around the world like the internet.
E.g., SETI@Home, Folding@Home, distributed.net, World-Wide Computer
  • SETI@home
The SETI@home can be an example of the P2P process sharing applications. It is referred as Search for extraterrestrial intelligence (SETI). It is an organization in the EU (European Union) for research of extraterrestrials. Its scientific experiment was started in year 2000. Downloads and analyzes radio telescope data are done through P2P.
P2P Collaborative Applications:
The base of peer to peer collaborative application starts at the tip of the gamers. Multiplayer games such as counterstrike, FIFA 10 or World Of Warcraft is based on the P2P. For remote real-time human collaboration from a remote location. Basic utilities include instant messaging, virtual meetings, shared whiteboards, teleconferencing, tele-presence.
E.g., talk, IRC, ICQ, AOL Messenger, Yahoo! Messenger, Jabber, MS Netmeeting, NCSA Habanero, Games
Disadvantages of P2P Computing:
Although the peer to peer networks are the future of file sharing networks there are still many disadvantages that are to be discussed in its architecture. Some of the disadvantages include the number of servers being lesser than the number of clients.
  • Decentralized coordination
How to keep global state consistent? Like i mentioned before the consistency of the network is in question if there are more clients than the servers. There is a need for distributed coherency protocols to make the networks stable enough.
  • All nodes are not created equal
The transfer rate of the nodes also accounts for the network.
Computing power and the bandwidth of the node will also have an impact on overall performance.
-Hope this gave you some basic idea on P2P networks.
With Regards,
Arun Venkatraman.

Posted by droided.dev at 06:45  

0 comments:

Post a Comment