TCP Variants and Network Parameters A Co
TCP Variants and Network Parameters A Co
Abstract— Transmission Control Protocol (TCP) includes II. PERFORMANCE EVALUATION
eleven variants-Tahoe, FullTcp, TCP/Asym, Reno, Reno/Asym,
A. Packet Vs Bandwidth
Newreno, Newreno/Asym, Sack1, Fack, Vegas and VegasRBP
Channel bandwidth has been varied each time and the
as source and five-TCPSink, TCPSink/Asym, Sack1, DelAck number of packets was counted at destination during entire
and Sack1/DelAck as destination, implemented in Network simulation period which forms fig 1.
Simulator (NS-2). Performance of TCP versions indicates how
Table 1. Packet received by TCPs for various bandwidth
they respond to various network parameters-propagation
delay, bandwidth, TTL (time to live), RTT (round trip time), TCP variants Packets at Bandwidth
rate of packet sending and so on. Such analysis is immensely in 2 Mb 8 Mb 16 Mb 32 Mb
Tahoe 3214 3270 3280 3310
need to be aware of which TCP is better for a specific criterion,
Reno 3214 3270 3280 3310
wherefrom an appropriate one will be selected in respective NewReno 3214 3270 3280 3310
network to optimize traffic goal. But yet no complete summary NewrenoASYM 3247 3305 3317 3347
is available as we’ve investigated hereby thoroughly. Recently sack1 3214 3270 3280 3310
Vegas 3214 3270 3280 3310
published researches considered Congestion Window,
Fack 3127 3191 3203 3233
Throughput, and Delay for five variants only. This paper
covers all the supported variants to observe their nature
regarding to five new perspectives in details.
As bandwidth of channel increases, number of packet
received also increases by different magnitude for different
Index Terms— TCP, BSS, RTT, TTL NS-2. variants. Highest number of packet is obtained for
NewrenoASYM (Newreno in the asymmetry channel)
because of its ‘Fast Recovery’ and ‘Open Loop’ congestion
I. INTRODUCTION
control mechanism. But TCP Tahoe, Reno, NewReno, sack1
The reason behind the variations of TCP is that each type and Vegas behaves identically with bandwidth variation
possesses some special criteria. Such as the base TCP has which generate a common curve.
become known as TCP Tahoe. TCP Reno adds one new
mechanism called Fast Recovery to TCP Tahoe [2]. TCP 3400
Newreno uses the newest retransmission mechanism of TCP
3350
Reno [8]. The use of Sacks permits the receiver to specify
several additional data packets that have been received 3300
out-of-order within one dupack, instead of only the last in
Packet Received
3250
order packet received [7]. TCP Vegas proposes its own
unique retransmission and congestion control strategies. 3200
TCP Fack is Reno TCP with forward acknowledgment [5].
3150 Tahoe
Reno
Manuscript received on October 30, 2008. This work was supported in part 3100 New Reno
by the IAENG Hong Kong and Department of Computer Science & New RenoASYM
Engineering, Dhaka University of Engineering & Technology, Gazipur-1700, Sack1
3050 Vegas
Bangladesh. Fack
M. Shohidul Islam, M.A. Kashem and M.N Islam are with the Department 3000
of Computer Science & Engineering DUET, Gazipur-1700, Bangladesh.
(e-mail: [email protected], [email protected], 2 8 16 32
[email protected]). W.H Sadid is with the Concordia University, Bandw idth (Mb)
Canada. (email:[email protected]). M. A Rahman is with Curtin University
of Technology, Australia. (email: [email protected]). S. Anam is
B.Sc Engr. in CSE. (email: [email protected]). Fig. 1 Packet vs Bandwidth.
Packet Received
25000
Reno
Table 2. Packet received by TCPs over propagation delays 20000 New Reno
15000 New RenoASYM
TCP variants Packets at Delay
10 ms 20 ms 30 ms 40 ms 50 ms Sack1
10000
Tahoe 6869 6479 6215 5973 5673 Vegas
5000
Reno 6869 6479 6215 5973 5673 Fack
NewReno 6869 6479 6215 5973 5673 0
NewrenoASYM 6869 6479 6215 5973 5673 5 10 15 20
sack1 6869 6479 6215 5973 5673 Packet Sending Rate (Mbps)
Vegas 7200 6812 6400 6091 5934
Fack 6869 6479 6215 5973 5673 Fig. 3 Graph of packet vs rate
In Vegas, ‘acknowledgment’ is merged with ‘data packet’ In this case, Newreno, NewrenoASYM, Sack1 and Fack
(which is called piggybacking) instead of separate show the best performance as they increase congestion
transmission .It saves fifty percent (50%) time than normal window size exponentially with rate provided that no
TCP implementation since ‘acknowledgement’ passing does congestion occurred in the channel.
not take extra time for it. That is why it can transmit more
data. Table 3. Packet received by TCPs due to various transmission
rates
8000
TCP variants Packets at Rate
7000 5 Mbps 10 Mbps 15 Mbps 20 Mbps
Tahoe 16110 33388 33625 33507
6000
Reno 16110 33388 33625 33507
Packet Received
1000 Vegas
Fack D. Buffer Volume Vs Time
0
10 20 30 40 50
Buffer volume posses a close connection with ‘bandwidth
Propagation Delay (m s)
delay product’ which is defined by-
Fig. 2 Packet vs propagation delay. bw ( bits / sec) * RTT (sec) . TCP can
bw _ del _ prod ( packets )
8 * MSS ( bytes )
only achieve its optimal throughput if the minimal buffer size
C. Packet Vs Rate on the path is equal to the bandwidth delay product. If the
The nature of TCPs to packet sending rate consists of minimal buffer size is larger, a constant backlog of packets
basically two phases (fig. 3). builds up in the buffer wasting network resources and
Linearly Increasing Phase: TCP agent increases the introducing latency. If it is smaller, the congestion window
packet estimation to be sent after getting the will never be able to reach the necessary size to utilize the
acknowledgement of previously sent packets. The slope of available bandwidth. If the buffer size is larger than the
curve at any point within this region is bounded by the range bandwidth during Slow Start, the congestion window needs
(0, 1]. to be able to reach 2 * (bw _ del _ prod buffer _ size) to achieve
Saturation Phase: TCP reaches in this phase when each optimal throughput. The receiver’s advertised window,
agent consume their maximum allowable channel proportion which is always an upper bound to the congestion window,
which is also called DC state having constant slope has to be set to a large enough value for this growth. Window
equivalent to zero. scaling might be necessary to achieve this.
REFERENCES