skipnet: a scaleable overlay network with practical locality properties presented by rachel rubin...
Post on 21-Dec-2015
223 views
TRANSCRIPT
![Page 1: SkipNet: A Scaleable Overlay Network With Practical Locality Properties Presented by Rachel Rubin CS294-4: Peer-to-Peer Systems By Nicholas Harvey, Michael](https://reader035.vdocument.in/reader035/viewer/2022062407/56649d605503460f94a41efa/html5/thumbnails/1.jpg)
SkipNet: A Scaleable Overlay Network With Practical Locality Properties
Presented by Rachel Rubin
CS294-4: Peer-to-Peer Systems
By Nicholas Harvey, Michael Jones, Stephan Saroiu,
Marvin Theimer and Alec Wolman
![Page 2: SkipNet: A Scaleable Overlay Network With Practical Locality Properties Presented by Rachel Rubin CS294-4: Peer-to-Peer Systems By Nicholas Harvey, Michael](https://reader035.vdocument.in/reader035/viewer/2022062407/56649d605503460f94a41efa/html5/thumbnails/2.jpg)
P2P Systems 2003 ©2003 Rachel Rubin/UC Berkeley SkipNet:2
Philosophy of SkipNet
• General purpose, scalable, fault tolerant overlay that allows for explicit control over content availability and placement
• Preserve useful content and path locality
• Enable load balancing over subset of nodes
• Provide resiliency against common internet failures
![Page 3: SkipNet: A Scaleable Overlay Network With Practical Locality Properties Presented by Rachel Rubin CS294-4: Peer-to-Peer Systems By Nicholas Harvey, Michael](https://reader035.vdocument.in/reader035/viewer/2022062407/56649d605503460f94a41efa/html5/thumbnails/3.jpg)
P2P Systems 2003 ©2003 Rachel Rubin/UC Berkeley SkipNet:3
Added Functionality
• SkipNet adds content locality– Explicitly place data on specific overlay nodes or
across nodes within an organization
• Adds path locality– Guarantee that message traffic is routed
between two overlay nodes within the same organization stays within it
– Important for availability and security
• This provides advantages for availability, performance, manageability and security
• Provides node and data management
![Page 4: SkipNet: A Scaleable Overlay Network With Practical Locality Properties Presented by Rachel Rubin CS294-4: Peer-to-Peer Systems By Nicholas Harvey, Michael](https://reader035.vdocument.in/reader035/viewer/2022062407/56649d605503460f94a41efa/html5/thumbnails/4.jpg)
P2P Systems 2003 ©2003 Rachel Rubin/UC Berkeley SkipNet:4
Why not a DHT?
• Controlling Data Location is not the goal of a DHT
• DHT’s provide load balancing at the price of where data is stored– May be stored far away– May be stored out of the domain
• Destroy Locality• Discard useful application-specific information
• But what are the benefits of a DHT?
![Page 5: SkipNet: A Scaleable Overlay Network With Practical Locality Properties Presented by Rachel Rubin CS294-4: Peer-to-Peer Systems By Nicholas Harvey, Michael](https://reader035.vdocument.in/reader035/viewer/2022062407/56649d605503460f94a41efa/html5/thumbnails/5.jpg)
P2P Systems 2003 ©2003 Rachel Rubin/UC Berkeley SkipNet:5
Structure of SkipNet: Perfect Skip Lists
•Dictionary-like structure stored in memory
•Sorted linked list with pointers
•Height of the i’th node is the exponent of the largest power-of-two that divides i
•The pointers have length of 2h
•Searches in O(log N)
Perfect Skip List
1 2 3 4 5 6 7 8 9 10
0 1 0 2 0 1 0 3 0 1
![Page 6: SkipNet: A Scaleable Overlay Network With Practical Locality Properties Presented by Rachel Rubin CS294-4: Peer-to-Peer Systems By Nicholas Harvey, Michael](https://reader035.vdocument.in/reader035/viewer/2022062407/56649d605503460f94a41efa/html5/thumbnails/6.jpg)
P2P Systems 2003 ©2003 Rachel Rubin/UC Berkeley SkipNet:6
Structure of SkipNet: Probabilistic Skip List
• Each node chooses a height with a probability of choosing height h is 1/2h
• Maintains O(log N)
Probabilistic Skip List
![Page 7: SkipNet: A Scaleable Overlay Network With Practical Locality Properties Presented by Rachel Rubin CS294-4: Peer-to-Peer Systems By Nicholas Harvey, Michael](https://reader035.vdocument.in/reader035/viewer/2022062407/56649d605503460f94a41efa/html5/thumbnails/7.jpg)
P2P Systems 2003 ©2003 Rachel Rubin/UC Berkeley SkipNet:7
Structure of SkipNet: Perfect Lexicographic Address Space
• Maintain a sorted list of all data records as well as “skip” pointers
• Doubly-linked ring• Each node stores2*log N
pointers
![Page 8: SkipNet: A Scaleable Overlay Network With Practical Locality Properties Presented by Rachel Rubin CS294-4: Peer-to-Peer Systems By Nicholas Harvey, Michael](https://reader035.vdocument.in/reader035/viewer/2022062407/56649d605503460f94a41efa/html5/thumbnails/8.jpg)
P2P Systems 2003 ©2003 Rachel Rubin/UC Berkeley SkipNet:8
Structure of SkipNet: Lexicographic Address Space (2)
• The pointers maintained at each level if a nodes routing table are “rings”
• Each level skips over 2h nodes
• Routing possible in O(log N)• Ring membership
determined by their unique random ID number – probabilistic optimization
• Duplicate pointer elimination from the rou\ting table improves performance by around 20%
![Page 9: SkipNet: A Scaleable Overlay Network With Practical Locality Properties Presented by Rachel Rubin CS294-4: Peer-to-Peer Systems By Nicholas Harvey, Michael](https://reader035.vdocument.in/reader035/viewer/2022062407/56649d605503460f94a41efa/html5/thumbnails/9.jpg)
P2P Systems 2003 ©2003 Rachel Rubin/UC Berkeley SkipNet:9
Numeric Space vs. Lexicographic Space
• Node names and content identifier strings are mapped into the Lexicographic space
– Distributed generalization of Skip Lists– Support content placement and path localities
• Hashes of node names and content identifiers are mapped into the numeric space
– Supports DHT functionality– Routing between overlay nodes– Allows the functionality of Chord
![Page 10: SkipNet: A Scaleable Overlay Network With Practical Locality Properties Presented by Rachel Rubin CS294-4: Peer-to-Peer Systems By Nicholas Harvey, Michael](https://reader035.vdocument.in/reader035/viewer/2022062407/56649d605503460f94a41efa/html5/thumbnails/10.jpg)
P2P Systems 2003 ©2003 Rachel Rubin/UC Berkeley SkipNet:10
Structure of SkipNet: Lexicographic Searching
•Follow the pointers that route closest to the intended destination
•Route along the highest-level pointer that doesn’t point past the destination
•Terminate when the message arrives at the node closest to the lexicographic name
![Page 11: SkipNet: A Scaleable Overlay Network With Practical Locality Properties Presented by Rachel Rubin CS294-4: Peer-to-Peer Systems By Nicholas Harvey, Michael](https://reader035.vdocument.in/reader035/viewer/2022062407/56649d605503460f94a41efa/html5/thumbnails/11.jpg)
P2P Systems 2003 ©2003 Rachel Rubin/UC Berkeley SkipNet:11
Structure of SkipNet: Node Join
•Find the top-level ring that corresponds to the random ID by searching through rings
•Join the top-level ring and the the next lower ring, etc. until the zero-level ring
– Nodes do not acknowledge the newcomer until this is complete
![Page 12: SkipNet: A Scaleable Overlay Network With Practical Locality Properties Presented by Rachel Rubin CS294-4: Peer-to-Peer Systems By Nicholas Harvey, Michael](https://reader035.vdocument.in/reader035/viewer/2022062407/56649d605503460f94a41efa/html5/thumbnails/12.jpg)
P2P Systems 2003 ©2003 Rachel Rubin/UC Berkeley SkipNet:12
Structure of SkipNet: Node Departure
• Can route correctly as long as the bottom level ring is maintained
• Repair upper-level rings lazily• Each node maintains a leaf-set that points to
additional nodes along the bottom ring
![Page 13: SkipNet: A Scaleable Overlay Network With Practical Locality Properties Presented by Rachel Rubin CS294-4: Peer-to-Peer Systems By Nicholas Harvey, Michael](https://reader035.vdocument.in/reader035/viewer/2022062407/56649d605503460f94a41efa/html5/thumbnails/13.jpg)
P2P Systems 2003 ©2003 Rachel Rubin/UC Berkeley SkipNet:13
Useful Properties: Locality
• Incorporating a peer’s address into a content name guarantees the content will be hosted there– Naming is not arbitrary
• Routing locality can be guaranteed if you use naming prefixes
![Page 14: SkipNet: A Scaleable Overlay Network With Practical Locality Properties Presented by Rachel Rubin CS294-4: Peer-to-Peer Systems By Nicholas Harvey, Michael](https://reader035.vdocument.in/reader035/viewer/2022062407/56649d605503460f94a41efa/html5/thumbnails/14.jpg)
P2P Systems 2003 ©2003 Rachel Rubin/UC Berkeley SkipNet:14
Useful Properties: Constrained Load
Balancing• Dividing a data object’s name into two parts– Specifies the set of nodes over which DHT leaf balancing
should be performed– Input to the DHT hash function
• Searches for the name prefix in lexicographic space• Switches to numeric space to search for the hash of the
name suffix• Limitations
– Can be performed over any naming subtree, not over an arbitrary subset of the nodes
– Domain of load-balancing is encoded in the name, so transparent remapping is impossible
![Page 15: SkipNet: A Scaleable Overlay Network With Practical Locality Properties Presented by Rachel Rubin CS294-4: Peer-to-Peer Systems By Nicholas Harvey, Michael](https://reader035.vdocument.in/reader035/viewer/2022062407/56649d605503460f94a41efa/html5/thumbnails/15.jpg)
P2P Systems 2003 ©2003 Rachel Rubin/UC Berkeley SkipNet:15
Useful Properties: Fault Tolerance
• Generally node failures in overlay systems are not independent– Nodes belonging to the same organization tend to fail
together
• Independent failures– Maintain level zero– Lazy stabilization
• Organization Boundaries– Since you preserve locality, this results in partitions instead
of scattered link failures– Partitions remerged via the leaf sets
![Page 16: SkipNet: A Scaleable Overlay Network With Practical Locality Properties Presented by Rachel Rubin CS294-4: Peer-to-Peer Systems By Nicholas Harvey, Michael](https://reader035.vdocument.in/reader035/viewer/2022062407/56649d605503460f94a41efa/html5/thumbnails/16.jpg)
P2P Systems 2003 ©2003 Rachel Rubin/UC Berkeley SkipNet:16
Useful Properties: Range Queries
• Inherits the functionality and flexibility in supporting efficient range queries from skip lists
• Keys are stored in lexicographic order– Documents sharing common prefixes are stored over
contiguous ring segments
• Range query answering is routing along a ring segment
![Page 17: SkipNet: A Scaleable Overlay Network With Practical Locality Properties Presented by Rachel Rubin CS294-4: Peer-to-Peer Systems By Nicholas Harvey, Michael](https://reader035.vdocument.in/reader035/viewer/2022062407/56649d605503460f94a41efa/html5/thumbnails/17.jpg)
P2P Systems 2003 ©2003 Rachel Rubin/UC Berkeley SkipNet:17
Results: Methodology
• Measured– Relative Delay penalty– Physical Network Hops– Number of failed lookups
• Uniform, clustered and Zipf-clustered
![Page 18: SkipNet: A Scaleable Overlay Network With Practical Locality Properties Presented by Rachel Rubin CS294-4: Peer-to-Peer Systems By Nicholas Harvey, Michael](https://reader035.vdocument.in/reader035/viewer/2022062407/56649d605503460f94a41efa/html5/thumbnails/18.jpg)
P2P Systems 2003 ©2003 Rachel Rubin/UC Berkeley SkipNet:18
Results: Basic Routing Costs
Chord Basic SkipNet
Full SkipNet
Pastry
16.3 41.7 73.5 63.2
Unique Routing EntriesRelative Delay Penalty vs. Network Size
![Page 19: SkipNet: A Scaleable Overlay Network With Practical Locality Properties Presented by Rachel Rubin CS294-4: Peer-to-Peer Systems By Nicholas Harvey, Michael](https://reader035.vdocument.in/reader035/viewer/2022062407/56649d605503460f94a41efa/html5/thumbnails/19.jpg)
P2P Systems 2003 ©2003 Rachel Rubin/UC Berkeley SkipNet:19
Results: Locality of Placement
Absolute lookup request latency vs. Access Locality
![Page 20: SkipNet: A Scaleable Overlay Network With Practical Locality Properties Presented by Rachel Rubin CS294-4: Peer-to-Peer Systems By Nicholas Harvey, Michael](https://reader035.vdocument.in/reader035/viewer/2022062407/56649d605503460f94a41efa/html5/thumbnails/20.jpg)
P2P Systems 2003 ©2003 Rachel Rubin/UC Berkeley SkipNet:20
Results: Fault Tolerance
Failed Lookup Requests vs. Data Access Locality
![Page 21: SkipNet: A Scaleable Overlay Network With Practical Locality Properties Presented by Rachel Rubin CS294-4: Peer-to-Peer Systems By Nicholas Harvey, Michael](https://reader035.vdocument.in/reader035/viewer/2022062407/56649d605503460f94a41efa/html5/thumbnails/21.jpg)
P2P Systems 2003 ©2003 Rachel Rubin/UC Berkeley SkipNet:21
Results: CLB
RDP of CLB data vs. Network Size
![Page 22: SkipNet: A Scaleable Overlay Network With Practical Locality Properties Presented by Rachel Rubin CS294-4: Peer-to-Peer Systems By Nicholas Harvey, Michael](https://reader035.vdocument.in/reader035/viewer/2022062407/56649d605503460f94a41efa/html5/thumbnails/22.jpg)
P2P Systems 2003 ©2003 Rachel Rubin/UC Berkeley SkipNet:22
Additional Optimizations: Efficient Routing
• Proximity Table– Entry points to a node chosen from the ring segment
whose endpoints are defined by two consecutive basic routing table entries
• Search in this table except when violates the CLB search constraints
![Page 23: SkipNet: A Scaleable Overlay Network With Practical Locality Properties Presented by Rachel Rubin CS294-4: Peer-to-Peer Systems By Nicholas Harvey, Michael](https://reader035.vdocument.in/reader035/viewer/2022062407/56649d605503460f94a41efa/html5/thumbnails/23.jpg)
P2P Systems 2003 ©2003 Rachel Rubin/UC Berkeley SkipNet:23
Additional Optimizations: Virtual Nodes
• Many virtual nodes on a physical node
• Routing tables can be shared
![Page 24: SkipNet: A Scaleable Overlay Network With Practical Locality Properties Presented by Rachel Rubin CS294-4: Peer-to-Peer Systems By Nicholas Harvey, Michael](https://reader035.vdocument.in/reader035/viewer/2022062407/56649d605503460f94a41efa/html5/thumbnails/24.jpg)
P2P Systems 2003 ©2003 Rachel Rubin/UC Berkeley SkipNet:24
Design Alternatives
• Virtualize the overlay nodes per data object
• Two-part naming scheme– Virtual node name– Node-relative name
• Path locality added to the DHT– Not guaranteed
![Page 25: SkipNet: A Scaleable Overlay Network With Practical Locality Properties Presented by Rachel Rubin CS294-4: Peer-to-Peer Systems By Nicholas Harvey, Michael](https://reader035.vdocument.in/reader035/viewer/2022062407/56649d605503460f94a41efa/html5/thumbnails/25.jpg)
P2P Systems 2003 ©2003 Rachel Rubin/UC Berkeley SkipNet:25
Discussion Questions
• What does locality buy?
• What are the disadvantages to SkipNet?
• How does this differ from Chord and Pastry?