Download presentation
Presentation is loading. Please wait.
1
Pastry Partially borrowed for Gabi Kliot
2
Pastry Scalable, decentralized object location and routing for large-scale peer-to-peer systems Antony Rowstron (Microsoft Research) Peter Druschel (Rice University)
3
Distributed Hash Table Map(Object-Id, Node-Id) Pastry: ids are mapped to the node with closest node- id Goal: Reduce space complexity while marinating a reasonable time complexity Pastry: O(Log(N)) space, O(Log(N)) lookup Chord – was taught in the lecture… Pastry Vs. Chord Different technique – tables, algorithms, etc. A proximity heuristic
4
Address Space 128 bit circular id space Assumes a random uniform distribution on node-ids Assumes a random uniform distribution on object-ids In short, Assumes diversity among correlated ids
5
Pastry Node State Base: 2 b = 4 Log 2 b 2 128 rows 2 b columns The address space is not full Still sharing prefix Chosen by proximity L closest ids L proximity closest ids (not used for routing) R[r,c] = node with largest matching prefix sized r followed by the digit c
6
Lookup Procedure If (destination is within range of our leaf set) forward to numerically closest member else let l = length of shared prefix let d = value of l-th digit in D’s address if (R[l,d] exists) forward to R[l,d] else // rare case forward to a (leaf-set node) such that (a) shares at least as long a prefix (b) is numerically closer than this node
7
Lookup Example d46a1c Look for (d46a1c) d462ba d4213f d13da3 65a1fc d467c4 d471f1
8
Proximity Perspective d46a1c Route(d46a1c) d462ba d4213f d13da3 65a1fc d467c4 d471f1 d467c4 65a1f c d13da3 d4213f d462ba Proximity space The proximity distance traveled by message in each routing step is exponentially increasing (entry in row l is chosen from a set of nodes of size N/2 bl ) The distance traveled by message from its source increases monotonically at each step (message takes larger and larger strides) NodeId space
9
Self Organization – Join Seek (flood) for a nearby node with id A Obtain neighboring-set from A Ask A to lookup our id X Lookup arrives at Z with id closest to X Obtain leaf-set from Z, why? Obtain the i th row from the i th node in the lookup traversal to Z, why? Maintains reasonable proximity still, improve by exchanging information with the neighboring-set
10
Self Organization – Depart / fail Leaf-Set Permanently monitored Ask Routing Table Lazy – When a node doesn’t respond Complete the table slot from a node in the same row, if not found from higher rows Neighboring-Set Permanently monitored and maintained
11
Performance Space Complexity O(log(N)) Time Complexity Lookup – O(log(N)) Expected Join – O(log(N)) Expected Short routes in terms of proximity (not necessarily shortest) Eventual safe delivery
12
More Details http://research.microsoft.com/~antr/PAST/pastry.pdf
Similar presentations
© 2024 SlidePlayer.com. Inc.
All rights reserved.