AQuA: an adaptive architecture that provides dependable distributed objects

TitleAQuA: an adaptive architecture that provides dependable distributed objects
Publication TypeJournal Articles
Year of Publication2003
AuthorsRen Y, Bakken DE, Courtney T, Cukier M, Karr DA, Rubel P, Sabnis C, Sanders WH, Schantz RE, Seri M
JournalComputers, IEEE Transactions on
Pagination31 - 50
Date Published2003/01//
ISBN Number0018-9340
Keywordsactive replication pass-first scheme, adaptive architecture, adaptive fault tolerance, AQuA, CORBA, data consistency, data integrity, dependable distributed objects, distributed object management, performance measurements, quality of service, replicated dependability manager, replication schemes, software fault tolerance, system resources

Building dependable distributed systems from commercial off-the-shelf components is of growing practical importance. For both cost and production reasons, there is interest in approaches and architectures that facilitate building such systems. The AQuA architecture is one such approach; its goal is to provide adaptive fault tolerance to CORBA applications by replicating objects. The AQuA architecture allows application programmers to request desired levels of dependability during applications' runtimes. It provides fault tolerance mechanisms to ensure that a CORBA client can always obtain reliable services, even if the CORBA server object that provides the desired services suffers from crash failures and value faults. AQuA includes a replicated dependability manager that provides dependability management by configuring the system in response to applications' requests and changes in system resources due to faults. It uses Maestro/Ensemble to provide group communication services. It contains a gateway to intercept standard CORBA IIOP messages to allow any standard CORBA application to use AQuA. It provides different types of replication schemes to forward messages reliably to the remote replicated objects. All of the replication schemes ensure strong, data consistency among replicas. This paper describes the AQuA architecture and presents, in detail, the active replication pass-first scheme. In addition, the interface to the dependability manager and the design of the dependability manager replication are also described. Finally, we describe performance measurements that were conducted for the active replication pass-first scheme, and we present results from our study of fault detection, recovery, and blocking times.