Upload
ahmed-salazar
View
94
Download
0
Tags:
Embed Size (px)
DESCRIPTION
Peer-to-Peer Computing. Mrs. Tugba Taskaya-Temizel 13/February/2006. Peer-to-Peer Networks Definition. The sharing of computer resources and services by direct exchange between systems [ The Intel P2P working group ]. - PowerPoint PPT Presentation
Citation preview
Peer-to-Peer Peer-to-Peer ComputingComputing
Mrs. Tugba Taskaya-TemizelMrs. Tugba Taskaya-Temizel
13/February/200613/February/2006
Peer-to-Peer NetworksPeer-to-Peer NetworksDefinitionDefinition
The sharing of computer resources The sharing of computer resources and services by direct exchange and services by direct exchange between systems [between systems [The Intel P2P The Intel P2P working groupworking group].].
Peers depend on each other for Peers depend on each other for getting information, computing getting information, computing resources, forwarding requests, etc. resources, forwarding requests, etc. which are essential for the which are essential for the functioning of the system as a whole.functioning of the system as a whole.
Peer-to-Peer NetworksPeer-to-Peer NetworksGoalsGoals
Cost sharing/reductionCost sharing/reduction Resource aggregation and Resource aggregation and
interoperabilityinteroperability Improved scalability/reliabilityImproved scalability/reliability Increased autonomyIncreased autonomy Anonymity/privacyAnonymity/privacy DynamismDynamism
Peer-to-Peer NetworksPeer-to-Peer NetworksAlgorithms: Centralised directory Algorithms: Centralised directory
modelmodel
Central DirectoryCentral Directory
11 22 33 44Peers
search
download
• Peers publish information about the content they want to share to a central directory.
• A peer sends a request.
• The central directory will match the request with the best matching peer.
• The files are exchanged between the requester and the matching peer.
• Application: Napster• Disadvantage: scalability
Peer-to-Peer NetworksPeer-to-Peer NetworksAlgorithms: Flooded Requests Algorithms: Flooded Requests
ModelModel
11
22
33
44
search
download
• A peer’s request is broadcasted to the directly connected peers, which themselves flood their peers until the request is answered or a maximum number of flooding steps (5 to 9) occur.
• Application: Gnutella• Disadvantage: requires a lot of bandwidth, does not guarantee reachability.
Peer-to-Peer NetworksPeer-to-Peer NetworksAlgorithms: Document Routing Algorithms: Document Routing
ModelModel
11
22 33
44
• Each peer is assigned a random ID and each knows a certain number of its peers.• An ID is generated based on the hash of the requested document content and name. • Each peer sends the file to a peer that has a similar ID. • It is repeated until the peer’s ID is identical to the document ID. • The file is transferred between the peers.
•Application: FreeNet• Disadvantage: Document IDs should be known, islanding problem.
File id=0009 File id=0030
File id=0010File id=0005
Algorithms implemented: Chord, CAN, Tapestry, Pastry
Peer-to-Peer NetworksPeer-to-Peer NetworksCharacteristics: DecentralisationCharacteristics: Decentralisation
User’s ownership and control of data User’s ownership and control of data and resourcesand resources
Difficulty: finding the network, Difficulty: finding the network, insertion of new nodesinsertion of new nodes
Peer-to-Peer NetworksPeer-to-Peer NetworksCharacteristics: ScalabilityCharacteristics: Scalability
Limited by factors such asLimited by factors such as The amount of centralised operationsThe amount of centralised operations The amount of state that needs to be The amount of state that needs to be
maintainedmaintained The inherent parallelism an application The inherent parallelism an application
exhibitsexhibits Programming model Programming model
Scalability Scalability ~ ~ Communication/ComputationCommunication/Computation
Peer-to-Peer NetworksPeer-to-Peer NetworksCharacteristics: AnonymityCharacteristics: Anonymity
GoalsGoals: : To allow people to use systems without To allow people to use systems without
concern for legal or other ramifications. concern for legal or other ramifications. To guarantee that censorship of digital To guarantee that censorship of digital
content is not possible.content is not possible. Types of anonymityTypes of anonymity: server, : server,
receiver, mutualreceiver, mutual
Peer-to-Peer NetworksPeer-to-Peer NetworksCharacteristics: Anonymity Characteristics: Anonymity
(Techniques)(Techniques) Multicasting Multicasting : :
Broadcasting groupBroadcasting group
EntityEntity
subscribes
EntityEntity
EntityEntity
EntityEntityEntityEntity
document request
sendsrequest
The identities of requester and sender are not known to the group.
Peer-to-Peer NetworksPeer-to-Peer NetworksCharacteristics: Anonymity Characteristics: Anonymity
(Techniques)(Techniques) Spoofing the sender’s address: Spoofing the sender’s address:
Message can be enforced by spoofing Message can be enforced by spoofing the sender’s IP address. the sender’s IP address.
Problem: ISPs do not accept messages Problem: ISPs do not accept messages from invalid IP addresses. from invalid IP addresses.
Identity SpoofingIdentity Spoofing Cover paths: Two parties Cover paths: Two parties
communicate through some middle communicate through some middle nodes.nodes.
Peer-to-Peer NetworksPeer-to-Peer NetworksCharacteristics: Anonymity Characteristics: Anonymity
(Techniques)(Techniques) Intractable aliases: such as Lucent Intractable aliases: such as Lucent
Personalised Web Assistant (LPWA)Personalised Web Assistant (LPWA)
Send user name and secret
Generate a set of consistent alias username, password, e-mail address in each time the user sends the same information
Send the generated info
Peer-to-Peer NetworksPeer-to-Peer NetworksCharacteristics: Anonymity Characteristics: Anonymity
(Techniques)(Techniques) Non-voluntary placement: A Non-voluntary placement: A
publisher forces a document onto a publisher forces a document onto a hosting node. Because the hosting node. Because the placement is non-voluntary, the host placement is non-voluntary, the host cannot be held accountable for cannot be held accountable for owning the document.owning the document.
Peer-to-Peer NetworksPeer-to-Peer NetworksCharacteristics: Self-OrganisationCharacteristics: Self-Organisation
P2P systems can scale unpredictably in terms P2P systems can scale unpredictably in terms of the number of systems, number of users, of the number of systems, number of users, and the load.and the load.
Adaptation is required to handle the changes Adaptation is required to handle the changes caused by peers connecting and caused by peers connecting and disconnecting from the P2P systems.disconnecting from the P2P systems.
For example in the FastTrack system, more For example in the FastTrack system, more powerful computers automatically become powerful computers automatically become SuperNodes and act as search hubs. Any SuperNodes and act as search hubs. Any client can become a SuperNode if it meets client can become a SuperNode if it meets processing and networking criteria processing and networking criteria (bandwidth and latency).(bandwidth and latency).
Peer-to-Peer NetworksPeer-to-Peer NetworksCharacteristics: Cost of OwnershipCharacteristics: Cost of Ownership
Shared ownership reduces the cost Shared ownership reduces the cost of maintaining the system and of maintaining the system and owning the systems.owning the systems.
For example, in Napster, the users For example, in Napster, the users contributed to the pool of music contributed to the pool of music files. SETI@home is faster than the files. SETI@home is faster than the fastest computer in the world.fastest computer in the world.
Peer-to-Peer NetworksPeer-to-Peer NetworksCharacteristics: Ad-hoc Characteristics: Ad-hoc
ConnectivityConnectivity Peers are not available at all Peers are not available at all
times. Hence, P2P systems need times. Hence, P2P systems need to be aware of this ad-hoc to be aware of this ad-hoc nature. nature.
P2P systems need to tolerate P2P systems need to tolerate disconnection and ad-hoc disconnection and ad-hoc additions to groups of peers.additions to groups of peers.
Peer-to-Peer NetworksPeer-to-Peer NetworksCharacteristics: PerformanceCharacteristics: Performance
P2P systems aim to improve P2P systems aim to improve performance by aggregating performance by aggregating distributed storage capacity.distributed storage capacity.
Performance is influenced by:Performance is influenced by: Processing, storage and networkingProcessing, storage and networking
Approaches to optimise performance:Approaches to optimise performance: Replication, caching, intelligent routingReplication, caching, intelligent routing
Peer-to-Peer NetworksPeer-to-Peer NetworksCharacteristics: SecurityCharacteristics: Security
Multi-key encryptionMulti-key encryption SandboxingSandboxing Digital rights managementDigital rights management Reputation and accountabilityReputation and accountability FirewallsFirewalls
Peer-to-Peer NetworksPeer-to-Peer NetworksCharacteristics: Transparency and Characteristics: Transparency and
UsabilityUsability End-to-end transparency: TCP/IPEnd-to-end transparency: TCP/IP Naming transparencyNaming transparency Network and device Network and device
transparencytransparency Automatic and transparent Automatic and transparent
authentication of usersauthentication of users
Peer-to-Peer NetworksPeer-to-Peer NetworksCharacteristics: Fault ResilienceCharacteristics: Fault Resilience
P2P systems should deal with:P2P systems should deal with: Disconnections/unreachabilityDisconnections/unreachability PartitionsPartitions Node failuresNode failures
Solutions:Solutions: Replication of crucial resourcesReplication of crucial resources RelaysRelays Queuing messagesQueuing messages
Peer-to-Peer NetworksPeer-to-Peer NetworksCharacteristics: InteroperabilityCharacteristics: Interoperability
Standards: IEEE standards for Standards: IEEE standards for Ethernet, token ring and wirelessEthernet, token ring and wireless
Common specifications: Object Common specifications: Object Management GroupManagement Group
Open source: LinuxOpen source: Linux De facto standards: Windows, JavaDe facto standards: Windows, Java P2P Working Group is an attempt to P2P Working Group is an attempt to
gather the community. gather the community.
Peer-to-Peer NetworksPeer-to-Peer NetworksComparison with Grid ComputingComparison with Grid Computing
Target communities and Target communities and incentivesincentives
ResourcesResources ApplicationsApplications Scale and failureScale and failure Services and infrastructureServices and infrastructure
Peer-to-Peer NetworksPeer-to-Peer NetworksComparison with Grid ComputingComparison with Grid Computing
Target communities and incentives:Target communities and incentives: Grids address the needs of scientific Grids address the needs of scientific
collaborations and commerce.collaborations and commerce. P2P has been used mostly for file P2P has been used mostly for file
sharing and highly parallel computing sharing and highly parallel computing applications. The communities applications. The communities comprise anonymous individuals.comprise anonymous individuals.
Peer-to-Peer NetworksPeer-to-Peer NetworksComparison with Grid ComputingComparison with Grid Computing
Resources:Resources: Grid systems integrate resources that are Grid systems integrate resources that are
more powerful, more diverse and better more powerful, more diverse and better connected than P2P resource.connected than P2P resource.
The resources are aggregated within The resources are aggregated within administrative domains via technologies administrative domains via technologies such as Condor.such as Condor.
Grid resources are more powerful than P2P Grid resources are more powerful than P2P resources.resources.
P2P systems deal with intermittent P2P systems deal with intermittent participation and highly variable behaviour. participation and highly variable behaviour.
Peer-to-Peer NetworksPeer-to-Peer NetworksComparison with Grid ComputingComparison with Grid Computing
Applications:Applications: Grid applications are dominantly Grid applications are dominantly
scientific applications.scientific applications. P2P deal with specialised resource-P2P deal with specialised resource-
sharing problems: current ones sharing problems: current ones share either compute cycles or files.share either compute cycles or files.
Grid applications are far more data Grid applications are far more data intensive.intensive.
Peer-to-Peer NetworksPeer-to-Peer NetworksComparison with Grid ComputingComparison with Grid Computing
Scale and failure:Scale and failure: Grid communities involve Grid communities involve
moderate number of participants, moderate number of participants, whereas P2P communities involve whereas P2P communities involve millions of users. However, the millions of users. However, the amount of activity in P2P is not amount of activity in P2P is not larger than Grid communities.larger than Grid communities.
Peer-to-Peer NetworksPeer-to-Peer NetworksComparison with Grid ComputingComparison with Grid Computing
Services and infrastructure:Services and infrastructure: There is an effort to standardise There is an effort to standardise
Grid technologies (OGSA).Grid technologies (OGSA). P2P systems have tended to focus P2P systems have tended to focus
on the integration of simple on the integration of simple resources via protocols designed resources via protocols designed to provide specific functionality.to provide specific functionality.
ReferencesReferences
Foster,I. and Iamnitchi,A. On Death, Foster,I. and Iamnitchi,A. On Death, Taxes, and the Convergence of Peer-to-Taxes, and the Convergence of Peer-to-Peer and Grid Computing.Peer and Grid Computing.
Shirky,C. What is P2P… and What isn’t? Shirky,C. What is P2P… and What isn’t? http://www.openp2p.com/pub/a/p2p/2000/http://www.openp2p.com/pub/a/p2p/2000/11/24/shirky1-whatisp2p.html11/24/shirky1-whatisp2p.html
Milojijic,D.S., Kalogeraki,V.,Lukose,R. Milojijic,D.S., Kalogeraki,V.,Lukose,R. Peer-to-Peer Computing, Peer-to-Peer Computing, http://web.cs.wpi.edu/~goos/Teach/cs451http://web.cs.wpi.edu/~goos/Teach/cs4513-d05/papers/p2p-tutorial.pdf3-d05/papers/p2p-tutorial.pdf