0% found this document useful (0 votes)
206 views

TCP Paper

The document discusses and compares several TCP congestion control algorithms like TCP Reno, Vegas, and a novel self-tuning proportional and derivative (ST-PD) control algorithm. It provides details on TCP Reno including its congestion avoidance mechanism and issues. It then describes the design and benefits of the proposed ST-PD algorithm for congestion control.

Uploaded by

Kalpesh Deshmukh
Copyright
© Attribution Non-Commercial (BY-NC)
Available Formats
Download as ODT, PDF, TXT or read online on Scribd
0% found this document useful (0 votes)
206 views

TCP Paper

The document discusses and compares several TCP congestion control algorithms like TCP Reno, Vegas, and a novel self-tuning proportional and derivative (ST-PD) control algorithm. It provides details on TCP Reno including its congestion avoidance mechanism and issues. It then describes the design and benefits of the proposed ST-PD algorithm for congestion control.

Uploaded by

Kalpesh Deshmukh
Copyright
© Attribution Non-Commercial (BY-NC)
Available Formats
Download as ODT, PDF, TXT or read online on Scribd
You are on page 1/ 7

segment every RTT.

In fact, when the bandwidth-


delay product is large and the network is
1) Abstract: underutilized, increasing window size by more than
one segment every RTT can help a TCP connection
Research in the TCP congestion control reach its maximum throughput more quickly. All
over wired and wireless network is the major focus packet losses are assumed to be due to buffer
of this paper. We have studied the performance overflows.
characteristics in comparison of different algorithm To overcome the limitations of current TCP
versions discussed above, the new scheme is
like TCP RENO, TCP VEGAS,TCP RQB,TCP
proposed called as self tuning proportional and
NOVEL. Various parameters and performance derivative control (ST-PD). It addresses the
issue of different algorithms has been taken into congestion control problem from a control-
consideration and their effectiveness is suggested. theoretical perspective.
These algorithms vary in the throughput in wired
and wireless network. 3) TCP RENO PROTOCOL:

Keywords: TCP Reno is the widely used transmission


control protocol. TCP Reno protocol is designed for
TCP, mixed wired and wireless network, wired networks, when packet loss, Reno would
congestion loss and wireless loss. consider network, congestion and thus reduce the
congestion window and slow start threshold. While
2) INTRODUCTION: in the wireless environment a noisy, fading radio
channel is the more likely cause of loss. This creates
In recent years TCP congestion control has
been challenged both by the exponential growth of problems in TCP Reno since it does not possess the
internet traffic and by the variety of media over capability to distinguish and isolate congestion loss
which TCP traffic is increasingly being carried on. from wireless loss, start unnecessary congestion
TCP congestion control is realized by regulating control mechanism, resulting in link free, wasting
the congestion window size maintained by each sending opportunity to cause system performance
TCP sender. TCP updates its congestion window degradation.
size dynamically in response to packet
TCP Reno induces packet losses to estimate
acknowledgments and the detection of packet
losses. The widely deployed versions are TCP the available bandwidth in the network. While there
Tahoe and TCP Reno, which have reactive are no packet losses, TCP Reno continues to
congestion control schemes. In these schemes, increase its window size by one during each round
congestion window size is increased when packets trip time. When it experiences a packet loss, it
are acknowledged, and decreased when packet reduces its window size to one half of the current
loss is detected. The more recent TCP Vega SI window size. This is called additive increase and
tries to reduce packet losses by using a proactive
multiplicative decrease.(AIMD). TCP Reno,
congestion control method. It calculates a
parameter called 'actual throughput' by counting however, fails to achieve fairness allocation of
the number of bytes transmitted every round-trip bandwidth, because TCP is not a synchronized rate
time (RTT). The congestion window updating based control scheme, which is necessary for the
decision is based on the difference between an convergence.
expected throughput and the actual throughput. All
of the congestion control mechanisms mentioned
above are based on heuristic methods. For
example, during the congestion avoidance phase
when the congestion window needs to be
increased, TCP Tahoe, Reno and Vegas increase
the window size by one segment every RTT. There
are no essential reasons why TCP should not
increase its window size by more than one
size to one half of the current window size. This is size by 1/cwnd, that is, cwnd = cwnd +1/cwnd, the
called additive increase and multiplicative linear growth of congestion window.
decrease.(AIMD). TCP Reno, however, fails to (iv) If three duplicate ACK are received, TCP
achieve fairness allocation of bandwidth, because enters fast retransmission and fast recovery phase,
TCP is not a synchronized rate based control sets ssthresh to half of the current congestion
scheme, which is necessary for the convergence. window, cwnd is equal to ssthresh, and retransmits
The congestion avoidance mechanism the lost packets.
adopted by TCP Reno causes a periodic oscillation (v)If the retransmission timer timeout, TCP
in the window size due to the constant update of regards packet loss, set ssthresh to half of the
the window size. This oscillation in the window current congestion window, cwnd is one segment,
The congestion avoidance mechanism and then TCP retransmits the lost packets and
adopted by TCP Reno causes a periodic oscillation enters the slow start phase.
in the window size due to the constant update of
the window size. This oscillation in the window
size leads to an oscillation in the round trip delay
of the packets. This oscillation results in larger
delay jitter and an inefficient use of the available
bandwidth due to many retransmissions of the
same packets after packet drops occur. The rate at
which each connection updates its window size
depends on the round trip delay of the connection.
Hence, the connections with shorter delays can
update their window sizes faster than other
Above figure(a) shows the throughput of tcp-reno
connections with longer delays, and thereby steal
which is heuristic in nature of TCP reno
an unfair share of the bandwidth. As a result, TCP
congestion control mechanism make tcp reno
Reno exhibits an undesirable bias against the
connection very sluggish to reach their share of
connections with longer delays
bandwidth.

TCP RENO ALGORITHM:


4) Novel TCP congestion control:
(i) For a given TCP connection, the congestion
window (cwnd) is initialized to one segment size, A novel self-tuning proportional and-
slow start threshold (ssthresh) is 65535 bytes. TCP derivative (ST-PD) control based TCP congestion
sending window is the minimum between cwnd control scheme is proposed. In ST-PD TCP,
and congestion control is carried out by a PD
the receiver notice window. controller. A fuzzy logic controller is used to Tune
(ii) Slow start phase, when the sender receives a the gains of the PD controller. ST-PD TCP probes
new ACK, it increases its window size by one, that available bandwidth without causing buffer
is, cwnd = cwnd +1, congestion window increases overflows. This Feature enables ST-PD TCP to
exponentially, and cwnd is smaller than ssthresh. decouple its congestion control and error control
(iii) When cwnd is greater than ssthresh, TCP is in functions. As a result ST-PD TCP operates more
congestion avoidance phase, when the sender efficiently over unreliable transmission Media.
receives a new ACK, and increases its window The ST-PD TCP congestion control
operates on a purely end-to-end basis without any
involvement of the intermediate nodes The major
control entity resides at source nodes where the
network resource information. such as the
bandwidth of each link. the buffer sire of each
node and the number of competing connections, is
unavailable. the major control entity resides at
intermediate nodes, which have explicit
knowledge about the bandwidth, buffer size and
the number of active flows. The only feedback
information for ST-PD TCP is acknowledgments
of received data.

DESIGN ASPECT OF ST-DP TCP :


fig.2
Consider an arbitrary 1P based network in
which a TCP connection S-D traverses a set of
routers R1, R2.. ... R, as shown in Fig. 1. Each
link between adjacent routers is shared by other In the ST-PD congestion control scheme,
TCP connections. Existing TCP connections can the increase or decrease of the congestion window
leave and new TCP connections can join in at any is proportional to the control error, which makes
time without being subjected to connection ST-PD TCP connections reach their share of
admission control. The service discipline of the bandwidth more swiftly as indicated in Fig.2.
bottleneck link is first-in first-out. Each router has
a finite buffer, and arriving packets are dropped
when the buffer is full.
Flowchart of st-pd tcp error control
and congestion control:

Throughput of st-pd tcp congestion


control:
that when the network is not congested, the actual
flow rate will be close to the expected flow rate.
Otherwise, the actual flow rate will be smaller
than the expected flow rate. TCP Vegas, using this
difference in flow rates, estimates the congestion
level in the network and updates the window size
accordingly. Note that this difference in the flow
rates can be easily translated into the difference
between the window size and the number of
acknowledged packets during the round trip time,
using the equation:

Diff = (Expected - Actual) Base RTT;

where Expected is the expected rate, Actual is the


actual rate, and Base RTT is the minimum round
trip time. The details of the algorithm are as
follows:

1. First, the source computes the expected flow


rate Expected = CWND/Base RTT , where CWND
is the current window size and Base RTT is the
minimum round trip time.

2. Second, the source estimates the current flow


rate by using the actual round trip time according
to Actual = CWND/RTT , where RTT is the actual
round trip time of a packet.

3. The source, using the expected and actual flow


rates, computes the estimated backlog in the queue
from Diff = (Expected-Actual) Base RTT.

4. Based on Di_, the source updates its window


size.

5) TCP VEGAS: TCP Vegas does not cause any oscillation in


window size once it converges to an equilibrium
point. One of the problems is the issue of
TCP Vegas does achieve higher efficiency than rerouting. Since TCP Vegas uses an estimate of the
propagation delay, base RTT, to adjust its window
TCP Reno and causes much less packet re
size, it is very important for a TCP Vegas
transmissions. TCP Vegas achieves 37 to 71 connection to be able to have an accurate
percent higher throughput than TCP Reno. TCP estimation. Another important issue is the stability
Vegas adopts a more sophisticated bandwidth of TCP Vegas. Since each TCP Vegas connection
estimation scheme. It uses the difference between attempts to keep a few packets in the network,
expected and actual flows rates to estimate the when their estimation of the propagation delay is
available bandwidth in the network. The idea is off, this could lead the connections to
inadvertently keep many more packets in the the queuing packets in the network, the variation
network, causing a persistent congestion of the congestion level in network.
The expected rate and the actual rate, as well as
the minimum rate are estimated as follows:
Expected= cwnd/RTT(min)
Actual= cwnd/RTT
Small= cwnd/RTT(max)
The cwnd is the current TCP congestion window
size, RTT(min) is the minimize round-trip time
RTT(max) is the largest round-trip time RTT(max)
Fig: Network Topology. is not more than the value of time-out timer RTT is
Figure shows the topology of the network that the current round-trip time.
was simulated to demonstrate the fairness of TCP Number of queuing packets N
Vegas. In the figure, the circles denote finite buffer N= (Expected -Actual)*RTT(min)
switches and the squares denote the end hosts. Buffer size B
Connection 1 transmits packets from S1 to S3, and B = (Expected - Small)*RTT
connection 2 from S2 to S4. F is the ratio of the number of queuing packets and
the buffer size in bottleneck link.
6) TCP RQB :
F=N/B=Expected-Actual/Expected-Small ={[RTT-
In TCP-RQB the ratio of the number of RTT(min)]/[RTT(max)-RTT(min)]}*[RTT(max)/
the queuing packets to the buffer size in bottleneck RTT]
link is estimated. It uses this ratio parameter to We can determine congestion level according to F.
determine the congestion level. It uses four sub-
phases to improve TCP-Reno congestion SIMULATION:-
avoidance phase according to congestion level, so There are basically four sub-phases in
the transmission can be more long term stability at TCP-RQB Algorithm.
high speed status. TCP-RQB algorithm 1) Slow start phase
distinguishes congestion loss from wireless loss 2) Congestion avoidance phase
according to congestion level, then adjusts the 3) Fast retransmission
congestion window and slow start threshold. 4) Fast recovery

In TCP protocol, RTT (round-trip time) Slow start phase


reflects the variation of the overall state of the When setting up a TCP connection, it is necessary
network. It contains three parts: to detect the network bandwidth in order to
determine the maximum capacity of the network.
1) The transmission time of data
The slow start phase of TCP RQB is the same as
2) The processing time at the receiver TCP Reno .Congestion window is initialized to
one segment.TCP RQB increases its window size
3) The queuing and processing time at the router. by one during each round trip time.
The first one which affected by the wireless link
would fluctuate randomly, the second one is
relatively fixed in a same TCP connection, and the Congestion avoidance phase:
third one changes with the congestion level of the
network.RTT effectively reflects the variation of
TCP-RQB congestion avoidance phase is that packet loss due to wireless loss, not changes
to use a faster rate to achieve maximum capacity the cwnd and ssthresh.
of the network, and then slow down the sending Note that timeout means the situation of the timer
rate, making the process of sending stability at a time-out. If congestion level is greater than or
higher rate. Use the ratio of the number of queuing equal to 3, it indicates that the degree of
packets to the buffer size in bottleneck link as a congestion is more serious, TCP-RQB will reduce
parameter ,and use four sub-phases to change the ssthresh to half of the current cwnd and reduces
congestion window. The increment=1/cwnd, and cwnd to one. If the congestion level is smaller or
the adjustment factors considered if the adjustment equal to 2, it indicates a lesser degree of
factor is not appropriate, it is easy to cause packet congestion, TCP-RQB reduces the ssthresh and
loss or the waste of bandwidth. cwnd appropriately.
When a new ACK is received if
congestion level is 1,it means that the network
condition is good, TCP-RQB increases the
congestion window more rapidly than Reno, cwnd
+ = 2 * increment; if congestion level is 2,
congestion level increased ,TCP-RQB slows down
the speed of window growth, cwnd + = increment;
if the value of congestion level is 3, the network
condition is down, TCP-RQB further reduces the
speed of window growth, cwnd +=0.3* increment;
if the value of level is 4, it indicates that the
network tends to congestion, TCP sender will Variation of Throughput with varying Bit error rate
reduces the congestion window appropriately in
order to avoid congestion, cwnd = cwnd + (-0.6) *
Increment.

Fast Retransmission and Fast Recovery

The performance of the widely used TCP


protocol is lower in mixed wired/wireless
networks. Because it could not distinguish
congestion loss from wireless loss, any of the Variation of packet loss with varying bit error rate
packet loss is attributed to congestion and TCP
would reduce the congestion window. TCP-RQB
algorithm uses congestion level to distinguish
congestion loss from wireless loss, then adjusts the
7) CONCLUSION:
congestion window and slow start threshold.
If the congestion level is greater than or TCP RENO protocol can be good for
equal to 3, it means that the degree of congestion mixed wired/wireless networks .An advance
scheme named TCP-RQB is proposed in this ,ratio
is more serious and TCP-RQB regards that packet
of number queuing packets to buffer size in
loss due to network congestion, it reduces cwnd bottleneck link is estimated .TCP-RQB uses the
and ssthresh in accordance with Reno. If the ratio as a parameter to determine the congestion
congestion level is less than or equal to 2, it level , uses four sub-phases to improve TCP
indicates less congestion, so TCP-RQB regards RENO congestion avoidance phase according to
congestion level , so that that transmission can be
more long term stability at high speed status.
Rerouting and persistent congestion is also
possible by TCB-RQB.
A new scheme stpd is proposed .This scheme
enhances TCP performance by keeping the
controller, changes in congestion window size are
proportional to control error. Furthermore, the
derivative part of the PD controller, which is
sensitive to error change rate, helps to suppress
control loop latency induced overshoots.
Compared with current TCP implementations, ST-
PD TCP can respond to
available bandwidth variations more swiftly and
accurately The ST-PD TCP scheme probes the
available bandwidth without causing buffer
overflows This makes the new scheme capable of
providing effective TCP congestion control over
error-prone wireless links where conventional TCP
congestion control schemes are known to perform
poorly. TCP Vegas adopts a more sophisticated
bandwidth estimation scheme.

8) References:-
1. Li Yun, Zhang Rui, Liu Zhanjun, Liu
Qilie, Chongqing University of Posts and
Telecommunications,Chongqing 400065,
China.

2. Jeonghoon Mo, Richard J. La_, Venkat


Anantharam, and Jean Walrand,
Department of Electrical Engineering and
Computer Sciences, University of
California at Berkeley, July 13, 1998.

3. W. Xu, A.G. Qureshi and K.W. Sarkies,


IEE Proceeding online no. 20020508

You might also like