Download:
|
by Lorenzo Alvisi, Keith Marzullo
http://pig.postech.ac.kr/~clotho/paper/optimal-message-logging-protocol.ps
Add To MetaCart
Abstract:
Message logging protocols are an integral part of a technique for implementing processes that can recover from crash failures. All message logging protocols require that the state of a recovered process be consistent with the states of the other processes. This consistency requirement is usually expressed in terms of orphan processes, surviving processes whose states are inconsistent with the recovered state of a crashed process. Orphans are either avoided through careful logging or are eliminated through a somewhat complex recovery protocol. We give a 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. We give several examples of optimal message logging protocols that can tolerate f overlapping failures and recoveries for a parameter f: 1 f n, and discuss the tradeoffs that arise in the implementation of these protocols.
Citations
|
1746
|
Time, clocks, and the ordering of events in a distributed system
– Lamport
- 1978
|
|
808
|
The temporal logic of programs
– Pnueli
- 1977
|
|
796
|
Distributed snapshots: Determining global states of distributed systems
– Chandy, Lamport
- 1985
|
|
572
|
Implementing fault-tolerant services using the state machine approach: A tutorial
– Schneider
- 1990
|
|
539
|
Lightweight Causal and Atomic Group Multicast
– Birman, Schiper, et al.
- 1991
|
|
501
|
Virtual time and global states of distributed systems
– Mattern
- 1989
|
|
448
|
Reliable communication in the presence of failures
– Birman, Joseph
- 1987
|
|
253
|
Optimistic recovery in distributed systems
– Strom, Yemini
- 1985
|
|
219
|
Preserving and using context information in interprocess communication
– Peterson, Buchholz, et al.
- 1989
|
|
194
|
Recovery in distributed systems using optimistic message logging and checkpointing
– Johnson, Zwaenepoel
- 1990
|
|
162
|
Manetho: Transparent rollback-recovery with low overhead, limited rollback, and fast output commit
– Elnozahy, Zwaenepoel
- 1992
|
|
158
|
Notes on data base operating systems
– Gray
- 1978
|
|
118
|
SenderBased Message Logging
– Johnson, Zwaenepoel
- 1987
|
|
116
|
Byzantine Generals in Action: Implementing Fail-Stop Processors
– Schneider
- 1984
|
|
112
|
A Message System Supporting Fault Tolerance
– Borg, Baumbach, et al.
- 1983
|
|
93
|
Efficient distributed recovery using message logging
– Sistla, Welch
- 1989
|
|
92
|
PUBLISHING: A Reliable Broadcast Communication Mechanism
– Powell, Presotto
- 1983
|
|
67
|
Volatile logging in n-fault-tolerant distributed systems
– Strom, Bacon, et al.
- 1988
|
|
61
|
Nonblocking and Orphan-Free Message Logging Protocols
– Alvisi, Hoppe, et al.
- 1994
|
|
43
|
Crash recovery with little overhead
– Juang, Venkatesan
- 1991
|
|
32
|
Primary-backup protocols: Lower bounds and optimal implementations
– Budhiraja, Marzullo, et al.
- 1992
|