/
Self-Stabilizing Algorithm Self-Stabilizing Algorithm

Self-Stabilizing Algorithm - PowerPoint Presentation

tatyana-admore
tatyana-admore . @tatyana-admore
Follow
359 views
Uploaded On 2018-02-16

Self-Stabilizing Algorithm - PPT Presentation

with S afe C onvergence building an f g Alliance Fabienne Carrier Ajoy K Datta Stéphane Devismes Lawrence L Larmore Yvan Rivierre Co Autors Ajoy K Datta ID: 631859

nil alliance minimal stabilization alliance nil stabilization minimal neighbors neighbor safe convergence transient dijkstra locally busy red memory problem

Share:

Link:

Embed:

Download Presentation from below link

Download Presentation The PPT/PDF document "Self-Stabilizing Algorithm" is the property of its rightful owner. Permission is granted to download and print the materials on this web site for personal, non-commercial use only, and to display it on your personal computer provided you do not modify the materials and that you retain all copyright notices contained in the materials. By downloading content from our website, you accept the terms of this agreement.


Presentation Transcript

Slide1

Self-Stabilizing Algorithm with Safe Convergence building an (f,g)-Alliance

Fabienne CarrierAjoy K. DattaStéphane DevismesLawrence L. LarmoreYvan RivierreSlide2

Co-Autors

Ajoy K. Datta & Lawrence L. Larmore

Fabienne

Carrier &

Yvan

RivierreSlide3

RoadmapSelf-stabilizationSafe convergenceThe problem

ContributionAlgorithmPerspectivesSlide4

Self-Stabilization [Dijkstra,74]Slide5

Self-Stabilization [Dijkstra,74]

Transient Faults,

e.g.

, memory corruption, message lost … Slide6

Self-Stabilization [Dijkstra,74]Slide7

Self-Stabilization [Dijkstra,74]Slide8

Self-Stabilization [Dijkstra,74]Slide9

Self-Stabilization [Dijkstra,74]Slide10

Self-Stabilization [Dijkstra,74]Slide11

Self-Stabilization [Dijkstra,74]

Recover

after any number of transient faultsSlide12

Pros and ConsTolerate any finite number of transient faultsNo initialization

Large-scale networkSelf-organization in sensor networkDynamicityTopological change ≈ Transient faultTolerate only

transient faults

Eventual safety

No

stabilization detectionSlide13

Pros and ConsTolerate any finite number of transient faultsNo initialization

Large-scale networkSelf-organization in sensor networkDynamicityTopological change ≈ Transient faultTolerate only

transient faults

Eventual safety

No

stabilization detectionSlide14

Related WorkEnhancing 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.Slide15

Back to self-stabilizationSlide16

Back to self-stabilization

No safety guaranteeSlide17

Back to self-stabilization

Ω(D)Slide18

Back to self-stabilization

Are all illegitimate configurations identically bad ?Slide19

Back to self-stabilization

Are all illegitimate configurations identically bad ?Of course, NO !Slide20

Self-stabilization + Safe Convergence

No so badReally badgoodSlide21

Self-stabilization + Safe Convergence

Quick convergence timeSlide22

Self-stabilization + Safe ConvergenceOptimal LC ⊆ feasable LCSet of feasable

LC: CLOSEDSet of optimal LC: CLOSEDQuick convergence to a feasable LC(O(1) expected)Convergence to an optimal LCSlide23

The problem: (f,g)-Alliance[Dourado et al, SSS’11]

Alliance: subset of nodesf, g: 2 functions mapping nodes to natural integersFor every process p:p ∉ Alliance ⇒ at least f(p) neighbors ∈ Alliance p ∈ Alliance ⇒ at least g(p) neighbors ∈ Alliance Slide24

Example: (f,g)-Alliance

Red nodes form a

(

1

,

0

)-AllianceSlide25

Example: (f,g)-Alliance

Red nodes

DO NOT

form a (

1

,

0

)-AllianceSlide26

(f,g)-Alliance: generalization of several problemsDominating setsK-dominating setsK-tuple

dominating setsGlobal defensive allianceGlobal offensive allianceSlide27

Minimality & 1-MinimalityLet A be a set of nodesA is a minimal (

f,g)-Alliance iff every proper subset of A is not an (f,g)-AllianceA is a 1-minimal (f,g)-Alliance iff ∀p ∈ A, A-{

p} is not an (f,g)-Alliance Slide28

Example: (0,1)-Alliance

Red nodes form

NEITHER a minimal NOR a 1-minimal

(

0

,

1

)-AllianceSlide29

Example: (0,1)-Alliance

Red nodes form

a 1-minimal

(

0

,

1

)-Alliance but not a

minimal

oneSlide30

Example: (0,1)-Alliance

Red nodes (empty set) both form a

minimal AND

a

1-minimal

(

0

,

1

)-AllianceSlide31

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), thenA is a minimal (f,g

)-Alliance iff A is a 1-minimal (

f

,

g

)-Alliance Slide32

ContributionSelf-Stabilizing Safe Converging Algorithm for computing the minimal (f,g)-Alliance in identified networks:

Safe ConvergenceStabilization in 4 rounds to a configuration, where an (f,g)-Alliance is definedStabilization 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) (number of state changes) Slide33

Locally Shared Memory ModelSlide34

Locally Shared Memory ModelSlide35

Locally Shared Memory ModelSlide36

Locally Shared Memory Model

Choices of the scheduler (daemon)

Unfair daemon: no fairness assumptionSlide37

Algorithm’s main ideasSlide38

``Naïve Idea”

One

boolean

Red: ∈ A

Green: ∉ A

Two actions:

Join

Leave Slide39

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

joinSlide40

Leave the alliance p can leaves if :At least f(p) neighbors ∈ A after

p leaves ANDEach neighbor still have enough neighbors ∈ A after p leaves Slide41

At least f(p) neighbors ∈ A after p leavesLeaving should be locally sequential

Example: (2,2)-Alliance

p

NeighborsSlide42

At least f(p) neighbors ∈ A after p leavesLeaving should be locally sequential

Example: (2,2)-Alliance

p

Neighbors

p

NeighborsSlide43

At least f(p) neighbors ∈ A after p leavesLeaving should be locally sequential

Example: (2,2)-Alliance

p

Neighbors

p

NeighborsSlide44

Pointer: authorization to leaveNil

pNeighborsSlide45

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

)-AllianceSlide46

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 tiesSlide47

Nil

Deadlock problemsNil

(

1

,

0

)-AllianceSlide48

Nil

Deadlock problemsNil

(

1

,

0

)-Alliance

Busy !Slide49

Deadlock problems

Nil

(

1

,

0

)-Alliance

Busy !

NilSlide50

Deadlock problems

Nil

(

1

,

0

)-Alliance

Busy !

Tie break !

NilSlide51

Deadlock problems

NilNil

(

1

,

0

)-Alliance

Busy !

Tie break !

NilSlide52

Deadlock problems

NilNil

(

1

,

0

)-Alliance

Busy !

Tie break !

NilSlide53

How evaluating

BusyNP∩ A < f(p) (EASY)A neighbor q of p needs that p stays in the alliance, e.g.

(

2

,

0

)-Alliance

p

q

Busy !Slide54

0

How evaluating BusyNP∩ A < f(p) (EASY)A neighbor q of p needs that p stays in the alliance, e.g.

0

3

(

2

,

0

)-Alliance

2

p

q

Busy !

1

1

NbSlide55

Last problem …(1

,0)-AllianceNil

Nil

NilSlide56

Last problem …(1

,0)-AllianceNil

Nil

Nil

Nil

Nil

NilSlide57

Last problem …(1

,0)-AllianceNil

Nil

Nil

Nil

Nil

Nil

Nil

Nil

NilSlide58

Last problem …Solution: strict alternation Nil,

Nil

Nil

NilSlide59

Last problem …Solution: strict alternation Nil,

Nil

Nil

Nil

Nil

Nil

Nil

NilSlide60

Join the Alliancep ∉ A and NP∩ A < f(p) (EASY)

A neighbor q needs that p joins the alliance: Evaluated by reading the status of q and q.NbNo neighbor points p Slide61

PerspectivesGlobal stabilization in O(D)?Self-stabilization with safe convergence without any assumption on f and g

? Slide62

Thank you!