Stability of TCP-RED Congestion Control - Semantic Scholar

1 downloads 0 Views 199KB Size Report
Feb 5, 2001 - in [1] aiming at reducing the risk of global synchronization of TCP ... in which sufficient stability conditions are given for a TCP-RED system.
Stability of TCP-RED Congestion Control P. Kuusela∗, P. Lassila and J. Virtamo Networking Laboratory Helsinki University of Technology (HUT) P.O.Box 3000, FIN-02015 HUT, Finland Email: {Pirkko.Kuusela, Pasi.Lassila, Jorma.Virtamo}@hut.fi February 5, 2001

Abstract We present a method for deriving necessary and sufficient conditions for the local stability of the TCP-RED congestion control. The analysis is based on a differential equation model of the system. One equation describes the dynamics of the TCP source population operating in the congestion avoidance phase. The TCP dynamics are driven by another differential equation representing the RED controlled queue, which determines, in the form of a packet loss function, the feedback to the TCP population. The stability of the system is characterized in terms of certain stability parameters and we illustrate how the physical RED parameters affect the stability. Finally, different stability conditions (sufficient vs. necessary) are compared by analyzing a further simplified TCP model, where the queue feedback is a packet loss function depending only on the aggregate traffic rate of the TCP population. Keywords: IP congestion control, traffic management and control, Random Early Detection, TCP, stability ∗

Contact author

1

Kuusela: Stability of TCP-RED Congestion Control

1

2

Introduction

Random Early Detection (RED) is an Active Queue Management (AQM) method introduced in [1] aiming at reducing the risk of global synchronization of TCP sources. Also, lately RED has been used to provide service differentiation and it appears in many quality of service schemes. Although the idea of the RED algorithm is simple, practical parameter tuning has appeared to be troublesome and there is a considerable literature on recommendations on parameters as well as modifications to the original algorithm, see, e.g., [2, 3, 4, 5] and references therein. Typically, the results are based on simulation studies. The simulation approaches have been complemented by recent analytical models [6, 7, 8]. For studying parameter tuning or stability, analytical models may provide new insight by indicating important dependencies in the problem or detecting a problematic parameter region that is hit only occasionally in simulation studies. This paper analyzes the stability of the interaction of an idealized TCP population and a RED controlled queue. The work is based on [9], in which a dynamical model for TCP and RED interaction is presented in terms of differential equations for the expectations of the key variables. Related independent work on developing dynamical models for the TCP-RED system has been done in [8]. Also, dynamic traffic models with delays and sufficient conditions for stability have been analyzed in [10, 11]. Due to round-trip delays all above models are expressed in terms of retarded functional differential equations (RFDE). The goal of our work is similar to the one in [12], in which sufficient stability conditions are given for a TCP-RED system. However, we utilize a different technique and in some respects our model is more detailed, as explained in [9]. Moreover, the inaccurate linearization1 in [12] fails to capture the correct delay and feedback structure of the system. In this paper we present a method for deriving not only sufficient but also necessary conditions 1

The correct linearization of terms like x(t)x(t − τ ) is of the form x0 x(t) + x0 x(t − τ ), not 2x0 x(t). Hence the

transfer functions are more complex containing additional exponential terms.

Kuusela: Stability of TCP-RED Congestion Control

3

for the stability of TCP-RED interaction in terms of certain stability parameters and we illustrate how the actual RED parameters affect the stability. The paper is organized as follows: Our model is reviewed in Section 2. The method for the stability analysis is explained generally in Section 3 and it is applied to our TCP-RED model in Section 4. Section 5 discusses briefly the stability of the plain TCP model and different stability conditions are compared. Concluding remarks are given in Section 6.

2

Model

We analyze a closed loop control system characterizing the interaction between a RED controlled queue and the aggregate traffic rate of a TCP source population, where each source operates in the congestion avoidance phase (i.e., timeouts are not taken into account). A system model has been ¯ the expected value of the arrival derived in Kuusela et al. [9] and it is as follows. We denote by λ(t) rate of the TCP source population, which is assumed to consist of m homogeneous sources with a constant round-trip time R and a random transmission phase. The queue behavior is described by the expected values of the averaged queue length process s¯(t), which also determines the RED dropping probability, and the instantaneous queue length process q¯(t). Additionally, we denote by π0 (t) and πK (t) the probabilities that the queue is empty or full, respectively, and by PL (t) the probability that a packet is lost, given by  PL (t) = 1 − (1 − p(¯ s(t))(1 − πK (t) , where p(s) is the probability that the packet is dropped by the RED algorithm,     0, s < Tmin ,    pmax (s − Tmin ) p(s) = , Tmin ≤ s ≤ Tmax ,  Tmax − Tmin      1, s > Tmax . Under the assumptions stated in [9], the following RFDE model can be derived to describe the

Kuusela: Stability of TCP-RED Congestion Control dynamics of the system:  d  ¯ − R/2)β(¯  s¯(t) = λ(t q (t) − s¯(t)),   dt          d ¯ − R/2)(1 − πK (t))(1 − p(¯ s(t))) − µ(1 − π0 (t)), q¯(t) = λ(t  dt          ¯ − R) d¯ m λ(t PL (t − R/2) ¯ ¯    . λ(t) = − λ(t)λ(t − R) + (1 − PL (t − R/2)) 2 ¯ dt 2m R λ(t)

4

(1)

In the above, the delays R/2 in the arguments reflect the assumption that it takes the time R/2 for the packets to travel from the sources to the buffer, and that information on packet losses in the buffer come to the sources also with the delay R/2 (also, we assume that the destination is ¯ close to the buffer causing no additional delay). Basically, the equation for λ(t) is from the model developed by Kelly [10] except for the different delays (compare Eqs (10) and (11) in Section 5). The equation for s¯(t) represents the expected change in the averaged queue length s(t) for a packet arrival. Finally, for the equation of q¯(t) it is assumed that the aggregate traffic generated by the TCP source population can be characterized sufficiently accurately by an inhomogeneous Poisson ¯ process with rate λ(t), in which case the equation represents the expected change in the difference of the arrival and departure rates in an M/G/1 queue. The accuracy of the above model was verified in [9] via simulations, where none of the stochastic approximations were used. We simplify (1) to facilitate the stability analysis. First, the buffer is assumed to have an infinite size, in which case PL (t) = p(s), i.e., losses are only due to RED drops. This is reasonable as, in practice, the buffers of modern routers are very large and, moreover, the operating point of our system should anyway be such that it is the RED algorithm that performs the congestion control, not the packet drops caused by buffer overflow. Additionally, we use a quasi-stationarity assumption for the queue length process q(t), which is based on the observation that, in practice, the weighting parameter of the RED algorithm, β, is very small. Then s(t) changes very slowly compared to q(t), and q¯(t) is sufficiently well approximated by the mean stationary queue length of a hypothetical queue length process, where the current value of the averaged queue length s(t) controlling the access to the queue is fixed. In our case, this amounts to saying that q¯(t) is

Kuusela: Stability of TCP-RED Congestion Control

5

approximated by the mean queue length of an M/G/1 queue receiving an arrival stream thinned by the factor (1 − p(¯ s(t)), i.e., the RED packet non-discard probability. Without loss of generality, letting the mean service time to equal 1, and using the above approximation for q¯(t) together with the assumption of an infinite queue length, we can directly relate q¯(t) to the arrival rate λ(t) via the well known Pollaczek-Khintchine formula q¯(λ) = λ +

 λ2 1 + C2 , 2(1 − λ)

(2)

where C 2 is the variance of the packet length distribution. Hence our RFDE model becomes     d  ¯ ¯  s¯(t) = λ(t − R/2)β q¯ (1 − p(¯ s(t)))λ(t − R/2) − s¯(t) ,     dt    ¯ − R)  d¯ p(¯ s(t − R/2)) ¯ ¯ m λ(t   . λ(t) = − λ(t)λ(t − R) + (1 − p(¯ s(t − R/2))) 2 ¯ dt 2m R λ(t)

(3)

Observe that simplifying the system from (1) to (3) does not change the qualitative properties of the system, although in some cases (1) might be slightly more prone to oscillations than (3).

3

Stability Analysis

We discuss briefly the stability analysis related to RFDEs, for details we refer to [13, 14]. The theory for RFDEs parallels the one for ODEs. Consider a vector equation ˙ x(t) = Ax(t) +

X

Bi x(t − τi ), τi > 0 ∀i.

(4)

i

The role of eigenvalues for ODEs is replaced by the roots of the characteristic equation ! X det ∆(z) = det zI − A − e−zτi Bi = 0 i

and the solution of (4) is asymptotically characterized by ezj t -terms, where det ∆(zj ) = 0. Contrary to polynomial eigenvalue equations for ODEs, the characteristic equation can have infinitely many roots (but only finitely many in the right half-plane (RHP)). The role of the initial condition with ODEs is replaced by the initial “history” and hence all stability results also change accordingly meaning that large oscillations around an equilibrium may not be guaranteed to converge

Kuusela: Stability of TCP-RED Congestion Control

6

towards the equilibrium value (as would be with ODEs). Also recall that the methods based on linearizations give only local results. The asymptotic stability of (4) is characterized by the absence of roots in the RHP or on the imaginary axis. However, in general, the numerical computation of the roots of the characteristic equation is not a well posed approach to study the stability. Sufficient conditions for stability can be obtained using results on roots of certain characteristic equations, see [10, 11], also Lyapunov methods can be generalized to RFDEs to give sufficient conditions for stability or instability. Our approach, see [13] for a theoretical discussion, is to look for necessary and sufficient conditions for stability in a parameter space (α1 , α2 ) ∈ R × R, where α1 , α2 are external parameters on which A and B (and possibly the τi ) depend. We study when the root of the characteristic equation passes the imaginary axis, causing non-decaying oscillatory solutions, and then unstable solutions when the root is in the RHP. Given a characteristic equation F (α1 , α2 , z) = 0, which is analytic in z, we define G1 (α1 , α2 , x, y) = Re F (α1 , α2 , x + iy), G2 (α1 , α2 , x, y) = Im F (α1 , α2 , x + iy). Suppose that we have found a point (α01 , α02 , 0, y) such that G1 (α01 , α02 , 0, y) = G2 (α01 , α02 , 0, y) = 0, i.e., there is a root on the imaginary axis. If the matrix    M=

is nonsingular, the equations

∂G1 ∂α1

∂G1 ∂α2

∂G2 ∂α1

∂G2 ∂α2

  (α01 ,α02 ,0,y)

   G1 (α1 , α2 , 0, y) = 0,   G2 (α1 , α2 , 0, y) = 0

have a locally unique solution curve (α1 (y), α2 (y)). Moreover, the critical roots are in the RHP in the parameter space to the left of curve (α1 (y), α2 (y)), when we follow this curve in the direction of increasing y, whenever det M < 0 and to the right when det M > 0. This allows us to detect the stable region in the parameter space in which there are no critical roots in the RHP.

Kuusela: Stability of TCP-RED Congestion Control

4

7

Numerical Examples

Here we illustrate the use of the method given in this paper. We use the M/D/1 queue as the queue model in which case C 2 = 0 in (2) and the queue length is given by q¯(λ) = λ +

λ2 . 2(1 − λ)

(5)

Note that there is no difficulty in using any other service time distribution. Equilibrium and Linearization ¯ ∗ ) denote the equilibrium, i.e., the Let f and g denote the right-hand sides of (3) and let (¯ s∗ , λ ¯ ∗ ) = g(¯ ¯ ∗ ) = 0. To perform the linearization of (3) around (¯ ¯∗ ) we denote solution of f (¯ s∗ , λ s∗ , λ s∗ , λ ¯ 1 = λ(t), ¯ ¯ 2 = λ(t ¯ − R/2), λ ¯ 3 = λ(t ¯ − R), s¯1 = s(t) and s¯2 = s(t − R/2), and (3) becomes λ λ     d  ¯ ¯ 2 ),  s1 , λ s1 ))λ2 − s¯1 = f (¯ s¯1 (t) = λ2 β q¯ (1 − p(¯   dt      ¯3  s2 ) ¯ ¯ mλ  ¯1, λ ¯3 ). ¯ 1 = − p(¯  dλ s2 )) 2 ¯ = g(¯ s2 , λ λ1 λ3 + (1 − p(¯ dt 2m R λ1 ¯ T , the linearized system is of the form In vector notation x(t) = [¯ s(t), λ(t)] ˙ x(t) = Ax(t) + Bx(t − R/2) + Cx(t − R), where A, B and C are the Jacobian matrices     ∂f ∂f 0 a    11 ¯  A =  ∂ s¯1 ∂ λ1  = , ∂g ∂g 0 a 22 ¯ ∂ s¯1

∂ λ1

  B=

¯∗ ) (¯ s∗ ,λ

  0 C= 0



∂f ¯2 ∂λ

∂g ∂ s¯2

∂g ¯2 ∂λ



0  

∂g ¯3 ∂λ

∂f ∂ s¯2

¯∗ ) (¯ s∗ ,λ





  ¯∗) (¯ s∗ ,λ

 0 b 12   = , b21 0



 0 0  = . 0 c22

¯ ∗ ), the partial derivative c22 = 0 and, thus, the linearized In our case, at the equilibrium (¯ s∗ , λ equation reads ˙ x(t) = Ax(t) + Bx(t − R/2),

(6)

Kuusela: Stability of TCP-RED Congestion Control

8

with the non-zero matrix elements being a11 |(¯s∗ ,λ¯ ∗ )

¯∗ β = λ

a22 |(¯s∗ ,λ¯ ∗ ) = −



 ∗ 0 ∗ 0 ∗ ¯∗ ¯ − λ p (¯ s )¯ q (1 − p(¯ s ))λ ) − 1 ≤ 0,

¯ ∗ p(¯ s∗ ) λ ≤ 0, m

¯ ∗ β(1 − p(¯ ¯ ∗ ) ≥ 0, b12 |(¯s∗ ,λ¯ ∗ ) = λ s∗ ))¯ q 0 ((1 − p(¯ s∗ ))λ   ¯∗ 2 (λ ) m 0 ∗ b21 |(¯s∗ ,λ¯ ∗ ) = −p (¯ s ) + 2 ≤ 0. 2m R The characteristic equation of the linearized system (6) is   a11 − z b12 e−zR/2 det A + Be−zR/2 − zI = b21 e−zR/2 a22 − z

= 0,

which results in ezR (a11 − z)(a22 − z) − b12 b21 = 0.

(7)

Determining the Stability Region We rewrite (7) as ezR (α1 + z)(α2 + z) + α0 = 0,

(8)

where α1 = −a11 , α2 = −a22 and α0 = −b12 b21 . Note that all these three parameters are nonnegative. The requirement for the asymptotic stability is that in the parameter space of (8), i.e., the space consisting of the values of the tuple (α0 , α1 , α2 ), (8) has no roots with positive real parts. By following the analysis in Section 3, we write z = x + iy in (8), separate the real and imaginary parts, and study the problem in the parameter space (α0 , α1 ) taking α2 as a fixed parameter. Then we solve for α0 and α1 in terms of (x, y, α2 ),  eRx y(α22 + 2α2 x + x2 + y 2 )   α = , 0   γ(x, y)       (α + 2x)y cos(Ry) + (α2 x + x2 − y 2 ) sin(Ry)   α1 = − 2 , γ(x, y)

(9)

Kuusela: Stability of TCP-RED Congestion Control

9

where γ(x, y) = y cos(Ry) + (x + α2 ) sin(Ry). As a11 , a22 , b12 , b21 and R are real, if z is a root of (7), then also the complex conjugate of z is a root. Hence, it is enough to consider y ∈ [0, ∞). From (8) we can observe that when z is real and positive, i.e., x ≥ 0, y = 0, (8) determines a linear relation between α0 and α1 , α1 = cα0 − x, where c = −e−xR /(α2 + x). When these lines are plotted for a fixed value of α2 = 1 and R = 1, the lines sweep over the region as shown in Figure 1 (left graph). In the graph the principal line, x = 0, has been highlighted with a thick line and it goes through the origin. Then we plot the values of (α0 , α1 ), when x ≥ 0 and y ∈ (0, ∞). This is shown in Figure 1 (right graph). We illustrate the resulting curves for values x = 0 (solid lines), x = 0.1 (long dashed lines), and x = 0.2 (short dashed lines). The unstable side of the x = 0 curve is determined by the sign of γ(0, y), which coincides with the sign of det M in Section 3. For x = 0 when y runs from 0 to ∞, the first principal branch, illustrated with a thick line, starts from (

α22 −α2 , ) 1 + Rα2 1 + Rα2

and moves towards (∞, ∞) as y increases towards the first singularity of γ(0, y). Between the subsequent singularity points, as y increases, Eq. (9) defines branches ranging from (−∞, −∞) to (−∞, ∞), from which the critical roots move to the RHP on the “left” of the curve. On branches ranging from (∞, −∞) to (∞, ∞), the critical roots have positive real parts on the “right” of α2

2 the curve. Figure 1 (right graph) also illustrates how the branch from ( 1+Rα , −α2 ) towards 2 1+Rα2

(∞, ∞) changes as x increases (the lines close to the thick principal line) illustrating the unstable parameter space on the “right” of the principal curve. Combining the information of Figure 1 we arrive at Figure 2 (the right graph is a zoomed-in version of the left graph). Recall that the partial derivatives in the linearization indicated that α1 = −a11 ≥ 0 and α0 = −b12 b21 ≥ 0. Hence the stable region for the RED-TCP system is the upper right “triangular” region restricted by the lines α0 = 0 and α1 = 0 together with the curve

10

40

40

20

20 Α1

Α1

Kuusela: Stability of TCP-RED Congestion Control

0

0

-20

-20

-40

-40 -300-200-100 0 100 200 300 400 Α0

-300-200-100 0 100 200 300 400 Α0

Figure 1: Determining the stable region. 10 40 8 6

0

Α1

Α1

20

4 2

-20

0

-40 -300-200-100 0 100 200 300 400 Α0

-15 -10 -5

0 Α0

5

10

15

20

Figure 2: The complete stability region. with the parametric representation 

y(α22 + y 2 ) α2 y cos(Ry) − y 2 sin(Ry) ,− γ(0, y) γ(0, y)

 ,

where y ∈ (0, y0 ) and y0 is the smallest positive root of γ(0, y) = 0. Stability boundaries as functions of the RED parameters Having now identified the stability region for a fixed value of α2 , we produce a 3D-plot of the stability region as a function of α2 . To do this we fix the following physical parameters: the TCP population consists of m = 100 sources with R = 1000, and in the RED algorithm we fix Tmax = 50 and β = 0.002. (Choosing R to be 1000 times the average packet transmission time corresponds to a real life system where, assuming the packet size to be 500 bytes and the link speed to be 155 Mbit/s, R is (1000 × 8 × 500 bit )/155 Mbit/s ≈ 26 ms.) Figure 3 shows the stable region, which is above the boundary surface, together with a family of curves in the parameter space. On each curve Tmin is kept fixed and pmax is varied in the range (0.04, 1). For the different curves Tmin was

Kuusela: Stability of TCP-RED Congestion Control

11

Α1

Α2 Α0

Figure 3: An example of a 3D-stability region. varied in the range (0, 3) such that the “highest” curve corresponds to Tmin = 0 and the “lowest” curve corresponds to Tmin = 3. Next we plot the stability boundaries of the system as functions of the RED parameters for fixed TCP parameters, m = 100 and R = 1000. The results are shown in Figure 4. In both graphs β is kept the same, β = 0.002. The graph on the left shows the stability boundaries of pmax as a function of Tmin for some fixed values of Tmax . Interestingly, we can see that for a fixed Tmax and Tmin we may have two roots for pmax in the range [0, 1] meaning that the system is stable between these values of pmax . The right graph, on the other hand, shows the stability boundaries of Tmin as a function of Tmax for a fixed value of pmax . Another observation one can make from Figure 4 is that for the fixed values of R and m we have used, the system cannot be stabilized anymore if Tmin is chosen to be greater than approximately 2.6. The above curves can be used to set the RED parameters such that the system is stable for the given TCP population parameters. As an example, we examine the curve corresponding to Tmax = 50 in the left graph of Figure 4. Setting Tmin = 1 and pmax = 0.2 results in a stabilizing system. Then we set pmax = 0.1 which gives an unstable system with non-decaying oscillations. The resulting ¯ and s¯(t) are shown in Figure 5, where the stable system trajectories are depicted trajectories of λ(t) with solid lines and the unstable system trajectories with dashed lines. Note that the trajectories

Kuusela: Stability of TCP-RED Congestion Control 3

1 Tmax=35

0.8

Tmax=20

0.6 0.4

1

1.5 Tmin

pmax=0.4

1.5

pmax=0.2

1

Tmax=50 0.5

pmax=0.7

2

Tmax=100

0.2

pmax=1

2.5 Tmin

pmax

12

0.5 2

2.5

20

40

60

80 100 120 140 Tmax

Figure 4: stability boundaries as functions of RED parameters. 1.2

25

1

20 E@sD

E@ΛD

0.8 0.6 0.4

15 10 5

0.2 10

20

30

40

50

time

10

20

30

40

50

time

¯ Figure 5: Evolution of λ(t) and s¯(t) (unit of time is 1000 on the x-axis) for a stable system (solid lines) and unstable system (dashed lines). have been obtained by numerical solution of the original full system (1) with buffer size of 75 packets, thus showing that the simplifications made in the analysis do not affect the stability of the system. In the numerical examples shown here, we have chosen to keep the TCP population parameters fixed. However, it is just as easy to examine the system stability boundaries as functions of the TCP parameters.

5

TCP stability with a loss function

In this section we discuss briefly different stability conditions for the TCP behavior. We assume that the feedback from the queue is expressed by the packet loss probability which depends directly

Kuusela: Stability of TCP-RED Congestion Control

13

on the aggregate rate of the TCP population. Hence the results can be applied to different AQM methods by varying the loss function. We aim at comparing different stability conditions and showing that sufficient conditions may indeed be far from the actual stability boundary. Our model for the TCP behavior is a symmetrized version of Kelly’s model, which is  ¯ − R) ¯  PL λ(t d¯ ¯ − R) m λ(t − R) . ¯ λ(t ¯ − R) + 1 − PL λ(t λ(t) = − λ(t) ¯ dt 2m R2 λ(t)

(10)

Using linearization, time scaling and results on roots of the characteristic equation of the form z − a − be−z = 0 (see [13]), it is shown in [10] that the TCP behavior is asymptotically stable if   p R P0 > L exp 1 + 2PL (1 − PL ) . m PL In our model, we assume that the delays between the source and the queue are symmetric resulting in an equation with delay terms t − R/2 and t − R:  ¯ − R/2) ¯  PL λ(t d¯ ¯ − R/2) m λ(t − R) . ¯ λ(t ¯ − R) + 1 − PL λ(t λ(t) = − λ(t) 2 ¯ dt 2m R λ(t)

(11)

The corresponding stability condition for the above equation is ! r R 1 1 PL0 exp 1 + > PL (1 − PL ) , m 2 PL 2 showing that the symmetric version is more stable in this sense. Next we illustrate various sufficient conditions for the stability in the parameter space (a, b), a ≥ 0, b ≥ 0. A sufficient condition for the stability derived from the characteristic equation is b < e−(a+1) . Using Lyapunov methods, see [14], a sufficient stability condition becomes b < a. However, the region for necessary and sufficient stability is obtained as in Section 3, and it is the region below the parametric curve  (a, b) =

y −y cot(y), sin(y)

 ,

where y ∈ (0, π). These stability conditions are illustrated in Figure 6. We see that both sufficient conditions for stability are far from the exact stability condition.

Kuusela: Stability of TCP-RED Congestion Control

14

5

4

b

3

2 Char.eq. Suf. Lyap. Suf. Nes. & Suf.

1

0 0

1

2

3

4

5

a

Figure 6: Stability regions given by three methods: characteristic equation, Lyapunov function, and the necessary and sufficient stability condition. The stable region is below each curve.

6

Conclusions

We have analyzed the stability of a system of delay differential equations describing the dynamics of a population of TCP sources operating in the congestion avoidance phase in conjunction with a RED controlled queue. Note that the modeling technique is very flexible and allows analyzing easily other AIMD and AQM methods, as has been discussed in [9]. The delay differential equations have been expressed in terms of the expected values of the aggregate rate of the TCP population and the exponentially averaged queue length process. To facilitate the analysis some simplifications were made to reduce the dimensionality of the system, which, however, do not change the qualitative behavior of the system, as was shown in the numerical example. Our main contribution is a technique whereby it is possible to derive, not only sufficient, but also necessary conditions for the stability, which, as discussed in Section 5, can be significantly different from the sufficient conditions. The technique is based on the analysis of the characteristic equation of the system, linearized around its equilibrium. Instead of searching for the roots of the characteristic equation, we analyze the parameter space of the characteristic equation and solve numerically the part of the parameter space, where the characteristic equation has no solutions with positive real parts, thus revealing the stable parameter region. This can be done easily

Kuusela: Stability of TCP-RED Congestion Control

15

numerically. Moreover, we are also able to compute numerically stability boundaries of the system as functions of the RED or TCP parameters. The resulting curves can be directly used for tuning of the RED queue such that the system is asymptotically stable. Future research includes work on generalizing the model by allowing more flexibility in the TCP model and extending the model to a network case, where TCP flows are traversing several connected queues. Additionally, of interest would be the analysis of several TCP populations, with varying round-trip times, sharing the queue.

Acknowledgement This work has been funded by the Academy of Finland. The work of the second author has been also funded by the Nokia Foundation.

References [1] S. Floyd and V. Jacobson, “Random Early Detection gateways in congestion avoidance,” IEEE/ACM Transactions on Networking, vol. 1, no. 3, pp. 397–413, 1993. [2] M. Christiansen, K. Jeffay, D. Ott, and F. Donelson Smith, “Tuning RED for Web traffic,” in SIGCOM, August 2000, pp. 139 – 150. [3] S. Floyd, “Recommendations on using the “gentle ” variant of RED,” available at http: //www.aciri.org/floyd/red/gentle.html, March 2000. [4] S. Floyd et al.,

“Discussions on setting parameters,”

http://www.aciri.org/floyd/

REDparameters.txt, November 1997. [5] D. Lin and R. Morris, “Dynamics of random early detection,” in Proceedings of ACM SIGCOMM, 1997, pp. 127–137.

Kuusela: Stability of TCP-RED Congestion Control

16

[6] P. Lassila and J. Virtamo, “Modeling the dynamics of the RED algorithm,” in Proceedings of QofIS’00, September 2000, pp. 28–42. [7] M. May, T. Bonald, and J. Bolot, “Analytic evaluation of RED performance,” in Proceedings of IEEE INFOCOM, March 2000, pp. 1415–1424. [8] V. Misra, W. Gong, and D. Towsley, “A fluid-based analysis of a network of AQM routers supporting TCP flows with an application to RED,” in SIGCOM, 2000, pp. 151–160, available from ftp://gaia.cs.umass.edu/pub/Misra00_AQM.pdf. [9] P. Kuusela, P. Lassila, and J. Virtamo, “Modeling RED with idealized TCP sources,” submitted, available at http://www.tct.hut.fi/tutkimus/com2/publ/redtcp.pdf, November 2000. [10] F. Kelly, “Mathematical modelling of the Internet,” available at http://www.statslab.cam. ac.uk./~frank/ (also an extended version in Mathematics Unlimited – 2001 and Beyond, Springer Verlag, 2000), 1999. [11] D. K. H. Tan, Mathematical models of rate control for communication networks, Ph.D. thesis, University of Cambridge, August 1999. [12] C. Hollot, V. Misra, D. Towsley, and W-B. Gong, “A control theoretic analysis of RED,” to appear in Proceedings of IEEE INFOCOM 2001, 2001. [13] O. Diekmann, S. A. van Gils, S. M. Verduyn Lunel, and H.-O. Walther, Delay equations: functional-, complex-, and nonlinear analysis, Applied Mathematical Sciences. Springer Verlag, 1995. [14] J. K. Hale, Introduction to functional differential equations, Applied Mathematical Sciences. Springer Verlag, 1993.