CIS825 Lecture 5 1.

Slides:



Advertisements
Similar presentations
Distributed Snapshots: Determining Global States of Distributed Systems - K. Mani Chandy and Leslie Lamport.
Advertisements

Global States.
Distributed Snapshots: Determining Global States of Distributed Systems Joshua Eberhardt Research Paper: Kanianthra Mani Chandy and Leslie Lamport.
Optimal Termination Detection for Rings Murat Demirbas OSU.
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.
1 Global State $500$200 A B C1: Empty C2: Empty Global State 1 $450$200 A B C1: Tx $50 C2: Empty Global State 2 $450$250 A B C1: Empty C2: Empty Global.
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.
Termination Detection of Diffusing Computations Chapter 19 Distributed Algorithms by Nancy Lynch Presented by Jamie Payton Oct. 3, 2003.
Distributed Computing
CS542 Topics in Distributed Systems Diganta Goswami.
Distributed Computing 5. Snapshot Shmuel Zaks ©
Dr. Kalpakis CMSC 621, Advanced Operating Systems. Logical Clocks and Global State.
Termination Detection. Goal Study the development of a protocol for termination detection with the help of invariants.
Termination Detection Part 1. Goal Study the development of a protocol for termination detection with the help of invariants.
Distributed Systems Dinesh Bhat - Advanced Systems (Some slides from 2009 class) CS 6410 – Fall 2010 Time Clocks and Ordering of events Distributed Snapshots.
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.
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.
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.
Dr. Kalpakis CMSC 621, Advanced Operating Systems. Fall 2003 URL: Logical Clocks and Global State.
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.
Distributed Computing 5. Snapshot Shmuel Zaks ©
1 Consistent Global States of Distributed Systems: Fundamental Concepts and Mechanisms Author: Ozalp Babaoglu and Keith Marzullo Distributed Systems: 526.
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?
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.
Fault tolerance and related issues in distributed computing Shmuel Zaks GSSI - Feb
CSE 486/586 CSE 486/586 Distributed Systems Global States Steve Ko Computer Sciences and Engineering University at Buffalo.
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.
Distributed Systems Lecture 6 Global states and snapshots 1.
Ordering of Events in Distributed Systems UNIVERSITY of WISCONSIN-MADISON Computer Sciences Department CS 739 Distributed Systems Andrea C. Arpaci-Dusseau.
Chapter 10 Time and Global States
Global state and snapshot
Consistent cut A cut is a set of events.
Lecture 3: State, Detection
Advanced Topics in Concurrency and Reactive Programming: Time and State Majeed Kassis.
Global state and snapshot
Lecture 3: State, Detection
CSE 486/586 Distributed Systems Global States
Theoretical Foundations
ITEC452 Distributed Computing Lecture 9 Global State Collection
Distributed Snapshot.
EECS 498 Introduction to Distributed Systems Fall 2017
Distributed Snapshot.
湖南大学-信息科学与工程学院-计算机与科学系
Logical Clocks and Casual Ordering
Outline Theoretical Foundations - continued Lab 1
Time And Global Clocks CMPT 431.
Distributed Snapshot Distributed Systems.
Uncoordinated Checkpointing
Slides for Chapter 11: Time and Global State
Outline Theoretical Foundations - continued
ITEC452 Distributed Computing Lecture 8 Distributed Snapshot
Distributed Snapshot.
CSE 486/586 Distributed Systems Global States
Jenhui Chen Office number:
Distributed algorithms
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:

CIS825 Lecture 5 1

Global State P1, P2,…… = set of processes si = state of process Pi 2

Token-passing example

Channel states Cj = sequences of messages sent along a channel excluding the messages already received along the channel. 4

Global State A global state GS of a system is a set of process states and the channel states GS = { s1,…,sn, C1,…,Cm } A global state is consistent if there does not exist an inconsistent message 5

Inconsistent messages

Algorithm Chandy-Lamport’s algorithm There exists a basic distributed computation whose state is being recorded. Communication is assumed to be FIFO Point-to-point network, asynchronous Global state = snapshot of the computation Reliable communication 7

Algorithm Single initiator A marker message is used Marker sending rule: Pi records its state For each outgoing channel C, Pi sends a marker along C. No computation message is sent between recording the state and sending of the marker message. 8

Algorithm Marker receiving rule: - On receiving a marker along channel C: if Pj has not recorded its state then record the state; recording state of incoming channel as empty follow marker sending rule else record the state of C as the sequence of messages received along C after j has recorded its state. 10

Algorithm A marker divides the messages into those that are included in the state and those that are logically after the state. The algorithm can be initiated by any number of processes concurrently 11

Stable predicate A predicate A is stable if once A becomes true, it remains true. A recorded global state could have existed in the past. If a stable predicate A is true in the recorded state, then it is true in the current state.

Termination Detection A process may be either active or passive Only active processes may send messages An active process can become passive at any time A passive process may become active on receiving a computation message Messages sent by the termination detection algorithm are called control messages

Termination Detection A computation has terminated in state G iff all the processes are idle and there are no messages in transit in G.

Algorithms Algorithm 1 (TA1): - Record a global state and determine whether the system has terminated. - Termination is a stable property

Algorithm 2: Assume that there exists a controller process C. Each process maintains the following counters: sendi: # of messages sent by i recdi: # of messages received by i sendi,j: # of messages sent by i to j recdi,j: # of messages received by i from j

Algorithm 2 Controller sends a message to all sites. When Pi receives the message, it responds with its state.

Termination Detection in a Ring Message can only be sent clockwise If a node is passive, it sends a Marker in the clockwise direction. On receiving a marker, if a process is passive then forward the marker

Diffusing computation Every message initiates a computation and is acknowledged when the computation terminates. A node is passive when no ack is pending.