Abstract
The amount of time critical data sent on the Internet is increasing. As a result, the networks are in danger of getting congested. When sending time critical data on congested networks, we risk that the data may get too old in buffers, and are to no use when it arrives at its destination. For example, a late video frame in a video session or a late position update in games. To prevent delivery of outdated data, we want to discover and discard outdated network traffic as early as possible. A mechanism to accomplish this is late data choice (LDC). With LDC we address the problem at the source by taking control of our own sending buffer. This thesis explores the possibility to support LDC in TCP in the Linux network architecture. There is no LDC support in the TCP implementation in Linux today. Therefore, an implementation of LDC support for TCP was made and evaluated. When testing, we found that with LDC support in TCP we can deliver relevant data and drop data we no longer want to or can send. This makes the utilization of resources much better, as we do not waste them on useless data. Thus, we can say that LDC support in TCP reduces the perceived latency for the receiver, and increases useful throughput.