The part-time parliament

@article{Lamport1998ThePP,
  title={The part-time parliament},
  author={Leslie Lamport},
  journal={ACM Trans. Comput. Syst.},
  year={1998},
  volume={16},
  pages={133-169}
}
  • L. Lamport
  • Published 1 May 1998
  • Computer Science
  • ACM Trans. Comput. Syst.
Recent archaeological discoveries on the island of Paxos reveal that the parliament functioned despite the peripatetic propensity of its part-time legislators. The legislators maintained consistent copies of the parliamentary record, despite their frequent forays from the chamber and the forgetfulness of their messengers. The Paxon parliament's protocol provides a new way of implementing the state machine approach to the design of distributed systems. 

Figures from this paper

On the correctness of Egalitarian Paxos
  • P. Sutra
  • Computer Science
    Inf. Process. Lett.
  • 2020
Deconstructing paxos
TLDR
A deconstruction of the Paxos algorithm is presented by factoring out its fundamental algorithmic principles within two abstractions: an eventual leader election and an eventual register abstractions that encapsulate the liveness property of Paxos whereas the register abstraction encapsulates its safety property.
Yet Another Visit to Paxos
This paper presents a modular decomposition of crashtolerant and Byzantine-tolerant protocols for reaching consensus that use the method introduced by the Paxos algorithm of Lamport and by the
On the coordinator's rule for Fast Paxos
The ABCD's of Paxos
TLDR
An abstract version of Lamport's Paxos algorithm for asynchronous consensus is described and the Byzantine, classic, and disk versions of Paxos are derived, showing how they are related to each other, and discussing the safety, liveness, and performance of each one.
State based Paxos
TLDR
The performance of State Paxos is evaluated, a novel variation of the Paxos consensus algorithm that exploits overwrite semantics to eliminate most of the complexities and inefficiencies introduced by state management.
From Viewstamped Replication to Byzantine Fault Tolerance
TLDR
The paper provides an historical perspective about two replication protocols, each of which was intended for practical deployment, and an extension of Viewstamped Replication that allows the group to survive Byzantine failures.
Distributed computing column 37: reconfiguring state machines ... and the history of common knowledge
TLDR
This work explains several methods for reconfiguring a system implemented using the state-machine approach, including some new ones, and discusses the relation between these methods and earlier reconfiguration algorithms—especially view changing in group communication.
Democratizing the Parliament (extended Abstract)
This paper presents a replication algorithm that implements a highly-available, non-deterministic state machine. Our algorithm generalizes the Paxos parliament algorithm of Lamport to cope with
Classic Paxos vs. fast Paxos: caveat emptor
TLDR
There are realistic scenarios in which Classic Paxos has a significant probability of having a lower latency, and this paper discusses one such scenario with an analytical comparison of the protocols and simulation results.
...
...

References

SHOWING 1-10 OF 33 REFERENCES
How to Build a Highly Available System Using Consensus
TLDR
The general scheme for efficient highly available computing is explained, a general method for understanding concurrent and fault-tolerant programs is given, and the Paxos algorithm is derived as an example of the method.
Revisiting the PAXOS algorithm
Impossibility of distributed consensus with one faulty process
TLDR
It is shown that every protocol for this problem has the possibility of nontermination, even with only one faulty process, in the asynchronous consensus problem.
Using Time Instead of Timeout for Fault-Tolerant Distributed Systems.
TLDR
Description d'une methode generale pour implementer un systeme reparti ayant n'importe quel degre desire de tolerance de panne, d'un solution au probleme «Bizantine Generals» sont assumes.
Time, clocks, and the ordering of events in a distributed system
TLDR
A distributed algorithm is given for synchronizing a system of logical clocks which can be used to totally order the events, and a bound is derived on how far out of synchrony the clocks can become.
Self-stabilizing systems in spite of distributed control
The synchronization task between loosely coupled cyclic sequential processes (as can be distinguished in, for instance, operating systems) can be viewed as keeping the relation “the system is in a
Implementing fault-tolerant services using the state machine approach: a tutorial
TLDR
The state machine approach is a general method for implementing fault-tolerant services in distributed systems and protocols for two different failure models—Byzantine and fail stop are described.
Viewstamped Replication: A New Primary Copy Method to Support Highly-Available Distributed Systems
TLDR
This paper presents a new replication algorithm that has desirable performance properties, based on the primary copy technique, and uses a special kind of timestamp called a viewstamp to detect lost information.
Consensus in the presence of partial synchrony
TLDR
Fault-tolerant consensus protocols are given for various cases of partial synchrony and various fault models that allow partially synchronous processors to reach some approximately common notion of time.
Providing high availability using lazy replication
TLDR
This paper describes a new way of implementing causal operations that performs well in terms of response time, operation-processing capacity, amount of stored state, and number and size of messages; it does better than replication methods based on reliable multicast techniques.
...
...