Peer-to-Peer (P2P) File Systems. P2P File Systems CS 5204 – Fall, 20082 Peer-to-Peer Systems Definition: “Peer-to-peer systems can be characterized as.

Slides:



Advertisements
Similar presentations
P2P data retrieval DHT (Distributed Hash Tables) Partially based on Hellerstein’s presentation at VLDB2004.
Advertisements

Ion Stoica, Robert Morris, David Karger, M. Frans Kaashoek, Hari Balakrishnan MIT and Berkeley presented by Daniel Figueiredo Chord: A Scalable Peer-to-peer.
Peer to Peer and Distributed Hash Tables
Scalable Content-Addressable Network Lintao Liu
Peer-to-Peer (P2P) Distributed Storage 1Dennis Kafura – CS5204 – Operating Systems.
Chord A Scalable Peer-to-peer Lookup Service for Internet Applications Prepared by Ali Yildiz (with minor modifications by Dennis Shasha)
Ion Stoica, Robert Morris, David Liben-Nowell, David R. Karger, M
Chord: A scalable peer-to- peer lookup service for Internet applications Ion Stoica, Robert Morris, David Karger, M. Frans Kaashock, Hari Balakrishnan.
1 1 Chord: A scalable Peer-to-peer Lookup Service for Internet Applications Dariotaki Roula
Xiaowei Yang CompSci 356: Computer Network Architectures Lecture 22: Overlay Networks Xiaowei Yang
Chord: A Scalable Peer-to-Peer Lookup Service for Internet Applications Ion Stoica, Robert Morris, David Karger, M. Frans Kaashoek, Hari Balakrishnan Presented.
Peer-to-Peer Systems (cntd.) 15/11 – 2004 INF5070 – Media Servers and Distribution Systems:
Chord A Scalable Peer-to-peer Lookup Service for Internet Applications
Distributed Hash Tables: Chord Brad Karp (with many slides contributed by Robert Morris) UCL Computer Science CS M038 / GZ06 27 th January, 2009.
Chord: A Scalable Peer-to-peer Lookup Service for Internet Applications Robert Morris Ion Stoica, David Karger, M. Frans Kaashoek, Hari Balakrishnan MIT.
Chord: A Scalable Peer-to-peer Lookup Service for Internet Applications Ion StoicaRobert Morris David Liben-NowellDavid R. Karger M. Frans KaashoekFrank.
Peer to Peer File Sharing Huseyin Ozgur TAN. What is Peer-to-Peer?  Every node is designed to(but may not by user choice) provide some service that helps.
1 Chord: A Scalable Peer-to-peer Lookup Service for Internet Applications Robert Morris Ion Stoica, David Karger, M. Frans Kaashoek, Hari Balakrishnan.
What is a P2P system? A distributed system architecture: No centralized control Nodes are symmetric in function Large number of unreliable nodes Enabled.
Topics in Reliable Distributed Systems Lecture 2, Fall Dr. Idit Keidar.
Introducing: Cooperative Library Presented August 19, 2002.
Introduction to Peer-to-Peer (P2P) Systems Gabi Kliot - Computer Science Department, Technion Concurrent and Distributed Computing Course 28/06/2006 The.
Chord: A Scalable Peer-to-Peer Lookup Protocol for Internet Applications Stoica et al. Presented by Tam Chantem March 30, 2007.
P2P: Advanced Topics Filesystems over DHTs and P2P research Vyas Sekar.
Spring 2003CS 4611 Peer-to-Peer Networks Outline Survey Self-organizing overlay network File system on top of P2P network Contributions from Peter Druschel.
Chord and CFS Philip Skov Knudsen Niels Teglsbo Jensen Mads Lundemann
Distributed Lookup Systems
Chord: A Scalable Peer-to-peer Lookup Service for Internet Applications Ion Stoica, Robert Morris, David Karger, M. Frans Kaashoek and Hari alakrishnan.
Chord-over-Chord Overlay Sudhindra Rao Ph.D Qualifier Exam Department of ECECS.
Topics in Reliable Distributed Systems Fall Dr. Idit Keidar.
Peer To Peer Distributed Systems Pete Keleher. Why Distributed Systems? l Aggregate resources! –memory –disk –CPU cycles l Proximity to physical stuff.
Wide-Area Cooperative Storage with CFS Presented by Hakim Weatherspoon CS294-4: Peer-to-Peer Systems Slides liberally borrowed from the SOSP 2001 CFS presentation.
Wide-area cooperative storage with CFS
1 Peer-to-Peer Networks Outline Survey Self-organizing overlay network File system on top of P2P network Contributions from Peter Druschel.
Lecture 10 Naming services for flat namespaces. EECE 411: Design of Distributed Software Applications Logistics / reminders Project Send Samer and me.
INTRODUCTION TO PEER TO PEER NETWORKS Z.M. Joseph CSE 6392 – DB Exploration Spring 2006 CSE, UT Arlington.
Wide-Area Cooperative Storage with CFS Robert Morris Frank Dabek, M. Frans Kaashoek, David Karger, Ion Stoica MIT and Berkeley.
Introduction to Peer-to-Peer Networks. What is a P2P network A P2P network is a large distributed system. It uses the vast resource of PCs distributed.
Wide-area cooperative storage with CFS Frank Dabek, M. Frans Kaashoek, David Karger, Robert Morris, Ion Stoica.
Cooperative File System. So far we had… - Consistency BUT… - Availability - Partition tolerance ?
Content Overlays (Nick Feamster). 2 Content Overlays Distributed content storage and retrieval Two primary approaches: –Structured overlay –Unstructured.
Chord & CFS Presenter: Gang ZhouNov. 11th, University of Virginia.
Chord: A Scalable Peer-to-peer Lookup Protocol for Internet Applications Xiaozhou Li COS 461: Computer Networks (precept 04/06/12) Princeton University.
Network Computing Laboratory Scalable File Sharing System Using Distributed Hash Table Idea Proposal April 14, 2005 Presentation by Jaesun Han.
Ion Stoica, Robert Morris, David Karger, M. Frans Kaashoek, Hari Balakrishnan MIT and Berkeley presented by Daniel Figueiredo Chord: A Scalable Peer-to-peer.
Presentation 1 By: Hitesh Chheda 2/2/2010. Ion Stoica, Robert Morris, David Karger, M. Frans Kaashoek, Hari Balakrishnan MIT Laboratory for Computer Science.
Chord: A Scalable Peer-to-peer Lookup Service for Internet Applications.
Presented by: Tianyu Li
Chord: A Scalable Peer-to-peer Lookup Service for Internet Applications Ion Stoica, Robert Morris, David Karger, M. Frans Kaashoek, Hari Balakrishnan Presented.
SIGCOMM 2001 Lecture slides by Dr. Yingwu Zhu Chord: A Scalable Peer-to-peer Lookup Service for Internet Applications.
Peer to Peer A Survey and comparison of peer-to-peer overlay network schemes And so on… Chulhyun Park
1 JTE HPC/FS Pastis: a peer-to-peer file system for persistant large-scale storage Jean-Michel Busca Fabio Picconi Pierre Sens LIP6, Université Paris 6.
1 Secure Peer-to-Peer File Sharing Frans Kaashoek, David Karger, Robert Morris, Ion Stoica, Hari Balakrishnan MIT Laboratory.
Chord Fay Chang, Jeffrey Dean, Sanjay Ghemawat, Wilson C. Hsieh, Deborah A. Wallach, Mike Burrows, Tushar Chandra, Andrew Fikes, Robert E. Gruber Google,
Algorithms and Techniques in Structured Scalable Peer-to-Peer Networks
CS 347Notes081 CS 347: Parallel and Distributed Data Management Notes 08: P2P Systems.
Large Scale Sharing Marco F. Duarte COMP 520: Distributed Systems September 19, 2004.
1 Secure Peer-to-Peer File Sharing Frans Kaashoek, David Karger, Robert Morris, Ion Stoica, Hari Balakrishnan MIT Laboratory.
Chord: A Scalable Peer-to-Peer Lookup Service for Internet Applications * CS587x Lecture Department of Computer Science Iowa State University *I. Stoica,
CS Spring 2010 CS 414 – Multimedia Systems Design Lecture 24 – Introduction to Peer-to-Peer (P2P) Systems Klara Nahrstedt (presented by Long Vu)
Peer-to-Peer Data Management
(slides by Nick Feamster)
DHT Routing Geometries and Chord
Distributed P2P File System
Peer-to-Peer (P2P) File Systems
Building Peer-to-Peer Systems with Chord, a Distributed Lookup Service
Peer-to-Peer Storage Systems
Chord and CFS Philip Skov Knudsen
Consistent Hashing and Distributed Hash Table
A Scalable Peer-to-peer Lookup Service for Internet Applications
Presentation transcript:

Peer-to-Peer (P2P) File Systems

P2P File Systems CS 5204 – Fall, Peer-to-Peer Systems Definition: “Peer-to-peer systems can be characterized as distributed systems in which all nodes have identical capabilities and responsibilities, and all communication is symmetric.” –Rowstron- Popular Examples:  Napster  Gnutella Goals (from Dabek, et. al.)  Symmetric and decentralized  Operate with unmanaged voluntary participants  Fast location of data  Tolerate frequent joining/leaving by servers  Balanced load

P2P File Systems CS 5204 – Fall, CFS: Properties Decentralized control (use ordinary Internet hosts) Scalability (overhead at most logarithmic in the number of servers) Availability (placement of replicas on unrelated servers) Load balance (block distribution and caching) Persistence (renewable lifetimes) Quotas (source-limited insertions) Efficiency (comparable to FTP access)

P2P File Systems CS 5204 – Fall, CFS: Architecture Chord DHash CFSRead-only file system interface Block distribution/fetching Caching/replication Quota enforcement Block lookup A generic, distributed block store client server

P2P File Systems CS 5204 – Fall, CFS: Content-hash indexing Each block (except for the root block of a file system) is identified by an index obtained from a hash (e.g., SHA-1) of its contents A root block is signed by the author; the index of the root block is a hash of the user’s public key B1 B2 data block Inode block F directory block H(B1) H(B2) H(F) D root block H(D) H( public key ) timestamp signature

P2P File Systems CS 5204 – Fall, Chord: Mapping server s stores all values indexed by key k for which s is the successor of k (successor(k) is the node whose indentifier is the smallest one greater than k ) each Chord server maintains two lists:  a finger table for searching  r immediate successors and their latency information server H(IP address + virtual index) block H(block ) successor

P2P File Systems CS 5204 – Fall, Chord: Searching (1) n1 n3 n2 A B C D M startintervalnode A = n [A,B)n2 B = n [B,C)n3 C = n [C,D)n3 … M = n1 + 2 m-1 finger table for n1

P2P File Systems CS 5204 – Fall, Chord: Searching (2)

P2P File Systems CS 5204 – Fall, Chord: performance

P2P File Systems CS 5204 – Fall, Chord: Adding Servers (1) Two Invariants maintained: Successor information is correct Successor(k) is responsible for key k Steps: 1. By out-of-band means, locate an existing server, n 2. Update tables Update successor/predecessor links Creates finger tables for new server Update other server’s finger tables 3. Redistribute responsibility for keys to n from its successor Call higher (DHash) layer

P2P File Systems CS 5204 – Fall, Chord: Adding Servers (2) Adding a new node at 6 assuming that node 6 knows, by out-of-band means, of node 2

P2P File Systems CS 5204 – Fall, DHash: Interface put_h(block) – stores block using content-hashing put_s(block, pubkey) – stores block as a root block; key is hash of pubkey get(key) – finds/returns block associated with key

P2P File Systems CS 5204 – Fall, DHash: replication Places replicas on k servers following successor Note: each Chord server maintains a list of r immediate successors. By keeping r >= k, it is easy for DHash to determine replica locations Existence of replicas eases reallocation when node leaves the system By fetching the successor list from Chord, the DHash layer can select the most efficient node from which to access a replica of a desired block

P2P File Systems CS 5204 – Fall, DHash: caching, load balancing, quotas Caching is effective because searches from different clients converge toward the end of the search Virtual servers hosted on one machine allow for more capable machines to store a larger portion of the identifier space Each server enforces a fixed, per-IP address quota on publishing nodes

P2P File Systems CS 5204 – Fall, DHash: replication and caching server target server identifier replicas