0%

Book Description

In Distributed Algorithms, Nancy Lynch provides a blueprint for designing, implementing, and analyzing distributed algorithms. She directs her book at a wide audience, including students, programmers, system designers, and researchers.



Distributed Algorithms contains the most significant algorithms and impossibility results in the area, all in a simple automata-theoretic setting. The algorithms are proved correct, and their complexity is analyzed according to precisely defined complexity measures. The problems covered include resource allocation, communication, consensus among distributed processes, data consistency, deadlock detection, leader election, global snapshots, and many others.



The material is organized according to the system model—first by the timing model and then by the interprocess communication mechanism. The material on system models is isolated in separate chapters for easy reference.



The presentation is completely rigorous, yet is intuitive enough for immediate comprehension. This book familiarizes readers with important problems, algorithms, and impossibility results in the area: readers can then recognize the problems when they arise in practice, apply the algorithms to solve them, and use the impossibility results to determine whether problems are unsolvable. The book also provides readers with the basic mathematical tools for designing new algorithms and proving new impossibility results. In addition, it teaches readers how to reason carefully about distributed algorithms—to model them formally, devise precise specifications for their required behavior, prove their correctness, and evaluate their performance with realistic measures.

Table of Contents

  1. Cover
  2. Title Page
  3. Dedication
  4. Copyright
  5. Preface
  6. Table of Contents
  7. Chapter 1: Introduction
  8. Part I: Synchronous Network Algorithms
    1. Chapter 2 Modelling I: Synchronous Network Model
    2. Chapter 3: Leader Election in a Synchronous Ring
    3. Chapter 4: Algorithms in General Synchronous Networks
    4. Chapter 5: Distributed Consensus with Link Failures
    5. Chapter 6: Distributed Consensus with Process Failures
    6. Chapter 7: More Consensus Problems
  9. Part II: Asynchronous Algorithms
    1. Chapter 8 Modelling II: Asynchronous System Model
  10. Part IIA: Asynchronous Shared Memory Algorithms
    1. Chapter 9 Modelling III: Asynchronous Shared Memory Model
    2. Chapter 10: Mutual Exclusion
    3. Chapter 11: Resource Allocation
    4. Chapter 12: Consensus
    5. Chapter 13: Atomic Objects
  11. Part IIB: Asynchronous Network Algorithms
    1. Chapter 14 Modelling IV: Asynchronous Network Model
    2. Chapter 15: Basic Asynchronous Network Algorithms
    3. Chapter 16: Synchronizers
    4. Chapter 17: Shared Memory versus Networks
    5. Chapter 18: Logical Time
    6. Chapter 19: Consistent Global Snapshots and Stable Property Detection
    7. Chapter 20: Network Resource Allocation
    8. Chapter 21: Asynchronous Network Computing with Process Failures
    9. Chapter 22: Data Link Protocols
  12. Part III: Partially Synchronous Algorithms
    1. Chapter 23 Modelling V: Partially Synchronous System Models
    2. Chapter 24: Mutual Exclusion with Partial Synchrony
    3. Chapter 25: Consensus with Partial Synchrony
  13. Bibliography
  14. Index
  15. Instructions for online access
3.138.122.195