jay sheth p2p basics jay sheth ce, umbc. jay sheth p2p agenda what is p2p why p2p components and...
TRANSCRIPT
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
• 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
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