Abstract:
Transmission Control Protocol (TCP) congestion control algorithm deals with
reducing the network load during congestion for achieving beller throughput. It
rcduces the transmission window size after a rctransmission timeout or reception of
consccutivc three duplicate acknowledgements (3-dupacks). It works well for the
wired networks where most of the timeouts and 3-dupacks are the result of
congestion. But we like to argue that in the wireless networks, where random segment
loss due to bit errors is a dominant concern, the arrival of duplicate
acknowledgements or even the retransmission timeouts do not necessarily denote
congestion. In those cases, throttling transmission rate is not necessary. As the basic
TCP congestion control algorithm cannot distinguish between congestion event and
bit crror event, it fails to perform well in wireless networks. In this thesis, we propose
some modifications to the basic TCP congestion control algorithm so that its
performance is enhanced in wireless networks. In particular, our algorithm refines the
multiplicative decrease algorithm of TCP NewReno. We are using some statistical
counters to track the frequencies of the occurrences of timeouts and 3-dupacks.
Different ratios of these counter values are then used to differentiate a congestion
event from a non-congestion event. We 'are also tracking the time difference between
two consecutive timeouts to figure out whether timeouts are caused by network
congestion or random bit errors. We tested our proposed algorithm using the Network
Simulator version 2 (ns-2) and found that it shows better performance than any other
TCP variants in wired-cum-wireless networks. Moreover, our algorithm is end-to-end
in nature and modifies only TCP sender's algorithm.