Buffer sizes for large multiplexers: TCP queueing theory and instability analysis

Gaurav Raina and Damon Wischik. EuroNGI conference on Next Generation Internet Networks, 2005 [link]. [pdf] [talks]

Abstract.

In large multiplexers with many TCP flows, the aggregate traffic flow behaves predictably; this is a basis for the fluid model of Misra, Gong and Towsley [link] and for a growing literature on fluid models of congestion control [book]. In this paper we argue that different fluid models arise from different buffer-sizing regimes. We consider the large buffer regime (buffer size is bandwidth-delay product), an intermediate regime (divide the large buffer size by the square root of the number of flows [pdf]), and the small buffer regime (buffer size does not depend on number of flows). Our arguments use various techniques from queueing theory.

We study the behaviour of these fluid models (on a single bottleneck link, for a collection of identical long-lived flows). For what parameter regimes is the fluid model stable, and when it is unstable what is the size of oscillations and the impact on goodput? Our analysis is based on an extension of the Poincaré-Linstedt method to delay-differential equations.

We find that large buffers with drop-tail have much the same performance as intermediate buffers with either drop-tail or AQM; that large buffers with RED are better at least for window sizes less than 20 packets; and that small buffers with either drop-tail or AQM are best over a wide range of window sizes, though the buffer size must be chosen carefully. This suggests that buffer sizes should be much much smaller than is currently recommended.

See also a bibliography on queueing theory and feedback congestion control.
Operating points for multiple identical TCP connections over a single bottleneck link. Given the desired window size wnd for each flow, and the buffer size B at the link, the intersection of the wnd and B lines shows the operating point, measured in terms of utilization (i.e. traffic intensity) and packet loss probability.
Unstable operating points are shown in grey. A large buffer can achieve high equilibrium utilization, but the price is that there are oscillations in traffic intensity (i.e. the window sizes become synchronized), and this leads to a reduction in goodput.