Abstract
View synchronous group communication is a mature technology that greatly eases the development of reliable distributed applications by enforcing precise message delivery semantics, especially in face of faults. It is therefore found at the core of multiple widely deployed and used middleware products. Although the implementation of a group communication system is a complex task, application developers may benefit from the fact that multiple group communication toolkits are currently available and supported.
Unfortunately, each communication toolkit has a different interface, that differs from every other interface in subtle syntactic and semantic aspects. This hinders the design, implementation and maintenance of applications using group communication and forces developers to commit beforehand to a single toolkit, thus imposing a significant hurdle to portability.
In this paper we propose jGCS, a generic group communication service for Java, that specifies an interface as well as minimum semantics that allow application portability. This interface accommodates existing group communication services, enabling implementation independence. Furthermore, it provides support for the latest state-of-art mechanisms that have been proposed to improve the performance of group-based applications. To support our claims, we present and experimentally evaluate implementations of jGCS for several major group communication systems, namely, Appia, Spread/FlushSpread and JGroups, and describe the port of a large middleware product to jGCS.
This work was partially supported by the IST project GORDA (FP6-IST2-004758).
An erratum to this chapter can be found at http://dx.doi.org/10.1007/11914952_55.
Preview
Unable to display preview. Download preview PDF.
Similar content being viewed by others
References
Birman, K., van Renesse, R. (eds.): Reliable Distributed Computing with the Isis Toolkit. IEEE Computer Society Press, Los Alamitos (1993)
Miranda, H., Pinto, A., Rodrigues, L.: Appia, a flexible protocol kernel supporting multiple coordinated channels. In: Proceedings of the 21st International Conference on Distributed Computing Systems, Phoenix, Arizona, pp. 707–710. IEEE, Los Alamitos (2001)
Amir, Y., Danilov, C., Stanton, J.: A low latency, loss tolerant architecture and protocol for wide area group communication. In: IEEE International Conference on Dependable Systems and Networks (2000)
Ban, B.: Design and implementation of a reliable group communication toolkit for java (1998)
Vicente, P., Rodrigues, L.: An indulgent uniform total order algorithm with optimistic delivery. In: Proceedings of the 21st IEEE Symposium on Reliable Distributed Systems (SRDS 2002), Osaka, Japan, pp. 92–101 (2002)
Sousa, A., Pereira, J., Moura, F., Oliveira, R.: Optimistic total order in wide area networks. In: Proc. 21st IEEE Symposium on Reliable Distributed Systems, pp. 190–199. IEEE CS, Los Alamitos (2002)
Pedone, F., Schiper, A.: Handling message semantics with generic broadcast protocols. Distributed Computing Journal, 97–107 (2002)
Pereira, J., Rodrigues, L., Oliveira, R.: Semantically reliable multicast: Definition, implementation and performance evaluation. IEEE Transactions on Computers, Special Issue on Reliable Distributed Systems 52, 150–165 (2003)
Pereira, J., Rodrigues, L., Monteiro, M.J., Oliveira, R., Kermarrec, A.M.: NeEM: Network-friendly epidemic multicast. In: Proceedings of the 22nd IEEE Symposium on Reliable Distributed Systems (SRDS 2003), Florence,Italy, pp. 15–24 (2003)
Chockler, G.V., Keidar, I., Vitenberg, R.: Group communication specifications: a comprehensive study. ACM Comput. Surv. 33, 427–469 (2001)
Guerraoui, R., Schiper, A.: Software-based replication for fault-tolerance. IEEE Computer 30, 68–74 (1997)
Kemme, B., Alonso, G.: Don’t be lazy, be consistent: Postgres-R, a new way to implement database replication. The VLDB Journal, 134–143 (2000)
Narasimhan, P., Moser, L.E., Melliar-Smith, P.M.: Eternal - a component-based framework for transparent fault-tolerant corba. Software Practice and Experience (2002)
Pedone, F., Schiper, A.: Optimistic atomic broadcast. In: Kutten, S. (ed.) DISC 1998. LNCS, vol. 1499, pp. 318–332. Springer, Heidelberg (1998)
Sussman, J.B., Keidar, I., Marzullo, K.: Optimistic virtual synchrony. In: Symposium on Reliability in Distributed Software, pp. 42–51 (2000)
Rodrigues, L., Mocito, J., Carvalho, N.: From spontaneous total order to uniform total order: different degrees of optimistic delivery. In: Proceedings of the 21st ACM Symposium on Applied Computing (SAC 2006), Dijon, France. ACM, New York (2006)
Alur, D., Crupi, J., Malk, D.: Core J2EE Patterns: Best Practices and Design Strategie. Prentice Hall / Sun Microsystems Press (2001)
Hayden, M.: The Ensemble System. PhD thesis, Cornell University, Computer Science Department (1998)
Hiltunen, M., Schlichting, R., Wong, G.: Implementing integrated fine-grain customizable QoS using Cactus. In: Fast Abstracts, The 29th International Symposium on Fault-Tolerant Computing Systems, Madison, Wisconsin, USA, pp. 59–60 (1999)
Wiesmann, M., Défago, X., Schiper, A.: Group communication based on standard interfaces. In: Proc. 2nd Int’l. Symp. on Network Computing and Applications (NCA 2003), Cambridge, MA, USA, pp. 140–147. IEEE, Los Alamitos (2003)
Kemme, B., Pedone, F., Alonso, G., Schiper, A.: Processing transactions over optimistic atomic broadcast protocols. In: Proceedings of 19th International Conference on Distributed Computing Systems (ICDCS 1999) (1999)
Mocito, J., Respício, A., Rodrigues, L.: On statistically estimated optimistic delivery in wide-area total order protocols. Technical Report DI/TR/2006, University of Lisbon (2006)
Montresor, A., Davoli, R., Babaoglu, O.: Group-enhanced remote method invocations (1999)
Amir, Y., Munjal, A.: (Jms4spread), http://www.spread.org/jms4spread/
SoftWired: (ibus/messagebus), http://www.softwired.ch/
Kupsys, A., Pleisch, S., Schiper, S., Wiesmann, M.: Towards JMS compliant group communication - a semantic mapping. In: NCA 2004: Proceedings of the Network Computing and Applications, Third IEEE International Symposium on (NCA 2004), Washington, DC, USA, pp. 131–140. IEEE Computer Society, Los Alamitos (2004)
Birman, K., Friedman, R., Hayden, M.: The Maestro group manager: A structuring tool for applications with multiple quality of service requirements. Technical report, Ithaca, NY, USA (1997)
Author information
Authors and Affiliations
Editor information
Editors and Affiliations
Rights and permissions
Copyright information
© 2006 Springer-Verlag Berlin Heidelberg
About this paper
Cite this paper
Carvalho, N., Pereira, J., Rodrigues, L. (2006). Towards a Generic Group Communication Service. In: Meersman, R., Tari, Z. (eds) On the Move to Meaningful Internet Systems 2006: CoopIS, DOA, GADA, and ODBASE. OTM 2006. Lecture Notes in Computer Science, vol 4276. Springer, Berlin, Heidelberg. https://doi.org/10.1007/11914952_34
Download citation
DOI: https://doi.org/10.1007/11914952_34
Publisher Name: Springer, Berlin, Heidelberg
Print ISBN: 978-3-540-48274-1
Online ISBN: 978-3-540-48283-3
eBook Packages: Computer ScienceComputer Science (R0)