This paper presents the semi-passive replication technique -- a variant of passive replication -- that can be implemented in the asynchronous system model without requiring agreement on a primary (usually done using a membership service). Passive replication is a popular replication technique since it can tolerate non-deterministic servers (e.g., multi-threaded servers) and uses little processing power when compared to other replication techniques. However, passive replication suffers from a high reconfiguration cost in case of the failure of the primary (e.g., the cost of running the membership service to define a new view). The semi-passive replication technique presented in the paper benefits from the same advantages than passive replication. However, since it does not require a group membership service, the semi-passive replication technique has a considerably lower cost in case of failure. As explained in the paper, this technique can benefit from an aggressive time-out value that is significantly lower than what a group membership allows. As a result, the reaction to crashes is greatly improved. The semi-passive replication algorithm uses failure detectors. The algorithm given in the paper is analysed in the failure free case and in the case of one server crash. The response time (for the client) of these two scenarios is analysed through simulation.
Record created on 2005-05-20, modified on 2016-08-08