N-Consensus is the Second Strongest Object for N+1 Processes Eli Gafni UCLA Petr Kuznetsov Max Planck Institute for Software Systems.

Slides:



Advertisements
Similar presentations
1 © R. Guerraoui Universal constructions R. Guerraoui Distributed Programming Laboratory.
Advertisements

Impossibility of Distributed Consensus with One Faulty Process
1 © R. Guerraoui The Limitations of Registers R. Guerraoui Distributed Programming Laboratory.
© 2005 P. Kouznetsov Computing with Reads and Writes in the Absence of Step Contention Hagit Attiya Rachid Guerraoui Petr Kouznetsov School of Computer.
The weakest failure detector question in distributed computing Petr Kouznetsov Distributed Programming Lab EPFL.
CSE 486/586, Spring 2012 CSE 486/586 Distributed Systems Consensus Steve Ko Computer Sciences and Engineering University at Buffalo.
A General Characterization of Indulgence R. Guerraoui EPFL joint work with N. Lynch (MIT)
Bigamy Eli Gafni UCLA GETCO Outline Models, tasks, and solvability What is SM? r/w w.f. asynch computability Sperner Lemma as a consequence of the.
Lecture 8: Asynchronous Network Algorithms
Chapter 15 Basic Asynchronous Network Algorithms
Is 1 different from 12? Eli Gafni UCLA Eli Gafni UCLA.
6.852: Distributed Algorithms Spring, 2008 Class 7.
CPSC 668Set 18: Wait-Free Simulations Beyond Registers1 CPSC 668 Distributed Algorithms and Systems Fall 2006 Prof. Jennifer Welch.
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 ©
Snap-Stabilization in Message-Passing Systems Sylvie Delaët (LRI) Stéphane Devismes (CNRS, LRI) Mikhail Nesterenko (Kent State University) Sébastien Tixeuil.
Towards a Theory of Peer-to-Peer Computability Joachim Giesen Roger Wattenhofer Aaron Zollinger.
Distributed Algorithms – 2g1513 Lecture 10 – by Ali Ghodsi Fault-Tolerance in Asynchronous Networks.
Distributed Computing 8. Impossibility of consensus Shmuel Zaks ©
1 © P. Kouznetsov On the weakest failure detector for non-blocking atomic commit Rachid Guerraoui Petr Kouznetsov Distributed Programming Laboratory Swiss.
R/W Reductions Eli Gafni UCLA ICDCN06 12/30. Outline Tasks and r/w impossible task: –2 cons –3 cons NP-completeness R/W reduction “Weakest Unsolvable.
State Machine Replication Project Presentation Ido Zachevsky Marat Radan Supervisor: Ittay Eyal Winter Semester 2010.
CS 582 / CMPE 481 Distributed Systems
Eddie Bortnikov & Aran Bergman, Principles of Reliable Distributed Systems, Technion EE, Spring Principles of Reliable Distributed Systems Recitation.
Distributed Algorithms: Asynch R/W SM Computability Eli Gafni, UCLA Summer Course, CRI, Haifa U, Israel.
Group-Solvability The Ultimate Wait-Freedom Eli Gafni UCLA DISC /4/04.
EEC 693/793 Special Topics in Electrical Engineering Secure and Dependable Computing Lecture 12 Wenbing Zhao Department of Electrical and Computer Engineering.
What Can Be Implemented Anonymously ? Paper by Rachid Guerraui and Eric Ruppert Presentation by Amir Anter 1.
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.
Complexity 1 Mazes And Random Walks. Complexity 2 Can You Solve This Maze?
Distributed Algorithms: Agreement Protocols. Problems of Agreement l A set of processes need to agree on a value (decision), after one or more processes.
State Machines CS 614 Thursday, Feb 21, 2002 Bill McCloskey.
Chapter 8 Asynchronous System Model by Mikhail Nesterenko “Distributed Algorithms” by Nancy A. Lynch.
Two-Process Systems TexPoint fonts used in EMF. Read the TexPoint manual before you delete this box.: A A AA Companion slides for Distributed Computing.
Distributed Consensus Reaching agreement is a fundamental problem in distributed computing. Some examples are Leader election / Mutual Exclusion Commit.
CIS 540 Principles of Embedded Computation Spring Instructor: Rajeev Alur
 Jim has six children.  Chris fights with Bob,Faye, and Eve all the time; Eve fights (besides with Chris) with Al and Di all the time; and Al and Bob.
1 © P. Kouznetsov A Note on Set Agreement with Omission Failures Rachid Guerraoui, Petr Kouznetsov, Bastian Pochon Distributed Programming Laboratory Swiss.
Bringing Paxos Consensus in Multi-agent Systems Andrei Mocanu Costin Bădică University of Craiova.
Distributed Algorithms – 2g1513 Lecture 9 – by Ali Ghodsi Fault-Tolerance in Distributed Systems.
CSCE 668 DISTRIBUTED ALGORITHMS AND SYSTEMS Fall 2011 Prof. Jennifer Welch CSCE 668 Set 18: Wait-Free Simulations Beyond Registers 1.
Consensus and Its Impossibility in Asynchronous Systems.
1 Chapter 9 Synchronization Algorithms and Concurrent Programming Gadi Taubenfeld © 2014 Synchronization Algorithms and Concurrent Programming Synchronization.
Computer Science and Engineering Parallel and Distributed Processing CSE 8380 February 10, 2005 Session 9.
Common2 extended to stacks and unbound concurrency By:Yehuda Afek Eli Gafni Adam Morrison May 2007 Presentor: Dima Liahovitsky 1.
CS294, Yelick Consensus revisited, p1 CS Consensus Revisited
Distributed systems Consensus Prof R. Guerraoui Distributed Programming Laboratory.
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.
Chapter 8 Asynchronous System Model by Mikhail Nesterenko “Distributed Algorithms” by Nancy A. Lynch.
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
Program Correctness. The designer of a distributed system has the responsibility of certifying the correctness of the system before users start using.
“Towards Self Stabilizing Wait Free Shared Memory Objects” By:  Hopeman  Tsigas  Paptriantafilou Presented By: Sumit Sukhramani Kent State University.
1 © R. Guerraoui Set-Agreement (Generalizing Consensus) R. Guerraoui.
Unreliable Failure Detectors for Reliable Distributed Systems Tushar Deepak Chandra Sam Toueg Presentation for EECS454 Lawrence Leinweber.
© 2007 P. Kouznetsov On the Weakest Failure Detector Ever Petr Kouznetsov (Max Planck Institute for SWS) Joint work with: Rachid Guerraoui (EPFL) Maurice.
The consensus problem in distributed systems
Algebraic Topology and Distributed Computing part two
CSCE 668 DISTRIBUTED ALGORITHMS AND SYSTEMS
Alternating Bit Protocol
Rodolfo Conde Joint work with Sergio Rajsbaum Instituto de Matemáticas
CS21 Decidability and Tractability
Algebraic Topology and Distributed Computing part three
Deterministic Objects: Life Beyond Consensus
Snap-Stabilization in Message-Passing Systems
Distributed systems Consensus
Yehuda Afek, Eli Daian, Eli Gafni, Giuliano Losa
Presentation transcript:

N-Consensus is the Second Strongest Object for N+1 Processes Eli Gafni UCLA Petr Kuznetsov Max Planck Institute for Software Systems

2 Distributed shared memory  Processes communicate via objects  Each object is an instance of a type  Type N-consensus: first N operations propose(v), v∈{0,1} return the argument of the first operation, N+1-th fails  Object types can be classified by their consensus power

3 Consensus power  Cons(T)=N iff objects of T and RW registers can implement N-consensus but not N+1-consensus  N-consensus is universal in a system of N processes : can implement an object of any type [Her91]

4 What about N or more processes? Can objects of consensus power N “do more” than N-consensus objects? No: if an N+1-process task can be solved by deterministic objects of consensus power N, then it can also be solved by N-consensus objects ⇨ There are no objects between N- and N+1- consensus

5 Main results Theorem 1. Any protocol over N+1 processes using deterministic objects of consensus power N is connected. Theorem 2. Any connected protocol over N+1 processes can be emulated using N-consensus

6 The rest of it  Definitions and tools  Inseparability  Theorem 1: connectivity of protocols  Theorem 2: emulation  Conclusions and future

7 Processes and protocols  N+1 processes communicate via objects of consensus power N, RW registers  Protocol P: a collection of deterministic automata P 1,…P N+1, assume a single initial state

8 Objects and synchrony  Objects are atomic and deterministic: an execution of P can be seen as a sequence of process ids a state of P is a finite execution a view of Pi in x is the local state of Pi in x  System is asynchronous: we consider all possible executions 2-consensus cannot be implemented using RW registers N+1-consensus cannot be implemented using N- consensus

9 Some tools  2-process ε-agreement task for q0 and q1 If qi goes alone, qi outputs i outputs are within ε in [0,1] (can be implemented using RW registers)  N-consensus can be used to split processes in two teams, each running as a single process in a 2-process RW protocol (e.g., ε- agreement)

10 Inseparability States x0 and x1 of P are inseparable (x0~x1) iff some process P i cannot distinguish x0 and x1 even in an infinite execution Pi goes through the same sequence of views in e0 and e1 x1x0 e1e0

11 Inseparably connected protocols P is inseparably connected iff for each state x of P, the set G(x) of N+1 immediate descendants of x is transitively inseparable x1x1 x2x2 xNxN x N+1 ~ ~~~ … There is a path of inseparable states between any two states in G(x) … x

12 Connectivity and consensus power Theorem 1. Any protocol over N+1 processes using deterministic objects of consensus power N is connected Proof sketch:  suppose some G(x) is ~ disconnected  each execution extending x reveals the component of G(x)  we can solve consensus using x and P (use determinism here)

13 Emulation of connected protocols  Let P be connected  Then we can emulate it using N-consensus! Emulation:  Processes periodically output views of P Safety: All output views are compatible with an execution of P Liveness: at least one active process makes progress (outputs infinitely many views of P)

14 Emulation invariants  Each process maintains a local estimate of the “current” state of P  Asynchronous phases, at the end of each phase: There are at most two different state estimates, and they are inseparable At least one participant outputs a new view All views output so far are compatible with both state estimates

15 Phase description  Processes split in two teams q0 and q1  Each qi elects a member to promote: proposes a new “next” state x i and a new view v i  q0 and q1 runs ε-agreement and map the results to vertices of the non-separating path connecting x 0 and x 1

16 Look in the future: x 0 ~x 1 Go along inseparable executions until a confusing view v

17 Look in the future: x 0 and x 1 are not inseparable But their parents x 0 ’ and x 1 ’ are – concatenate the paths

18 Choosing the next state: safety  ε=Ω(1/N): the decided vertices are neighbors  Neighboring states are inseparable  Each view is compatible with neighboring states: safety is guaranteed!

19 Joining a team: liveness In every phase, a process:  Try to agree on the system state using N- consensus  If succeeded, join team q0  If failed (only if N came earlier)– join q1  ≤N processes participate ⇨ q1 is empty  Only a participant obtains a new view: liveness is guaranteed!

20 A corollary that matters Let P be any protocol that solves a task M A non-blocking emulation of P is also wait-free: every active process makes progress Every N+1-process task that can be solved by objects of consensus power N can also be solved by N-consensus objects

21 Summary  Inseparability (a general connectivity)  Emulation of any connected protocol  In a system of N+1 processes, there is no object between N- and N+1-consensus

22 Related questions  Can objects of consensus power N be implemented by N-consensus objects? Common2 class: is queue in it? [Afek et al. 93,…]  How to emulate a protocol P that uses objects of two types, each of consensus power N Robustness [Jay93,…]  Non-determinism?

23 Thank you!

24 Deterministic objects  Q, set of states  O, set of operations  R, set of responses  σ, Q x O → Q x R, sequential specification RW-register: a read returns the most recent written value N-consensus: first N agree on a proposed value, N+1-th fails