Skip to main content

Appendix A: Virtually Synchronous Methodology for Building Dynamic Reliable Services

  • Chapter
Guide to Reliable Distributed Systems

Part of the book series: Texts in Computer Science ((TCS))

Abstract

In this chapter we offer a more formal integration of the virtual synchrony and state machine replication models. The resulting single model is the key to being able to offer virtually synchrony Send side by side with a Paxos protocol called SafeSend in a single platform, as is done in the Isis2 system.

This is a preview of subscription content, log in via an institution to check access.

Access this chapter

eBook
USD 16.99
Price excludes VAT (USA)
  • Available as EPUB and PDF
  • Read on any device
  • Instant download
  • Own it forever
Softcover Book
USD 64.99
Price excludes VAT (USA)
  • Compact, lightweight edition
  • Dispatched in 3 to 5 business days
  • Free shipping worldwide - see info
Hardcover Book
USD 89.99
Price excludes VAT (USA)
  • Durable hardcover edition
  • Dispatched in 3 to 5 business days
  • Free shipping worldwide - see info

Tax calculation will be finalised at checkout

Purchases are for personal use only

Institutional subscriptions

Notes

  1. 1.

    Clearly, we can optimize to store S only at sufficiently many servers to guarantee that S is stored at a majority.

  2. 2.

    This is a good juncture at which to note that Leslie Lamport was involved in an earlier stage of this research. Although he is not a co-author on this chapter, his help in the initial formulation of our problem was invaluable, and this choice of protocol name is intended to acknowledge the strong roots of our protocol in his earlier work.

References

  • Aguilera, M., Keidar, I., Malkhi, D., Shraer, A.: Dynamic atomic storage without consensus. In: Proceedings of the ACM Symposium on Principles of Distributed Computing (PODC) (2009a)

    Google Scholar 

  • Aguilera, M.K., Merchant, A., Shah, M., Veitch, A., Karamanolis, C.: Sinfonia: A new paradigm for building scalable distributed systems. ACM Trans. Comput. Syst. 27(3), 5 (2009b)

    Article  Google Scholar 

  • Amir, Y.: Replication using group communication over a partitioned network. Ph.D. diss., Hebrew University of Jerusalem (1995)

    Google Scholar 

  • Amir, Y., Dolev, D., Kramer, S., Malkhi, D.: Transis: A communication subsystem for high availability. In: Proceedings of the Twenty-Second Symposium on Fault-Tolerant Computing Systems, Boston, July 1992, pp. 76–84. IEEE Computer Society Press, New York (1992b)

    Google Scholar 

  • Amir, Y., Moser, L.E., Melliar-Smith, P.M., Agarwal, D.A., Ciarfella, P.: The totem single-ring ordering and membership protocol. Trans. Comput. Syst. 13(4), 311–342 (1995)

    Article  Google Scholar 

  • Attiya, H., Bar-Noy, A., Dolev, D.: Sharing memory robustly in message-passing systems. J. ACM 42(1), 124–142 (1995)

    Article  MATH  Google Scholar 

  • Babaoglu, O., Davoli, R., Montresor, A.: Failure detectors, group membership, and view-synchronous communication in partitionable asynchronous systems. Technical Report UBLCS-95-19, Department of Computer Science, University of Bologna, November (1995)

    Google Scholar 

  • Birman, K.P.: Replication and availability in the ISIS system. In: Proc. of the 10th ACM Symp. on Operating Systems Principles, Orcas Island, WA, December 1985, pp. 79–86 (1985)

    Chapter  Google Scholar 

  • Birman, K.P., Joseph, T.A.: Exploiting virtual synchrony in distributed systems. In: Proceedings of the Eleventh Symposium on Operating Systems Principles, Austin, November 1987, pp. 123–138. ACM Press, New York (1987a)

    Chapter  Google Scholar 

  • Chockler, G., Keidar, I., Vitenberg, R.: Group communication specifications: A comprehensive study. ACM Comput. Surv. 33(4), 1–43 (2001)

    Article  Google Scholar 

  • Chockler, G., Gilbert, S., Gramoli, V.C., Musial, P.M., Shvartsman, A.A.: Reconfigurable distributed storage for dynamic networks. In: 9th International Conference on Principles of Distributed Systems (OPODIS’05), December 2005

    Google Scholar 

  • Friedman, R.: Consistency conditions for distributed shared memories. Ph.D. thesis, Technion (1994)

    Google Scholar 

  • Gilbert, S., Lynch, N., Shvartsman, A.: Rambo II: Rapidly reconfigurable atomic memory for dynamic networks. In: Proc. of the 17th Intl. Symp. on Distributed Computing (DISC), June 2003, pp. 259–268 (2003)

    Google Scholar 

  • Herlihy, M., Wing, J.: Linearizability: A correctness condition for concurrent objects. ACM Trans. Program. Lang. Syst. 12(3), 463–492 (1990)

    Article  Google Scholar 

  • Junqueira, F., Reed, B.: The life and times of a ZooKeeper. In: ACM Symposium on Parallel Algorithms and Architectures (SPAA) (2009). Also published as a “brief announcement” in the Symposium on Principles of Distributed Computing (PODC)

    Google Scholar 

  • Junqueira, F., Hunt, P., Konar, M., Reed, B.: The ZooKeeper coordination service (poster). In: Symposium on Operating Systems Principles (SOSP) (2009)

    Google Scholar 

  • Keidar, I.: Consistency and high availability of information dissemination in multi-processor networks. Ph.D. thesis, Hebrew University of Jerusalem, October (1998)

    Google Scholar 

  • Lamport, L.: Time, clocks, and the ordering of events in a distributed system. Commun. ACM 21(7), 558–565 (1978a)

    Article  MATH  Google Scholar 

  • Lamport, L.: The implementation of reliable distributed multiprocess systems. Comput. Netw. 2, 95–114 (1978b)

    MathSciNet  Google Scholar 

  • Lamport, L.: The part-time parliament. ACM Trans. Comput. Syst. 16, 133–169 (1998)

    Article  Google Scholar 

  • Lamport, L., Malkhi, D., Zhou, L.: Vertical Paxos and primary-backup replication. In: Proceedings of the 28th ACM Symposium on Principles of Distributed Computing (PODC’09), pp. 312–313 (2009a)

    Chapter  Google Scholar 

  • Lamport, L., Malkhi, D., Zhou, L.: Reconfiguring a state machine. Technical report, Microsoft Research (2009b)

    Google Scholar 

  • Lorch, J.R., Adya, A., Bolosky, W.J., Chaiken, R., Douceur, J.R., Howell, J.: The SMART way to migrate replicated stateful services. In: Proc. of the 1st Eurosys Conference, Leuven, Belgium, April 2006, pp. 103–115 (2006)

    Chapter  Google Scholar 

  • Lynch, N., Shvartsman, A.A.: RAMBO: A reconfigurable atomic memory service for dynamic networks. In: Proc. of the 16th International Symposium on Distributed Computing, Toulouse, France, October 2002, pp. 173–190 (2002)

    Google Scholar 

  • MacCormick, J., Murphy, N., Najork, M., Thekkath, C.A., Zhou, L.: Boxwood: Abstractions as the foundation for storage infrastructure. In: Symposium on Operating System Design and Implementation (OSDI), pp. 105–120. USENIX, Berkeley (2004)

    Google Scholar 

  • Martin, J.-P., Alvisi, L.: A framework for dynamic byzantine storage. In: Proc. of the Intl. Conf. on Dependable Systems and Networks, pp. 325–334 (2004)

    Chapter  Google Scholar 

  • Montresor, A.: System support for programming object-oriented dependable applications in partitionable systems. Ph.D. thesis, University of Bologna, Italy (2000)

    Google Scholar 

  • Reiter, M.K.: Secure agreement protocols: Reliable and atomic group multicast in rampart. In: Proceedings of the Second ACM Conference on Computer and Communications Security, Oakland, November 1994, pp. 68–80 (1994a)

    Chapter  Google Scholar 

  • Reiter, M.K., A secure group membership protocol. In: Proceedings of the 1994 Symposium on Research in Security and Privacy, Oakland, May 1994, pp. 89–99. IEEE Computer Society Press, New York (1994b)

    Google Scholar 

  • Ricciardi, A.M.: The group membership problem in asynchronous systems. Ph.D. diss., Cornell University, January (1993)

    Google Scholar 

  • Ricciardi, A., Birman, K.P.: Using process groups to implement failure detection in asynchronous environments. In: Proceedings of the Eleventh ACM Symposium on Principles of Distributed Computing, Quebec, August 1991, pp. 341–351. ACM Press, New York (1991)

    Chapter  Google Scholar 

  • Schneider, F.B.: Implementing fault-tolerant services using the StateMachine approach. ACM Comput. Surv. 22(4), 299–319 (1990)

    Article  Google Scholar 

  • Shraer, A., Martin, J.-P., Malkhi, D., Keidar, I.: Data-centric reconfiguration with network-attached disks. In: Large-Scale Distributed Systems and Middleware (LADIS 2010), July 2010

    Google Scholar 

  • van Renesse, R., Schneider, F.B.: Chain replication for supporting high throughput and availability. In: Sixth Symposium on Operating Systems Design and Implementation (OSDI ’04), San Francisco, CA, December 2004

    Google Scholar 

  • van Renesse, R., Birman, K.P., Maffeis, S.: Horus: A flexible group communication system. Commun. ACM 39(4), 76–83 (1996)

    Article  Google Scholar 

  • van Renesse, R., Birman, K.P., Hayden, M., Vaysburd, A., Karr, D.: Building adaptive systems using Ensemble. In: Software—Practice and Experience, August 1998

    Google Scholar 

  • Yeger-Lotem, E., Keidar, I., Dolev, D.: Dynamic voting for consistent primary components. In: 16th ACM Symposium on Principles of Distributed Computing (PODC’97), pp. 63–71 (1997)

    Google Scholar 

Download references

Author information

Authors and Affiliations

Authors

Rights and permissions

Reprints and permissions

Copyright information

© 2012 Springer-Verlag London Limited

About this chapter

Cite this chapter

Birman, K., Malkhi, D., Van Renesse, R. (2012). Appendix A: Virtually Synchronous Methodology for Building Dynamic Reliable Services. In: Guide to Reliable Distributed Systems. Texts in Computer Science. Springer, London. https://doi.org/10.1007/978-1-4471-2416-0_22

Download citation

  • DOI: https://doi.org/10.1007/978-1-4471-2416-0_22

  • Publisher Name: Springer, London

  • Print ISBN: 978-1-4471-2415-3

  • Online ISBN: 978-1-4471-2416-0

  • eBook Packages: Computer ScienceComputer Science (R0)

Publish with us

Policies and ethics