Fault-Tolerant Message-Passing Distributed Systems

Fault-Tolerant Message-Passing Distributed Systems
Title Fault-Tolerant Message-Passing Distributed Systems PDF eBook
Author Michel Raynal
Publisher Springer
Pages 468
Release 2018-09-08
Genre Computers
ISBN 3319941410

Download Fault-Tolerant Message-Passing Distributed Systems Book in PDF, Epub and Kindle

This book presents the most important fault-tolerant distributed programming abstractions and their associated distributed algorithms, in particular in terms of reliable communication and agreement, which lie at the heart of nearly all distributed applications. These programming abstractions, distributed objects or services, allow software designers and programmers to cope with asynchrony and the most important types of failures such as process crashes, message losses, and malicious behaviors of computing entities, widely known under the term "Byzantine fault-tolerance". The author introduces these notions in an incremental manner, starting from a clear specification, followed by algorithms which are first described intuitively and then proved correct. The book also presents impossibility results in classic distributed computing models, along with strategies, mainly failure detectors and randomization, that allow us to enrich these models. In this sense, the book constitutes an introduction to the science of distributed computing, with applications in all domains of distributed systems, such as cloud computing and blockchains. Each chapter comes with exercises and bibliographic notes to help the reader approach, understand, and master the fascinating field of fault-tolerant distributed computing.

Fault Tolerance in Distributed Systems

Fault Tolerance in Distributed Systems
Title Fault Tolerance in Distributed Systems PDF eBook
Author Pankaj Jalote
Publisher Prentice Hall
Pages 456
Release 1994
Genre Computers
ISBN

Download Fault Tolerance in Distributed Systems Book in PDF, Epub and Kindle

Fault tolerance is an approach by which reliability of a computer system can be increased beyond what can be achieved by traditional methods. Comprehensive and self-contained, this book explores the information available on software supported fault tolerance techniques, with a focus on fault tolerance in distributed systems.

Algorithms for Fault Tolerant Distributed Systems

Algorithms for Fault Tolerant Distributed Systems
Title Algorithms for Fault Tolerant Distributed Systems PDF eBook
Author
Publisher
Pages 197
Release 1989
Genre
ISBN

Download Algorithms for Fault Tolerant Distributed Systems Book in PDF, Epub and Kindle

Algorithms for building fault-tolerant distributed systems

Algorithms for building fault-tolerant distributed systems
Title Algorithms for building fault-tolerant distributed systems PDF eBook
Author James Roger Mitchell
Publisher
Pages 322
Release 1997
Genre Fault-tolerant computing
ISBN

Download Algorithms for building fault-tolerant distributed systems Book in PDF, Epub and Kindle

Fault-Tolerant Search Algorithms

Fault-Tolerant Search Algorithms
Title Fault-Tolerant Search Algorithms PDF eBook
Author Ferdinando Cicalese
Publisher Springer Science & Business Media
Pages 218
Release 2013-11-29
Genre Computers
ISBN 3642173276

Download Fault-Tolerant Search Algorithms Book in PDF, Epub and Kindle

Why a book on fault-tolerant search algorithms? Searching is one of the fundamental problems in computer science. Time and again algorithmic and combinatorial issues originally studied in the context of search find application in the most diverse areas of computer science and discrete mathematics. On the other hand, fault-tolerance is a necessary ingredient of computing. Due to their inherent complexity, information systems are naturally prone to errors, which may appear at any level – as imprecisions in the data, bugs in the software, or transient or permanent hardware failures. This book provides a concise, rigorous and up-to-date account of different approaches to fault-tolerance in the context of algorithmic search theory. Thanks to their basic structure, search problems offer insights into how fault-tolerant techniques may be applied in various scenarios. In the first part of the book, a paradigmatic model for fault-tolerant search is presented, the Ulam—Rényi problem. Following a didactic approach, the author takes the reader on a tour of Ulam—Rényi problem variants of increasing complexity. In the context of this basic model, fundamental combinatorial and algorithmic issues in the design of fault-tolerant search procedures are discussed. The algorithmic efficiency achievable is analyzed with respect to the statistical nature of the error sources, and the amount of information on which the search algorithm bases its decisions. In the second part of the book, more general models of faults and fault-tolerance are considered. Special attention is given to the application of fault-tolerant search procedures to specific problems in distributed computing, bioinformatics and computational learning. This book will be of special value to researchers from the areas of combinatorial search and fault-tolerant computation, but also to researchers in learning and coding theory, databases, and artificial intelligence. Only basic training in discrete mathematics is assumed. Parts of the book can be used as the basis for specialized graduate courses on combinatorial search, or as supporting material for a graduate or undergraduate course on error-correcting codes.

Communication and Agreement Abstractions for Fault-Tolerant Asynchronous Distributed Systems

Communication and Agreement Abstractions for Fault-Tolerant Asynchronous Distributed Systems
Title Communication and Agreement Abstractions for Fault-Tolerant Asynchronous Distributed Systems PDF eBook
Author Michel Raynal
Publisher Morgan & Claypool Publishers
Pages 273
Release 2010-06-06
Genre Technology & Engineering
ISBN 1608452948

Download Communication and Agreement Abstractions for Fault-Tolerant Asynchronous Distributed Systems Book in PDF, Epub and Kindle

Understanding distributed computing is not an easy task. This is due to the many facets of uncertainty one has to cope with and master in order to produce correct distributed software. Considering the uncertainty created by asynchrony and process crash failures in the context of message-passing systems, the book focuses on the main abstractions that one has to understand and master in order to be able to produce software with guaranteed properties. These fundamental abstractions are communication abstractions that allow the processes to communicate consistently (namely the register abstraction and the reliable broadcast abstraction), and the consensus agreement abstractions that allows them to cooperate despite failures. As they give a precise meaning to the words "communicate" and "agree" despite asynchrony and failures, these abstractions allow distributed programs to be designed with properties that can be stated and proved. Impossibility results are associated with these abstractions. Hence, in order to circumvent these impossibilities, the book relies on the failure detector approach, and, consequently, that approach to fault-tolerance is central to the book. Table of Contents: List of Figures / The Atomic Register Abstraction / Implementing an Atomic Register in a Crash-Prone Asynchronous System / The Uniform Reliable Broadcast Abstraction / Uniform Reliable Broadcast Abstraction Despite Unreliable Channels / The Consensus Abstraction / Consensus Algorithms for Asynchronous Systems Enriched with Various Failure Detectors / Constructing Failure Detectors

Software Engineering Of Fault Tolerant Systems

Software Engineering Of Fault Tolerant Systems
Title Software Engineering Of Fault Tolerant Systems PDF eBook
Author Patrizio Pelliccione
Publisher World Scientific
Pages 293
Release 2007-08-13
Genre Computers
ISBN 9814476102

Download Software Engineering Of Fault Tolerant Systems Book in PDF, Epub and Kindle

In architecting dependable systems, what is required to improve the overall system robustness is fault tolerance. Many methods have been proposed to this end, the solutions are usually considered late during the design and implementation phases of the software life-cycle (e.g., Java and Windows NT exception handling), thus reducing the effectiveness error and fault handling. Since the system design typically models only normal behaviour of the system while ignoring exceptional ones, the implementation of the system is unable to handle abnormal events. Consequently, the system may fail in unexpected ways due to faults.It has been argued that fault tolerance management during the entire life-cycle improves the overall system robustness and that different classes of threats need to be identified for and dealt with at each distinct phase of software development, depending on the abstraction level of the software system being modelled.This book builds on this trend and investigates how fault tolerance mechanisms can be applied when engineering a software system. In particular, it identifies the new problems arising in this area, introduces the new models to be applied at different abstraction levels, defines methodologies for model-driven engineering of such systems and outlines the new technologies and validation and verification environments supporting this.