1. Markus Benter, Mohammad Divband, Sebastian Kniesburges,
Andreas Koutsopoulos, Kalman Graffi
University of Paderborn 1
Ca-Re-Chord
A Churn Resistant Self-stabilizing Chord Overlay Network
Networked Systems 2013
2. University of Paderborn 2
Ca-Re-Chord
A Churn Resistant Self-stabilizing Chord Overlay Network
1. Chord
2. Re-Chord
3. Ca-Re-Chord
4. Evaluation
5. Conclusion
Overview
3. University of Paderborn 3
Ca-Re-Chord
A Churn Resistant Self-stabilizing Chord Overlay Network
Chord
[Stoica et al., 2001]
4. University of Paderborn 4
Ca-Re-Chord
A Churn Resistant Self-stabilizing Chord Overlay Network
• DHT (Distributed Hash Table)
• Node degree: O(log(n))
• Routing performance: O(log(n))
Chord
5. University of Paderborn 5
Ca-Re-Chord
A Churn Resistant Self-stabilizing Chord Overlay Network
• Chord network partitioned (due to churn)
• E.g. two Chord rings
• Successors and predecessors locally consistent
• Cannot be detected
Chord: Inconsistency Issue
6. University of Paderborn 6
Ca-Re-Chord
A Churn Resistant Self-stabilizing Chord Overlay Network
Re-Chord
[Kniesburges et al., 2011]
7. University of Paderborn 7
Ca-Re-Chord
A Churn Resistant Self-stabilizing Chord Overlay Network
Re-Chord: Self-Stabilizing Chord
8. University of Paderborn 8
Ca-Re-Chord
A Churn Resistant Self-stabilizing Chord Overlay Network
Re-Chord: State
9. University of Paderborn 9
Ca-Re-Chord
A Churn Resistant Self-stabilizing Chord Overlay Network
• Edges:
• Each node has successor and predeccessor
• Each real node has real right neighbor and real left neighbor
Re-Chord: State
10. University of Paderborn 10
Ca-Re-Chord
A Churn Resistant Self-stabilizing Chord Overlay Network
Re-Chord: State
11. University of Paderborn 11
Ca-Re-Chord
A Churn Resistant Self-stabilizing Chord Overlay Network
In stable state, Chord is subgraph of Re-Chord
Re-Chord: State
12. University of Paderborn 12
Ca-Re-Chord
A Churn Resistant Self-stabilizing Chord Overlay Network
Six stabilization rules are necessary:
1. Create and Delete Virtual Nodes
2. Overlapping Neighborhood
3. Closest Real Neighbor
4. Linearization
5. Ring Edge
6. Connection Edges
Provable: Network is weakly connected then eventually be in
stable state after finite number of steps
Re-Chord: Stabilization Rules
13. University of Paderborn 13
Ca-Re-Chord
A Churn Resistant Self-stabilizing Chord Overlay Network
1. Create and Delete Virtual Nodes
14. University of Paderborn 14
Ca-Re-Chord
A Churn Resistant Self-stabilizing Chord Overlay Network
3. Closest Real Neighbor
15. University of Paderborn 15
Ca-Re-Chord
A Churn Resistant Self-stabilizing Chord Overlay Network
• Theorem: Can be found in O(log(n)) steps
• Each node has O(log(n)) virtual nodes
• Number of virtual nodes between two real nodes O(log(n))
• Worst-Case is O(„number of contiguous virtual nodes“)
• Analysis in paper
3. Closest Real Neighbor
16. University of Paderborn 16
Ca-Re-Chord
A Churn Resistant Self-stabilizing Chord Overlay Network
• Rule: Propagate all edges (but the two closest neighbors)
• Provable: Graph becomes a line after O(n) steps
4. Linearization
17. University of Paderborn 17
Ca-Re-Chord
A Churn Resistant Self-stabilizing Chord Overlay Network
5. Ring Edge
18. University of Paderborn 18
Ca-Re-Chord
A Churn Resistant Self-stabilizing Chord Overlay Network
• Weakly connected graph: stable after O(n log(n)) rounds
• Node joins: stable after O(log2(n)) rounds
• Node leaves: stable after O(log(n)) rounds
Re-Chord: Analysis
Too slow in contiguous churn szenarios
Ca-Re-Chord
Churn Aware Re-Chord
19. University of Paderborn 19
Ca-Re-Chord
A Churn Resistant Self-stabilizing Chord Overlay Network
Ca-Re-Chord: Idea
20. University of Paderborn 20
Ca-Re-Chord
A Churn Resistant Self-stabilizing Chord Overlay Network
Ca-Re-Chord: Build up
21. University of Paderborn 21
Ca-Re-Chord
A Churn Resistant Self-stabilizing Chord Overlay Network
• Apply quick-fixing in two situations
• Ping fails
• Message transmission fails (re-transmit)
• Quickfix can fix...
• The embedded Chord ring (applied on real nodes)
• The finger representations (applied on virtual nodes)
• Quickfixing can improve two things
• Speed-up self-stabilization
• Improve message delivery directly (message re-transmission)
• How to choose k? Should depend on...
• Node failure rate
• Desired robustness against churn (increases with k)
• Acceptable message overhead (increases with k)
Ca-Re-Chord: Properties
22. University of Paderborn 22
Ca-Re-Chord
A Churn Resistant Self-stabilizing Chord Overlay Network
Ca-Re-Chord: Churn resistance
23. University of Paderborn 23
Ca-Re-Chord
A Churn Resistant Self-stabilizing Chord Overlay Network
Evaluation
24. University of Paderborn 24
Ca-Re-Chord
A Churn Resistant Self-stabilizing Chord Overlay Network
• PeerfactSim.KOM
• Realistic P2P network simulator
• Implementation of ...
• Chord
• Re-Chord
• Ca-Re-Chord
• Settings
• Initial Network Size: 1000 Nodes
• Successors k=3
• Drop packet after 50 hops
• Exponential churn
• Mean session length = 60 min
• Adjustable churn factor (?)
• Let nodes join (60 min), churn after stabilization (1400 min)
Ca-Re-Chord: Evaluation
25. University of Paderborn 25
Ca-Re-Chord
A Churn Resistant Self-stabilizing Chord Overlay Network
Ca-Re-Chord: Evaluation (churn factor ???)
axis
26. University of Paderborn 26
Ca-Re-Chord
A Churn Resistant Self-stabilizing Chord Overlay Network
Ca-Re-Chord: Evaluation
27. University of Paderborn 27
Ca-Re-Chord
A Churn Resistant Self-stabilizing Chord Overlay Network
Ca-Re-Chord: Evaluation (Unklar)
28. University of Paderborn 28
Ca-Re-Chord
A Churn Resistant Self-stabilizing Chord Overlay Network
Conclusion
29. University of Paderborn 29
Ca-Re-Chord
A Churn Resistant Self-stabilizing Chord Overlay Network
• Re-Chord
• Self-stabilizing: Recover from every weakly connected graph
• Not robust against churn
• Stabilization too slow
• Ca-Re-Chord
• Extends Re-Chord
• Goal: churn resilience
• Apply k-successor quickfixing before stabilization
• Disadvantage: additional traffic (maintaining k links)
• Evaluation: Ca-Re-Chord as good as Chord
Conclusion
30. University of Paderborn 30
Ca-Re-Chord
A Churn Resistant Self-stabilizing Chord Overlay Network
Tank you for your attention