Long-Lived Rambo: Trading Knowledge for Communication
Shareable data services providing consistency guarantees, such as atomicity (linearizability), make building distributed systems easier. However, combining linearizability with efficiency in practical algorithms is difficult. A reconfigurable linearizable data service, called Rambo, was developed by Lynch and Shvartsman. This service guarantees consistency under dynamic conditions involving asynchrony, message loss, node crashes, and new node arrivals. The specification of the original algorithm is given at an abstract level aimed at concise presentation and formal reasoning about correctness. The algorithm propagates information by means of gossip messages. If the service is in use for a long time, the size and the number of gossip messages may grow without bound. This paper presents a consistent data service for long-lived objects that improves on Rambo in two ways: it includes an incremental communication protocol and a leave service. The new protocol takes advantage of the local knowledge, and carefully manages the size of messages by removing redundant information, while the leave service allows the nodes to leave the system gracefully. The new algorithm is formally proved correct by forward simulation using levels of abstraction. An experimental implementation of the system was developed for networks-of-workstations. The paper also includes analytical and preliminary empirical results that illustrate the advantages of the new algorithm.
KeywordsDynamic Network Forward Simulation Message Loss Phase Number Query Phase
Unable to display preview. Download preview PDF.
- 1.Special Issue on Group Communication Services. 39(4) of Comm. of the ACM (1996)Google Scholar
- 3.Birman, K., Joseph, T.: Exploiting virtual synchrony in distributed systems. In: Proceedings of the 11th ACM Symposium on Operating Systems Principles (December 1987)Google Scholar
- 4.Englert, B., Shvartsman, A.A.: Graceful quorum reconfiguration in a robust emulation of shared memory. In: Proc. of Inter. Conf. on Dist.d Computer Systems, pp. 454–463 (2000)Google Scholar
- 5.Golding, R.A.: Weak-consistency group communication and membership. PhD Thesis, University of California (1992)Google Scholar
- 6.Gilbert, S., Lynch, N., Shvartsman, A.A.: RAMBO II: Rapidly reconfigurable atomic memory for dynamic networks. In: Proc. of Inter. Conf. on Dependable Systems and Networks, pp. 259–268 (2003)Google Scholar
- 7.Ghorbani, A., Bhavsar, V.: Training artificial neural networks using variable precision incremental communication. In: Proc. of IEEE World Congress On Computational Intelligence, vol. 3, pp. 1409–1414 (1994)Google Scholar
- 8.Guy, R.G., Heidemann, J.S., Mak, W., Page Jr., T.W., Popek, G.J., Rothmeier, D.: Implementation of the Ficus Replicated File System. In: Proc. of Summer USENIX Conference, pp. 63–71 (1990)Google Scholar
- 10.Lynch, N., Shvartsman, A.A.: RAMBO: A reconfigurable atomic memory service for dynamic networks. In: Proc. of 16th Inter. Symp. on Dist. Comp., pp. 173–190 (2002)Google Scholar
- 11.Lynch, N.A., Tuttle, M.: Hierarchical correctness proofs for distributed algorithms. LCS/TR-387, MIT (1987) Google Scholar
- 12.Minsky, Y.: Spreading rumors cheaply, quickly, and reliably. Ph.D Thesis, Cornell University (2002) Google Scholar
- 13.Rabinovich, M., Gehani, N., Kononov, A.: Efficient update propagation in epidemic replicated databases. In: Proc. of 5th Int. Conf. on Extending Database Tech., pp. 207–222 (1996)Google Scholar
- 15.Vitanyi, P., Awerbuch, B.: Atomic shared register access by asynchronous hardware. In: Proc. of 27th IEEE Symposium on Foundations of Computer Science, pp. 233–243 (1986)Google Scholar