snap-stabilization in message-passing systems sylvie delat (lri) stphane devismes (cnrs, lri)...

24
Snap-Stabilization in Message-Passing Systems Sylvie Delaët (LRI) Stéphane Devismes (CNRS, LRI) Mikhail Nesterenko (Kent State University) Sébastien Tixeuil (LIP6)

Upload: leon-green

Post on 18-Jan-2018

223 views

Category:

Documents


0 download

DESCRIPTION

07/02/2008Séminaire "Algorithmique Répartie", LIP63 From an arbitrary initial configuration? (after some transient failures) ? ? + unreliable asynchronous but FIFO links (induces problems of duplicates)

TRANSCRIPT

Page 1: Snap-Stabilization in Message-Passing Systems Sylvie Delat (LRI) Stphane Devismes (CNRS, LRI) Mikhail Nesterenko (Kent State University) Sbastien Tixeuil

Snap-Stabilization in Message-Passing Systems

Sylvie Delaët (LRI)

Stéphane Devismes (CNRS, LRI)

Mikhail Nesterenko (Kent State University)

Sébastien Tixeuil (LIP6)

Page 2: Snap-Stabilization in Message-Passing Systems Sylvie Delat (LRI) Stphane Devismes (CNRS, LRI) Mikhail Nesterenko (Kent State University) Sbastien Tixeuil

07/02/2008 Séminaire "Algorithmique Répartie", LIP6 2

Preliminaries

<How old are you, Captain?>

<I’m 55>

Page 3: Snap-Stabilization in Message-Passing Systems Sylvie Delat (LRI) Stphane Devismes (CNRS, LRI) Mikhail Nesterenko (Kent State University) Sbastien Tixeuil

07/02/2008 Séminaire "Algorithmique Répartie", LIP6 3

From an arbitrary initial configuration?(after some transient failures)

?

?<I’m 12>

<How old are you, Captain?>

+ unreliable asynchronous but FIFO links(induces problems of duplicates)

Page 4: Snap-Stabilization in Message-Passing Systems Sylvie Delat (LRI) Stphane Devismes (CNRS, LRI) Mikhail Nesterenko (Kent State University) Sbastien Tixeuil

07/02/2008 Séminaire "Algorithmique Répartie", LIP6 4

Solutions

• Self-Stabilization [Dijkstra 1974]:• Starting from any configuration, the protocol resumes a

correct behavior in finite time

• Starting from any configuration, If Tintin sends infinitely many questions to Captain Haddock, then:

• Tintin receives infinitely many good answers

• Tintin eventually only takes the good answers into account

Page 5: Snap-Stabilization in Message-Passing Systems Sylvie Delat (LRI) Stphane Devismes (CNRS, LRI) Mikhail Nesterenko (Kent State University) Sbastien Tixeuil

07/02/2008 Séminaire "Algorithmique Répartie", LIP6 5

Solutions

• Snap-Stabilization [Bui et al,1999]:• Starting from any configuration, every computation of the

protocol that is started returns a correct result

• Starting from any configuration, if Tintin sends a question to Captain Haddock, then:

• Tintin eventually receives good answers

• Tintin takes only the good answers into account

Page 6: Snap-Stabilization in Message-Passing Systems Sylvie Delat (LRI) Stphane Devismes (CNRS, LRI) Mikhail Nesterenko (Kent State University) Sbastien Tixeuil

07/02/2008 Séminaire "Algorithmique Répartie", LIP6 6

Related Works (reliable communication in self-stabilization)

• [Gouda & Multari, 1991] Deterministic + Unbounded Capacity => Infinite

Counter Deterministic + Bounded Capacity => Finite Counter

• [Afek & Brown, 1993] Probabilistic + Unbounded Capacity + Finite Counter

Page 7: Snap-Stabilization in Message-Passing Systems Sylvie Delat (LRI) Stphane Devismes (CNRS, LRI) Mikhail Nesterenko (Kent State University) Sbastien Tixeuil

07/02/2008 Séminaire "Algorithmique Répartie", LIP6 7

Related Works (self-stabilization in message-passing)

• [Varghese, 1993] Deterministic + Bounded Capacity

• [Katz & Perry, 1993] Unbounded Capacity, deterministic, infinite counter

• [Delaët et al] Unbounded Capacity, deterministic, finite memory Silent tasks

Page 8: Snap-Stabilization in Message-Passing Systems Sylvie Delat (LRI) Stphane Devismes (CNRS, LRI) Mikhail Nesterenko (Kent State University) Sbastien Tixeuil

07/02/2008 Séminaire "Algorithmique Répartie", LIP6 8

Related Works (snap-stabilization)

• Nothing in the Message-Passing Model

• Only in State Model: Locally Shared Memory

Composite Atomicity

• [Cournier et al, 2003]

Page 9: Snap-Stabilization in Message-Passing Systems Sylvie Delat (LRI) Stphane Devismes (CNRS, LRI) Mikhail Nesterenko (Kent State University) Sbastien Tixeuil

Snap-Stabilization in Message-Passing Systems

Page 10: Snap-Stabilization in Message-Passing Systems Sylvie Delat (LRI) Stphane Devismes (CNRS, LRI) Mikhail Nesterenko (Kent State University) Sbastien Tixeuil

07/02/2008 Séminaire "Algorithmique Répartie", LIP6 10

Case 1: unbounded capacity links

• Impossible for safety-distributed specifications E.g. Mutual Exclusion

Page 11: Snap-Stabilization in Message-Passing Systems Sylvie Delat (LRI) Stphane Devismes (CNRS, LRI) Mikhail Nesterenko (Kent State University) Sbastien Tixeuil

07/02/2008 Séminaire "Algorithmique Répartie", LIP6 11

Case Study: Mutual Exclusion

• Specification of the Mutual Exclusion:

Any process that requests the CS enters in the CS in finite time (Liveness)

If a requesting process enters in the CS, then it executes the CS alone (Safety)

N.b. Some non-requesting processes may be initially in the CS

Page 12: Snap-Stabilization in Message-Passing Systems Sylvie Delat (LRI) Stphane Devismes (CNRS, LRI) Mikhail Nesterenko (Kent State University) Sbastien Tixeuil

07/02/2008 Séminaire "Algorithmique Répartie", LIP6 12

Case Study: Mutual Exclusion• Let p, q be two distinct processes

p

q

q

p

q

p

Page 13: Snap-Stabilization in Message-Passing Systems Sylvie Delat (LRI) Stphane Devismes (CNRS, LRI) Mikhail Nesterenko (Kent State University) Sbastien Tixeuil

07/02/2008 Séminaire "Algorithmique Répartie", LIP6 13

Case 2: bounded capacity links

• Case Study: Single-Message Capacity

0 or 1 message

0 or 1 message

Page 14: Snap-Stabilization in Message-Passing Systems Sylvie Delat (LRI) Stphane Devismes (CNRS, LRI) Mikhail Nesterenko (Kent State University) Sbastien Tixeuil

07/02/2008 Séminaire "Algorithmique Répartie", LIP6 14

Case 2: bounded capacity links

• Sequence number State {0,1,2,3,4}

p q

Statep Stateq0

NeigStatep NeigStateq

?

??

<0,NeigStatep,Qp,Ap>

0

<Stateq,0,Qq,Aq>

1

<1,NeigStatep,Qp,Ap>

Until Statep = 4

Page 15: Snap-Stabilization in Message-Passing Systems Sylvie Delat (LRI) Stphane Devismes (CNRS, LRI) Mikhail Nesterenko (Kent State University) Sbastien Tixeuil

07/02/2008 Séminaire "Algorithmique Répartie", LIP6 15

Case 2: bounded capacity links

• Pathological Case:

p q

Statep Stateq0

NeigStatep NeigStateq

?

1?

<2,?,?,?>

<?,0,?,?>

1

<?,1,?,?>

2

2

<?,2,?,?>

3

<3,NeigStatep,Qp,Ap>

3

<Stateq,3,Qq,Aq>

4

Page 16: Snap-Stabilization in Message-Passing Systems Sylvie Delat (LRI) Stphane Devismes (CNRS, LRI) Mikhail Nesterenko (Kent State University) Sbastien Tixeuil

07/02/2008 Séminaire "Algorithmique Répartie", LIP6 16

Generalizations

• Arbitrary Bounded Capacity

• PIF in fully-connected network

Page 17: Snap-Stabilization in Message-Passing Systems Sylvie Delat (LRI) Stphane Devismes (CNRS, LRI) Mikhail Nesterenko (Kent State University) Sbastien Tixeuil

07/02/2008 Séminaire "Algorithmique Répartie", LIP6 17

Application

Mutual Exclusion in a fully-connected & identified network

using the PIF

Page 18: Snap-Stabilization in Message-Passing Systems Sylvie Delat (LRI) Stphane Devismes (CNRS, LRI) Mikhail Nesterenko (Kent State University) Sbastien Tixeuil

07/02/2008 Séminaire "Algorithmique Répartie", LIP6 18

Mutual Exclusion

• Specification:

Any process that requests the CS enters in the CS in finite time (Liveness)

If a requesting process enters in the CS, then it executes the CS alone (Safety)

N.b. Some non-requesting processes may be initially in the CS

Page 19: Snap-Stabilization in Message-Passing Systems Sylvie Delat (LRI) Stphane Devismes (CNRS, LRI) Mikhail Nesterenko (Kent State University) Sbastien Tixeuil

07/02/2008 Séminaire "Algorithmique Répartie", LIP6 19

Principles (1/3)

• Let L be the process with the smallest ID

• L decides using ValueL which process can enter in the CS

• When a process learns that it is authorized by L to access the CS:

§ It ensures that no other process can execute the CS§ It executes the CS, if it requests it § It notifies the leader when it terminates Step 2

Page 20: Snap-Stabilization in Message-Passing Systems Sylvie Delat (LRI) Stphane Devismes (CNRS, LRI) Mikhail Nesterenko (Kent State University) Sbastien Tixeuil

07/02/2008 Séminaire "Algorithmique Répartie", LIP6 20

Principles (2/3)

• Each process sequentially executes 4 phases infinitely often

• A requesting process can enter in the CS only after executing Phases 1 to 3

Page 21: Snap-Stabilization in Message-Passing Systems Sylvie Delat (LRI) Stphane Devismes (CNRS, LRI) Mikhail Nesterenko (Kent State University) Sbastien Tixeuil

07/02/2008 Séminaire "Algorithmique Répartie", LIP6 21

Principles (3/3)

For a process p:

• Phase 1: p evaluates the IDs using a PIF

• Phase 2: p asks if Valueq = p to each other process q (PIF)

• Phase 3: If Winner(p) then p broadcasts EXIT to every other process (PIF)

• Phase 4: If Winner(p) then CS; p broadcasts EXITCS (PIF)

Page 22: Snap-Stabilization in Message-Passing Systems Sylvie Delat (LRI) Stphane Devismes (CNRS, LRI) Mikhail Nesterenko (Kent State University) Sbastien Tixeuil

07/02/2008 Séminaire "Algorithmique Répartie", LIP6 22

Conclusion

Snap-Stabilization in message-passing is no more an open question

Page 23: Snap-Stabilization in Message-Passing Systems Sylvie Delat (LRI) Stphane Devismes (CNRS, LRI) Mikhail Nesterenko (Kent State University) Sbastien Tixeuil

07/02/2008 Séminaire "Algorithmique Répartie", LIP6 23

Extension

• Apply snap-stabilization in message-passing to:

Other topologies

Other problems

Other failure patterns

Page 24: Snap-Stabilization in Message-Passing Systems Sylvie Delat (LRI) Stphane Devismes (CNRS, LRI) Mikhail Nesterenko (Kent State University) Sbastien Tixeuil

Thank you