Skip to Main Content
The issue of router buffer sizing is still open and significant. Previous work either considers open-loop traffic or only analyzes persistent TCP flows. This paper differs in two ways. First, it considers the more realistic case of nonpersistent TCP flows with heavy-tailed size distribution. Second, instead of only looking at link metrics, it focuses on the impact of buffer sizing on TCP performance. Specifically, our goal is to find the buffer size that maximizes the average per-flow TCP throughput. Through a combination of testbed experiments, simulation, and analysis, we reach the following conclusions. The output/input capacity ratio at a network link largely determines the required buffer size. If that ratio is larger than 1, the loss rate drops exponentially with the buffer size and the optimal buffer size is close to 0. Otherwise, if the output/input capacity ratio is lower than 1, the loss rate follows a power-law reduction with the buffer size and significant buffering is needed, especially with TCP flows that are in congestion avoidance. Smaller transfers, which are mostly in slow-start, require significantly smaller buffers. We conclude by revisiting the ongoing debate on ldquosmall versus largerdquo buffers from a new perspective.