STATE-DEPENDENT DELAY SYSTEM MODEL FOR CONGESTION
CONTROL
Konstantin E. Avrachenkov
INRIA Sophia Antipolis, 2004 route des Lucioles, B.P. 93
06902, Sophia Antipolis Cedex, France
Wojciech Paszke
Institute of Control and Computation Engineering
University of Zielona G
´
ora, Poland
Keywords:
Congestion control, system with state dependent delays, stability investigation, simulations, Simulink
Abstract:
This paper considers the problem of the stability for a control system with a state-dependent delay. Systems
with state-dependent delays arise naturally in the data network congestion control schemes. Simple analytical
studies of stability are provided for a particular set of initial conditions. Then, to verify these results and
to extend the stability analysis, the Simulink-based simulator is presented and described. The developed
simulator allows us to extend stability analysis for a variety of sets of initial conditions.
1 INTRODUCTION
In data networks such as Internet or ATM one needs
to control the sending rate of data injected into the
network. For instance, in the Internet this task is
performed by Transmission Control Protocol (TCP)
(Stevens, 1994). The control of the data sending rate
is essentially based on the delayed information which
is frequently source of instability.
In several recent paper (Deb and Srikant, 2003; Jo-
hari and Tan, 2000; Kelly, 2001; Massoulie, 2000;
Vinnicombe, 2002) the researchers have analysed the
sending rate control models for data networks with
fixed delays. However, it is known (see e.g., (Altman
et al., 2001)) that the value of the delay actually de-
pends on the sending rate. In the present paper, we
make the first attempt to analyse a rate control sys-
tem with a state-dependent delay. In the next section
we introduce our model. In Section 3, we provide
an analytic study of the stability for some particu-
lar set of the initial conditions. Then, in Section 4
we described a Simulink based model and in Sec-
tion 5 we verify and extend the analytic conditions us-
ing that Simulink model. Finally, in Section 6 we
provide conclusions together with some directions for
future research.
2 MODEL FORMULATION
Here we consider a single bottleneck network model.
We represent the data sent into the network by the
fluid which injection rate evolves according to the fol-
lowing equation
˙y(t) = α βy(t µ
1
x(t)), (1)
where x(t) is the amount of the data stored at the bot-
tleneck router. We can think of the above equation as
an approximation of the total rate evolution of multi-
plexed TCP sources passing through the same bottle-
neck router. The term α corresponds to the additive
increase and the term βy(t µ
1
x(t)) corresponds
to the multiplicative decrease of TCP in the Conges-
tion Avoidance phase. Since in the present Internet
state the main component of the information delay
corresponds to data queueing, in our model we ne-
glect the propagation delay and model the queueing
delay by µ
1
x(t), where µ is a capacity of the bottle-
neck router.
By using the fluid approach, the following evolu-
tion of data queued at the bottleneck router is consid-
ered
˙x(t) =
½
y(t) µ, if x(t) > 0,
(y(t) µ)
+
, if x(t) = 0,
(2)
where (z)
+
= max{z, 0} and (z)
= min{z, 0}. In
general, this expression shows that the derivative of
the queue content is equal to the incoming rate minus
the drain rate and it cannot become negative. As a re-
sult the sending rate can tend to infinity and in fact a
275
E. Avrachenkov K. and Paszke W. (2004).
STATE-DEPENDENT DELAY SYSTEM MODEL FOR CONGESTION CONTROL.
In Proceedings of the First International Conference on Informatics in Control, Automation and Robotics, pages 276-281
Copyright
c
SciTePress
whole system becomes unstable. To avoid this prob-
lem, the extension of (2) is considered
˙x(t) =
(
(y(t) µ)
+
, if x(t) = 0,
y(t) µ, if 0 < x(t) < M,
(y(t) µ)
, if x(t) = M,
(3)
where M denotes the maximum queue size in bottle-
neck router.
To reduce the number of parameters, let us intro-
duce the following change of variables
ˆx := µ
1
x, ˆy := µ
1
y,
ˆα := µ
1
α,
ˆ
β := µ
1
β,
and to rewrite (1) and (2) as follows
˙
ˆy(t) = ˆα
ˆ
βˆy(t ˆx(t)) (4)
˙
ˆx(t) = ˆy(t) 1. (5)
for 0 < ˆx(t) < M .
3 ANALYTICAL STUDY OF
STABILITY
It turns out that it is easy to perform the analytical
study of the system stability with (2) for a particular
set of initial conditions. Namely, we have the follow-
ing result.
Lemma 1 Let ˆx(0) = 0 and ˆy(0) [0, 1] and
ˆα
ˆ
β
< 1, (6)
then the system of equations (4) and (5) is asymptot-
ically stable.
Proof 1 We note that if the system starts from the ini-
tial conditions ˆx(0) = 0 and ˆy(0) [0, 1], and in ad-
dition ˆα/
ˆ
β < 1, the data backlog ˆx(t) remains zero
and one can view the equation (4) as a linear time-
invariant differential equation. ¥
4 SIMULINK-BASED STUDY OF
STABILITY
To verify the stability condition (6) and to study sys-
tem behavior under nonzero initial condition and dif-
ferent evolutions of ˙x(t), simulation tools, such as
Simulink, can be used.
Since the system is represented by (4) and (5)
then the stability region can be considered in two-
dimensional space.
In the last few years, Simulink has become the
most widely used software package for modeling and
Figure 1: The variable transport delay block
simulating dynamic systems (The MathWorks, ). It
allows us to describe, to simulate, to evaluate, and
to refine a system’s behavior through standard and
custom block libraries. Simulink integrates seam-
lessly with MATLAB, which provide an immediate
access to an extensive range of analysis and design
tools. These benefits make Simulink the tool of
choice for control system design, signal processing
system design, communications system design, and
other simulation applications. Moreover, this soft-
ware package gives us ability to simulate systems that
would not be possible to analyze in analytical way.
Faced with the above facts, the Simulink pack-
age has been chosen as a basis to build the sim-
ulator for the system represented by (4) and (5).
The main part of this simulator is the variable
transport delay block, which is used to simu-
late a time delay depended on the signal ˆx(t) in (4).
The block accepts two inputs: the first input is the
signal that passes through the block (in our case ˆy(t))
and the second input is the time delay, as shown in
Figure 1. The other parts of the simulator are rather
standard and the block diagram of the simulator is
presented in Figure 2.
5 SIMULATION RESULTS
In this section we present the results of simulation
studies on the system represented by (4) and (5) pre-
pared with described above simulator.
5.1 An example of unstable system
The data for the first example are as follows.
ˆα = 0.4;
ˆ
β = 0.1;
Figures 3 and 4 show the ˆx signal and the response of
this system (ˆy) respectively. It is clear that the size of
delay increases due to ˆx(t) and as the result we
conclude that the system represented by (4) and (5) is
unstable.
signal y'
signal y
signal x
-K-
\beta
alpha
\alpha
Variable
Delay
Transport
Delay
Switch >=
Relational
Operator5
==
Relational
Operator2
>
Relational
Operator1
Product6
Product5
Product3
Product2
Product
>=
Oper. 4
>=
Oper. 3
1
s
Integrator1
1
s
Integrator
3
Initial
Value
else { }
In1 Out1
If Action 3
if { }
In1 Out1
If Action 2
elseif { }
In1 Out1
If Action 1
u1
u2
if(u1 >= u2)
elseif(u1==0)
else
If
-1
Constant9
0
Constant8
0
Constant3
0
Constant1
Clock
3.0
Buffor size
1
Figure 2: The simulator
0 100 200 300 400 500 600 700 800 900
0
2
4
6
8
10
12
14
16
x 10
4
Figure 3: Signal ˆx(t) of unstable system
0 100 200 300 400 500 600 700 800 900
0
50
100
150
200
250
300
350
400
Figure 4: Signal ˆy(t) of unstable system
5 10 15 20 25 30 35 40 45 50
0
0.05
0.1
0.15
0.2
0.25
0.3
0.35
Figure 5: Signal ˆy(t) of the stable system
5.2 An example of stable system
As the second example, let us consider the following
system parameters
ˆα = 0.2;
ˆ
β = 0.6;
Figure 5 shows the response of this system (ˆy). In this
case the delay ˆx = 0 (it is not presented here) and the
resulting system represented by (4) and (5) is stable.
5.3 Stability region
Previously presented simulation results do not give us
chance to conclude for what conditions (parameters
variables) the system is stable. Therefore, thousands
of the simulations have to be done to provide the sta-
bility region in two-dimensional space of parameters
ˆα and
ˆ
β.
In order to do a such large number of simulations,
a typical MATLAB M-file is used to run them. This
script generates a large amount of the systems (4) and
(5) with various values of parameters ˆa and
ˆ
b. The
stability of the system is analyzed with the following
simple condition
½
|ˆy(τ) const| < ² system is stable
|ˆy(τ) const| > ² system is unstable
(7)
for τ [t, T ] and for some given t and T . Moreover,
the M-file is implementation an iterative algorithm of
the form
(1) Set ˆα
0
= 0,
ˆ
β
0
= 0 and zero initial conditions
(2) Run a simulation in Simulink with provided pa-
rameters
(3) Write the simulation parameters into memory
(4) Check the stability condition (7). If system is sta-
ble, then set k
n
= 0 otherwise set k
n
= 1 (system
is stable)
(5) Increase variables ˆa and
ˆ
b with the formula ˆα
n+1
=
ˆα
n
+ ˆα and
ˆ
β
n+1
=
ˆ
β
n
+
ˆ
β
(6) If a specified number of iteration is performed then
exit otherwise set n = n + 1 and return to Step 2
Using the above algorithm, the result of the simula-
tion is presented on Figure 6. Note, that rhe resulting
value 0 denotes stable system. It is important to note
that the simulation result can be put in the MATLAB
workspace for postprocessing and visualization.
It is straightforward to see that the simulation result
shown on Figure 6 confirms the analytical result pro-
vided by Proposition 1 (6).
Note that all computations and simulations
have been performed with MATLAB 6.5 and the
Simulink 5.0.
5.4 A system with a bottleneck
router with finite buffer
It was shown in previous section that system (4) under
delay evaluation (2) could be unstable. To overcome
this drawback we proceed to apply the evaluation (3)
for data stored in bottleneck router. The effectiveness
of the proposed control scenario is confirmed by the
simulations performed for the data
ˆα = 0.79;
ˆ
β = 0.7, y(0) = 3
and following maximal buffer sizes
1. M = 0.6 (The simulations results are : Figures 7,
8).
0 10 20 30 40 50 60 70 80 90 100
0
0.1
0.2
0.3
0.4
0.5
0.6
0.7
Figure 7: The signal ˆx(t)
10 20 30 40 50 60
0
0.2
0.4
0.6
0.8
1
1.2
1.4
Figure 8: The signal ˆy(t)
2. M = 2.3 (The simulations results are : Figures 9,
10).
3. M = 2.6 (The simulations results are : Figures 11,
12).
4. M = 3.0 (The simulations results are : Figures 13,
14).
It is important to note that in some cases ˆx(t) exceeds
the level of M. It is caused by some small delay added
to avoid problems with simulations under Simulink
(high frequency oscillations on the level of M).
6 CONCLUSION
This paper studies stability of the rate control system
with a state-dependent delay for data networks. The
analytical condition for stability of the system start-
ing from some particular set of initial conditions is
provided. Then, Simulink based simulations are
used to verify the stability conditions. Clearly, the
1
0.8
0.6
0.4
0.2
0
0
0.1
0.2
0.3
0.4
0.5
0.6
0.7
0.8
0.9
1
0
0.2
0.4
0.6
0.8
1
b
a
Figure 6: Stability region
0 50 100 150 200 250 300
0
0.5
1
1.5
2
2.5
Figure 9: The signal
˙
ˆx(t)
0 50 100 150 200 250 300
0
0.2
0.4
0.6
0.8
1
1.2
1.4
Figure 10: The signal ˆy(t)
0 50 100 150 200 250 300
0
0.5
1
1.5
2
2.5
3
Figure 11: The signal ˆx(t)
0 50 100 150 200 250 300
0
0.2
0.4
0.6
0.8
1
1.2
1.4
1.6
Figure 12: The signal
˙
ˆy(t)
0 50 100 150 200 250 300
0
0.5
1
1.5
2
2.5
3
3.5
Figure 13: The signal ˆx(t)
0 50 100 150 200 250 300
0
0.5
1
1.5
2
2.5
3
3.5
Figure 14: The signal
˙
ˆy(t)
presented model provides opportunities for future an-
alytical and simulation based research.
REFERENCES
Altman, E., Avrachenkov, K., Barakat, C., and Nunez-
Queija, R. (2001). Tcp modeling in the presence of
nonlinear window growth. In Proceedings of ITC-17.
Salvador da Bahia, Brazil, September 2001.
Deb, S. and Srikant, R. (2003). Global stability of conges-
tion controllers for the internet. IEEE Transactions on
Automatic Contro, 48(6):1055–1060.
Johari, R. and Tan, D. (2000). End-to-end congestion con-
trol for the internet: delays and stability. Technical re-
port, Statistical Laboratory, University of Cambridge.
Kelly, F. (2001). Mathematics Unlimited 2001 and be-
yond, chapter Mathematical modelling of the Internet,
pages 685–702. Springer.
Massoulie, L. (2000). Stability of distributed congestion
control with heterogeneous feedback delays. Techni-
cal Report MSR-TR-2000-111, Microsoft Research.
Stevens, W. (1994). TCP/IP Illustrated. Addison-Wesley.
The MathWorks, I. Using Simulink version 5.
Vinnicombe, G. (2002). On the stability of networks op-
erating tcp-like congestion control. In Proceedings of
IFAC 2002.