14- consensus2

14- consensus2 - CSE 486/586 Distributed Systems Consensus...

Info iconThis preview shows pages 1–9. Sign up to view the full content.

View Full Document Right Arrow Icon
CSE 486/586, Spring 2012 CSE 486/586 Distributed Systems Consensus --- 2 Steve Ko Computer Sciences and Engineering University at Buffalo
Background image of page 1

Info iconThis preview has intentionally blurred sections. Sign up to view the full version.

View Full DocumentRight Arrow Icon
CSE 486/586, Spring 2012 Recap: Consensus On a synchronous system There’s an algorithm that works. On an asynchronous system It’s been shown (FLP) that it’s impossible to guarantee. Getting around the result Masking faults Using failure detectors Still not perfect 2
Background image of page 2
CSE 486/586, Spring 2012 Recall Each process p has a state program counter, registers, stack, local variables input register xp : initially either 0 or 1 output register yp : initially b (b=undecided) Consensus Problem: design a protocol so that either all non-faulty processes set their output variables to 0 Or non-faulty all processes set their output variables to 1 (No trivial solutions allowed) 3
Background image of page 3

Info iconThis preview has intentionally blurred sections. Sign up to view the full version.

View Full DocumentRight Arrow Icon
CSE 486/586, Spring 2012 Proof of Impossibility: Reminder State machine Equally applicable to a single process as well as distributed processes A state (S1) is reachable from another state (S0) if there is a sequence of events from S0 to S1. There’s an initial state with an initial set of input values. 4
Background image of page 4
CSE 486/586, Spring 2012 p p Global Message Buffer send(p ,m) receive(p ) may return null Network 5
Background image of page 5

Info iconThis preview has intentionally blurred sections. Sign up to view the full version.

View Full DocumentRight Arrow Icon
CSE 486/586, Spring 2012 Different Definition of “State” State of a process Configuration: = Global state. Collection of states, one per process; and state of the global buffer Each Event consists atomically of three sub-steps: receipt of a message by a process (say p), and processing of message, and sending out of all necessary messages by p (into the global message buffer) Note: this event is different from the Lamport events Schedule: sequence of events 6
Background image of page 6
CSE 486/586, Spring 2012 C C C ’’ Event e =(p ,m ) Event e ’’ =(p ’’ ,m ’’ ) Configuration C Schedule s=(e ,e ’’ ) C C ’’ Equivalent 7
Background image of page 7

Info iconThis preview has intentionally blurred sections. Sign up to view the full version.

View Full DocumentRight Arrow Icon
CSE 486/586, Spring 2012 Lemma 1 C
Background image of page 8
Image of page 9
This is the end of the preview. Sign up to access the rest of the document.

This document was uploaded on 02/27/2012.

Page1 / 28

14- consensus2 - CSE 486/586 Distributed Systems Consensus...

This preview shows document pages 1 - 9. Sign up to view the full document.

View Full Document Right Arrow Icon
Ask a homework question - tutors are online