Paxos

Paxos is a family of protocols used to achieve consensus or agreement among a distributed set of computers that communicate through a network that is asynchronous, meaning they are unreliable. One or more clients propose a value to Paxos, and if a majority of the running systems agree on the value, consensus happens. Consensus is used for reasons such as agreeing on who gets access to a resource, who is the leader, or a common order of events among a collection of computers.

Paxos is typically used to maintain the same ordering of commands among multiple replicas so that all replicas eventually converge to the same value. The protocol tries to make progress even if a bounded number of replicas are unresponsive. It also provides abortable consensus, meaning that some processes abort the consensus if there is contention when deciding on the value. The processes that are deciding must agree on the same value. An abortable consensus allows a process to terminate instead of being eternally blocked.

Paxos assumptions

The following are assumptions made about the processors and network on which the protocol is implemented.

Processors

  • Operated at arbitrary speed and may experience failure
  • Processors with stable storage may rejoin the protocol after failure
  • Processors do not collude, lie, or attempt to subvert the protocol

Network

  • Processors can send messages to any other processor
  • Messages are sent asynchronously and may take longer to deliver
  • Messages may be lost, reordered, or duplicated
  • Messages are delivered without corruption

The Paxos family of protocols is similar to the Raft consensus algorithm. While both address the fundamental problem of reaching a consensus among a cluster of computer systems, Paxos is more concerned with the mechanics of consensus, whereas Raft is oriented around the practical challenges of implementing a replicated log. Raft is generally designed to be more understandable than Paxos.

Webopedia Staff
Webopedia Staff
Since 1995, more than 100 tech experts and researchers have kept Webopedia’s definitions, articles, and study guides up to date. For more information on current editorial staff, please visit our About page.

Top Articles

List of Windows Operating System Versions & History [In Order]

The Windows operating system (Windows OS) refers to a family of operating systems developed by Microsoft Corporation. We look at the history of Windows...

How to Create a Website Shortcut on Your Desktop

Website Shortcut on Your Desktop reviewed by Web Webster   This Webopedia guide will show you how to create a website shortcut on your desktop using...

What are the Five Generations of Computers? (1st to 5th)

Reviewed by Web Webster Each generation of computer has brought significant advances in speed and power to computing tasks. Learn about each of the...

Hotmail [Outlook] Email Accounts

Launched in 1996, Hotmail was one of the first public webmail services that could be accessed from any web browser. At its peak in...

Document Management System

A document management system is an automated software solution businesses and organizations use...

Conti Ransomware

Conti ransomware first emerged in 2020. It uses a ransomware as a service...

Crypt888 Ransomware

Crypt888, also known as Mircop, is ransomware that encrypts files on desktops, downloads,...