Flow Control vs. Congestion Control¶
Fast senders must be throttled to avoid overwhelming receivers (flow control) and intermediate networks (congestion control); these are distinct problems requiring different mechanisms - receiver feedback vs. network inference.
Tension Addressed¶
Simplicity vs. Performance
Recognizable As¶
Backpressure, rate limiting, windowing, credit-based systems, producer-consumer balancing, queue depth monitoring, reactive streams
Canonical Sources¶
Jacobson, "Congestion Avoidance and Control" (1988); Reactive Streams Specification (2014)
Transfers To¶
Stream processing, message queues, API rate limiting, database connection pools, async programming (backpressure)
Sub-concepts: - Backpressure propagation: Slow consumers must signal upstream to slow production - Additive increase, multiplicative decrease: A stable approach to probing capacity without causing collapse
Related Concepts¶
- Backpressure - Distributed Patterns