A Comprehensive Study of Modern and High
Speed TCP-Variant in Linux Kernel: TCP CUBIC
Abrar Khan, Umar Shoaib, and
Muhammad Sarfraz
Department of Computer Science, Faculty of Computing and
Information Technology, University of Gujrat, Pakistan
Abstract: Transmission Control Protocol TCP
is no doubt most widely used congestion control protocol designed for highly
reliable and end-to-end communication over the internet. TCP is not suitable in
its standard form for modern and high speed networks. Various TCP variants are
solution for this issue. CUBIC is a modern TCP variant designed for high speed
and scalable networks. CUBIC is also adopted as default congestion control
algorithm in Linux kernel. This survey paper contains a detailed discussion
about TCP CUBIC and the directions for further improvements. It describes the
CUBIC design architecture with the pseudo code of the algorithm, TCP support in
Linux kernel and implementation of CUBIC, Network Simulator 2 and Network
Simulator 3 based study of CUBIC along with its class diagram. Finally, the
performance of CUBIC is evaluated both in wired and wireless environment under
the parameters of goodput and intra-protocol fairness along with TCP NewReno
and TCP Compound. The simulation results demonstrate that CUBIC is very
suitable for wired and high speed networks but its performance degrades in
wireless and low speed networks.
Keywords: TCP, Congestion control, Linux kernel, CUBIC,
NewReno, Compound.