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.
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.