You are on page 1of 8

JOURNAL OF TELECOMMUNICATIONS, VOLUME 25, ISSUE 1, MAY 2014

12

DiffStart: An Algorithm to Improve the Start-up
Behaviour of TCP for High Bandwidth-delay
Networks
Aniruddha A. Agharkar, Gregory MacDonald, and Pramode K. Verma
AbstractIn this paper, we propose a novel algorithm DiffStart to improve the start-up behaviour of TCP for high bandwidth-
delay networks. The standard slow start algorithm is not suitable to operate over high bandwidth-delay networks because of the
aggressive doubling of the congestion window without an efficient congestion detection mechanism. Consequently, the
connection undergoes a timeout that leads to a slow ramping-up to full network capacity, which adversely affects the overall
performance of TCP. The proposed DiffStart algorithm anticipates the onset of congestion in the network and proactively
transitions the growth rate of the congestion window from exponential to linear. Based on the simulation results, we show that
DiffStart in conjunction with TCP Reno overcomes the limitations of the standard slow start algorithm, and provides an
improvement over other TCP protocols namely, TCP Compound, and TCP CUBIC in the case of high bandwidth-delay
networks.
Index Terms bandwidth-delay networks, congestion control, slow start, TCP.

!

1 INTRODUCTION
ECENT advances in the Internet have led to the de-
velopment of new applications and technologies.
However, the de facto standard for all reliable con-
nection-oriented communication continues to be Trans-
mission Control Protocol (TCP). Unlike the Internet Pro-
tocol (IP) [1], which is a best effort service and operates on
a hop-by-hop basis, TCP offers a reliable and end-to-end
delivery of data between the communicating nodes. The
other important aspect of TCP is to regulate the flow of
packets into the network by enforcing congestion control
and flow control schemes. TCP/IP together carries the
bulk of all Internet traffic.
The Internet penetration has been increasing globally
[2], [3]. Additionally, companies such as Google, Amazon,
Microsoft etc. offer cloud based services that have man-
dated an overhaul in the underlying network [4]. It is not
uncommon to find networks which have bandwidth in
the order of Gigabits per second [5]. The network speed
continues to increase over the years and some of the cur-
rent deployments require speeds of 100 Gbps [6].

Although high capacity network pipes help accommo-
date the increase in traffic, this does not, necessarily, im-
prove performance. In addition to bandwidth, delay is a
key factor in determining the performance of high-speed
links [7]. Delay can have a significant financial impact for
content providers and Internet Service Providers alike.
For example, Amazon reported a 1% decrease in its sales
because of an additional delay of 100ms [8].
Delay in networks can be broadly categorized as pro-
cessing delay, transmission delay, queuing delay, and
propagation delay [9]. With the advent of faster proces-
sors and memories, processing and transmission delays
have consistently declined. The queuing delay is largely
associated with the packet arrival rate, nature of traffic
(periodic or burst), etc. Therefore, queuing delay is gener-
ally characterized using statistical measures.
The propagation delay, on the other hand, is governed
by the physical distance between the two communicating
nodes and the transmission medium. With an increase in
the physical distance and the speed of communication,
propagation delays become increasingly relevant in con-
trolling throughput
The standard slow start algorithm is not suitable for
operating over high bandwidth-delay networks that are
characterized by their large bandwidth delay product.
This is a well-established limitation and an area of active
research [10], [11], [12], [13], [14], [15]. Several slow start
algorithms have been proposed over the years to over-
come this limitation. We discuss some these slow start
algorithms in Section 3 of this paper.
During the start-up phase, TCP doubles its congestion
window (cwnd) every Round Trip Time (RTT) to deter-
mine the maximum sustainable window size and the slow
start threshold (ssthresh) for the given network. Initially,
the value of the ssthresh is arbitrarily assigned from 4K to
64K bytes depending on the type of implementation [16].
If the value of ssthresh is set lower than the capacity of
the link, it causes a premature transition from the slow

A.A.Agharkar was with the Telecommunications Engineering Program,
School of Electrical and Computer Engineering, The University of Oklaho-
ma, Tulsa OK 74135 (USA).
G. MacDonald is a member of the faculty at the Telecommunications Engi-
neering Program, School of Electrical and Computer Engineering, The
University of Oklahoma, Tulsa OK 74135 (USA).
P.K.Verma is Director of the Telecommunications Engineering Program,
School of Electrical and Computer Engineering, The University of Oklaho-
ma, Tulsa OK 74135(USA).


R
13

start phase to the congestion avoidance phase. This can
underutilize the capacity of the link. If the value of the
ssthresh is set higher than the capacity of the link without
an efficient congestion detection mechanism, the aggres-
sive doubling of the cwnd can overshoot the actual sus-
tainable window size of the link. The excess packets are
dropped by the receiver bcause the connection can no
longer sustain the growth of the cwnd. Consequently, the
connection undergoes a timeout event. The timeout al-
lows the connection to determine its ssthresh and restart
incrementing its cwnd. After the timeout event, the cwnd
grows exponentially until it reaches the ssthresh and tran-
sitions to a linear growth rate thereafter.
In the case of high bandwidth-delay networks, the lin-
ear increase of the cwnd consumes several Round Trip
Time cycles multiplied by the large delay associated with
the link, for the connection to reach full network capacity.
The slow ramping-up to full network capacity adversely
affects the overall performance of TCP over high band-
width-delay networks.
We propose DiffStart, which is a sender side addi-
tion to the standard slow start algorithm. DiffStart antici-
pates the onset of congestion in the network by tracking the
deviation in the growth rate of the acknowledgements (ACK)
received to, the expected exponential rate of ACKs. After de-
tecting congestion in the network, DiffStart proactively
transitions the growth rate of the cwnd from exponential
to linear, without undergoing a timeout event. By proac-
tively transitioning the growth rate of the cwnd, DiffStart
not only prevents the TCP sender from overshooting the
ssthresh but also assists in quickly ramping-up to full net-
work capacity.
The remainder of this paper is organized as follows. In
Section 2, we provide a description of the problems asso-
ciated with the start-up behavior of TCP for high band-
width-delay networks. In Section 3, we briefly explain
some of the slow start algorithms. We discuss the pro-
posed algorithm DiffStart in Section 4. In Section 5, we
compare the simulation results of DiffStart with the exist-
ing slow start algorithms and provide conclusions in Sec-
tion 6.
2 MOTIVATION
In this section, we describe the problems associated with
the start-up behavior of TCP in the case of high band-
width-delay networks. We use the TCP Reno protocol
[17], [18] which uses the standard slow start algorithm, to
explain the start-up behavior of TCP, followed by an
analysis to substantiate the problem.

2.1 Slow start behavior of TCP
TCP Reno incorporates the modifications of fast recovery
and fast retransmit in addition to the Additive Increase
and Multiplicative Decrease (AIMD) algorithm from its
predecessor TCP Tahoe as proposed by Van Jacobson in
1988 [19]. The algorithm for TCP Reno is described as
follows:

1. For every non-duplicate ACK
if cwnd < ssthresh; (slow start phase)
cwnd = cwnd + 1
else (congestion avoidance phase)
cwnd = cwnd + 1/cwnd
2. For duplicate ACK (fast recovery and retransmit)
ssthresh = cwnd / 2
cwnd = ssthresh
cwnd = cwnd + 1/cwnd
3. For Timeout
ssthresh = cwnd / 2
cwnd = 1

TCP is a reliable and end-to-end transport layer proto-
col. Hence, we simulate a typical TCP connection between
2 end nodes connected using a full duplex link with a
round trip delay of 150ms, and a bandwidth of 1Gbps as
shown in Fig. 1.
We plot the graph of the growth of the cwnd, the ratio
of the number of packets dropped to the number of pack-
ets arrived, and the overall throughput of the connection
over a period of one minute. The simulator used is Net-
work Simulator-2 (NS2) [20].
We plot the growth of the cwnd in Fig. 2. At the start of
the connection, we observe that TCP doubles it cwnd eve-
ry RTT, following an exponential growth rate. This con-
tinues until the connection reaches its maximum cwnd at
about 5.8 seconds.
This also marks an increase in the number of packets
dropped as seen from Fig. 3. In order to sustain the con-
nection, TCP initiates fast recovery and fast retransmit
algorithms. Consequently, the cwnd is reduced to half its
current value and is linearly incremented every RTT
thereafter.
We can observe from Fig. 3 that the connection even-
tually undergoes a timeout due to the large number of
packets dropped. This can be attributed to the increase in
the congestion in the network as seen from Fig. 4.
The ssthresh is re-calculated based on the last value of
the cwnd before undergoing a timeout. The TCP sender
resumes probing the network by doubling its cwnd before
reaching the revised ssthresh, thereafter initiating the con-
gestion avoidance phase or, transitioning to a linear
growth rate of the cwnd.





Fig. 1. Two node network topology to simulate performance char-
acteristics of high bandwidth-delay networks.
14




We can observe from Fig. 4 that the connection does
not reach its full capacity at the end of the simulation and
the maximum throughput achieved is about 780Mbps.
We believe that the poor start-up behavior of TCP ad-
versely affects the overall performance of the connection.
Based on the simulation results, we can derive two
conclusions for the poor start-up behavior of the standard
TCP in the case of high bandwidth-delay networks. First-
ly, the aggressive doubling of the cwnd without an effi-
cient congestion detection mechanism overshoots the
ssthresh resulting into a heavy packet loss followed by a
timeout event. Secondly, the linear growth rate of the
cwnd after the timeout event takes several RTT cycles
times the delay of the link to reach full network capacity.
This leads to an overall poor performance of the TCP
connection.

2.2 Mathematical Analysis
In order to support the argument made in Section 2.1, let
us consider the same link parameters and deduce the time
required to reach full network capacity.
The goal of the TCP sender is to ensure that there is a
steady stream of data flowing into the network. Theoreti-
cally, the maximum sustainable window size (W
max
) [21] is
given by (1):

(1)

where C! is the bandwidth-delay product of the link (C is
the bandwidth and ! is the RTT) and B is the buffer size.
In our case the bandwidth delay product of the link is
18.75MB and the size of the buffer is assumed to be equal
to the bandwidth delay product of the link. Hence, W
max
is
equal to 37.5MB. With a packet size equal to 1000 bytes,
the window size required to attain the required band-
width-delay product is equal to 37,500 packets.
Let us assume that the sender receives three duplicate
ACK as soon as the cwnd reaches a value equal to W
max
.
This indicates congestion in the network and thus the
sender initiates the fast recovery and the fast retransmit
mechanism. The TCP sender assigns ssthresh to half the
last value of the cwnd, which is 18,750 packets and starts
the congestion avoidance phase by increasing the cwnd
linearly. From this point onwards, the cwnd grows linear-
ly from 18,750 to 37,500 packets that take approximately
18,750 RTT cycles. Thus, the total time for the connection
to reach its full network capacity that is given by the
product of the number of RTT cycles and the delay of the
link, is approximately equal to 46 minutes.
Additionally, calculating the end-to-end dropping
probability (P
r
) [22] given by (2), implies that a maximum
of one packet can be dropped for 1.07 x 10
9
packets which
is unrealistic.


(2)

We can infer from the simulation results and the math-
ematical analysis that the poor performance of the stand-
ard TCP in the case of high bandwidth-delay networks is
due to: 1) the doubling of the cwnd every RTT cycle that

Fig. 2. Growth of the cwnd during the TCP simulation.

Fig. 3. Ratio of the number of packets dropped to the number of pack-
ets arrived during the TCP simulation

Fig. 4. Throughput achieved during the TCP simulation.
C ! + B
2
3
8
cwnd
P
r
!
=
15

overshoots the ssthresh; 2) the lack of an efficient mecha-
nism to anticipate congestion in the network and, 3) the
lack of a proactive transition from the slow start phase to
the congestion avoidance phase without undergoing a
timeout event.
3 RELATED WORK
Several modifications have been proposed to the standard
slow start algorithm to improve the performance of TCP
over high bandwidth-delay links. Quick Start [23], eXplic-
it Control Protocol (XCP) [11], and Rate Control Protocol
[24] rely on explicit congestion notification or the ECN
field in the IP header to determine congestion in the net-
work. Fast Start [25] on the other hand uses cached in-
formation from previous connections to preset the values
of critical parameters such cwnd, ssthresh etc. There have
also been recommendations to modify the initial window
size, to improve the start-up behavior of the standard
TCP. RFC 3390 [26] proposes to increase the initial win-
dow from between 2 to 4 segments. A recent RFC 6928
[27], released in April 2013, proposes to increase the ini-
tial window to 10 segments. It can be argued that these
algorithms either use explicit feedback mechanisms or
preset values to modify the slow start behavior of TCP.
Since our proposed algorithm DiffStart does not use ei-
ther a router assisted mechanism or pre-cached infor-
mation, these algorithms have not been considered for
further analysis. Accordingly, we do not consider these
algorithms for comparing with our proposed alternative.

3.1 Packet Pair Technique
Janey C. Hoe proposed to improve the start-up behavior
of TCP by incorporating the Packet Pair technique [28].
The packet-pair technique determines the ssthresh for a
connection by calculating the bandwidth-delay product of
the link, using closely spaced probe packets. The sender
measures the inter ACK spacing of the probe packets to
calculate the bandwidth of the link. This value is then
used to correspondingly assign the ssthresh so that the
connection can smoothly transition the growth of the
cwnd from exponential to linear. TCP NewReno [29] and
TCP Hybla [30] have incorporated this technique.

3.2 Expected Rate Estimate Technique
The expected rate estimate technique [31] is used to com-
pute and compare the expected throughput to the actual
throughput. If the value of difference is positive, i.e. the
actual throughput is less than the expected throughput,
the TCP sender switches the growth function from expo-
nential to linear, or else the TCP sender continues to grow
the cwnd exponentially. The value of the cwnd is incre-
mented every alternate RTT cycle. TCP Vegas [31] has
incorporated this technique.

3.3 Limited Slow-Start
The Limited Slow-Start [32] is an optional modification to
the standard TCP slow start algorithm. It introduces a
new variable, max_ssthresh into the standard slow start
algorithm. The max_ssthresh assigns an upper limit on the
cwnd to grow exponentially. Limited Slow-Start algorithm
proposes to modify the growth of the cwnd by a factor
that depends on current value of the cwnd and the
max_ssthresh after crossing over the max_ssthresh value.
This technique is incorporated into HighSpeed TCP [33].

3.4 Hybrid Start
HyStart [34] is a recently proposed slow start algorithm
which has been incorporated in the TCP CUBIC protocol
[35]. HyStart uses the summation of the inter-arrival
times "(N), of ACKs on the return path and compares it
with the one way forward path delay D
min
to find a safe
exit point to transition from the slow start phase to the
congestion avoidance phase. The forward path delay is
calculated by dividing the minimum measured RTT by
two.

3.5 TCP Compound
Although Compound TCP (CTCP) [36] does not modify
the slow start behavior of the standard TCP however, it is
essential to include it in this discussion because it is de-
ployed in the Microsoft Windows Operating systems
since Windows Vista and Windows Server 2008 [37].
CTCP uses the best of both, delay-based and loss-based
congestion avoidance mechanism to optimize the efficien-
cy and TCP friendliness requirements.
4. PROPOSED ALGORITHM DIFFSTART
In this section, we describe our proposed algorithm
DiffStart. We describe our philosophy to improve the per-
formance of TCP over high bandwidth-delay networks,
the working of DiffStart followed by its corresponding
algorithm.

4.1 Philosophy
We believe that the key to improve the performance of
TCP during the start-up phase lies in detecting congestion
in the network and proactively transitioning the growth
rate of the cwnd from exponential to linear.
Using the tracefile extracted from the simulation con-
ducted in Section 2, we plotted the flow of the TCP pack-
ets sent and their corresponding ACKs received, and
compared it with the expected exponential behavior of
ACKs, as shown in Fig. 5.















16

1
2
0
2
! "
#
$
%
&
'
(
!
=
SRTT
T T
e
c
ACK

After closely studying the behavior of the TCP connec-
tion, we observed that as the connection approaches the
maximum network capacity, there is significant variation
in the exponential behavior of the ACKs received.
We can observe from the Fig. 5 that at about 5.5 se-
conds, the growth rate of the ACKs received starts to de-
viate from the exponential growth rate. At about the same
time, we can observe from Fig. 3 in Section 2.1, an in-
crease in the number of packets dropped. We believe that
the deviation in the growth rate of the ACKs can be asso-
ciated to the increase in the amount of congestion in the
network. This behavior was observed to be consistent
over different bandwidth and round trip time values
1
. We
observed a deviation in the growth rate of the ACKs re-
ceived as the connections starts experiencing congestion
in the network. We mark the point at which the value of
the expected ACK exceeds the value of the actual ACK
received as the crossover point.
We can infer from the above discussion that the devia-
tion in the growth rate of the ACK received to the ex-
pected exponential growth rate provides a precursor to an
imminent congestion event in the network. This inference
has formed the basis of our proposed algorithm. DiffStart
anticipates the onset of congestion in the network by
tracking the deviation in the growth rate of ACK received,
and proactively initiating a transition in the growth rate
of the cwnd from exponential to linear without undergo-
ing a timeout event. The proactive transitioning of the
growth rate of the cwnd prevents the overshooting of the
ssthresh, in addition to quickly ramping-up to full net-
work capacity.

4.2 Working
Adhering to our philosophy, we have developed a heuris-
tic method to implement DiffStart. We rely on two crucial
parameters called the Expected ACK (ACK
e
) which com-
putes the expected exponential value of the ACK, and the
timer (t) which measures the time elapsed since ACK
e
>
ACK to initiate the transition in the growth rate of cwnd.
We have derived a formula as seen in (3), to compute
the value of ACK
e
. On the receipt of an ACK, the TCP
sender computes the difference between the timestamp of

1
We conducted simulations varying the bandwidth from 100Mbps to
10Gbps and the round trip delay between 100ms to 250ms.
the ACK received and the timestamp of the first ACK re-
ceived, as a factor of the SRTT
2
(smooth round trip time)
[38]. Since TCP doubles its cwnd every RTT, the exponent
value is raised to the base of two.


(3)

where, T
C
= timestamp of the received ACK
T
0
= timestamp of the 1
st
ACK

A timer (t) is maintained to determine the total time
elapsed since the value of ACK
e
is greater than ACK. For
ACK
e
> ACK, the difference between the inter-arrival
times of successive ACKs (") is calculated as seen from
(4). The value of the timer is incremented by " as long as
the value of ACK
e
remains greater than that of ACK as
seen from (5).

(4)


(5)

On running simulations using different network pa-
rameters, we observed that for some time instances, the
value of the ACK
e
shortly surpasses the actual ACK re-
ceived. However, it does not imply the occurrence of a
crossover point but is a false positive as a result of the
overestimation of the ACK
e
for that particular time in-
stance.
In order to ascertain the occurrence of the crossover
point, we compare the value of t against a heuristic
threshold that is a function of the RTT. We observed a
premature transition in the growth rate of the cwnd for
the values of threshold less than 90% of the RTT resulting
in the underutilization of the network capacity. Hence,
we assigned the value of the threshold equal to 90% of the
RTT.
As soon as the value of t exceeds 90% of the RTT, the
TCP sender switches from the slow start phase to the
congestion avoidance phase, or transitions the growth
rate of the cwnd from exponential to linear.

4.3 Algorithm
The DiffStart algorithm retains most of the structure of
the standard slow start algorithm as discussed in Section
2.1. The only addition to the standard slow start algo-
rithm is to compute the value of ACK
e
and maintain the
value of the timer t. The value of the timer is incremented
as long as ACK
e
> ACK else it is reset to zero. As soon as
the value of the timer exceeds 90% of the RTT, the TCP
sender initiates a transition in the growth of the cwnd
from exponential to linear. On receipt of a duplicate ACK,
or upon expiration of the Retransmission Timer (RTO),
DiffStart reacts similar to that of the standard slow start
algorithm.

2
The value of SRTT is calculated using the formula SRTT
i+1
= # x SRTT
i

+ (1- # ) x M where # = 0.9 and M is the most recent value of RTT

Fig. 5. Comparing the expected growth rate of the ACKs to the actual
ACKs received during simulation.
17

1
2
0
2
! "
#
$
%
&
'
(
!
=
SRTT
T T
e
c
ACK
The DiffStart algorithm is summarized as follows:

1. For every non-duplicate ACK




if ACK
e
> ACK
"

= T(ACK
i
) T(ACK
i-1
)
t
i
= t
i-1
+ "

else
t
i
= 0
" = 0
if t
i
>0.9 x RTT (congestion avoidance)
cwnd = cwnd + 1/ cwnd
else (slow start)
cwnd = cwnd + 1
2. For duplicate ACK (fast recovery and retransmit)
ssthresh = cwnd / 2
cwnd = ssthresh
cwnd = cwnd + 1/cwnd
3. For Timeout
ssthresh = cwnd / 2
cwnd = 1
5 SIMULATION RESULTS AND DISCUSSION
We have implemented DiffStart in conjunction with TCP
Reno in the NS2 simulator. For the scope of this paper, we
have compared the performance of DiffStart with TCP
CUBIC which has been implemented in the Linux kernel
[35], and TCP Compound which has been implemented
in Microsoft Windows Vista and later operating systems.
The comparison is with respect to the growth of the con-
gestion window, packet loss ratio, and throughput.

5.1 Simulation configuration
We have abstracted a typical high bandwidth-delay net-
work scenario by connecting two nodes, using a high ca-
pacity 1Gbps link with a RTT of 150ms as shown in Fig. 1.
We run the simulation for one minute using a FTP appli-
cation, which uses TCP as the transport layer protocol.









Fig. 7. Comparing the packet drop ratio of: a) TCP Compound, b) TCP
CUBIC, and c) TCP Reno with DiffStart.

Fig. 6. Comparing the cwnd growth of: a) TCP Compound, b) TCP
CUBIC, and c) TCP Reno with DiffStart.
18


5.2 Discussion
We plot the simulation results for the growth of the con-
gestion window, ratio of number of packets dropped, and
throughput in Fig. 6, Fig. 7, and Fig. 8 respectively. We
can observe from Fig. 6 that the growth of the cwnd ad-
heres to the philosophy of DiffStart as discussed in Sec-
tion 4.1. DiffStart anticipates the onset of congestion in the
network and proactively transitions the growth rate of the
cwnd from exponential to linear thereby preventing the
overshooting of the ssthresh. Thus, DiffStart not only pre-
vents the connection from undergoing a timeout event
but also ensures no packet is dropped as seen from Fig. 7.
We can observe from Fig. 8 that DiffStart in conjunction
with TCP Reno reaches full network capacity at an earlier
stage as compared to TCP Compound or TCP CUBIC be-
cause it continues to linearly increase the cwnd without
undergoing a timeout event. DiffStart reaches full net-
work throughput at 5.6s as compared to 7.6s in the case of
TCP Compound and 7.1s in the case of TCP CUBIC.

5.3 Advantages
We summarize the advantages of our proposed algorithm
DiffStart in the case of high bandwidth-delay networks as
follows: 1) DiffStart anticipates the onset of congestion in
the network and prevents the cwnd from overshooting the
ssthresh. 2) DiffStart reduces the number of packets
dropped and prevents the connection from undergoing a
timeout event. 3) DiffStart assists the connection to reach
full throughput at an early stage.

6. CONCLUSION
We have proposed a novel algorithm called DiffStart,
which improves the start-up behaviour of TCP for high
bandwidth-delay networks. We believe that the standard
slow start algorithm lacks an efficient mechanism to de-
tect congestion in the network and cannot transition the
growth rate of the cwnd from exponential to linear with-
out undergoing a timeout event. In the case of high
bandwidth-delay networks, the doubling of cwnd after
each RTT cycle during the start-up phase, leads to an
overshooting of the ssthresh and subsequently a timeout
event. Thus, the connection not only suffers from heavy
packet loss but also takes several RTT cycles times the
delay of the link to reach full network capacity after the
timeout event. We have developed a heuristic method
that measures the deviation in growth rate of the ACK
received to anticipate the onset of congestion in the net-
work, and proactively transition the growth rate of the
cwnd from exponential to linear without undergoing a
timeout event. After simulating and comparing the per-
formance of DiffStart in terms of the growth of the con-
gestion window, packet drop ratio, and throughput, we
conclude that by proactively transitioning the growth rate
of the cwnd without undergoing a timeout event, DiffStart
can reach full network capacity at an earlier stage thereby
overcoming the limitations of the standard slow start al-
gorithm.
REFERENCES
[1] J. Postel, "RFC 791: Internet protocol," 1981.
[2] B. Sanou, "ICT Facts and Figures," International
Telecommunications Union, 2013.
[3] Akamai, "State of the Internet," 2013.
[4] C. Labovitz, S. Iekel-Johnson, D. McPherson, J.
Oberheide, and F. Jahanian, "Internet inter-domain traffic,"
in ACM SIGCOMM Computer Communication Review,
2010, pp. 75-86.
[5] A. Mahimkar, A. Chiu, R. Doverspike, M. D. Feuer, P.
Magill, E. Mavrogiorgis, J. Pastor, S. L. Woodward, and J.
Yates, "Bandwidth on demand for inter-data center
communication," in Proceedings of the 10th ACM
Workshop on Hot Topics in Networks, 2011, p. 24.
[6] B. Koley, V. Vusirikala, C. Lam, and V. Gill, "100GbE and
beyond for warehouse scale computing," in
OptoeElectronics and Communications Conference
(OECC), 2010 15th, 2010, pp. 106-107.
[7] M. Hassan and R. Jain, High performance TCP/IP
networking: concepts, issues, and solutions:
Pearson/Prentice Hall, 2004.
[8] A. Greenberg, J. Hamilton, D. A. Maltz, and P. Patel, "The
cost of a cloud: research problems in data center
networks," ACM SIGCOMM Computer Communication
Review, vol. 39, pp. 68-73, 2008.
[9] J. F. Kurose and K. W. Ross, Computer Networking: A
Top-Down Approach: Pearson Education, Limited, 2012.
[10] T. V. Lakshman and U. Madhow, "The performance of
TCP/IP for networks with high bandwidth-delay products
and random loss," Networking, IEEE/ACM Transactions

Fig. 8. Comparing the throughput of: a) TCP Compound, b) TCP CU-
BIC, and c) TCP Reno with DiffStart.
19

on, vol. 5, pp. 336-350, 1997.
[11] D. Katabi, M. Handley, and C. Rohrs, "Congestion control
for high bandwidth-delay product networks," SIGCOMM
Comput. Commun. Rev., vol. 32, pp. 89-102, 2002.
[12] D. Katabi, "Decoupling congestion control and bandwidth
allocation policy with application to high bandwidth-delay
product networks," Massachusetts Institute of Technology,
2003.
[13] E. Altman, K. Avrachenkov, and C. Barakat, "TCP network
calculus: the case of large delay-bandwidth product," in
INFOCOM 2002. Twenty-First Annual Joint Conference of
the IEEE Computer and Communications Societies.
Proceedings. IEEE, 2002, pp. 417-426 vol.1.
[14] J. C. Hoe, "Start-up dynamics of TCP's congestion control
and avoidance schemes," Massachusetts Institute of
Technology, 1995.
[15] S. Ha, "Improving tcp congestion control for high
bandwidth and long distance networks," North Carolina
State University, 2009.
[16] R. Wang, G. Pau, K. Yamada, M. Y. Sanadidi, and M.
Gerla, "TCP startup performance in large bandwidth
networks," in INFOCOM 2004. Twenty-third AnnualJoint
Conference of the IEEE Computer and Communications
Societies, 2004, pp. 796-805 vol.2.
[17] M. Allman, V. Paxson, and W. Stevens, "RFC 2581: TCP
congestion control," ed: April, 1999.
[18] V. Jacobson, "Modified TCP congestion avoidance
algorithm," end2end-interest mailing list, 1990.
[19] V. Jacobson, "Congestion avoidance and control,"
presented at the Symposium proceedings on
Communications architectures and protocols, Stanford,
California, USA, 1988.
[20] http://www.isi.edu/nsnam/ns.
[21] R. Srikant, The mathematics of Internet congestion control:
Springer, 2004.
[22] S. Floyd and K. Fall, "Promoting the use of end-to-end
congestion control in the Internet," Networking, IEEE/ACM
Transactions on, vol. 7, pp. 458-472, 1999.
[23] S. Floyd, M. Allman, A. Jain, and P. Sarolahti, "Quick-Start
for TCP and IP," IETF RFC4782, 2007.
[24] N. Dukkipati and N. Adviser-Mckeown, Rate Control
Protocol (RCP): Congestion control to make flows
complete quickly: Stanford University, 2008.
[25] V. N. Padmanabhan and R. H. Katz, "TCP fast start: A
technique for speeding up web transfers," 1998.
[26] M. Allman, S. Floyd, and C. Partridge, "Increasing TCPs
initial window," 1998.
[27] J. Chu, N. Dukkipati, Y. Cheng, and M. Mathis, "Increasing
TCPs initial window," in IRTF ICCRG and IETF TCPM
working group meetings, IETF, 2010.
[28] S. Keshav, "A control-theoretic approach to flow control,"
SIGCOMM Comput. Commun. Rev., vol. 21, pp. 3-15,
1991.
[29] T. Henderson, S. Floyd, A. Gurtov, and Y. Nishida, "The
NewReno modification to TCPs fast recovery algorithm,"
RFC6582, 2012.
[30] C. Caini and R. Firrincieli, "TCP Hybla: a TCP
enhancement for heterogeneous networks," International
Journal of Satellite Communications and Networking, vol.
22, pp. 547-566, 2004.
[31] L. S. Brakmo and L. L. Peterson, "TCP Vegas: end to end
congestion avoidance on a global Internet," Selected
Areas in Communications, IEEE Journal on, vol. 13, pp.
1465-1480, 1995.
[32] S. Floyd, "Limited slow-start for TCP with large congestion
windows," 2004.
[33] S. Floyd, "HighSpeed TCP for large congestion windows,"
2003.
[34] S. Ha and I. Rhee, "Hybrid slow start for high-bandwidth
and long-distance networks," in Proc. PFLDnet, 2008.
[35] S. Ha, I. Rhee, and L. Xu, "CUBIC: a new TCP-friendly
high-speed TCP variant," SIGOPS Oper. Syst. Rev., vol.
42, pp. 64-74, 2008.
[36] M. Sridharan, K. Tan, D. Bansal, and D. Thaler,
"Compound TCP: A new TCP congestion control for high-
speed and long distance networks," Internet-draft draft-
sridharan-tcpm-ctcp-022008.
[37] http://research.microsoft.com/en-us/projects/ctcp/.
[38] K. R. Fall and W. R. Stevens, TCP/IP Illustrated, Volume
1: The Protocols: Pearson Education, 2011.


Aniruddha A. Agharkar holds the Master of Science degree in Tel-
ecommunications Engineering from the University of Oklahoma,
Tulsa (2013); and a Bachelor of Engineering degree in Electronics
and Telecommunications from the University of Mumbai, India
(2009). He is currently working as a Systems Engineer at Speciality
Telecommunications Services.

Gregory MacDonald holds the Doctor of Philosophy degree in Gen-
eral Engineering from the University of Oklahoma, Tulsa (2012);
Master of Science degree in Astronomy from the University of West-
ern Sydney (2004), and the Master of Science degree in Telecom-
munications Engineering from the University of Oklahoma (2003);
and Bachelor of Science degree in Physics and Mathematics from
Eastern Michigan University (1979). He has worked in the automo-
tive and petroleum industries and is currently a Technical Consultant
at HP. His research interests include machine learning and anomaly
detection.

Pramode K. Verma holds the Master of Business Administration
degree (1984) from Wharton School of the University of Pennsylva-
nia, USA; Doctor of Philosophy degree in Electrical Engineering from
Concordia University - Montreal, Quebec, Canada (1970); Bachelor
of Engineering degree in Telecommunication from Indian Institute of
Science, Bangalore, India (1962); and Bachelor of Science (Honors)
degree in Physics from Patna University, India (1959). Prior to joining
the University of Oklahoma in 1999, Dr. Verma held a variety of pro-
fessional and leadership positions in the telecommunications indus-
try at AT&T Bell Laboratories and Lucent technologies. He also holds
the Williams Chair in Telecommunications Networking. He is the
author/co-author of over 150 journal articles and conference papers,
and several books in telecommunications engineering. He is also the
co-inventor of eight patents. He is a Senior Member of the IEEE and
a Senior Fellow of The Information and Telecommunication Educa-
tion and Research Association.

You might also like