28
Peer-to-Peer Peer-to-Peer Computing Computing Mrs. Tugba Taskaya- Mrs. Tugba Taskaya- Temizel Temizel 13/February/2006 13/February/2006

Peer-to-Peer Computing

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