Professional Documents
Culture Documents
An Improvement On TCP Congestion Control Protocol
An Improvement On TCP Congestion Control Protocol
net/publication/271299083
CITATIONS READS
0 5
1 author:
Nazbanoo Farzaneh
International University of Imam Reza
18 PUBLICATIONS 80 CITATIONS
SEE PROFILE
Some of the authors of this publication are also working on these related projects:
All content following this page was uploaded by Nazbanoo Farzaneh on 02 January 2021.
130
International Journal of Information and Electronics Engineering, Vol. 2, No. 2, March 2012
without waiting for retransmission timeout. Upon receiving proposed congestion control protocol consists of various
three duplicate acknowledgements, Tahoe immediately units. Fig. 1 illustrates the operation model of congestion
retransmits the unacknowledged segment. control protocol.
TCP Reno [9] evolves from Tahoe and includes the
additional algorithm, fast recovery, to reach the available
bandwidth more quickly than Tahoe after recovering packet
losses by fast retransmit. TCP Reno implements the TCP’s
AIMD mechanism of increasing the congestion window W
by one segment per round-trip time for each received ACK
and halving the congestion window for each loss event per
round-trip time. When the link bandwidth does not change,
TCP Reno periodically repeats the window increase and
decreases TCP Reno’s congestion window in terms of packet
loss. TCP NewReno[10] is a modification of TCP Reno. TCP Fig. 1. The Operation model of congestion control protocol.
NewReno adds the bandwidth-delay product estimation
algorithm to Reno to avoid packet losses during the slow-start In ITCP, source uses loss probability values to determine
phase. TCP NewReno can detect multiple packet losses. the congestion rate. As soon as a packet enters a node, loss
NewReno changes the fast recovery algorithm in Reno. It probability is calculated, depending on packet type (class, EF
does not exit the fast recovery phase until all the or AF or BE). As mentioned before since loss probability
unacknowledged segments at the time of fast recovery are values are calculated using packet type, it can be a good
acknowledged. The remaining three phases (slow start, representative to show network congestion. Higher packet
congestion avoidance, and fast retransmit) are similar to TCP loss probability shows higher network congestion level.
Reno. Vegas [11] TCP was the first attempt to depart from Each node puts three values in the returned ACK packets
the loss-driven paradigm of the TCP by introducing a from destination to the source. These three values are related
mechanism of congestion detection before packet losses. In to loss probability for three classes (EF, AF and BE classes).
particular, Vegas TCP computes the difference between the To prevent ACK packets enlargement, only maximum loss
actual input rate (cwnd/RTT) and the expected rate values among nodes are placed in ACK packet. Each node
(cwnd/RTTmin), where RTT is the Round Trip Time and puts its calculated loss probability when it is larger than
RTTmin is the minimum measured round trip time, to infer current value in ACK packet. Thus by receiving each ACK
the network congestion. In particular, if the difference is packet, the source node can be informed of the maximum
smaller than a threshold α then the cwnd is additively amount of loss packet during path. ΔPEF d d
, ΔPAF d
, ΔPBE are
increased, whereas if the difference is greater than another
maximum loss probability of EF, AF and BE class
threshold β then the cwnd is Additively Decreased; finally, if
respectively. By receiving each ACK packet, source
the difference is smaller than β and greater than α, then the
calculates amount of changes on loss packet based on the
cwnd is kept constant.
difference function as shown in equation (1).
ΔP d = Cur (P d ) − Old (P d ) (1)
i i i
III. PROPOSED PROTOCOL Old (Pid ) is the maximum loss probability in the previous
In this paper, a method for congestion control is presented. ACK packet and Cur (Pid ) is the maximum loss probability in
Next generation networks, encounter with different types of
traffic flows with different QoS requirements. As a result, the the current ACK packet. Based on ΔPid values, network
network behavior should be different for each class of traffic congestion level can be found. Table I describes the meaning
flow. In this paper, three types of traffic classes are of various ΔPid values.
considered, 1) Assured Forwarding (AF) class is related to
delay and loss intolerant traffic, 2) Expedited Forwarding (EF)
ΔPid
class is loss intolerant data traffic and 3) the Best Effort (BE) TABLE I: DESCRIBE OF DIFFERENT VALUE OF
class is belonging to loss and delay tolerant traffic. ΔPid = 0 Loss rate for packet type i has not been changed.
In WRED, loss rate in each group varies with other groups. Loss rate for packet type i has been decreased in
EF traffic class is delay and loss intolerant; therefore it must ΔPid < 0 ΔP d
experience less packet loss than other traffic classes. AF class network. i values, shows the decrement rate.
packets have the middle priority. This packet group is loss Loss rate for packet type i has been increased in
ΔPid > 0 ΔPid
intolerant so it experiences a little loss. AF class packets are network. values, shows the incremented rate
not delay intolerant, hence in case of loss, the retransmission
mechanism is used to send lost packets by the source again. Based on changes that emerged in ΔPid values, the
BE class has low priority, so in congestion condition it is
more prone of being dropped. Higher level of congestion following modes –which are shown in table II- can be defined.
caused other kinds of traffic to gradually be dropped. In sever These modes help to identify the network current level of
congestion AF class traffic packets are also dropped. Finally, congestion.
in conditions of intense congestion, loss includes EF class In mode I, packet loss rate is unchanged or reduced in all
packet as well. It is obvious that the percentage of packet loss types of traffic. Mode II shows increased packet loss in one
is different for each class for various congestion levels. The class. In mode III, loss is constant or it is low in one class and
131
International Journal of Information and Electronics Engineering, Vol. 2, No. 2, March 2012
Based on three defined statuses in table III and discussed Algorithm : cwnd update Function
modes in table II, a Graph (D), which is shown in fig. 2, can // snd_mss = Maximum Segment Size for outgoing segments
be drawn. // a = -1 ; lower bound of G
// b = 1 ; upper bound of G
I: // c = 1 ;
IV: G<f1 if (tcp_flavor == TcpC_Flavor_Multi_ClassTCP) )
{
if (Current_state == 'Normal')
{
Start point
Normal newG = ((-G)-((a+b)/2))*((alpha - c) / (b-a))+ ((c+alpha)/2);
IV:G>f2 cwnd = cwnd + (newG * snd_mss);
}
else if (Current_state == 'Low Congestion')
I: (G<b1) {
II: if (mode == I || mode == II)
III: {
IV:(G>f1),(G<f2) I : (G > a) High I:(G>b2)
II:(G>d)
cwnd = cwnd + (1 * snd_mss);
Congestion }
III : G > c III:
IV>e IV: else if (mode == III || mode == IV)
{
I : (G < a) newG = (G-((a+b)/2))*((beta-c) / (b-a))+ ((c+beta)/2);
II: Low temp = cwnd - (newG * snd_mss);
III : G > c
III: G < c Congestion IV>e if (temp < snd_mss)
IV:(G<e)
cwnd=snd_mss ;
else
Fig 2. Network status graph. cwnd = cwnd - (newG * snd_mss);
}
The State diagram is used to give an abstract description of }
the behavior of a system. In graph D, nodes represent status else if (Current_state == 'High Congestion')
{
and directed edges represent transitions. “Normal status” if (mode == III)
being the start status. G is a convex combination of ΔPid as {
newG = (G-((a+b)/2))*((gama-c) / (b-a))+
follows:- ((c+gama)/2);
132
International Journal of Information and Electronics Engineering, Vol. 2, No. 2, March 2012
0.6
IV. SIMULATION RESULTS
0.6
Fig. 4 shows the topology that was used in our simulation
Average Packet Loss
0.5
and the simulation parameters values were given in table IV.
0.4
0.3
0.2
0.1
0
10 11 12 13 14 15 16
Time
Fig 4. The topology that is used in simulation
(c)
Fig. 5. Loss percentage average in routers of the proposed protocol versus a)
TABLE IV: SIMULATION PARAMETERS VALUES
NewReno with WRED b) NewReno with RED c) NewReno with FIFO
Parameter Value Parameter Value
a -0.6 c 0.2 Fig. 6.a, fig. 6.b and fig. 6.c, present the end-to-end delay
b1 -0.8 b2 -0.2 average versus time against different AQM algorithm which
d 0 e 0.3 are used for NewReno. Using effective AQM mechanism
f1 0.2 f2 0.4 which calculates the loss probability based on packet priority
alpha 3 betha 5 besides on AQM-based congestion control protocol that is
gama 1.5 responsible to determine the source rate, leads to stable queue
length not to add suddenly and queue length always sit in
In many scenarios in order to compare transport section of appropriate range. So average delay decreases after a while
ITCP and NewReno we have used WRED as AQM because the more queue length is, the more delay in packets
mechanism for both of them. But in other scenarios we use service and end-to-end delay.
RED and FIFO as AQM besides NewReno.
In fig. 5.a, fig. 5.,b and fig. 5.c shows the number of the
0.025
lost packets versus time against different AQM algorithm
used for NewReno. In comparison packet loss rate in all three 0.02 NewReno(WRED)
figures 5.a, 5.b and 5.c it's seen that the amount of packet loss ITCP
133
International Journal of Information and Electronics Engineering, Vol. 2, No. 2, March 2012
0.01 ACKNOWLEEDGMENT
0.005
he research teeam whishes to express th
Th heir gratitude to
Iran Telecom Reseearch Center ((ITRC) for theeir valuable heelp
0 suppport.
10 11 12 13 14 15 16
9
(b)
REFEREENCES
0.025 [1] Y. ITU-T Recommendation 20111, “General priinciple and geneeral
NewReno(FIFO)
N reference model for Next Generattion Networks,” 2004.
2
0.02
I
ITCP [2] W. Wang, M. Palaniswami,
P andd S. H. Low, “A Application-Oriennted
Flow Control: Fundamentals,
F Allgorithms and Fairnes,” IEEE/AC CM
Ransactions on Networking,
N vol. 14, no. 6, 2006.
0.015
[3] D. X. Wei, C. Jinn, S. H. Low, annd S. Hegde, “Fasst TCP,” IEEE/AC CM
Delay
134
International Journal of Information and Electronics Engineering, Vol. 2, No. 2, March 2012
(NTG), C&C Media research labs., NEC corporation, Tokyo, Japan, as Amir Hossein Mohajerzadeh received the BS and
visiting research scholar. September 2007 to August 2008, he was with the MS degree in computer engineering from the computer
Lane Department of Computer Science and Electrical Engineering, West department, Ferdowsi University of Mashhad,
Virginia University, Morgantown, USA as the visiting associate professor. Mashhad, Iran, in 2006 and 2008, respectively. He is a
He is author of 3 books all in Farsi language. He has published more than 60 PhD candidate in computer engineering at computer
international conference and journal papers. His research interests are in department, Ferdowsi University of Mashhad. His
Wireless Sensor Networks (WSNs), traffic and congestion control, high research interests focus on QoS in networks, Wireless
speed networks including ATM and MPLS, Quality of Services (QoS) and Sensor Networks and Next Generation Networks
fuzzy logic control.
135