TR-IIS-04-002    PDF format

A nested invocation suppression mechanism for active replication fault-tolerant CORBA

Deron Liang and Chen-Liang Fang


Abstract

Active replication is a common approach to building highly available and reliable distributed software applications. The redundant nested invocation (RNI) problem arises when servers in a replicated group issues nested invocations to other server groups in response to a client invocation. Automatic suppression of RNI is always a desirable solution, yet it is usually a difficult design issue. If the system has multi-threading (MT) support, the difficulties of implementation increase dramatically. One can design a deterministic thread execution control mechanism, but there is a drawback of this. Commonly, modern operating systems implement thread scheduler on kernel level for execution fairness. Unfortunately, in this case, modification on the thread scheduler implies modifying the operating system kernel. This approach loses system portability which is one of the important requirements of CORBA and other middleware. In this work, we propose a mechanism to perform auto-suppression of redundant nested invocation in an active replication fault-tolerant (FT) CORBA system. Besides the mechanism design, we discuss the design correctness semantic and the correctness proof of our design.

¡@

Keywords: fault-tolerance, CORBA, distributed computing environment, active replication