Issue No.02 - March/April (2000 vol.12)
DOI Bookmark: http://doi.ieeecomputersociety.org/10.1109/69.842262
<p><b>Abstract</b>—Coordination among processes in a distributed system can be rendered very complex in a large-scale system where messages may be delayed or lost and when processes may participate only transiently or behave arbitrarily, e.g., after suffering a security breach. In this paper, we propose a scalable architecture to support coordination in such extreme conditions. Our architecture consists of a collection of persistent data servers that implement simple shared data abstractions for clients, without trusting the clients or even the servers themselves. We show that, by interacting with these untrusted servers, clients can solve distributed consensus, a powerful and fundamental coordination primitive. Our architecture is very practical and we describe the implementation of its main components in a system called Fleet.</p>
Distributed systems, scalability, survivability, quorums, Byzantine failures, consensus.
Dahlia Malkhi, Michael K. Reiter, "An Architecture for Survivable Coordination in Large Distributed Systems", IEEE Transactions on Knowledge & Data Engineering, vol.12, no. 2, pp. 187-202, March/April 2000, doi:10.1109/69.842262