A significant part of the Internet’s traffic is generated by TCP (Transport Control Protocol). A critical function of TCP is congestion control, wich has an impact on bandwidth utilization and delay. TCP SIAD (Scalable Increase Adaptive Decrease) is a newer algorithm, wich aims to fully utilize the link capacity independently of the network devices’ buffers sizes, while also tries to empty the buffers to achieve low delay, wich is an important requirement for increasingly more applications.
In my thesis I implement TCP SIAD in ns3 (Network Simulator 3), wich is an open source framework consisting of libraries capable to perform network simulations. I summarize how CoDeL works. I present how to extend the simulator with new congestion control algorithms and how to write scripts for testing. TCP SIAD is already implemented in the Linux kernel, I use it as a reference for my work, and in my thesis I describe the Linux implementation in short. I test my implementation in ns3 and evaluate the results.