Introduction to Distributed Self-Stabilizing Algorithms

Introduction to Distributed Self-Stabilizing Algorithms
Title Introduction to Distributed Self-Stabilizing Algorithms PDF eBook
Author Karine Altisen
Publisher Springer Nature
Pages 147
Release 2022-05-31
Genre Computers
ISBN 3031020138

Download Introduction to Distributed Self-Stabilizing Algorithms Book in PDF, Epub and Kindle

This book aims at being a comprehensive and pedagogical introduction to the concept of self-stabilization, introduced by Edsger Wybe Dijkstra in 1973. Self-stabilization characterizes the ability of a distributed algorithm to converge within finite time to a configuration from which its behavior is correct (i.e., satisfies a given specification), regardless the arbitrary initial configuration of the system. This arbitrary initial configuration may be the result of the occurrence of a finite number of transient faults. Hence, self-stabilization is actually considered as a versatile non-masking fault tolerance approach, since it recovers from the effect of any finite number of such faults in an unified manner. Another major interest of such an automatic recovery method comes from the difficulty of resetting malfunctioning devices in a large-scale (and so, geographically spread) distributed system (the Internet, Pair-to-Pair networks, and Delay Tolerant Networks are examples of such distributed systems). Furthermore, self-stabilization is usually recognized as a lightweight property to achieve fault tolerance as compared to other classical fault tolerance approaches. Indeed, the overhead, both in terms of time and space, of state-of-the-art self-stabilizing algorithms is commonly small. This makes self-stabilization very attractive for distributed systems equipped of processes with low computational and memory capabilities, such as wireless sensor networks. After more than 40 years of existence, self-stabilization is now sufficiently established as an important field of research in theoretical distributed computing to justify its teaching in advanced research-oriented graduate courses. This book is an initiation course, which consists of the formal definition of self-stabilization and its related concepts, followed by a deep review and study of classical (simple) algorithms, commonly used proof schemes and design patterns, as well as premium results issued from the self-stabilizing community. As often happens in the self-stabilizing area, in this book we focus on the proof of correctness and the analytical complexity of the studied distributed self-stabilizing algorithms. Finally, we underline that most of the algorithms studied in this book are actually dedicated to the high-level atomic-state model, which is the most commonly used computational model in the self-stabilizing area. However, in the last chapter, we present general techniques to achieve self-stabilization in the low-level message passing model, as well as example algorithms.

Self-stabilization

Self-stabilization
Title Self-stabilization PDF eBook
Author Shlomi Dolev
Publisher MIT Press
Pages 212
Release 2000
Genre Computers
ISBN 9780262041782

Download Self-stabilization Book in PDF, Epub and Kindle

Shlomi Dolev presents the fundamentals of self-stabilization and demonstrates the process of designing self-stabilizing distributed systems.

Distributed Self-stabilizing Algorithms

Distributed Self-stabilizing Algorithms
Title Distributed Self-stabilizing Algorithms PDF eBook
Author Srinivasan Chandrasekar
Publisher
Pages 62
Release 1992
Genre Algorithms
ISBN

Download Distributed Self-stabilizing Algorithms Book in PDF, Epub and Kindle

Self-Stabilizing Systems

Self-Stabilizing Systems
Title Self-Stabilizing Systems PDF eBook
Author Sukumar Ghosh
Publisher McGill-Queen's Press - MQUP
Pages 225
Release 1997-08-15
Genre Science
ISBN 0773591141

Download Self-Stabilizing Systems Book in PDF, Epub and Kindle

Self- governing control is a defining characteristic of autonomous computing machinery. Autonomy implies some degree of independence, and when a system's ability to achieve its mission is independent of how it is initialized, the system is self-stabilizing. Application of self-stabilization to system and network components is motivated by core concerns of fault-tolerance in distributed systems. Self-stabilization is a solution to problems of transient memory faults and systems with dynamic reconfigurations. Research in self-stabilization explores many of the classic themes of distributed computing (distributed graph algorithms, mutual exclusion, distributed agreement). Recent papers combine self-stabilization with traditional forms of fault-tolerance, consider methodological issues for the design of self-stabilizing systems, investigate randomized techniques, and apply stabilization to new networking models. The workshop brings together concerns from theory and practice of self-stabilization.

Introduction to Distributed Algorithms

Introduction to Distributed Algorithms
Title Introduction to Distributed Algorithms PDF eBook
Author Gerard Tel
Publisher Cambridge University Press
Pages 612
Release 2000-09-28
Genre Computers
ISBN 9780521794831

Download Introduction to Distributed Algorithms Book in PDF, Epub and Kindle

Distributed algorithms have been the subject of intense development over the last twenty years. The second edition of this successful textbook provides an up-to-date introduction both to the topic, and to the theory behind the algorithms. The clear presentation makes the book suitable for advanced undergraduate or graduate courses, whilst the coverage is sufficiently deep to make it useful for practising engineers and researchers. The author concentrates on algorithms for the point-to-point message passing model, and includes algorithms for the implementation of computer communication networks. Other key areas discussed are algorithms for the control of distributed applications (wave, broadcast, election, termination detection, randomized algorithms for anonymous networks, snapshots, deadlock detection, synchronous systems), and fault-tolerance achievable by distributed algorithms. The two new chapters on sense of direction and failure detectors are state-of-the-art and will provide an entry to research in these still-developing topics.

Automated Analysis and Optimization of Distributed Self-stabilizing Algorithms

Automated Analysis and Optimization of Distributed Self-stabilizing Algorithms
Title Automated Analysis and Optimization of Distributed Self-stabilizing Algorithms PDF eBook
Author Saba Aflaki
Publisher
Pages 67
Release 2015
Genre
ISBN

Download Automated Analysis and Optimization of Distributed Self-stabilizing Algorithms Book in PDF, Epub and Kindle

Self-stabilization [2] is a versatile technique for recovery from erroneous behavior due to transient faults or wrong initialization. A system is self-stabilizing if (1) starting from an arbitrary initial state it can automatically reach a set of legitimate states in a finite number of steps and (2) it remains in legitimate states in the absence of faults. Weak-stabilization [3] and probabilistic-stabilization [4] were later introduced in the literature to deal with resource consumption of self-stabilizing algorithms and impossibility results. Since the system perturbed by fault may deviate from correct behavior for a finite amount of time, it is paramount to minimize this time as much as possible, especially in the domain of robotics and networking. This type of fault tolerance is called non-masking because the faulty behavior is not completely masked from the user [1]. Designing correct stabilizing algorithms can be tedious. Designing such algorithms that satisfy certain average recovery time constraints (e.g., for performance guarantees) adds further complications to this process. Therefore, developing an automatic technique that takes as input the specification of the desired system, and synthesizes as output a stabilizing algorithm with minimum (or other upper bound) average recovery time is useful and challenging. In this thesis, our main focus is on designing automated techniques to optimize the average recovery time of stabilizing systems using model checking and synthesis techniques. First, we prove that synthesizing weak-stabilizing distributed programs from scratch and repairing stabilizing algorithms with average recovery time constraints are NP-complete in the state-space of the program. To cope with this complexity, we propose a polynomial-time heuristic that compared to existing stabilizing algorithms, provides lower average recovery time for many of our case studies. Second, we study the problem of fine tuning of probabilistic-stabilizing systems to improve their performance. We take advantage of the two properties of self-stabilizing algorithms to model them as absorbing discrete-time Markov chains. This will reduce the computation of average recovery time to finding the weighted sum of elements in the inverse of a matrix. Finally, we study the impact of scheduling policies on recovery time of stabilizing systems. We, in particular, propose a method to augment self-stabilizing programs with k-central and k-bounded schedulers to study dierent factors, such as geographical distance of processes and the achievable level of parallelism.

Designing Self-stabilizing Algorithms for Practical Distributed Systems

Designing Self-stabilizing Algorithms for Practical Distributed Systems
Title Designing Self-stabilizing Algorithms for Practical Distributed Systems PDF eBook
Author Mikhail Nesterenko
Publisher
Pages 102
Release 1998
Genre
ISBN

Download Designing Self-stabilizing Algorithms for Practical Distributed Systems Book in PDF, Epub and Kindle