Skip to content

Bottleneck and Flow Capacity Analysis

Why It Matters

Network topology alone doesn't determine throughput - capacity limits matter. Two networks with identical topology but different edge capacities have radically different performance. Bottlenecks reveal which upgrades matter (expanding bottleneck capacity helps; expanding abundant capacity wastes resources) and which nodes are critical chokepoints. Missing bottlenecks leads to adding capacity where it doesn't help while ignoring actual constraints.

The Key Move

Model the system as a flow network with source(s), sink(s), and edge capacities. Calculate maximum flow from source to sink using max-flow algorithms. Identify minimum cut - edges carrying flow at full capacity. These are your bottlenecks. Ask: which single edge or node removal most reduces throughput? Where should capacity be added to increase flow? What's the theoretical maximum given current topology?

Classic Application

Internet traffic routing. Network packets flow through routers with limited bandwidth. Bottleneck analysis identifies which links are saturated (minimum cut) and where adding capacity increases throughput. Content delivery networks use flow analysis to optimize cache placement and routing paths, minimizing bottlenecks between popular content and users.

Surprising Application

Learning bottlenecks in skill development. Model prerequisite skills as a network where edges represent "depends on" and capacity represents how much learning can proceed before hitting mastery requirements. Bottlenecks are skills that constrain learning many downstream skills - calculus is often a bottleneck for physics/engineering because many topics depend on it. Strategy: identify bottleneck skills and overinvest in mastery there rather than spreading effort evenly.

Failure Modes

Assuming static capacity - real networks have time-varying capacity (bandwidth depends on congestion, human capacity depends on attention/energy). Ignoring routing complexity - max-flow assumes optimal routing; real systems may route suboptimally. Treating bottlenecks as fixed - expanding a bottleneck shifts constraints elsewhere; new bottlenecks emerge. Confusing average and peak - bottlenecks for average load differ from bottlenecks for peak load.

Go Deeper

Newman, "Networks: An Introduction" Chapter 6 (Network Flows); West, "Introduction to Graph Theory" Chapter 8 (Network Flows and Connectivity)