New Variants of Self-Stabilization Stéphane Devismes
Retraite REGAL 2017, Cap Hornu Roadmap Probabilistic Snap-Stabilization [Altisen & Devismes, TCS, 2017] Gradual Stabilization [Altisen et al, EUROPAR’2016] Retraite REGAL 2017, Cap Hornu
Retraite REGAL 2017, Cap Hornu Roadmap Probabilistic Snap-Stabilization [Altisen & Devismes, TCS, 2017] Gradual Stabilization [Altisen et al, EUROPAR’2016] Retraite REGAL 2017, Cap Hornu
Self-Stabilization [Dijkstra,74] Retraite REGAL 2017, Cap Hornu
Self-Stabilization [Dijkstra,74] Transient faults: Location: node or link Duration: finite Frequency: low e.g., memory corruptions, message losses, message corruptions Retraite REGAL 2017, Cap Hornu
Self-Stabilization [Dijkstra,74] Retraite REGAL 2017, Cap Hornu
Self-Stabilization [Dijkstra,74] Retraite REGAL 2017, Cap Hornu
Self-Stabilization [Dijkstra,74] Retraite REGAL 2017, Cap Hornu
Self-Stabilization [Dijkstra,74] Retraite REGAL 2017, Cap Hornu
Self-Stabilization [Dijkstra,74] Retraite REGAL 2017, Cap Hornu
Self-Stabilization [Dijkstra,74] Recover after any number of transient faults Retraite REGAL 2017, Cap Hornu
Retraite REGAL 2017, Cap Hornu Advantages Tolerate any finite number of transient faults Lightweight Low overhead No initialization Self-organization in wireless sensor network Tolerate (detectable) topological changes Self-stabilizing algorithms can be easily composed Retraite REGAL 2017, Cap Hornu
Drawbacks of Self-Stabilization Temporary Loss of Safety No local detection of stabilization Permanent local checks Endlessly repeat computations Impossibility Results Retraite REGAL 2017, Cap Hornu
Drawbacks of Self-Stabilization Temporary Loss of Safety No local detection of stabilization Permanent local checks Endlessly repeat computations Impossibility Results Retraite REGAL 2017, Cap Hornu
Temporary Loss of Safety Goal: Minimize the stabilization time Retraite REGAL 2017, Cap Hornu
Temporary Loss of Safety Stabilization time usually in Ω(D) rounds [Tixeuil & Genolini, 2002] Retraite REGAL 2017, Cap Hornu
Self-Stabilization: endless repetitions of finite task executions Transient faults Retraite REGAL 2017, Cap Hornu
Self-Stabilization: endless repetitions of finite task executions Transient faults Finite (generally unbounded) number of times Retraite REGAL 2017, Cap Hornu
(Deterministic) Snap-Stabilization [Bui et al, 1999] Resume a correct behavior since the first started task after the end of faults Transient faults First start Retraite REGAL 2017, Cap Hornu
(Deterministic) Snap-Stabilization [Bui et al, 1999] Strengthened form of self-stabilization Snap-Stabilization ⇒ Self-Stabilization Lot of solutions are available, but only in Identified, or Rooted networks What about anonymous networks ? Retraite REGAL 2017, Cap Hornu
(Deterministic) Snap-Stabilization [Bui et al, 1999] Most of classical problems even have no deterministic self-stabilizing solutions, e.g., Token passing Leader Election Several weakened forms of self-stabilization have been introduced to circumvent these impossibility results, e.g., Weak-stabilization [Gouda, 2001] K-stabilization [Beauquier et al, 1998] Probabilistic self-stabilization [Herman, 1990] Retraite REGAL 2017, Cap Hornu
(Deterministic) Snap-Stabilization [Bui et al, 1999] Most of classical problems even have no deterministic self-stabilizing solutions, e.g., Token passing Leader Election Several weakened forms of self-stabilization have been introduced to circumvent these impossibility results, e.g., Weak-stabilization [Gouda, 2001] K-stabilization [Beauquier et al, 1998] Probabilistic self-stabilization [Herman, 1990] Retraite REGAL 2017, Cap Hornu
Deterministic vs. Probabilistic Self-Stabilization Deterministic Self-stabilization Deterministic convergence: Starting from any configuration, the system converges to a legitimate configuration within finite time Probabilistic Self-stabilization Probabilistic convergence: Starting from any configuration, the system converges to a legitimate configuration within almost surely finite time (Las Vegas Approach) Retraite REGAL 2017, Cap Hornu
Retraite REGAL 2017, Cap Hornu Contribution (1/2) Probabilistic Snap-stabilization Weakened form of snap-stabilization Not comparable to self-stabilization Ideas We relax the definition of snap-stabilization without altering its strong safety guarantees to address anonymous networks Retraite REGAL 2017, Cap Hornu
Definition For every task started after the faults (i.e., starting from an arbitrary configuration) The safety part of the specification is satisfied However, the liveness part of the specification is only almost surely ensured (Las Vegas approach) Transient faults The task is executed safely, but it terminates in almost surely finite time Retraite REGAL 2017, Cap Hornu
Retraite REGAL 2017, Cap Hornu Contribution (2/2) 2 probabilistic snap-stabilizing protocols for the guaranteed service leader election in anonymous networks using the locally shared memory model where each process knows a value B s.t. B < n ≤ 2B The first one assumes a synchronous scheduler The second one assumes an asynchronous scheduler This problem has no deterministic self- or snap- stabilizing solution Retraite REGAL 2017, Cap Hornu
Definition of the Problem processes P1 P2 P3 P4 P5 time Retraite REGAL 2017, Cap Hornu
Definition of the Problem processes ? P1 ? P2 ? P3 ? P4 Upon a request A process initiates the question “Am I the leader of the network ?” ? P5 time Retraite REGAL 2017, Cap Hornu
Definition of the problem The task consists in computing the answer (yes/no) processes ? yes P1 ? no P2 ? no P3 ? no P4 ? no P5 time Retraite REGAL 2017, Cap Hornu
Definition of the problem Each process always receives the same answer to each of its request processes ? ? ? yes yes yes P1 ? no ? no P2 ? no ? no P3 ? no ? no P4 ? no ? no ? no P5 time Retraite REGAL 2017, Cap Hornu
Definition of the problem Exactly one process always receives yes processes ? ? ? yes yes yes P1 ? no ? no P2 ? no ? no P3 ? no ? no P4 ? no ? no ? no P5 time Retraite REGAL 2017, Cap Hornu
Retraite REGAL 2017, Cap Hornu Complexity We proposed 2 probabilistic snap-stabilizing protocols for the guaranteed service leader election in anonymous networks where each process knows a value B s.t. B < n ≤ 2B The first one assumes a synchronous scheduler, and its expected time complexity is in O(n) The second one assumes an asynchronous scheduler, and its expected time complexity is in O(n2) These two expected times can be reduced to O(D) and O(Dn), respectively, if processes have the knowledge of the diameter D of the network. Retraite REGAL 2017, Cap Hornu
Retraite REGAL 2017, Cap Hornu Generalization Guaranteed service leader election → guaranteed service naming: we can mimic the behavior of an identified network and emulate the transformer proposed in [Cournier et al, TCS’2016] CCL: In the locally shared memory model, almost all (non-stabilizing) algorithm can be, semi-automatically, turned into probabilistic snap-stabilizing algorithm working in anonymous networks. Perspective: The transformer is heavy! Need of dedicated solutions with reasonable complexities Retraite REGAL 2017, Cap Hornu
Retraite REGAL 2017, Cap Hornu Roadmap Probabilistic Snap-Stabilization [Altisen & Devismes, TCS, 2017] Gradual Stabilization [Altisen et al, EUROPAR’2016] Retraite REGAL 2017, Cap Hornu
Retraite REGAL 2017, Cap Hornu Related Work Self-Stab + Safe Convergence [Kakugawa & Masuzawa, IPDPS’06] Super-Stabilization [Dolev & Herman, CJTCS’97] Retraite REGAL 2017, Cap Hornu
Retraite REGAL 2017, Cap Hornu Related Work Self-Stab + Safe Convergence [Kakugawa & Masuzawa, IPDPS’06] Super-Stabilization [Dolev & Herman, CJTCS’97] Retraite REGAL 2017, Cap Hornu
Back to Self-Stabilization Retraite REGAL 2017, Cap Hornu
Back to Self-Stabilization No safety guarantee Retraite REGAL 2017, Cap Hornu
Back to Self-Stabilization Ω(D) Retraite REGAL 2017, Cap Hornu
Back to Self-Stabilization Are all illegitimate configurations identically bad ? Retraite REGAL 2017, Cap Hornu
Back to Self-Stabilization Are all illegitimate configurations identically bad ? Of course, NO ! Retraite REGAL 2017, Cap Hornu
Self-Stabilization + Safe Convergence Really bad No so bad good Retraite REGAL 2017, Cap Hornu
Self-Stabilization + Safe Convergence Quick convergence time Retraite REGAL 2017, Cap Hornu
Self-Stabilization + Safe Convergence Optimal LC ⊆ feasable LC Set of feasable LC: CLOSED Set of optimal LC: CLOSED Quick convergence to a feasable LC (O(1) expected) Convergence to an optimal LC Retraite REGAL 2017, Cap Hornu
Retraite REGAL 2017, Cap Hornu Related Work Self-Stab + Safe Convergence [Kakugawa & Masuzawa, IPDPS’06] Super-Stabilization [Dolev & Herman, CJTCS’97] Retraite REGAL 2017, Cap Hornu
Retraite REGAL 2017, Cap Hornu Super-Stabilization Transient faults Single topological change Configurations of the system time Stabilization time Superstabilization time Retraite REGAL 2017, Cap Hornu
Super-Stabilization Quick convergence time Transient faults Single topological change Quick convergence time Configurations of the system time Stabilization time Superstabilization time Retraite REGAL 2017, Cap Hornu
Retraite REGAL 2017, Cap Hornu Super-Stabilization Transient faults Single topological change Passage predicate Configurations of the system time Stabilization time Superstabilization time Retraite REGAL 2017, Cap Hornu
Gradual Stabilization Transient faults 𝜏 𝜚-dynamic steps Quality of the specification Configurations of the system T1 time Stabilization time T T2 T3 Retraite REGAL 2017, Cap Hornu T4 ≤ T
Case Study: Unison in Anonymous Networks 3 variants of the problem Strong Unison Weak Unison Partial Unison Each process has a local (logical) clock ∈ {0…𝛼-1} Same liveness: every process increments its clock infinitely often But the safety is different Retraite REGAL 2017, Cap Hornu
Retraite REGAL 2017, Cap Hornu Safety 1 2 Strong Weak Partial 1 2 3 1 2 3 ? Retraite REGAL 2017, Cap Hornu
Retraite REGAL 2017, Cap Hornu Contribution Transient faults 1 𝜚-dynamic step Immediate (Passage predicate) Partial Quality of the specification Configurations of the system Weak Strong 1 round time Stabilization time Dn rounds Retraite REGAL 2017, Cap Hornu Dn rounds
Retraite REGAL 2017, Cap Hornu 𝜚-dynamic step? The network remains Connected (necessary) 𝛼 > 3 ⇒ the network is Under Local Control (ULC) ULC ULC 1 2 3 1 2 3 ? ? ? ? Retraite REGAL 2017, Cap Hornu
Retraite REGAL 2017, Cap Hornu ULC necessary ? 𝛼 < 4 : NO 𝛼 = 4: Maybe (we have pathological cases) 𝛼 = 5: Maybe (we have pathological cases) 𝛼 > 5: YES Retraite REGAL 2017, Cap Hornu
Gradual Stabilization: Perspectives First attempt 𝜚 > 1 ? Other (dynamic) problem A good alternative to super-stabilization Retraite REGAL 2017, Cap Hornu
Retraite REGAL 2017, Cap Hornu References [AD2017j] Karine Altisen, Stéphane Devismes, On probabilistic snap-stabilization, Theoretical Computer Science, Volume 688, 2017, Pages 49-76, ISSN 0304-3975. [ADDP16c] Karine Altisen, Stéphane Devismes, Anaïs Durand, and Franck Petit. Gradual Stabilization under T-Dynamics. Euro-Par 2016, 22nd International European Conference on Parallel and Distributed Computing. Pages 588-602, Grenoble (France), 22-26 August 2016. Retraite REGAL 2017, Cap Hornu
Retraite REGAL 2017, Cap Hornu Thank you! Retraite REGAL 2017, Cap Hornu