An evaluation of ring-based algorithms for the Eventually Perfect failure detector class Joachim Wieland Mikel Larrea Alberto Lafuente The University of.

Slides:



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

Prof R. Guerraoui Distributed Programming Laboratory
CS 542: Topics in Distributed Systems Diganta Goswami.
DISTRIBUTED SYSTEMS II FAULT-TOLERANT BROADCAST Prof Philippas Tsigas Distributed Computing and Systems Research Group.
A General Characterization of Indulgence R. Guerraoui EPFL joint work with N. Lynch (MIT)
Teaser - Introduction to Distributed Computing
Failure Detection The ping-ack failure detector in a synchronous system satisfies – A: completeness – B: accuracy – C: neither – D: both.
IMPOSSIBILITY OF CONSENSUS Ken Birman Fall Consensus… a classic problem  Consensus abstraction underlies many distributed systems and protocols.
Distributed Systems Overview Ali Ghodsi
P. Kouznetsov, 2006 Abstracting out Byzantine Behavior Peter Druschel Andreas Haeberlen Petr Kouznetsov Max Planck Institute for Software Systems.
Distributed Computing 8. Impossibility of consensus Shmuel Zaks ©
CS 425 / ECE 428 Distributed Systems Fall 2014 Indranil Gupta (Indy) Lecture 11: Leader Election All slides © IG.
Failure detector The story goes back to the FLP’85 impossibility result about consensus in presence of crash failures. If crash can be detected, then consensus.
1 © P. Kouznetsov On the weakest failure detector for non-blocking atomic commit Rachid Guerraoui Petr Kouznetsov Distributed Programming Laboratory Swiss.
Failure Detectors CS 717 Ashish Motivala Dec 6 th 2001.
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.
Failures and Consensus. Coordination If the solution to availability and scalability is to decentralize and replicate functions and data, how do we coordinate.
Failure Detectors. Can we do anything in asynchronous systems? Reliable broadcast –Process j sends a message m to all processes in the system –Requirement:
UPV / EHU Distributed Algorithms for Failure Detection and Consensus in Crash, Crash-Recovery and Omission Environments Mikel Larrea Distributed Systems.
UPV - EHU An Evaluation of Communication-Optimal P Algorithms Mikel Larrea Iratxe Soraluze Roberto Cortiñas Alberto Lafuente Department of Computer Architecture.
Failure Detectors & Consensus. Agenda Unreliable Failure Detectors (CHANDRA TOUEG) Reducibility ◊S≥◊W, ◊W≥◊S Solving Consensus using ◊S (MOSTEFAOUI RAYNAL)
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.
Asynchronous Consensus (Some Slides borrowed from ppt on Web.(by Ken Birman) )
Distributed Systems Fall 2009 Coordination and agreement, Multicast, and Message ordering.
1 Secure Failure Detection in TrustedPals Felix Freiling University of Mannheim San Sebastian Aachen Mannheim Joint Work with: Marjan Ghajar-Azadanlou.
1 Principles of Reliable Distributed Systems Lecture 5: Failure Models, Fault-Tolerant Broadcasts and State-Machine Replication Spring 2005 Dr. Idit Keidar.
UPV / EHU Brief Announcement: An Efficient Failure Detector for Omission Environments R. Cortiñas, I. Soraluze, A. Lafuente, M. Larrea University of the.
1 Principles of Reliable Distributed Systems Recitation 8 ◊S-based Consensus Spring 2009 Alex Shraer.
Distributed systems Module 2 -Distributed algorithms Teaching unit 1 – Basic techniques Ernesto Damiani University of Bozen Lesson 4 – Consensus and reliable.
 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.
1 Failure Detectors: A Perspective Sam Toueg LIX, Ecole Polytechnique Cornell University.
Distributed Algorithms: Agreement Protocols. Problems of Agreement l A set of processes need to agree on a value (decision), after one or more processes.
Distributed Systems Tutorial 4 – Solving Consensus using Chandra-Toueg’s unreliable failure detector: A general Quorum-Based Approach.
 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.
1 Principles of Reliable Distributed Systems Recitation 7 Byz. Consensus without Authentication ◊S-based Consensus Spring 2008 Alex Shraer.
Composition Model and its code. bound:=bound+1.
 Idit Keidar, Principles of Reliable Distributed Systems, Technion EE, Spring Principles of Reliable Distributed Systems Lecture 8: Failure Detectors.
Distributed Consensus Reaching agreement is a fundamental problem in distributed computing. Some examples are Leader election / Mutual Exclusion Commit.
Failure detection and consensus Ludovic Henrio CNRS - projet OASIS Distributed Algorithms.
Distributed Algorithms – 2g1513 Lecture 9 – by Ali Ghodsi Fault-Tolerance in Distributed Systems.
Review for Exam 2. Topics included Deadlock detection Resource and communication deadlock Graph algorithms: Routing, spanning tree, MST, leader election.
1 © R. Guerraoui Regular register algorithms R. Guerraoui Distributed Programming Laboratory lpdwww.epfl.ch.
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.
Chap 15. Agreement. Problem Processes need to agree on a single bit No link failures A process can fail by crashing (no malicious behavior) Messages take.
SysRép / 2.5A. SchiperEté The consensus problem.
1 © R. Guerraoui Distributed algorithms Prof R. Guerraoui Assistant Marko Vukolic Exam: Written, Feb 5th Reference: Book - Springer.
1 Fault tolerance in distributed systems n Motivation n robust and stabilizing algorithms n failure models n robust algorithms u decision problems u impossibility.
Failure Detectors n motivation n failure detector properties n failure detector classes u detector reduction u equivalence between classes n consensus.
Fault-Tolerant Broadcast Terminology: broadcast(m) a process broadcasts a message to the others deliver(m) a process delivers a message to itself 1.
Fault tolerance and related issues in distributed computing Shmuel Zaks GSSI - Feb
CSE 486/586 CSE 486/586 Distributed Systems Leader Election Steve Ko Computer Sciences and Engineering University at Buffalo.
Distributed Systems Lecture 9 Leader election 1. Previous lecture Middleware RPC and RMI – Marshalling 2.
Fundamentals of Fault-Tolerant Distributed Computing In Asynchronous Environments Paper by Felix C. Gartner Graeme Coakley COEN 317 November 23, 2003.
Unreliable Failure Detectors for Reliable Distributed Systems Tushar Deepak Chandra Sam Toueg Presentation for EECS454 Lawrence Leinweber.
Distributed Systems, Consensus and Replicated State Machines
Presented By: Md Amjad Hossain
ACM Transactions on Information and System Security, November 2001
EEC 688/788 Secure and Dependable Computing
EEC 688/788 Secure and Dependable Computing
Distributed Algorithms for Failure Detection in Crash Environments
Algorithms for Extracting Timeliness Graphs
EEC 688/788 Secure and Dependable Computing
EEC 688/788 Secure and Dependable Computing
EEC 688/788 Secure and Dependable Computing
EEC 688/788 Secure and Dependable Computing
Presentation transcript:

An evaluation of ring-based algorithms for the Eventually Perfect failure detector class Joachim Wieland Mikel Larrea Alberto Lafuente The University of the Basque Country

An evaluation of ring-based algorithms for the Eventually Perfect failure detector class - PDP Contents Motivation Unreliable failure detectors System model Communication-efficient implementations of  P A non communication-efficient approach Performance evaluation Conclusion

An evaluation of ring-based algorithms for the Eventually Perfect failure detector class - PDP Motivation FLP impossibility result (Fischer, Lynch, and Paterson): Consensus cannot be solved deterministically in an asynchronous system subject to even a single process crash nre Possibility result (Chandra and Toueg): Consensus can be solved in an asynchronous system subject to failures with an unreliable failure detector

An evaluation of ring-based algorithms for the Eventually Perfect failure detector class - PDP Motivation (2) Evaluate different ring-based algorithms for  P Two kinds of performance parameters: – Communication efficiency – Quality of service Two families of algorithms: – Communication-efficient  P + some optimizations – Non communication-efficient  Q + transformation to  P modular approach designed with quality of service in mind

An evaluation of ring-based algorithms for the Eventually Perfect failure detector class - PDP Unreliable failure detectors Distributed oracle that provides (possibly incorrect) hints about the operational status of other processes Abstractly characterized in terms of two properties: completeness and accuracy – Completeness characterizes the degree to which crashed processes are suspected by correct processes – Accuracy characterizes the degree to which correct processes are not suspected, i.e., restricts the false suspicions that a failure detector can make

An evaluation of ring-based algorithms for the Eventually Perfect failure detector class - PDP Unreliable failure detectors (2)

An evaluation of ring-based algorithms for the Eventually Perfect failure detector class - PDP System model Finite set of n processes  = {p 1, p 2,..., p n } that communicate only by message-passing Every pair of processes is connected by two unidirectional and reliable communication links Processes can fail by crashing. Once a process crashes, it does not recover Processes are arranged in a logical ring Partially synchronous system

An evaluation of ring-based algorithms for the Eventually Perfect failure detector class - PDP Communication-efficient implementations of  P A basic communication-efficient algorithm (LLW 0 ): – each process p sends heartbeats to the processes in the ring between itself (excluded) and its successor succ p (included) – p monitors its predecessor pred p by hearing heartbeats from it upon timeout on pred p, p suspects it and monitors the predecessor of pred p – if p erroneously suspected q, p starts monitoring q again – processes propagate the list of suspicions around the ring, piggybacked in the heartbeats upon reception of the list of suspicions from pred p, p builds a new list by merging the list received with its local suspicions. Then, p sets succ p to its nearest and non suspected process

An evaluation of ring-based algorithms for the Eventually Perfect failure detector class - PDP Communication-efficient implementations of  P (2) p1p1 p2p2 p3p3 p4p4 p6p6 p5p5 pred 1 = p 6, succ 1 = p 2 pred 2 = p 1 succ 2 = p 3 pred 3 = p 2 succ 3 = p 4 pred 4 = p 3, succ 4 = p 5 pred 5 = p 4 succ 5 = p 6 pred 6 = p 5 succ 6 = p 1 pred 6 = p 4 succ 6 = p 1 { p 5 } pred 4 = p 3, succ 4 = p 6 LLW 0

An evaluation of ring-based algorithms for the Eventually Perfect failure detector class - PDP Communication-efficient implementations of  P (3) Providing a faster stabilization of the ring (LLW 1 ): sending sporadic one-to-one messages – upon timeout on pred p, p sends (START, p) to pred(pred p ). Upon reception of this message, pred(pred p ) sets its successor to p – when p learns that it is erroneously suspecting q, p sends (START, q) to p’s current pred p. Upon reception of this message, p’s current pred p sets its successor to q Broadcasting suspicions to reduce the detection latency (LLW 2 ): sending sporadic one-to-all messages – upon timeout on pred p, p sends (SUSPICION, pred p ) to all processes – when a process p is being erroneously suspected, it sends (REFUTATION, p) to all processes

An evaluation of ring-based algorithms for the Eventually Perfect failure detector class - PDP Communication-efficient implementations of  P (4) p1p1 p2p2 p3p3 p4p4 p6p6 p5p5 pred 1 = p 6, succ 1 = p 2 pred 2 = p 1 succ 2 = p 3 pred 3 = p 2 succ 3 = p 4 pred 4 = p 3, succ 4 = p 5 pred 5 = p 4 succ 5 = p 6 pred 6 = p 5 succ 6 = p 1 pred 6 = p 4 succ 6 = p 1 { p 5 } pred 4 = p 3, succ 4 = p 6 (START, p 6 ) LLW 1

An evaluation of ring-based algorithms for the Eventually Perfect failure detector class - PDP Communication-efficient implementations of  P (5) p1p1 p2p2 p3p3 p4p4 p6p6 p5p5 pred 1 = p 6, succ 1 = p 2 pred 2 = p 1 succ 2 = p 3 pred 3 = p 2 succ 3 = p 4 pred 4 = p 3, succ 4 = p 5 pred 5 = p 4 succ 5 = p 6 pred 6 = p 5 succ 6 = p 1 pred 6 = p 4 succ 6 = p 1 { p 5 } pred 4 = p 3, succ 4 = p 6 (SUSPICION, p 5 ) (START, p 6 ) LLW 2

An evaluation of ring-based algorithms for the Eventually Perfect failure detector class - PDP A non communication-efficient approach A basic ring-based algorithm implementing  Q: – identical monitoring schema to LLW 0 + … – … the list of suspicions does not circulate around the ring – … every process p periodically sends (START, p) to pred p. When a process p receives (START, new_succ), it sets succ p to new_succ Providing a faster stabilization of the ring Transforming  Q into  P: – propagating suspicions through the ring (LLW QP1 ) – broadcasting suspicions to reduce the detection latency (LLW QP2 )

An evaluation of ring-based algorithms for the Eventually Perfect failure detector class - PDP A non communication-efficient approach (2) p1p1 p2p2 p3p3 p4p4 p6p6 p5p5 pred 1 = p 6, succ 1 = p 2 pred 2 = p 1 succ 2 = p 3 pred 3 = p 2 succ 3 = p 4 pred 4 = p 3, succ 4 = p 5 pred 5 = p 4 succ 5 = p 6 pred 6 = p 5 succ 6 = p 1 pred 6 = p 4 succ 6 = p 1 pred 4 = p 3, succ 4 = p 6 LLW Q

An evaluation of ring-based algorithms for the Eventually Perfect failure detector class - PDP Performance evaluation

An evaluation of ring-based algorithms for the Eventually Perfect failure detector class - PDP Performance evaluation (2)

An evaluation of ring-based algorithms for the Eventually Perfect failure detector class - PDP Performance evaluation (3)

An evaluation of ring-based algorithms for the Eventually Perfect failure detector class - PDP Performance evaluation (4)

An evaluation of ring-based algorithms for the Eventually Perfect failure detector class - PDP Performance evaluation (5)

An evaluation of ring-based algorithms for the Eventually Perfect failure detector class - PDP Performance evaluation (6)

An evaluation of ring-based algorithms for the Eventually Perfect failure detector class - PDP Conclusion Evaluation of two families of heartbeat-, ring-based algorithms implementing  P Communication-efficient family – n links are eventually used Non communication-efficient family – modular approach – n + C links are eventually used (with 1 ≤ C ≤ n) – better quality of service