Approximation of δ-Timeliness Carole Delporte-Gallet, LIAFA UMR 7089, Paris VII Stéphane Devismes, VERIMAG UMR 5104, Grenoble I Hugues Fauconnier, LIAFA.

Slides:



Advertisements
Similar presentations
Global States.
Advertisements

Impossibility of Distributed Consensus with One Faulty Process
CS 542: Topics in Distributed Systems Diganta Goswami.
DISTRIBUTED SYSTEMS II FAULT-TOLERANT BROADCAST Prof Philippas Tsigas Distributed Computing and Systems Research Group.
Chapter 6 - Convergence in the Presence of Faults1-1 Chapter 6 Self-Stabilization Self-Stabilization Shlomi Dolev MIT Press, 2000 Shlomi Dolev, All Rights.
Lecture 8: Asynchronous Network Algorithms
CSE 486/586, Spring 2014 CSE 486/586 Distributed Systems Reliable Multicast Steve Ko Computer Sciences and Engineering University at Buffalo.
Chapter 15 Basic Asynchronous Network Algorithms
An evaluation of ring-based algorithms for the Eventually Perfect failure detector class Joachim Wieland Mikel Larrea Alberto Lafuente The University of.
CS542 Topics in Distributed Systems Diganta Goswami.
Distributed Computing 5. Snapshot Shmuel Zaks ©
Outline. Theorem For the two processor network, Bit C(Leader) = Bit C(MaxF) = 2[log 2 ((M + 2)/3.5)] and Bit C t (Leader) = Bit C t (MaxF) = 2[log 2 ((M.
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:
UPV - EHU An Evaluation of Communication-Optimal P Algorithms Mikel Larrea Iratxe Soraluze Roberto Cortiñas Alberto Lafuente Department of Computer Architecture.
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) )
Idit Keidar, Principles of Reliable Distributed Systems, Technion EE, Spring Principles of Reliable Distributed Systems Lecture 6: Synchronous Byzantine.
1 Fault-Tolerant Consensus. 2 Failures in Distributed Systems Link failure: A link fails and remains inactive; the network may get partitioned Crash:
1 Secure Failure Detection in TrustedPals Felix Freiling University of Mannheim San Sebastian Aachen Mannheim Joint Work with: Marjan Ghajar-Azadanlou.
What Can Be Implemented Anonymously ? Paper by Rachid Guerraui and Eric Ruppert Presentation by Amir Anter 1.
1 Principles of Reliable Distributed Systems Lecture 5: Failure Models, Fault-Tolerant Broadcasts and State-Machine Replication Spring 2005 Dr. Idit Keidar.
CPSC 668Set 15: Broadcast1 CPSC 668 Distributed Algorithms and Systems Fall 2006 Prof. Jennifer Welch.
Distributed systems Module 2 -Distributed algorithms Teaching unit 1 – Basic techniques Ernesto Damiani University of Bozen Lesson 4 – Consensus and reliable.
Aran Bergman, Principles of Reliable Distributed Systems, Technion EE, Spring Principles of Reliable Distributed Systems Recitation 5: Reliable.
 Idit Keidar, Principles of Reliable Distributed Systems, Technion EE, Spring Principles of Reliable Distributed Systems Lecture 12: Impossibility.
Distributed Algorithms: Agreement Protocols. Problems of Agreement l A set of processes need to agree on a value (decision), after one or more processes.
On the Cost of Fault-Tolerant Consensus When There are no Faults Idit Keidar & Sergio Rajsbaum Appears in SIGACT News; MIT Tech. Report.
Systems of Distributed systems Module 2 - Distributed algorithms Teaching unit 2 – Properties of distributed algorithms Ernesto Damiani University of Bozen.
Distributed Systems Terminating Reliable Broadcast Prof R. Guerraoui Distributed Programming Laboratory.
 Idit Keidar, Principles of Reliable Distributed Systems, Technion EE, Spring Principles of Reliable Distributed Systems Lecture 7: Failure Detectors.
Composition Model and its code. bound:=bound+1.
Consensus and Related Problems Béat Hirsbrunner References G. Coulouris, J. Dollimore and T. Kindberg "Distributed Systems: Concepts and Design", Ed. 4,
Logical Clocks (2). Topics r Logical clocks r Totally-Ordered Multicasting r Vector timestamps.
On Probabilistic Snap-Stabilization Karine Altisen Stéphane Devismes University of Grenoble.
1 A Modular Approach to Fault-Tolerant Broadcasts and Related Problems Author: Vassos Hadzilacos and Sam Toueg Distributed Systems: 526 U1580 Professor:
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.
04/06/2016Applied Algorithmics - week101 Dynamic vs. Static Networks  Ideally, we would like distributed algorithms to be: dynamic, i.e., be able to.
1 © R. Guerraoui Regular register algorithms R. Guerraoui Distributed Programming Laboratory lpdwww.epfl.ch.
Agenda Fail Stop Processors –Problem Definition –Implementation with reliable stable storage –Implementation without reliable stable storage Failure Detection.
CSE 486/586, Spring 2013 CSE 486/586 Distributed Systems Global States Steve Ko Computer Sciences and Engineering University at Buffalo.
CS 425/ECE 428/CSE424 Distributed Systems (Fall 2009) Lecture 9 Consensus I Section Klara Nahrstedt.
Totally Ordered Broadcast in the face of Network Partitions [Keidar and Dolev,2000] INF5360 Student Presentation 4/3-08 Miran Damjanovic
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.
Impossibility of Distributed Consensus with One Faulty Process By, Michael J.Fischer Nancy A. Lynch Michael S.Paterson.
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.
Replication predicates for dependent-failure algorithms Flavio Junqueira and Keith Marzullo University of California, San Diego Euro-Par Conference, Lisbon,
Fault tolerance and related issues in distributed computing Shmuel Zaks GSSI - Feb
1 Fault-Tolerant Consensus. 2 Communication Model Complete graph Synchronous, network.
CIS 825 Review session. P1: Assume that processes are arranged in a ring topology. Consider the following modification of the Lamport’s mutual exclusion.
Distributed Systems Lecture 9 Leader election 1. Previous lecture Middleware RPC and RMI – Marshalling 2.
Distributed Systems Lecture 6 Global states and snapshots 1.
CSE 486/586 Distributed Systems Reliable Multicast --- 1
Coordination and Agreement
Fault-tolerant Consensus in Directed Networks Lewis Tseng Boston College Oct. 13, 2017 (joint work with Nitin H. Vaidya)
Robust Stabilizing Leader Election
Algorithms for Extracting Timeliness Graphs
Introduction to Self-Stabilization
Failure Detectors motivation failure detector properties
Distributed systems Consensus
Distributed Systems Terminating Reliable Broadcast
CSE 486/586 Distributed Systems Reliable Multicast --- 1
Presentation transcript:

Approximation of δ-Timeliness Carole Delporte-Gallet, LIAFA UMR 7089, Paris VII Stéphane Devismes, VERIMAG UMR 5104, Grenoble I Hugues Fauconnier, LIAFA UMR 7089, Paris VII LIAFA

Motivation Settings – Asynchronous message-passing distributed system with process crashes Problem – ∃ t, ∃ P = p, …,q such that ∀ t’>t every message sent through P arrives to q in at most δ time units Output – all correct processes eventually agree on such a path 2SSS'201022/09/2010 We want to solve this problem with a general algorithm

Framework (1/3) Eventual Property – e.g., δ-timeliness of a path: ɸ P (t) ⇔ every message sent through P = p,…,q at time t arrives to q in at most δ time units – Pɸ P ⇔∃ t such that ∀ t’>t, ɸ P (t’) = true Pɸ P is true ⇔ ɸ P is eventually forever true Pɸ P is false ⇔ ɸ P is infinitely often false Set of predicates S P – e.g., {Pɸ P : P is an elementary path from p to q } – If ∃ P ∈ S P : P is true in the run, then All correct processes eventually agree on P’ such that P’ is true in the run e.g., problem of the previous slide 22/09/2010SSS'20103

Framework (2/3) Approximate a property is often too hard ! – e.g., δ-timeliness of a link (p,q): Proposition: In any algorithm that approximates the δ-timeliness of a (p,q), p must eventually sends messages at every clock tick Approximate (P,Q) – P,Q are predicates –P ⇒ Q–P ⇒ Q – e.g, (δ-timeliness of P, Δ-timeliness of P ) with Δ≥ δ – Set of pairs of predicates (P 0,Q 0 ), (P 1,Q 1 ) … Extraction Algorithm – If ∃ P i : P i is true in the run, then All correct processes eventually agree on Q j such that Q j is true in the run 22/09/2010SSS'20104

Framework (3/3) Other problems: – Extraction of tree containing at least all correct processes whose all paths from the root are Δ- timely – Extraction of ring among all correct processes whose all links are Δ-timely – … 22/09/2010SSS'20105

Outline Model Approximation and Extraction Case-Study: δ-Timeliness – Approximation for δ-Timeliness of a link – Extraction of δ-Timeliness graphs Conclusion 6SSS'201022/09/2010

System Settings Processes: – Synchronous (able to take a step at each clock tick → accurately measure the time) – Some process crashes (correct / faulty) Communication: – Fully connected graph – Messages – Links: Reliable (no message loss) FIFO 7SSS'201022/09/2010

Reliable Broadcast (possible because links are reliable) Two primitives: Broadcast(m), Deliver(m) – Validity: If a correct process invokes Broadcast(m) then it eventually executes Deliver(m) – Agreement: If a process executes Deliver(m), then all other correct processes eventually execute Deliver(m) – Integrity: For every message m, every process executes Deliver(m) at most once, and only if sender(m) previously invokes Broadcast(m) 22/09/2010SSS'20108

Approximation Algorithm Let (P,Q) be a pair of predicates such that P ⇒ Q An approximation algorithm A for process p of predicates (P,Q) is an algorithm with a variable Out A p such that: – If P is true, then Out A p is eventually forever true – If Q is false, then Out A p is false infinitely often 22/09/2010SSS'20109

Example An approximation algorithm A for process q of (T pq (δ),T pq (Δ)) – If (p,q) is δ-timely, then Out A q is eventually forever true – If (p,q) is not (p,q) is Δ-timely,, then Out A q is false infinitely often – Remark: If (p,q) is not δ-timely but is (p,q) is Δ- timely, nothing to guarantee 22/09/2010SSS'201010

From local to global approximation Proposition: If A is an approximation algorithm for p of predicates local to p (P,Q), then for every correct process q there exists an approximation algorithm B for q of predicate (P,Q). Local to p = depend on p only, e.g: – T pq (δ) is local to q – P p is crashed is local to p Sketch: – Each time p modifies Out A p, it (reliably) broadcasts the new value – Whenever a process q (included p) delivers a message from p, q updates Out B q with the new value and, then sets Out B q to true again 22/09/2010SSS'201011

Composition of approximations Proposition: If A P,Q and A P’,Q’ are approximation algorithms for correct process p of (P,Q) and for correct process q of predicates (P’,Q’), then for every correct process r there exists an approximation algorithm for r of predicate (P ∧ P’,Q ∧ Q’). Sketch: Similar to the previous proposition 22/09/2010SSS'201012

Extraction Algorithm (1/3) Let (P i,Q i ) i ∈ I be a set of pairs of predicates Extraction algorithm – Each process p has a variable d p – In each run where ⋁ i ∈ I P i = true, ∃ i 0 ∈ I: Eventual Agreement: ∃ t: after time t, d p = i 0 for all correct process p Validity: Q i 0 is true 22/09/2010SSS'201013

Extraction Algorithm (2/3) Proposition: Let (P i,Q i ) i ∈ I be a set of predicates.. If (A i ) i ∈ I is a set of approximation algorithms of (P i,Q i ) i ∈ I, then there exists an extraction algorithm for (P i,Q i ) i ∈ I Sketch: – Acc[i] initialized to 0 – p increments Acc[i] each time Out Ai p become false – p regularly sends Acc to all other process – Upon receiving an array A, a process sets Acc[i] to max(A[i],Acc[i]) for all I – p chooses i 0 such that Acc[i 0 ] is minimum 22/09/2010SSS'201014

Extraction Algorithm (3/3) Proposition: Let (P i,Q i ) i ∈ I be a set of predicates. If (A i ) i ∈ I is a set of approximation algorithms of (P i,Q i ) i ∈ I, then there exists an communication- efficient extraction algorithm A for (P i,Q i ) i ∈ I Communication-efficiency: In each run where ⋁ i ∈ I P i = true, ∃ t: after time t – ∃ j ∈ I : every process p reads only Out Aj p – No message is sent by A 22/09/2010SSS'201015

Summary 22/09/2010SSS' Local approximation of predicate Global approximation of predicate Composition Extraction Algorithm Local approximation of predicate Global approximation of predicate

Approximation of Link δ-Timeliness (1/3) Proposition: Without additional assumption on the system, it is not possible to approximate (T pq (δ), T pq (Δ)) Sketch: If the links are asynchronous and the local clocks are not synchronized, then it is impossible to evaluate the time to traverse the link (p,q) 22/09/2010SSS'201017

Approximation of Link δ-Timeliness (2/3) Theorem: If processes are equipped of perfectly synchronized clocks, then approximation of (T pq (δ), T pq (δ+K)) is possible Theorem: If ∃ a Γ-timely path from q to p, then approximation of (T pq (δ), T pq (δ+Γ+K)) is possible These results can be generalized for paths (Hence we solve our initial problem) 22/09/2010SSS'201018

Approximation of Link δ-Timeliness (3/3) Assume processes are equipped of perfectly synchronized clocks Approximation algorithm of (T pq (δ), T pq (δ+K)) for process q – Every K time, p send to q a message including its local time – If a message spends more than δ time or q does not receive message from p during δ+K, then Out A p ← false – Out A p is reset to true every n time 22/09/2010SSS'201019

Approximation of crashed processes Approximation for every correct process q of (P p is crashed,P p is crashed ) – If p is faulty, then Out A q is eventually forever true – If p is correct, then Out A q is false infinitely often Algorithm: – Out A p ← false – p regularly sends messages to q, – Upon receiving a message from p: Out A q ← false – Out A q is reset to true every n time 22/09/2010SSS'201020

Extraction of δ-Timeliness graphs I.e., a graph G(V,E) such that – All processes in ∏/V is crashed – E only contains δ-Timely links Easy: TG G i ≣⋀ e ∈ Edges(G i ) T e (δ) ⋀ ⋀ v ∉ Nodes(G i ) P v is crashed 22/09/2010SSS'201021

Properties of the extracted graph (1/2) Proposition: If G i is the extracted graph, then (Nodes(G i [Correct(R)]), Nodes(G i [Faulty(R)])) is a dicut of G i (X,Y) is a dicut of G=(S,E) iff (X,Y) is a partition of S such that there is no (directed) link from Y to X 22/09/2010SSS' Correct Faulty

Properties of the extracted graph (2/2) Proposition: If there is at least one correct process and (G i ) i ∈ I only contains strongly connected graphs, then the extracted graph only contains exactly all the correct processes 22/09/2010SSS'201023

Extraction of δ-Timeliness graphs We can extract: – A tree containing at least all correct processes whose all paths from the root are Δ-timely – A ring among all correct processes whose all links are Δ-timely – … 22/09/2010SSS'201024

Conclusion General framework to approximate and extract properties Case study: δ-Timeliness Perspective: approximate other properties, e.g., general timeliness 22/09/2010SSS'201025

Thank you 22/09/2010SSS'201026