Lecture 3: State, Detection

Slides:



Advertisements
Similar presentations
Distributed Snapshots: Non-blocking checkpoint coordination protocol Next: Uncoordinated Chkpnt.
Advertisements

Distributed Snapshots: Determining Global States of Distributed Systems - K. Mani Chandy and Leslie Lamport.
Global States.
Distributed Snapshots: Determining Global States of Distributed Systems Joshua Eberhardt Research Paper: Kanianthra Mani Chandy and Leslie Lamport.
From Coulouris, Dollimore, Kindberg and Blair Distributed Systems: Concepts and Design Edition 5, © Addison-Wesley 2012 Slides for Chapter 14: Time and.
Global States in a Distributed System By John Kor and Yvonne Cheng.
Distributed Computing 5. Snapshot Shmuel Zaks ©
Lecture 8: Asynchronous Network Algorithms
SES Algorithm SES: Schiper-Eggli-Sandoz Algorithm. No need for broadcast messages. Each process maintains a vector V_P of size N - 1, N the number of processes.
Uncoordinated Checkpointing The Global State Recording Algorithm.
Uncoordinated Checkpointing The Global State Recording Algorithm Cristian Solano.
Time and Global States Part 3 ECEN5053 Software Engineering of Distributed Systems University of Colorado, Boulder.
CS542 Topics in Distributed Systems Diganta Goswami.
Distributed Computing 5. Snapshot Shmuel Zaks ©
OSU CIS Lazy Snapshots Nigamanth Sridhar and Paul A.G. Sivilotti Computer and Information Science The Ohio State University
S NAPSHOT A LGORITHM. W HAT IS A S NAPSHOT - INTUITION Given a system of processors and communication channels between them, we want each processor to.
CS 582 / CMPE 481 Distributed Systems
Causality & Global States. P1 P2 P Physical Time 4 6 Include(obj1 ) obj1.method() P2 has obj1 Causality violation occurs when order.
Ordering and Consistent Cuts Presented By Biswanath Panda.
Distributed Systems Fall 2009 Logical time, global states, and debugging.
Slides for Chapter 10: Time and Global State
Ordering and Consistent Cuts
20101 Synchronization in distributed systems A collection of independent computers that appears to its users as a single coherent system.
Ordering and Consistent Cuts Presented by Chi H. Ho.
EEC-681/781 Distributed Computing Systems Lecture 11 Wenbing Zhao Cleveland State University.
Chapter 10 Global Properties. Unstable Predicate Detection A predicate is stable if, once it becomes true it remains true Snapshot algorithm is not useful.
Computer Science Lecture 10, page 1 CS677: Distributed OS Last Class: Clock Synchronization Physical clocks Clock synchronization algorithms –Cristian’s.
Chapter 5.
CIS 720 Distributed algorithms. “Paint on the forehead” problem Each of you can see other’s forehead but not your own. I announce “some of you have paint.
1 Distributed Systems CS 425 / CSE 424 / ECE 428 Global Snapshots Reading: Sections 11.5 (4 th ed), 14.5 (5 th ed)  2010, I. Gupta, K. Nahrtstedt, S.
Distributed Computing 5. Snapshot Shmuel Zaks ©
Chapter 9 Global Snapshot. Global state  A set of local states that are concurrent with each other Concurrent states: no two states have a happened before.
Lecture 6-1 Computer Science 425 Distributed Systems CS 425 / ECE 428 Fall 2013 Indranil Gupta (Indy) September 12, 2013 Lecture 6 Global Snapshots Reading:
Distributed Snapshot. Think about these -- How many messages are in transit on the internet? --What is the global state of a distributed system of N processes?
Distributed Systems Fall 2010 Logical time, global states, and debugging.
CSE 486/586, Spring 2013 CSE 486/586 Distributed Systems Global States Steve Ko Computer Sciences and Engineering University at Buffalo.
Distributed Snapshot. One-dollar bank Let a $1 coin circulate in a network of a million banks. How can someone count the total $ in circulation? If not.
Hwajung Lee. -- How many messages are in transit on the internet? --What is the global state of a distributed system of N processes? How do we compute.
CS4231 Parallel and Distributed Algorithms AY 2006/2007 Semester 2 Lecture 5 Instructor: Haifeng YU.
Fault tolerance and related issues in distributed computing Shmuel Zaks GSSI - Feb
Lecture 1: Logical and Physical Time with some Applications Anish Arora CSE 6333 Notes include material from Dr. Jeff Brumfield.
Ordering of Events in Distributed Systems UNIVERSITY of WISCONSIN-MADISON Computer Sciences Department CS 739 Distributed Systems Andrea C. Arpaci-Dusseau.
CSE 486/586 CSE 486/586 Distributed Systems Global States Steve Ko Computer Sciences and Engineering University at Buffalo.
1 Chapter 11 Global Properties (Distributed Termination)
Hwajung Lee. -- How many messages are in transit on the internet? --What is the global state of a distributed system of N processes? How do we compute.
Ordering of Events in Distributed Systems UNIVERSITY of WISCONSIN-MADISON Computer Sciences Department CS 739 Distributed Systems Andrea C. Arpaci-Dusseau.
Global state and snapshot
Consistent cut A cut is a set of events.
Lecture 3: State, Detection
Global state and snapshot
CSE 486/586 Distributed Systems Global States
Theoretical Foundations
Lecture 9: Asynchronous Network Algorithms
Distributed Snapshot.
EECS 498 Introduction to Distributed Systems Fall 2017
Distributed Snapshot.
Logical Clocks and Casual Ordering
Distributed Snapshot Distributed Systems.
Uncoordinated Checkpointing
Slides for Chapter 11: Time and Global State
ITEC452 Distributed Computing Lecture 8 Distributed Snapshot
Distributed Snapshot.
CSE 486/586 Distributed Systems Global States
Jenhui Chen Office number:
Distributed algorithms
CIS825 Lecture 5 1.
Consistent cut If this is not true, then the cut is inconsistent
Slides for Chapter 14: Time and Global States
Chandy-Lamport Example
Distributed Snapshot.
Presentation transcript:

Lecture 3: State, Detection Anish Arora CSE 763 Notes include material from Dr. Jeff Brumfield 1

Reading for this Lecture Distributed Snapshots: Determining Global States of Distributed Computing by Chandy and Lamport http://research.microsoft.com/users/lamport/pubs/chandy.pdf Chapter 9 in Paul Sivilotti's book

Statement of Problem The global state of a distributed system consists of the states of all processes and communication channels in the system Problem: Determine the global state of a distributed system during a computation

Statement of Problem Difficulties A process can record only its own state and the sequence of messages it sends and receives Without a common clock, processes cannot record their states at precisely the same time We cannot freeze or alter the underlying computation

one token is passed between processes Example Single token conservation system one token is passed between processes

Example Process states: with token or without token Channel states: token in transit or empty State transition diagram for a process:

Example Global state transition diagram

Determining a Channel's State The state of a channel is the sequence of messages sent along the channel excluding those received Unlike a process, a channel can't record its own state The two processes connected by the channel must cooperate to determine the channel's state For a global state to be consistent, the recorded states must satisfy the following rule: The recorded state of the channel must be the sequence of messages sent before the sender's state is recorded, excluding the sequence of messages received before the receiver's state is recorded

Determining a Channel's State Consistency Problems Scenario 1: channel state is recorded (no token) sender sends token sender records its state (no token) Global state shows no token! Scenario 2: sender records its state (with token) sender sends token channel state is recorded (with token) Global state shows 2 tokens!

Global State Detection Algorithm Initiating process record own state send one marker on each outgoing channel before sending any further messages on that channel

Global State Detection Algorithm Upon receiving a marker on channel c if process has not recorded its state then record own state record state of channel c as empty send one marker on each outgoing channel before sending any further messages on that channel else record state of c as the sequence of messages received along c after own state was recorded and before marker was received on channel c

Example Process P Process Q Process P: Process Q: LOOP LOOP send  to Q send  to P receive  from Q receive  from P END END

Example State of a process: "send mode" or "receive mode“ State of channel: messages in transit (if any) Initial state: both processes in send mode and both channels empty

Example

Example

Example

Example

Example Recorded State Process P Process Q Note: The recorded global state is not identical to any of the global states that actually occurred Does this mean that the state detection algorithm is of no value?

Properties of the Recorded State Theorem The recorded state is reachable from the state in which the algorithm was initiated. The state in which the algorithm terminated is reachable from the recorded state