260 likes | 372 Views
This paper explores snap-stabilization within message-passing systems, focusing on bidirectional and fully-connected networks. It discusses the mechanisms of message communication using asynchronous, fair, and FIFO links, addressing transient faults and arbitrary initial states. Key topics include self-stabilization, safety-distributed specifications, and mutual exclusion protocols. The study also highlights advanced protocols to ensure reliable communication amidst transient faults and presents case studies illustrating both unbounded and bounded capacity links. Innovative approaches and principles for achieving effective snap-stabilization are elaborated.
E N D
Snap-Stabilization in Message-Passing Systems Sylvie Delaët(LRI) StéphaneDevismes(CNRS, LRI) Mikhail Nesterenko(Kent State University) Sébastien Tixeuil (LIP6)
1 2 m2 3 4 ma ma mb mb m1 m3 m3 Message-Passing Model • Network bidirectionnal and fully-connected • Communications by messages • Links asynchronous, fair, and FIFO • Ids on processes • Transient faults Orsay, réunion SOGEA
Stabilizing Protocols • Self-Stabilization [Dijkstra, 1974] c1 c2 c3 c4 c5 c6 c7 Convergence time correct behavior correct behavior uncorrect behavior Transient Faults Arbitrary initial state Orsay, réunion SOGEA
Stabilizing Protocols • Snap-Stabilization [Bui et al, 1999] c1 c2 c3 c4 c5 c6 c7 time correct behavior correct behavior uncorrect behavior Transient Faults Arbitrary initial state Orsay, réunion SOGEA
Related Works in message-passing(reliable communication in self-stabilization) • [Gouda & Multari, 1991] • Deterministic + Unbounded Capacity => Unbounded Counter • Deterministic + Bounded Capacity => Bounded Counter • [Afek & Brown, 1993] • Probabilistic + Unbounded Capacity + Bounded Counter ? <How old are you, Captain?> ? <I’m 21> <I’m 12> <I’m 50> Orsay, réunion SOGEA
Related Works in message-passing (self-stabilization) • [Varghese, 1993] • Deterministic + Bounded Capacity • [Katz & Perry, 1993] • Unbounded Capacity, deterministic, infinite counter • [Delaët et al] • Unbounded Capacity, deterministic, finite memory • Silent tasks Orsay, réunion SOGEA
Related Works (snap-stabilization) • Nothing in the Message-Passing Model • Only in State Model: • Locally Shared Memory • Composite Atomicity • [Cournier et al, 2003] Orsay, réunion SOGEA
Case 1: unbounded capacity links • Impossible for safety-distributed specifications Orsay, réunion SOGEA
Safety-distributed specification A p B q Example : Mutual Exclusion Orsay, réunion SOGEA
Safety-distributed specification sp A p m1 m2 m3 m4 m5 sq B q m’1 m’2 m’3 m’4 Orsay, réunion SOGEA
Safety-distributed specification sp A p m1 m2 m3 m4 m5 sq B q m’1 m’2 m’3 m’4 Orsay, réunion SOGEA
Case 2: bounded capacity links • Problem to solve: Reliable Communication • Starting from any configuration, if Tintin sends a question to CaptainHaddock, then: • Tintin eventually receives good answers • Tintin takes only the good answers into account ? ? Orsay, réunion SOGEA
Case 2: bounded capacity links • Case Study: Single-Message Capacity 0 or 1 message 0 or 1 message Orsay, réunion SOGEA
Case 2: bounded capacity links • Sequence number State {0,1,2,3,4} p q <1,NeigStatep,Qp,Ap> <0,NeigStatep,Qp,Ap> <Stateq,0,Qq,Aq> Until Statep = 4 Statep Stateq ? 0 1 ? NeigStatep NeigStateq ? ? 0 Orsay, réunion SOGEA
Case 2: bounded capacity links • Pathological Case: p <2,?,?,?> <3,NeigStatep,Qp,Ap> q <Stateq,3,Qq,Aq> <?,1,?,?> <?,2,?,?> <?,0,?,?> Statep Stateq 4 3 2 ? 1 0 NeigStatep NeigStateq ? 1 3 2 Orsay, réunion SOGEA
Generalizations • Arbitrary Bounded Capacity • 2xCmax+3 values Cmax values p q Cmax values 1 value 1 value Orsay, réunion SOGEA
Generalizations • PIF in fully-connected network m Am m m Am Am Orsay, réunion SOGEA
Application Mutual Exclusion in a fully-connected & identified networkusing the PIF Orsay, réunion SOGEA
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 Orsay, réunion SOGEA
Principles (1/3) • Let L be the process with the smallest ID • L decides using ValueLwhich is authorized to access the CS • if ValueL = 0, then L is authorized • if ValueL = i, then the ith neighbor of L is authorized • 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 L when it terminates Step 2 (so that L increments ValueL) Orsay, réunion SOGEA
Principles (2/3) • Each process sequentially executes 4 phases infinitely often • A requesting process p can enter in the CS only after executing Phases 1 to 4 consecutively • The CS is in Phase 4 Orsay, réunion SOGEA
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; If p≠L, then p broadcasts EXITCS (PIF), else p increments Valuep • (upon reception of EXITCS, L increments ValueL) Orsay, réunion SOGEA
Conclusion Snap-Stabilization in message-passing is no more an open question Orsay, réunion SOGEA
Extensions • Apply snap-stabilization in message-passing to: • Other topologies (tree, arbitrary topology) • Other problems • Other failure patterns • Space requirement Orsay, réunion SOGEA