Diffusion approximation as a modelling tool in

0 downloads 0 Views 503KB Size Report
that means that the number of customers arriving at the interval of length t (sufficiently long to assure large k) may be approximated by the normal distribution ...
Diffusion approximation as a modelling tool in congestion control and performance evaluation Tadeusz Czach´orski∗, Ferhan Pekergin∗∗ ∗

IITiS PAN, Polish Academy of Sciences 44-100 Gliwice, ul. Baltycka 5, Poland; e-mail [email protected] ∗∗

LIPN, Universit´e Paris-Nord 93430 Villetaneuse, Av. J. B. Cl´ement, France e-mail [email protected]

Diffusion theory is already a vast domain of modelling and performance evaluation. This tutorial does not cover all results but it presents in a coherent way an approach we have adopted and used in analysis of a series of models concerning evoluation of some traffic control mechanisms in computer and communication networks. Diffusion approximation is here presented from an engineer’s point of view, stressing its utility and commenting numerical problems of its implementation. Diffusion approximation is a method to model the behavior of a single queueing station or a network of stations. It allows us to include in a queueing model general sevice times, general (also self-similar) input streams and to investigate transient states, which are of interest in presence of bursty and constantly changing traffic.

1 1.1

Single G/G/1 station Preliminaries

Let A(x), B(x) denote the interarrival and service time distributions at a service station. The distributions are general but not specified, the method requires only the knowledge of their two first moments. The means are denoted as E[A] = 1/λ, E[B] = 1/µ and variances are Var[A] = 2 , Var[B] = σ 2 . Denote also squared coefficients of variation C 2 = σ 2 λ2 , C 2 = σ 2 µ2 . N (t) σA BP B A A B represents the number of customers present in the system at time t. Define Tk = K i=1 ai , where ai are consecutive interarrival times. We assume that they are independent and indentically distributed random variables, hence, according to the central limit theorem, distribution of the √ λ tends to standard normal distribution with k → ∞: variable Tσk −k k A

x ξ2 Tk − k λ 1 √ lim P [ ≤ x] = Φ(x), where Φ(x) = √ e− 2 dξ , k→∞ 2Π −∞ σA k √ √ √ hence for a large k: P [Tk ≤ xσA k+k/λ] ≈ Φ(x). Denote t = xσ k+k/λ, or k = tλ−xσ kλ A A √ √ and for large values of k, k ≈ tλ or k ≈ tλ. Denote by H(t) the number of customers arriving to the station during a time t; note that P [H(t) ≥ k] = P [Tk ≤ t], hence √ Φ(x) ≈ P [Tk ≤ xσA k + k/λ] = P [H(t) ≥ k] =

Z

  √ H(t) − tλ √ = P [H(t) ≥ tλ − xσA tλ λ] = P ≥ −x σA tλ λ

As for a normal distribution it holds Φ(x) = 1 − Φ(−x), then P [ξ ≥ −x] = P [ξ ≤ x], and H(t) − tλ √ ≤ x ≈ Φ(x) , P σA tλ λ 



T10/1

that means that the number of customers arriving at the interval of length t (sufficiently long to assure large k) may be approximated by the normal distribution with mean λt and vari2 λ3 t. Similarly, the number of customers served in this time is approximately normally ance σA 2 µ3 t, provided that the server is busy all the time. Condistributed with mean µt and variance σB sequently, the changes of N (t) within interval [0, t], N (t) − N (0), have approximately normal 2 λ3 + σ 2 µ3 )t. distribution with mean (λ − µ)t and variance (σA B Diffusion approximation [49, 50] replaces the process N (t) by a continuous diffusion process X(t) the incremental changes dX(t) = X(t + dt) − X(t) of wich are normally distributed with the mean βdt and variance αdt, where β, α are coefficients of the diffusion equation α ∂ 2 f (x, t; x0 ) ∂f (x, t; x0 ) ∂f (x, t; x0 ) = −β . 2 ∂t 2 ∂x ∂x

(1)

defining the conditional pdf of X(t): f (x, t; x0 )dx = P [x ≤ X(t) < x + dx | X(0) = x0 ]. The both processes X(t) and N (t) have normally distributed changes; the choice β = λ − µ, 2 λ3 + σ 2 µ3 = C 2 λ+ C 2 µ ensures their same ratio of proportionality of mean and variance α = σA B A B and observation time. More formal justification of the use of diffusion approximation lies in limit theorems for ˆn is a series of random variables G/G/1 system given by Iglehart and Whitte [37, 38]. If N derived from N (t): ˆn = N (nt) − (λ − µ)nt √ N 2 λ3 + σ 2 µ 3 ) n , (σA B then this series is weakly convergent (in the sense of distribution) to ξ, where ξ(t) is a standard Wiener process (i.e. diffusion process with β = 0 i α = 1) provided that % > 1, that means if the system is overloaded and never attains equilibrium: the number of customers is linearily ˆn is growing, with fluctuatins around this deterministic trend. In the case of % = 1, the series N convergent to ξR . The ξR (t) pocess is ξ(t) process limited to half-axis x > 0 : ξR (t) = ξ(t) − inf [ξ(u), 0 ≤ u ≤ t] . For service stations in equilibrium, with % < 1, similar theorems are unknown and we should rely on heuristic confirmation of the utility of this approximation. The process N (t) is never negative, hence X(t) should be also restrained to x ≥ 0. A simple solution is to put a reflecting barrier at x = 0, [43, 44]. In this case Z

0



f (x, t; x0 )dx = 1 ,

and

∂ ∂t

Z

0



f (x, t; x0 )dx =

Z



0

∂f (x, t; x0 ) dx = 0 . ∂t

Replacing the integrated above function ∂f (x, t; x0 )/∂t by the right side of the diffusion equation we obtain the boundary condition corresponding to the reflecting barrier at zero: lim [

x→0

α ∂f (x, t; x0 ) − βf (x, t; x0 )] = 0 . 2 ∂x

(2)

The solution of Eq. (1) with conditions (2) is, see [43] f (x, t; x0 ) =

∂ Φ ∂x 



x − x0 − βt αt



−e

2βx α

Φ



x + x0 + βt αt



.

(3)

If the station is not overloaded, i.e. % < 1 (β < 0), then the steady-state limt→∞ f (x, t; x0 ) = f (x) exists and the partial differential equation (1) becomes an ordinary one: 0=

d f (x) α d2 f (x) −β 2 2 dx dx

with solution

f (x) = −

2β 2βx e α , α

x > 0.

(4)

The function f (x, t; x0 ) approximates transient queue distribution at G/G/1 system: p(n, t; n0 ) ≈ f (n, t; n0 ), and steady-state distribution p(n) ≈ f (n).R Another way to approximate the queue R 0.5 n+0.5 distribution is e.g. to take p(0) ≈ 0 f (x)dx, p(n) ≈ n−0.5 f (x)dx, n = 1, 2, . . . , [43]. T10/2

The reflecting barrier excludes the stay of the process at zero: the process is immediately reflected; Eqs. (3),(4) hold for x > 0 and f (0) = 0. Therefore, this version of diffusion with reflecting barrier is a heavy-load approximation: it gives reasonable results if the utilisation % of the investigated station is close to 1, i.e. probability p(0) of the empty system is negligable. The errors are larger for small values of x as the mechanism of reflecting barrier does not correspond to the behaviour of a service station; some improvement may be achieved by renormalisation 2 (for C 2 ≤ 1), [24]. [43] or by shifting the barrier to x = −CB B This inconvenience may be removed by introduction of another limit condition at x = 0: a barrier with instantaneous (elementary) jumps [27]. When the diffusion process comes to x = 0, it remains there for a time exponentially distributed with a parameter λ0 and then it returns to x = 1. The time when the process is at x = 0 corresponds to the idle time of the system. The choice of λ0 = λ is exact for Poisson input stream and approximate otherwise. Diffusion equation is now ∂f (x, t; x0 ) ∂t dp0 (t) dt

α ∂ 2 f (x, t; x0 ) ∂f (x, t; x0 ) −β + λp0 (t)δ(x − 1) , 2 2 ∂x ∂x α ∂f (x, t; x0 ) = lim [ − βf (x, t; x0 )] − λp0 (t) , x→0 2 ∂x

=

(5)

where p0 (t) = P [X(t) = 0]. The term λp0 (t)δ(x − 1) gives the probability density that the process is started at point x = 1 at the moment t because of the jump from the barrier. The 0) − βf (x, t; x0 )] gives the second equation makes balance of the p0 (t): the term limx→0 [ α2 ∂f (x,t;x ∂x probability flow into the barrier and the term λp0 (t) represents the probability flow out of the barrier.

1.2

Steady state solution

In stationary state, when limt→∞ p0 (t) = p0 , limt→∞ f (x, t; x0 ) = f (x), Eq.(5) becomes ordinary differential and its solution, if % = λ/µ 6= 1, may be expressed as:  λp0    (1 − ezx ) 

for

−β f (x) =  λp0 −z   (e − 1)ezx  −β

0 < x ≤ 1,

for

(6)

x≥1,

z=

2β α

.

We get p0 from normalisation condition: p0 = 1 − %, i.e. the exact result. The mean queue length E[N ] ≈ = if we take p(n) =

Z

0



λp0 xf (x)dx = −β

λp0 1 0.5 − −β z 

Rn

n−1 f (x)dx ,



=

"

Z

1

zx

x(1 − e )dx +

0

0.5 +

#

2 % + C2 CA B %. 2(1 − %)

Z

1



−z

x(e

zx

− 1)e dx



= (7)

n = 1, 2, 3, . . . . then #

"

2 C 2 % + CB %. E[N ] = 1 + A 2(1 − %)

(8)

2 , C 2 and small %. The first The solution (8) gives better results then (7) for small values of CA B 2 2 discussion of errors, which are growing with CA , CB , was presented in [51].

1.3

Transient solution

Consider a diffusion process with an absorbing barrier (absorbing barrier means that the process is finished when it attains the barrier) at x = 0, started at t = 0 from x = x0 . Its probability T10/3

density function φ(x, t; x0 ) has the following form, see e.g. [3] β2

β

(x+x0 )2 e α (x−x0 )− 2α t − (x−x0 )2 √ φ(x, t; x0 ) = e 2αt − e− 2αt 2Π αt





.

(9)

The density function of the first passage time from x = x0 to x = 0 is γx0 ,0 (t) = lim [ x→0

(βt+1)2 x0 α ∂ e− 2αt . φ(x, t; x0 ) − βφ(x, t; x0 )] = √ 2 ∂x 2Π αt3

(10)

Suppose that the process starts at t = 0 at a point x with density ψ(x) and evry time when it comes to the barrier it stays there for a time given by a density function l0 (x) and then reappears at x = 1. The total stream γ0 (t) of probability mass that enters the barrier is γ0 (t) = p0 (0)δ(t) + [1 − p0 (0)]γψ,0 (t) + where

Z

γψ,0 (t) =



γξ,0 (t)ψ(ξ)dξ ,

0

g1 (τ ) =

Z

t

Z

τ

0

0

g1 (τ )γ1,0 (t − τ )dτ

(11)

γ0 (t)l0 (τ − t)dt .

(12)

The density function of the diffusion process with instantaneous returns is f (x, t; x0 ) = φ(x, t; ψ) +

Z

t 0

g1 (τ )φ(x, t − τ ; 1)dτ .

(13)

For Laplace transforms of these equations we have γ¯0 (s) = p0 (0) + [1 − p0 (0)]¯ γψ,0 (s) + g¯1 (s)¯ γ1,0 (s) , ¯ g¯1 (s) = γ¯0 (s)l0 (s) where −x0

γ¯x0 ,0 (s) = e

β+A(s) α

,

γ¯ψ,0 (s) =

and then h

i

g¯1 (s) = p0 (0) + [1 − p0 (0)]¯ γψ,0 (s) Equation (13) in terms of Laplace transform becomes



Z

0

(14)

γ¯ξ,0 (s)ψ(ξ)dξ ,

¯l0 (s) . 1 − ¯l0 (s)¯ γ1,0 (s)

(15)

¯ s; ψ) + g¯1 (s)φ(x, ¯ s; 1) , f¯(x, s; x0 ) = φ(x, where ¯ s; x0 ) = φ(x,

e

¯ s; ψ) = φ(x,

Z

β(x−x0 ) α

A(s) ∞

h

e−|x−x0|

A(s) α

− e−|x+x0|

¯ s; ξ)ψ(ξ)dξ , φ(x,

A(s) α

i

A(s) =

0

,

(16)

q

β 2 + 2αs .

(17)

This approach was proposed in [7]. The inverse transforms of these functions could be only numerical. We used for this purpose the Stehfest’s algorithm [53]: for any fixed argument t, the function f (t) is there obtained from its transform f¯(s) as f (t) = where

N ln 2 ln 2 X Vi f¯ i 2 i=1 t

min(i,N/2) N/2+i

Vi = (−1)

X

k=b i+1 2 c





,

kN/2+1 (2k)! . (N/2 − k)!k!(k − 1)!(i − k)!(2k − i)! T10/4

(18)

(19)

N is an even integer and its choice depends on a computer precision; we used N = 12 − 40. Fig. 1 presents, for a certain t, a comparison of diffusion and exact results which are known in case of M/M/1 station and expressed by a series of Bessel functions, see e.g. [42]. If the diffusion results are below a certain level, the values of the diffusion density are automatically set to zero because of numerical errors of the applied Laplace inversion. The above transient solution of G/G/1 model assumes that parameters of this model are constant. If they are evolving, we should define the time-periods where they may be considered constant and solve diffusion equation within this intervals separately. A transient solution obtained at the end of an interval serves as the initial condition for the next interval. Fig. 2 (left) illustrates numerical errors introduced by this approach. In this example parameters are constant, hence there is no need to divide the time axis into smaller intervals, yet it was done and the results for e.g. t = 150 are obtained by the use of 150 intermediate intervals of unitary length and others obtained with the use of one interval of 150 units are compared. The introduction of intervals influences the solution for values of magnitude less then 10−10 . Fig. 2 (right) displays an example where this approach is really needed. 1 exact diffusion

1e-10

1e-20

1e-30 0

10

20

30

40

50

60

70

80

90

100

Figure 1: Exact distribution of M/M/1 queue, expressed by Bessel functions, and its diffusion approximation; t = 70, λ = 0.75, µ = 1, queue is empty at the beginning. 1

1 t=10, step by step t=10, without steps t=30, step by step t=30, without steps t=150, step by step t=150, without steps

t=25, simulation t=50, simulation t=25, diffusion t=50, diffusion

1e-10

1e-10

1e-20

1e-20 0

10

20

30

40

50

60

70

80

90

0

20

40

60

80

100

Figure 2: Left: comparison of two types diffusion approximations of transient M/M/1 queue distribution, t = 10, 30, 150, λ = 0.75 and µ = 1, the queue is empty at the beginning. Solution (a): initial condition is fixed at t = 0 for all t. Solution (b): the distribution is computed separately for each interval of length ∆ = 1 with initial conditions determined at the end of previous interval. Right: Comparison of diffusion and simulation results of the queue distribution for t = 25, t = 50; the source has two phases with intensities λ1 = 1.6, λ2 = 0.4; the queue is empty at the beginning, computations are done within intervals ∆ = 1, simulation includes 150 000 repetitions.

T10/5

100000 1 15 digits N = 40

0.01

1 0.0001 22 digits 1e-06

N = 18 1e-05

1e-08 28 digits 1e-10 1e-10 1e-12

N = 30

1e-14

38 digits

0.1

1

10

100

1e-15 0.1

1

10

100

Figure 3: Dependence of error function on value of N in Stehfest formula and on precision of numbers used for calculations

1.4

Numerical drawbacks of Stehfest algorithm

The main drawback of Stehfest algorithm is a very large range of the values of coefficients Vn in Eqs. (18) and (19), even for relatively small number N . For instance, they are approximately in the range 100 –1015 for N = 20. Fig. 3 presents the error functions shown in log–log–scale, for the shifted Heaviside (unit step) function f (t) = 1(t − 1). Its Laplace transform e−s /s is inverted with Stehfest algorithm and compared with the original function. Because of the discontinuity at t = 1, the error in this point must be equal to 0.5. Fig. 3a shows the absolute error, N is considered here as a parameter. For small values of N the error is relatively small and it achieves the theoretical value of 0.5 for t = 1. We can also notice that for t < 1 the absolute error is decreasing with the increase of N . The most important fact is that big values of both N and t provoke a totally erroneous output of the algorithm. Fig. 3b shows the influence of the used precision on the error function for the same example. A relatively high value of N = 30 is chosen to show the advantage of using larger mantissa. The increase of N makes narrower the interval of accurate calculations for t. The use of greater precision practically doesn’t influence error function in usable range of t. The errors of inversion algorithm are especially visible when the time axis is composed of small intervals and at each interval the density function is obtained from the results of previous interval (hence the errors in all former intervals influence the current results), see Fig. 2. The transient queue distributions of the same service station but with the input stream of on-off type, given by diffusion and simulation are compared in Fig. 2. The lengths of on and off phases are exponentially distributed and their mean values are equal 100 time units. Although the simulation results were obtained by averaging 150 000 realizations of the random process, the tail of distribution where the probabilities have small values, was not accessible to simulation.

2

G/G/1/N station

If the number of custemers is limited to a maximum value N , the second barrier of the same type as at x = 0 is placed at x = N . The diffusion equations become [27] ∂f (x, t; x0 ) ∂t dp0 (t) dt dpN (t) dt

α ∂ 2 f (x, t; x0 ) ∂f (x, t; x0 ) −β + 2 2 ∂x ∂x +λ0 p0 (t)δ(x − 1) + λN pN (t)δ(x − N + 1) , α ∂f (x, t; x0 ) = lim [ − βf (x, t; x0 )] − λ0 p0 (t) , x→0 2 ∂x α ∂f (x, t; x0 ) = lim [− + βf (x, t; x0 )] − λN pN (t) , x→N 2 ∂x

=

where δ(x) is Dirac delta function. T10/6

(20)

2.1

Steady state

In stationary state, when limt→∞ p0 (t) = p0 , limt→∞ pN (t) = pN , limt→∞ f (x, t; x0 ) = f (x), Eqs.(20) are ordinary differential and their solution, if % = λ/µ 6= 1, may be expressed as, [27]:

f (x) =

where z =

2β α

 λp0    (1 − ezx )   −β  

λp0

−z

zx

(e − 1)e  −β    µp N z(x−N )   (e − 1)  −β

for

0 M of the process correspond to states where cells are waiting for tokens, the value x−M determines in this case the number of cells in the buffer; x < M means that there are tokens waiting for cells and the value M − x corresponds to the number of tokens in the buffer. Probability of b cells in the buffer atR time t is defined by f (M + b, t); probability of the empty cell buffer is given by pt (t) = p0 (t) + 0M f (x, t)dx. Probability of m tokens in the buffer is given R M +B by f (M − m, t) and probability of empty token buffer is determined by M f (x, t)dx + pN (t) where p0 (t) = P r[X(t) = 0], pN (t) = P r[X(t) = N ]. The service time is constant, hence the density function of the cell waiting time for tokens (response time of leaky bucket) may be estimated as r(x, t) = λt f (λt x + M, t). T10/14

2.5

100 leaky bucket input diffusion, M(0) = 0 diffusion, M(0) = 50 diffusion, M(0) = 100 simulation, M(0) = 0 simulation, M(0) = 50 simulation, M(0) = 100

input

2

diffusion, M(0) = 0 diffusion, M(0) = 50 diffusion, M(0) = 100 simulation, M(0) = 0 simulation, M(0) = 50 simulation, M(0) = 100

90 80 70

1.5

60

M(0)=0

50 1

40

M(0)=0 M(0)=100

M(0)=50

M(0)=50

30

0.5

20 10

0

M(0)=100

0 0

100

200

300

400

500

600

0

100

200

300

400

500

600

Figure 9: Left: the input and output of leaky bucket, Right: mean number of cells in the cell buffer as a function of time; the initial number of tokens is M (0) = 0, 50 and 100; diffusion and simulation results 0.06

1 simulation t = 25 simulation t = 50 simulation t = 75 diffusion t = 25 diffusion t = 50 diffusion t = 75

0.05

simulation, t = 100 diffusion, t = 100

0.1 0.04

0.03

0.01

0.02 0.001 0.01

0

0.0001 0

20

40

60

80

100

0

20

40

60

80

100

Figure 10: Density of the number of cells during high traffic period, Left: t = 25, 50, 75, Right: t = 100; M (0) = 0; diffusion and simulation results Hence, using G/G/1/N model we obtain transient f (x, t; ψ) and steady-state f (x) distributions of the diffusion process for 0 ≤ x ≤ M + B. This gives us the distribution of the number of tokens and cells in the leaky bucket, the response time distribution, the loss probabilities, the properties of the output stream, etc. The capacities of cell and token buffers may be null, so we are able to consider a number of leaky bucket variants. The output process of the leaky bucket is the same as the cell input process provided, with probability pt (t), that there are tokens available and it is the same as token input process with probability [1 − pt (t)] that tokens are not available; at the time moment t the pdf d(x) of interdeparture times in the output stream is d(x, t) = pt (t)a(x, t) + [1 − pt (x, t)]δ(x −

1 ), λt

(52)

where a(x, t) is the time-dependent pdf of cell interarrival times distribution. Eq. (52) gives us the mean value and squared coefficient of interdeparture times distribution, i.e. whole information needed to incorporate one or multiple leaky-bucket stations (for example a cascade of leaky-buckets with different parameters) in the diffusion queueing network model of G/G/1 or G/G/1/N stations. The principles of the latter model were given in [28]. Numerical example At t = 0 the cell buffer is empty and the token buffer contains M (0) tokens. The tokens are generated regularly each time-unit. The cell arrival stream is Poisson; the mean interarrival time is 0.5 time-unit for 0 ≤ t < 100 and 1.5 time units for t ≥ 100, i.e. there is a traffic wave exceeding the accorded level during the first 100 units and then the traffic goes down below this level. T10/15

The buffer capacities are B = M = 100. Figure 9 (left) displays the diffusion and simulation results concerning the output stream of leaky bucket for the initial number of tokens M (0) = 0, 50 and 100. The output dynamics given by simulation and by difusion model are very similar. Simulation results are obtained as a mean of 100 000 independent runs. If there is no tokens at the beginning, the cell stream is immediately cut to the level of token intensity (one cell per time unit), the excess of cells is stocked in the cell buffer and transmitted later, when t > 100 and input rate becomes smaller. If there are tokens in the token buffer, a part (for M (0) = 50) or almost totality (for M (0) = 100) of the traffic wave may enter into the network. Figure 9(right) presents the comparison of mean number of cells in the cell buffer as a function of time, for different initial content of the token buffer M (0) = 0, 50 and 100, obtained by diffusion and simulation models. In Figure 10 the distributions of cell buffer contents obtained by simulation and by diffusion are presented for several moments, including t = 100, i.e. the end of high traffic period, when the congestion is the biggest. We see that although the mean queue length is below the buffer capacity, the probability that the buffer is full is important (≈ 0.4). Note that we could not obtain this result with the use of fluid approximation even if the mean number of cells in the buffer predicted by diffusion and fluid approximations were similar.

7

Multiclass FIFO queues, output streams dynamics

Consider a queueing network model representing a computer network. Customers (cells in an ATM network) are grouped into classes. Each class represents a connection between two points of the network and its description includes the characteristics of the source and the itinerary across the network. Customer queues at servers correspond to the queues of cells waiting at a node to be sent further. At a queue exit the class of a customer should be known to determine its routing. In steady state queuing models this probability, for a certain class k, is given by the ratio of the throughput λ(k) of this class customers passing the node to the total througput λ P (k) and K is the number of classes passing across the of this node : λ(k) /λ, where λ = K k=1 λ node. In transient state, the throughputs are a function of time and the probability λ(k) (t)/λ(t) (k) (k) as well. Morover, the flows at the entrance and the exit are not the same: λi, in 6= λi, out . The composition of output flow reflects the previous compositions at the entrance delayed by the response time of the queue. To solve this problem, we choose the constant service time as the time unit, divide the time axis into intervals of unitary length and assume that the flow parameters are constant during that interval, e.g. λ(k) (θ) denotes the class k flow at station i during an interval θ, θ = 1, 2, . . . P (k) The input stream k λin (θ) reaches the output of the queue with a delay corresponding to P (k) the queue length in the buffer at the arrival time. The part p(n, θ) k λi, in (θ) of this submitted load cannot be served and the corresponding flow cannot appear at the output before the time t = θ + n + 1. So, taking into account these delays, the unfinished work ready to be processed at the time t in the station which is initially empty can be expressed as: U (k) (t) =

N X

n=1

(k)

λin (t − n) · p(n − 1, t − n)

for

k = 1, . . . , K.

A similar formulation may be easily derived for initially nonempty queue knowing its composition at t = 0. Remark that some accumulation periods (of high or quickly increasing load) P may yield that ready work at t exceeds the server capacity: k U (k) (t) > 1. Such a phenomenon introduces some additional delay in the transfer of the input stream to the output. (k) To compute the output throughput λout (t), we find first the ready time ϑ1 of the cells at the head of the queue. This is equal to the smallest value of θ such that: θ X X

τ =0 k

U (k) (τ ) ≥

t−1 X X

τ =0 k

T10/16

(k)

λout (τ ).

(53)

(1)

λin (t)

(2)

(1)

λin (t)

(2)

(3)

λout (t) + λout (t) + λout (t)

(3)

λin (t)

Figure 11: A model of a switch Then, we determine the smallest ϑ2 for which ϑ2 X X

τ =0 k

U (k) (τ ) −

t−1 X X

τ =0 k

(k)

λout (τ ) ≥ 1 − p(0, t).

(k)

The output throughput λout (t) is obtained as (k)

λout (t) =

ϑ2 X

θ=ϑ1

wθ · U (k) (θ)

(54)

where wϑ1 represents the percentage of U (k) (ϑ1 ) that has not been sent yet, wθ = 1 for θ 6= ϑ1 P 2 and ϑ2 , and wϑ2 is chosen such that ϑθ=ϑ wθ · U (θ) = 1 − p(0, t). 1 Numerical example. Consider an ATM switch presented in Fig. 11. Each of the output queues has the capacity of 100 cells and is analysed with the use of G/D/1/100 multiclass diffusion model and M/D/1 multiclass fluid approximation model. The service time is constant, µ = 1. The input streams are Poisson with parameters λ(k) (t) chosen as: time t (1) λin (t) (2) λin (t) (3) λin (t)

0 – 10 0.1 0.2 0

10 – 20 0.8 0.2 0

20 – 30 0.8 0.2 0.5

30 – 40 0.1 0.2 0.5

40 – 80 0.1 0.2 0

> 80 0 0 0

The streams are switched to a chosen output port as indicated in the figure. Figures 12 – 14 present the results: mean queues and output streams (queue is empty at the beginning). These results, obtained with the use of diffusion approximation and fluid flow approximation, are compared with simulation results which represent a mean of 400 000 independent runs and practically may be considered as exact. The differencies between input and output streams are clearly visible for the whole stream as well as for each class separately. They justify the need of the presented approach in the transient analysis of networks: the impact the switch queue on the flow dynamics is important and cannot be neglected. In all considered cases the results of diffusion approximation are very close to simulation and clearly better that those obtained with the fluid flow approximation.

8

A switch with threshold (partial buffer sharing) algorithm

In a node with partial buffer sharing policy the diffusion process represents the content of the cell buffer. The process is determined on the interval x ∈ [0, N ] where N is the buffer capacity, [12]. When the number of cells is equal or greater than the threshold N1 (N1 < N ), only priority cells T10/17

9

9 Fluid App. Class 1 Fluid App. Class 2 Fluid App. Class 3 Fluid App. General Simulation General Simulation Class 1 Simulation Class 2 Simulation Class 3

8

7

Simulation Global Simulation Class 1 Simulation Class 2 Simulation Class 3 Diffusion Global Diffusion Class 1 Diffusion Class 2 Diffusion Class 3

8

7

6

6

5

5

4

4

3

3

2

2

1

1

0

0 0

10

20

30

40

50

60

70

80

0

10

20

30

40

50

60

70

80

Figure 12: The mean queue length: global and per classes as a function of time – simulation and fluid approximation results (left), simulation and diffusion approximation results (right) Global input Simulation global output Diffusion global output Fluid Flow global output

1.4

Class 1 input Simulation Class 1 output Diffusion Class 1 output Fluid Flow Class 1 output

0.8

0.7

input and output traffic intensities

input and output traffic intensities

1.2

1

0.8

0.6

0.4

0.6

0.5

0.4

0.3

0.2

0.2

0.1

0

0 0

10

20

30

40

50

60

70

80

90

0

10

20

30

40

time

50

60

70

80

90

time

Figure 13: The intensities λin (t), λout (t) of global input and output flows (left) and for class 1 traffic (right); the output flow is obtained by simulation, diffusion and fluid flow approximations 0.6

0.6 Class 2 input Simulation Class 2 output Diffusion Class 2 output Fluid Flow Class 2 output

Class 3 input Simulation Class 3 output Diffusion Class 3 output Fluid Flow Class 3 output 0.5

input and output traffic intensities

input and output traffic intensities

0.5

0.4

0.3

0.2

0.1

0.4

0.3

0.2

0.1

0

0 0

10

20

30

40

50

60

70

80

90

time

0

10

20

30

40

50

60

70

80

90

time

(2) Figure 14: The intensities of λ(2) in (t), λout (t) input and output flows for class 2 traffic (left) and for class

3 traffic (right); the output flow is obtained by simulation, diffusion and fluid flow approximations

T10/18

are admitted and ordinary ones are lost. Diffusion process represents the number cells of both classes, hence its parameters depend on their input and service parameters which are different for x ≤ N1 and x > N1 : β(x) = and

(

β1 = λ(1) + λ(2) − µ for 0 < x ≤ N1 , β2 = λ(1) − µ for N1 < x < N

  α = λ(1) C (1) 2 + λ(2) C (2) 2 + µC 2 1 B A A α(x) =  α = λ(1) C (1) 2 + µC 2 2 B A

for 0 < x ≤ N1 ,

(55)

(56)

for N1 < x < N.

2 = 0. Once again we use the Eq. 51 to represent the We assume constant service time, hence CB sojourn time in the barrier at x = N and to determine µN as the inverse of the mean sojourn time. Steady state solution. Let f1 (x) and f2 (x) denote the pdf function of the diffusion process in intervals x ∈ (0, N1 ] and x ∈ [N1 , N ). We suppose that · limx→0 f1 (x, t; x0 ) = limx→N f2 (x, t; x0 ) = 0 , · f1 (x) and f2 (x) functions have the same value at the point N1 : f1 (N1 ) = f2 (N1 ), · there is no probability mass flow within the interval x ∈ (1, N − 1):

αn d fn (x) − βn fn (x) = 0 , 2 dx

x ∈ (1, N1 ), n = 1

and

x ∈ (N1 , N − 1), n = 2 ,

and we obtain the solution of diffusion equations:

f1 (x) =

 [λ(1) + λ(2) ]p0    (1 − ez1 x )   −β1

 [λ(1) + λ(2) ]p0   (1 − ez1 )ez1 (x−1)   −β 1

f2 (x) =

  f (N )ez2 (x−N1 )   1 1 i µpN h z2 (x−N )  1 − e  

β2

for 0 < x ≤ 1 , for 1 ≤ x ≤ N1 , for N1 ≤ x ≤ N − 1 , for N − 1 ≤ x < N ,

(57)

2βn , n = 1, 2. Probabilities p0 , pN are obtained with the use of normalization conαn dition. The loss ratio L(1) is expressed by the probability pN , the loss ratio L(2) is determined RN by the probability P [x > N1 ] = N1 f2 (x)dx + pN . Numerical example. Fig. 15 presents in linear and logarithmic scale the steady-sate distribution given by Eqs. (57) of the number of cells present in a station. The buffer length is N = 100, the threshold value is N1 = 50. Some of the values are compared with simulation histograms which we were able to obtain only for relatively large values of probabilities. Transient solution. The transient solution is obtained with technique presented earlier for G/G/N/N model. It makes use of the balance equations for probability flows crossing the barrier situated at the boundary between the intervals with different diffusion coefficients, i.e. at x = N1 . Let us consider two separate diffusion processes X1 (t), X2 (t): X1 (t) is defined on the interval x ∈ (0, N1 ). At x = 0 there is a barrier with sojourn times defined by a pdf l0 (t) and instantaneous returns to the point x = 1. At x = N1 an absorbing L (t) the pdf that the process enters the absorbing barrier at barrier is placed. Denote by γN 1 x = N1 . The process is reinitiated at x = N1 − ε with a density gN1 −ε (t). X2 (t) is defined on the interval x ∈ (N1 , N ). It is limited by an absorbing barrier at x = N1 and by a barrier with instantaneous returns at x = N . The sojourn time at this barrier is defined by a pdf lN (t) and the returns are performed to x = N − 1. The process is reinitiated R (t) the pdf that the process X (t) enters at x = N1 + ε with a density gN1 +ε (t). Denote by γN 2 1 where zn =

T10/19

0.3

1 simulation, lambda = 0.8 simulation, lambda = 0.9 diffusion, lambda = 0.8 diffusion, lambda = 0.9

diffusion, lambda = 0.9 diffusion, lambda = 0.8 diffusion, lambda = 0.7 diffusion, lambda = 0.6 diffusion, lambda = 0.4 diffusion, lambda = 0.3 diffusion, lambda = 0.2 diffusion, lambda = 0.1 simulation, lambda = 0.9 simulation, lambda = 0.8 simulation, lambda = 0.7 simulation, lambda = 0.6 simulation, lambda = 0.4

0.25

0.2

0.15

1e-10

0.1

0.05

0

1e-20 0

20

40

60

80

100

0

20

40

60

80

100

Figure 15: Steady state distribution of the number of cells for traffic densities λ(1) = λ(2) = 0.9; diffusion and simulation results, normal (left) and logarithmic (right) scale

the absorbing barrier at x = N1 . The interaction between two processes is given by equations L gN1 +ε (t) = γN (t) 1

R gN1 −ε (t) = γN (t), 1

and

i.e. the probability density that one process enters to its absorbing barrier is equal to the density of reinitialization of the other process in the vicinity of the barrier. Equations (31) and (33) form a set of eight equations with eight unknown functions. When we transform these equations with the use of Laplace transform, the convolutions of density functions become products of transforms and we have a set of linear equations where the unknown variables are: g¯1 (s), g¯N1 −ε (s), g¯N1 +ε (s), g¯N −1 (s), γ¯0 (s), γ¯N (s), γ¯N1 −ε (s), γ¯N1 +ε (s). They may be expressed by all other functions, that means γ¯ψ1 ,0 (s), γ¯ψ1 ,N1 (s), γ¯1,0 (s), γ¯1,N1 (s), γ¯N1 −ε,0 (s), γ¯N1 −ε,N1 (s), γ¯ψ2 ,N 1 (s), γ¯ψ2 ,N (s), γ¯N1 +ε,N1 (s), γ¯N1 +ε,N (s), γ¯N −1,N1 (s), γ¯N −1,N (s) which are already determined by equations of type (32). This way we obtain the functions g¯1 (s), g¯N1 −ε (s), g¯N1 +ε (s), g¯N −1 (s) and use them in the pdfs (37). The time-domain originals f1 (x, t; ψ1 ), f2 (x, t; ψ2 ) are obtained numerically [53] from their transforms. The density of the whole process is f (x, t; ψ) =

(

f1 (x, t; ψ1 ) for 0 < x < N1 , f2 (x, t; ψ2 ) for N1 < x < N .

To see the evolution of the number of cells belonging to a class, we have to consider the composition of input and output streams. Let us denote by p(i) (t) probability that a cell arriving at time t belongs to class i. (i) λ (t) , (58) p(i) (t) = (1) eff (2) λeff (t) + λeff (t) where

(1)

(2)

λeff (t) = λ(1) (t)[1 − pN (t)],

λeff (t) = λ(2) (t)[1 − pn≥N1 (t)]

(59)

and pn≥N1 (t) is probability that the buffer space accessible for class 2 cells is full and these cells are rejected. We try to reflect the mutual influence of both classes in effective parameters of their service and then analyze the class behaviour independently. We know the distribution of the total number n(t) of cells in the buffer at time t. Among those cells there are n(2) (t) class 2 cells. Let us denote by ν(t), 0 ≤ ν(t) ≤ n, the number of class 1 cells gathered at the end of the buffer behind the last class 2 cell, seen at time t by the arriving new class 2 cell. As the service time is equal to one time unit, the effective service time for the arriving class 2 cell is 1 + ν. If n(2) (t) > 0 then (2)

P [ν = i | n(t) = n, n

(2)

(t) = n

(2)

]=

n −1 Cn−i−1

Cnn(2)

T10/20

,

0 ≤ ν ≤ n − n(2) ,

(60)

where l Cm =

m! l!(m − l)!  0  

for m ≥ l ≥ 0 , otherwise ,

if n(2) = 0 then P (ν = i | n) = δi,n where δi,n is the Kroenecker symbol. We determine the probability of ν = i when n(t) = n, for all possible n(2) : P [ν = i | n(t) = n] = (1 − p(2) )i δi,n + = (1 − p(2) )i δi,n +

min{n−i,N1 −1}

X

n(2) =1 min{n−i,N1 −1}

X

P [n(2) | n] P [ν = i | n, n(2) ] (2)

n −1 (2) Cn−i−1 p

n(2) =1

n(2)

(1 − p(2) )n−n

(2)

(61)

and the distribution of ν is P [ν = i] = (1 − p

(2) i

) P [n(t) = i] +

N X

P [n(t) = l ]

min{l−i,N1 −1}

X

m=1

l=0

m

m−1 (2) Cl−i−1 p (1 − p(2) )l−m . (62)

Now we are able to determine the mean and squared coefficient of variation of the random variable B (2) representing the effective service time for class 2 cells, B (2) (t) = 1 + ν(t): E[B

(2)

(t)] = 1 + E[ν(t)], (2) 2

The coefficient CB

(1) 2 CA ,

(2) 2 CA

(2) 2 CB (t)

2

E[ν 2 (t)] − E[ν(t)]2 E[B (2) (t)] − 1 = . = (E[ν(t)] + 1)2 E[B (2) (t)]2 (1) 2

is given by Eq. (63); CB

(63)

is deduced on the similar principle and

are also deduced from the input streams. The changes in the intensities of the input rates at the instant t influence the output with a delay of n(t). The service times of ν(t) class 1 cells which are at the end of the queue are considered as a part of the service of the arriving class 2 cell. The change of the input at t is taken into account in the service time µ(2) (t + n(t) − ν(t)). On the other hand, the tile composition of the queue does not depend only on the input composition p(t) but on its evolution since the last class 2 cell arrival moment. It is not easy to determine in transient analysis the delay with which the input changes act on the ν(t). As a rough approximation, we considered a delay equal to n(t)/2. This choice permits us to deal with sudden falls of the class 2 input rate. Although this method captures the dynamics of the second class cell number, further efforts seem to be necessary to obtain more general characterization of time dependent queue composition. Numerical example. Let us suppose that at the beginning the buffer is empty and during the interval t ∈ [0, 100] the input stream of priority cells has ratio λ(1) = 2 cells per time unit and the one of low priority cells λ(2) = 1; for t > 100 the ratio of high priority cells is λ(1) = 0.6667, the ratio of low priority cells does not change. The service time is constant and equal one time unit. The buffer length is N = 100, the value of threshold varies between N1 = 50 and N1 = 90. The value of ε in Eqs. (37)–(39) was chosen ε = 0.1. In Fig. 16 the distributions of the number of cells at the buffer obtained by simulation and by diffusion model for chosen time moments are compared. Diffusion and simulation results are placed in separate figures to preserve their readability. The shape of curves given by two models is very similar. At the end of second period (t = 400, 500, 600) the steady state distribution is attained. Fig. 17 displays the mean number of cells in the buffer as a function of time. During the first 100 time units the congestion is clearly visible, the buffer quickly becomes saturated; during the second period the queue is also overcrowded, probability that the threshold is exceeded is near 0.7 but owing to the buffer sharing policy the probability that the buffer is inaccessible for priority cells remains negligible – Fig. 18. The threshold value N1 is a parameter of displayed curves. If N1 increases the mean values of low priority cells increases (they have more space in T10/21

the buffer, hence less of them is rejected) and the number of priority cells increases too (as there is more class 2 cells in the queue, class 1 cells wait longer). Some numerical problems were encountered when computing expressions of φ(x, t, ψ) and (2) (1) γ0 (t) for very small values of λeff (t), µeff (t) and forced us to very careful programming.

9

Jitter

If the service time is constant (we suppose it is equal to 1), the queue distribution fi (x) for a station i approximates also its response time Ri , [10]. The pdf ri (y) of this time is ri (y, t; ψ) = µfi [µ(y − 1), t; ψ].

(64)

The argument is shifted by 1 to include the service time of the considered customer. We may express the response time of m consecutive stations of the virtual connection as m-fold convolution of ri (y, t; ψ): r1...m (y) = r1 (y) ∗ · · · ∗ rm (y) ,

m = 2, . . . , M.

(65)

Numerical example. There are M = 5 stations in a path. The buffer size at each station is N = 80, the fixed service time is 1/µ = 1. The symbols with upper index (l) refer to local streams which pass through one station together with the considered stream of the virtual connection. Parameters with upper index (v) describe the virtual path traffic which passes all 5 (l) (l)2 (l) (l)2 (v) (v)2 stations in the connection: λ1 = 0.5, CA1 = 1.0, λ1 = 0.3, CA1 = 1.5, λ2 = 0.3, CA2 = 1.0, (l)

(l)2

(l)

(l)2

(l)2

λ3 = 0.4, CA3 = 0.5, λ4 = 0.45, CA4 = 1.5, λ5 ( l) = 0.2, CA5 = 2.0. Results in Fig. 19 compares the density of total response time of the connection obtained by (v)2 diffusion model and by simulation and present the influence of the input CA1 on rhe density r(x).

10

Reactive control in ABR-type service

It is supposed that each connection has a closed-loop feedback control mechanism which allows the network to control the cell emission process at each source. When a defined congestion level is reached, ATM switches notify traffic sources contributing to the congestion. Upon receiving a congestion notification, the source reduces the rate at which it transmits cells through the considered connection. If the source does not receive congestion messages during a certain time interval, it can start to increase its traffic rate. The model [1] allows us to study the impact of the closed-loop control on the performance of the virtual connections through the network. The propagation time, the delay with which the control decision is taken and inertia of the source contribute to the control delay. Let us suppose that this delay is comparatively small, ∆ = 100 time units, and the bursty period is prolonged, so the effects of the control are visible inside the bursty period. The quantity of information which should be sent during the bursty period corresponds to NB cells. Outside the burst periods which are started every 1000 time units the source is silent. The rate of local traffic is constant: λ(l) = 0.5 cells per time unit. We assume that the buffer can contain 150 cells. At the beginning of bursty period the source starts to emit cells at the maximum rate λ(cv) = 1 cell per time unit. When the queue length is greater than the level So = 20, the message calling the source to decrease its maximum activity (λ(cv) ← 0.667λ(cv) ) is sent and after the delay of ∆ time units the source follows this order. After a time period ∆1 = 140 time units (i.e. 40 time units after the last change of the traffic intensity) the queue is examined. If its magnitude is still over the threshold So , a new message to decrease its activity is sent to the source. If the queue lenght is below Si = 10, the message allowing the source to increase the throughput of emitted cells (λ(cv) ← 1.5λ(cv) ) is sent. We are not analysing the quality of this protocol but only demonstrate the performance of the model. In Fig. 20 the simulation results are compared with the results T10/22

0.4

0.4 t = 25 t = 50 t = 75 t = 120 t = 140 t = 200 t = 300 t = 400 t = 500

0.35

0.3

t = 25 t = 50 t = 75 t = 120 t = 140 t = 200 t = 300 t = 400 t = 500

0.35

0.3

0.25

0.25 t = 300,400,500

t = 300,400,500

0.2

0.2

t = 75

0.15

t = 75

0.15 t = 120 t = 120

0.1

0.1

t = 140 t = 200

0.05

t = 50

t = 140 t = 200

0.05

t = 25

t = 50

t = 25

0

0 0

20

40

60

80

100

0

20

40

60

80

100

Figure 16: Distribution of the number of all cells in the buffer for several time moments t = 25 − 500; buffer size N = 100, threshold N1 = 50; simulation (left) and diffusion (right) results 100

100 N1 = 90

90 80

N1 = 60

60

N1 = 50

50

N1 = 70

70

N1 = 60

60

N1 = 80

80

N1 = 70

70

N1 = 90

90

N1 = 80

N1 = 50

50

40

40 N1 = 50 N1 = 60 N1 = 70 N1 = 80 N1 = 90

30 simulation results 20

N1 = 50 N1 = 60 N1 = 70 N1 = 80 N1 = 90

30 diffusion results 20

10

10

0

0 0

100

200

300

400

500

600

0

100

200

300

400

500

600

Figure 17: Mean number of cells as a function of time, parametrized by the value N1 = 50, 60, 70, 80, 90 of the threshold, simulation (left) and diffusion (right) results 1

1 50 90

90

80

70

60

50

50 Probability that the threshold is exceeded

90

0.8

90

80

70

60

50 Probability that the threshold is exceeded

0.8

0.6

0.6

90 buffer overflow, N1=50 threshold exceeded, N1=50 buffer overflow, N1=60 threshold exceeded, N1=60 buffer overflow, N1=70 threshold exceeded, N1=70 buffer overflow, N1=80 threshold exceeded, N1=80 buffer overflow, N1=90 threshold exceeded, N1=90

0.4

50

buffer overflow, N1=50 threshold exceeded, N1=50 buffer overflow, N1=60 threshold exceeded, N1=60 buffer overflow, N1=70 threshold exceeded, N1=70 buffer overflow, N1=80 threshold exceeded, N1=80 buffer overflow, N1=90 threshold exceeded, N1=90

90

0.4

50

0.2

0.2 Probability that the buffer is full

Probability that the buffer is full

0

0 0

100

200

300

400

500

600

0

100

200

300

400

500

600

Figure 18: Probability that the buffer of length N = 100 is full (priority cells are lost) and that the threshold is exceeded (ordinary cells are lost) as a function of time, parametrized by the threshold value N1 = 50, 60, 70, 80, 90; simulation (left) and diffusion (right) results

T10/23

0.06

0.06 simulation diffusion

’CA1(v)=1’ ’CA1(v)=5’ ’CA1(v)=10’

0.05

0.05

0.04

0.04

0.03

0.03

0.02

0.02

0.01

0.01

0

0 0

10

20

30

40

50

60

70

80

90

100

0

10

20

30

40

50

60

70

80

90

100

Figure 19: Left: density r(y) of the response time of the path of 5 stations (virtual path), diffusion and (v)2

simulation results; Right: the influence of CA1 on the density r(x) of the response time

of the diffusion models. In diffusion models the algorithm decisions are taken on the basis of the mean queue length predicted by the model. In the same model we may use the probability pN (t) as the congestion indicator. 100 virtual traffic intensity overall traffic intensity mean queue - simulation mean queue - diffusion1 mean queue - diffusion2

90 80 70 60 50

local traffic

local traffic

local traffic

FN

source

local traffic

FN

destination 40

FN

30

decision

BN

local traffic

local traffic

delay

FN congestion indicator decision

20 10

FN 0

delay

0

200

400

600

800

1000

Figure 20: Left: queueing model with forward (FN) and backward (BN) congestion notification ; Right: traffic control for a bursty period of 300 cells: mean buffer queue length as a function of time; control decisions visible in changes of throughput; simulation and diffusion results

11

G/G/N/N model and cellular networks

A cellular mobile communication system is usually modelled by a network of multichannel stations, each station corresponding to a cell and the number of channels corresponding to the maximal number of connections served by the cell. Traditional modelling techniques as Markov chain approach and simulation suffer here from their usual drawbacks: state number explosion for Markovian models and long run times necessary to obtain credible probabilities of rare events (e.g. loss of connection when a user passes from one cell to another, refusal of new connection) in case of simulation models. Considered model is presented in Fig. 21. A part of a cellular mobile communication system is represented by an open queueing network of seven G/G/N/N stations corresponding to the central cell and its six neighbours in hexagonal topology. The goal is to model transient behaviour of the system. Input streams λ0i at each station represent streams of new connection demands generated within the cell, routing probabilities represent the possibility of handovers. In our example each station has 20 parallel service channels, N = 20. The input streams are Poisson, service times at each channel and each station are exponentially distributed, µ = 1. T10/24

λ02

r72

r23

2

r27

r32 λ01

λ07 7

λ03

3

r30 1

r61 r16

6

λ06

λ04

4

r65

5

r56

rij — routing probabilities (handovers) λ0i — input traffic

λ05 Figure 21: A cell and its six neighbours 0.3

0.3 Diffusion - Station 1 - T= 1 Diffusion - Station 1 - T= 2 Diffusion - Station 1 - T= 3 Diffusion - Station 1 - T= 4 Diffusion - Station 1 - T= 5 Diffusion - Station 1 - T= 6 Diffusion - Station 1 - T= 7 Diffusion - Station 1 - T= 8 Diffusion - Station 1 - T= 9 Diffusion - Station 1 - T=10

0.25

0.2

Simulation - St.1 - T= 1 Simulation - St.1 - T= 2 Simulation - St.1 - T= 3 Simulation - St.1 - T= 4 Simulation - St.1 - T= 5 Simulation - St.1 - T= 6 Simulation - St.1 - T= 7 Simulation - St.1 - T= 8 Simulation - St.1 - T= 9 Simulation - St.1 - T=10

0.25

0.2

0.15

0.15

0.1

0.1

0.05

0.05

0

0 0

5

10

15

20

0

5

10

15

20

Figure 22: Station 1 (central): transient distribution of the number of occupied channels, diffusion (left) and simulation (right) results

At the beginning (t = 0) all queues are empty. Fig. 22 compares distributions of occupied channels in cell 1 (central station), given by diffusion model and simulation (mean of 10 millions of trajectories), [19]. For more complex networks of G/G/N/N stations with larger N , e.g. N = 100 we observed accidental loss of numerical stability in numerical inversion of Lapalce transforms; also the computation time became prohibitive. Therefore, we tried the direct numerical integration of the model differential equations. In direct integration approach a method of lines [55] has been adapted to fit the case of diffusion equation. The basis of this method, which is sometimes called the generalized method of Kantoravich, is substitution of finite differences for the derivatives with respect to one independent variable, and retention of the derivatives with respect to the remaining variables. This approach changes a given partial differenrial equation into a system of partial differential equations with one fewer independent variables. The stability of the integration scheme was evaluated using the Von Neumann test and the presented method is not stable if ∆t > (∆x)2 /4. However, the estimation of stability region is complex since parameters of equation are dependent. Consider a more complex example – a network in Fig. 23, [20]. There are 37 cells, hence T10/25

32

36

35

31

33

24

29

28

15

13

11

10

8

7

3

2

6

5

4

9

14

12

18

16

22

19

17

23

20

26

25

30

34

21

27

1

0

Figure 23: Considered cell topology there are 37 G/G/N/N stations in the model. Each station has 20 parallel service channels, N = 20. Roads are passing certain cells, as marked in the figure. Routing probabilities between neighbouring stations (probability of handovers) are rij = 0.05 if there is no road passing between these cells, rij = 0.4 if there is a single road between i and j, e.g. r30,24 = r24,30 = 0.4, rij = 0.26 if there are three roads leaving cell i, e.g. r20,13 = r13,20 = 0.26, and rij = 0.2 if there are four roads leaving cell i, e.g. r18,11 = r11,18 = 0.26. At the beginning (t = 0) all queues are empty. The input streams are Poisson. Initially, λ0i = 0.5 if there is no highway in cell i, λ0i = 1.5 if there is one road in station i and λ0i = 3 if there is a crossroad (station 18) or bifurcation (cell 20). At t = 10 the traffic at roads passing by cells 21 and 8 is growing (λ0,21 = λ0,28 = 3.5). At t = 11 also λ0,20 = λ0,13 = 3.5 and this wave of increased traffic is advancing with the speed of one cell per time unit. After 20 time units the traffic is coming back to its former level: at t = 30 λ0,21 = λ0,28 = 1.5, at t = 31 also λ0,20 = λ0,13 = 1.5, etc. Service is exponential with µ = 1 for each channel. The model was solved using direct integration. Two types of state-depandance of diffusion parameters were considered: stepwise function Eq. (36) and linear continuous changes. Both versions gave similar results. Fig. 24 compares the mean value of occupied channels at certain cells as a function of time, obtained by diffusion model and by simulation (mean of 10 millions of trajectories). Fig. 25 displays loss probabilities (probabilities of full system) given by diffusion approximation and simulation.

12

Current research

We think that the most important problem of the presented approach is now to master the transient model of a general multiclass network. There are still difficulties in proper description (k)

(k) 2

of output stream characteristics for each class: λi,out (t), CDi (t). Burke’s formula Eq.(41) holds only for steady state and Eqs. (48),(50) could not be greneralised to transient analysis. The solution presented in Section 8 holds only for constant service times. Yet, without satisfactory description of time-dependent output per class, it is not possible to determine the routing in a network.

T10/26

18

18 Diffusion - St.20 Diffusion - St.21 Diffusion - St.22 Diffusion - St.23 Diffusion - St.24 Diffusion - St.25 Diffusion - St.26 Diffusion - St.27 Diffusion - St.28 Diffusion - St.29

16

14

12

Simulation - St.20 Simulation - St.21 Simulation - St.22 Simulation - St.23 Simulation - St.24 Simulation - St.25 Simulation - St.26 Simulation - St.27 Simulation - St.28 Simulation - St.29

16

14

12

10

10

8

8

6

6

4

4

2

2

0

0 0

5

10

15

20

25

30

35

40

45

50

0

5

10

15

20

25

30

35

40

45

50

Figure 24: Transient mean values of the number of occupied channels in cells no. 20 – 29, diffusion (left) and simulation (right) results 1

1 Diffusion - St.20 Diffusion - St.21 Diffusion - St.22 Diffusion - St.23 Diffusion - St.24 Diffusion - St.25 Diffusion - St.26 Diffusion - St.27 Diffusion - St.28 Diffusion - St.29

0.1

0.01

Simulation - St.20 Simulation - St.21 Simulation - St.22 Simulation - St.23 Simulation - St.24 Simulation - St.25 Simulation - St.26 Simulation - St.27 Simulation - St.28 Simulation - St.29

0.1

0.01

0.001

0.001

0.0001

0.0001

1e-05

1e-05

1e-06

1e-06

1e-07

1e-07

1e-08

1e-08 0

5

10

15

20

25

30

35

40

45

50

0

5

10

15

20

25

30

35

40

45

50

Figure 25: Loss probabilities for stations 20 – 29, diffusion (left) and simulation, mean of 1 million runs (right) results

References [1] T. Atmaca, T. Czach´ orski, F. Pekergin, A Diffusion Model of the Dynamic Effects of Closed-Loop Feedback Control Mechanisms in ATM Networks, 3rd IFIP Workshop on Performance Modelling and Evaluation of ATM Networks, Ilkley, UK, 4-7th July 1995. [2] P.J. Burke, The Output of a Queueing System, Operations Research, vol. 4, no. 6, pp. 699704. [3] R. P. Cox, H. D. Miller, The Theory of Stochastic Processes, Chapman and Hall, London 1965. [4] T. Czach´ orski, A Multiqueue Approximate Computer Performance Model with Priority Scheduling and System Overhead, Podstawy Sterowania, t.10, z. 3, pp.223-240, 1980. [5] T. Czach´ orski, A diffusion process with instantaneous jumps back and some its applications, Archiwum Informatyki Teoretycznej i Stosowanej, tom 20, z. 1-2, pp. 27-46. [6] T.Czach´ orski, J.M.Fourneau, F.Pekergin, Diffusion Model of the Push-Out Buffer Management Policy, IEEE INFOCOM ’92, The Conference on Computer Communications, Florence, 1992. [7] T. Czach´ orski, A method to solve diffusion equation with instantaneous return processes acting as boundary conditions, Bulletin of Polish Academy of Sciences, Technical Sciences vol. 41 (1993), no. 4.

T10/27

[8] T. Czach´orski, J. M. Fourneau, F. Pekergin, Diffusion model of an ATM Network Node, Bulletin of Polish Academy of Sciences, Technical Sciences 41 (1993), no. 4. [9] T. Czach´orski, J. M. Fourneau, F. Pekergin, Diffusion Models to Study Nonstationary Traffic and Cell Loss in ATM Networks, ACM 2nd Workshop on ATM Networks, Bradford, July 1994. [10] T. Czach´orski, J.M. Fourneau, L. Kloul, Diffusion Approximation to Study the Flow Synchronization in ATM Networks, ACM 3rd Workshop on ATM Networks, Bradford, July 1995. [11] T. Czach´orski, J. M. Fourneau, F. Pekergin, The dynamics of cell flow and cell losses in ATM networks, Bulletin of Polish Academy of Sciences, Technical Sciences vol. 43, no. 4, 1995. [12] T. Czach´orski, F. Pekergin, Diffusion Models of Leaky Bucket and Partial Buffer Sharing Policy: A Transient Analysis 4th IFIP Workshop on Performance Modelling and Evaluation of ATM Networks, Ilkley, 1996, also in: D. Kouvatsos (Editor), ATM Networks, Performance Modelling and Analysis, Chapman and Hall, London 1997. [13] T. Czach´orski, F. Pekergin, Transient diffusion analysis of cell losses and ATM multiplexer behaviour under correlated traffic, 5th IFIP Workshop on Performance Modelling and Evaluation of ATM Networks, Ilkley, UK, 21-23 july 1997. [14] T. Czach´orski, M. Pastuszka, F. Pekergin, A tool to model network transient states with the use of diffusion approximation, Performance Tools ’98, Palma de Mallorca, Hiszpania, September 1998. [15] T. Czach´orski, S. Jedrus, M. Pastuszka, F. Pekergin, Diffusion approximation and its numerical problems in implementation of computer network models, Archiwum Informatyki Teoretycznej i Stosowanej, z.1, pp. 41-56, 1999. [16] T. Czach´orski, J-M. Fourneau, L. Kloul, Diffusion Method Applied to a Handoff Queueing Scheme, Archiwum Informatyki Teoretycznej i Stosowanej, z.1, pp. 41-56, 1999. [17] T. Czach´orski, F. Pekergin, Probabilistic Routing for Time-dependent Traffic: Analysis with the Diffusion and Fluid Approximations, IFIP ATM Workshop, Antwerp, czerwiec 1999. [18] T. Czach´orski, F. Pekergin, Modelling the time-dependent flows of virtual connections in ATM networks, Bulletin of PAS, in print. [19] T. Czach´orski, J-M. Fourneau, S. J¸edru´s, F. Pekergin, Transient State Analysis in Cellular Networks: the use of Diffusion Approximation, QNETS 2000, Ilkley 2000. [20] T. Czach´orski, J-M. Fournau, S. Jedru´s, Cellular Networks: Transient State Models, Proc. of First Polish-German Teletraffic Symposium PFTS 2000, 24-26 September 2000, Dresden. [21] A. Duda, Diffusion Approximations for Time-Dependent Queueing Systems, IEEE J. on Selected Areas in Communications, Vol. SAC-4, no. 6, September 1986. [22] W. Feller, The parabolic differential equations and the associated semigroups of transformations, Annales Mathematicae, Vol. 55, pp. 468-519, 1952. [23] W. Feller, Diffusion processes in one dimension, Transactions of American Mathematical Society, Vol. 77, pp. 1-31, 1954.

T10/28

[24] J. Filipiak, A. R. Pach, Selection of Coefficients for a Diffusion-Equation Model of MultiServer Queue, PERFORMANCE 84, Proc. of The 10-th International Symposium on Computer Performance, North Holland, Amsterdam 1984. [25] D. P. Gaver, Observing stochastic processes, and approximate transform inversion, Operations Research, vol. 14. no. 3, pp. 444-459, 1966. [26] D. P. Gaver, Diffusion Approximations and Models for Certain Congestion Problems, Journal of Applied Probability, Vol. 5, pp. 607-623, 1968. [27] E. Gelenbe, On Approximate Computer Systems Models, J. ACM, vol. 22, no. 2, 1975. [28] E. Gelenbe, G. Pujolle, The Behaviour of a Single Queue in a General Queueing Network, Acta Informatica, Vol. 7, Fasc. 2, pp.123-136, 1976. [29] E. Gelenbe, A non-Markovian diffusion model and its application to the approximation of queueing system behaviour, IRIA Rapport de Recherche no. 158, 1976. [30] E. Gelenbe, Probabilistic models of computer systems. Part II, Acta Informatica, vol. 12, pp. 285-303, 1979. [31] E. Gelenbe, J. Labetoulle, R. Marie, M. Metivier, G. Pujolle, W. Stewart, R´eseaux de files d’attente – mod´elisation et traitement num´erique, Editions Hommes et Techniques, Paris 1980. [32] E. Gelenbe, X. Mang, Y. Feng, A diffusion cell loss estimate for ATM with multiclass bursty traffic, in: D. D. Kouvatsos (Editor), Performance Modelling and Evaluation of ATM Networks, Vol. 2, Chapman and Hall, London 1996. ¨ [33] E. Gelenbe, X. Mang, R. Onvural, Diffusion based statistical call admission control in ATM, Performance Evaluation, vol. 27-28, pp. 411-436, 1996. [34] B. Halachmi, W. R. Franta, A Diffusion Approximation to the Multi-Server Queue, Management Sci., vol. 24, no. 5 pp. 522-529, 1978. [35] H. Heffes, D. M. Lucantoni, A Markov modulated characterization of packetized voice and data traffic and related statistical multiplexer parformance, IEEE J. SAC, SAC-4(6), pp. 856-867, 1986. [36] D. P. Heyman, An Approximation for the Busy Period of the M/G/1 Queue Using a Diffusion Model, J. of Applied Probility, vol. 11, pp. 159-169, 1974. [37] D. Iglehart, W. Whitt, Multiple Channel Queues in Heavy Traffic, Part I-III, Advances in Applied Probability, vol. 2, pp. 150-177, 355-369, 1970. [38] D. Iglehart, Weak Convergence in Queueing Theory, Advances in Applied Probability, vol. 5, pp. 570-594, 1973. [39] B. Jouaber, T. Atmaca, M. Pastuszka, T. Czach´orski, Modelling the Sliding Window Mechanism, The IEEE International Conference on Communications, ICC’98, pp. 1749-1753, Atlanta, Georgia, USA, 7-11 czerwiec 1998. [40] B. Jouaber, T. Atmaca, M. Pastuszka, T. Czach´orski, A multi-barrier diffusion model to study performances of a packet-to-cell interface, art. S48.5, Session: Special applications in ATM Network Management, International Conference on Telecommunications ICT’98, Porto Carras, Greece, 22-25 czerwiec 1998. [41] T. Kimura, Diffusion Approximation for an M/G/m Queue, Operations Research, vol. 31, no. 2, pp. 304-321, 1983. T10/29

[42] L. Kleinrock, Queueing Systems, vol. I: Theory, vol. II: Computer Applications Wiley, New York 1975, 1976. [43] H. Kobayashi, Application of the diffusion approximation to queueing networks, Part 1: Equilibrium queue distributions, J.ACM, vol. 21, no. 2, pp. 316-328, Part 2: Nonequilibrium distributions and applications to queueing modeling, J.ACM, vol. 21, no. 3, pp. 459469, 1974. [44] H. Kobayashi, Modeling and Analysis: An Introduction to System Performance Evaluation Methodology, Addison Wesley, Reading, Mass. 1978. [45] H. Kobayashi, Q. Ren, A Diffusion Approximation Analysis of an ATM Statistical Multiplexer with Multiple Types of Traffic, Part I: Equilibrium State Solutions, Proc. of IEEE International Conf. on Communications, ICC ’93, pp. 1047-1053, May 23-26, 1993, Geneva, Switzerland. [46] L. A. Kulkarni, Transient behaviour of queueing systems with correlated traffic, Performance Evaluation, vol. 27-28, pp. 117-146, 1996. [47] D-S. Lee, S-Q. Li, Transient analysis of multi-sever queues withMarkov-modulated Poisson arrivals and overload control, Performance Evaluation, vol. 16, pp. 49-66, 1992. [48] B. Maglaris, D. Anastassiou, P. Sen, G. Karlsson, J. Rubins, Performance models of statistical multiplexing in packet video communications, IEEE Trans. on Communications, Vol.24559 36, No. 7 pp. 834-844, 1988. [49] G. F. Newell, Queues with time-dependent rates, Part I: The transition through saturation; Part II: The maximum queue and return to equilibrium;, Part III: A mild rush hour, J. Appl. Prob. vol. 5, pp. 436-451, 579-590, 591-606. 1968. [50] G. F. Newell, Applications of Queueing Theory, Chapman and Hall, London 1971. [51] M. Reiser, H. Kobayashi, Accuracy of the Diffusion Approximation for Some Queueing Systems, IBM J. of Res. Develop., vol. 18, pp. 110-124, 1974. [52] S. Sharma, D. Tipper, Approximate models for the Study of Nonstationary Queues and Their Applications to Communication Networks, Proc. of IEEE International Conf. on Communications, ICC ’93, pp. 352-358, May 23-26, 1993, Geneva, Switzerland. [53] H. Stehfest, Algorithm 368: Numeric inversion of Laplace transform, Comm. of ACM, vol. 13, no. 1, pp. 47-49, 1970. [54] F. Veillon, Algorithm 486: Numerical Inversion of Laplace Transform, Comm. of ACM, vol. 17, no. 10, pp. 587-589, 1974; also: F. Veillon, Quelques m´ethodes nouvelles pour le calcul num´erique de la transform´e inverse de Laplace, Th. Univ. de Grenoble, 1972. [55] D. Zwingler, Handbook of Differential Equations, Academic Press, Boston 1989, pp. 623627.

T10/30