jay sheth p2p basics jay sheth ce, umbc. jay sheth p2p agenda what is p2p why p2p components and...

31
Jay Sheth Jay Sheth P2P Basics Jay Sheth CE, UMBC

Upload: sherilyn-douglas

Post on 22-Dec-2015

213 views

Category:

Documents


0 download

TRANSCRIPT

Jay ShethJay Sheth

P2P Basics

Jay Sheth

CE, UMBC

Jay Sheth

P2P Agenda

• What is P2P• Why P2P• Components and algorithms• Characteristics• Different P2P systems• Future Work

Jay Sheth

What is P2P ?

• Peer is a entity that has attributes similar to other entities in system

• P2P is a technology and not a protocol

• Process whereby computers trade information between each other without having to pass the information through a centrally controlled server

• Sharing of computer resources (information, processing) and services by direct exchange between systems

Jay ShethJay ShethJay Sheth

What is P2P ?

Computer Systems

Centralized SystemsE.g.. Mainframes

Distributed Systems

Client Server Peer to peer

Flat Hierarchical Pure Hybrid

Jay ShethJay ShethJay Sheth

Why P2P ?

• Scalability increases by avoiding dependency on centralized points

• Eliminates the need of costly infrastructure by enabling direct communication among clients (cost sharing/reduction)

• Enabling resource aggregation

Jay ShethJay ShethJay Sheth

Components

Communication

ManagementMessagingMeta-data

Services

Scheduling

ApplicationsTools

Resource aggregation

Security Reliability

Locating, routingDiscovery

Communication

Group Management

Robustness

Class-specific

Application-specific

Jay ShethJay ShethJay Sheth

Algorithms

• Centralized directory model

Index : All peers publish information about the content they offer for sharing

Napster

Jay ShethJay ShethJay Sheth

Algorithms

• Flooded requests model

- Pure P2P model - Broadcast to all nodes

Gnutella

Jay ShethJay ShethJay Sheth

Algorithms

• Flooded requests model modified

Jay ShethJay ShethJay Sheth

Algorithms

• Document routing model

- Very efficient for large global communications - Difficult to implement - Islanding problem - Freenet

Jay ShethJay ShethJay Sheth

Characteristics

• Decentralization Centralized systems - Ideal for some applications - Bottlenecks - Inefficient use of resources - Expensive to setup - Hard to maintain

Decentralized systems - Fully decentralized is difficult in practice - Hybrid approach

Jay ShethJay ShethJay Sheth

Characteristics

• Scalability - Immediate benefit of decentralization - At expense of performance guarantee - Hybrid approach - E.g. Napster : Users to directly download music files Some operations, files centralized

Jay ShethJay ShethJay Sheth

Characteristics

• Anonymity - Receiver Multicasting (underlying network should support multicast) E.g. Gnutella

- Sender Covert paths

Jay ShethJay ShethJay Sheth

Characteristics

• Self-Organization - Scaling results in increase in probability of failures - Requires self-maintenance, self-repair of systems - Costly to have dedicated equipment, hence distributed

E.g. OceanStore, self-organization applied to location and routing infrastructure

Jay ShethJay ShethJay Sheth

Characteristics

• Cost of Ownership - Cost of owning systems, content and maintenance - Elimination of centralized computers for storing information E.g. Napster, each member contributes to pool of music files. SETI@home faster than fastest supercomputer in world, cost is 1%

Jay ShethJay ShethJay Sheth

Characteristics

• Ad-hoc Connectivity - Everything not connected to the internet - Ad-hoc groups should be able to form ad-hoc networks to collaborate - Bluetooth and infrared have limited radius of accessibility - P2P need to be designed to tolerate sudden disconnection/additions

Jay ShethJay ShethJay Sheth

Characteristics

• Performance - Significant concern

- Influenced by processing, storage, networking - Aggregating distributed storage capacity e.g. Napster, Gnutella - Aggregating computing cycles e.g.. SETI@Home - Networking delays in WAN - Bandwidth for large number of messages/files. Limits scalability of system - Optimize performance Replication – Cope with disappearance of peers Caching – Reduce path length Intelligent routing – Minimize distance delay

Jay ShethJay ShethJay Sheth

Characteristics

• Security - For common distributed objects - Multi-key encryption - Sandboxing : External code doesn’t crash host - Digital Rights Management to save intellectual property Watermarking : Add a sign in file that is unrecognizable - Reputation and accountability Concept of good peer and freeloader

Jay ShethJay ShethJay Sheth

Characteristics

• Transparency and Usability - Naming transparency using URLs - Administration transparency - Network and device transparent i.e. work on internet, intranet and private networks

User can use P2P applications in following manner• User of services, typically Web interfaces• Locally installed P2P software e.g.. Napster

Jay ShethJay ShethJay Sheth

Characteristics

• Fault resilience - Disconnection and node failures - Special nodes called relays - Store communication temporarily until destination reappears - Magi : queue messages at source until presence of destination peer detected - Napster and Gnutella : Replication of crucial resources based on file’s popularity - Network failure can be solved by routing around the failure

Jay ShethJay ShethJay Sheth

Characteristics

• Interoperability - P2P systems - Interoperate, communicate( what protocol), exchange data, same level of security, QoS and reliability - Still not supported

Jay ShethJay ShethJay Sheth

P2P Systems

P2P Systems

Distributed Computing File sharing Collaboration Platforms

Jay ShethJay ShethJay Sheth

Distributed Computing

- Processing scalability in massive multi-parameters systems - Run by a central controller - Fork and join mechanism - Limitations

• Independent small parts• Internet latencies

- Intel claim speed-ups from 15hours to 30 minutes in case of interest rate swap modeling by using P2P

Jay ShethJay ShethJay Sheth

File Sharing

- Content storage and exchange is where P2P is most successful Napster :

• Search mechanism is centralized• File sharing mechanism is decentralized• Scalability limitations• Simplifies security mechanism

Jay ShethJay ShethJay Sheth

File Sharing

Kazaa :

• Uses SuperNodes as local search hubs

• Intelligent download system i.e. find and download from fastest connection. Failed transfers are automatically resumed

Jay ShethJay ShethJay Sheth

Collaboration

- Application level collaboration between users - Event based applications such as Instant messaging, chat, online games - Challenges

• Location of other peers (e.g.. NetMeeting requires to know other peers IP address)

• Real time constraints e.g.. Game DOOM

Jay ShethJay ShethJay Sheth

Platforms

- Platforms have support for primary P2P components : naming, discovery, communication, security and resource aggregation - Candidates for future P2P platform : .net, JXTA

Jay ShethJay ShethJay Sheth

Comparison of Solutions

Jay ShethJay ShethJay Sheth

Future Work

• P2P algorithms World becomes decentralized, need for P2P algorithm to overcome scalability, anonymity and connectivity problems

• P2P applications Most likely to succeed in future • P2P platforms JXTA widely adopted

Jay Sheth

References

• Peer-to-peer Computing Dejan S. Milojicic, Vana Kalogeraki, Rajan Lukose, Kiran Nagaraja, Jim Pruyne, Bruno Richard, Sami Rollins, Zhichen Xu HP Laboratories Palo Alto

• bsdq.org http://www.bsdg.org/Jim/Peer2Peer/Paper/3214.html

Jay Sheth