Snap-Stabilization in Message-Passing Systems

Slides:



Advertisements
Similar presentations
Impossibility of Distributed Consensus with One Faulty Process
Advertisements

N-Consensus is the Second Strongest Object for N+1 Processes Eli Gafni UCLA Petr Kuznetsov Max Planck Institute for Software Systems.
CS 542: Topics in Distributed Systems Diganta Goswami.
CS425 /CSE424/ECE428 – Distributed Systems – Fall 2011 Material derived from slides by I. Gupta, M. Harandi, J. Hou, S. Mitra, K. Nahrstedt, N. Vaidya.
A General Characterization of Indulgence R. Guerraoui EPFL joint work with N. Lynch (MIT)
Failure Detection The ping-ack failure detector in a synchronous system satisfies – A: completeness – B: accuracy – C: neither – D: both.
Snap-stabilizing Committee Coordination Borzoo Bonakdarpour Stephane Devismes Franck Petit IEEE International Parallel and Distributed Processing Symposium.
Distributed Computing 8. Impossibility of consensus Shmuel Zaks ©
Snap-Stabilization in Message-Passing Systems Sylvie Delaët (LRI) Stéphane Devismes (CNRS, LRI) Mikhail Nesterenko (Kent State University) Sébastien Tixeuil.
Fast Leader (Full) Recovery despite Dynamic Faults Ajoy K. Datta Stéphane Devismes Lawrence L. Larmore Sébastien Tixeuil.
CSCE 668 DISTRIBUTED ALGORITHMS AND SYSTEMS Fall 2011 Prof. Jennifer Welch CSCE 668 Self Stabilization 1.
Distributed Computing 8. Impossibility of consensus Shmuel Zaks ©
Introduction to Self-Stabilization Stéphane Devismes.
From Self- to Snap- Stabilization Alain Cournier, Stéphane Devismes, and Vincent Villain SSS’2006, November 17-19, Dallas (USA)
Self-Stabilization: An approach for Fault-Tolerance in Distributed Systems Stéphane Devismes 16/12/2013MAROC'2013.
 Idit Keidar, Principles of Reliable Distributed Systems, Technion EE, Spring Principles of Reliable Distributed Systems Lecture 7: Failure Detectors.
CPSC 668Set 3: Leader Election in Rings1 CPSC 668 Distributed Algorithms and Systems Spring 2008 Prof. Jennifer Welch.
CPSC 668Self Stabilization1 CPSC 668 Distributed Algorithms and Systems Spring 2008 Prof. Jennifer Welch.
CS294, YelickSelf Stabilizing, p1 CS Self-Stabilizing Systems
Distributed systems Module 2 -Distributed algorithms Teaching unit 1 – Basic techniques Ernesto Damiani University of Bozen Lesson 4 – Consensus and reliable.
Distributed systems Module 2 -Distributed algorithms Teaching unit 1 – Basic techniques Ernesto Damiani University of Bozen Lesson 2 – Distributed Systems.
Chapter Resynchsonous Stabilizer Chapter 5.1 Resynchsonous Stabilizer Self-Stabilization Shlomi Dolev MIT Press, 2000 Draft of Jan 2004, Shlomi.
 Idit Keidar, Principles of Reliable Distributed Systems, Technion EE, Spring Principles of Reliable Distributed Systems Lecture 7: Failure Detectors.
On Probabilistic Snap-Stabilization Karine Altisen Stéphane Devismes University of Grenoble.
Selected topics in distributed computing Shmuel Zaks
1 A Mutual Exclusion Algorithm for Ad Hoc Mobile networks Presentation by Sanjeev Verma For COEN th Nov, 2003 J. E. Walter, J. L. Welch and N. Vaidya.
On Probabilistic Snap-Stabilization Karine Altisen Stéphane Devismes University of Grenoble.
Snap-Stabilizing PIF and Useless Computations Alain Cournier, Stéphane Devismes, and Vincent Villain ICPADS’2006, July , Minneapolis (USA)
DISTRIBUTED SYSTEMS II A POLYNOMIAL LOCAL SOLUTION TO MUTUAL EXCLUSION Prof Philippas Tsigas Distributed Computing and Systems Research Group.
A Self-Stabilizing O(n)-Round k-Clustering Algorithm Stéphane Devismes, VERIMAG.
Self-Stabilizing K-out-of-L Exclusion on Tree Networks Stéphane Devismes, VERIMAG Joint work with: – Ajoy K. Datta (Univ. Of Nevada) – Florian Horn (LIAFA)
Self-Stabilizing K-out-of-L Exclusion on Tree Networks Stéphane Devismes, VERIMAG Joint work with: – Ajoy K. Datta (Univ. Of Nevada) – Florian Horn (LIAFA)
Weak vs. Self vs. Probabilistic Stabilization Stéphane Devismes (CNRS, LRI, France) Sébastien Tixeuil (LIP6-CNRS & INRIA, France) Masafumi Yamashita (Kyushu.
Physical clock synchronization Question 1. Why is physical clock synchronization important? Question 2. With the price of atomic clocks or GPS coming down,
Snap-Stabilization in Message-Passing Systems Sylvie Delaët (LRI) Stéphane Devismes (CNRS, LRI) Mikhail Nesterenko (Kent State University) Sébastien Tixeuil.
Anish Arora Ohio State University Mikhail Nesterenko Kent State University Local Tolerance to Unbounded Byzantine Faults.
1 Fault tolerance in distributed systems n Motivation n robust and stabilizing algorithms n failure models n robust algorithms u decision problems u impossibility.
Fault tolerance and related issues in distributed computing Shmuel Zaks GSSI - Feb
Fault tolerance and related issues in distributed computing Shmuel Zaks GSSI - Feb
Snap-Stabilization in Message-Passing Systems Sylvie Delaët (LRI) Stéphane Devismes (CNRS, LRI) Mikhail Nesterenko (Kent State University) Sébastien Tixeuil.
Superstabilizing Protocols for Dynamic Distributed Systems Authors: Shlomi Dolev, Ted Herman Presented by: Vikas Motwani CSE 291: Wireless Sensor Networks.
Hwajung Lee. Mutual Exclusion CS p0 p1 p2 p3 Some applications are:  Resource sharing  Avoiding concurrent update on shared data  Controlling the.
CSE 486/586 CSE 486/586 Distributed Systems Leader Election Steve Ko Computer Sciences and Engineering University at Buffalo.
Snap-Stabilizing Depth-First Search on Arbitrary Networks Alain Cournier, Stéphane Devismes, Franck Petit, and Vincent Villain OPODIS 2004, December
Around Self-Stabilization Part 2: Strengthened Forms of Self-Stabilization Stéphane Devismes Post-Doc CNRS at the LRI (Paris VII)
CSE 486/586 Distributed Systems Leader Election
Model and complexity Many measures Space complexity Time complexity
When Is Agreement Possible
第1部: 自己安定の緩和 すてふぁん どぅゔぃむ ポスドク パリ第11大学 LRI CNRS あどばいざ: せばすちゃ てぃくそい
Evaluating and Optimizing Stabilizing Dining Philosophers
Jordan Adamek Mikhail Nesterenko Sébastien Tixeuil
New Variants of Self-Stabilization
Alternating Bit Protocol
CSCE 668 DISTRIBUTED ALGORITHMS AND SYSTEMS
Agreement Protocols CS60002: Distributed Systems
A Snap-Stabilizing DFS with a Lower Space Requirement
Operating System Concepts
Mutual Exclusion Problem Specifications
Robust Stabilizing Leader Election
Mutual Exclusion CS p0 CS p1 p2 CS CS p3.
CSE 486/586 Distributed Systems Leader Election
Abstraction.
Physical clock synchronization
Algorithms for Extracting Timeliness Graphs
ITEC452 Distributed Computing Lecture 7 Mutual Exclusion
Introduction to Self-Stabilization
Corona Robust Low Atomicity Peer-To-Peer Systems
Distributed Systems and Concurrency: Synchronization in Distributed Systems Majeed Kassis.
Distributed systems Consensus
CSE 486/586 Distributed Systems Leader Election
Presentation transcript:

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

Message-Passing Model 1 2 3 4 Network bidirectionnal and fully-connected Communications by messages Links asynchronous, fair, and FIFO Ids on processes Transient faults ma mb m3 m m2 m1 ma mb m3 08/04/2008 Orsay, séminaire

Stabilizing Protocols Self-Stabilization [Dijkstra, 1974] c1 c2 c3 c4 c5 c6 c7 Convergence time correct behavior uncorrect behavior correct behavior Transient Faults Arbitrary initial state 08/04/2008 Orsay, séminaire

Stabilizing Protocols Snap-Stabilization [Bui et al, 1999] c1 c2 c3 c4 c5 c6 c7 time correct behavior uncorrect behavior correct behavior Transient Faults Arbitrary initial state 08/04/2008 Orsay, séminaire

Related Works in message-passing (reliable communication in self-stabilization) ? <How old are you, Captain?> <I’m 21> ? <I’m 60> <I’m 12> [Gouda & Multari, 1991] Deterministic + Unbounded Capacity => Unbounded Counter Deterministic + Bounded Capacity => Bounded Counter [Afek & Brown, 1993] Probabilistic + Unbounded Capacity + Bounded Counter 08/04/2008 Orsay, séminaire

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 08/04/2008 Orsay, séminaire

Related Works (snap-stabilization) Nothing in the Message-Passing Model Only in State Model: Locally Shared Memory Composite Atomicity [Cournier et al, 2003] 08/04/2008 Orsay, séminaire

Snap-Stabilization in Message-Passing Systems

Case 1: unbounded capacity links Impossible for safety-distributed specifications 08/04/2008 Orsay, séminaire

Safety-distributed specification q Example : Mutual Exclusion 08/04/2008 Orsay, séminaire

Safety-distributed specification m1 m2 m3 m4 m5 sq B q m’1 m’2 m’3 m’4 08/04/2008 Orsay, séminaire

Safety-distributed specification m1 m2 m3 m4 m5 sq B q m’1 m’2 m’3 m’4 08/04/2008 Orsay, séminaire

Case 2: bounded capacity links Problem to solve: Reliable Communication 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 ? ? 08/04/2008 Orsay, séminaire

Case 2: bounded capacity links Case Study: Single-Message Capacity 0 or 1 message 0 or 1 message 08/04/2008 Orsay, séminaire

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> Statep 1 ? Until Statep = 4 Stateq ? NeigStatep NeigStateq ? ? 08/04/2008 Orsay, séminaire

Case 2: bounded capacity links Pathological Case: p <2,?,?,?> <3,NeigStatep,Qp,Ap> q <Stateq,3,Qq,Aq> <?,2,?,?> <?,1,?,?> <?,0,?,?> Statep Stateq 1 4 2 3 ? NeigStatep NeigStateq ? 3 1 2 08/04/2008 Orsay, séminaire

Generalizations Arbitrary Bounded Capacity 2xCmax+3 values Cmax values q Cmax values 1 value 1 value 08/04/2008 Orsay, séminaire

Generalizations PIF in fully-connected network m m Am m Am Am 08/04/2008 Orsay, séminaire

Application Mutual Exclusion in a fully-connected & identified network using the PIF 08/04/2008 Orsay, séminaire

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 08/04/2008 Orsay, séminaire

Principles (1/6) Let L be the process with the smallest ID L decides using ValueL which 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) 08/04/2008 Orsay, séminaire

Principles (2/6) 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 08/04/2008 Orsay, séminaire

Principles (3/6) Process p evaluates the IDs 5 3 8 2 Id? Id? 3 Id? 8 2 Phase=1 5 3 Leader=2 Id? 3 Id? 8 2 8 2 08/04/2008 Orsay, séminaire

Principles (4/6) Process p asks if Valueq = p to each other process q Ok? Phase=2 5 1 Leader=2 3 Ok=true No Value=0 Ok? 2 3 Ok? No Yes 1 2 1 2 8 2 3 3 Value=3 Value=2 08/04/2008 Orsay, séminaire

Principles (5/6) If Winner(p) then p broadcasts EXIT to every other process Winner(5)=true Winner(3)=? Exit Phase=3 Phase=1 Phase=? 5 1 3 Leader=2 Leader=? Exit Ok Ok=true Ok=? 2 3 Exit Value=0 Winner(8)=? Winner(2)=? Ok Ok Phase=1 Phase=? 1 Phase=1 Phase=? 2 1 Leader=? 2 Leader=? 8 2 Ok=? Ok=? Value=3 3 3 Value=2 08/04/2008 Orsay, séminaire

Principles (6/6) If Winner(p) then CS; If p≠L, then p broadcasts ExitCS, else p increments Valuep Winner(5)=true Winner(3)=? ExitCS <CS> Phase=4 Phase=1 5 1 3 Leader=2 Leader=? ExitCS Ok Ok=? Ok=true 2 3 Value=0 ExitCS Winner(8)=? Winner(2)=? Ok Ok Phase=1 1 Phase=1 2 1 Leader=? 2 Leader=? 8 2 Ok=? Ok=? Value=3 3 3 Value=3 Value=2 08/04/2008 Orsay, séminaire

Snap-Stabilization in message-passing is no more an open question Conclusion Snap-Stabilization in message-passing is no more an open question 08/04/2008 Orsay, séminaire

Extensions Apply snap-stabilization in message-passing to: Other topologies (tree, arbitrary topology) Other problems Other failure patterns Space requirement 08/04/2008 Orsay, séminaire

Thank you