About this book
The ability to cooperatively perform a collection of tasks in a distributed system is key to solving a broad array of computation problems ranging from distributed search, to distributed simulation, and multi-agent collaboration. Practical solutions to such cooperation problems must effectively marshal the available computing resources in performing large sets of tasks. This is challenging due to the failures and asynchrony of the involved processors, and due to the delays and connectivity failures in the underlying network.
Do-All Computing in Distributed Systems: Cooperation in the Presence of Adversity is the first book that presents an in depth study of cooperation problems, abstracted in terms of the Do-All problem, where a collection of processors cooperatively perform a collection of independent tasks in the presence of adversity.
This book presents several significant advances in algorithms designed to solve the Do-All problem in distributed message-passing settings under various models of adversity, including processor crashes, asynchrony, message delays, network partitions, and malicious processor behaviors. Upper and lower bounds are presented, demonstrating the extent to which efficiency can be combined with fault-tolerance. This book contains the recent advances in the principles of efficient and fault-tolerant cooperative computing, narrowing the gap between abstract models of dependable network computing and realistic distributed systems.
Do-All Computing in Distributed Systems: Cooperation in the Presence of Adversity is structured to meet the needs of a professional audience composed of researchers and practitioners in industry. This volume is also suitable as a reference or secondary text for advanced-level students in computer science and engineering.