1 / 35

Self-Stabilization: An approach for Fault-Tolerance in Distributed Systems

Self-Stabilization: An approach for Fault-Tolerance in Distributed Systems. Stéphane Devismes. Fault-Tolerance. Robustness: Correct behaviour even when faults hit the system Pessimistic approach For permanent failures (e.g. process crash) Self-Stabilization [Dijkstra, 1974]:

Download Presentation

Self-Stabilization: An approach for Fault-Tolerance in Distributed Systems

An Image/Link below is provided (as is) to download presentation Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author. Content is provided to you AS IS for your information and personal use only. Download presentation by click this link. While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server. During download, if you can't get a presentation, the file might be deleted by the publisher.

E N D

Presentation Transcript


  1. Self-Stabilization:An approach for Fault-Tolerance in Distributed Systems Stéphane Devismes

  2. Fault-Tolerance • Robustness: • Correct behaviour even when faults hit the system • Pessimistic approach • For permanent failures (e.g. process crash) • Self-Stabilization [Dijkstra, 1974]: • Forward recovery approach • Optimistic approach • For transient faults (e.g. memory corruption) Sémimaire VERIMAG

  3. Roadmap • From an example to the definition • A practical example • Advantages • Drawbacks • Circumvent the drawbacks • Conclusion Sémimaire VERIMAG

  4. Self-Stabilization [Dijkstra, 1974] • Example: Dijkstra’s Token Ring 0 1 2 1 0 1 0 1 0 0 1 Sémimaire VERIMAG

  5. Starting from an arbitrary state 5 4 0 2 5 1 0 4 0 5 5 Sémimaire VERIMAG

  6. Does it converges in any case? (1/3) • There always exists at least one token i i i i i Sémimaire VERIMAG

  7. Does it converges in any case? (2/3) • At each step, at least one token moves forward or disappears • Eventually, the root generates a value that did not exist in the initial configuration (because K > N) Sémimaire VERIMAG

  8. Does it converges in any case? (3/3) j d j j a c j j b Sémimaire VERIMAG

  9. Definition: Closure + Convergence Closure Legitimate States Illegitimate States Convergence States of the System Sémimaire VERIMAG

  10. Is the Dijkstra’s token ring realistic? • Computational Model • Topology • Knowledge about the network Sémimaire VERIMAG

  11. BFS Spanning Tree [Huang & Chen, 1992] d1 =0 3 d1 =0 3 1 0 1 2 1 2 1 1 d2=2 2 1 d1=1 4 d4 =0 2 1 2 d2=1 d1=1 1 d2=2 d1=1 2 4 2 1 2 1 4 d4=3 3 3 Variable D: D=0 for the root D in [1…k] for the other (k>=Diam) d3=2 d3=2 d3=2 d1=2 1 3 1 d1=1 Every process periodically sends D to its neighbours Every non-root process stores in di the last D-value it receives from i Each time a di variable is updated, D is set to the minimal value of the di -variables + 1 5 3 6 2 2 d2=2 d2=3 2 Sémimaire VERIMAG

  12. Advantage of self-stabilization (1/3) • Tolerance to any transient fault • Transient fault: • Duration: finite • Periodicity: rare • Effect: alter the contain of some component(s) of the network (processes and/or links) • E.g., memory/message corruption, crash-recover, lose of messages… Sémimaire VERIMAG

  13. Advantage of self-stabilization (1/3) Sémimaire VERIMAG

  14. Advantage of self-stabilization (2/3) • No initialization • Large-scale network • Self-organization in sensor network Sémimaire VERIMAG

  15. Advantage of self-stabilization (3/3) • Dynamicity 0 1 2 5 3 4 1 1 2 3 5 2 3 Sémimaire VERIMAG

  16. Drawbacks of self-stabilization (1/3) Stabilization Time • Eventually safe Sémimaire VERIMAG

  17. Drawbacks of self-stabilization (2/3) • No detection of stabilization • Permanent local checks: Sémimaire VERIMAG

  18. Drawbacks of self-stabilization (3/3) • Do not tolerant anykind of faults, e.g.: • Crash • Byzantine faults Sémimaire VERIMAG

  19. Reduce the local checkings • Example: Maximal Independent Set Sémimaire VERIMAG

  20. MIS Algorithm dominated Dominator Sémimaire VERIMAG

  21. MIS Algorithm 3 2 9 8 5 4 1 10 7 6 Sémimaire VERIMAG

  22. MIS Algorithm • Case: 3 9 6 4 Sémimaire VERIMAG

  23. MIS Algorithm • Case: 3 9 6 4 Sémimaire VERIMAG

  24. MIS Algorithm 3 3 2 2 9 9 8 5 5 5 4 4 4 1 1 10 10 10 7 7 7 6 6 Sémimaire VERIMAG

  25. Tolerate more type of faults • E.g. Robust Stabilization • Leader Election Sémimaire VERIMAG

  26. 1 2 3 4 Model • Fully-connected network • Message-passing • Link: • Not necessarily FIFO • Reliable and synchronous • Process: • Synchronous or crashed • Identity Sémimaire VERIMAG

  27. Leader Election (1/4) • A process p periodically sends ALIVE,p to every other if Leader = p ALIVE,1 1 4 LEADER=1 ALIVE,1 ALIVE,1 ALIVE,2 ALIVE,2 3 2 LEADER=2 LEADER=2 ALIVE,2 Sémimaire VERIMAG

  28. 1 4 3 2 Leader Election (2/4) • When a process p such that LEADER = p receives ALIVE from q, then LEADER := qif q < p ALIVE,1 LEADER=1 4 ALIVE,1 ALIVE,1 ALIVE,2 ALIVE,2 LEADER=2 LEADER=2 LEADER=1 ALIVE,2 Sémimaire VERIMAG

  29. 1 4 3 2 Leader Election (3/4) • Any process q such that LEADER ≠ q always chooses as leader the process from which it receives ALIVEthe most recently ALIVE,1 LEADER=1 4 ALIVE,1 ALIVE,1 LEADER=2 LEADER=1 LEADER=1 Sémimaire VERIMAG

  30. 1 4 3 2 Leader Election (4/4) • On Time out, a process p sets LEADER to p ALIVE,1 LEADER=3 LEADER=1 4 ALIVE,1 ALIVE,1 ALIVE,2 ALIVE,2 LEADER=2 LEADER=4 LEADER=2 ALIVE,2 Sémimaire VERIMAG

  31. Conclusion (1/3) • Start of the art: • Many stabilizing solutions for wired networks: • [Katz & Perry] • [Delaet, Ducourthial, Tixeuil] • Recently, focus on: • Large-scale networks • Peer-to-peer systems • Sensor networks Sémimaire VERIMAG

  32. Conclusion (2/3) • Derived properties • Strengthened Forms: • Tolerating more types of faults, e.g., byzantine and crash failures • Enhance the convergence property: Fault-containing Self-Stabilization Sémimaire VERIMAG

  33. Conclusion (3/3) • Derived properties • Weakened Forms: • Probabilistic self-stabilization • Weak-stabilization • K-stabilization • Aim: Circumvent impossibility results, e.g., Colouring, Leader Election, Token Circulation in anonymous network Sémimaire VERIMAG

  34. Sémimaire VERIMAG

  35. Stabilization Time of the Dijkstra’s Token Ring? 0 1 2 0 1 3 1 2 Sémimaire VERIMAG

More Related