Abstract
A universal construction is an algorithm that transforms any object with a sequential specification into a wait-free linearizable implementation of that object. This paper presents a novel universal construction algorithm for a message-passing system with process crash failures. Our algorithm relies on two fine-grained underlying abstractions: a weak form of leader election, and a one-shot form of register.
Our algorithm is indulgent, efficient and generic. Being indulgent intuitively means that the algorithm preserves consistency even if the underlying system is asynchronous for arbitrary periods of time. Compared to other indulgent universal constructions, our algorithm uses fewer messages and gives rise to less work in steady-state. Our algorithm is generic in two senses: (1) although it is devised for a crash-stop model, it can be easily ported to various crash-recovery models, and (2) although it is optimized for steady-state periods, it can easily be extended to trade-off between steady-state performance and fail-over time.
Access this chapter
Tax calculation will be finalised at checkout
Purchases are for personal use only
Preview
Unable to display preview. Download preview PDF.
Similar content being viewed by others
References
P. A. Alsberg and J. D. Day. A principle for resilient sharing of distributed resources. In Proceedings of the Second IEEE International Conference on Software Engineering (ICSE), 1976.
H. Attiya, A. Bar-Noy, and D. Dolev. Sharing memory robustly in message-passing systems. Journal of the ACM, 42(1):124–142, 1995.
J. F. Bartlett. A nonstop kernel. In Proceedings of the 8 th ACM Symposium on Operating System Principles (SOSP), 1981.
R. Boichat, P. Dutta, S. Frølund, and R. Guerraoui. Deconstructing Paxos. Technical Report EPFL-2001, Swiss Federal Institute of Technology, January 2001.
N. Budhiraja, K. Marzullo, F. B. Schneider, and S. Toueg. The primary-backup approach. In S. Mullender, editor, Distributed Systems. Addison-Wesley, 1993.
T. Chandra, V. Hadzilacos, and S. Toueg. The weakest failure detector to solve consensus. Journal of the ACM, 43(4):685–722, 1996.
G. Chockler and D. Malkhi. Active Disk Paxos with infinitely many processes. In Proceedings of the 21 st ACM Symposium on Principles of Distributed Computing (PODC) (to appear), July 2002.
X. Défago and A. Schiper. Semi-passive replication and lazy consensus. Technical Report DSC/2000/012, Swiss Federal Institute of Technology, February 2000.
P. Dutta, F. Frølund, R. Guerraoui, and B. Pochon. An efficient universal construction for message-passing systems. Technical Report EPFL/IC/2002/28, Swiss Federal Institute of Technoology, Lausanne, May 2002.
E. Gafni and L. Lamport. Disk paxos. In International Symposium on Distributed Computing, pages 330–344, 2000.
R. Guerraoui. Indulgent algorithms. In Proceedings of the 19 th ACM Symposium on Principles of Distributed Computing (PODC), 2000.
M. Herlihy. Wait-free synchronization. ACM Transactions on Programming Languages and Systems, 13(1):124–149, January 1991.
M. Herlihy and J. Wing. Linearizability: a correctness condition for concurrent objects. ACM Transactions on Programming Languages and Systems, 12(3):463–492, July 1990.
L. Lamport. The part-time parliament. Technical Report 49, DEC Systems Research Center, 1989. Also published in ACM Transactions on Computer Systems (TOCS), Vol. 16, No. 2, 1998.
B. Lampson. How to build a highly available system using consensus. In Proceedings of the International Workshop on Distributed Algorithms (WDAG), Springer-Verlag, LNCS, September 1996.
J. Yang, G. Neiger, and E. Gafni. Structured derivations of consensus algorithms for failure detectors. In Proceedings of the 17 th ACM Symposium on Principles of Distributed Computing, pages 297–306, 1998.
Author information
Authors and Affiliations
Editor information
Editors and Affiliations
Rights and permissions
Copyright information
© 2002 Springer-Verlag Berlin Heidelberg
About this paper
Cite this paper
Dutta, P., Frølund, S., Guerraoui, R., Pochon, B. (2002). An Efficient Universal Construction for Message-Passing Systems. In: Malkhi, D. (eds) Distributed Computing. DISC 2002. Lecture Notes in Computer Science, vol 2508. Springer, Berlin, Heidelberg. https://doi.org/10.1007/3-540-36108-1_9
Download citation
DOI: https://doi.org/10.1007/3-540-36108-1_9
Published:
Publisher Name: Springer, Berlin, Heidelberg
Print ISBN: 978-3-540-00073-0
Online ISBN: 978-3-540-36108-4
eBook Packages: Springer Book Archive