Almost every computing system
nowadays is distributed, ranging from multi-core laptops to
Internet-scale services; understanding the principles of distributed
computing is hence important for the design and engineering of modern
computing systems. Fundamental issues that arise in reliable and
efficient distributed systems include developing adequate methods for
modeling failures and synchrony assumptions, determining precise
performance bounds on implementations of concurrent data structures,
capturing the trade-off between consistency and efficiency, and
demarcating the frontier of feasibility in distributed computing.
For example, popular Internet services and applications such as CNN.com, YouTube, Facebook, Skype, BitTorrent attract millions of users every day, and only by the effective load-balancing and collaboration of many thousand machines, an acceptable Quality-of-Service/Quality-of-Experience can be guaranteed. While distributed systems promise a good scalability as well as a high robustness, they pose challenging research problems, such as: How to design robust and scalable distributed architectures and services? How to coordinate access to a shared resource, e.g., by electing a leader? Or how to provide incentives for cooperation in an open, collaborative distributed system?
|Author||Gafni, Eli and Kuznetsov, Petr|
|Title of Book||Distributed Computing (Proceedings of the 23rd International Symposium on Distributed Computing (DISC 2009))|
|Address||Berlin / Heidelberg|
|Note||nominated for Best Paper Award|
|Abstract||We propose a complete characterization of a large class of distributed tasks, with respect to a weakened solvability notion called it weak termination. A task is weak-termination solvable if there is an algorithm by which at least one process outputs. The proposed categorization of tasks is based on the weakest failure detectors needed to solve them. We show that every task T in the considered class is equivalent (in the failure detector sense) to some form of set agreement, and thus its solvability with weak termination is completely characterized by its set consensus number: the maximal integer K such that T can be (weak-termination) solved using read-write registers and k-set agreement objects. The characterization goes through showing that ¬Ω_k, recently shown to be the weakest failure detector for the task of k-set agreement, is necessary to solve any task that is k-resilient impossible.|