Title :
Message logging: pessimistic, optimistic, causal, and optimal
Author :
Alvisi, Lorenzo ; Marzullo, Keith
Author_Institution :
Dept. of Comput. Sci., Texas Univ., Austin, TX, USA
fDate :
2/1/1998 12:00:00 AM
Abstract :
Message-logging protocols are an integral part of a popular technique for implementing processes that can recover from crash failures. All message-logging protocols require that, when recovery is complete, there be no orphan processes, which are surviving processes whose states are inconsistent with the recovered state of a crashed process. We give a precise specification of the consistency property “no orphan processes”. From this specification, we describe how different existing classes of message-logging protocols (namely optimistic, pessimistic, and a class that we call causal) implement this property. We then propose a set of metrics to evaluate the performance of message-logging protocols, and characterize the protocols that are optimal with respect to these metrics. Finally, starting from a protocol that relies on causal delivery order, we show how to derive optimal causal protocols that tolerate f overlapping failures and recoveries for a parameter f (1⩽f⩽n)
Keywords :
electronic messaging; fault tolerant computing; formal specification; performance evaluation; protocols; system recovery; causal delivery order; causal protocols; checkpoint-restart protocols; consistency property specification; crash failure recovery; fault-tolerance techniques; inconsistent states; message-logging protocols; optimal protocols; optimistic protocols; orphan processes; overlapping failures; performance evaluation metrics; pessimistic protocols; recovered state; resilient processes; Checkpointing; Computer crashes; Context; Fault tolerant systems; Measurement; Multicast protocols;
Journal_Title :
Software Engineering, IEEE Transactions on