Author(s): Morgan G, Shrivastava SK, Ezhilchelvan PD, Little MC
Abstract: Many fault-tolerant distributed applications can be structured as one or more groups of objects that cooperate by multicasting invocations on member objects. The building of group based applications is considerably simplified if the members of a group can multicast reliably and have a mutually consistent view of the order in which events (such as invocations, host machine failures) have taken place. With this observation in mind, this paper describes the design and implementation of a CORBA middleware service for managing object groups. The object group service is portable and intended for a wide variety of applications; objects can simultaneously belong to many groups, group size could be large, and objects could be geographically widely separated. The service can provide causality preserving total order delivery to members of a group, ensuring that total order delivery is preserved even for multi-group objects. Both symmetric and asymmetric total order protocols are supported, permitting a member to use say symmetric version in one group and asymmetric version in another group simultaneously. The service is both dynamic and fault-tolerant: ordering and liveness is preserved even if membership changes occur due to (real or suspected) member failures, voluntary member departures and new group formations.
Notes: Publisher's copyright statement: © IFIP, (1999). This is the author's version of the work. It is posted here by permission of IFIP for your personal use. Not for redistribution. The definitive version was published in Distributed applications and interoperable systems II (Boston: Kluwer Academic Publishers), pp 361-374.