TCP is the most extensively used transport protocol byInternet applications owing to its robust and reliable connectivity.
Hence, theperformance of TCP has a significant impact on the performance of the overallInternet. The explosive growth in Internet applications over the past few yearshas had researchers focus over the aspect of controlling congestion. Though alot of research is underway, a major problem that still persists is the “many-flowproblem”. In other words, when the TCP connections sharing the link aresufficiently large, some of these connections will be subject to frequent TCPtimeouts. Certain applications, such as real time, require long-lived TCPconnections. Delay introduced by these timeouts may significantly degrade networkperformance as perceived by end users.
To overcome the problem posed by timeouts, the TCP flows are dividedinto two phases:Ø Initial Phase – referred to as the slow start phase Ø Congestion avoidance phase – After having passed the slow startphase, these flows need to be kept in the congestion avoidance phase, withoutbeing timed out, until the end of the connection. When the number ofcompeting TCP flow increases, the rate of flow needs to be reduced in order toavoid congestion in the network. During the congestion avoidance phase, therate of TCP flow is determined by the ratio CWND/RTT where CWND is theCongestion Window Size and RTT is the Round- Trip time. Thus, reduction in flowrate may be achieved by eitherØ Decreasing the congestion window size orØ Increasing the Round Trip Time Currently, TCP exercises a closed loop congestioncontrol mechanism comprising of Randomized feedback in conjunction with activequeue management strategies such as RED and ECN. They are being deployed in aneffort to provide more effective and early congestion indication to adaptiveTCP flows and thereby reduce packet loss.
However, a closer look at thesemechanisms reveals a major drawback of frequent timeouts owing to the fact thatTCP ECN (or the conventional TCP) reduces the congestion window size during thecongestion avoidance phase. Also, when the congestion window size falls below a certain level it fails to trigger the fast retransmit and recoveryalgorithm at the sender making it difficult for the TCP flow to recover fromthe packet loss. A solution to the aforementioned problem would be toincrease the Round Trip Time during the congestion avoidance phase and maintainthe window size above a certain threshold even when the fair share of the linkbandwidth is quite small. This methodology of controlling congestion has beenproposed in this project and is referred to as the Sender based Delay Controlor TCP SDC. It derives its name from the fact that congestion is beingcontrolled by adding delay to the packets transmitted by the sender. The performance of TCP SDC is studied by conductingsimulations in NS-2. The simulations conducted have validated the fact that TCPSDC allows many TCP flows to share a link without experiencing frequenttimeouts.
In addition, as the window size is maintained above a certainthreshold during congestion avoidance phase, the sender recovers from a packetloss at a much faster rate than the conventional TCP ECN.