1 / 16

Peer-to-Peer Computing

Peer-to-Peer Computing. Colin J. MacDougall. Peer-to-Peer (P2P). Class of Systems and Applications “Employ distributed resources to perform a critical function in a decentralized manner” Distributed Resources Computing power, storage, bandwidth, etc. Critical Functions

kail
Télécharger la présentation

Peer-to-Peer Computing

An Image/Link below is provided (as is) to download presentation Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author. Content is provided to you AS IS for your information and personal use only. Download presentation by click this link. While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server. During download, if you can't get a presentation, the file might be deleted by the publisher.

E N D

Presentation Transcript


  1. Peer-to-Peer Computing Colin J. MacDougall

  2. Peer-to-Peer (P2P) • Class of Systems and Applications • “Employ distributed resources to perform a critical function in a decentralized manner” • Distributed Resources • Computing power, storage, bandwidth, etc. • Critical Functions • Distributed computing, data sharing, communication, etc. • Decentralization • Algorithms, data, meta-data

  3. P2P vs. Client-Server vs. Hybrid

  4. History of P2P • Pre 1980s • Telephony – Communication between peers • 1980s – Early 1990s • FTP with Archie indexing • Mid 1990s • Abandoned in favor of client-server • 1999 • Napster • 2000s • SETI@home, Gnutella, JXTA, .NET, Groove,...

  5. Goals of P2P • Cost Sharing and Reduction • Server normally handles the brunt of costs • Peers can share costs between them • Ex. Napster shared storage space among peers • Resource Aggregation and Interoperability • Huge amounts of storage, computation available • Sum of peer’s resources is accessible • Ex. SETI@home is faster than the fastest supercomputer in the world (as of 2003)

  6. More Goals of P2P • Improved Scalability and Reliability • P2P has no (or little) central authority • Must be able to locate resources in a network of peers • Must remain operative when peers disconnect or networks fail • Increased Autonomy • Local nodes do work on behalf of their users • Users have control over their data and work

  7. Even More Goals of P2P • Anonymity • Of Author, Publisher, Reader, Server, Document, Query • Uses multicasting, covert paths, identity spoofing, non-voluntary placement, encryption, etc. • Dynamism • Peers join and drop the network continuously • Must be able to allocate work to new resources • Must be able to recover from uncompleted work on dropped resources

  8. Categories of P2P Systems • Distributed Computing • Sharing a computation intensive task between peers • Ex. SETI@home • File Sharing • Storing information on and retrieving information from peers • Ex. Napster, Gnutella • Communication & Collaboration • User interaction without central server • Ex. Instant Messaging • Platforms • Contain some capacity for all of the above services • Serve as an environment for P2P applications • Ex. JXTA, .NET

  9. Distributed Computing • Divide problem into small, independentparts • Limited to embarrassingly parallel problems • Cluster-like communication ruled out by network latency • Single Process Multiple Data • Financial Applications • Complex market simulations • Portfolio pricing, risk hedge calculation, credit evaluation, etc. • Security concerns • Biotech Applications • Genome@home, Folding@home

  10. File Sharing • Content storage and exchange • Circumvent bandwidth limitations • Technical Issues • Network Consumption • Security • Search Capabilities

  11. Communication/Collaboration • Instant messaging, online games, shared applications • Generally event-driven • Technical Challenges • Location of peers • Fault Tolerance • Realtime Constraints

  12. Platform Services • Execution environments providing layer between OS and applications • Support primary P2P components • Naming, discovery, communication, security, aggregation

  13. Central Index Algorithm

  14. Flooded Request Algorithm

  15. Document Routing Algorithm

  16. Reference • D.S. Milojicic, V. Kalogeraki, R. Lukose, K. Nagaraja, J. Pruyne, B. Richard, S. Rollins, Z. Xu, Peer-to-peer computing, Technical Report HPL-2002-57R1, HP Laboratories, Palo Alto, USA, 3 July 2003

More Related