Decentralized Location Services CS273 Guest Lecture April 24, 2001 Ben Y. Zhao.

Slides:



Advertisements
Similar presentations
Qualifying Examination A Decentralized Location and Routing Infrastructure for Fault-tolerant Wide-area Applications John Kubiatowicz (Chair)Satish Rao.
Advertisements

Tapestry: Decentralized Routing and Location SPAM Summer 2001 Ben Y. Zhao CS Division, U. C. Berkeley.
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
Pastry Peter Druschel, Rice University Antony Rowstron, Microsoft Research UK Some slides are borrowed from the original presentation by the authors.
Peter Druschel, Rice University Antony Rowstron, Microsoft Research UK
CHORD – peer to peer lookup protocol Shankar Karthik Vaithianathan & Aravind Sivaraman University of Central Florida.
The Chord P2P Network Some slides have been borowed from the original presentation by the authors.
Chord: A Scalable Peer-to-peer Lookup Service for Internet Applications Robert Morris Ion Stoica, David Karger, M. Frans Kaashoek, Hari Balakrishnan MIT.
Pastry Peter Druschel, Rice University Antony Rowstron, Microsoft Research UK Some slides are borrowed from the original presentation by the authors.
1 PASTRY Partially borrowed from Gabi Kliot ’ s presentation.
1 Accessing nearby copies of replicated objects Greg Plaxton, Rajmohan Rajaraman, Andrea Richa SPAA 1997.
Common approach 1. Define space: assign random ID (160-bit) to each node and key 2. Define a metric topology in this space,  that is, the space of keys.
The Oceanstore Regenerative Wide-area Location Mechanism Ben Zhao John Kubiatowicz Anthony Joseph Endeavor Retreat, June 2000.
Presented by Elisavet Kozyri. A distributed application architecture that partitions tasks or work loads between peers Main actions: Find the owner of.
Pastry: Scalable, decentralized object location and routing for large-scale peer-to-peer systems Antony Rowstron and Peter Druschel Proc. of the 18th IFIP/ACM.
1 Chord: A Scalable Peer-to-peer Lookup Service for Internet Applications Robert Morris Ion Stoica, David Karger, M. Frans Kaashoek, Hari Balakrishnan.
Topics in Reliable Distributed Systems Lecture 2, Fall Dr. Idit Keidar.
Looking Up Data in P2P Systems Hari Balakrishnan M.Frans Kaashoek David Karger Robert Morris Ion Stoica.
Spring 2003CS 4611 Peer-to-Peer Networks Outline Survey Self-organizing overlay network File system on top of P2P network Contributions from Peter Druschel.
Distributed Lookup Systems
Tapestry: Wide-area Location and Routing Ben Y. Zhao John Kubiatowicz Anthony D. Joseph U. C. Berkeley.
Chord: A Scalable Peer-to-peer Lookup Service for Internet Applications Ion Stoica, Robert Morris, David Karger, M. Frans Kaashoek and Hari alakrishnan.
Distributed Object Location in a Dynamic Network Kirsten Hildrum, John D. Kubiatowicz, Satish Rao and Ben Y. Zhao.
Secure routing for structured peer-to-peer overlay networks (by Castro et al.) Shariq Rizvi CS 294-4: Peer-to-Peer Systems.
Weaving a Tapestry Distributed Algorithms for Secure Node Integration, Routing and Fault Handling Ben Y. Zhao (John Kubiatowicz, Anthony Joseph) Fault-tolerant.
Topics in Reliable Distributed Systems Fall Dr. Idit Keidar.
1 CS 194: Distributed Systems Distributed Hash Tables Scott Shenker and Ion Stoica Computer Science Division Department of Electrical Engineering and Computer.
Locality Optimizations in Tapestry Jeremy Stribling Joint work with: Kris Hildrum Ben Y. Zhao Anthony D. Joseph John D. Kubiatowicz Sahara/OceanStore Winter.
Or, Providing High Availability and Adaptability in a Decentralized System Tapestry: Fault-resilient Wide-area Location and Routing Issues Facing Wide-area.
Or, Providing Scalable, Decentralized Location and Routing Network Services Tapestry: Fault-tolerant Wide-area Application Infrastructure Motivation and.
1 Peer-to-Peer Networks Outline Survey Self-organizing overlay network File system on top of P2P network Contributions from Peter Druschel.
Tapestry: Finding Nearby Objects in Peer-to-Peer Networks Joint with: Ling Huang Anthony Joseph Robert Krauthgamer John Kubiatowicz Satish Rao Sean Rhea.
Peer-to-Peer Networks Slides largely adopted from Ion Stoica’s lecture at UCB.
Tapestry: A Resilient Global-scale Overlay for Service Deployment Ben Y. Zhao, Ling Huang, Jeremy Stribling, Sean C. Rhea, Anthony D. Joseph, and John.
Tapestry: Decentralized Routing and Location System Seminar S ‘01 Ben Y. Zhao CS Division, U. C. Berkeley.
1 A scalable Content- Addressable Network Sylvia Rathnasamy, Paul Francis, Mark Handley, Richard Karp, Scott Shenker Pirammanayagam Manickavasagam.
Tapestry GTK Devaroy (07CS1012) Kintali Bala Kishan (07CS1024) G Rahul (07CS3009)
1 Plaxton Routing. 2 Introduction Plaxton routing is a scalable mechanism for accessing nearby copies of objects. Plaxton mesh is a data structure that.
1 PASTRY. 2 Pastry paper “ Pastry: Scalable, decentralized object location and routing for large- scale peer-to-peer systems ” by Antony Rowstron (Microsoft.
Arnold N. Pears, CoRE Group Uppsala University 3 rd Swedish Networking Workshop Marholmen, September Why Tapestry is not Pastry Presenter.
Brocade Landmark Routing on P2P Networks Gisik Kwon April 9, 2002.
Using the Small-World Model to Improve Freenet Performance Hui Zhang Ashish Goel Ramesh Govindan USC.
Chord: A Scalable Peer-to-peer Lookup Protocol for Internet Applications Xiaozhou Li COS 461: Computer Networks (precept 04/06/12) Princeton University.
Vincent Matossian September 21st 2001 ECE 579 An Overview of Decentralized Discovery mechanisms.
Ion Stoica, Robert Morris, David Karger, M. Frans Kaashoek, Hari Balakrishnan MIT and Berkeley presented by Daniel Figueiredo Chord: A Scalable Peer-to-peer.
Chord: A Scalable Peer-to-peer Lookup Service for Internet Applications.
1 More on Plaxton routing There are n nodes, and log B n digits in the id, where B = 2 b The neighbor table of each node consists of - primary neighbors.
Scalable Content- Addressable Networks Prepared by Kuhan Paramsothy March 5, 2007.
Peer to Peer A Survey and comparison of peer-to-peer overlay network schemes And so on… Chulhyun Park
Pastry: Scalable, decentralized object location and routing for large-scale peer-to-peer systems Antony Rowstron and Peter Druschel, Middleware 2001.
1 Secure Peer-to-Peer File Sharing Frans Kaashoek, David Karger, Robert Morris, Ion Stoica, Hari Balakrishnan MIT Laboratory.
1 Distributed Hash Table CS780-3 Lecture Notes In courtesy of Heng Yin.
Idit Keidar, Principles of Reliable Distributed Systems, Technion EE, Spring Principles of Reliable Distributed Systems Lecture 2: Distributed Hash.
Peer to Peer Network Design Discovery and Routing algorithms
Tapestry : An Infrastructure for Fault-tolerant Wide-area Location and Routing Presenter : Lee Youn Do Oct 5, 2005 Ben Y.Zhao, John Kubiatowicz, and Anthony.
LOOKING UP DATA IN P2P SYSTEMS Hari Balakrishnan M. Frans Kaashoek David Karger Robert Morris Ion Stoica MIT LCS.
1 Plaxton Routing. 2 History Greg Plaxton, Rajmohan Rajaraman, Andrea Richa. Accessing nearby copies of replicated objects, SPAA 1997 Used in several.
CS694 - DHT1 Distributed Hash Table Systems Hui Zhang University of Southern California.
Chord: A Scalable Peer-to-Peer Lookup Service for Internet Applications * CS587x Lecture Department of Computer Science Iowa State University *I. Stoica,
The Chord P2P Network Some slides taken from the original presentation by the authors.
CS 268: Lecture 22 (Peer-to-Peer Networks)
The Chord P2P Network Some slides have been borrowed from the original presentation by the authors.
Accessing nearby copies of replicated objects
EE 122: Peer-to-Peer (P2P) Networks
Building Peer-to-Peer Systems with Chord, a Distributed Lookup Service
Locality Optimizations in Tapestry Sahara/OceanStore Winter Retreat
Tapestry: Scalable and Fault-tolerant Routing and Location
MIT LCS Proceedings of the 2001 ACM SIGCOMM Conference
P2P: Distributed Hash Tables
Presentation transcript:

Decentralized Location Services CS273 Guest Lecture April 24, 2001 Ben Y. Zhao

Review: Object Location Neighborhood covers Each server knows about all objects in its neighborhood Object implosion at root cover node Goals: Given ID, Locate nearest object in network Do so w/o centralization

PRR (SPAA 97) Namespace large enough to avoid collisions (N, Log 2 (N) bits) Insert Object: Hash Object into namespace For (i=0, i<Log 2 (N), i++) { Insert entry into nearest node matches on last i bits If no matching node, then pick node w/ i-1 bits with highest ID value

PRR97 Object Lookup Lookup object Traverse same nodes as insert, except searching for entry at each node For (i=0, i<Log 2 (N), i++) { Search for entry in nearest node matching on last i bits Expected length of pointer at i th node is 2 i

PRR97 Reaching nodes Routing between successive nodes Pointer map required Forwarding for any object name Needs to be compact Reduce complexity, insert at node matching every n bits Neighbor Map For “6271” (Octal) Routing Levels xxx2 xxx0 xxx3 xxx4 xxx5 xxx6 xxx7 xx01 xx11 xx21 xx31 xx41 xx51 xx x071 x x371 x471 x571 x671 x

PRR97 Limitations Setting up the pointer maps Uses global knowledge Lack of adaptability in dynamic systems Finding node with i matching bits How do you find node with highest ID value What happens as network changes Need to maintain deterministic way to find the same node over time

Tapestry Zhao, Kubiatowicz and Joseph Help from Hildrum, Rao, Zhuang, et al. A fault-tolerant wide-area location and routing application infrastructure Core location/routing based on PRR97 Algorithmic and system extensions Decentralized dynamic algorithms Redundancy everywhere for fault-tolerance

What do we want A dynamic mapping algorithm Deterministic over network changes Globally consistent mapping Assumptions All nodes with same matching suffix contains same null/non-null pattern in next level of routing map Requires: consistent knowledge of nodes across network

Dynamic Object Mapping Mapping object ID to deterministic sequence of nodes to store location ptrs At i th hop while routing to object ID Insert entry in local storage If no next node exists matching i+1 digits Route on next highest indexed non-null pointer End node reached when no other pointers in rest of route map Else route to nearest such digit

Analysis Globally consistent deterministic mapping Null entry  no node in network with suffix  consistent map  identical null entries across same route maps of nodes w/ same suffix Additional hops compared to PRR solution: Reduce to coupon collector problem Assuming random distribution With n  ln(n) + cn entries, P(all coupons) = 1-e -c For n=b, c=b-ln(b), P(b 2 nodes left) = 1-b/e b = 1.8  # of additional hops  Log b (b 2 ) = 2 Distributed algorithm with minimal additional hops

Border Cases Two cases A. If a node disappeared, and some node did not detect it. Routing proceeds on invalid link, fails No backup router, so proceed to surrogate routing B. If a node entered, has not been detected, then go to surrogate node instead of existing node New node checks with surrogate after all such nodes have been notified Route info at surrogate is moved to new node

Algorithm: Dynamic Insertion New node desires integration w/ ID Step 1: copy route map recursively ????1 ???11 ?1111 ??

Dynamic Insertion cont. Step 2: Get relevant data from surrogate inform edge nodes of your existence Step 3: Notify neighbors to optimize paths surrogate ?

Summary Globally unique names Objects and nodes Randomly distributed Represented as digits of size b = 2 i Per node routing table size: bLog b (N) N = size of namespace, n = # of nodes Find object in Log b (n) hops Key properties Application controls modifications to object Overlay follows physical network distance

Alternatives: P2P Indices Content Addressable Networks Ratnasamy et al. ACIRI / Berkeley Chord Stoica, Morris, Karger, Kaashoek, Balakrishnan MIT / Berkeley Pastry Druschel and Rowstron Rice / Microsoft Research

Content-Addressable Networks Distributed hashtable addressed in d dimension coordinate space Routing table size: O(d) Hops: expected O(dN 1/d ) N = size of namespace in d dimensions Efficiency via redundancy Multiple dimensions Multiple realities Reverse push of “breadcrumb” caches Assume immutable objects

Chord Associate each node and object a unique ID in uni- dimensional space Object O stored by node with highest ID < O Finger table Pointer for next node 2 i away in namespace Table size: Log 2 (n) n = total # of nodes Find object: Log 2 (n) hops Optimization via heuristics Node 0

Pastry Incremental routing like Plaxton / Tapestry Object replicated at x nodes closest to object’s ID Routing table size: b(Log b N)+O(b) Find objects in O(Log b N) hops Issues: Does not exploit locality Infrastructure controls replication and placement Consistency / security

Comparing Key Metrics Properties Parameter Logical Path Length Neighbor-state Routing Overhead (RDP) Messages to insert Mutability Load-balancing Tapestry ChordCANPastry Log b (N) Log 2 (N) O(d*N 1/d ) O(d) Base b bLog b (N) O(1)  O(1) O(1) ? App-dep. App-depImmut. ??? Good Log b (N) Log 2 (N) NoneDimen dBase b bLog b (N)+O(b) O(Log 2 2 (N))O(d*N 1/d ) Good O(Log b 2 (N)) ?O(Log b (N)) Designed as P2P Indices