CS 347 Parallel and Distributed Data Processing

Size: px
Start display at page:

Download "CS 347 Parallel and Distributed Data Processing"

Transcription

1 CS 347 Parallel and Distributed Data Processing Spring 2016 & Clocks, Clocks, and the Ordering of Events in a Distributed System. L. Lamport, Communications of the ACM, 1978 Notes 15: & Clocks CS 347 Notes 15 2 & Clocks Fundamental concepts in distributed (database) systems Example use cases outs Identifying messages, transactions Setting priorities Tracking data versions & Clocks What is time? How can clocks be implemented? CS 347 Notes 15 3 CS 347 Notes 15 4

2 Ordering of Events Event ordering is even more basic than time Ordering of Events Introduce a partial order relation Event a 9 am Happened before Physical time not needed to order events Event b 10 am Reminder Total ordering: for any two events a, b (a b) either a b or b a Partial ordering: some events a, b can be concurrent Event a Happened before Can affect Event b CS 347 Notes 15 5 CS 347 Notes 15 6 Ordering of Events Ordering of Events Model Process P Process Q Process R P1 Q1 R1 Q2 P2 Q3 R2 Q4 Q5 R3 P3 Q6 Model Events within a process are totally ordered Sending or receiving a message is an event No assumptions about message transmission times Examples P4 Q7 R4 P 1 P 2 P 1 Q 2 P 3, Q 3 are concurrent CS 347 Notes 15 7 CS 347 Notes 15 8

3 Ordering of Events Logical Clocks Definition The relation on the set of events of a system is the smallest relation satisfying conditions 1. If a, b are in the same process, and a comes before b, then a b 2. If a is a message send and b is the receipt of the same message by a different process, then a b 3. If a b and b c then a c (transitivity) Process P Process Q Process R P1 Q1 R1 Q2 P2 Q3 R2 Q4 Q5 R3 P3 Q6 R4 CR = 4 CR = 5 CR = 6 CR = 7 CR = 8 Assume a a If a b and b a, then a, b are concurrent P4 Q7 CR = 9 CS 347 Notes 15 9 CS 347 Notes Logical Clocks C i = logical clock (counter) at process i C[b] = reading of C j when event b occurs at process j Clock condition If a b then C [ a ] < C [ b ] No relationship to physical time Logical Clocks Clock condition satisfied if the following conditions hold: 1. If a and b are events in process i and a comes before b then C i [ a ] < C i [ b ] 2. If a is the sending of a message by process i and b is the receipt of that message by process j then C i [ a ] < C j [ b ] CS 347 Notes CS 347 Notes 15 12

4 Logical Clocks Logical Clocks Process P Process Q Process R CR = 4 Q1 P1 R1 Q2 6 > 4 (condition 1) P2 CR = 6 Q3 R2 Q4 Q5 R3 P3 Q6 CQ = 9 R4 P4 Q7 9 > 6 (condition 2) Implementation LC1 Each process i increments C i between any two successive events LC2 Let a be the event of process i sending a message m to j Message contains timestamp T m = C i [ a ] When message arrives at j 1. If T m > C j then C j T m 2. Event b of message receipt takes place CS 347 Notes CS 347 Notes Logical Clocks Notes C i [ a ] < C j [ b ] does not imply a b a, b being concurrent does not imply C i [ a ] = C j [ b ] If C i [ a ] = C j [ b ] then a, b are concurrent Breaking Ties Problem Some server wants to execute requests in order a is event that originated one request (at client) b is event that originates another request (at another client) CS 347 Notes CS 347 Notes 15 16

5 Breaking Ties Solution If C [ a ] < C [ b ] then service a first It could be that a b, but it could be that they re concurrent Assume that a b to stay on the safe side Anomalous Behavior Server C = 100 C = 50 If C [ a ] = C [ b ] then pick one a, b are concurrent E.g., pick the one with lower [ nodeid, processid ] 1 Buyer Make the deposit 2 Seller Cash the check 3 Make phone call CS 347 Notes CS 347 Notes Anomalous Behavior Anomalous Behavior 1 Server C = 9:00 am C = 9:01 am C = 100 C = 50 Buyer Seller Make the deposit Cash the check 3 Solutions 1. Include phone call into the system 2. Use perfect physical clocks 3. Use real physical clocks May be slightly off Do not fully eliminate anomaly, but reduce its likelihood Also useful for failure detection 2 Make phone call CS 347 Notes CS 347 Notes 15 20

6 Physical Clocks C i ( t ) = clock reading at process i at physical time t Physical Clocks Assume C i ( t ) is a continuous, differentiable function except when clock is reset C i ( t ) C i ( t ) C i +(x) C i (x) time = t x time = t CS 347 Notes CS 347 Notes Physical Clocks Physical Clock Properties How to enforce clock condition? If a b then C [ a ] < C [ b ] LC1 Each process i increments C i between any two successive events PC1 For each process i, if i does not receive a message at time t, then C i is differentiable at t and dc i(t) > 0 dt CS 347 Notes CS 347 Notes 15 24

7 Physical Clock Properties Physical Clock Properties LC2 Let a be the event of process i sending a message m to j PC2 Let a be the event of process i sending a message m to j Message contains timestamp T m = C i [ a ] When message arrives at j 1. If T m > C j then C j T m Message contains timestamp T m = C i [ a ] Let μ m be minimum transmission delay for m Message m arrives at at physical time t > t + μ m 2. Event b of message receipt takes place When message arrives at j 1. If T m + μ m > C j (t ) then C j+ (t ) T m + μ m 2. Event b of message receipt takes place CS 347 Notes CS 347 Notes Physical Clock Properties Physical Clock Properties If T m + μ m > C j (t ) then C j + (t ) T m + μ m PC3 Clock drift There exists a constant k << 1 such that for all processes i m t μ m dc i(t) dt 1 < k t i j CS 347 Notes CS 347 Notes 15 28

8 Physical Clock Properties Physical Clock Properties PC3 Clock drift dc i(t) 1 < k dt y+1 Ci k k y+1+k PC4 Clock synchronization For all i, j: C i ( t ) C j ( t ) < ε y+1 k y x x+1 For typical crystal controlled clocks, k < 10-6 CS 347 Notes CS 347 Notes Physical Clock Synchronization PC4 can be satisfied if a message is sent on every link at least every τ seconds Physical Clock Synchronization Let Δ m be the transmission time of message m Δ m = minimum delay + unpredictable delay Diameter d Δ m = μ m + Z m Assume constant ζ such that Z m < ζ for all m Assume that μ m = μ for all m t 2 Diameter d is the max of min distances (in this example 4, not 3) t 1 Shortest transit time μ Maximum transit time μ + ζ CS 347 Notes CS 347 Notes 15 32

9 Physical Clock Synchronization Theorem PC4 holds for all t > t 0 + dτ with ε d(2kτ + ζ) assuming μ + ζ τ Physical Clock Synchronization Proof for d = 1 Worst case scenario slow At t 1, m leaves f for s with T m = C f ( t 1 ) At t 2, m arrives at s and sets C s( t 2 ) = C f ( t 1 ) + μ α = C f ( t 2 ) C s ( t 2 ) is as large as possible No communication for duration τ Clock f is as fast as possible, s is as slow as possible Just before message at t 2+ τ, clocks are as far as possible = ε s f fast CS 347 Notes CS 347 Notes Physical Clock Synchronization Physical Clock Synchronization Cs (t2) t2 μ + ζ Clocks τk Cf(t1) t1 f α ε f s α τk C f ( t 2 ) = C f ( t 1 ) + ( 1 + k )( μ + ζ ) C s ( t 2 ) = C f ( t 1 ) + μ α = ( 1 + k ) ( μ + ζ ) μ = k ( μ + ζ ) + ζ t2 s t2 + τ CS 347 Notes CS 347 Notes 15 36

10 Physical Clock Synchronization ε = 2kτ + α α = k ( μ + ζ ) + ζ Anomalous Behavior No anomalous behavior as long as C s ( t 2 ) > C f ( t 1 ) Corresponds to fastest allowed external transmission ε = 2kτ + ζ + k ( μ + ζ ) μ min > ε 1 k Assuming that k 1 and ( μ + ζ ) τ we get ε 2kτ + ζ Exercise: Why? CS 347 Notes CS 347 Notes Uses for Physical Clocks 1. To order events 2. Detect timeouts (failures) Uses for Physical Clocks t 2 = ( ε + μ + ζ ) ( 1 + k ) + t 1 Example Expecting reply to request by time t 1 At time t 2 = ( ε + μ + ζ ) ( 1 + k ) + t 1 can declare timeout Account for own clock drift Max transmission μ + ζ t1 t1 at remote clock ε Self Other CS 347 Notes CS 347 Notes 15 40

11 Clock Servers With PC2, a fast clock speeds up all others Use a single, reliable clock service instead Broadcast time synchronization messages Assume time server has perfect real time (i.e., k = 0) E.g., based on atomic clocks and GPS Exercise: What is the corresponding ε? Summary Ordering of events Logical clocks Physical clocks Properties Synchronization Clock servers CS 347 Notes CS 347 Notes 15 42

Absence of Global Clock

Absence of Global Clock Absence of Global Clock Problem: synchronizing the activities of different part of the system (e.g. process scheduling) What about using a single shared clock? two different processes can see the clock

More information

Clock Synchronization

Clock Synchronization Today: Canonical Problems in Distributed Systems Time ordering and clock synchronization Leader election Mutual exclusion Distributed transactions Deadlock detection Lecture 11, page 7 Clock Synchronization

More information

416 Distributed Systems. Time Synchronization (Part 2: Lamport and vector clocks) Jan 27, 2017

416 Distributed Systems. Time Synchronization (Part 2: Lamport and vector clocks) Jan 27, 2017 416 Distributed Systems Time Synchronization (Part 2: Lamport and vector clocks) Jan 27, 2017 1 Important Lessons (last lecture) Clocks on different systems will always behave differently Skew and drift

More information

Distributed Systems Principles and Paradigms. Chapter 06: Synchronization

Distributed Systems Principles and Paradigms. Chapter 06: Synchronization Distributed Systems Principles and Paradigms Maarten van Steen VU Amsterdam, Dept. Computer Science Room R4.20, steen@cs.vu.nl Chapter 06: Synchronization Version: November 16, 2009 2 / 39 Contents Chapter

More information

Distributed Systems Principles and Paradigms

Distributed Systems Principles and Paradigms Distributed Systems Principles and Paradigms Chapter 6 (version April 7, 28) Maarten van Steen Vrije Universiteit Amsterdam, Faculty of Science Dept. Mathematics and Computer Science Room R4.2. Tel: (2)

More information

Distributed Computing. Synchronization. Dr. Yingwu Zhu

Distributed Computing. Synchronization. Dr. Yingwu Zhu Distributed Computing Synchronization Dr. Yingwu Zhu Topics to Discuss Physical Clocks Logical Clocks: Lamport Clocks Classic paper: Time, Clocks, and the Ordering of Events in a Distributed System Lamport

More information

DISTRIBUTED COMPUTER SYSTEMS

DISTRIBUTED COMPUTER SYSTEMS DISTRIBUTED COMPUTER SYSTEMS SYNCHRONIZATION Dr. Jack Lange Computer Science Department University of Pittsburgh Fall 2015 Topics Clock Synchronization Physical Clocks Clock Synchronization Algorithms

More information

Distributed systems Lecture 4: Clock synchronisation; logical clocks. Dr Robert N. M. Watson

Distributed systems Lecture 4: Clock synchronisation; logical clocks. Dr Robert N. M. Watson Distributed systems Lecture 4: Clock synchronisation; logical clocks Dr Robert N. M. Watson 1 Last time Started to look at time in distributed systems Coordinating actions between processes Physical clocks

More information

Slides for Chapter 14: Time and Global States

Slides for Chapter 14: Time and Global States Slides for Chapter 14: Time and Global States From Coulouris, Dollimore, Kindberg and Blair Distributed Systems: Concepts and Design Edition 5, Addison-Wesley 2012 Overview of Chapter Introduction Clocks,

More information

Real-Time Course. Clock synchronization. June Peter van der TU/e Computer Science, System Architecture and Networking

Real-Time Course. Clock synchronization. June Peter van der TU/e Computer Science, System Architecture and Networking Real-Time Course Clock synchronization 1 Clocks Processor p has monotonically increasing clock function C p (t) Clock has drift rate For t1 and t2, with t2 > t1 (1-ρ)(t2-t1)

More information

Logical Time. 1. Introduction 2. Clock and Events 3. Logical (Lamport) Clocks 4. Vector Clocks 5. Efficient Implementation

Logical Time. 1. Introduction 2. Clock and Events 3. Logical (Lamport) Clocks 4. Vector Clocks 5. Efficient Implementation Logical Time Nicola Dragoni Embedded Systems Engineering DTU Compute 1. Introduction 2. Clock and Events 3. Logical (Lamport) Clocks 4. Vector Clocks 5. Efficient Implementation 2013 ACM Turing Award:

More information

Our Problem. Model. Clock Synchronization. Global Predicate Detection and Event Ordering

Our Problem. Model. Clock Synchronization. Global Predicate Detection and Event Ordering Our Problem Global Predicate Detection and Event Ordering To compute predicates over the state of a distributed application Model Clock Synchronization Message passing No failures Two possible timing assumptions:

More information

CS505: Distributed Systems

CS505: Distributed Systems Department of Computer Science CS505: Distributed Systems Lecture 5: Time in Distributed Systems Overview Time and Synchronization Logical Clocks Vector Clocks Distributed Systems Asynchronous systems:

More information

Agreement. Today. l Coordination and agreement in group communication. l Consensus

Agreement. Today. l Coordination and agreement in group communication. l Consensus Agreement Today l Coordination and agreement in group communication l Consensus Events and process states " A distributed system a collection P of N singlethreaded processes w/o shared memory Each process

More information

Time in Distributed Systems: Clocks and Ordering of Events

Time in Distributed Systems: Clocks and Ordering of Events Time in Distributed Systems: Clocks and Ordering of Events Clocks in Distributed Systems Needed to Order two or more events happening at same or different nodes (Ex: Consistent ordering of updates at different

More information

Time. Today. l Physical clocks l Logical clocks

Time. Today. l Physical clocks l Logical clocks Time Today l Physical clocks l Logical clocks Events, process states and clocks " A distributed system a collection P of N singlethreaded processes without shared memory Each process p i has a state s

More information

Time, Clocks, and the Ordering of Events in a Distributed System

Time, Clocks, and the Ordering of Events in a Distributed System Time, Clocks, and the Ordering of Events in a Distributed System Motivating example: a distributed compilation service FTP server storing source files, object files, executable file stored files have timestamps,

More information

Chapter 11 Time and Global States

Chapter 11 Time and Global States CSD511 Distributed Systems 分散式系統 Chapter 11 Time and Global States 吳俊興 國立高雄大學資訊工程學系 Chapter 11 Time and Global States 11.1 Introduction 11.2 Clocks, events and process states 11.3 Synchronizing physical

More information

Clocks in Asynchronous Systems

Clocks in Asynchronous Systems Clocks in Asynchronous Systems The Internet Network Time Protocol (NTP) 8 Goals provide the ability to externally synchronize clients across internet to UTC provide reliable service tolerating lengthy

More information

CS505: Distributed Systems

CS505: Distributed Systems Cristina Nita-Rotaru CS505: Distributed Systems Ordering events. Lamport and vector clocks. Global states. Detecting failures. Required reading for this topic } Leslie Lamport,"Time, Clocks, and the Ordering

More information

Time. To do. q Physical clocks q Logical clocks

Time. To do. q Physical clocks q Logical clocks Time To do q Physical clocks q Logical clocks Events, process states and clocks A distributed system A collection P of N single-threaded processes (p i, i = 1,, N) without shared memory The processes in

More information

Ordering and Consistent Cuts Nicole Caruso

Ordering and Consistent Cuts Nicole Caruso Ordering and Consistent Cuts Nicole Caruso Cornell University Dept. of Computer Science Time, Clocks, and the Ordering of Events in a Distributed System Leslie Lamport Stanford Research Institute About

More information

Time is an important issue in DS

Time is an important issue in DS Chapter 0: Time and Global States Introduction Clocks,events and process states Synchronizing physical clocks Logical time and logical clocks Global states Distributed debugging Summary Time is an important

More information

Distributed Systems. Time, Clocks, and Ordering of Events

Distributed Systems. Time, Clocks, and Ordering of Events Distributed Systems Time, Clocks, and Ordering of Events Björn Franke University of Edinburgh 2016/2017 Today Last lecture: Basic Algorithms Today: Time, clocks, NTP Ref: CDK Causality, ordering, logical

More information

Distributed Systems. 06. Logical clocks. Paul Krzyzanowski. Rutgers University. Fall 2017

Distributed Systems. 06. Logical clocks. Paul Krzyzanowski. Rutgers University. Fall 2017 Distributed Systems 06. Logical clocks Paul Krzyzanowski Rutgers University Fall 2017 2014-2017 Paul Krzyzanowski 1 Logical clocks Assign sequence numbers to messages All cooperating processes can agree

More information

CptS 464/564 Fall Prof. Dave Bakken. Cpt. S 464/564 Lecture January 26, 2014

CptS 464/564 Fall Prof. Dave Bakken. Cpt. S 464/564 Lecture January 26, 2014 Overview of Ordering and Logical Time Prof. Dave Bakken Cpt. S 464/564 Lecture January 26, 2014 Context This material is NOT in CDKB5 textbook Rather, from second text by Verissimo and Rodrigues, chapters

More information

CS 425 / ECE 428 Distributed Systems Fall Indranil Gupta (Indy) Oct. 5, 2017 Lecture 12: Time and Ordering All slides IG

CS 425 / ECE 428 Distributed Systems Fall Indranil Gupta (Indy) Oct. 5, 2017 Lecture 12: Time and Ordering All slides IG CS 425 / ECE 428 Distributed Systems Fall 2017 Indranil Gupta (Indy) Oct. 5, 2017 Lecture 12: Time and Ordering All slides IG Why Synchronization? You want to catch a bus at 6.05 pm, but your watch is

More information

Distributed Systems. Time, clocks, and Ordering of events. Rik Sarkar. University of Edinburgh Spring 2018

Distributed Systems. Time, clocks, and Ordering of events. Rik Sarkar. University of Edinburgh Spring 2018 Distributed Systems Time, clocks, and Ordering of events Rik Sarkar University of Edinburgh Spring 2018 Notes Today: Time, clocks, NTP Ref: CDK Causality, ordering, logical clocks: Ref: VG, CDK Time Ordering

More information

Distributed Systems 8L for Part IB

Distributed Systems 8L for Part IB Distributed Systems 8L for Part IB Handout 2 Dr. Steven Hand 1 Clocks Distributed systems need to be able to: order events produced by concurrent processes; synchronize senders and receivers of messages;

More information

Recap. CS514: Intermediate Course in Operating Systems. What time is it? This week. Reminder: Lamport s approach. But what does time mean?

Recap. CS514: Intermediate Course in Operating Systems. What time is it? This week. Reminder: Lamport s approach. But what does time mean? CS514: Intermediate Course in Operating Systems Professor Ken Birman Vivek Vishnumurthy: TA Recap We ve started a process of isolating questions that arise in big systems Tease out an abstract issue Treat

More information

Causality and Time. The Happens-Before Relation

Causality and Time. The Happens-Before Relation Causality and Time The Happens-Before Relation Because executions are sequences of events, they induce a total order on all the events It is possible that two events by different processors do not influence

More information

7680: Distributed Systems

7680: Distributed Systems Cristina Nita-Rotaru 7680: Distributed Systems Physical and logical clocks. Global states. Failure detection. Ordering events in distributed systems } Time is essential for ordering events in a distributed

More information

Verification of clock synchronization algorithm (Original Welch-Lynch algorithm and adaptation to TTA)

Verification of clock synchronization algorithm (Original Welch-Lynch algorithm and adaptation to TTA) Verification of clock synchronization algorithm (Original Welch-Lynch algorithm and adaptation to TTA) Christian Mueller November 25, 2005 1 Contents 1 Clock synchronization in general 3 1.1 Introduction............................

More information

Distributed Systems Fundamentals

Distributed Systems Fundamentals February 17, 2000 ECS 251 Winter 2000 Page 1 Distributed Systems Fundamentals 1. Distributed system? a. What is it? b. Why use it? 2. System Architectures a. minicomputer mode b. workstation model c. processor

More information

Time. Lakshmi Ganesh. (slides borrowed from Maya Haridasan, Michael George)

Time. Lakshmi Ganesh. (slides borrowed from Maya Haridasan, Michael George) Time Lakshmi Ganesh (slides borrowed from Maya Haridasan, Michael George) The Problem Given a collection of processes that can... only communicate with significant latency only measure time intervals approximately

More information

Distributed Algorithms Time, clocks and the ordering of events

Distributed Algorithms Time, clocks and the ordering of events Distributed Algorithms Time, clocks and the ordering of events Alberto Montresor University of Trento, Italy 2016/04/26 This work is licensed under a Creative Commons Attribution-ShareAlike 4.0 International

More information

TTA and PALS: Formally Verified Design Patterns for Distributed Cyber-Physical

TTA and PALS: Formally Verified Design Patterns for Distributed Cyber-Physical TTA and PALS: Formally Verified Design Patterns for Distributed Cyber-Physical DASC 2011, Oct/19 CoMMiCS Wilfried Steiner wilfried.steiner@tttech.com TTTech Computertechnik AG John Rushby rushby@csl.sri.com

More information

Distributed Mutual Exclusion Based on Causal Ordering

Distributed Mutual Exclusion Based on Causal Ordering Journal of Computer Science 5 (5): 398-404, 2009 ISSN 1549-3636 2009 Science Publications Distributed Mutual Exclusion Based on Causal Ordering Mohamed Naimi and Ousmane Thiare Department of Computer Science,

More information

C 1. Recap: Finger Table. CSE 486/586 Distributed Systems Consensus. One Reason: Impossibility of Consensus. Let s Consider This

C 1. Recap: Finger Table. CSE 486/586 Distributed Systems Consensus. One Reason: Impossibility of Consensus. Let s Consider This Recap: Finger Table Finding a using fingers Distributed Systems onsensus Steve Ko omputer Sciences and Engineering University at Buffalo N102 86 + 2 4 N86 20 + 2 6 N20 2 Let s onsider This

More information

On the Quality of Service of Failure Detectors. Sam Toueg Wei Chen, Marcos K. Aguilera (part of Wei ChenÕs PhD Thesis)

On the Quality of Service of Failure Detectors. Sam Toueg Wei Chen, Marcos K. Aguilera (part of Wei ChenÕs PhD Thesis) On the Quality of Service of Failure etectors Sam oueg Wei Chen, Marcos K. Aguilera part of Wei ChenÕs Ph hesis Abstract We study the quality of service QoS of failure detectors. By QoS, we mean a specification

More information

Consistent Global States of Distributed Systems: Fundamental Concepts and Mechanisms. CS 249 Project Fall 2005 Wing Wong

Consistent Global States of Distributed Systems: Fundamental Concepts and Mechanisms. CS 249 Project Fall 2005 Wing Wong Consistent Global States of Distributed Systems: Fundamental Concepts and Mechanisms CS 249 Project Fall 2005 Wing Wong Outline Introduction Asynchronous distributed systems, distributed computations,

More information

MODELING TIME AND EVENTS IN A DISTRIBUTED SYSTEM

MODELING TIME AND EVENTS IN A DISTRIBUTED SYSTEM MODELING TIME AND EVENTS IN A DISTRIBUTED SYSTEM Joseph Spring School of Computing, University of Hertfordshire, College Lane, Hatfield. AL10 9AB UK e-mail: j.spring @ herts.ac.uk 1. Distributed Systems

More information

Causality and physical time

Causality and physical time Logical Time Causality and physical time Causality is fundamental to the design and analysis of parallel and distributed computing and OS. Distributed algorithms design Knowledge about the progress Concurrency

More information

Figure 10.1 Skew between computer clocks in a distributed system

Figure 10.1 Skew between computer clocks in a distributed system Figure 10.1 Skew between computer clocks in a distributed system Network Instructor s Guide for Coulouris, Dollimore and Kindberg Distributed Systems: Concepts and Design Edn. 3 Pearson Education 2001

More information

Failure detectors Introduction CHAPTER

Failure detectors Introduction CHAPTER CHAPTER 15 Failure detectors 15.1 Introduction This chapter deals with the design of fault-tolerant distributed systems. It is widely known that the design and verification of fault-tolerent distributed

More information

Seeking Fastness in Multi-Writer Multiple- Reader Atomic Register Implementations

Seeking Fastness in Multi-Writer Multiple- Reader Atomic Register Implementations ΚΥΠΡΙΑΚΗ ΔΗΜΟΚΡΑΤΙΑ ΕΥΡΩΠΑΪΚΗ ΕΝΩΣΗ Η ΔΕΣΜΗ 29- ΣΥΓΧΡΗΜΑΤΟΔΟΤΕΙΤΑΙ ΑΠΟ ΤΗΝ ΚΥΠΡΙΑΚΗ ΔΗΜΟΚΡΑΤΙΑ ΚΑΙ ΤΟ ΕΥΡΩΠΑΪΚΟ ΤΑΜΕΙΟ ΠΕΡΙΦΕΡΕΙΑΚΗΣ ΑΝΑΠΤΥΞΗΣ ΤΗΣ ΕΕ Seeking Fastness in Multi-Writer Multiple- Reader Atomic

More information

Today. Vector Clocks and Distributed Snapshots. Motivation: Distributed discussion board. Distributed discussion board. 1. Logical Time: Vector clocks

Today. Vector Clocks and Distributed Snapshots. Motivation: Distributed discussion board. Distributed discussion board. 1. Logical Time: Vector clocks Vector Clocks and Distributed Snapshots Today. Logical Time: Vector clocks 2. Distributed lobal Snapshots CS 48: Distributed Systems Lecture 5 Kyle Jamieson 2 Motivation: Distributed discussion board Distributed

More information

Cuts. Cuts. Consistent cuts and consistent global states. Global states and cuts. A cut C is a subset of the global history of H

Cuts. Cuts. Consistent cuts and consistent global states. Global states and cuts. A cut C is a subset of the global history of H Cuts Cuts A cut C is a subset of the global history of H C = h c 1 1 hc 2 2...hc n n A cut C is a subset of the global history of H The frontier of C is the set of events e c 1 1,ec 2 2,...ec n n C = h

More information

Do we have a quorum?

Do we have a quorum? Do we have a quorum? Quorum Systems Given a set U of servers, U = n: A quorum system is a set Q 2 U such that Q 1, Q 2 Q : Q 1 Q 2 Each Q in Q is a quorum How quorum systems work: A read/write shared register

More information

Clock Synchronization in the Presence of. Omission and Performance Failures, and. Processor Joins. Flaviu Cristian, Houtan Aghili and Ray Strong

Clock Synchronization in the Presence of. Omission and Performance Failures, and. Processor Joins. Flaviu Cristian, Houtan Aghili and Ray Strong Clock Synchronization in the Presence of Omission and Performance Failures, and Processor Joins Flaviu Cristian, Houtan Aghili and Ray Strong IBM Research Almaden Research Center Abstract This paper presents

More information

Energy-Efficient Broadcast Scheduling. Speed-Controlled Transmission Channels

Energy-Efficient Broadcast Scheduling. Speed-Controlled Transmission Channels for Speed-Controlled Transmission Channels Joint work with Christian Gunia from Freiburg University in ISAAC 06. 25.10.07 Outline Problem Definition and Motivation 1 Problem Definition and Motivation 2

More information

How to deal with uncertainties and dynamicity?

How to deal with uncertainties and dynamicity? How to deal with uncertainties and dynamicity? http://graal.ens-lyon.fr/ lmarchal/scheduling/ 19 novembre 2012 1/ 37 Outline 1 Sensitivity and Robustness 2 Analyzing the sensitivity : the case of Backfilling

More information

CS5412: REPLICATION, CONSISTENCY AND CLOCKS

CS5412: REPLICATION, CONSISTENCY AND CLOCKS 1 CS5412: REPLICATION, CONSISTENCY AND CLOCKS Lecture X Ken Birman Recall that clouds have tiers 2 Up to now our focus has been on client systems and the network, and the way that the cloud has reshaped

More information

Unreliable Failure Detectors for Reliable Distributed Systems

Unreliable Failure Detectors for Reliable Distributed Systems Unreliable Failure Detectors for Reliable Distributed Systems A different approach Augment the asynchronous model with an unreliable failure detector for crash failures Define failure detectors in terms

More information

Counters. We ll look at different kinds of counters and discuss how to build them

Counters. We ll look at different kinds of counters and discuss how to build them Counters We ll look at different kinds of counters and discuss how to build them These are not only examples of sequential analysis and design, but also real devices used in larger circuits 1 Introducing

More information

Coordination. Failures and Consensus. Consensus. Consensus. Overview. Properties for Correct Consensus. Variant I: Consensus (C) P 1. v 1.

Coordination. Failures and Consensus. Consensus. Consensus. Overview. Properties for Correct Consensus. Variant I: Consensus (C) P 1. v 1. Coordination Failures and Consensus If the solution to availability and scalability is to decentralize and replicate functions and data, how do we coordinate the nodes? data consistency update propagation

More information

Chandy-Lamport Snapshotting

Chandy-Lamport Snapshotting Chandy-Lamport Snapshotting COS 418: Distributed Systems Precept 8 Themis Melissaris and Daniel Suo [Content adapted from I. Gupta] Agenda What are global snapshots? The Chandy-Lamport algorithm Why does

More information

Efficient Notification Ordering for Geo-Distributed Pub/Sub Systems

Efficient Notification Ordering for Geo-Distributed Pub/Sub Systems R. BALDONI ET AL. 1 Efficient Notification Ordering for Geo-Distributed Pub/Sub Systems Supplemental material Roberto Baldoni, Silvia Bonomi, Marco Platania, and Leonardo Querzoni 1 ALGORITHM PSEUDO-CODE

More information

Clock Synchronization

Clock Synchronization What s it or? Temporal ordering o events produced by concurrent processes Clock Synchronization Synchronization between senders and receivers o messages Coordination o joint activity Serialization o concurrent

More information

Gradient Clock Synchronization

Gradient Clock Synchronization Noname manuscript No. (will be inserted by the editor) Rui Fan Nancy Lynch Gradient Clock Synchronization the date of receipt and acceptance should be inserted later Abstract We introduce the distributed

More information

Causal Broadcast Seif Haridi

Causal Broadcast Seif Haridi Causal Broadcast Seif Haridi haridi@kth.se Motivation Assume we have a chat application Whatever written is reliably broadcast to group If you get the following output, is it ok? [Paris] Are you sure,

More information

INF Models of concurrency

INF Models of concurrency INF4140 - Models of concurrency RPC and Rendezvous INF4140 Lecture 15. Nov. 2017 RPC and Rendezvous Outline More on asynchronous message passing interacting processes with different patterns of communication

More information

Time Synchronization

Time Synchronization Massachusetts Institute of Technology Lecture 7 6.895: Advanced Distributed Algorithms March 6, 2006 Professor Nancy Lynch Time Synchronization Readings: Fan, Lynch. Gradient clock synchronization Attiya,

More information

Task Models and Scheduling

Task Models and Scheduling Task Models and Scheduling Jan Reineke Saarland University June 27 th, 2013 With thanks to Jian-Jia Chen at KIT! Jan Reineke Task Models and Scheduling June 27 th, 2013 1 / 36 Task Models and Scheduling

More information

A subtle problem. An obvious problem. An obvious problem. An obvious problem. No!

A subtle problem. An obvious problem. An obvious problem. An obvious problem. No! A subtle problem An obvious problem when LC = t do S doesn t make sense for Lamport clocks! there is no guarantee that LC will ever be S is anyway executed after LC = t Fixes: if e is internal/send and

More information

Real Time Operating Systems

Real Time Operating Systems Real Time Operating ystems Luca Abeni luca.abeni@unitn.it Interacting Tasks Until now, only independent tasks... A job never blocks or suspends A task only blocks on job termination In real world, jobs

More information

Causal Consistency for Geo-Replicated Cloud Storage under Partial Replication

Causal Consistency for Geo-Replicated Cloud Storage under Partial Replication Causal Consistency for Geo-Replicated Cloud Storage under Partial Replication Min Shen, Ajay D. Kshemkalyani, TaYuan Hsu University of Illinois at Chicago Min Shen, Ajay D. Kshemkalyani, TaYuan Causal

More information

Agreement Protocols. CS60002: Distributed Systems. Pallab Dasgupta Dept. of Computer Sc. & Engg., Indian Institute of Technology Kharagpur

Agreement Protocols. CS60002: Distributed Systems. Pallab Dasgupta Dept. of Computer Sc. & Engg., Indian Institute of Technology Kharagpur Agreement Protocols CS60002: Distributed Systems Pallab Dasgupta Dept. of Computer Sc. & Engg., Indian Institute of Technology Kharagpur Classification of Faults Based on components that failed Program

More information

The Byzantine Generals Problem Leslie Lamport, Robert Shostak and Marshall Pease. Presenter: Jose Calvo-Villagran

The Byzantine Generals Problem Leslie Lamport, Robert Shostak and Marshall Pease. Presenter: Jose Calvo-Villagran + The Byzantine Generals Problem Leslie Lamport, Robert Shostak and Marshall Pease Presenter: Jose Calvo-Villagran jcalvovi@uwaterloo.ca + Overview n The Byzantine Generals Problem n A solution: Oral Messages

More information

1 Modelling and Simulation

1 Modelling and Simulation 1 Modelling and Simulation 1.1 Introduction This course teaches various aspects of computer-aided modelling for the performance evaluation of computer systems and communication networks. The performance

More information

DCS: Distributed Asynchronous Clock Synchronization in Delay Tolerant Networks

DCS: Distributed Asynchronous Clock Synchronization in Delay Tolerant Networks IEEE TRANSACTIONS ON PARALLEL AND DISTRIBUTED SYSTEMS 1 DCS: Distributed Asynchronous Clock Synchronization in Delay Tolerant Networks Bong Jun Choi, Student Member, IEEE, Hao Liang, Student Member, IEEE,

More information

Distributed Consensus

Distributed Consensus Distributed Consensus Reaching agreement is a fundamental problem in distributed computing. Some examples are Leader election / Mutual Exclusion Commit or Abort in distributed transactions Reaching agreement

More information

Reliable Broadcast for Broadcast Busses

Reliable Broadcast for Broadcast Busses Reliable Broadcast for Broadcast Busses Ozalp Babaoglu and Rogerio Drummond. Streets of Byzantium: Network Architectures for Reliable Broadcast. IEEE Transactions on Software Engineering SE- 11(6):546-554,

More information

Fault-Tolerant Consensus

Fault-Tolerant Consensus Fault-Tolerant Consensus CS556 - Panagiota Fatourou 1 Assumptions Consensus Denote by f the maximum number of processes that may fail. We call the system f-resilient Description of the Problem Each process

More information

TSCCLOCK: A LOW COST, ROBUST, ACCURATE SOFTWARE CLOCK FOR NETWORKED COMPUTERS

TSCCLOCK: A LOW COST, ROBUST, ACCURATE SOFTWARE CLOCK FOR NETWORKED COMPUTERS TSCCLOCK: A LOW COST, ROBUST, ACCURATE SOFTWARE CLOCK FOR NETWORKED COMPUTERS Darryl Veitch d.veitch@ee.unimelb.edu.au http://www.cubinlab.ee.unimelb.edu.au/ darryl Collaboration with Julien Ridoux CUBIN,

More information

GNSS: Global Navigation Satellite Systems

GNSS: Global Navigation Satellite Systems GNSS: Global Navigation Satellite Systems Global: today the American GPS (Global Positioning Service), http://gps.losangeles.af.mil/index.html the Russian GLONASS, http://www.glonass-center.ru/frame_e.html

More information

An Asynchronous Message-Passing Distributed Algorithm for the Generalized Local Critical Section Problem

An Asynchronous Message-Passing Distributed Algorithm for the Generalized Local Critical Section Problem algorithms Article An Asynchronous Message-Passing Distributed Algorithm for the Generalized Local Critical Section Problem Sayaka Kamei 1, * and Hirotsugu Kakugawa 2 1 Graduate School of Engineering,

More information

Optimal Clock Synchronization

Optimal Clock Synchronization Optimal Clock Synchronization T. K. SRIKANTH AND SAM TOUEG Cornell University, Ithaca, New York Abstract. We present a simple, efficient, and unified solution to the problems of synchronizing, initializing,

More information

Early consensus in an asynchronous system with a weak failure detector*

Early consensus in an asynchronous system with a weak failure detector* Distrib. Comput. (1997) 10: 149 157 Early consensus in an asynchronous system with a weak failure detector* André Schiper Ecole Polytechnique Fe dérale, De partement d Informatique, CH-1015 Lausanne, Switzerland

More information

Asynchronous group mutual exclusion in ring networks

Asynchronous group mutual exclusion in ring networks Asynchronous group mutual exclusion in ring networks K.-P.Wu and Y.-J.Joung Abstract: In group mutual exclusion solutions for shared-memory models and complete messagepassing networks have been proposed.

More information

Computer Science, Informatik 4 Communication and Distributed Systems. Simulation. Discrete-Event System Simulation. Dr.

Computer Science, Informatik 4 Communication and Distributed Systems. Simulation. Discrete-Event System Simulation. Dr. Simulation Discrete-Event System Simulation Chapter 9 Verification and Validation of Simulation Models Purpose & Overview The goal of the validation process is: To produce a model that represents true

More information

Integrating External and Internal Clock Synchronization. Christof Fetzer and Flaviu Cristian. Department of Computer Science & Engineering

Integrating External and Internal Clock Synchronization. Christof Fetzer and Flaviu Cristian. Department of Computer Science & Engineering Integrating External and Internal Clock Synchronization Christof Fetzer and Flaviu Cristian Department of Computer Science & Engineering University of California, San Diego La Jolla, CA 9093?0114 e-mail:

More information

MODBUS Protocol for CS141 network card families

MODBUS Protocol for CS141 network card families Last update: 20/09/208 MODBUS Protocol for CS4 network card families Summary. MODBUS PROTOCOL... 2.. MODBUS COMMUNICATION PARAMETERS... 2.2. AVAILABLE MODBUS FUNCTION CODES... 2.3. EXCEPTION CODES... 3

More information

An object-oriented design process. Weather system description. Layered architecture. Process stages. System context and models of use

An object-oriented design process. Weather system description. Layered architecture. Process stages. System context and models of use An object-oriented design process Process stages Structured design processes involve developing a number of different system models. They require a lot of effort for development and maintenance of these

More information

Distributed Termination Detection for Dynamic Systems

Distributed Termination Detection for Dynamic Systems Distributed Termination Detection for Dynamic Systems D.M. Dhamdhere Sridhar Iyer E.K.K.Reddy Dept of Computer Science IIT Bombay Mumbai, INDIA Abstract A symmetric algorithm for detecting the termination

More information

On the Growth of the Prime Numbers Based Encoded Vector Clock

On the Growth of the Prime Numbers Based Encoded Vector Clock On the Growth of the Prime Numbers Based Encoded Vector Clock Ajay D. Kshemkalyani Bhargav Voleti University of Illinois at Chicago ajay@uic.edu Kshemkalyani, Voleti (UIC) Encoded Vector Clock 1 / 22 Overview

More information

Accurate Event Composition

Accurate Event Composition Chapter 6 Accurate Event Composition What, then, is time? If no one asks me, I know what it is. If I wish to explain it to him who asks me, I do not know Augustine, Confessions For the integration of events,

More information

IE Advanced Simulation Experiment Design and Analysis. Hong Wan Purdue University

IE Advanced Simulation Experiment Design and Analysis. Hong Wan Purdue University IE Advanced Simulation Experiment Design and Analysis Hong Wan Purdue University Spring, 2007, based on Prof. Barry L. Nelson s notes for IEMS465, Northwestern University 1 SIMULATION OVERVIEW One view

More information

arxiv: v1 [cs.dc] 22 Oct 2018

arxiv: v1 [cs.dc] 22 Oct 2018 FANTOM: A SCALABLE FRAMEWORK FOR ASYNCHRONOUS DISTRIBUTED SYSTEMS A PREPRINT Sang-Min Choi, Jiho Park, Quan Nguyen, and Andre Cronje arxiv:1810.10360v1 [cs.dc] 22 Oct 2018 FANTOM Lab FANTOM Foundation

More information

Clock Synchronization with Bounded Global and Local Skew

Clock Synchronization with Bounded Global and Local Skew Clock Synchronization with ounded Global and Local Skew Distributed Computing Christoph Lenzen, ETH Zurich Thomas Locher, ETH Zurich Roger Wattenhofer, ETH Zurich October 2008 Motivation: No Global Clock

More information

COMP9334: Capacity Planning of Computer Systems and Networks

COMP9334: Capacity Planning of Computer Systems and Networks COMP9334: Capacity Planning of Computer Systems and Networks Week 2: Operational analysis Lecturer: Prof. Sanjay Jha NETWORKS RESEARCH GROUP, CSE, UNSW Operational analysis Operational: Collect performance

More information

CS505: Distributed Systems

CS505: Distributed Systems Cristina Nita-Rotaru CS505: Distributed Systems. Required reading for this topic } Michael J. Fischer, Nancy A. Lynch, and Michael S. Paterson for "Impossibility of Distributed with One Faulty Process,

More information

Estimation of clock offset from one-way delay measurement on asymmetric paths

Estimation of clock offset from one-way delay measurement on asymmetric paths Estimation of clock offset from one-way delay measurement on asymmetric paths Masato TSURU 1, Tetsuya TAKINE 2 and Yuji OIE 3 1 Telecommunications Advancement Organization of Japan. 2 Graduate School of

More information

Distributed Algorithms (CAS 769) Dr. Borzoo Bonakdarpour

Distributed Algorithms (CAS 769) Dr. Borzoo Bonakdarpour Distributed Algorithms (CAS 769) Week 1: Introduction, Logical clocks, Snapshots Dr. Borzoo Bonakdarpour Department of Computing and Software McMaster University Dr. Borzoo Bonakdarpour Distributed Algorithms

More information

Outline F eria AADL behavior 1/ 78

Outline F eria AADL behavior 1/ 78 Outline AADL behavior Annex Jean-Paul Bodeveix 2 Pierre Dissaux 3 Mamoun Filali 2 Pierre Gaufillet 1 François Vernadat 2 1 AIRBUS-FRANCE 2 FéRIA 3 ELLIDIS SAE AS2C Detroit Michigan April 2006 FéRIA AADL

More information

A Methodology for Clock Benchmarking

A Methodology for Clock Benchmarking A Methodology for Clock Benchmarking Julien Ridoux j.ridoux@ee.unimelb.edu.au Darryl Veitch d.veitch@ee.unimelb.edu.au ARC Special Research Centre for Ultra-Broadband Information Networks THE UNIVERSITY

More information

Analysis of Bounds on Hybrid Vector Clocks

Analysis of Bounds on Hybrid Vector Clocks Analysis of Bounds on Hybrid Vector Clocks Sorrachai Yingchareonthawornchai 1, Sandeep Kulkarni 2, and Murat Demirbas 3 Michigan State University 1,2 University at Buffalo 3 (OPODIS 2015) Motivation A

More information

1 Lamport s Bakery Algorithm

1 Lamport s Bakery Algorithm Com S 6 Spring Semester 2009 Algorithms for Multiprocessor Synchronization Lecture 3: Tuesday, 27th January 2009 Instructor: Soma Chaudhuri Scribe: Neeraj Khanolkar Lamport s Bakery Algorithm Algorithm

More information

arxiv: v2 [cs.dc] 21 Apr 2017

arxiv: v2 [cs.dc] 21 Apr 2017 AllConcur: Leaderless Concurrent Atomic Broadcast (Extended Version) arxiv:1608.05866v2 [cs.dc] 21 Apr 2017 Marius Poke HLRS University of Stuttgart marius.poke@hlrs.de Abstract Many distributed systems

More information

Implementing Uniform Reliable Broadcast with Binary Consensus in Systems with Fair-Lossy Links

Implementing Uniform Reliable Broadcast with Binary Consensus in Systems with Fair-Lossy Links Implementing Uniform Reliable Broadcast with Binary Consensus in Systems with Fair-Lossy Links Jialin Zhang Tsinghua University zhanggl02@mails.tsinghua.edu.cn Wei Chen Microsoft Research Asia weic@microsoft.com

More information