background image

 

 

Seria: Informatyka
Metody niezawodności i 
eksploatacji
Wykład 7
Modele kolejkowe systemów 
rozproszonych

dr hab. inż. Tadeusz Nowicki prof. 

nadzw. WAT

e-mail:nowicki@isi.wat.edu.pl, tel. 6-

837118

background image

Podstawy teorii systemów 

kolejkowych

W teorii systemów kolejkowych dla pojedynczego systemu 
masowej obsługi (SMO) (systemu kolejkowego) rozróżniamy 
następujące elementy:

• proces napływu zadań,
• rozkład czasu obsługi zadania,
• liczbę procesorów (kanałów obsługi),
• pojemność systemu (maksymalna liczba zadań w 
systemie),

• wielkość populacji zadań,
• dyscyplinę obsługi zadania w SMO.

Procesor 2

Proces 

napływu 

zadań

Procesor 1

Procesor k

Bufor (kolejka)

Straty

Obsługa zadań

background image

Podstawy teorii systemów 

kolejkowych

Notacja Kendall’a : A/S/m/B/K/SD
gdzie
A - rozkład czasu między napływającymi zadaniami,
S - rozkład czasu obsługi zadania,
m - liczba kanałów obsługi (procesorów),
B - maksymalna liczba zadań w systemie,
K - wielkość populacji zadań,
SD - dyscyplina obsługi zadań.

Przykłady rozkładów czasu między napływającymi 
zadaniami oraz rozkładów czasu obsługi zadania:
M - wykładniczy,
E

k

 - Erlanga rzędu k,

H

k

 - hiper wykładniczy rzędu k,

D - deterministyczny (stały czas),
G - dowolny rozkład, itd..

background image

Podstawy teorii systemów 

kolejkowych

Oznaczenia:

 - średnia intensywność napływu zadań (liczba na 

jednostkę czasu),

s - czas obsługi zadania,

 - średnia intensywność obsługi zadań (liczba na jednostkę 

czasu),

n - liczba zadań w systemie,

n

q

 - liczba zadań w kolejce,

n

s

 - liczba zadań obsługiwanych,

r - czas odpowiedzi systemu (czas przebywania zadania w 
systemie),

w  - czas czekania na obsługę.

 = 1/E[]  gdzie  - czas pomiędzy napływem kolejnych 

zadań do systemu

 = 

i

 = t

i

 -t

i-1

   ,   t

i

 - zmienna losowa, chwila napływu i-tego 

zadania; t

i-1

 = 0

natomiast  = 1/E[s].

background image

Podstawy teorii systemów 

kolejkowych

Jeśli    ma  rozkład  wykładniczy,  to  strumień  nazywamy 

strumieniem 

Poissona. 

Wszystkie 

zmienne 

podane 

wcześniej poza  i  są zmiennymi losowymi. 
Pewne istotne relacje pomiędzy podanymi zmiennymi:

 warunki stabilności - osiągane są gdy spełniony jest 
warunek:

  m (średnia intensywność napływu zadań jest 

mniejsza od 

średniej intensywności obsługi zadań),

 liczba zadań w systemie a liczba zadań w kolejce:

n = n

q

+ n

s

 (liczba zadań w systemie jest zawsze 

równa sumie liczby 

zadań w kolejce i liczby zadań w obsłudze) zatem 

E[n] = E[n

q

]+E[n

s

 prawo Little’a

E[n] =  E[r]    oraz      E[n

q

] =   E[w] 

 czas odpowiedzi (przebywania zadania w systemie) a czas 
oczekiwania

r = w + s    zatem E[r] = E[w] + E[s]

background image

Podstawy teorii systemów 

kolejkowych

Cechy procesów Poissona:

 suma k procesów Poissona o średnich intensywnościach 

i

 jest procesem Poissona o intensywności 

k

i

i

1

• rozdzielanie procesu Poissona według rozkładu 
prawdopodobieństwa 

p=(p

1

, p

2

,..., p

k

)

daje to strumienie Poissona o intensywnościach 

odpowiednio 

równych  

i

 = p

,   i=1,...,k

1

2

k

p

1

p

2

p

k

p

1

p

2

p

k

background image

Podstawy teorii systemów 

kolejkowych

• strumień wyjściowy ze SMO

jeśli średnia intensywność strumienia napływu 

zadań jest mniejsza

od średniej intensywności obsługi zadań (  ), to 

strumień 

wyjściowy ze SMO jest strumieniem Poissona o 

intensywności ,

proces

or

  

 zasada ta jest znacznie ogólniejsza

2

  

i

1

m

kolejka

kolejka

background image

System kolejkowy M/M/1

1. Parametry:

  – intensywność napływu zadań do systemu,
  – intensywność obsługi zadań,
2. Intensywność ruchu: 
=/
3. Warunek stabilności: 1
4. Prawdopodobieństwo zera zadań w systemie: p

o

 = 1- 

5. Prawdopodobieństwo n zadań w systemie: p

n

 = (1- 

n

 , 

n=0,1,..., 
6. Średnia liczba zadań w systemie: E[n]= 
/(1- )
7. Wariancja liczby zadań w systemie: Var[n]=
/(1- )

2

 

8. Prawdopodobieństwo n zadań w kolejce: 

0

k

,

)

1

(

0

k

,

1

)

k

n

(

P

1

k

2

q

background image

System kolejkowy M/M/1

9.  Średnia liczba zadań w kolejce: E[n

q

]= 

2

/(1- )

10. Wariancja liczby zadań w kolejce: 

Var[n

q

]= 

2

(1+

2

)/(1- )

2

11. Dystrybuanta łącznego czasu odpowiedzi: F(r)= 1-e

-r(1-)

12. Średni czas odpowiedzi: E[r]=(1/)/(1-)
13. Wariancja czasu odpowiedzi: Var[r]= (1/

2

)/(1-)

2

14. Dystrybuanta łącznego czasu oczekiwania na obsługę: 
F(w)= 1- 
e

-w(1-)

15. Średni czas oczekiwania na obsługę: E[w]= [(1/)]/(1-

)
16. Wariancja czasu oczekiwania na obsługę: Var[w]= (2- 
)/[

2

(1-)

2

]

17. Prawdopodobieństwo n lub więcej zadań w systemie: 

n

 

18. Średnia liczba zadań obsługiwanych w jednym okresie 
ciągłej zajętości 

procesora: /(1- )

19. Średni czas zajętości procesora: 1/[(1- )]

background image

System kolejkowy M/M/m

1. Parametry:

  – intensywność napływu zadań do systemu,
  – intensywność obsługi zadań,
 m - liczba procesorów,

2. Intensywność ruchu: =/(m)
3. Warunek stabilności: 
1
4. Prawdopodobieństwo zera zadań w systemie: 

1

1

m

1

n

n

m

0

!

n

)

m

(

)

1

(

!

m

)

m

(

1

p

5. Prawdopodobieństwo n zadań w systemie: 



m

n

,

!

m

m

p

m

n

,

!

n

)

m

(

p

p

m

n

0

m

0

n

background image

System kolejkowy M/M/m

6. Prawdopodobieństwo, że są zadania w kolejce (niezerowa 
kolejka)
    (zadań jest więcej niż m): 
=P(m zadań)=p

0

(m

)m

/[m!(1-

)]
7. Średnia liczba zadań w systemie: E[n]=m
 /(1- )
8. Wariancja liczby zadań w systemie: Var[n]=m
 

[m+(1+)/(1+ )

2

]

9. Średnia liczba zadań w kolejce: E[n

q

]= /(1- )

10. Wariancja liczby zadań w kolejce: Var[n

q

]=(1+)/

(1- )

2

 

11. Średni czas odpowiedzi: E[r]=(1/)/(1+/[m(1- )])
12. Wariancja czasu odpowiedzi: Var[r]=(1/

2

)/(1+[(2-  )]/

[m

2

(1- )

2

])

13. Dystrybuanta łącznego czasu oczekiwania na obsługę: 
F(w)= 1- 
e

-wm(1-)

14. Średni czas oczekiwania na obsługę: E[w]= E[n

q

]//

[m(1-)]
15. Wariancja czasu oczekiwania na obsługę: Var[w]= 
(2- 

)/[m

2

2

(1-)]

background image

System kolejkowy M/M/m/B (ze skończoną 

kolejką)

1. Parametry:

  – intensywność napływu zadań do systemu,
  – intensywność obsługi zadań,
 m - liczba procesorów,
 B – pojemność systemu, Bm
2. Intensywność ruchu: 
=/(m)
3. Warunek stabilności: 
1
4. Prawdopodobieństwo zera zadań w systemie: 

1

1

m

1

n

n

m

1

m

B

0

!

n

)

m

(

)

1

(

!

m

)

m

)(

1

(

1

p

dla 
m=1



1

,

B

1

1

1

,

1

1

p

1

B

0

background image

System kolejkowy M/M/m/B (ze skończoną 

kolejką)

5. Prawdopodobieństwo n zadań w systemie: 



B

n

m

,

!

m

m

p

m

n

0

,

!

n

)

m

(

p

p

m

n

0

n

0

n

6. Średnia liczba zadań w 
systemie:

B

1

n

n

np

]

n

[

E

dla 
m=1

1

B

1

B

1

)

1

B

(

1

]

n

[

E

7. Średnia liczba zadań w 
kolejce: 

B

1

m

n

n

q

p

)

m

n

(

]

n

[

E

dla 
m=1

1

B

B

q

1

B

1

1

]

n

[

E

background image

System kolejkowy M/M/m/B (ze skończoną 

kolejką)

8. Średni czas odpowiedzi: E[r]=E[n

q

]/[(1-p

B

)]

9. Średni czas oczekiwania: E[w]=E[r]-1/= E[n

q

]/[(1-

p

B

)]

background image

System kolejkowy M/G/1

1. Parametry:

  – intensywność napływu zadań do systemu,
 E[s] – średni czas obsługi zadań,

 C

s

 – wariancja czasu obsługi zadań,

2. Intensywność ruchu: =E[s]
3. Warunek stabilności: 
1
4. Prawdopodobieństwo zera zadań w systemie: p

0

 =1-

5. Średnia liczba zadań w systemie: E[n]=+ (1+ C

s

2

)/

[2(1- )]
6. Wariancja liczby zadań w systemie:

2

2

2

4

3

3

2

)

1

(

4

])

s

[

E

(

)

1

(

3

]

s

[

E

]

s

[

Var

]

n

[

E

]

n

[

Var

background image

System kolejkowy M/G/1

7. Średnia liczba zadań w kolejce: E[n

q

]=

2

(1+ C

s

2

)/[2(1- 

)]
8. Wariancja liczby zadań w kolejce: Var[n

q

]=Var[n]- 

2

 

9. Średni czas odpowiedzi: E[r]=E[n]/=E[s]+ E[s](1+ 

C

s

2

)/[2(1- )]

10. Wariancja czasu odpowiedzi: 

Var[r]=Var[s]+E[s

3

]/[3(1-)]+ 

2

(E[s

2

])

2

/[4(1- )

2

]

11. Średni czas oczekiwania: E[w]= E[s](1+ C

s

2

)/[2(1- )]

12. Wariancja czasu oczekiwania: Var[w]=Var[r]-Var[s]

13. Dystrybuanta czasu procesora bez pracy: F(I)=1-e

-I

 - 

wykładniczy

14. Średnia liczba zadań obsługiwanych w czasie ciągłej 
pracy procesora:

1/(1-)

15. Średni czas ciągłej zajętości procesora: E[s]/(1- )
16. Wariancja czasu ciągłej zajętości procesora: E[s

2

]/(1- 

)

3

 –(E[s])

2

/(1- )

2

 

background image

System kolejkowy M/G/1 z podziałem czasu 

(time sharing)

1. Parametry:

  – intensywność napływu zadań do systemu,
 E[s] – średni czas obsługi zadań,

2. Intensywność ruchu: =E[s]<1
3. Warunek stabilności: 
1
4. Prawdopodobieństwo n zadań w systemie: p

n

 =(1-

n

 , 

n=0,1,...,
5. Średnia liczba zadań w systemie: E[n]= /(1- )
6. Wariancja liczby zadań w systemie: Var[n]= 
/(1- )

2

 

7. Średni czas odpowiedzi: E[r]=E[s]/(1- )
Uwaga: podobne wyniki jak dla systemu M/M/1; strategia 
time sharing aproksymuje szeregowanie zadań typu round-
robin z małym kwantem czasu.

background image

System kolejkowy M/G/

1. Parametry:

  – intensywność napływu zadań do systemu,
 E[s] – średni czas obsługi zadań,

2. Intensywność ruchu: =E[s]
3. Warunek stabilności: 
1
4. Prawdopodobieństwo zera zadań w systemie: p

0

 =e

-

 

5. Prawdopodobieństwo n zadań w systemie: p

n

 =(e

-

/n!) 

n

 , 

n=0,1,...,
6. Średnia liczba zadań w systemie: E[n]= 
7. Wariancja liczby zadań w systemie: Var[n]= 
8. Liczba zadań w kolejce jest zawsze równa zero, zatem 
E[n

q

]=0

9. Czas odpowiedzi jest równy czasowi obsługi, czyli ma ten 
sam rozkład

10. Średni czas odpowiedzi: E[r]=E[s]

Uwaga: dla przypadku M/M/ zachodzi E[s]=1/, co należy 

wstawić do powyższych wyników

background image

System kolejkowy G/M/1

1. Parametry:

 E[] – średni czas pomiędzy napływem zadań do systemu,
  – intensywność czasu obsługi zadań,
 jeśli L

r

(f) jest transformatą Lapunowa gęstości czasu , to 

niech  będzie 

rozwiązaniem równania =L( )

2. Intensywność ruchu: =1/(E[)
3. Warunek stabilności: 
1
4. Prawdopodobieństwo zera zadań w systemie: p

0

 =1- 

5. Prawdopodobieństwo n zadań w systemie: p

n

 =  

n-1

(1-

) , n=1,...,
6. Średnia liczba zadań w systemie: E[n]=/(1-)
7. Wariancja liczby zadań w systemie: Var[n]=
(1+-)/(1- 

)

2

 

8. Dystrybuanta łącznego czasu odpowiedzi: F(r)=1-e

(1-)r

 , 

r0
9. Średni czas odpowiedzi: E[r]=1/[
(1- )]
10. Wariancja czasu odpowiedzi: Var[r]=[1/{
(1- )}]

2

 

background image

System kolejkowy G/M/1

11. Dystrybuanta czasu oczekiwania na obsługę: F(w)=1-
e

(1-)w

 , w0

12. Średni czas oczekiwania na obsługę: E[w]= /[(1- )]
13. Wariancja czasu oczekiwania na obsługę: Var[w]= (2-
)/[

2

(1- )

2

]

14. Prawdopodobieństwo n lub więcej zadań w systemie: 

n

(1- )/(1- )

Uwaga: dla strumienia Poissona .

background image

System kolejkowy G/G/m

1. Parametry:

 E[] – średni czas pomiędzy napływem zadań do systemu,
  – intensywność napływu zadań do systemu, =1/ E[
 E[s] – średni czas obsługi zadań,
  – intensywność czasu obsługi zadań, =1/ E[s
2. Intensywność ruchu: 
 /(m )
3. Warunek stabilności: 
1
4. Średnia liczba zadań w obsłudze: E[n

s

]=m

5. Średnia liczba zadań w systemie: E[n]=E[n

q

]+m

6. Wariancja liczby zadań w systemie: Var[n]=Var[n

q

]+ 

Var[n

s

]

7. Średni czas odpowiedzi: E[r]=E[w]+E[s] lub E[r]=E[n]/
8. Wariancja czasu odpowiedzi: Var[r]=Var[w]+Var[s] 

9. Średni czas oczekiwania na obsługę: E[w]=E[n

q

]/ 


Document Outline