Self-stabilizing ( f , g )-Alliances with Safe Convergence

59
Self-stabilizing (f,g)-Alliances with Safe Convergence Fabienne Carrier Ajoy K. Datta Stéphane Devismes Lawrence L. Larmore Yvan Rivierre

description

Self-stabilizing ( f , g )-Alliances with Safe Convergence. Fabienne Carrier Ajoy K. Datta Stéphane Devismes Lawrence L. Larmore Yvan Rivierre. Co- Autors. Ajoy K. Datta & Lawrence L. Larmore. Fabienne Carrier & Yvan Rivierre. Roadmap. Safe convergence - PowerPoint PPT Presentation

Transcript of Self-stabilizing ( f , g )-Alliances with Safe Convergence

Page 1: Self-stabilizing ( f , g )-Alliances with Safe Convergence

Self-stabilizing (f,g)-Alliances with Safe Convergence

Fabienne CarrierAjoy K. Datta

Stéphane DevismesLawrence L. Larmore

Yvan Rivierre

Page 2: Self-stabilizing ( f , g )-Alliances with Safe Convergence

SSS 2013, Osaka

Co-Autors

Ajoy K. Datta & Lawrence L. Larmore

Fabienne Carrier & Yvan Rivierre

14/11/13

Page 3: Self-stabilizing ( f , g )-Alliances with Safe Convergence

SSS 2013, Osaka

Roadmap

1. Safe convergence

2. The (f,g)-alliance problem

3. Contribution

4. Algorithm

5. Perspectives

14/11/13

Page 4: Self-stabilizing ( f , g )-Alliances with Safe Convergence

SSS 2013, Osaka

Safe convergence

14/11/13

Page 5: Self-stabilizing ( f , g )-Alliances with Safe Convergence

SSS 2013, Osaka

Pros and Cons of Self-Stabilization

• 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/11/13

Page 6: Self-stabilizing ( f , g )-Alliances with Safe Convergence

SSS 2013, Osaka

Pros and Cons of Self-Stabilization

• 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/11/13

Page 7: Self-stabilizing ( f , g )-Alliances with Safe Convergence

SSS 2013, Osaka

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.

14/11/13

Page 8: Self-stabilizing ( f , g )-Alliances with Safe Convergence

SSS 2013, Osaka

Back to self-stabilization

14/11/13

Page 9: Self-stabilizing ( f , g )-Alliances with Safe Convergence

SSS 2013, Osaka

Back to self-stabilization

No safety guarantee

14/11/13

Page 10: Self-stabilizing ( f , g )-Alliances with Safe Convergence

SSS 2013, Osaka

Back to self-stabilization

Ω(D)

14/11/13

Page 11: Self-stabilizing ( f , g )-Alliances with Safe Convergence

SSS 2013, Osaka

Back to self-stabilization

Are all illegitimate configurations

identically bad ?

14/11/13

Page 12: Self-stabilizing ( f , g )-Alliances with Safe Convergence

SSS 2013, Osaka

Back to self-stabilization

Are all illegitimate configurations

identically bad ?Of course, NO !

14/11/13

Page 13: Self-stabilizing ( f , g )-Alliances with Safe Convergence

SSS 2013, Osaka

Self-stabilization + Safe Convergence

Not so bad

Really bad

good

14/11/13

Page 14: Self-stabilizing ( f , g )-Alliances with Safe Convergence

SSS 2013, Osaka

Self-stabilization + Safe Convergence

Quick convergence time

14/11/13

Page 15: Self-stabilizing ( f , g )-Alliances with Safe Convergence

SSS 2013, Osaka

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 LC14/11/13

Page 16: Self-stabilizing ( f , g )-Alliances with Safe Convergence

SSS 2013, Osaka

Self-stabilization + Safe Convergence: example [Kakugawa & Masuzawa, IPDPS’06]

• Construction of a minimal dominating set

– 1-round convergence to a dominating set • (not necessarily a minimal one)

– Then, O(D)-rounds convergence to a MINIMAL dominating set• During this phase, all configurations contain a dominating set

14/11/13

Page 17: Self-stabilizing ( f , g )-Alliances with Safe Convergence

SSS 2013, Osaka

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 ∈

14/11/13

Page 18: Self-stabilizing ( f , g )-Alliances with Safe Convergence

SSS 2013, Osaka

Example: (f,g)-Alliance

Red nodes form a (1,0)-Alliance

14/11/13

Page 19: Self-stabilizing ( f , g )-Alliances with Safe Convergence

SSS 2013, Osaka

Example: (f,g)-Alliance

Red nodes DO NOT form a (1,0)-Alliance

14/11/13

Page 20: Self-stabilizing ( f , g )-Alliances with Safe Convergence

SSS 2013, Osaka

(f,g)-Alliance: generalization of several problems

• Dominating sets• K-domination sets• K-tuple domination sets• Global defensive alliance • Global offensive alliance

E.g., Dominating set = (1,0)-alliance14/11/13

Page 21: Self-stabilizing ( f , g )-Alliances with Safe Convergence

SSS 2013, Osaka

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

14/11/13

Page 22: Self-stabilizing ( f , g )-Alliances with Safe Convergence

SSS 2013, Osaka

Example: (0,1)-Alliance

Red nodes form a (0,1)-Alliance, but NEITHER a minimal NOR a 1-minimal (0,1)-Alliance

14/11/13

Page 23: Self-stabilizing ( f , g )-Alliances with Safe Convergence

SSS 2013, Osaka

Example: (0,1)-Alliance

Red nodes form a 1-minimal (0,1)-Alliance but not a minimal one

14/11/13

Page 24: Self-stabilizing ( f , g )-Alliances with Safe Convergence

SSS 2013, Osaka

Example: (0,1)-Alliance

Red nodes (empty set) both form a minimal AND a 1-minimal (0,1)-Alliance

14/11/13

Page 25: Self-stabilizing ( f , g )-Alliances with Safe Convergence

SSS 2013, Osaka

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

14/11/13

Page 26: Self-stabilizing ( f , g )-Alliances with Safe Convergence

SSS 2013, Osaka

Contribution• Self-Stabilizing Safe Converging Algorithm for computing:

a 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(Δ3n)

14/11/13

Page 27: Self-stabilizing ( f , g )-Alliances with Safe Convergence

SSS 2013, Osaka

Algorithm’s main ideas

14/11/13

Page 28: Self-stabilizing ( f , g )-Alliances with Safe Convergence

SSS 2013, Osaka

``Naïve Idea”

One Boolean• Red: A∈• Green: A∉Two actions:• Join• Leave

14/11/13

Page 29: Self-stabilizing ( f , g )-Alliances with Safe Convergence

SSS 2013, Osaka

``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

14/11/13

Page 30: Self-stabilizing ( f , g )-Alliances with Safe Convergence

SSS 2013, Osaka

Leave the alliance

• p can leave if :

1. At least f(p) neighbors A after ∈ p leaves AND

2. Each neighbor q still have enough neighbors A ∈after p leaves • i.e., g(q) or f(q) depending whether q belongs or not to A

14/11/13

Page 31: Self-stabilizing ( f , g )-Alliances with Safe Convergence

SSS 2013, Osaka

At least f(p) neighbors A after ∈ p leaves

• Leaving should be locally sequential• Example: (2,1)-Alliance

p

14/11/13

Page 32: Self-stabilizing ( f , g )-Alliances with Safe Convergence

SSS 2013, Osaka

At least f(p) neighbors A after ∈ p leaves

• Leaving should be locally sequential• Example: (2,1)-Alliance

p

14/11/13

p

Page 33: Self-stabilizing ( f , g )-Alliances with Safe Convergence

SSS 2013, Osaka

At least f(p) neighbors A after ∈ p leaves

• Leaving should be locally sequential• Example: (2,1)-Alliance

p

14/11/13

Page 34: Self-stabilizing ( f , g )-Alliances with Safe Convergence

SSS 2013, Osaka

At least f(p) neighbors A after ∈ p leaves

• Leaving should be locally sequential• Example: (2,1)-Alliance

p

14/11/13

p

Page 35: Self-stabilizing ( f , g )-Alliances with Safe Convergence

SSS 2013, Osaka

Pointer: authorization to leave

Nil

14/11/13

p

Nil

Page 36: Self-stabilizing ( f , g )-Alliances with Safe Convergence

SSS 2013, Osaka

Pointer: authorization to leave

Nil

14/11/13

p

Nil

Page 37: Self-stabilizing ( f , g )-Alliances with Safe Convergence

SSS 2013, Osaka

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

14/11/13

Page 38: Self-stabilizing ( f , g )-Alliances with Safe Convergence

SSS 2013, Osaka

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)-AllianceIf q has several choicesID breaks ties

14/11/13

Page 39: Self-stabilizing ( f , g )-Alliances with Safe Convergence

SSS 2013, Osaka

Nil

Deadlock problems

Nil

(1,0)-Alliance

14/11/13

Page 40: Self-stabilizing ( f , g )-Alliances with Safe Convergence

SSS 2013, Osaka

Nil

Deadlock problems

Nil

(1,0)-Alliance

Busy!

14/11/13

Page 41: Self-stabilizing ( f , g )-Alliances with Safe Convergence

SSS 2013, Osaka

Deadlock problems

Nil

(1,0)-Alliance

Busy!

Nil

14/11/13

Page 42: Self-stabilizing ( f , g )-Alliances with Safe Convergence

SSS 2013, Osaka

Deadlock problems

Nil

(1,0)-Alliance

Busy!

Tie break! Nil

14/11/13

Page 43: Self-stabilizing ( f , g )-Alliances with Safe Convergence

SSS 2013, Osaka

Deadlock problems

Nil

Nil(1,0)-Alliance

Busy!

Tie break! Nil

14/11/13

Page 44: Self-stabilizing ( f , g )-Alliances with Safe Convergence

SSS 2013, Osaka

Deadlock problems

Nil

Nil(1,0)-Alliance

Busy!

Tie break! Nil

14/11/13

Page 45: Self-stabilizing ( f , g )-Alliances with Safe Convergence

SSS 2013, Osaka

How to evaluate Busy?

• NP∩ A < f(p)

(2,0)-Alliance

pBusy!

14/11/13

Page 46: Self-stabilizing ( f , g )-Alliances with Safe Convergence

SSS 2013, Osaka

How to evaluate Busy?

• NP∩ A < f(p)• A neighbor q of p needs that p stays in the

alliance

(2,0)-Alliance

p qBusy!

14/11/13

Page 47: Self-stabilizing ( f , g )-Alliances with Safe Convergence

SSS 2013, Osaka

0

How to evaluate Busy?

• NP∩ A < f(p)• A neighbor q of p needs that p stays in the

alliance

23

(2,0)-Alliance

2p q

Busy!1

1 Nb14/11/13

2 2

Page 48: Self-stabilizing ( f , g )-Alliances with Safe Convergence

SSS 2013, Osaka

Last problem …

• (1,0)-Alliance

NilNil Nil

14/11/13

Page 49: Self-stabilizing ( f , g )-Alliances with Safe Convergence

SSS 2013, Osaka

Last problem …

• (1,0)-Alliance

NilNil Nil

NilNil Nil

14/11/13

Page 50: Self-stabilizing ( f , g )-Alliances with Safe Convergence

SSS 2013, Osaka

Last problem …

• (1,0)-Alliance

NilNil Nil

NilNil Nil

NilNil Nil

14/11/13

Page 51: Self-stabilizing ( f , g )-Alliances with Safe Convergence

SSS 2013, Osaka

Last problem …

• Solution: strict alternation Nil,

NilNil Nil

14/11/13

Page 52: Self-stabilizing ( f , g )-Alliances with Safe Convergence

SSS 2013, Osaka

Last problem …

• Solution: strict alternation Nil,

NilNil Nil

Nil NilNil Nil

14/11/13

Page 53: Self-stabilizing ( f , g )-Alliances with Safe Convergence

SSS 2013, Osaka

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 to p. 14/11/13

Page 54: Self-stabilizing ( f , g )-Alliances with Safe Convergence

SSS 2013, Osaka

Perspectives

• (Total) Stabilization in O(D) using O(log n) bits?

• Self-stabilization with safe convergence without any assumption on f and g?

14/11/13

Page 55: Self-stabilizing ( f , g )-Alliances with Safe Convergence

SSS 2013, Osaka

Thank you!14/11/13

Page 56: Self-stabilizing ( f , g )-Alliances with Safe Convergence

SSS 2013, Osaka

At least f(p) neighbors A after ∈ p leaves

• Leaving should be locally sequential

• Example: (2,2)-Alliance

p

Neighbors14/11/13

Page 57: Self-stabilizing ( f , g )-Alliances with Safe Convergence

SSS 2013, Osaka

At least f(p) neighbors A after ∈ p leaves

• Leaving should be locally sequential

• Example: (2,2)-Alliance

p

Neighbors

p

Neighbors14/11/13

Page 58: Self-stabilizing ( f , g )-Alliances with Safe Convergence

SSS 2013, Osaka

At least f(p) neighbors A after ∈ p leaves

• Leaving should be locally sequential

• Example: (2,2)-Alliance

p

Neighbors

p

Neighbors14/11/13

Page 59: Self-stabilizing ( f , g )-Alliances with Safe Convergence

SSS 2013, Osaka

Pointer: authorization to leave

Nil

p

Neighbors

14/11/13