SlideShare une entreprise Scribd logo
1  sur  24
Peer-To-Peer Networking Eric Fay CS-414
Computer Networks Computers are an integral part of our everyday lives but if they were not connected to one and another they wouldn’t serve as much as a convenience to us. There are several reasons why computer networks are so widely used which include facilitating communications, sharing hardware and also sharing data and information. Computer networks make communication easier by enabling the use of e-mail, instant messengers, voice over internet protocol and video conferencing
Computer Networks Computer networks can be categorized in many different ways into many different types of networks.  One way to categorize computer networks is by the method of connection.  The main two types of connection methods are wired and wireless.
Computer Networks – Connection Media The Three main connection medias for wired networks include twisted pair, coaxial, and fiber optic. Twisted Pair is the most common but coaxial and fiber optic can carry more bandwidth at a higher rate.
Computer Networks - Wireless The primary technologies for the wireless method of connection include terrestrial microwave, communication satellites, cellular systems, wireless LANs, Bluetooth and wireless web.  One of the most popular forms of connecting computer networks wirelessly is through the use of wireless LANs.  In a wireless LAN every computer has a radio modem and antenna with which it can communicate with other systems.
Computer Networks - Scale Another way of categorizing computer networks is through the scale of the network.  The main classifications through the use of a network’s scale are  PAN - Personal Area Network  LAN - Local Area Network CAN - Campus Area Network  MAN - Metropolitan Area Network WAN - Wide Area Network SAN - Storage Area Network  VPN - Virtual Private Network Which network is to be used for a specific job is decided by the scale of the job and is picked accordingly from the list of networks above.
Computer Networks – Architecture  A network’s architecture is also another form of categorizing networks.  The three main architectures are active networking, client-server, and peer-to-peer.
Computer Networks - Architecture An active network is type of network architecture that allows packets traveling through a network to dynamically modify the operation of the network. In the client-server model, two processes are involved, one on the client side and one on the server side. First the client sends a message over the network to the server, the client then waits for a reply. When the server receives the request it performs the requested work and sends back a reply. In the peer-to-peer architecture individuals form a loose group and can communicate with others in the group. There is no need to distinguish clients and servers in this architecture.
Peer-to-Peer Networking A peer-to-peer network, P2P, is consider any type of network architecture composed of contributors that make a part of their resources available to other contributors on the same network without the need for a server to oversee the transfer of information. This differs from the client-server model mainly in the respect that the client in the P2P model is both the supplier and consumer while in the client-server model the client can is only the consumer and the server is only the supplier.
Peer-to-Peer Networking - Architecture A peer-to-peer network’s architecture is generally formed dynamically by an ad-hoc type of addition of nodes, meaning the loss of a certain node does not have a significant impact on the rest of the network. This aspect of peer-to-peer networks gives the system the ability to easily scale to any size that may be need for a certain application. Regarding different types of peer-to-peer architecture, there are generally two major types, structured and unstructured. These two types of networks also contain even more specific underlying types of networks.
Peer-to-Peer Networking – Unstructured Architecture To be considered an unstructured peer-to-peer network, the network must not use any algorithm for organization or optimization of the network. For unstructured peer-to-peer networks there are three different models which include pure peer-to-peer networks, hybrid peer-to-peer networks, and centralized peer-to-peer networks.  In a pure peer-to-peer network, or sometimes called a purely decentralized network, all nodes are of equal ability meaning that there are no nodes that have any special infrastructure function that could affect the network. A great example of a popular purely decentralized peer-to-peer network is the Gnutella network. The main purpose of the Gnutella network is for that of a file sharing system. The Gnutella network, like many other peer-to-peer networks uses a virtual overlay network with its own routing layers, allowing the peers of the network to share files on their machine to all other peers connected to the network.
Peer-to-Peer Networking – Unstructured Architecture An example of the Gnutella search mechanism. Solid lines between the nodes represent connections of the Gnutella network. The search originates at the “requestor” node, for a file maintained by another node. Request messages are dispatched to all neighboring nodes, and propagated from node-to-node as shown in the four consecutive steps (a) to (d). When  a node receives the same request message (based on its unique identifier) multiple times, it replies with a failure message to avoid loops and minimize traffic. When the file is identified, a success message is returned.
Peer-to-Peer Networking – Unstructured Architecture The second type of unstructured peer-to-peer networks is called the hybrid peer-to-peer network.  In this type of network, infrastructure nodes are allowed to exist and are often a type of central directory server.  All clients connected to the network must connect to one of these servers.  The central server maintains a table of registered user connection information (IP address, connection bandwidth etc.) and a table listing the files that each user holds and shares in the network, along with metadata descriptions of the files(e.g. filename, time of creation, etc.) A user that wishes to join the network must first contact the central directory server and report its files that wish to be shared. To find a file on this type of network, the user must send a request for that file to the directory server. The server then searches into database for said file and returns a list of users that possess that file. The requesting user then opens a direct connection with the list of users and downloads the file. A profound example of a hybrid peer-to-peer network is the notorious Napster network
Peer-to-Peer Networking – Unstructured Architecture Typical hybrid decentralized peer-to-peer architecture.  A central directory server maintains an index of the metadata for all files in the network
Peer-to-Peer Networking – Unstructured Architecture The final type of unstructured peer-to-peer network is called a centralized peer-to-peer network.  These centralized peer-to-peer networks are very similar to the pure peer-to-peer networks except for the added concept of supernodes.  These supernodes are nodes that are dynamically assigned the task of servicing a small subpart of the peer network by indexing and caching files contained therein. Peers are chosen to be supernode automatically if said peer’s bandwidth and processing power is sufficient. All queries for files on this type of network are sent to and processed by these supernodes.  A popular example of this centralized peer-to-peer network is the file sharing network Kazaa.
Peer-to-Peer Networking – Structured Architecture Structured peer-to-peer networks generally hold the traits of using some type of algorithm for organization or optimization of the network.  Structured peer-to-peer networks use some type of global protocol to ensure that any node in the network can proficiently route a search to some peer that has a desired file.  By far the most popular type of structured peer-to-peer network is the distributed hash table or DHT.
Peer-to-Peer Networking – Structured Architecture Distributed hash tables are a class of decentralized distributed systems that provide a lookup service similar to that of a hash table.  Pairs, key and value, are stored in the distributed has table and any connected node can proficiently retrieve the value associated with a given key. Maintaining the mapping from keys to values is the responsibility of each of the nodes in the network.  This is done in such a way that a change to the set of peers causes a negligible amount of disruption to the rest of the network. The most popular example of a network using a distributed hash table is BitTorrent’s distributed tracker.
Peer-to-Peer Networking – Advantages and Limitations One of the major advantages to a peer-to-peer network is that each time a new node is connected to the network the total capacity of the system increases.  This point differs from the client-server model standpoint since the addition of new nodes to a network that connects to a set number of servers could possibly slow data transfers for all of the connected users.
Peer-to-Peer Networking – Advantages and Limitations Another advantage in regards to a pure peer-to-peer network is that there is no single point of failure in the network.  When compared to the client-server model on this point if the server fails the network is brought down since the server is unable to relay information to the connected nodes.  On the pure peer-to-peer side of the topic, if one of the nodes fails the rest of the nodes are able to continue relaying information.
Peer-to-Peer Networking – Advantages and Limitations One of the weaknesses of peer-to-peer networks is that of security. Generally speaking peer-to-peer networks are more susceptible to security problems.  Jon Udell states in the book Peer-to-Peer: Harnessing the Power of Disruptive Technologies “Security is hard enough in traditional networks that depend on central servers. It's harder still in peer-to-peer networks, particularly when you want to authenticate your communication partners and exchange data only with people you trust.” One way to combat these security problems in peer-to-peer networks is that of a reputation system. Jochem van Vroonhoven states in his paper entitled Peer to Peer Security “But on what ground can a user decide to trust a peer ornot? In current peer-to-peer systems that depend on therequesting user, reputation systems can provide a way to basetrust on the actual behavior of a peer.”
Peer-to-Peer Networking – Advantages and Limitations Another disadvantage of peer-to-peer networks is the high bandwidth usage required. This high bandwidth usage has lead to Internet Service Providers starting to throttle, or limit, peer-to-peer traffic.  On the other side, the server-client model usually consists of short quick bursts of data.  An emerging solution to this problem is called peer-to-peer caching.  Peer-to-peer caching is defined as a network traffic management service that accelerates data delivered over peer-to-peer networks by means of the Internet Service Provider storing pieces of files that are most accessed by peer-to-peer users.
Peer-to-Peer Networking – Applications Some of the general applications for peer-to-peer networks include the ever popular file sharing, streaming media, grid computing, instant messaging and voice over internet protocol. The most popular peer-to-peer file sharing networks that are still active today include G2, FastTrack, and Gnutella. The application of sharing files over peer-to-peer networks is what first popularized the use of peer-to-peer technology. Major media streaming applications over peer-to-peer networks, or P2PTV, include Joost, TVUPlayer and CyberSky-TV. These applications allow for the streaming of media such as television channels over peer-to-peer networks.
Peer-to-Peer Networking – Applications Grid computing is a peer-to-peer application that is gaining massive popularity.  Grid computing applications share processing power over a networking to accomplish some type of goal. The two most popular grid computing applications include BOINC and Folding@Home.
Peer-to-Peer Networking – Applications Voice over Internet Protocol, or VOIP, is another popular peer-to-peer applications.  The most popular voice application that uses peer-to-peer networking is Skype.  This application allows for the use of voice communications while using peer-to-peer technology.

Contenu connexe

Tendances

Tendances (20)

Network operating systems
Network operating systems Network operating systems
Network operating systems
 
Peer to peer Networks
Peer to peer Networks Peer to peer Networks
Peer to peer Networks
 
Setting up a network
Setting up a networkSetting up a network
Setting up a network
 
NETWORK INTERFACE CARD
NETWORK INTERFACE CARDNETWORK INTERFACE CARD
NETWORK INTERFACE CARD
 
Internet Protocols
Internet ProtocolsInternet Protocols
Internet Protocols
 
peer to peer and client server model
peer to peer and client server modelpeer to peer and client server model
peer to peer and client server model
 
Networking devices
Networking devicesNetworking devices
Networking devices
 
Introduction of computer network
Introduction of computer networkIntroduction of computer network
Introduction of computer network
 
Switches on Networking
Switches on NetworkingSwitches on Networking
Switches on Networking
 
IP addressing and Subnetting PPT
IP addressing and Subnetting PPTIP addressing and Subnetting PPT
IP addressing and Subnetting PPT
 
Introduction to TCP/IP
Introduction to TCP/IPIntroduction to TCP/IP
Introduction to TCP/IP
 
TCP IP Model | Computer Science
TCP IP Model | Computer ScienceTCP IP Model | Computer Science
TCP IP Model | Computer Science
 
Networking Devices
Networking DevicesNetworking Devices
Networking Devices
 
TCP/IP Network ppt
TCP/IP Network pptTCP/IP Network ppt
TCP/IP Network ppt
 
Networkingconcepts
NetworkingconceptsNetworkingconcepts
Networkingconcepts
 
Computer networking devices
Computer networking devicesComputer networking devices
Computer networking devices
 
Network Cabling
Network CablingNetwork Cabling
Network Cabling
 
Network servers
Network serversNetwork servers
Network servers
 
Osi model
Osi modelOsi model
Osi model
 
INTRODUCTION TO NETWORK OS
INTRODUCTION TO NETWORK OSINTRODUCTION TO NETWORK OS
INTRODUCTION TO NETWORK OS
 

En vedette

Peer-to-peer Connections
Peer-to-peer ConnectionsPeer-to-peer Connections
Peer-to-peer ConnectionsGregg Wright
 
Introduction to Peer-to-Peer Networks
Introduction to Peer-to-Peer Networks Introduction to Peer-to-Peer Networks
Introduction to Peer-to-Peer Networks Venkatesh Iyer
 
CLIENT SERVER IN OS.ppt
CLIENT SERVER IN OS.pptCLIENT SERVER IN OS.ppt
CLIENT SERVER IN OS.pptsuman yadav
 
Client Server Architecture
Client Server ArchitectureClient Server Architecture
Client Server Architecturesuks_87
 
Counting Technique, Permutation, Combination
Counting Technique, Permutation, CombinationCounting Technique, Permutation, Combination
Counting Technique, Permutation, CombinationChie Pegollo
 
Fundamental counting principle powerpoint
Fundamental counting principle powerpointFundamental counting principle powerpoint
Fundamental counting principle powerpointmesmith1
 

En vedette (9)

Peer-to-peer Connections
Peer-to-peer ConnectionsPeer-to-peer Connections
Peer-to-peer Connections
 
Introduction to Peer-to-Peer Networks
Introduction to Peer-to-Peer Networks Introduction to Peer-to-Peer Networks
Introduction to Peer-to-Peer Networks
 
CLIENT SERVER IN OS.ppt
CLIENT SERVER IN OS.pptCLIENT SERVER IN OS.ppt
CLIENT SERVER IN OS.ppt
 
Peer to peer system
Peer to peer systemPeer to peer system
Peer to peer system
 
Client Server Architecture
Client Server ArchitectureClient Server Architecture
Client Server Architecture
 
Client server architecture
Client server architectureClient server architecture
Client server architecture
 
Counting Technique, Permutation, Combination
Counting Technique, Permutation, CombinationCounting Technique, Permutation, Combination
Counting Technique, Permutation, Combination
 
Fundamental counting principle powerpoint
Fundamental counting principle powerpointFundamental counting principle powerpoint
Fundamental counting principle powerpoint
 
Network security
Network securityNetwork security
Network security
 

Similaire à Peer To Peer Networking

Introduction to Computer Networks
Introduction to Computer NetworksIntroduction to Computer Networks
Introduction to Computer NetworksPankaj Gautam
 
International Journal of Computational Engineering Research(IJCER)
International Journal of Computational Engineering Research(IJCER)International Journal of Computational Engineering Research(IJCER)
International Journal of Computational Engineering Research(IJCER)ijceronline
 
An efficient hybrid peer to-peersystemfordistributeddatasharing
An efficient hybrid peer to-peersystemfordistributeddatasharingAn efficient hybrid peer to-peersystemfordistributeddatasharing
An efficient hybrid peer to-peersystemfordistributeddatasharingambitlick
 
Hcs Topic 4 Networks V2
Hcs Topic 4 Networks V2Hcs Topic 4 Networks V2
Hcs Topic 4 Networks V2Kyle
 
Hcs Topic 4 Networks V2
Hcs Topic 4 Networks V2Hcs Topic 4 Networks V2
Hcs Topic 4 Networks V2Naruin
 
Hcs Topic 4 Networks V2
Hcs Topic 4 Networks V2Hcs Topic 4 Networks V2
Hcs Topic 4 Networks V2ekul
 
Basic networking tutorial
Basic networking tutorialBasic networking tutorial
Basic networking tutorialreddydivakara
 
Network archetecture
Network archetectureNetwork archetecture
Network archetectureshah fahad
 
unit 4 cds computer networking notesnotes.pdf
unit 4 cds computer networking notesnotes.pdfunit 4 cds computer networking notesnotes.pdf
unit 4 cds computer networking notesnotes.pdfshubhangisonawane6
 
Note: Introduction to Computer Networks
Note: Introduction to Computer Networks Note: Introduction to Computer Networks
Note: Introduction to Computer Networks Hasibul Islam Nirob
 
Computer Networks Lecture Notes
Computer Networks Lecture NotesComputer Networks Lecture Notes
Computer Networks Lecture NotesFellowBuddy.com
 
Assignment 1,computer networks-317
Assignment 1,computer networks-317Assignment 1,computer networks-317
Assignment 1,computer networks-317Khondoker Sadia
 
Chapter 1 - Introduction to the basic concepts of networks.ppt
Chapter 1 - Introduction to the basic concepts of networks.pptChapter 1 - Introduction to the basic concepts of networks.ppt
Chapter 1 - Introduction to the basic concepts of networks.pptssuser3acfba
 
Networking tutorial
Networking tutorialNetworking tutorial
Networking tutorialajaymane22
 

Similaire à Peer To Peer Networking (20)

Peer Sim & P2P
Peer Sim & P2PPeer Sim & P2P
Peer Sim & P2P
 
Final peersimp pt
Final peersimp ptFinal peersimp pt
Final peersimp pt
 
Kinds of networks
Kinds of networksKinds of networks
Kinds of networks
 
Introduction to Computer Networks
Introduction to Computer NetworksIntroduction to Computer Networks
Introduction to Computer Networks
 
International Journal of Computational Engineering Research(IJCER)
International Journal of Computational Engineering Research(IJCER)International Journal of Computational Engineering Research(IJCER)
International Journal of Computational Engineering Research(IJCER)
 
An efficient hybrid peer to-peersystemfordistributeddatasharing
An efficient hybrid peer to-peersystemfordistributeddatasharingAn efficient hybrid peer to-peersystemfordistributeddatasharing
An efficient hybrid peer to-peersystemfordistributeddatasharing
 
Hcs Topic 4 Networks V2
Hcs Topic 4 Networks V2Hcs Topic 4 Networks V2
Hcs Topic 4 Networks V2
 
Hcs Topic 4 Networks V2
Hcs Topic 4 Networks V2Hcs Topic 4 Networks V2
Hcs Topic 4 Networks V2
 
Hcs Topic 4 Networks V2
Hcs Topic 4 Networks V2Hcs Topic 4 Networks V2
Hcs Topic 4 Networks V2
 
Basic networking tutorial
Basic networking tutorialBasic networking tutorial
Basic networking tutorial
 
Network archetecture
Network archetectureNetwork archetecture
Network archetecture
 
unit 4 cds computer networking notesnotes.pdf
unit 4 cds computer networking notesnotes.pdfunit 4 cds computer networking notesnotes.pdf
unit 4 cds computer networking notesnotes.pdf
 
Sem 1 Ch 5
Sem 1 Ch 5Sem 1 Ch 5
Sem 1 Ch 5
 
Note: Introduction to Computer Networks
Note: Introduction to Computer Networks Note: Introduction to Computer Networks
Note: Introduction to Computer Networks
 
Note 1
Note 1Note 1
Note 1
 
Computer network
Computer network Computer network
Computer network
 
Computer Networks Lecture Notes
Computer Networks Lecture NotesComputer Networks Lecture Notes
Computer Networks Lecture Notes
 
Assignment 1,computer networks-317
Assignment 1,computer networks-317Assignment 1,computer networks-317
Assignment 1,computer networks-317
 
Chapter 1 - Introduction to the basic concepts of networks.ppt
Chapter 1 - Introduction to the basic concepts of networks.pptChapter 1 - Introduction to the basic concepts of networks.ppt
Chapter 1 - Introduction to the basic concepts of networks.ppt
 
Networking tutorial
Networking tutorialNetworking tutorial
Networking tutorial
 

Peer To Peer Networking

  • 2. Computer Networks Computers are an integral part of our everyday lives but if they were not connected to one and another they wouldn’t serve as much as a convenience to us. There are several reasons why computer networks are so widely used which include facilitating communications, sharing hardware and also sharing data and information. Computer networks make communication easier by enabling the use of e-mail, instant messengers, voice over internet protocol and video conferencing
  • 3. Computer Networks Computer networks can be categorized in many different ways into many different types of networks. One way to categorize computer networks is by the method of connection. The main two types of connection methods are wired and wireless.
  • 4. Computer Networks – Connection Media The Three main connection medias for wired networks include twisted pair, coaxial, and fiber optic. Twisted Pair is the most common but coaxial and fiber optic can carry more bandwidth at a higher rate.
  • 5. Computer Networks - Wireless The primary technologies for the wireless method of connection include terrestrial microwave, communication satellites, cellular systems, wireless LANs, Bluetooth and wireless web. One of the most popular forms of connecting computer networks wirelessly is through the use of wireless LANs. In a wireless LAN every computer has a radio modem and antenna with which it can communicate with other systems.
  • 6. Computer Networks - Scale Another way of categorizing computer networks is through the scale of the network. The main classifications through the use of a network’s scale are PAN - Personal Area Network LAN - Local Area Network CAN - Campus Area Network MAN - Metropolitan Area Network WAN - Wide Area Network SAN - Storage Area Network VPN - Virtual Private Network Which network is to be used for a specific job is decided by the scale of the job and is picked accordingly from the list of networks above.
  • 7. Computer Networks – Architecture A network’s architecture is also another form of categorizing networks. The three main architectures are active networking, client-server, and peer-to-peer.
  • 8. Computer Networks - Architecture An active network is type of network architecture that allows packets traveling through a network to dynamically modify the operation of the network. In the client-server model, two processes are involved, one on the client side and one on the server side. First the client sends a message over the network to the server, the client then waits for a reply. When the server receives the request it performs the requested work and sends back a reply. In the peer-to-peer architecture individuals form a loose group and can communicate with others in the group. There is no need to distinguish clients and servers in this architecture.
  • 9. Peer-to-Peer Networking A peer-to-peer network, P2P, is consider any type of network architecture composed of contributors that make a part of their resources available to other contributors on the same network without the need for a server to oversee the transfer of information. This differs from the client-server model mainly in the respect that the client in the P2P model is both the supplier and consumer while in the client-server model the client can is only the consumer and the server is only the supplier.
  • 10. Peer-to-Peer Networking - Architecture A peer-to-peer network’s architecture is generally formed dynamically by an ad-hoc type of addition of nodes, meaning the loss of a certain node does not have a significant impact on the rest of the network. This aspect of peer-to-peer networks gives the system the ability to easily scale to any size that may be need for a certain application. Regarding different types of peer-to-peer architecture, there are generally two major types, structured and unstructured. These two types of networks also contain even more specific underlying types of networks.
  • 11. Peer-to-Peer Networking – Unstructured Architecture To be considered an unstructured peer-to-peer network, the network must not use any algorithm for organization or optimization of the network. For unstructured peer-to-peer networks there are three different models which include pure peer-to-peer networks, hybrid peer-to-peer networks, and centralized peer-to-peer networks. In a pure peer-to-peer network, or sometimes called a purely decentralized network, all nodes are of equal ability meaning that there are no nodes that have any special infrastructure function that could affect the network. A great example of a popular purely decentralized peer-to-peer network is the Gnutella network. The main purpose of the Gnutella network is for that of a file sharing system. The Gnutella network, like many other peer-to-peer networks uses a virtual overlay network with its own routing layers, allowing the peers of the network to share files on their machine to all other peers connected to the network.
  • 12. Peer-to-Peer Networking – Unstructured Architecture An example of the Gnutella search mechanism. Solid lines between the nodes represent connections of the Gnutella network. The search originates at the “requestor” node, for a file maintained by another node. Request messages are dispatched to all neighboring nodes, and propagated from node-to-node as shown in the four consecutive steps (a) to (d). When a node receives the same request message (based on its unique identifier) multiple times, it replies with a failure message to avoid loops and minimize traffic. When the file is identified, a success message is returned.
  • 13. Peer-to-Peer Networking – Unstructured Architecture The second type of unstructured peer-to-peer networks is called the hybrid peer-to-peer network. In this type of network, infrastructure nodes are allowed to exist and are often a type of central directory server. All clients connected to the network must connect to one of these servers. The central server maintains a table of registered user connection information (IP address, connection bandwidth etc.) and a table listing the files that each user holds and shares in the network, along with metadata descriptions of the files(e.g. filename, time of creation, etc.) A user that wishes to join the network must first contact the central directory server and report its files that wish to be shared. To find a file on this type of network, the user must send a request for that file to the directory server. The server then searches into database for said file and returns a list of users that possess that file. The requesting user then opens a direct connection with the list of users and downloads the file. A profound example of a hybrid peer-to-peer network is the notorious Napster network
  • 14. Peer-to-Peer Networking – Unstructured Architecture Typical hybrid decentralized peer-to-peer architecture. A central directory server maintains an index of the metadata for all files in the network
  • 15. Peer-to-Peer Networking – Unstructured Architecture The final type of unstructured peer-to-peer network is called a centralized peer-to-peer network. These centralized peer-to-peer networks are very similar to the pure peer-to-peer networks except for the added concept of supernodes. These supernodes are nodes that are dynamically assigned the task of servicing a small subpart of the peer network by indexing and caching files contained therein. Peers are chosen to be supernode automatically if said peer’s bandwidth and processing power is sufficient. All queries for files on this type of network are sent to and processed by these supernodes. A popular example of this centralized peer-to-peer network is the file sharing network Kazaa.
  • 16. Peer-to-Peer Networking – Structured Architecture Structured peer-to-peer networks generally hold the traits of using some type of algorithm for organization or optimization of the network. Structured peer-to-peer networks use some type of global protocol to ensure that any node in the network can proficiently route a search to some peer that has a desired file. By far the most popular type of structured peer-to-peer network is the distributed hash table or DHT.
  • 17. Peer-to-Peer Networking – Structured Architecture Distributed hash tables are a class of decentralized distributed systems that provide a lookup service similar to that of a hash table. Pairs, key and value, are stored in the distributed has table and any connected node can proficiently retrieve the value associated with a given key. Maintaining the mapping from keys to values is the responsibility of each of the nodes in the network. This is done in such a way that a change to the set of peers causes a negligible amount of disruption to the rest of the network. The most popular example of a network using a distributed hash table is BitTorrent’s distributed tracker.
  • 18. Peer-to-Peer Networking – Advantages and Limitations One of the major advantages to a peer-to-peer network is that each time a new node is connected to the network the total capacity of the system increases. This point differs from the client-server model standpoint since the addition of new nodes to a network that connects to a set number of servers could possibly slow data transfers for all of the connected users.
  • 19. Peer-to-Peer Networking – Advantages and Limitations Another advantage in regards to a pure peer-to-peer network is that there is no single point of failure in the network. When compared to the client-server model on this point if the server fails the network is brought down since the server is unable to relay information to the connected nodes. On the pure peer-to-peer side of the topic, if one of the nodes fails the rest of the nodes are able to continue relaying information.
  • 20. Peer-to-Peer Networking – Advantages and Limitations One of the weaknesses of peer-to-peer networks is that of security. Generally speaking peer-to-peer networks are more susceptible to security problems. Jon Udell states in the book Peer-to-Peer: Harnessing the Power of Disruptive Technologies “Security is hard enough in traditional networks that depend on central servers. It's harder still in peer-to-peer networks, particularly when you want to authenticate your communication partners and exchange data only with people you trust.” One way to combat these security problems in peer-to-peer networks is that of a reputation system. Jochem van Vroonhoven states in his paper entitled Peer to Peer Security “But on what ground can a user decide to trust a peer ornot? In current peer-to-peer systems that depend on therequesting user, reputation systems can provide a way to basetrust on the actual behavior of a peer.”
  • 21. Peer-to-Peer Networking – Advantages and Limitations Another disadvantage of peer-to-peer networks is the high bandwidth usage required. This high bandwidth usage has lead to Internet Service Providers starting to throttle, or limit, peer-to-peer traffic. On the other side, the server-client model usually consists of short quick bursts of data. An emerging solution to this problem is called peer-to-peer caching. Peer-to-peer caching is defined as a network traffic management service that accelerates data delivered over peer-to-peer networks by means of the Internet Service Provider storing pieces of files that are most accessed by peer-to-peer users.
  • 22. Peer-to-Peer Networking – Applications Some of the general applications for peer-to-peer networks include the ever popular file sharing, streaming media, grid computing, instant messaging and voice over internet protocol. The most popular peer-to-peer file sharing networks that are still active today include G2, FastTrack, and Gnutella. The application of sharing files over peer-to-peer networks is what first popularized the use of peer-to-peer technology. Major media streaming applications over peer-to-peer networks, or P2PTV, include Joost, TVUPlayer and CyberSky-TV. These applications allow for the streaming of media such as television channels over peer-to-peer networks.
  • 23. Peer-to-Peer Networking – Applications Grid computing is a peer-to-peer application that is gaining massive popularity. Grid computing applications share processing power over a networking to accomplish some type of goal. The two most popular grid computing applications include BOINC and Folding@Home.
  • 24. Peer-to-Peer Networking – Applications Voice over Internet Protocol, or VOIP, is another popular peer-to-peer applications. The most popular voice application that uses peer-to-peer networking is Skype. This application allows for the use of voice communications while using peer-to-peer technology.