The Virtual Synchrony Execution Model

  • Kenneth P. Birman
Part of the Texts in Computer Science book series (TCS)


The protocols of Chap.  12 represent a new kind of building block from which a wide variety of sophisticated systems can be constructed. Here, we do so, exploring the needed mechanisms that will let us take the step from a world of protocols that live in isolation to a full-fledged toolkit for implementing applications. When the properties of the model are combined with these primitives, we will say that a virtually synchronous execution environment results (see Birman and Joseph 1987a, 1987b; Birman and van Renesse 1994). Our treatment here is detailed but not fully formalized; a more mathematical treatment is provided in Appendix A.


Process Group State Transfer Incoming Request Multicast Protocol Group View 
These keywords were added by machine and not by the authors. This process is experimental and the keywords may be updated as the learning algorithm improves.


  1. Agapi, A., Birman, K., Broberg, R., Cotton, C., Kielmann, T., Millnert, M., Payne, R., Surton, R., van Renesse, R.: Routers for the cloud: Can the Internet achieve 5-nines availability? IEEE Internet Comput. 15(5), 72–77 (2011) CrossRefGoogle Scholar
  2. Agarwal, D.A.: Totem: A reliable ordered delivery protocol for interconnected local area networks. Ph.D. diss., Department of Electrical and Computer Engineering, University of California, Santa Barbara (1994) Google Scholar
  3. Amir, Y.: Replication using group communication over a partitioned network. Ph.D. diss., Hebrew University of Jerusalem (1995) Google Scholar
  4. Amir, Y., Danilov, C., Stanton, J.: A low latency, loss tolerant architecture and protocol for wide area group communication. In: International Conference on Dependable Systems and Networks (DCCA-8), New York, June 25–28, 2000 Google Scholar
  5. 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) CrossRefGoogle Scholar
  6. Birman, K.P., Joseph, T.A.: Reliable communication in the presence of failures. ACM Trans. Comput. Syst. 5(1), 47–76 (1987b) CrossRefGoogle Scholar
  7. Birman, K.P., van Renesse, R. (eds.): Reliable Distributed Computing with the Isis Toolkit. IEEE Computer Society Press, New York (1994) Google Scholar
  8. Birman, K.P., van Renesse, R.: Software for reliable networks. Sci. Am. 274(5), 64–69 (1996) CrossRefGoogle Scholar
  9. Birman, K.P., Freedman, D.F., Huang, Q.: Overcoming CAP with consistent soft-state replication. IEEE Comput. Soc. Mag., special issue on the growing importance of the CAP conjecture, January/February 2012 Google Scholar
  10. Budhiraja, N., et al.: The primary-backup approach. In: Mullender, S.J. (ed.) Distributed System, 2nd edn. Addison-Wesley/ACM Press, Reading (1993) Google Scholar
  11. Chockler, G., Keidar, I., Vitenberg, R.: Group communication specifications: A comprehensive study. ACM Comput. Surv. 33(4), 1–43 (2001) CrossRefGoogle Scholar
  12. Cooper, B.F., Ramakrishnan, R., Srivastava, U., Silberstein, A., Bohannon, P., Jacobsen, H.A., Puz, N., Weaver, D., Yerneni, R.: PNUTS: Yahoo!’s hosted data serving platform. In: Proc. 34th VLDB, August 2008, vol. 1, 2, pp. 1277–1288 (2008) Google Scholar
  13. Cristian, F.: Synchronous and asynchronous group communication. Commun. ACM 39(4), 88–97 (1996) CrossRefGoogle Scholar
  14. Dolev, D., Malkhi, D.: The Transis approach to high availability cluster communication. Commun. ACM 39(4), 64–70 (1996) CrossRefGoogle Scholar
  15. Dolev, D., Malkhi, D., Strong, R.: A framework for partitionable membership service. Technical Report TR 95-4, Institute of Computer Science, Hebrew University of Jerusalem, March (1995) Google Scholar
  16. Keidar, I.: Consistency and high availability of information dissemination in multi-processor networks. Ph.D. thesis, Hebrew University of Jerusalem, October (1998) Google Scholar
  17. Keidar, I.: Challenges in evaluating distributed algorithms. In: Future Directions in Distributed Computing. Lecture Notes in Computer Science, vol. 2584, pp. 40–44 (2010) CrossRefGoogle Scholar
  18. Keidar, I., Dolev, D.: Totally ordered broadcast in the face of network partitions. Exploiting group communication for replication in partitionable networks. In: Avresky, D. (ed.) Dependable Network Computing, pp. 51–75. Kluwer Academic, Dordrecht (2000). Chap. 3 CrossRefGoogle Scholar
  19. Keidar, I., Khazan, R.: A virtually synchronous group multicast algorithm for WANs: Formal approach. SIAM J. Comput. 32(1), 78–130 (2002) MathSciNetMATHCrossRefGoogle Scholar
  20. Keidar, I., Khazan, R., Lynch, N., Shvartsman, A.: An inheritance-based technique for building simulation proofs incrementally. ACM Trans. Softw. Eng. Methodol. 11(1), 63–91 (2002a) CrossRefGoogle Scholar
  21. Keidar, I., Sussman, J., Marzullo, K., Dolev, D.: Moshe: A group membership service for wans. ACM Trans. Comput. Syst. 20(3), 1–48 (2002b) CrossRefGoogle Scholar
  22. Lamport, L.: Using time instead of timeout for fault-tolerant distributed systems. ACM Trans. Program. Lang. Syst. 6(2), 254–280 (1984) CrossRefGoogle Scholar
  23. Lamport, L.: Paxos made simple. Distrib. Comput. Column ACM SIGACT News 32(4), 51–58 (2001) Google Scholar
  24. 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) CrossRefGoogle Scholar
  25. Malkhi, D.: Multicast communication for high availability. Ph.D. diss., Hebrew University of Jerusalem (1994) Google Scholar
  26. Moser, L.E., Melliar-Smith, P.M., Agarwal, D.A., Budhia, R.K., Lingley-Papadopoulos, C.A.: Totem: A fault-tolerant multicast group communication system. Commun. ACM 39(4), 54–63 (1996) CrossRefGoogle Scholar
  27. Powell, D.: Introduction to special section on group communication. Commun. ACM 39(4), 50–53 (1996) CrossRefGoogle Scholar
  28. Pritchett, D.: BASE: An acid alternative. Queue 6(3), 48–55 (2008) CrossRefGoogle Scholar
  29. Reiter, M.K.: Distributing trust with the Rampart toolkit. Commun. ACM 39(4), 71–75 (1996) MathSciNetCrossRefGoogle Scholar
  30. Schiper, A., Raynal, M.: From group communication to transactions in distributed systems. Commun. ACM 39(4), 84–87 (1996) CrossRefGoogle Scholar
  31. Schneider, F.B.: The StateMachine approach: A tutorial. In: Proceedings of the Workshop on Fault-Tolerant Distributed Computing, Asilomar, CA. Lecture Notes on Computer Science, vol. 448, pp. 18–41. Springer, Berlin (1988) CrossRefGoogle Scholar
  32. Schneider, F.B.: Implementing fault-tolerant services using the StateMachine approach. ACM Comput. Surv. 22(4), 299–319 (1990) CrossRefGoogle Scholar
  33. van Renesse, R.: Paxos made moderately simple. Technical report, Cornell University, March (2011) Google Scholar
  34. Vogels, W.: Eventually consistent—Revisited. Dec (2008)
  35. Zhao, B., Duan, Y., Huang, L., Joseph, A.D., Kubiatowicz, J.: Brocade: Landmark routing on overlay networks. In: IPTPS 2002, pp. 34–44 (2002a) Google Scholar
  36. Zhao, Duan, B.Y., Huang, L., Joseph, A.D., Kubiatowicz, J.D.: Brocade: Landmark routing on overlay networks. In: First International Workshop on Peer-to-Peer Systems (IPTPS), Cambridge, MA, March 2002b Google Scholar

Copyright information

© Springer-Verlag London Limited 2012

Authors and Affiliations

  • Kenneth P. Birman
    • 1
  1. 1.Department of Computer ScienceCornell UniversityIthacaUSA

Personalised recommendations