Paxos is a flexible and fault-tolerant consensus protocol that was defined by Leslie Lamport in his paper The part-time parliament. ACM Trans. on Comp. Syst. 16 (2), 133-169 (1998).
In order to fully describe the algorithm and construct, we must generalize the assumption we made about the preceding topology. Instead of a single P0 process making the change, essentially a process (or node, in Paxos parlance) can take up one of three roles:
- Proposer: This is the node driving the consensus.
- Acceptor: These are nodes that independently accept or reject the proposal.
- Learner: Learners are not directly involved in the consensus building process, they learn of the accepted values from the Acceptor. Generally, Learners and Acceptors are packaged ...