The Impact of DHT Routing Geometry on Resilience and Proximity
description
Transcript of The Impact of DHT Routing Geometry on Resilience and Proximity
![Page 1: The Impact of DHT Routing Geometry on Resilience and Proximity](https://reader036.fdocuments.in/reader036/viewer/2022062309/56814e00550346895dbb6b15/html5/thumbnails/1.jpg)
The Impact of DHT Routing Geometry on Resilience and Proximity
Krishna Gummadi, Ramakrishna Gummadi,
Sylvia Ratnasamy,
Steve Gribble, Scott Shenker, Ion Stoica
Proceedings of the ACM SIGCOMM 2003
![Page 2: The Impact of DHT Routing Geometry on Resilience and Proximity](https://reader036.fdocuments.in/reader036/viewer/2022062309/56814e00550346895dbb6b15/html5/thumbnails/2.jpg)
Motivation
• New DHTs constantly proposed
– CAN, Chord, Pastry, Tapestry, Plaxton, Viceroy, Kademlia, Skipnet, Symphony, Koorde, Apocrypha, Land, ORDI …
• Each is extensively analyzed but in isolation
• Each DHT has many algorithmic details making it difficult to compare
Goals:a) Separate fundamental design choices from algorithmic details
b) Understand their affect reliability and efficiency
![Page 3: The Impact of DHT Routing Geometry on Resilience and Proximity](https://reader036.fdocuments.in/reader036/viewer/2022062309/56814e00550346895dbb6b15/html5/thumbnails/3.jpg)
Our approach: Component-based analysis
• Break DHT design into independent components
• Analyze impact of each component choice separately– compare with black-box analysis:
• benchmark each DHT implementation• rankings of existing DHTs vs. hints on better designs
• Two types of components– Routing-level : neighbor & route selection– System-level : caching, replication, querying policy etc.
![Page 4: The Impact of DHT Routing Geometry on Resilience and Proximity](https://reader036.fdocuments.in/reader036/viewer/2022062309/56814e00550346895dbb6b15/html5/thumbnails/4.jpg)
Outline
• Routing Geometry : A fundamental design choice
• Compare DHT Routing Geometries
• Geometry’s impact on Resilience
• Geometry’s impact on Proximity
• Discussion
![Page 5: The Impact of DHT Routing Geometry on Resilience and Proximity](https://reader036.fdocuments.in/reader036/viewer/2022062309/56814e00550346895dbb6b15/html5/thumbnails/5.jpg)
Three aspects of a DHT design
1) Geometry: a graph structure that inspires a DHT design, with its exciting properties
– Tree, Hypercube, Ring, Butterfly, Debruijn
2) Distance function: captures a geometric structure
– d(id1, id2) for any two node identifiers
3) Algorithm: rules for selecting neighbors and routes using the distance function
![Page 6: The Impact of DHT Routing Geometry on Resilience and Proximity](https://reader036.fdocuments.in/reader036/viewer/2022062309/56814e00550346895dbb6b15/html5/thumbnails/6.jpg)
Chord DHT has Ring Geometry
![Page 7: The Impact of DHT Routing Geometry on Resilience and Proximity](https://reader036.fdocuments.in/reader036/viewer/2022062309/56814e00550346895dbb6b15/html5/thumbnails/7.jpg)
Chord Distance function captures Ring
• Nodes are points on a clock-wise Ring
• d(id1, id2) = length of clock-wise arc between ids = (id2 – id1) mod N
d(100, 111) = 3
000
101
100
011
010
001
110
111
![Page 8: The Impact of DHT Routing Geometry on Resilience and Proximity](https://reader036.fdocuments.in/reader036/viewer/2022062309/56814e00550346895dbb6b15/html5/thumbnails/8.jpg)
Chord Neighbor and Route selection Algorithms
• Neighbor selection: ith neighbor at 2i distance
• Route selection: pick neighbor closest to destination
000
101
100
011
010
001
110
111 d(000, 001) = 1
d(000, 010) = 2
d(000, 001) = 4
110
![Page 9: The Impact of DHT Routing Geometry on Resilience and Proximity](https://reader036.fdocuments.in/reader036/viewer/2022062309/56814e00550346895dbb6b15/html5/thumbnails/9.jpg)
One Geometry, Many Algorithms
• Algorithm : exact rules for selecting neighbors, routes
– Chord, CAN, PRR, Tapestry, Pastry etc.
– inspired by geometric structures like Ring, Hyper-cube, Tree
• Geometry : an algorithm’s underlying structure
– Distance function is the formal representation of Geometry
– Chord, Symphony => Ring
– many algorithms can have same geometry
Why is Geometry important?
![Page 10: The Impact of DHT Routing Geometry on Resilience and Proximity](https://reader036.fdocuments.in/reader036/viewer/2022062309/56814e00550346895dbb6b15/html5/thumbnails/10.jpg)
Insight:Geometry => Flexibility => Performance
• Geometry captures flexibility in selecting algorithms– Metrics like state (# of neighbors) and efficiency (avg.
number of hops) do not capture this adequately.
• Flexibility is important for routing performance
– Flexibility in selecting routes leads to shorter, reliable paths
– Flexibility in selecting neighbors leads to shorter paths
![Page 11: The Impact of DHT Routing Geometry on Resilience and Proximity](https://reader036.fdocuments.in/reader036/viewer/2022062309/56814e00550346895dbb6b15/html5/thumbnails/11.jpg)
Route selection flexibility allowed by Ring Geometry
• Chord algorithm picks neighbor closest to destination
• A different algorithm picks the best of alternate paths
000
101
100
011
010
001
110
111 110
![Page 12: The Impact of DHT Routing Geometry on Resilience and Proximity](https://reader036.fdocuments.in/reader036/viewer/2022062309/56814e00550346895dbb6b15/html5/thumbnails/12.jpg)
Neighbor selection flexibility allowed by Ring Geometry
• Chord algorithm picks ith neighbor at 2i distance
• A different algorithm picks ith neighbor from [2i , 2i+1)
000
101
100
011
010
001
110
111
![Page 13: The Impact of DHT Routing Geometry on Resilience and Proximity](https://reader036.fdocuments.in/reader036/viewer/2022062309/56814e00550346895dbb6b15/html5/thumbnails/13.jpg)
Outline
• Routing GeometryRouting Geometry
• Comparing flexibility of DHT Geometries
• Geometry’s impact on Resilience
• Geometry’s impact on Proximity
• Discussion
![Page 14: The Impact of DHT Routing Geometry on Resilience and Proximity](https://reader036.fdocuments.in/reader036/viewer/2022062309/56814e00550346895dbb6b15/html5/thumbnails/14.jpg)
Geometries we compare
Geometry Algorithm
Ring Chord, Symphony
Hypercube CAN
Tree Plaxton
Hybrid =
Tree + RingTapestry, Pastry
XOR
d(id1, id2) = id1 XOR id2Kademlia
![Page 15: The Impact of DHT Routing Geometry on Resilience and Proximity](https://reader036.fdocuments.in/reader036/viewer/2022062309/56814e00550346895dbb6b15/html5/thumbnails/15.jpg)
Metrics for flexibilities
• FNS: Flexibility in Neighbor Selection= number of node choices for a neighbor
• FRS: Flexibility in Route Selection= avg. number of next-hop choices for all destinations
• Constraints for neighbors and routes
– select neighbors to have paths of O(logN)
– select routes so that each hop is closer to destination
![Page 16: The Impact of DHT Routing Geometry on Resilience and Proximity](https://reader036.fdocuments.in/reader036/viewer/2022062309/56814e00550346895dbb6b15/html5/thumbnails/16.jpg)
Flexibility in neighbor selection (FNS) for Tree
001000 011010 101100 111110
h = 2
h = 1
h = 3
• logN neighbors in sub-trees of varying heights
• FNS = 2i-1 for ith neighbor of a node
![Page 17: The Impact of DHT Routing Geometry on Resilience and Proximity](https://reader036.fdocuments.in/reader036/viewer/2022062309/56814e00550346895dbb6b15/html5/thumbnails/17.jpg)
Flexibility in route selection (FRS) for Hypercube
• Routing to next hop fixes one bit
• FRS =Avg. (#bits destination differs in)=logN/2
000
100
001
010
110 111
011
101
011d(000, 011) = 2 d(001, 011) = 1
d(010, 011) = 1
d(010, 011) = 3
![Page 18: The Impact of DHT Routing Geometry on Resilience and Proximity](https://reader036.fdocuments.in/reader036/viewer/2022062309/56814e00550346895dbb6b15/html5/thumbnails/18.jpg)
Summary of our flexibility analysis
Flexibility Ordering of Geometries
Neighbors
(FNS)
Hypercube << Tree, XOR, Ring, Hybrid
(1) (2i-1)
Routes
(FRS)
Tree << XOR, Hybrid < Hypercube < Ring
(1) (logN/2) (logN/2) (logN)
How relevant is flexibility for DHT routing performance?
![Page 19: The Impact of DHT Routing Geometry on Resilience and Proximity](https://reader036.fdocuments.in/reader036/viewer/2022062309/56814e00550346895dbb6b15/html5/thumbnails/19.jpg)
Outline
• Routing GeometryRouting Geometry
• Comparing flexibility of DHT GeometriesComparing flexibility of DHT Geometries
• Geometry’s impact on Resilience
• Geometry’s impact on Proximity
• Discussion
![Page 20: The Impact of DHT Routing Geometry on Resilience and Proximity](https://reader036.fdocuments.in/reader036/viewer/2022062309/56814e00550346895dbb6b15/html5/thumbnails/20.jpg)
Analysis of Static Resilience
Two aspects of robust routing• Dynamic Recovery : how quickly routing state is recovered
after failures
• Static Resilience : how well the network routes before recovery finishes– captures how quickly recovery algorithms need to work
– depends on FRS
Evaluation:• Fail a fraction of nodes, without recovering any state
• Metric: % Paths Failed
![Page 21: The Impact of DHT Routing Geometry on Resilience and Proximity](https://reader036.fdocuments.in/reader036/viewer/2022062309/56814e00550346895dbb6b15/html5/thumbnails/21.jpg)
Does flexibility affect Static Resilience?
Tree << XOR ≈ Hybrid < Hypercube < Ring
Flexibility in Route Selection matters for Static Resilience
0
20
40
60
80
100
0 10 20 30 40 50 60 70 80 90% Failed Nodes
% Failed Paths Ring
Hybrid
XORTree
Hypercube
![Page 22: The Impact of DHT Routing Geometry on Resilience and Proximity](https://reader036.fdocuments.in/reader036/viewer/2022062309/56814e00550346895dbb6b15/html5/thumbnails/22.jpg)
Do sequential neighbors help?
QuickTime™ and aTIFF (LZW) decompressor
are needed to see this picture.
![Page 23: The Impact of DHT Routing Geometry on Resilience and Proximity](https://reader036.fdocuments.in/reader036/viewer/2022062309/56814e00550346895dbb6b15/html5/thumbnails/23.jpg)
Outline
• Routing GeometryRouting Geometry
• Comparing flexibility of DHT GeometriesComparing flexibility of DHT Geometries
• Geometry’s impact on ResilienceGeometry’s impact on Resilience
• Geometry’s impact on Proximity
– Overlay Path Latency
– Local Convergence (see paper)Local Convergence (see paper)
• Discussion
![Page 24: The Impact of DHT Routing Geometry on Resilience and Proximity](https://reader036.fdocuments.in/reader036/viewer/2022062309/56814e00550346895dbb6b15/html5/thumbnails/24.jpg)
Analysis of Overlay Path Latency
• Goal: Minimize end-to-end overlay path latency
– not just the number of hops
• Both FNS and FRS can reduce latency
– Tree has FNS, Hypercube has FRS, Ring & XOR have both
Evaluation:
• Using Internet latency distributions (see paper)
![Page 25: The Impact of DHT Routing Geometry on Resilience and Proximity](https://reader036.fdocuments.in/reader036/viewer/2022062309/56814e00550346895dbb6b15/html5/thumbnails/25.jpg)
0
20
40
60
80
100
0 400 800 1200 1600 2000Latency (msec)
CDF
FNS Ring
Plain Ring
FRS Ring
FNS + FRS Ring
Which is more effective, FNS or FRS?
Plain << FRS << FNS ≈ FNS+FRS
Neighbor Selection is much better than Route Selection
![Page 26: The Impact of DHT Routing Geometry on Resilience and Proximity](https://reader036.fdocuments.in/reader036/viewer/2022062309/56814e00550346895dbb6b15/html5/thumbnails/26.jpg)
0
20
40
60
80
100
0 400 800 1200 1600 2000Latency (msec)
CDF
FNS Ring
FRS RingFNS XOR
FRS Hypercube
Does Geometry affect performance of FNS or FRS?
No, performance of FNS/FRS is independent of Geometry
A Geometry’s support for neighbor selection is crucial
![Page 27: The Impact of DHT Routing Geometry on Resilience and Proximity](https://reader036.fdocuments.in/reader036/viewer/2022062309/56814e00550346895dbb6b15/html5/thumbnails/27.jpg)
Local Convergence
• Property that paths to a destination from two different (but in proximity) sources converge at a nearby node.
• Useful for multicast, caching/server selection.• Evaulated by measuring the number of “exit
points”.• Turns outs local convergence is highly
dependent on FNS but not on FRS.• It is also independent of geometry.
![Page 28: The Impact of DHT Routing Geometry on Resilience and Proximity](https://reader036.fdocuments.in/reader036/viewer/2022062309/56814e00550346895dbb6b15/html5/thumbnails/28.jpg)
Summary of results
• FRS matters for Static Resilience – Ring has the best resilience
• Both FNS and FRS reduce Overlay Path Latency
• But, FNS is far more important than FRS– Ring, Hybrid, Tree and XOR have high FNS
![Page 29: The Impact of DHT Routing Geometry on Resilience and Proximity](https://reader036.fdocuments.in/reader036/viewer/2022062309/56814e00550346895dbb6b15/html5/thumbnails/29.jpg)
Limitations (future work)
• Not considered all Geometries
• Not considered other factors that might matter
– algorithmic details, symmetry in routing table entries
• Not considered all performance metrics
![Page 30: The Impact of DHT Routing Geometry on Resilience and Proximity](https://reader036.fdocuments.in/reader036/viewer/2022062309/56814e00550346895dbb6b15/html5/thumbnails/30.jpg)
Conclusions
• Routing Geometry is a fundamental design choice– Geometry determines flexibility
– Flexibility improves resilience and proximity
• Ring has the greatest flexibility– great routing performance