A topic in the Open Knowledge Graph — a free, open map of 15,290 topics and the order to learn them in.

Total Order Broadcast and Strong Consistency

Research Depth 97 in the knowledge graph I know this Set as goal
13topics build on this
366prerequisites beneath it
See this on the map →
Happened-Before Relation and Causal OrderingThe Consensus ProblemSequential Consistency
broadcast ordering consensus replication

Core Idea

Total order broadcast guarantees all processes deliver messages in the same order, which is stronger than causal order (preserving causality is not enough if concurrent messages can be delivered in different orders). It is equivalent to consensus and is the basis for state machine replication.

How It's Best Learned

Compare scenarios: causal delivery allows reordering of concurrent messages, total order does not. Implement a simple total order broadcast using a coordinator that assigns sequence numbers, then note the bottleneck and why consensus is needed for robustness.

Common Misconceptions

Explainer

You already understand the happened-before relation and how it defines a partial order on events: if event A causally precedes event B, every node must see A before B. But what about concurrent events — those with no causal relationship? Causal broadcast lets different nodes deliver concurrent messages in different orders. For many applications this is fine, but consider a replicated bank account where two concurrent operations each deduct from the same balance. If node 1 processes deduction A then B, and node 2 processes B then A, they might diverge — one allows both and the other rejects the second. Total order broadcast eliminates this problem by guaranteeing that all nodes deliver all messages in exactly the same sequence.

The formal definition has two properties: total order (if any two correct processes both deliver messages m1 and m2, they deliver them in the same order) and reliability (if a correct process delivers a message, all correct processes eventually deliver it). These two properties together are surprisingly powerful. If every node starts in the same state and applies the same sequence of operations, they will end in the same state — this is exactly the state machine replication principle that total order broadcast enables.

The simplest implementation uses a single coordinator node that assigns sequence numbers to all messages. Every node sends its messages to the coordinator, which stamps them with increasing numbers and broadcasts them. Nodes deliver messages in sequence number order. This works, but the coordinator is a bottleneck and a single point of failure. If the coordinator crashes, the system stalls until a new one is elected — and electing a new coordinator without losing or reordering messages is itself a consensus problem.

This reveals the deep equivalence: total order broadcast and consensus are computationally equivalent. Given a consensus algorithm, you can build total order broadcast (use consensus to agree on each next message in the sequence). Given total order broadcast, you can solve consensus (broadcast your proposed value; the first one delivered wins). This equivalence means that total order broadcast inherits the impossibility results and performance costs of consensus — it cannot be implemented in a purely asynchronous system with crash failures (FLP impossibility), and practical implementations require either timing assumptions or a leader to make progress. Understanding this equivalence clarifies why strong consistency in distributed systems is fundamentally expensive: it requires solving consensus, whether explicitly or through an equivalent mechanism like total order broadcast.

Practice Questions 5 questions

Prerequisite Chain

Understanding ZeroThe Number ZeroCounting to FiveCounting to 10Counting to 20Counting a Set of Objects Up to 20Cardinality: The Last Number CountedMatching Numerals to QuantitiesSubitizing Small QuantitiesAddition Within 10Number Bonds to 10Addition Within 20Doubles and Near DoublesDoubles Facts Within 10Near Doubles Facts Within 20Mental Math Strategies for AdditionMental Math: Adding and Subtracting TensAddition Within 100Repeated Addition as MultiplicationMultiplication as Equal GroupsMultiplication: ArraysBasic Multiplication Facts (0s, 1s, 2s, 5s, 10s)Multiplication Facts Within 100Division as Equal SharingDivision as Grouping (Measurement Division)Division: Grouping (Repeated Subtraction) ModelDivision: Fair Sharing ModelDivision as Equal SharingDivision as GroupingBasic Division FactsDivision Facts Within 100Multiplication and Division Fact FamiliesRelationship Between Multiplication and DivisionDivision Facts as Inverse of MultiplicationRemainders and Quotients in DivisionDivision Word ProblemsMulti-Step Word ProblemsSolving Multi-Step Word ProblemsMultiplication Word ProblemsDivision Word ProblemsIntroduction to Long DivisionFactors and MultiplesPrime and Composite NumbersEquivalent FractionsRelating Fractions and DecimalsDecimal Place ValueIntegers and the Number LineComparing and Ordering IntegersAbsolute ValueAdding IntegersSubtracting IntegersMultiplying IntegersIntroduction to ExponentsOrder of OperationsInteger Order of OperationsVariable ExpressionsThe Distributive PropertyVariables and Expressions ReviewIntroduction to PolynomialsAdding and Subtracting PolynomialsMultiplying PolynomialsFactorialPermutationsCombinationsCounting Principles: Addition and Multiplication RulesIntroduction to Graph TheoryPropositional Logic FoundationsLogical EquivalencesBoolean AlgebraBoolean Type and Truth ValuesComparison Operators and Boolean TestsLogical Operators and Boolean AlgebraBoolean Algebra and Fundamental LawsLogic Gates FundamentalsImplementing Boolean Functions with GatesKarnaugh Map SimplificationCombinational Circuit DesignFlip-Flops and LatchesBinary Counters: Design and AnalysisBinary ArithmeticFixed-Point Number RepresentationTwo's Complement RepresentationOverflow and Underflow DetectionBinary Adders: Half-Adders and Full-AddersFull Adder and Carry PropagationCarry Lookahead Adder DesignHalf Adder Circuit DesignMultiplication Circuit DesignSequential Circuit DesignRegisters and Register FilesInstruction Set Architecture (ISA)Kernel Architecture and OS StructureSystem Calls and User/Kernel ModeProcesses and the Process Control BlockLogical Clocks and Event OrderingVector Clocks and Capturing CausalityHappened-Before Relation and Causal OrderingTotal Order Broadcast and Strong Consistency

Longest path: 98 steps · 366 total prerequisite topics

Prerequisites (2)

Leads To (1)