130 likes | 151 Views
Explore the benefits of P2P file sharing and the research areas pertaining to peer discovery, group management, data placement, and more. Delve into design concerns like fault tolerance, load balancing, and security, along with approaches like centralized, unstructured, and structured models. Learn about the benefits and drawbacks of different P2P models including Napster, Gnutella, and structured networks like FreeNet and Chord. Discover potential improvements such as SuperPeers and caching indices for enhanced file sharing experiences.
E N D
P2P File Sharing Benefits • Why use a P2P model for a file sharing application?
Research Areas • Peer discovery and group management • Data placement and searching • Reliable and efficient file exchange • Security/privacy/anonymity/trust
Design Concerns • Group Management • Per-node state • Load balancing • Fault tolerance/resiliency • Search • Bandwidth usage • Time to locate item • Success rate • Fault tolerance/resiliency
Approaches • Centralized • Unstructured • Structured (Distributed Hash Tables)
Centralized Bob Alice • Napster model • Benefits: • Drawbacks: Judy Jane
Centralized Bob Alice • Napster model • Benefits: • Low per-node state • Limited bandwidth usage • Short location time • High success rate • Fault tolerant • Drawbacks: • Central point of failure • Limited scale • Possibly unbalanced load Judy Jane
Unstructured Carl Jane • Gnutella model • Benefits: • Drawbacks: Bob Alice Judy
Unstructured Carl Jane • Gnutella model • Benefits: • Limited per-node state • Fault tolerant • Drawbacks: • High bandwidth usage • Long time to locate item • No guarantee on success rate • Possibly unbalanced load Bob Alice Judy
Structured 001 012 • FreeNet, Chord, CAN, Tapestry, Pastry model • Benefits: • Drawbacks: 212 ? 212 ? 332 212 305
Structured 001 012 • FreeNet, Chord, CAN, Tapestry, Pastry model • Benefits: • Manageable per-node state • Manageable bandwidth usage and time to locate item • Guaranteed success • Drawbacks: • Possibly unbalanced load • Harder to support fault tolerance 212 ? 212 ? 332 212 305
Improvements: SuperPeers • KaZaA model • Hybrid centralized and unstructured • Advantages and disadvantages?
Other Improvements • Caching indices • Push vs pull • Building communities/directed search • Replication of content • Enables load balancing – how?