Striking a Balance between Bufferbloat and TCP Queue Oscillation in Satellite Input Buffers
Ulrich Speidel, Lei Qian · 2018
Satellite Internet links to Internet Service Providers (ISPs) in remote locations represent a bottleneck when the link transmission rate is lower than that of the networks connecting to the link at either side. This presents a significant challenge to Internet hosts using the Transmission Control Protocol (TCP) to transfer larger amounts of data: TCP congestion control relies on the detection of packet losses. If these losses occur at the input to the satellite link during bursty packet arrivals, the TCP senders' responses are delayed by at least one round-trip-time (RTT) - by which time the congestion situation at the input to the link may have changed completely. The leads to senders either over- or undersupplying the link for much of the time, an effect that is made worse if a larger number of senders are involved. To mitigate this, operators generally configure an input buffer of a size that typically tries to match the bandwidth-delay product (BDP) of the link. This design rule was also commonly used for Internet routers until it was discovered that it led to "bufferbloat" with standing queues that never drain, and routers are now typically configured with much smaller buffers. However, this does not seem to be the case in the satellite world. Our paper examines the effect of buffer size on queue behaviour and TCP performance using a large hardware-based simulator with a real-world flow size distribution.