aggregate bandwidth estimation in stored video distribution systems

19
Aggregate Bandwidth Estimation in Video Distribution Systems G. Boggia, P. Camarda , D. Striccoli Politecnico di Bari – Dip. di Elettrotecnica ed Elettronica Via E. Orabona, 4 – 70125 Bari (Italy) E-mail: [email protected] Abstract—In this paper we propose various original algorithms for evaluating, in a video distribution system, a statistical estimation of aggregate bandwidth needed by a given number of smoothed video streams. Each video stream is characterized by the marginal distribution, approximated by a histogram derived from real video traces. Independence among video streams is the common assumption for the developed algorithms, whose results are compared with simulation and with other results, based on the same assumptions, already presented in the literature, discussing the pros and cons of the considered solutions. Index terms-- Video Distribution, Bandwidth Evaluation, Analytical and Simulation Model. Corresponding author

Upload: independent

Post on 30-Nov-2023

0 views

Category:

Documents


0 download

TRANSCRIPT

Aggregate Bandwidth Estimation in Video Distribution Systems

G. Boggia, P. Camarda∗, D. Striccoli

Politecnico di Bari – Dip. di Elettrotecnica ed Elettronica Via E. Orabona, 4 – 70125 Bari (Italy)

E-mail: [email protected]

Abstract—In this paper we propose various original algorithms for evaluating, in a video distribution system, a statistical estimation of aggregate bandwidth needed by a given number of smoothed video streams. Each video stream is characterized by the marginal distribution, approximated by a histogram derived from real video traces. Independence among video streams is the common assumption for the developed algorithms, whose results are compared with simulation and with other results, based on the same assumptions, already presented in the literature, discussing the pros and cons of the considered solutions. Index terms-- Video Distribution, Bandwidth Evaluation, Analytical and Simulation Model.

∗ Corresponding author

I. INTRODUCTION A large part of traffic in future broadband networks will be presumably generated by multimedia applications. In such systems, capital importance will play the issue of Quality of Service (QoS), which imposes strict constraints on admission control, bandwidth allocation, capacity planning, etc. In this paper, we have considered a video distribution system, which forms the core of applications like Video on Demand, Distance Learning, Internet video broadcast, etc.[1,2]. In particular, we suppose to distribute stored video, codified by standard MPEG algorithms, which, as well known, produce a variable bit rate (VBR) traffic. As an example, in Fig. 1 is reported the bit rate of the first 15000 frames of a MPEG-1 coded trace of the film “Star Wars”.

0

20

40

60

80

100

120

140

1.0E+00 3.0E+03 6.0E+03 9.0E+03 1.2E+04

Time in Frame Unit

Figure 1a – 15000 frames of the film “Star Wars” without smoothing.

As reported in [3], work-ahead smoothing algorithms, exploiting client buffer, can be employed for optimizing network resources utilization. As an example, in Figs. 1b-1c is reported the bit rate of the same film “Star Wars” smoothed with a client buffer, respectively, of 256K and 1.0M Bytes.

0

5

10

15

20

25

30

1.0E+00 3.0E+03 6.0E+03 9.0E+03 1.2E+04

Time in Frame Unit

Figure 1b – 15000 frames of the film “Star Wars” with smoothing (buffer size = 256 KB).

0

5

10

15

20

25

30

1,0E+00 3,0E+03 6,0E+03 9,0E+03 1,2E+04

Time in Frame Unit

Fram

e si

ze (K

b)

Figure 1c – 15000 frames of the film “Star Wars” with smoothing (buffer size = 1 MB).

The technique utilized to reach this purpose consists in transmitting as long as possible pieces of the same film with a constant bit rate, that varies from piece to piece. The variations of the bit rate are done accordingly to a scheduling algorithm that assures the minimum variability of the bit rate between all the CBR pieces. In this way it can be demonstrated (see [2]) that the smoothing is the best possible. As can be inferred, smoothing technique reduces consistently the rate variability and so improves significantly the bandwidth resources allocation on the network exploiting also statistical multiplexing gains in the aggregate bandwidth. For this reason we suppose that all the films will be present on the network in a smoothed manner, as calculated by the smoothing algorithm. The consequence of this smoothing algorithm is that the rate marginal distribution of smoothed sequences is quite radical different when compared with original unsmoothed sequence. As an example, in figures 2a-2c are reported the rate histograms relative to the figures 1a-1c. As highlighted in [2,3] a consistent gain in network resource utilization can be obtained by exploiting smoothing, which will likely be implemented in real systems. A significant problem in such systems result the aggregate bandwidth estimation needed for planning the transmission infrastructure and for admission control. Such a problem, in the literature, has been attacked by exploiting Chernoff bound, in the hypothesis of independence among video streams and bufferless systems [3]. This last hypothesis of bufferless network switch, can be validly justified by considering that the real-time distribution of smoothed video traffic imposes stringent delay requirements and as a consequence very small buffer can be employed in the intermediate network nodes. As a matter of facts, in this paper we model the network switch as a bufferless multiplexer. Various original algorithms for evaluating the aggregate bandwidth needed by N independent streams are proposed comparing the obtained results with simulation and with other results, based on the same assumptions, already presented in the literature, discussing the pros and cons of the considered solutions. Each stream is characterized by its marginal distribution approximated by a histogram derived from real video traces. In particular, the analytical models and the relative results for homogeneous streams are developed and presented in section II, while in section III the case of heterogeneous systems is considered.

0

200

400

600

800

1000

1200

1400

1600

1800

2000

0.0 12.5 25.0 37.5 50.0 62.5 74.9 87.4 99.9 112.4

Frame Size (Kb)

Figure 2a – Frame Size distribution for the film “Star Wars” without smoothing.

0

500

1000

1500

2000

2500

3000

3500

4000

4500

0 3 5 8 11 13 16 19 21 24

Frame Size (Kb)

Figure 2b – Frame Size distribution for the film “Star Wars” with smoothing (buffer size 256 KB).

0

1000

2000

3000

4000

5000

6000

0 2 5 7 10 12 15 17 20 22

Frame size (Kb)

Num

ber o

f Fra

mes

Figure 2c – Frame Size distribution for the film “Star Wars” with smoothing (buffer size 1 MB).

II. BANDWIDTH ESTIMATION FOR HOMOGENEOUS STREAMS In this section we consider a system that can deliver only statistically homogeneous streams, typically originating from the same source, while in the next section a more general system, considering heterogeneous streams, will be evaluated, exploiting the analytical results obtained in this section. A. Analytical model We consider N homogeneous streams, either smoothed or unsmoothed, whose rate can be statistically characterized by the histogram method, that consists in defining, for each of them, a discrete r.v. that can assume the K values r1 < r2 < … < rK with probability p(ri) = pi (i=1, 2, …., K). The system state can be

defined by the following vector (α1, α2, …, αN) where the generic αi (αi =1, 2, …., K), identifies the stream rate i. In the simplifying hypothesis that the N video streams are independent, the state probability is given by

∏ ==

N

iN ipp

121 ),...,,( αααα (1)

The aggregate bandwidth, needed in this specific state, results N

rrrΛ ααα +++= ...21

. By considering that several streams can exploit simultaneously the same rate, the system state can be expressed, more simply, by the vector (n1, n2, …, nK), where the generic ni indicates the number of streams that exploit rate ri. Obviously, the total number of streams must be N, i.e., n1+ n2+…+ nK = N. The needed bandwidth for this state is given by Λ = n1r1+ n2r2 + … + nKrK The state probability results

=⎟⎟⎠

⎞⎜⎜⎝

⎛ −−⎟⎟⎠

⎞⎜⎜⎝

⎛ −⎟⎟⎠

⎞⎜⎜⎝

⎛= ∏

=

−K

i

ni

K

K

Kip

nnN

nnN

nN

nnnp1

1

2

1

121

......),...,,( N!∏

=

K

ii

ni

np i

1!

(2)

This last result can be justified by simple combinatorial considerations, observing that the n1 streams

that exploit rate r1, can occupy n1 of the N streams and thus the number of combinations is .

Similarly the n

⎟⎟⎠

⎞⎜⎜⎝

1nN

2 streams that exploit rate r2, can occupy n2 of the N- n1 free streams and thus the number

of combinations is , etc. ⎟⎟⎠

⎞⎜⎜⎝

⎛ −

2

1

nnN

The needed bandwidth can be evaluated only statistically. In particular, let Λs be the available bandwidth, we have

∑ ∑ ∑ ∏∑= = = ==

==≤N

n

N

n

N

n

K

i i

niN

nKs

K

i

KnpNnnp)Λp(Λ

0 0 0 101

1 1

)3( !

!...)..., ,(...

with the constraints

⎩⎨⎧

≤+++=+++

sKK

k

ΛrnrnrnNnnn

...

...

2211

21

By imposing a uniform quantization in the histogram, i.e., r2=2 r1, r3=3 r1, …, rK=K r1, the second constraint becomes n1+2 n2+…+KnK≤Λs/r1. The previous expression (3), including the constraints, can be synthetically written as:

p(Λ Λ≤ s) ∑ ∏Λ+++

=+++ =≤

=

rKnnnNnnn

K

ii

ni

sK

K

i

npN

...2... 1

21

21!

! (4)

It is quite intuitive to realize that the previous expression can be rewritten evaluating the number of terms required by the disequation in the constraints. We have

p(Λ Λ≤ s) ∑ ∑ ∏=

=+++=+++ = ⎟

⎟⎟⎟

⎜⎜⎜⎜

=h

NjjKnnn

Nnnn

K

ii

ni

K

K

i

npN

...2... 1

21

21!

! (5)

where h = ⎣ ⎦1rsΛ .

The same expression can be obtained by a more formal (and much more complex) approach [5]. It is evident that when Λs is equal to the maximum possible rate for N streams, i.e., Λs=NKr1, the previous probability must be one. A brute force evaluation of the previous expression is practically impossible, due to the exponential number of terms in the summation. With the target to find a simple iterative method let us rewrite the previous expression (5) indicating the inner summation by the symbol a. We have:

⎟⎟⎠

⎞⎜⎜⎝

⎛=Λ≤Λ ∑

=−

h

NjNjs ap )( (6)

Various alternative iterative algorithms are proposed in the sequel for evaluating these terms aj. The simple iteration of the first proposed method is reported below (see appendix A).

iji

K

i

j apj

iNap −+

=∑ ⎥

⎤⎢⎣

⎡ += 1

1

1

1 1 - )1( where (7) ⎩⎨⎧

<−=−=

− 0 ;0)1(,...,1ija

NKj

ij

with initial condition a0 = p1N.

The terms aj have a precise physical meaning. In fact, a0 represents the probability that all N streams are using their smallest bit rate, r1, and thus the global bit rate results Nr1. Likewise, the term a1 represents the probability that N-1 streams exploit rate r1, while one stream transmits using rate r2= 2r1, thus the needed bandwidth result (N+1)r1. In general we can say that the term aj represents the probability that the N streams exploit globally a bandwidth given by (N+j)r1 .

As mentioned before, the sum of all aj must be one, i.e., 1)1(

0=∑

=

NK

j ja , indeed, we have verified this

condition in the numerical examples. The probability P(Λ ≤ Λs) in (6) can be evaluated by summing all values of aj for j varying from 0 to h-N. Alternatively, we may evaluate 1- p(Λ Λ≤ s), by summing the values of aj for j varying from h-N+1 to its maximum value (K-1)N. The previous iterative expressions, very simple and efficient, present some problems of error propagation when the number of streams exceeds a few hundreds or even less in some limit case. To overcome this problem and thus generalize the solution a new iterative expression has been derived exploiting the potentiality of Z transform. Let F(z) be the Z transform of the coefficients aj; it results (see Appendix B):

F(z) = = (8) ∑∞

=0j

jj za

NK

i

iizp ⎟

⎟⎠

⎞⎜⎜⎝

⎛∑=

1

1

Actually, we are interested in defining an alternative procedure to find the coefficients aj. Let us rewrite (8) with a minor modification in the symbolism. Let us denote with

∑∑−

==

− ==⎟⎟⎠

⎞⎜⎜⎝

⎛=

NK

j

jNj

N

NK

i

iiN zazPzpzF

)1(

0

)(

1

1 )()( (9)

Likewise, let us denote by

∑−−

=

−−− ==

)1)(1(

0

)1(11 )()(

NK

j

jNj

NN zazPzF (10)

Obviously, it results

]...)[()()()( 12111

−−− +++== K

KNNN zpzppzFzPzFzF

And more explicitly we have

∑∑∑

∑∑−−

=

−+−−−

=

+−−−

=

−−−

=

−−

=

+++=

=+++=

)1)(1(

0

1)1()1)(1(

0

1)1(2

)1)(1(

0

)1(1

121

)1)(1(

0

)1()1(

0

)(

...

]...[

NK

j

KjNK

NK

j

jNNK

j

jN

KK

NK

j

jNNK

j

jN

zapzapzap

zpzppzaza

jjj

jj

By imposing the equality between the coefficients for the same power of z in left and right hand side, we have:

)1()1(2

)1(1

)(11

... −−−+−−

+++= NK

NNj

NKjjj

apapapa (11)

where the initial condition result F1(z)=P(z) and thus we have . ...; ; ; )1(12

)1(11

)1(0 KK papapa === −

From equation (11), we have

∑−

=

−=1

0

)1()1()2(K

mmjmj aaa j=0, 1, … , 2(K-1) (12)

which represents the convolution of the sequence a with itself; in matrix form . In general we have:

)1()()( aaa 12 ∗=

∑−

=

−−=

1

0

)1()1()(K

m

nmjm

nj aaa , k=0,1, … , n(K-1) (13)

In matrix form we have )1()()( aaa 1 ∗= −NN (14)

This last result should not surprise because it is well known that the Z transform of a convolution is a product of the Z transform of the convoluted sequences, as reported in (8). Still the result reported in (14) can be justified by considering that represents the p.m.f. of a sum of N independent random variables and thus it is given by the convolution among the p.m.f. of the summed random variables [4].

)( Na

Another technique to find all the terms acts as follows. We have to calculate: ja

∑ ∏=++

=++ =

=

jKnnnNnnn

K

r r

nr

j

K

K

r

npNa

...2... 1

21

21 !! , KNjN ≤≤ (15)

Now we define the following function:

∑ ∏=+++

=+++ =

=

jsnnnnnnn

s

r r

nr

js

s

s

r

npnng

...2... 1

,

21

21 !!)( (16)

It is obvious that . )(, Nga jKj =

We can also note that the generic function will contain all the contributes relative to the function with added some terms necessarily containing all the conditions on , with assuming all

the values between 0 and N and respecting all the boundaries under the symbol of the summation notation in (16).

)(, ng js

)(,1 ng js − sn sn

In particular, for we have: 0=sn

)(!

!!

!)( ,1

)1(...2... 1

...2... 1

0,

121

121

21

21

ngnpn

npnng js

jnsnnnnnn

s

r r

nr

jsnnnnnnn

s

r r

nr

njs

s

s

r

s

s

r

s −

=−+++=+++ =

=+++=+++ =

= === ∑ ∏∑ ∏−

Now let us consider the contributes to relative to the case )(, ng js 1=sn . Since , we will obtain: 1=sn

)1()!1(

!!!1

!)!1()!1(

!!)( ,1

)()1(...21...

1

1...2... 1

1,

121

121

1

21

21

−⎟⎟⎠

⎞⎜⎜⎝

⎛−

=−−

== −−

−=−+++−=+++

==+++

=+++ == ∑ ∏∑ ∏

ngpn

nnppn

nn

npnng sjss

sjnsnnnnnn

s

r r

nrs

jsnnnnnnn

s

r r

nr

njs

s

s

r

s

s

r

s

Following the same procedure we find that, in general:

)(!)!(

!)( ,1, qngqp

qnnng qsjs

sqnjs

q

s −⎟⎟⎠

⎞⎜⎜⎝

⎛−

= −−= 1

0−−

≤≤s

njq

The parameter can arrive only to q1−

−s

nj since, for the generic , it must be)(, ng js nj ≥ ; similarly, for

the function )(,1 qng qsjs −−− we have that qnqsj −≥− .

If now we call: 1−

−=

snjI , we have:

)(!)!(

!)()( ,1

0

,, qngqp

qnnngng qsjs

sI

ppnjsjs

q

s −⎟⎟⎠

⎞⎜⎜⎝

⎛−

== −−

==∑ (17)

The equation (17) has to be used for Ks ,...2,1= and for Nn ,...2,1= . The initial conditions to be applied are:

1)0(0, =sg , Ks ,...2,1=n

n png 1,1 )( = , Nn ,...2,1=Iterating in this way, we finally obtain all the functions for each )(, Ng jK j , corresponding to all the terms we want to find. ja B. Numerical Results In this section the algorithms developed in the previous section will be applied to specific cases in order to evaluate the aggregate bandwidth needed by a given number of streams. In particular, 15000 frames of the film Star Wars have been considered which have been smoothed with a user buffer of 1 MB. The evaluated probability histogram considers 5 bins (K=5) giving the following probabilities: p1 = 0.13193; p2 = 0.16; p3 = 0.6376; p4 = 0.0048; p5 = 0.06567; while the rate of r1 results 147552 bit/s. The coefficients aj have been derived by the iterative algorithms exposed in the previous section for 20 streams of the film Star Wars and the results are reported in Fig. 3, which represents the p.m.f. of the global bandwidth needed by the 20 streams. In fact, as discussed before, a generic value of aj gives the probability that the bandwidth needed by the considered 20 streams is equal to (N+j)r1, i.e., aj = p{Λ=(N+j)r1}. It not surprising that the shape of the figure is similar to a Gaussian. This derives by an application of the central limit theorem to the sum of 20 random variables supposed independent.

0.0

0.2

0.4

0.6

0.8

1.0

1.2

0 5 10 15 20 25 30 35 40 45 50 55 60 65 70 75 80

Values of j

Figure 3 – p.m.f. of the global bandwidth needed by 20 streams of the film Star Wars smoothed with a buffer of 1 MB.

The previous data are exploited to evaluate the aggregate bandwidth comparing the results of the proposed approximations based on iterative methods and on the application of central limit theorem with those obtained by Chernoff bound and simulation for various values of main system parameters, namely, loss probability and number of streams. The reader is referred to reference [3] for the details about the Chernoff bound.

0

5

10

15

20

25

30

35

40

45

50

10 20 30 40 50 60 70 80 90 100

Number of Streams

Iterative methodChernoffGaussianSimulation

Figure 4 - Aggregate bandwidth for the film Star Wars with a loss probability of 10-6 (with different evaluation methods).

05

101520253035404550

10 20 30 40 50 60 70 80 90 100

Number of Streams

SimulationHistograms - 5 binsHistograms - 10 binsHistograms - 15 binsHistograms - 20 bins

Figure 5 - Aggregate bandwidth for the film Star Wars with a loss probability of 10-6 (with the iterative method and different number of bins).

As can be observed from the previous figures, the result obtained by the analytical methods developed in this paper are very close to the results obtained by the Chernoff method. The results of all methods become enough more close to the simulation results increasing the number of bins in the histogram, although after a given value there is a saturation with small improvements.

III. BANDWIDTH ESTIMATION FOR ETEROGENEOUS STREAMS A. Analytical model In this section the aggregate bandwidth in case of streams that have different statistical characteristics (as usual with variegated sources), will be evaluated. We suppose that the video server has M different types of films and each one is characterized by the histogram method, that consists in defining, for a generic film i, a discrete r.v. that can assume the Ki values ri1<ri1<…< with probability p(r

iikr ij)=pij (j=1, …, Ki). We suppose that a user can choose a film i with probability βi, (obviously, β1+ β2+ …… +βM=1) The system state can be defined by the following vector (α1, α2, …, αN) where the generic αi, is a couple of indices (i,j) that identifies the type of stream and the relative rate. In the simplifying hypothesis that the N video streams are independent, the state probability is given by

p(α1, α2, …, αN) = ∏ (18) =

N

i ip

The aggregate bandwidth needed in this specific state, results Λ=N

rrr ααα +++ ...21

. By considering that several streams can exploit simultaneously the same rate, the system state can be expressed, more simply, by where the generic n ) ..., , , ..., , ,( 2111211 1 MMkk nnnnn ij indicates the number of streams that exploit the rate rij. Obviously, the total number of streams must be N. The needed bandwidth for this state is given by

.......11 1112121111 MM MkMkkk rnrnrnrnΛ +++++=

Following the same concepts developed for the single type of streams, the state probability results

∏ ∏= =

⎟⎟⎠

⎞⎜⎜⎝

⎛⎟⎟⎠

⎞⎜⎜⎝

⎛⎟⎟⎠

⎞⎜⎜⎝

⎛=

=M

m

K

r

nmr

nm

MK

KM

Mk

m

mrm

M

M

M

pn

nnNn

nNnN

nnnp

1 1

1,11

12

11

11

1211

-...--...

-

),...,,(

β= N!∏∏

= =

M

m

K

r mr

nmr

m mrm

np

1 1!)(β (19)

The needed aggregate bandwidth can be evaluated only statistically and in particular we have

∑∑ ∑ ∏∏= = = = =

=≤N

n

N

n

N

n

M

m

K

r mr

nmr

s

MMK

m mrm

npNΛΛP

0 0 0 1 111 12!)(!...)( β (20)

with the constraints

⎩⎨⎧

≤+++++=+++++

sMkMkkk

Mkk

ΛrnrnrnrnNnnnn

MM

M

............

11

1

1112121111

11211

By imposing the uniform quantization among all films, i.e.,

⎪⎪⎩

⎪⎪⎨

===…==

===…====…==

121

1222212

112111

...2

Kr r r r r

r r r r r r r r r

KMKKK

M

M

and exploiting an approach similar to the homogeneous case, it is possible to find the following result [5].

∑=

−=Λ≤Λh

NjNjs aP )( (21)

( )∑ ∏∏≤++

=++ = =

− =N

ΛrnrnNnn

M

m

K

r mr

nmrm

Nj

sMMkMMk

MMk

m mr

npNa

...... 1 1

1111

11!

! β (22)

The previous expression, like the homogeneous case, cannot be directly exploited due to its complexity. Also in this case an iterative approach can be pursued. In particular, we can find by (22):

NM

mmm pa ⎟

⎟⎠

⎞⎜⎜⎝

⎛= ∑

=110 )(β

⎥⎥

⎢⎢

⎟⎟⎠

⎞⎜⎜⎝

⎛=

==∑∑

1

11

121 )(

NM

mmm

M

mmm ppNa ββ

Indicating by

∑=

=M

mmm pp

111 )(β ; ∑

=

=M

mmm pp

122 β

we have Npa 10 = ; 1

121−= NpNpa

which correspond to the first two terms of the iterative method obtained in the case of homogeneous streams. In general, let

∑=

=M

mmjmj pp

1

β ∀ 1 ≤ m ≤ K (23)

With the previous position, the expression (22) becomes equivalent to the corresponding equation (6) of the homogeneous case and thus a similar approach can be followed to find an iterative solution. In general, the following iterative algorithm can be found

iji

K

i

j apj

iNap −+

=∑ ⎥

⎤⎢⎣

⎡ += 1

1

1

1 1 - )1( where (24) ⎩⎨⎧

<−=−=

− 0 ;0)1(,...,1ija

NKj

ij

with a0 = . Np1

The coefficients aj-N (likewise the homogeneous case) have a specific meaning. In fact, a0 represents the probability that all N streams are using their smallest bit rate, r1, and thus the global bandwidth results N r1. Likewise, the term a1 represents the probability that N-1 streams are exploiting the rate r1, while one stream is using the rate r2= 2 r1, thus the needed bandwidth result (N+1)r1. In general we can say that the term aj represents the probability that the N streams exploit a bandwidth given by (N+k) r1. Likewise the homogeneous case, to overcome some problems of error propagation a new iterative expression has been derived exploiting the potentiality of Z transform. The derivation is the same of the homogeneous case and, obviously, gives the same results:

)1(1

)1(12

)1(1

)( ... −+−

−−

− +++= NKjK

Nj

Nj

Nj apapapa (25)

where the initial conditions result

. ...; ; ; )1(12

)1(11

)1(0 KK papapa === −

Equation (25) represents the convolution of the sequence with the sequence a; in matrix form )( 1Na −

)1()()( aaa 1 ∗= −NN (26)

We can also extend the results obtained using the (20) to the heterogeneous case, but we have to use the (23) to obtain the probabilities with i from 1 to K. We will find the same values of the terms obtained using the (25).

ip ja

B. Numerical Results In this section the algorithms developed in the previous section will be applied to specific cases in order to evaluate the aggregate bandwidth needed by a given number of streams. In particular, 15000 frames of the films Star Wars, Asterix and Mr Bean have been considered which have been smoothed with a user buffer of 1 MB. The evaluated probability histogram considers 5 bars (K=5) giving the following probabilities: Star Wars Asterix Mr. Bean p1= 0.93433333 p1= 0.31448763 p1= 0.69785276 p2= 0.06566667 p2= 0.68544570 p2= 0.29807949 p3= 0 p3= 0.00006667 p3= 0.00400107 p4= 0 p4= 0 p4= 0 p5= 0 p5= 0 p5= 0.00006668 The value of r1, common to all considered films results: r1= 588336 bit/s. The coefficients aj have been derived by the algorithms exposed in the previous section for 30 streams of the films, 10 streams for each film (Star War, Asterix, Mr Bean) and the results are reported in Fig. 6, which represents the p.m.f. of the global bandwidth needed by the 30 streams. In fact, as discussed before, a generic value of aj gives the probability that the bandwidth needed by the considered 30 streams is equal to (N+k)r1, i.e., aj = p{Λ=(N+k)r1}. The shape of the figure is similar to a Gaussian, likewise the homogeneous case. This derives by an application of the central limit theorem to the sum of 30 random variables supposed independent.

0

0.02

0.04

0.06

0.08

0.1

0.12

0.14

0.16

0 10 20 30 40 50 60 70 80 90 100 110 120

Values of j

Figure 6 – p.m.f. of the global bandwidth needed by 30 video streams uniformly distributed among the three films smoothed with a buffer of 1 MB.

The previous data are exploited to evaluate the aggregate bandwidth comparing the results of the proposed method with those obtained by Chernoff bound and simulation for various values of main system parameters, namely, loss probability and number of streams.

0

20

40

60

80

100

120

9 18 27 36 45 54 63 72 81 90 99 108

Number of Streams

Iterative MethodChernoffGaussianSimulation

Figure 7 - Aggregate bandwidth for the three films with a loss probability of 10-6 (with different evaluation methods).

0

20

40

60

80

100

120

9 18 27 36 45 54 63 72 81 90 99 108

Number of Streams

SimulationHistogram - 5 binsHistogram - 10 binsHistogram - 15 binsHistogram - 20 bins

Figure 8 - Aggregate bandwidth for the three films with a loss probability of 10-6 (with the iterative method and different number of bins).

As can be observed from previous figures, the result obtained by the analytical methods developed in this paper, similarly to the homogeneous case, are quite close to the results obtained by the Chernoff method and both become enough more close to the simulation results increasing the number of bins in the histogram, although after a given value there is a saturation without any further improvements. IV. CONCLUSIONS The original algorithms presented in this paper for bandwidth estimation in VBR video distribution systems, open, in the opinion of authors, a new approach to the problem that can be fruitfully explored and that makes use of a probabilities distribution of the single film as obtained with the histogram method. We can also note that this method is valid independently from the shape of the probability distribution and can be used even if the distribution is not referable to the ones usually known in the literature. Nevertheless, the authors are still working to the refinements of these methods. In particular, the first hypothesis that is not imposed is the independence among streams and the authors are confident that a suitable solution can be obtained with variants of the algorithms presented in this paper. REFERENCES [1] Andrew s. Tanenbaum, Computer Networks, Prentice-Hall, Third Edition 1996.

[2] James D. Salehi, Zhi-Li Zhang, Jim Kurose, Don Towsley, “Supporting Stored Video: Reducing Rate Variability and End-to-End Resource Requirements Through Optimal Smoothing”, IEEE/ACM Transactions On Networking, vol. 6, No 4, pp. 397-410, August 1998.

[3] Zhi-Li Zhang, Jim Kurose, James D. Salehi, Don Towsley, “Smoothing, Statistical Multiplexing, and Call Admission Control for Stored Video”, IEEE Journal on Selected Areas in Communications, vol. 15, No 6, pp. 1148-1166, August 1997.

[4] A. Papoulis, Probability, random variables and stochastic processes, Mc Graw Hill, 1991. [5] D. Striccoli , 2000. “Stima della banda aggregata per sistemi di distribuzione video”, Dr. Eng.

Degree Thesis, Polytechnic of Bari, Italy, (in Italian).

APPENDIX A The goal of this section is to find an iterative method to evaluate the likelihood that a system composed by a number N of flows assumes a determined bandwidth. We know that:

p(Λ Λ≤ sup) = ⎟⎟⎟⎟

⎜⎜⎜⎜

⎟⎟⎟⎟

⎜⎜⎜⎜

∑ ∏∑= =

=+++=+++

max

21

21 1)...2(

... !!

h

Nj

K

ii

ni

jKnnnNnnn n

pNi

K

K

(A.1)

supposing the histogram method and the following subdivision of the rates: 1121 / ;2/2 ;/ KrKKrrrKrrKrr KKKK =====

We can make the following assumption:

∏∑=

=+++=+++

− =K

ii

ni

jKnnnNnnn

Nj npNa

i

K

K 1)...2(

... !!

21

21

NKNj )1(0 −≤−≤∀

Let us consider the first addend of the external sum; it is obtained for n1=N and n2=n3=…=nK=0. In fact, from this assumption follows that j=N. The value of this term will be:

NN pNpNa 110 )!(! ==

and clearly represents the probability that all the flows are present in the network with their minimum rate r1 (given the independence of all the flows present in the network). Similarly, the second addend of the external sum of (A.1) will be obtained assuming n1=N-1, n2=1 and n3=…=nK=0. With this position, in fact, we will obtain j=N+1. In this case, we have:

21

121

11 )!1/()(! pNpNppNa NN −− =−=

and therefore:

022111 aNppNpap N == .

Now let us find the term a2. The conditions to be respected are the following:

⎩⎨⎧

=++++=+++

NnnnNKnnn

K

K

...2...2

21

21

There are two cases that respect the conditions mentioned above. The first is n1=N-2, n2=2 and n3=…=nK=0 and the second is n1=N-1, n3=1 and n2= n4=…=nK=0. For this reason, the term a2 will be the sum of two addends:

31

1

22

213

11

22

21

2 2)1(

)!1(!

!2)!2(! pNpppNN

NppN

NppNa N

NNN−

−−−

+−

=−

+−

=

Therefore:

031221 ]2)1[( aNpapNap +−= .

Now if we observe the structure of the terms and , we can suppose also the structure of . Let us imagine that the term is structured in this way:

11ap 21ap 31ap

31ap

2422312231 )()(3

2 apNCapNCapNap ++−

=

where C1(N) and C2(N) are generic coefficients depending only on the number N of flows. To find the value of these coefficients, let us replace the expressions of a2, a1 and a0 into the expression of . We find that:

31ap

.)()(3

)2(6

)2)(1(4

11232

21132

11

32

313 ppNCpppNNCpppNNppNNNa NNNN −−−− ++

−+

−−= (A.2)

This expression suggests us all the combinations of ni indexes that verify the constraints necessary to find a3, which are:

⎩⎨⎧

=++++=+++

NnnnNKnnn

K

K

...3...2

21

21

In fact, the first addend of a3 suggests us that n1=N-3, n2=3 and n3=…=nK=0; the second and the third addend suggest that n1=N-2, n2= n3=1 and n4=…=nK=0; the forth one suggests that n1=N-1, n4=1 and n2= n3= n5=…=nK=0. We can easily observe that all these combinations of ni verify the two constraints described above. Then we can calculate the exact expression of a3 through the ni combinations found above and utilizing (A.1); the result is given by:

.)1(6

)2)(1(4

1132

11

32

313 pNppppNNppNNNa NNN −−− +−+

−−=

Comparing this equation with (B.2), it is possible to find the values for C1(N) and C2(N): ( ) NNCNNC =−= )( ;312)( 21

Now we finally can assert that: 04132231 ]3)12[(]3)2[( aNpapNapNap +−+−=

The same procedure illustrated here to find can obviously be adopted to find all the other terms , , etc. The steps are:

31ap

41ap 51ap1) Express the term as: jap1

∑−

=

−−+− ++−

=2

112121 )(1 K

iijiijj apNCap

jjNap = ; (A.3) iji

K

i

i apNC −+

=∑ 1

1

1

)(

2) replace all the terms aj-i-1, previously found, in the expression of ; jap1

3) find all the combinations of ni indexes that verify the conditions:

⎩⎨⎧

=++++=+++

NnnnjNKnnn

K

K

......2

21

21

and find the exact expression of aj; 4) find the coefficients Ci(N) comparing the expression found at step 1 with the one found at step 1. By way of illustration, we report the first five terms found applying this method:

.4

136

334

3

;3

123

2

;2

1 ; ;

0514233241

04132231

031221021110

aNpapNapNapNap

aNpapNapNap

aNpapNapaNpappa N

+−

+−

+−

=

+−

+−

=

+−

===

In general, since the probabilities are in number of K (that is the number of the bins of the histogram), for j from 1 to K-1, the terms will present addends containing the terms ajap1 j-i till the term a0, while for j>K-1, all the terms will contain exactly K-1 addends, each of them containing the probabilities from p

jap1

2 to pK. It is possible to find directly all the coefficients, , of the generic term with a simple

expression. For all j, we can express the first coefficient in the following way:

)(NC ji jap1

)(1 NC j

jjNNC j 1)(1+−

= = ⎟⎟⎠

⎞⎜⎜⎝

⎛⎥⎦

⎤⎢⎣

⎡⎟⎟⎠

⎞⎜⎜⎝

⎛ −−⎟⎟

⎞⎜⎜⎝

⎛ −11

10

1 jjN

j (A.4)

Now considering all the coefficients , for j>2, we can easily see that: )(2 NC j

;24

23

13

633)(

;23

22

12

312)(

;11

)(

42

32

22

⎟⎟⎠

⎞⎜⎜⎝

⎛⎥⎦

⎤⎢⎣

⎡⎟⎟⎠

⎞⎜⎜⎝

⎛−⎟⎟

⎞⎜⎜⎝

⎛=

−=

⎟⎟⎠

⎞⎜⎜⎝

⎛⎥⎦

⎤⎢⎣

⎡⎟⎟⎠

⎞⎜⎜⎝

⎛−⎟⎟

⎞⎜⎜⎝

⎛=

−=

⎟⎟⎠

⎞⎜⎜⎝

⎛==

NNNC

NNNC

NNNC

and so on. That is:

.22

11

1)(2 ⎟⎟

⎞⎜⎜⎝

⎛⎥⎦

⎤⎢⎣

⎡⎟⎟⎠

⎞⎜⎜⎝

⎛ −−⎟⎟

⎞⎜⎜⎝

⎛ −=

jjN

jNC j (A.5)

Adopting the same procedure for all the other for i from 3 to j-1, the following important relation is obtained:

)(NC ji

.1

11

)( ⎟⎟⎠

⎞⎜⎜⎝

⎛⎥⎦

⎤⎢⎣

⎡⎟⎟⎠

⎞⎜⎜⎝

⎛ −−⎟⎟

⎞⎜⎜⎝

⎛−−

=ij

ij

Nij

NC ji (A.6)

and with a bit of algebra we have:

1)1()( −+

=j

iNNC ji . (A.7)

This last expression presents the advantages of a great simplicity and also it is independent from the coefficients calculated at the previous step. Using (A.7) in (A.3), we find the expression (7) )(1 NC j

i−

iji

K

i

j apj

iNap −+

=∑ ⎥

⎤⎢⎣

⎡ += 1

1

1

1 1 - )1( (A.8)

with . ⎩⎨⎧

<−=−=

− 0 ;0)1(,...,1ija

NKj

ij

APPENDIX B The purpose of this section is to find Z transform of of the terms aj (considered in detail in Appendix A). The expression (A.8) can be rewritten in the following way

1121 ])1()1[(...)1( +−− −−+−++−+= KjKjj apjKNKapjNajp Multiplying left and right hand side by and summing for all values of j from 0 to infinity, we obtain:

jz

∑∑∑∞

−=+−

=−

=−+−++−+=

11

112

01 ])1)(1[(..)1(

Kj

jKjK

j

jj

j

jj zajNKpzajNpzjap (B.1)

Let F(z) be the Z transform of the coefficients aj.

F(z) = (B.2) ∑∞

=0k

kkza

We can express all the addends of (B.1) introducing the Z-transform. In particular, for the first member of (B.1) we say that:

)(11

11

01 zF

dzdzpzjazpzjap

j

jj

j

jj == ∑∑

=

−∞

=

Let us continue developing the first addend of the second member of (B.1). We have:

[ ].)()()1(

)1()1(

22

112

112

112

zzFdzdzpzzFNp

zjapzaNpzajNpj

jj

j

jj

j

jj

−+=

=−+=+− ∑∑∑∞

=

=

=

Now let us develop the second addend of the second member of (B.1):

[ ])()()1(2

)1(2)22(

23

23

223

223

213

zFzdzdzpzFzpN

zjapzapNzjajNpj

jj

j

jj

j

jj

−+=

=−+=+− ∑∑∑∞

=

=

=

In the same way we can easily generalize the results for the generic i-th addend of the second member of (B.1). We can easily find that:

[ )()()1()( 111 zFzdzdzpzFzNipzaijiNp i

ii

iij

jiji ++

=−+ −+=+−∑ ] (B.3)

with 1≤i≤K-1. Replacing all the terms (B.3) in (B.2) and grouping together the similar terms, and isolating all the members containing the derivative of F(z) to the first member, we have:

])1(...2)[(]...)[(' 221

121

−− −+++=+++ KK

KK zpKzppzNzFzpzppzzF (B.4)

Let P(z) be:

∑ =

−− =+++=K

i

ii

KK zpzpzppzP

1

1121 ...)(

(B.4) becomes: )(')()()(' zPzNFzPzF =

that is

)()('

)()('

zPzPN

zFzF

= (B.5)

Integrating both members of the last equation we obtain:

NzPzF )()( = = . (B.6)NK

1i

1iizp ⎟

⎞⎜⎝

⎛∑=