background preloader

Paxos (computer science)

Paxos (computer science)
Consensus protocols are the basis for the state machine approach to distributed computing, as suggested by Leslie Lamport[2] and surveyed by Fred Schneider.[3] The state machine approach is a technique for converting an algorithm into a fault-tolerant, distributed implementation. Ad-hoc techniques may leave important cases of failures unresolved. The principled approach proposed by Lamport et al. ensures all cases are handled safely. The Paxos protocol was first published in 1989 and named after a fictional legislative consensus system used on the Paxos island in Greece.[4] It was later published as a journal article in 1998.[5] The Paxos family of protocols includes a spectrum of trade-offs between the number of processors, number of message delays before learning the agreed value, the activity level of individual participants, number of messages sent, and types of failures. The topic predates the protocol. Client Acceptor (Voters) Proposer Learner Leader Non-triviality Safety Liveness(C;L)

Chandra–Toueg consensus algorithm The algorithm[edit] The algorithm proceeds in rounds and uses a rotating coordinator: in each round r, the process whose identity is given by r mod n is chosen as the coordinator. Each process keeps track of its current preferred decision value (initially equal to the input of the process) and the last round where it changed its decision value (the value's timestamp). The actions carried out in each round are: All processes send (r, preference, timestamp) to the coordinator.The coordinator waits to receive messages from at least half of the processes (including itself). It then chooses as its preference a value with the most recent timestamp among those sent.The coordinator sends (r, preference) to all processes.Each process waits to receive (r, preference) from the coordinator or for its failure detector to identify the coordinator as crashed. Why it works[edit] Agreement is trickier. References[edit]

Rough consensus Rough consensus is a term used in consensus decision-making to indicate the "sense of the group" concerning a particular matter under consideration. It has been defined as the "dominant view" of a group as determined by its chairperson. The term was first used by the Internet Engineering Task Force (IETF) in describing its procedures for working groups (WGs). The means to establish rough consensus was described by the IETF as follows:[1] Working groups make decisions through a "rough consensus" process. IETF consensus does not require that all participants agree although this is, of course, preferred. The phrase is often extended into the saying "rough consensus and running code",[2] to make it clear that the IETF is interested in practical, working systems that can be quickly implemented.

Consensus Un article de Wikipédia, l'encyclopédie libre. Un consensus est un accord des volontés sans aucune opposition formelle. Le consensus se distingue de l'unanimité qui met en évidence la volonté manifeste de tous les membres dans l'accord. Un consensus caractérise l'existence parmi les membres d'un groupe d'un accord général (tacite ou manifeste), positif et unanime pouvant permettre de prendre une décision ou d'agir ensemble sans vote préalable ou délibération particulière. Bien qu'en principe le consensus désigne un accord positif et unanime, l'usage récent a consacré des sens dérivés : §Étymologie[modifier | modifier le code] Consensus est un mot latin qui signifie « accord », au sens de « sentiment commun ». Du fait du changement de sens récent qui fait que le terme consensus se dissocie de l'unanimité ou de la quasi-unanimité, on en vient à parler de « consensus absolu » ou de « consensus parfait » pour désigner un accord qui ne recueille aucune opposition. §Droit de veto ou permission ?

Related: