Jackson Networks and Queueing Networks
A result showing that a whole network of connected queues — where output from one feeds into another — can, under the right conditions, be analyzed as if each queue were independent, dramatically simplifying an otherwise tangled problem.
Prerequisites: Queueing Theory and Birth-Death Processes, Little's Law
An order doesn't just wait at one queue and leave. It might get validated at a risk-check stage, then routed to a matching engine, then to clearing, with some fraction looped back for a retry. Each stage is its own little queue, and they feed each other — the output of one is the input to the next. Analyzing this seems to require tracking the joint state of every queue at once, since a burst at stage one causes a burst at stage two a moment later. Jackson's theorem is a remarkable simplification: under specific conditions, each queue in the network can be analyzed entirely on its own, as if it had nothing to do with the others, and the results still combine correctly.
An analogy: a chain of coffee shops
Imagine three coffee shops in a row: customers arrive at shop A, and after being served, some fraction walk over to B, and from B some fraction go on to C, with customers also leaving the chain at each stage and new ones joining directly at B and C. Shop B's line length seems like it should depend intricately on exactly which customers just left A and when. Jackson's insight is that if arrivals are Poisson and each shop serves at random (exponential) rates, each shop can, in the long run, be treated as its own independent Poisson-arrival queue, once you've correctly computed its effective total arrival rate — direct new arrivals plus everything routed in from upstream. You don't need to track the correlation between shops at all; it washes out in steady state.
The theorem, one symbol at a time
Consider a network of queues (nodes). External customers arrive at node as a Poisson process with rate . After being served at node , a customer moves to node with probability , or leaves the network with the remaining probability. Let be node 's total arrival rate, counting both external arrivals and internal routing from other nodes. These satisfy the traffic equations:
In plain English: the total rate hitting node equals the rate arriving from outside directly, plus the rate arriving from every other node that routes a fraction of its own output to . This is a linear system — solve it once for all simultaneously. Jackson's theorem then says: if each node is an M/M/1 (or M/M/c) queue with service rate , the steady-state joint distribution of queue lengths factors as if each node were an independent M/M/1 queue with arrival rate and service rate — even though, moment to moment, the nodes are obviously correlated (a burst at node 1 causes a burst at node 2 right afterward).
Worked example 1: a two-stage settlement pipeline
Stage 1 (risk check) gets external arrivals at orders/second and has service rate /second. After risk check, 90% of orders move to Stage 2 (matching), 10% are rejected and leave. Stage 2 also receives no direct external arrivals () and has service rate /second. Traffic equations:
Utilizations: , . Using the standard M/M/1 mean-number-in-system formula independently at each node: , . Total expected orders in the pipeline: , obtained without ever touching the joint distribution.
Worked example 2: adding a feedback loop
Now suppose 20% of Stage 2's completions get kicked back to Stage 1 for a re-check, with , , , , rest exits. The traffic equations are now coupled both ways:
Substituting: , and . Even with a feedback loop, each node is still treated as an independent M/M/1 queue with these solved-for rates — Jackson's result covers feedback too, as long as the Poisson/exponential assumptions hold.
What this means in practice
Jackson networks are the standard model for multi-stage order-processing or settlement pipelines, and more broadly for any system decomposable into Poisson-arrival, exponential-service stages linked by routing probabilities: solve one linear system for the effective rates, then analyze every stage with ordinary single-queue formulas. This turns network capacity planning — where's the bottleneck, what happens if I add a server at stage 2 — into arithmetic instead of a joint simulation.
For a network of queues with Poisson external arrivals, exponential service, and probabilistic routing between nodes (including feedback loops), the steady-state behavior at each node is as if it were an independent M/M/1 (or M/M/c) queue, once you solve the traffic equations for each node's true total arrival rate — the moment-to-moment correlation between nodes doesn't affect the long-run per-node distribution.
Jackson's independence result relies entirely on Poisson arrivals and exponential (memoryless) service at every node — it does not extend, in general, to non-exponential service or to routing that depends on current queue lengths elsewhere (state-dependent routing, common in real order-routing logic that avoids busy venues). Applying the simplification to a network with these features can badly understate correlations between nodes, and hence the true probability of simultaneous overload across stages.
Related concepts
Practice in interviews
Further reading
- Jackson, J.R. (1957), Networks of waiting lines