Studying TCP in the wild

Invited talk
Queen Mary University of London

An updated version of this talk was given at Cambridge and can be seen here

The key message of this paper is that TCP/IP does not work in the real world as it is generally taught. The idea of a connection when one side sends data as fast as possible controlled by loss to fill a pipe is not what happens in the real world.

This work joins the two papers
A longitudinal analysis of Internet rate limitations (INFOCOM 2014)
On the relationship between fundamental measurements in TCP flows (ICC 2013)

The talk analyses passive traces with the aim of explaining what are the root causes of bandwidth on a connection. Theoretical results show that in equilibrium an unconstrained TCP flow has a bandwidth proportional to 1/RTT and 1/sqrt(p) where p is probability of packet loss. The experimental results here show different results, however. In particular, while the relationship with RTT is upheld, the relationship with loss is not found. A strong relationship with the length of flow is found. Longer flows have faster throughput in proportion to sqrt(L) where L is the length of the flow in packets.

A follow up analysis looks at the causes of throughput. It is found that less than half of flows are governed by loss. Flow bandwidth is very often governed by applications -- for example you tube deliberately throttles traffic so that users do not download too far ahead. Some flows are governed by operating system restrictions which do not scale window sizes. Some flows are governed by middleboxes which manipulate the window size. It is these restrictions which, the network studied, are the primary method which restricts bandwidth on connections.

A longitudinal analysis of Internet rate limitations

Conference paper
Proceedings of INFOCOM

This paper looks at when TCP is "not" TCP by analysis of five years of data on a Japanese data set. That is to say, when TCP throughput is limited by mechanisms other than traditional TCP rate control (loss or delay in the network feedback causing a reduction in window size).

Other mechanisms are important:
1) Application limiting where the sender "dribbles" out data more slowly, for example in the way that you tube does, to reduce their bandwidth.
2) Window size limitations -- where hosts have an OS built in limitation on how large the TCP window can be.
3) Middle box/receiver window tweaking -- where the receiver or (more likely) a middle box tweaks the advertised window size to reduce throughput.

It is found that in the traces studied these three mechanisms account for more than half the packets. The traces include data from well known sites such as YouTube and it seems likely that the findings are more general than just applicability to this particular trace set.

In general this paper finds that TCP in the wild is not behaving in the way it is traditionally taught... by a variety of mechanisms, TCP is not "filling a pipe" and "controlled by loss"... other mechanisms are at play beyond traditional TCP congestion control.

Deep Diving into BitTorrent Locality

Ruben Cuevans -- Univ Carlos III de Madrid, Nikolaos Laoutaris, Xiaoyuan Yang, Georgos Siganos and Pablo Rodriguez

This paper looks at P2P traffic over bittorrent from a large database of torrents. The paper considers the effects of localising bittorrent traffic on performance and ISP cost saving.

Data: The data set is one of the impressive things about this paper. 100K torrents of which 40K active. Demographics from 3.9M concurrent users and 21M total users over a day from 11K ISPs. Speed test results from ookla and iplane.

On the predictability of large transfer TCP throughput

Qi He, Constantine Dovrolis and Mostafa Ammar

This paper looks at ways of predicting the TCP throughput of a connection. The assumption is that some information is available about the connection. A comparison is made between “formula based” (FB) prediction, that is using round-trip time and loss versus time series analysis prediction (referred to here as history based (HB)), that is using previous measurements on the same connection. Both approaches require some measurements from the connection already.

The RTT distribution of TCP flows on the Internet and its impact on TCP based flow control

Srinivas Shakkottai, R. Srikant, Nevil Brownlee, Andre Broido and kc claffy
CAIDA technical report

This paper looks at RTT and how they affect TCP flows. Because of limited data they look at how to derive RTTs from analysis of tcpdump data (unidirectional).

Methods of getting estimates of RTT are:

  • SYNSYN-ACKACK – the time stamp between SYN and ACK in triple handshake.

  • Flight method – look at packets with near identical inter-packet times. Calculate time between start of flights (attempt to ignore rate-limited flows).


Subscribe to RSS - Measurement