Special issue: High availability in CORBA

Post on 06-Jun-2016

214 views 1 download

Transcript of Special issue: High availability in CORBA

Editorial

Special Issue: High Availability in CORBA

The Common Object Request Broker Architecture(CORBA), specified by the Object Management Group(OMG), is a middleware specification of basic mecha-nisms for remote object invocation through an ObjectRequest Broker (ORB). CORBA also specifies a set ofservices for object management, including a PersistenceService an Event Service, a Transaction Service, etc. Nev-ertheless, and even if there are several OMG processesunder way to standardize high availability features inCORBA 3.0, neither the current ORB nor the existingCORBA services specify tools for building highly avail-able applications. This can be considered a major lim-itation for many of today’s application domains suchas process control, telecommunications, and electronicstock exchange. In these areas, programmers must pro-vide, besides CORBA facilities, specific features for highavailability. The group paradigm was shown to be verypowerful in supporting high availability through replica-tion. Replicas of the same object are gathered inside agroup which provides the abstraction of a fault-tolerantentity. Group communication primitives such as atomicbroadcast and state transfer ensure the mutual consis-tency of the replicas. Several applications have suc-cessfully experimented with the support of replicationthrough group communication. Adding group facilitiesto a CORBA environment is not straightforward espe-cially if the objective is to preserve a sufficient levelof CORBA compatibility. In fact, at least three differ-ent approaches have been used to extend CORBA withgroup facilities. Namely, an integrative approach wherethe group abstraction is integrated inside a dedicatedORB; an interception approach where the group abstrac-tion is provided below standard ORB communications;and a service approach where the group abstraction isprovided as a CORBA service, on top of an ORB. Thisspecial issue gathers three papers, each presenting one ofthe approaches in extending CORBA with group facili-ties, as well as a fourth paper describing the experienceof building a large scale group-based application withCORBA.

The first paper, entitled “The Maestro Approach toBuilding Reliable Interoperable Distributed Applicationswith Multiple Execution Styles,” was written by AlexeyVaysburd and Ken Birman from Cornell University. Thepaper presents a toolkit, named Maestro, which pro-vides object group invocation primitives, besides clas-

c© 1998 John Wiley & Sons, Inc.

sical point-to-point remote communications currentlyimplemented by ORB vendors. Maestro follows the in-tegrative approach by mixing CORBA standard invoca-tions with group communications. It is a distributed ob-ject layer built over the Ensemble group communicationsystem, a successor of the Isis and Horus group-basedtools developed at Cornell.

The second paper, entitled “Consistent Object Repli-cation in the Eternal System,” was written by LouiseMoser, Patrick Melliar-Smith, and Priya Narasimhanfrom the University of California at Santa Barbara. Thepaper presents the Eternal object system, which exploitsthe Internet Inter-ORB Protocol (IIOP) to intercept stan-dard object invocations in commercial ORBs, and trans-form these invocations into object group multicasts usingthe TOTEM group-based system, also developed at theUniversity of California at Santa Barbara.

The third paper, entitled “The Implementation of aCORBA Object Group Service,” was written by PascalFelber, Rachid Guerraoui, and Andre Schiper from theEcole Polytechnique Federale de Lausanne. The paperpresents a way to extend CORBA with group facili-ties, through a first-class Object Group Service whichenriches the list of existing CORBA services. Group fa-cilities are implemented as a library of CORBA objects,and can be used on top of any commercial ORB.

The fourth paper, entitled “Experience with Dis-tributed Replicated Objects: The Nile Project,” was writ-ten by Aleta Ricciardi, Michael Ogg, and Fabio Previatofrom the University of Texas at Austin. The paper de-scribes the experience of the authors in building NILE: ajob processing environment. NILE is implemented withElectra, the first Object Request Broker providing ob-ject group communication (Electra was designed andimplemented by Silvano Maffeis at the University ofZurich). NILE is intended to provide transparent accessto hundreds of heterogeneous commodity processors inthe context of a high energy physics experiment, and theauthors point out several lessons from using Electra forlarge-scale object replication.

Gul Agha

Rachid Guerraoui

Guest Editors

THEORY AND PRACTICE OF OBJECT SYSTEMS, Vol. 4(2), 71 1998 CCC 1074-3227/98/020071-01