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

Hybrid Modeling of TCPCongestion Control Lecture Notes in Computer Scienceno 2034

This document proposes a hybrid model for analyzing TCP congestion control operating under drop-tail queuing. The model confirms the standard formula relating average throughput, round-trip time, and packet drop rate. It also theoretically predicts flow synchronization observed in simulations but not previously explained. The model can detect abnormalities in TCP traffic flows with applications in network security.

Uploaded by

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

Hybrid Modeling of TCPCongestion Control Lecture Notes in Computer Scienceno 2034

This document proposes a hybrid model for analyzing TCP congestion control operating under drop-tail queuing. The model confirms the standard formula relating average throughput, round-trip time, and packet drop rate. It also theoretically predicts flow synchronization observed in simulations but not previously explained. The model can detect abnormalities in TCP traffic flows with applications in network security.

Uploaded by

Ashish Gowande
Copyright
© Attribution Non-Commercial (BY-NC)
Available Formats
Download as PDF, TXT or read online on Scribd
You are on page 1/ 14

Hybrid Modeling of TCP

Congestion Control

Jo ao P. Hespanha
1
, Stephan Bohacek
1
, Katia Obraczka
2
, and Junsoo Lee
1
1
University of Southern California, Los Angeles, CA 90089-2563, USA
2
University of California, Santa Cruz, CA 95064, USA
Abstract. In this paper we propose a hybrid model for TCPs conges-
tion control mechanism operating under drop-tail queuing policy. Using
this model we conrmed the standard formula T :=
1.23
RTT

p
used by
TCP-friendly congestion control algorithms, which relates the average
packet drop rate p, the average round-trip time RTT, and the average
throughput T. The hybrid model also allows us to understand the tran-
sient behavior and theoretically predict the ow synchronization phe-
nomena that have been observed in simulations and in real networks
but, to the best of our knowledge, have not been theoretically justied.
This model can also be used to detect abnormalities in TCP trac ows,
which has important applications in network security.
1 Introduction
Consider the computer network shown in Figure 1. In this topology, n TCP ows
are generated at a source node n
1
and are directed towards a sink node n
2
. All
the ows compete for the nite bandwidth B that characterizes the link that
connects the nodes. This conguration is known as a dumbbell topology and is
typically used to analyze TCPs congestion control. In more realistic networks,
a path of several links (and intermediate nodes) would connect the source and
destination nodes. However, to analyze congestion control mechanisms, one of-
ten ignores the existence of all the intermediate links, except for the bottleneck
link, i.e., the link that has the smallest bandwidth. In the dumbbell topology,
represents precisely this link.
The basic problem in congestion control is to determine sending rates for each
of the n ows that result in an optimal utilization of the available bandwidth,
avoiding a catastrophic collapse under very heavy load. The transport layer of
the TCP/IP protocol stack is responsible for solving this problem and the send-
ing rates are determined by n congestion controllers. Each congestion controller
adjusts the sending rate of one particular ow, based on the number of packet
drops that this ow is suering. Packet drops occur when the sending rates of

This research was supported by the Defense Advanced Research Projects Agency
and the Oce of Naval Research. The views presented here are those of the authors
and do not represent the views of the funding agencies.
M.D. Di Benedetto, A. Sangiovanni-Vincentelli (Eds.): HSCC 2001, LNCS 2034, pp. 291304, 2001.
c Springer-Verlag Berlin Heidelberg 2001
292 J.P. Hespanha et al.
.
.
.
n
1
n
2

ow
1
ow
2
ow
n
Fig. 1. Dumbbell topology
the ows are too large and the source node n
1
is unable to process all the packets
received. The congestion controller becomes aware of packet drops because, each
time a packet is received by the destination node, it sends an acknowledgment
packet back to the source node. When a data packet is dropped, its acknowledg-
ment is never received and the congestion controller should take some action.
The congestion control problem is nontrivial because of the following:
1. The bandwidth B associated with the link and the total number of ows n
competing for this bandwidth are not known by the congestion controllers.
Moreover, these parameters are likely to change over time.
2. The exchange of information among congestion controllers and between the
congestion controllers and the nodes is undesirable. This is because the con-
trol information would compete with the data for the available bandwidth.
Every computer connected to the Internet runs some version of TCP con-
gestion control. It is therefore not surprising to nd that a signicant body of
literature is devoted to this topic. However, many basic questions remain poorly
understood. These include:
1. Does TCP congestion control work? In particular, is it able to prevent a
catastrophic collapse of the network under very heavy load.
2. Is TCP congestion control fair? In particular, does it result in approximately
equal throughput for all competing ows.
3. Is TCP optimal or close to optimal? This question is particularly dicult
because there is no universally accepted notion of optimality. Small drops
rates, small delays, approximately constant ow rates, and fast adaptation
to changes in the network are certainly desirable properties. However, these
criteria are self-contradictory and therefore trade-o solutions are required.
In this paper we provide a hybrid model for Reno congestion control [1,2,3] that
sheds light in some of the questions formulated above. Reno is one of the more
popular versions of TCP congestion control and is generally accepted to perform
well. The model proposed also applies to more recent variations on Reno such
as New Reno, Sack [4], and general AIMD [5].
The model proposed provides a new derivation for the now fairly standard
formula
T =
1.23
RTT

p
(1)
Hybrid Modeling of TCP Congestion Control 293
that relates the average packet drop rate p, the average round-trip time RTT,
and the average throughput T [6,7,8,9]. Formulas such as (1) have been used
to design congestion control mechanisms that are TCP-friendly but produce
more constant sending rates, making them more suitable, e.g., for streaming
multimedia over the Internet [10]. Unlike previous derivations, ours considers
the eect of queuing and the coupling between the competing ows.
The hybrid model presented here also predicts that the dumbbell topology
in Figure 1, with drop-tail queuing at node n
1
, leads to ow synchronization,
i.e., the sending rates of all the ows exhibit in-phase periodic variations. This
produces undesirably large variations of the round-trip time and poor utilization
of the queue. This type of behavior has been observed before [11] and actually
led to the development of Random Early Detection/Drop active queuing [12,
13]. To the best of our knowledge, this is the rst time that the synchronization
phenomena are theoretically explained.
2 Hybrid Model for Congestion Control
In this paper, we consider Reno congestion control. We describe next a simplied
version of this algorithm that is sucient for the purposes of this paper. Each
congestion controller possesses an internal state known as the window size. We
denote by w
i
, i 1, 2, . . . , n, the window size of the congestion controller
associated with the ith ow. The window size determines the maximum number
of unacknowledged packets for that ow. E.g., if w
i
= 3, then the congestion
controller can send 3 packets immediately, but must wait for one acknowledgment
to arrive before a 4th packet can be sent. The algorithm to update the window
size w
i
is as follows: While no drops occur, the window size is incremented by
a xed constant a 1 for each w
i
acknowledgments received (typically a = 1).
This is known as additive increase. When it is detected that a drop occurred
(because an acknowledgment packet is missing) the window size is multiplied
by a constant m (0, 1) (typically m = 1/2). This is known as multiplicative
decrease. We are ignoring Renos initial adjustment of the window sizeknown as
slow startbecause it has little impact on the system after a brief initial period.
The reader is referred to [1,2,3] for a detailed description of Reno congestion
control.
Although the window size takes discrete values, it is convenient to regard
it as a continuously varying variable. Let us call round-trip time, denoted by
RTT, the time interval measured from the moment a packet is sent until an
acknowledgment for that packet is received. As we will see below, the round-trip
time is a time-varying quantity. Suppose that at some time t, the congestion
controller for the ith ow sends one packet and lls its window. This means that
w
i
packets are now unacknowledged for. Assuming that there are no drops, after
one round-trip time the acknowledgment for this packet is received, as well as
the acknowledgments for the previous w
i
1 packets. Since w
i
acknowledgments
were received, the window size must have increased by a. On average, each w
i
294 J.P. Hespanha et al.
thus increases at a rate of
a
RTT
packets per second. The following hybrid model
provides a good approximation of the ith window size dynamics: While the ith
ow suers no drops we have
w
i
=
a
RTT
, (2)
and, if a drop is detected on this ow at time t, we have w
i
(t) = mw

i
(t), where
w

i
(t) denotes the limit from below of w
i
(s) as s t.
We proceed to determine the evolution of the round-trip time RTT(t). Typi-
cally, the round trip time has two components: a xed propagation time T
p
that
is determined by the physical length of the link and the speed of light, and
a variable service time T
s
that accounts for the time the nodes take to process
the packet. The service time is usually dominated by the queue time T
q
, i.e., the
time a packet stays in the output queue of node n
1
before it is sent to the link.
Denoting by q(t) the size of this queue at time t, and by B the bandwidth of
link in packets per second, the queuing time is given by
T
q
(t) =
q(t)
B
,
because q(t) packets need to be transmitted (each taking 1/B seconds) before a
new packet can also be transmitted. We assume here that the bandwidth B is
measured in packets per second. The round-trip time is then given by
RTT(t) = T
p
+
q(t)
B
. (3)
In this formula, we incorporated in T
p
any xed component of the service time.
As mentioned above, the ith ow receives w
i
acknowledgment packets in
one round-trip time. Therefore, in average, it sends w
i
packets per round-trip
time. This means that the output queue at node n
1
receives a total of

i
w
i
RTT
packets per second and is able to send B packets to the link in the same period.
The dierence between these two quantities determines the evolution of q(t). In
particular,
q =
_
0 q = 0,

i
w
i
RTT
< B or q = q
max
,

i
w
i
RTT
> B

i
w
i
RTT
B otherwise
(4)
The rst branch in (4) takes into account that the queue size cannot become
negative nor should it exceed the maximum queue size q
max
. When q(t) reaches
q
max
drops occur. These will be detected by the congestion controllers some time
later.
To complete our model it remains to understand how many drops occur and
in which ows. As mentioned above, drops will occur whenever q reaches the
maximum queue size q
max
and the rate of incoming packets to the queue

i
w
i
RTT
Hybrid Modeling of TCP Congestion Control 295
exceeds the rate B of outgoing packets. Since a drop will only be detected after
one round-trip time, the rate of incoming packets will not change for a period
of length RTT and multiple drops are expected. It turns out that, in most
operating conditions, exactly one drop per ow will occur [11]. To understand
why, we must recall that in every round-trip time the window size of each ow will
increase because each ow will receive as many acknowledgments as its window
size. When the acknowledgment that triggers the increase of the window size by
a 1 arrives, the congestion controller will attempt to send two packets back-
to-back. The rst packet is sent because the acknowledgment that just arrived
decreased the number of unacknowledged packets and therefore a new packet
can be sent. The second packet is sent because the window size just increased,
allowing the controller to have an extra unacknowledged packet. However, at
this point there is a very fragile balance between the number of packets that
are getting in and out of the queue, so two packets will not t in the queue
and the second packet is dropped. This, of course, assumes a drop-tail queuing
policy. Although this behavior is essentially caused by the discreteness of the
queue mechanism, we can incorporate it in our hybrid model by considering two
modes for the system: One mode corresponds to the situation when the queue
is not full and therefore the system evolves according to (2), (3), (4). The other
mode of operation corresponds to the situation where the queue is full and one
drop will occur in each ow. This mode of operation is active for RTT seconds.
When the system leaves this mode all window sizes are multiplied by m because
of the multiplicative decrease caused by the drops. In reality, the multiplicative
decrease of all ows does not occur exactly at the same time instant. However,
this model provides a very good approximation for the time scales considered
here.
Figure 2 contains a graphical representation of the overall hybrid system. In
this gure, each node represents one of the two discrete states: queue-full and
queue-not-full. The continuous state of the hybrid system consists of the queue
size q, the window sizes w
i
, i 1, 2, , n, and a timing variable t
T
used to
enforce that the system remains in the queue-full state for RTT seconds. The
dierential equations for these variables in each discrete state are shown inside
the corresponding nodes. The links in the gure represent discrete transitions,
which are labeled with their enabling conditions and any necessary reset of the
continuous state that must take place when the transition occurs. We assume
here that a jump always occurs when the transition condition is enabled. This
model falls in several of the general hybrid systems frameworks proposed in the
literature [14,15,16,17,18,19,20,21,22]. For simplicity we assume here that the
queue size q never reaches zero.
Remark 1. For a very large number of ows, a single drop per ow may not be
sucient to produce the decrease in the window size required to make the queue
size drop below q
max
after the multiplicative decrease. In this case, the model in
Figure 2 is not valid. However, we shall see in Section 4 that, for most operating
conditions, this model accurately matches packet-level simulations performed
296 J.P. Hespanha et al.
queue-not-full:
q = B

i
w
i
BT
p
+ q
1

w
i
=
aB
BT
p
+ q

t
T
= 0
queue-full:
q = 0
w
i
=
aB
BT
p
+ q

t
T
= 1
q q
max
and

i
w
i
BT
p
+ q
> 1
t
T
:= 0
t
T
T
p
+
q
B
w
i
:= mw

i
Fig. 2. Hybrid model for Reno congestion control
using the ns-2 network simulator [23]. In fact, this hybrid model only fails when
the number of ows is so large that the drop rates take unusually large values.
3 Dynamics in Normalized Time
The dynamics for the hybrid system in Figure 2 are nonlinear essentially because
of the dependence of RTT on q. However, it is possible to make them linear by
normalizing the time variable. To this eect we introduce a new time variable ,
called the normalized time
1
, dened by
dt
d
= RTT = T
p
+
q
B
, (0) = 0. (5)
This means that an interval with duration d in the variable corresponds to
an interval of duration dt = RTTd in the variable t. We can think of as a
time variable normalized so that one unit of corresponds to one round-trip
time. Figure 3 shows the dynamics of the hybrid system in normalized time.
In this gure,

denotes the derivative
d
d
with respect to the normalized time
. In Figure 3, we also used the fact that in the queue-full state, q = q
max
and therefore, waiting until t
T
reaches T
p
+
q
max
B
from zero with t

T
= RTT =
T
p
+
q
max
B
, is equivalent to waiting until
T
reaches 1 from zero with

T
= 1.
1
Formally, there is a bijective function f that maps normalized time into real time
t. This function is actually dened by (5). With some abuse of notation, when we
write q() for some normalized time , we really mean q(f()). Similar notation is
used for the remaining time-dependent variables.
Hybrid Modeling of TCP Congestion Control 297
queue-not-full:
q

= q BT
p
+

i
w
i
w

i
= a

T
= 0
queue-full:
q

= 0
w

i
= a

T
= 1
q q
max
and

i
w
i
> BT
p
+ q

T
:= 0

T
1
w
i
:= mw

i
Fig. 3. Hybrid model for Reno congestion control in normalized time.
It is interesting to note that the equation that models the queue dynamics
in the queue-not-full state is stable. This is an important property of window-
based congestion control, as opposed to other congestion control mechanisms
that adapt the packets sending rates directly (instead of indirectly through the
window size).
Let us denote by
k
:
k

k+1
, k 1 the set of normalized times at
which the system leaves the queue-full mode. Using the fact that the system
dynamics is essentially linear at each discrete mode, it is somewhat tedious but
nevertheless straightforward to show that

k+1

k
= f
1
(s
k
) + 1, k 1, (6)
where
s
k
:=
q
max
+ BT
p

n
i=1
w
i
(
k
)
an
, (7)
and f : [0, ) [0, ) denotes the smooth bijection
x
_
x
1e
x
1 x ,= 0
0 x = 0
.
The reader is referred to [24] for the detailed derivation of (6). We proceed to
analyze the evolution of the w
i
(
k
). To this eect, suppose that the system left
the queue-full mode at some normalized time
k
, k 1. Since it takes f
1
(s
k
)+1
units of normalized time until the system leaves the queue-full state again and
during this time w

i
= a, i 1, 2, . . . , n, we conclude that
w

i
(
k+1
) = w
i
(
k
) + af
1
(s
k
) + a, i 1, 2, . . . , n,
298 J.P. Hespanha et al.
and therefore
w
i
(
k+1
) = m
_
w
i
(
k
) + af
1
(s
k
) + a
_
, i 1, 2, . . . , n. (8)
From (7) and (8) we then conclude that
s
k+1
= m
_
s
k
f
1
(s
k
)
_
+
1 m
an
(q
max
+ BT
p
) m. (9)
It turns out that, as long as
q
max
+ BT
p

2ma
1 m
n,
the map g : [0, ) [0, ), dened by
s m
_
s f
1
(s)
_
+
1 m
an
(q
max
+ BT
p
) m,
is a contraction. In particular,
[g(s) g( s)[ = m[s s f
1
(s) + f
1
(s
s
)[ m[s s[, s, s 0. (10)
Since (9) can also be written as s
k+1
= g(s
k
), using the Contraction Mapping
Theorem [25, p. 126] we conclude that the s
k
converges to the unique xed point
s

of g, which is the unique solution to


s

= m
_
s

f
1
(s

)
_
+
1 m
an
(q
max
+ BT
p
) m. (11)
The convergence is as fast as m
k
. From this and (8) we conclude that the fol-
lowing theorem holds:
Theorem 1. Let t
k
: t
k
t
k+1
, k 1 be the set of times at which the system
leaves the queue-full. For q
max
+ BT
p

2ma
1m
n, all the w
i
(t
k
), i 1, 2, . . . , n
converge exponentially fast to
w

:=
ma
1 m
(f
1
(s

) + 1),
as k and the convergence is as fast as m
k
.
The condition q
max
+ BT
p

2ma
1m
n essentially limits the maximum number of
ows under which the one-drop-per-ow is valid. When this condition is violated,
i.e., when n >
1m
2ma
(q
max
+ BT
p
), a single drop per ow may not be sucient
to produce a decrease in the sending rates that would make q drop below q
max
after the multiplicative decrease.
A straightforward conclusion of Theorem 1 is that all the ows become syn-
chronized as time goes to innity. This is because the window sizes of all the
ows asymptotically converge to the same limit cycle. This limit cycle corre-
sponds to an increase of the window size from w

to
1
m
w

, lasting f
1
(s

) +1
Hybrid Modeling of TCP Congestion Control 299
units of normalized time, followed by an instantaneous decrease back to w

due
to drops.
Window size synchronization had been observed in [11] for Tahoe congestion
control [4]. In [11], the authors defend that synchronization is closely related to
the packet loss synchronization that we also use in our model. In fact, they pro-
vide an informal explanationsupported by packet-level simulationsof how
synchronization is a self-sustained phenomenon. Although [11] only deals with
Tahoe, the arguments used there also apply to Reno congestion control. Theo-
rem 1 goes further because it demonstrates that the limit cycle that corresponds
to ow synchronization is globally exponential stable. This means that synchro-
nization will occur even if the ows start unsynchronized or lose synchronization
because of some temporary disturbance. Moreover, the convergence to the limit
cycle is very fast and is reduced by at least m (typically 1/2) on each cycle. In
fact, initially the convergence is even faster because the upper bound in (10) is
conservative for large [s s[.
4 Steady-State Behavior
We proceed now to derive steady-state formulassuch as the ones found in
[6,7,8,9]that relate the average throughput, the average drop rate (i.e., the
percentage of dropped packets), and the average round-trip time. In this section
we concentrate on the case where s

is much larger than one and therefore


f
1
(s

) s

+ 1. (12)
This approximation is valid when
q
max
+ BT
p

2man
1 m
(13)
and results in the system remaining in the state queue-not-full for, at least, a
few round-trip times
2
. In practice, this is quite common and a deviation from
(13) results in very large drop rates.
Suppose then that the steady-state has been reached and let us consider an
interval [t
k
, t
k+1
] between two consecutive time instants at which the system
enters the queue-not-full state. Somewhere in this interval lies the time instant

t
k
at which the system enters the queue-full state and drops occur. During the
interval [t
k
, t
k+1
], the instantaneous rate r at which the nodes are successfully
transmitting packets is given by
r(t) =
_
w
i
(t)
RTT(t)
t [t
k
,

t
k
)
B t [

t
k
, t
k+1
]
(14)
2
When the system remains in the queue-not-full for at least 4 round-trip times, (12)
already yields an error smaller than 2%.
300 J.P. Hespanha et al.
The total number of packets N
k
sent during the interval [t
k
, t
k+1
] can then be
computed by
N
k
:=
_
t
k+1
t
k
r(t)dt =
_

k+1

k
r()RTT()d (15)

1 m
2
2an
(q
max
+ BT
p
+ 2an)
2
.
We used here the change of integration variable dened by (5) to work with
quantities in normalized time. Details on the computation of the integrals in
(15) and in (17) below are given in [24]. Since n drops occur in the interval
[t
k
, t
k+1
], the average drop rate p is then equal to
p :=
n
N
k

2a
1 m
2
_
n
q
max
+ BT
p
+ 2an
_
2
. (16)
Another quantity of interest is the average round-trip time RTT. We consider
here a packet-average, rather than a time-average, because the former is the
one usually measured in real networks. This distinction is important since the
sending rate r is not constant. In fact, when the sending rate is higher, the
queue is more likely to be full and the round-trip time is larger. This results
in the packet-average being larger than the time-average. The packet-average
round-trip time can then be computed as
RTT :=
_
t
k+1
t
k
r(t)RTT(t)dt
N
k
=
_

k+1

k
r()RTT()
2
d
N
k

1
T
_
2
3
1 m
3
1 m
2
q
max
+ BT
p
+ 2an
n
a
1 m
1 + m
_
, (17)
where T :=
B
n
is the average throughput of each ow. We recall that, because
the queue never empties, the total throughput is precisely the bandwidth B of
the bottleneck link.
It is interesting to note that the average drop rate p can provide an estimate
for the quantity
n
q
max
+BT
p
+2an
. In particular, we conclude from (16) that
q
max
+ BT
p
+ 2an
n

2a
(1 m
2
)p
. (18)
This, in turn, can be used together with (17) to estimate the average throughput
T. In fact, from (17) and (18) we conclude that
T
1
RTT
_
2
3
1 m
3
1 m
2

2a
(1 m
2
)p
a
1 m
1 + m
_
(19)
For a = 1 and m = 1/2, (19) becomes T
1
RTT
_
1.27

p
+
1
3
_
. For reasonable
drop rates, the term
1.27

p
dominates over 1/3 and (19) matches closely similar
Hybrid Modeling of TCP Congestion Control 301
formulas derived in [6,7,8,9]. It should be emphasized that the derivations in
these references do not take queuing into account nor its eect in the varia-
tion of the round-trip time. The coupling between the n competing ows is also
ignored and therefore no theoretically-supported claim is made to the extent
that the steady-state solution is actually reached in an asymptotic sense. The
hybrid model introduced here also leads to a more complete description of the
steady-state behavior of TCP through the explicit formulas (16) and (17) for the
average round-trip time RTT and the drop rate p as a function of the number
of ows n. It is important to emphasize that RTT in (17) denotes the aver-
age round-trip time. It turns out that the actual round-trip-time RTT varies
quite signicantly around this average because of uctuations on the queue size.
These large variations in the queue size (which are amplied by synchronization)
produce a large delay jitter. These phenomena, which have signicant implica-
tions in the design of congestion control mechanisms for applications that require
stricter service guarantees from the network, have not been accurately captured
in most existing models [9,26,27,10,28].
To verify the formulas derived above, we simulated the dumbbell of Figure 1
using the ns-2 network simulator [23]. Figure 4 summarizes the results obtained
for a network with the following parameters: B =
10
7
bits/sec
8 bits/char1000 char/packet
=
1250 packets/sec, T
p
= .04 sec, q
max
= 250 packets, a = 1 packet/RTT,
m = 1/2. As seen in the Figure 4, the theoretical predictions given by (16),
(17), (19) match the simulation results quite accurately. Some mismatch can
be observed for large number of ows. However, this mismatch only starts to
become signicant when the drop rates are around 1%, which is an unusually
large value. This mismatch is mainly due to two factors: the quantization of the
window size and a crude modeling of the fast-recovery algorithm [2]. We are
now in the process of incorporating these two features into our hybrid model to
obtain formulas that are accurate also in very congested networks.
5 Conclusion
In this paper we proposed a hybrid model for Reno congestion control. Using
this model, we analyzed both the transient and the steady-state behavior of n
TCP ows competing for the available bandwidth on a dumbbell network topol-
ogy. Our model conrmed formulas for the steady-state behavior that can be
found in the literature and also derive new relationships between the several
quantities of interest. We were also able to explain the ow synchronization phe-
nomena that have been observed in simulations and in real networks but, to
the best of our knowledge, have not been theoretically justied. We were also
able to demonstrate that the limit cycle that corresponds to ow synchroniza-
tion is globally exponential stable. This means that synchronization will occur
even if the ows start unsynchronized or lose synchronization because of some
temporary disturbance.
302 J.P. Hespanha et al.
10
0
10
1
10
5
10
4
10
3
10
2
n
Drop rate
NS simulation
Theoretical prediction
10
0
10
1
0
0.05
0.1
0.15
0.2
0.25
0.3
n
Average roundtrip time
NS simulation
Theoretical prediction
10
0
10
1
10
2
10
3
n
Throughput
NS simulation
Theoretical prediction
Fig. 4. Comparison between the predictions obtained from the hybrid model and the
results from ns-2 simulations.
We are now in the process of generalizing the analysis presented here to dif-
ferent network topologies; other congestion control mechanisms (such as Tahoe,
Vegas, and Equation-Based); and dierent queuing policies (such as drop-head,
Random Drop, RED, and SRED). We are also exploring mechanisms that can
be used to avoid the undesirable synchronization. Another application of the
hybrid model derived here is the detection of abnormalities in TCP trac ows.
This has important applications in network security.
Appendix
To derive equation (6), suppose that drops occurred at some normalized time
k
at which the system entered the queue-not-full state and therefore that q(
k
) =
q
max
. Denoting by
k
the normalized time at which the next drop occurs, for
[
k
,
k
), we have
w
i
() = w
i
(
k
) + a(
k
), i 1, 2, . . . , n,
q() = e
(
k
)
_
q
max
+ BT
p
+ an
n

i=1
w
i
(
k
)
_
+
+ an(
k
) +
n

i=1
w
i
(
k
) BT
p
an.
Hybrid Modeling of TCP Congestion Control 303
We assumed here that q remains positive during the whole interval. Since a new
drop occurs at the normalized time
k
, we must have q(
k
) = q
max
. Because of
qs continuity, we must then have
q
max
= e
(
k

k
)
_
q
max
+ BT
p
+ an
n

i=1
w
i
(
k
)
_
+
+ an(
k

k
) +
n

i=1
w
i
(
k
) BT
p
an.
We can then solve this equation to compute the normalized time interval
k

k
and obtain
q
max
+ BT
p

n
i=1
w
i
(
k
)
an
=

k

k
1 e
(
k

k
)
1,
which is equivalent to
k

k
= f
1
(s
k
). Equation (6) is a consequence of
this and the fact that the system enters the queue-not-full state again at time

k+1
:=
k
+ 1. .
References
1. V. Jacobson, Congestion avoidance and control, in Proc. of SIGCOMM, vol. 18.4,
pp. 314329, Aug. 1988.
2. V. Jacobson, Modied TCP congestion avoidance algorithm. Posted on end2end-
interest mailing list, Apr. 1990.
Available at ftp://ftp.ee.lbl.gov/email/vanj.90apr30.txt.
3. M. Allman, V. Paxson, and W. Stevens, TCP congestion control, RFC 2581,
p. 13, Apr. 1999.
4. K. Fall and S. Floyd, Simulation-based comparisons of Tahoe Reno and SACK
TCP, Computer Communication Review, vol. 27, pp. 521, July 1996.
5. Y. Yang and S. Lam, General AIMD congestion control. technical report, Tech.
Rep. TR-200009, Department of Computer Science, University of Texas at Austin,
May 2000.
6. T. Ott, J. H. B. Kemperman, and M. Mathis, Window size behavior in TCP/IP
with constant loss probability, in Proc. of the DIMACS Workshop on Perfor-
mance of Realtime Applications on the Internet, Nov. 1996.
7. J. Mahdavi and S. Floyd, TCP-friendly unicast rate-based ow control. Technical
note sent to the end2end-interest mailing list, Jan. 1997.
8. T. V. Lakshman, U. Madhow, and B. Suter, Window-based error recovery and ow
control with a slow acknowledgment channel: A study of TCP/IP performance,
in Proc. of INFOCOMM, Apr. 1997.
9. M. Mathis, J. Semke, J. Mahdavi, and T. Ott, The macroscopic behavior of the
TCP congestion avoidance algorithm, Computer Communication Review, vol. 27,
July 1997.
10. S. Floyd, M. Handley, J. Padhye, and J. Widmer, Equation-based congestion
control for unicast applications. To appear in SIGCOMM, May 2000.
304 J.P. Hespanha et al.
11. L. Zhang, S. Shenker, and D. D. Clark, Observations on the dynamics of a con-
gestion control algorithm: The eects of two-way trac, in Proc. of SIGCOMM,
Sept. 1991.
12. S. Floyd and V. Jacobson, On trac phase eects in packet-switched gateways,
Internetworking: Research and Experience, vol. 3, pp. 115116, Sept. 1992.
13. S. Floyd and V. Jacobson, Random early detection gateways for congestion avoid-
ance, IEEE/ACM Trans. on Networking, vol. 1, pp. 397413, Aug. 1993.
14. L. Tavernini, Dierential automata and their discrete simulators, Nonlinear
Anal. Theory, Methods, and Applications, vol. 11, no. 6, pp. 665683, 1987.
15. A. S. Morse, D. Q. Mayne, and G. C. Goodwin, Applications of hysteresis
switching in parameter adaptive control, IEEE Trans. Automat. Contr., vol. 37,
pp. 13431354, Sept. 1992.
16. A. Back, J. Guckenheimer, and M. Myers, A dynamical simulation facility for
hybrid systems, in Grossman et al. [29].
17. A. Nerode and W. Kohn, Models for hybrid systems: Automata, topologies, sta-
bility, in Grossman et al. [29], pp. 317356.
18. P. J. Antsaklis, J. A. Stiver, and M. D. Lemmon, Hybrid system modeling and
autonomous control systems, in Grossman et al. [29], pp. 366392.
19. R. W. Brockett, Hybrid models for motion control systems, in Essays in Con-
trol: Perspectives in the Theory and its Applications (H. L. Trentelman and J. C.
Willems, eds.), pp. 2953, Boston: Birkhauser, 1993.
20. M. S. Branicky, V. S. Borkar, and S. K. Mitter, A unied framework for hybrid
control: Background, model and theory, in Proc. of the 33rd Conf. on Decision
and Contr., vol. 4, pp. 42284234, Dec. 1994.
21. M. S. Branicky, Studies in Hybrid Systems: Modeling, Analysis, and Control. PhD
thesis, MIT, Cambridge, MA, June 1995.
22. J. Lygeros, C. Tomlin, and S. Sastry, Multi-objective hybrid controller synthesis:
Least restrictive control, in Proc. of the 36th Conf. on Decision and Contr., vol. 1,
pp. 127132, Dec. 1997.
23. The VINT Project, a collaboratoin between researchers at UC Berkeley, LBL,
USC/ISI, and Xerox PARC, The ns Manual (formerly ns Notes and Documenta-
tion), Oct. 2000.
Available at http://www.isi.edu/nsnam/ns/ns-documentation.html.
24. J. P. Hespanha, S. Bohacek, K. Obraczka, and J. Lee, Hybrid modeling of tcp
congestion control, tech. rep., University of Southern California, Los Angeles, CA,
Oct. 2000.
25. A. W. Naylor and G. R. Sell, Linear Operator Theory in Engineering and Science.
No. 40 in Applied Mathematical Sciences, New York: Springer-Verlag, 1982.
26. J. Padhye, V. Firoiu, D. Towsley, and J. Kurose, Modeling TCP throughput: a
simple model and its empirical validation, in Proc. of SIGCOMM, Sept. 1998.
27. V. Misra, W. Gong, and D. Towsley, Stochastic dierential equation modeling and
analysis of TCP-windowsize behavior, in In Proceedings of PERFORMANCE99,
(Istanbul, Turkey), 1999.
28. F. Baccelli and D. Hong, TCP is max-plus linear, in Proc. of SIGCOMM, Sept.
2000.
29. R. L. Grossman, A. Nerode, A. P. Ravn, and H. Rishel, eds., Hybrid Systems,
vol. 736 of Lecture Notes in Computer Science. New York: Springer-Verlag, 1993.

You might also like