Chapter 5.1 - Resynchsonous Stabilizer 5.1- 1 Chapter 5.1 Resynchsonous Stabilizer Self-Stabilization Shlomi Dolev MIT Press, 2000 Draft of Jan 2004, Shlomi.

Slides:



Advertisements
Similar presentations
ON THE COMPLEXITY OF ASYNCHRONOUS GOSSIP Presented by: Tamar Aizikowitz, Spring 2009 C. Georgiou, S. Gilbert, R. Guerraoui, D. R. Kowalski.
Advertisements

CS 267: Automated Verification Lecture 8: Automata Theoretic Model Checking Instructor: Tevfik Bultan.
CIS 540 Principles of Embedded Computation Spring Instructor: Rajeev Alur
CS 542: Topics in Distributed Systems Diganta Goswami.
CS425 /CSE424/ECE428 – Distributed Systems – Fall 2011 Material derived from slides by I. Gupta, M. Harandi, J. Hou, S. Mitra, K. Nahrstedt, N. Vaidya.
Chapter 6 - Convergence in the Presence of Faults1-1 Chapter 6 Self-Stabilization Self-Stabilization Shlomi Dolev MIT Press, 2000 Shlomi Dolev, All Rights.
Chapter 7 - Local Stabilization1 Chapter 7: roadmap 7.1 Super stabilization 7.2 Self-Stabilizing Fault-Containing Algorithms 7.3 Error-Detection Codes.
Lecture 8: Asynchronous Network Algorithms
Distributed Computing 1. Lower bound for leader election on a complete graph Shmuel Zaks ©
Leader Election Let G = (V,E) define the network topology. Each process i has a variable L(i) that defines the leader.  i,j  V  i,j are non-faulty.
Gossip and its application Presented by Anna Kaplun.
Is 1 different from 12? Eli Gafni UCLA Eli Gafni UCLA.
CIS 540 Principles of Embedded Computation Spring Instructor: Rajeev Alur
Gossip Algorithms and Implementing a Cluster/Grid Information service MsSys Course Amar Lior and Barak Amnon.
CSCE 668 DISTRIBUTED ALGORITHMS AND SYSTEMS Fall 2011 Prof. Jennifer Welch CSCE 668 Self Stabilization 1.
Lecture 4: Elections, Reset Anish Arora CSE 763 Notes include material from Dr. Jeff Brumfield.
Consensus problem Agreement. All processes that decide choose the same value. Termination. All non-faulty processes eventually decide. Validity. The common.
Byzantine Generals Problem: Solution using signed messages.
Theoretical Program Checking Greg Bronevetsky. Background The field of Program Checking is about 13 years old. Pioneered by Manuel Blum, Hal Wasserman,
© Janice Regan, CMPT 102, Sept CMPT 102 Introduction to Scientific Computer Programming The software development method algorithms.
CPSC 668Set 5: Synchronous LE in Rings1 CPSC 668 Distributed Algorithms and Systems Spring 2008 Prof. Jennifer Welch.
Chapter 8 - Self-Stabilizing Computing1 Chapter 8 – Self-Stabilizing Computing Self-Stabilization Shlomi Dolev MIT Press, 2000 Draft of January 2004 Shlomi.
CPSC 668Set 4: Asynchronous Lower Bound for LE in Rings1 CPSC 668 Distributed Algorithms and Systems Fall 2009 Prof. Jennifer Welch.
 Idit Keidar, Principles of Reliable Distributed Systems, Technion EE, Spring Principles of Reliable Distributed Systems Lecture 7: Failure Detectors.
CPSC 668Set 3: Leader Election in Rings1 CPSC 668 Distributed Algorithms and Systems Spring 2008 Prof. Jennifer Welch.
Chapter 4 - Self-Stabilizing Algorithms for Model Conservation4-1 Chapter 4: roadmap 4.1 Token Passing: Converting a Central Daemon to read/write 4.2 Data-Link.
CPSC 668Set 12: Causality1 CPSC 668 Distributed Algorithms and Systems Fall 2009 Prof. Jennifer Welch.
CPSC 668Self Stabilization1 CPSC 668 Distributed Algorithms and Systems Spring 2008 Prof. Jennifer Welch.
Chapter 4 - Self-Stabilizing Algorithms for Model Conversions iddistance 22 iddistance iddistance iddistance.
Bit Complexity of Breaking and Achieving Symmetry in Chains and Rings.
Secure routing for structured peer-to-peer overlay networks (by Castro et al.) Shariq Rizvi CS 294-4: Peer-to-Peer Systems.
Chapter 4 Self-Stabilization Self-Stabilization Shlomi Dolev MIT Press, 2000 Draft of October 2003 Shlomi Dolev, All Rights Reserved ©
CPSC 668Set 11: Asynchronous Consensus1 CPSC 668 Distributed Algorithms and Systems Fall 2009 Prof. Jennifer Welch.
Self Stabilization Classical Results and Beyond… Elad Schiller CTI (Grece)
©The McGraw-Hill Companies, Inc. Permission required for reproduction or display. 4 th Ed Chapter Chapter 6 Repetition Statements.
Chapter 2: Algorithm Discovery and Design
On Probabilistic Snap-Stabilization Karine Altisen Stéphane Devismes University of Grenoble.
Distributed Consensus Reaching agreement is a fundamental problem in distributed computing. Some examples are Leader election / Mutual Exclusion Commit.
Lecture #12 Distributed Algorithms (I) CS492 Special Topics in Computer Science: Distributed Algorithms and Systems.
On Probabilistic Snap-Stabilization Karine Altisen Stéphane Devismes University of Grenoble.
CSCE 668 DISTRIBUTED ALGORITHMS AND SYSTEMS Fall 2011 Prof. Jennifer Welch CSCE 668 Set 11: Asynchronous Consensus 1.
Ch11 Distributed Agreement. Outline Distributed Agreement Adversaries Byzantine Agreement Impossibility of Consensus Randomized Distributed Agreement.
1 Chapter 10 Synchronization Algorithms and Concurrent Programming Gadi Taubenfeld © 2014 Synchronization Algorithms and Concurrent Programming Synchronization.
DISTRIBUTED SYSTEMS II A POLYNOMIAL LOCAL SOLUTION TO MUTUAL EXCLUSION Prof Philippas Tsigas Distributed Computing and Systems Research Group.
1 Leader Election in Rings. 2 A Ring Network Sense of direction left right.
CSCE 668 DISTRIBUTED ALGORITHMS AND SYSTEMS Fall 2011 Prof. Jennifer Welch CSCE 668 Set 5: Synchronous LE in Rings 1.
Chap 15. Agreement. Problem Processes need to agree on a single bit No link failures A process can fail by crashing (no malicious behavior) Messages take.
SysRép / 2.5A. SchiperEté The consensus problem.
EGR 115 Introduction to Computing for Engineers Branching & Program Design – Part 3 Friday 03 Oct 2014 EGR 115 Introduction to Computing for Engineers.
REPETITION MTS3033 OBJECT ORIENTED PROGRAMMING 1.
Fault tolerance and related issues in distributed computing Shmuel Zaks GSSI - Feb
Superstabilizing Protocols for Dynamic Distributed Systems Authors: Shlomi Dolev, Ted Herman Presented by: Vikas Motwani CSE 291: Wireless Sensor Networks.
1 Fault-Tolerant Consensus. 2 Communication Model Complete graph Synchronous, network.
1 Distributed Vertex Coloring. 2 Vertex Coloring: each vertex is assigned a color.
CSE 486/586 CSE 486/586 Distributed Systems Leader Election Steve Ko Computer Sciences and Engineering University at Buffalo.
CIS 540 Principles of Embedded Computation Spring Instructor: Rajeev Alur
Randomized Algorithms for Distributed Agreement Problems Peter Robinson.
Lecture 11: Coordination and Agreement Central server for mutual exclusion Election – getting a number of processes to agree which is “in charge” CDK4:
CSCE 668 DISTRIBUTED ALGORITHMS AND SYSTEMS
CSCE 668 DISTRIBUTED ALGORITHMS AND SYSTEMS
A Balanced Introduction to Computer Science David Reed, Creighton University ©2005 Pearson Prentice Hall ISBN X Chapter 13 (Reed) - Conditional.
Alternating Bit Protocol
Parallel and Distributed Algorithms
CS60002: Distributed Systems
CSE 486/586 Distributed Systems Leader Election
Lecture 10: Coordination and Agreement
CSCE 668 DISTRIBUTED ALGORITHMS AND SYSTEMS
Lecture 11: Coordination and Agreement
A Balanced Introduction to Computer Science David Reed, Creighton University ©2005 Pearson Prentice Hall ISBN X Chapter 13 (Reed) - Conditional.
CSE 486/586 Distributed Systems Leader Election
Presentation transcript:

chapter Resynchsonous Stabilizer Chapter 5.1 Resynchsonous Stabilizer Self-Stabilization Shlomi Dolev MIT Press, 2000 Draft of Jan 2004, Shlomi Dolev, All Rights Reserved ©

chapter Resynchsonous Stabilizer The Problem  Converting non-stabilizing algorithms to self- stabilizing algorithms  We will deal with a fixed input, fixed output algorithms  The main problem is that we do not know in what state does the algorithm begin, so we cannot perform initiation

chapter Resynchsonous Stabilizer Definitions Denote :  AL – A non stabilizing algorithm  SA – The stabilizing version of AL  Synchronous execution time of AL – the number of steps until the algorithm produces the desired output, in a synchronous system (any asynchronous algorithm works also in a synchronous system)

chapter Resynchsonous Stabilizer A First Solution  Every processor maintains the list of states it had been in during the algorithm  At every step the processors send to their neighbors their lists  A processor that receives the tables of it’s neighbors checks it's table. If there is an error, fix it. Else compute the next state

chapter Resynchsonous Stabilizer Example - Leader Election 3 10 … … … … 3 … … 5 20 … … 10 … … 7 7 … … … 5 … 3 … …

chapter Resynchsonous Stabilizer Why Does it Work?  The first state of AL is defined only by the initiation of the processors  After the first cycle, all the processors have the right first state  Let us assume that after n cycles all processors have n correct entries in their tables  In the next cycle every processor will get the tables of its neighbors and compute its n+1 state correctly

chapter Resynchsonous Stabilizer Perhaps it is too Expensive  The shown approach produces an algorithm that has the same time performance of the non- stabilizing algorithm  Space complexity is a different story. The processors hold in memory the computing sequence of all their neighbors  The messages are very big, and on every cycle messages are sent on every edge

chapter Resynchsonous Stabilizer A New Hope  A possible way of improving the synchronizer is to hold a floating output  If AL has execution time of t, the system includes a stabilizing counting algorithm which has a wraparound larger than t  Every time the counter reaches 0, the system is initialized. The floating values are not initialized.

chapter Resynchsonous Stabilizer Example - Consensus Algorithm  In the consensus algorithm, the algorithm should return an answer after d cycles  Every d cycles, the output is copied to the floating output, and the input is copied to the output  After the first round, the floating output will remain constant

chapter Resynchsonous Stabilizer Randomized Algorithms  When we try to implement the above method to random algorithms we encounter two difficulties:  A randomized algorithm does not have an upper bound to it’s execution  The output of such algorithms may change from one execution to another. The floating value can be changed infinitely often

chapter Resynchsonous Stabilizer The Solution  Check the old output validity, if invalid  Execute the algorithm  Every t cycles, check if the algorithm is stabilized. if it is not, reset the system  In some executions of the algorithm it will stabilize (with probability 1)  When stabilized update the output

chapter Resynchsonous Stabilizer Example – Leader Election  In the uniform system leader election algorithm, every processor chooses a random ID, and sends it to it’s neighbors  If a processor receives an ID larger than it’s own, it resigns from the “race”, and will not participate in the next round  If no message is transmitted through a whole round, all processors are initiated