Distributed Systems: An Algorithmic Approach, Second Edition provides a balanced and straightforward treatment of the underlying theory and practical applications of distributed computing. As in the previous version, the language is kept as unobscured as possible—clarity is given priority over mathematical formalism. This easily digestible text:
- Features significant updates that mirror the phenomenal growth of distributed systems
- Explores new topics related to peer-to-peer and social networks
- Includes fresh exercises, examples, and case studies
Supplying a solid understanding of the key principles of distributed computing and their relationship to real-world applications, Distributed Systems: An Algorithmic Approach, Second Edition makes both an ideal textbook and a handy professional reference.
Table of Contents
Section I: Background Materials. Introduction. Interprocess Communication: An Overview. Section II: Foundational Topics. Models for Communication. Representing Distributed Algorithms: Syntax and Semantics. Program Correctness. Time in a Distributed System. Section III: Important Paradigms. Mutual Exclusion. Distributed Snapshot. Global State Collection. Graph Algorithms. Coordination Algorithms. Section IV: Faults and Fault-Tolerant Systems. Fault-Tolerant Systems. Distributed Consensus. Distributed Transactions. Group Communication. Replicated Data Management. Self-Stabilizing Systems. Section V: Real-World Issues. Distributed Discrete-Event Simulation. Security in Distributed Systems. Sensor Networks. Social and Peer-to-Peer Networks.
Sukumar Ghosh has been a professor in the Department of Computer Science at the University of Iowa, Iowa City, USA since 1995. He earned his Ph.D in computer science and engineering from Calcutta University, India in 1971, and completed his postdoctoral research at the University of Dortmund, Germany as an Alexander von Humboldt Foundation fellow. His current research interests are in distributed systems, with a special emphasis on dynamic distributed systems; fault-tolerant, self-stabilizing, and autonomic distributed systems; and peer-to-peer networks. He has published over 100 research papers and 5 book chapters on these topics, and has supervised 16 Ph.D students.
"… a welcome and very detailed collection of almost everything ‘distributed.’ … The breadth of concepts discussed is extensive and backed up with examples and detailed student exercises, making this an excellent reference and textbook. … In all, the book—with its depth and breadth of information on relevant technologies involved in all phases of complex distributed programming—is an excellent addition to the published works on some of the 21st century’s hardest computing problems."
—Computing Reviews, March 2015
"This text presents the material in a clear and straightforward manner, making it accessible to undergraduate students while still maintaining value for experts. The book contains material for both researchers and practitioners, and the new version adds even more relevant and cutting-edge topics in the field while continuing the excellent coverage of the fundamentals. The second version is a natural addition to the bookshelves of anyone interested in distributed algorithms."
—Andrew Berns, University of Wisconsin-La Crosse, USA
"The main theme of this edition, as in the first edition, is to show the implementation of distributed algorithms as well as to describe the rich theory behind them. [The second edition] is well organized and shows the implementation details of distributed algorithms without sacrificing the theory. The contents are enriched by the addition of new chapters. This book is essential reading for senior/graduate classes on distributed systems and algorithms. I strongly recommend it."
—Kayhan Erciyes, Izmir University, Turkey