Citation
Alrshah, Mohamed A.
(2017)
Adaptive linux-based TCP congestion control algorithm for high-speed networks.
Doctoral thesis, Universiti Putra Malaysia.
Abstract
Recently, high-speed networks are widely deployed and their necessity is
rapidly increasing everyday. In general, high-speed networks are deployed to
provide connectivity among computing elements, storage devices and/or data
centers in order to provide fast and reliable services for end-users. High-speed
networks can be classified as: (1) short-distance networks, such as local area
networks and data center networks, and (2) long-distance networks, such as
metropolitan and wide area networks, which occasionally employ the oceanic
and/or transatlantic links to provide a fast connectivity among the scattered
data centers located in different places around the world.
Indeed, the overall performance of such networks is significantly influenced
by the Transmission Control Protocol (TCP). Although TCP is the predominant
transmission protocol used in Internet, its Congestion Control Algorithm (CCA)
is still unable to adapt to high-speed networks, which are not the typical environment
for which most CCAs were designed. For this reason, the employment
of TCP over high-speed networks causes an extreme performance degradation
leads to a poor bandwidth utilization due to the unavoidable network characteristics
such as small buffer, long RTT and non-congestion loss.
In order to reduce the sensitivity to packet loss and to improve the ability
of TCP CCA on dealing with small buffer regimes as in short-distance and
low-BDP networks, this work proposes a novel loss-based TCP CCA, namely
AF-based, designed for high-speed and short-distance networks. Thereafter,
extensive simulation experiments are carried out to evaluate the performance
of the proposed AF-based CCA compared to C-TCP and Cubic-TCP, which are
the default CCAs of the most commonly used operating systems. The results show that AF-based CCA outperforms the compared CCAs in terms of average
throughput, loss ratio and fairness, especially when a small buffer regime is
applied. Moreover, the AF-based CCA shows lower sensitivity to the change of
buffer size and packet error rate, which increases its efficiency.
Further, we propose a novel mathematical model to calculate the average
throughput of the AF-based CCA. The main contributions of this model are:
First, to validate the simulation results of AF-based CCA by comparing them
to the numerical results of this model and to the results of NewReno as a
benchmark. Second, to study the impact of ʎmax parameter on the throughput
and epoch time. Third, to formulate an equation to automate the configuration
of ʎmax parameter in order to increase the scalability of AF-based CCA. Fortunately,
the results confirm the validity of the proposed algorithm.
Furthermore, we propose a new delay-based CCA to increase bandwidth
utilization over long-distance networks, in which RTTs are very long, buffers
are very large and packet loss is very common. This CCA contributes the novel
Window-correlated Weighting Function (WWF), which correlates the value of
the increase in cwnd to the magnitude of it. Thereafter, the gained increase
is balanced using the weighting function according to the variation of RTT in
order to maintain the fairness. Consequently, this behavior improves the ability
of TCP to adapt to different long-distance network scenarios, which especially
improves bandwidth utilization over high-BDP networks. Extensive simulation
experiments show that WWF-based CCA achieves higher performance than the
other CCAs while maintaining fairness. Moreover, it shows higher efficiency
and stability than the compared CCAs, especially in the cases of big buffers
which cause an additional delay.
Fundamentally, TCP-based applications naturally need to deal with links of anydistance
without the need of human reconfiguration. For this reason, it becomes
very necessary to design an adaptive CCA, which is able to serve simultaneously
any-distance networks. Thus, we propose a novel adaptive TCP CCA, namely
Agile-TCP, which combines both AF-based and WWF-based approaches. This
combination reduces the sensitivity to packet loss, buffer size and RTT variation,
which in turn, improves the total performance of TCP over any-distance
networks. Beyond that, a Linux kernel CCA module is implemented as a real
product of the Agile-TCP. For evaluation purpose, a real test-bed of single dumbbell
topology is carried out using the well-known Dummynet network emulator.
Fortunately, the results show that Agile-TCP outperforms the compared CCAs
in most scenarios, which is very promising for many application such as cloud
computing and big data transfer.
Download File
Additional Metadata
Actions (login required)
|
View Item |