Robust Stabilizing Leader Election

Slides:



Advertisements
Similar presentations
1 Routing Protocols I. 2 Routing Recall: There are two parts to routing IP packets: 1. How to pass a packet from an input interface to the output interface.
Advertisements

Impossibility of Distributed Consensus with One Faulty Process
The weakest failure detector question in distributed computing Petr Kouznetsov Distributed Programming Lab EPFL.
Teaser - Introduction to Distributed Computing
Brewer’s Conjecture and the Feasibility of Consistent, Available, Partition-Tolerant Web Services Authored by: Seth Gilbert and Nancy Lynch Presented by:
Snap-stabilizing Committee Coordination Borzoo Bonakdarpour Stephane Devismes Franck Petit IEEE International Parallel and Distributed Processing Symposium.
Chapter 15 Basic Asynchronous Network Algorithms
Leader Election Let G = (V,E) define the network topology. Each process i has a variable L(i) that defines the leader.  i,j  V  i,j are non-faulty.
Snap-Stabilization in Message-Passing Systems Sylvie Delaët (LRI) Stéphane Devismes (CNRS, LRI) Mikhail Nesterenko (Kent State University) Sébastien Tixeuil.
Timeliness, Failure Detectors, and Consensus Performance Alex Shraer Joint work with Dr. Idit Keidar Technion – Israel Institute of Technology In PODC.
Fast Leader (Full) Recovery despite Dynamic Faults Ajoy K. Datta Stéphane Devismes Lawrence L. Larmore Sébastien Tixeuil.
Linearizing Peer-to-Peer Systems with Oracles by Rizal Mohd Nor Mikhail Nesterenko Sébastien Tixeuil SSS 2013 Nov 13-16, 2013.
CSCE 668 DISTRIBUTED ALGORITHMS AND SYSTEMS Fall 2011 Prof. Jennifer Welch CSCE 668 Self Stabilization 1.
Lecture 4: Elections, Reset Anish Arora CSE 763 Notes include material from Dr. Jeff Brumfield.
Introduction to Self-Stabilization Stéphane Devismes.
UPV / EHU Efficient Eventual Leader Election in Crash-Recovery Systems Mikel Larrea, Cristian Martín, Iratxe Soraluze University of the Basque Country,
Byzantine Generals Problem: Solution using signed messages.
Failure Detectors. Can we do anything in asynchronous systems? Reliable broadcast –Process j sends a message m to all processes in the system –Requirement:
From Self- to Snap- Stabilization Alain Cournier, Stéphane Devismes, and Vincent Villain SSS’2006, November 17-19, Dallas (USA)
UPV - EHU An Evaluation of Communication-Optimal P Algorithms Mikel Larrea Iratxe Soraluze Roberto Cortiñas Alberto Lafuente Department of Computer Architecture.
CPSC 689: Discrete Algorithms for Mobile and Wireless Systems Spring 2009 Prof. Jennifer Welch.
Distributed systems Module 2 -Distributed algorithms Teaching unit 1 – Basic techniques Ernesto Damiani University of Bozen Lesson 3 – Distributed Systems.
 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.
Timeliness, Failure Detectors, and Consensus Performance Idit Keidar and Alexander Shraer Technion – Israel Institute of Technology.
CPSC 668Self Stabilization1 CPSC 668 Distributed Algorithms and Systems Spring 2008 Prof. Jennifer Welch.
Performance Comparison of Existing Leader Election Algorithms for Dynamic Networks Mobile Ad Hoc (Dynamic) Networks: Collection of potentially mobile computing.
 Idit Keidar, Principles of Reliable Distributed Systems, Technion EE, Spring Principles of Reliable Distributed Systems Lecture 6: Impossibility.
 Idit Keidar, Principles of Reliable Distributed Systems, Technion EE, Spring Principles of Reliable Distributed Systems Lecture 12: Impossibility.
An Energy Efficient Leaser Election Algorithm for Mobile Ad Hoc Networks Paolo Cemim, Vinicius De Antoni Instituto de Informatica Universidade Federal.
 Idit Keidar, Principles of Reliable Distributed Systems, Technion EE, Spring Principles of Reliable Distributed Systems Lecture 7: Failure Detectors.
Efficient Algorithms to Implement Failure Detectors and Solve Consensus in Distributed Systems Mikel Larrea Departamento de Arquitectura y Tecnología de.
Composition Model and its code. bound:=bound+1.
On Probabilistic Snap-Stabilization Karine Altisen Stéphane Devismes University of Grenoble.
Selected topics in distributed computing Shmuel Zaks
On Probabilistic Snap-Stabilization Karine Altisen Stéphane Devismes University of Grenoble.
CS4231 Parallel and Distributed Algorithms AY 2006/2007 Semester 2 Lecture 10 Instructor: Haifeng YU.
Computer Science and Engineering Parallel and Distributed Processing CSE 8380 February 10, 2005 Session 9.
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)
Approximation of δ-Timeliness Carole Delporte-Gallet, LIAFA UMR 7089, Paris VII Stéphane Devismes, VERIMAG UMR 5104, Grenoble I Hugues Fauconnier, LIAFA.
Distributed systems Consensus Prof R. Guerraoui Distributed Programming Laboratory.
Weak vs. Self vs. Probabilistic Stabilization Stéphane Devismes (CNRS, LRI, France) Sébastien Tixeuil (LIP6-CNRS & INRIA, France) Masafumi Yamashita (Kyushu.
SysRép / 2.5A. SchiperEté The consensus problem.
1 Eventual Leader Election in Evolving Mobile Networks Luciana Arantes 1, Fabiola Greve 2, Véronique Simon 1, and Pierre Sens 1 1 Université de Paris 6.
Snap-Stabilization in Message-Passing Systems Sylvie Delaët (LRI) Stéphane Devismes (CNRS, LRI) Mikhail Nesterenko (Kent State University) Sébastien Tixeuil.
Agreement in Distributed Systems n definition of agreement problems n impossibility of consensus with a single crash n solvable problems u consensus with.
1 Fault tolerance in distributed systems n Motivation n robust and stabilizing algorithms n failure models n robust algorithms u decision problems u impossibility.
Self-Stabilizing Algorithm with Safe Convergence building an (f,g)-Alliance Fabienne Carrier Ajoy K. Datta Stéphane Devismes Lawrence L. Larmore Yvan Rivierre.
Snap-Stabilization in Message-Passing Systems Sylvie Delaët (LRI) Stéphane Devismes (CNRS, LRI) Mikhail Nesterenko (Kent State University) Sébastien Tixeuil.
Around Self-Stabilization Part 2: Strengthened Forms of Self-Stabilization Stéphane Devismes Post-Doc CNRS at the LRI (Paris VII)
Fundamentals of Fault-Tolerant Distributed Computing In Asynchronous Environments Paper by Felix C. Gartner Graeme Coakley COEN 317 November 23, 2003.
Network Layer.
第1部: 自己安定の緩和 すてふぁん どぅゔぃむ ポスドク パリ第11大学 LRI CNRS あどばいざ: せばすちゃ てぃくそい
New Variants of Self-Stabilization
Analysis of Link Reversal Routing Algorithms
Alternating Bit Protocol
Parallel and Distributed Algorithms
Fault-tolerant Consensus in Directed Networks Lewis Tseng Boston College Oct. 13, 2017 (joint work with Nitin H. Vaidya)
A Snap-Stabilizing DFS with a Lower Space Requirement
PERSPECTIVES ON THE CAP THEOREM
Consensus, FLP, and Paxos
Algorithms for Extracting Timeliness Graphs
Introduction to Self-Stabilization
EEC 688/788 Secure and Dependable Computing
Leader Election Ch. 3, 4.1, 15.1, 15.2 Chien-Liang Fok 4/29/2019
Corona Robust Low Atomicity Peer-To-Peer Systems
Snap-Stabilization in Message-Passing Systems
Distributed systems Consensus
Presentation transcript:

Robust Stabilizing Leader Election Carole Delporte-Gallet (LIAFA) Stéphane Devismes (CNRS, LRI) Hugues Fauconnier (LIAFA) LIAFA

A convergence property Stabilization Self-Stabilization [Dijkstra, 1974]: Starting from any configuration, a self-stabilizing system reaches in a finite time a configuration c such that any suffix starting from c satisfies the intended specification. Pseudo-Stabilization [Burns, Gouda, and Miller, 1993]: Starting from any configuration, any execution of a pseudo-stabilizing system has a non-empty suffix that satisfies the intended specification. A convergence property + A closure property November 14-16, 2007 SSS'07, Paris

Self- vs. Pseudo- Stabilization Same Convergence Property Illegitimate States Legitimate States November 14-16, 2007 SSS'07, Paris

Self- vs. Pseudo- Stabilization Strong Closure vs. Ultimate Closure Illegitimate States Legitimate States November 14-16, 2007 SSS'07, Paris

Self- vs. Pseudo- Stabilization Strong Closure vs. Ultimate Closure Illegitimate States Legitimate States November 14-16, 2007 SSS'07, Paris

In partial synchronous model ? Robust Stabilization Gopal and Perry, PODC’93 Beauquier and Kekkonen-Moneta, JSS’97 Anagnostou and Hadzilacos, WDAG’93 In partial synchronous model ? Les deux premiers: systèmes synchrones Le troisième: résultat d’impossibilité dans les réseaux asynchrones November 14-16, 2007 SSS'07, Paris

weak reliability and synchrony assumptions Leader Election Robust Stabilizing Leader Election with: weak reliability and synchrony assumptions November 14-16, 2007 SSS'07, Paris

Model Network: fully-connected n Processes (numbered from 1 to n): timely may crash (an arbitrary number of processes may crash) Variables: initially arbitrary assigned Links: Unidirectional Initially not necessarily empty No order on the message deliverance Variable reliability and timeliness assumptions Two links between each pair of processes November 14-16, 2007 SSS'07, Paris

Communication-Efficiency [Larrea, Fernandez, and Arevalo, 2000]: « An algorithm is communication-efficient if it eventually only uses n - 1 unidirectional links » November 14-16, 2007 SSS'07, Paris

Self-Stabilizing Leader Election in a full timely network? Yes + communication-efficiently November 14-16, 2007 SSS'07, Paris

Principle of the algorithm A process p periodically sends ALIVE to every other if Leader = p Alive,1 Leader=1 4 3 2 1 Leader=1 Alive,1 Alive,1 Alive,2 Alive,2 Leader=2 Leader=2 Alive,2 November 14-16, 2007 SSS'07, Paris

Principle of the algorithm When a process p such that Leader = p receives ALIVE from q, then Leader := q if q < p Alive,1 Leader=1 4 3 2 1 Leader=1 Alive,1 Alive,1 Alive,2 Alive,2 Leader=2 Leader=1 Leader=2 Alive,2 November 14-16, 2007 SSS'07, Paris

Principle of the algorithm Any process q such that Leader <> q always chooses as leader the process from which it receives ALIVE the most recently Alive,1 Leader=1 4 3 2 1 Leader=1 Alive,1 Alive,1 Leader=2 Leader=1 Leader=1 November 14-16, 2007 SSS'07, Paris

Principle of the algorithm On Time out, a process p sets Leader to p Alive,1 Leader=1 Leader=3 4 3 2 1 Leader=1 Alive,1 Alive,1 Alive,2 Alive,2 Leader=2 Leader=2 Leader=4 Alive,2 November 14-16, 2007 SSS'07, Paris

Communication-Efficient Self-Stabilizing Leader Election in a system where at most one link is asynchronous? No Is-it possible a weaker system ? November 14-16, 2007 SSS'07, Paris

The process chooses another leader Impossibility of Communication-Efficiency in a system with at most one asynchronous link Claim: Any process p such that Leader <> p must periodically receive messages within a bounded time otherwise it chooses another leader Claim: not obligatorily from the leader The process chooses another leader November 14-16, 2007 SSS'07, Paris

Self-Stabilizing (non communication-efficient) Leader Election in a system where some links are asynchronous? Yes November 14-16, 2007 SSS'07, Paris

Self-Stabilizing Leader Election in a system with a timely routing overlay For each pair of alive processes (p,q), there exists at least two paths of timely links: From p to q From q to p November 14-16, 2007 SSS'07, Paris

Principle of the algorithm Each process computes the set of alive processes and chooses as leader the smallest process of this set To compute the set: Each process p periodically sends ALIVE,p to every other process Any ALIVE,p message is repeated n - 1 times (any other process periodically receives such a message) November 14-16, 2007 SSS'07, Paris

Self-Stabilizing Leader Election in a system without timely routing overlay ? No November 14-16, 2007 SSS'07, Paris

Pseudo-Stabilizing Leader Election in a system where Self-Stabilizing Leader Election is not possible ? Yes + communication-efficiently In a system having a source and fair links (adaptation of an algorithm of [Aguilera et al, PODC’03]) November 14-16, 2007 SSS'07, Paris

Algorithm for systems with Source + fair links A process p periodically sends ALIVE to every other if Leader = p Each process stores in Active its ID + the IDs of each process from which it recently receives ALIVE Each process chooses its leader among the processes in its Active set Problem: we cannot use the IDs to choose a leader 2 1 Source Alive,1 <1,2> <1> <1,2> <2> Alive,2 November 14-16, 2007 SSS'07, Paris

Systems with Source + fair links Accusation Counter p stores in Counter[p] how many times it was suspected to be crashed When p suspects its leader: it sends an ACCUSATION to LEADER, and chooses as new leader the process in Active with the smallest accusation counter p periodically sends ALIVE,Counter[p] to every other if Leader = p Problem: the accusation counter of the source can increase infinitely often 1 2 3 Source 3 2 <3> <1,3> 3,C=2 3,C=2 (we use IDs to break ties) Accuse 1,C=1 1 <1,3> 4 <2> <2,3> 1,C=1 November 14-16, 2007 SSS'07, Paris

Phase Counter 1 2 3 Source 2 <1,3> <3> 1 <1,3> 4 Each process maintains in Phase[p] the number of times it looses the leadership p periodically sends ALIVE,Counter[p],Phase[p] to every other if Leader = p p increments Counter[p] only when receiving ACCUSATION,ph with ph = Phase[p] 1 2 3 Source 2 <1,3> <3> Ph=3 Ph=4 (previously 3) 3,C=2 3,C=2 1,C=1 Accuse,3 Ph=1 1 <1,3> 4 <2,3> <2> Ph=2 1,C=1 November 14-16, 2007 SSS'07, Paris

Communication-Efficient Pseudo-Stabilizing Leader Election in a system having only a source? No, but a non communication-efficient pseudo-stabilizing leader election can be done (techniques similar to those used in the algorithm of [Aguilera et al, PODC’03]) November 14-16, 2007 SSS'07, Paris

Result Summary ce-SS SS ce-PS PS Full-Timely Yes Bi-source No Timely routing ? Source + fair links Source Totally asynchronous November 14-16, 2007 SSS'07, Paris

Perspectives Communication-efficient pseudo-stabilizing leader election in a system with timely routing overlay Extend these results to other topologies and models Robust stabilizing decision problems ? Exemple de modèle: only a finite number of processes crashed November 14-16, 2007 SSS'07, Paris

November 14-16, 2007 SSS'07, Paris