Download presentation
Presentation is loading. Please wait.
Published byAlison Crawford Modified over 8 years ago
1
Self-Stabilizing Algorithm with Safe Convergence building an (f,g)-Alliance Fabienne Carrier Ajoy K. Datta Stéphane Devismes Lawrence L. Larmore Yvan Rivierre
2
Co-Autors Ajoy K. Datta & Lawrence L. Larmore Fabienne Carrier & Yvan Rivierre
3
Roadmap 1.Self-stabilization 2.Safe convergence 3.The problem 4.Contribution 5.Algorithm 6.Perspectives
4
Self-Stabilization [Dijkstra,74]
5
Transient Faults, e.g., memory corruption, message lost …
6
Self-Stabilization [Dijkstra,74]
11
Recover after any number of transient faults
12
Pros and Cons Tolerate any finite number of transient faults No initialization – Large-scale network – Self-organization in sensor network Dynamicity – Topological change ≈ Transient fault Tolerate only transient faults Eventual safety No stabilization detection
13
Pros and Cons Tolerate any finite number of transient faults No initialization – Large-scale network – Self-organization in sensor network Dynamicity – Topological change ≈ Transient fault Tolerate only transient faults Eventual safety No stabilization detection
14
Related Work Enhancing safety: – Fault-containment [Ghosh et al, PODC’96] – Superstabilization [Dolev & Herman, CJTCS’97] – Time-adaptive Self-stabilization [Kutten & Patt-Shamir, PODC’97] – Self-Stab + safe convergence [Kakugawa & Masuzawa, IPDPS’06] – Etc.
15
Back to self-stabilization
16
No safety guarantee
17
Back to self-stabilization Ω(D)
18
Back to self-stabilization Are all illegitimate configurations identically bad ?
19
Back to self-stabilization Are all illegitimate configurations identically bad ? Of course, NO !
20
Self-stabilization + Safe Convergence No so bad Really bad good
21
Self-stabilization + Safe Convergence Quick convergence time
22
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
23
The problem: (f,g)-Alliance [Dourado et al, SSS’11] Alliance: subset of nodes f, g: 2 functions mapping nodes to natural integers For every process p: – p ∉ Alliance ⇒ at least f(p) neighbors ∈ Alliance – p ∈ Alliance ⇒ at least g(p) neighbors ∈ Alliance
24
Example: (f,g)-Alliance Red nodes form a (1,0)-Alliance
25
Example: (f,g)-Alliance Red nodes DO NOT form a (1,0)-Alliance
26
(f,g)-Alliance: generalization of several problems Dominating sets K-dominating sets K-tuple dominating sets Global defensive alliance Global offensive alliance
27
Minimality & 1-Minimality Let A be a set of nodes A is a minimal (f,g)-Alliance iff every proper subset of A is not an (f,g)-Alliance A is a 1-minimal (f,g)-Alliance iff ∀ p ∈ A, A-{p} is not an (f,g)-Alliance
28
Example: (0,1)-Alliance Red nodes form NEITHER a minimal NOR a 1- minimal (0,1)-Alliance
29
Example: (0,1)-Alliance Red nodes form a 1-minimal (0,1)-Alliance but not a minimal one
30
Example: (0,1)-Alliance Red nodes (empty set) both form a minimal AND a 1-minimal (0,1)-Alliance
31
Property [Dourado et al, SSS’11] Every minimal (f,g)-Alliance is a 1-minimal (f,g)-Alliance If for every node p, f(p) ≥ g(p), then – A is a minimal (f,g)-Alliance iff A is a 1-minimal (f,g)-Alliance
32
Contribution Self-Stabilizing Safe Converging Algorithm for computing the minimal (f,g)-Alliance in identified networks: – Safe Convergence Stabilization in 4 rounds to a configuration, where an (f,g)-Alliance is defined Stabilization in 4n+4 additional rounds to a configuration, where minimal (f,g)-Alliance is defined – Assumptions: If for every node p, f(p) ≥ g(p) and δ(p) ≥ g(p) Locally shared memory model, unfair daemon – Other complexities Memory requirement: O(log n) bits per process Step complexity: O(Δ 3 n) (number of state changes)
33
Locally Shared Memory Model
36
Choices of the scheduler (daemon) Unfair daemon: no fairness assumption
37
Algorithm’s main ideas
38
``Naïve Idea” One boolean Red: ∈ A Green: ∉ A Two actions: Join Leave
39
``Naïve Idea” One boolean Red: ∈ A Green: ∉ A Two actions: Join Leave To obtain safe convergence, it should be harder to leave than to join
40
Leave the alliance p can leaves if : 1.At least f(p) neighbors ∈ A after p leaves AND 2.Each neighbor still have enough neighbors ∈ A after p leaves
41
At least f(p) neighbors ∈ A after p leaves Leaving should be locally sequential Example: (2,2)-Alliance p Neighbors
42
At least f(p) neighbors ∈ A after p leaves Leaving should be locally sequential Example: (2,2)-Alliance p Neighbors p
43
At least f(p) neighbors ∈ A after p leaves Leaving should be locally sequential Example: (2,2)-Alliance p Neighbors p
44
Pointer: authorization to leave Nil p Neighbors
45
Each neighbor still have enough neighbor ∈ A after p leaves A neighbor q gives an authorization only if q still have enough neighbors ∈ A without p p q (1,0)-Alliance
46
Each neighbor still have enough neighbor ∈ A after p leaves A neighbor q gives an authorization only if q still have enough neighbors ∈ A without p p q (1,0)-Alliance If q has several choices ID breaks ties
47
Nil Deadlock problems Nil (1,0)-Alliance
48
Nil Deadlock problems Nil (1,0)-Alliance Busy !
49
Deadlock problems Nil (1,0)-Alliance Busy ! Nil
50
Deadlock problems Nil (1,0)-Alliance Busy ! Tie break ! Nil
51
Deadlock problems Nil (1,0)-Alliance Busy ! Tie break ! Nil
52
Deadlock problems Nil (1,0)-Alliance Busy ! Tie break ! Nil
53
How evaluating Busy N P ∩ A < f(p) (EASY) A neighbor q of p needs that p stays in the alliance, e.g. (2,0)-Alliance p q Busy !
54
0 How evaluating Busy N P ∩ A < f(p) (EASY) A neighbor q of p needs that p stays in the alliance, e.g. 03 (2,0)-Alliance 2 p q Busy ! 1 1 Nb
55
Last problem … (1,0)-Alliance Nil
56
Last problem … (1,0)-Alliance Nil
57
Last problem … (1,0)-Alliance Nil
58
Last problem … Solution: strict alternation Nil, Nil
59
Last problem … Solution: strict alternation Nil, Nil
60
Join the Alliance p ∉ A and N P ∩ A < f(p) (EASY) A neighbor q needs that p joins the alliance: – Evaluated by reading the status of q and q.Nb No neighbor points p
61
Perspectives Global stabilization in O(D)? Self-stabilization with safe convergence without any assumption on f and g?
62
Thank you!
Similar presentations
© 2024 SlidePlayer.com. Inc.
All rights reserved.