Explore tens of thousands of sets crafted by our community.
Consensus Protocols Overview
10
Flashcards
0/10
Paxos
Paxos is designed to achieve consensus in a network of unreliable processors. Key characteristics include: use of a cohort of proposers, acceptors, and learners; complex due to multiple phases (prepare/propose, promise/accept); designed by Leslie Lamport.
Raft
Raft is a consensus protocol that is easier to understand than Paxos. Key characteristics include: strong leader election, log replication, and safety property. Raft ensures that all changes are made in a consistent order.
Two-Phase Commit (2PC)
A blocking atomic commitment protocol. Key characteristics include: a single coordinator (transaction manager), a prepare phase followed by a commit/abort phase, and it's a blocking protocol that can be a single point of failure.
Three-Phase Commit (3PC)
An improvement over Two-Phase Commit, intended to handle the single point of failure. Key characteristics include: a non-blocking protocol, an additional phase called 'pre-commit' to ensure fault tolerance, and it's still less resilient to network partitions.
Zab
Zab is designed for high-throughput data replication in distributed systems. Key characteristics include: used by Apache ZooKeeper, provides both linearizable writes and FIFO delivery, and designed to recover from leader failure.
Viewstamped Replication
A protocol similar to Paxos that focuses on the replication of a state machine. Key characteristics include: a primary-backup approach, view changes in case of primary failure, and a sequence of normal operation, view change, and recovery phases.
Multi-Paxos
An optimization of the basic Paxos protocol that reduces the number of phases for consecutive operations. Key characteristics include: a distinguished proposer (leader) role for multiple slots, decreased message complexity for subsequent proposals, and potential bottlenecks if the leader fails.
Bitcoin's Proof of Work
Proof of Work (PoW) is used in cryptocurrency networks like Bitcoin to achieve consensus. Key characteristics include: requirement of solving a cryptographic puzzle, energy-intensive computation, and providing security against double-spending.
Proof of Stake (PoS)
Proof of Stake is a consensus mechanism used in blockchain systems that is an alternative to Proof of Work. Key characteristics include: validators are chosen based on the number of coins they hold, energy efficiency compared to PoW, and intended to offer the same level of security with less computational work.
Practical Byzantine Fault Tolerance (PBFT)
PBFT aims to withstand Byzantine faults in distributed systems. Key characteristics include: 3-phase protocol (pre-prepare, prepare, commit) with strong consistency, capability to function correctly even if some nodes are malicious, and designed for low-overhead fault tolerance in asynchronous systems.
© Hypatia.Tech. 2024 All rights reserved.