X - DCC/UFRJ

Propaganda
INTRODUÇÃO À TEORIA DAS FILAS
Uma fila é caracterizada por:
• Processo de chegada dos fregueses à fila
• Tempo de serviço dedicado pelo servidor a cada freguês
• Número de servidores
• Espaço disponı́vel para espera na fila
• Polı́tica de atendimento da fila (padrão é FCFS se nada for dito)
Caso o espaço seja finito, fregueses que chegam e não encontram
lugar na fila de espera são perdidos. Se o espaço for infinito, não
há perda de fregueses.
NCE/UFRJ
Teoria das Filas
tfila1.tex
A Fila M/G/1
A primeira letra M caracteriza um processo Poisson de chegada.
A letra M vem de Markov.
O processo Poisson é um caso particular de um Processo de Markov.
A segunda letra G caracteriza o processo geral de serviço.
O número 1 indica que temos somente um servidor.
• Processo de chegada é Poisson (ou seja, o tempo entre chegadas
é exponencial) com taxa λ.
• Distribuição do tempo de serviço é geral com pdf bX (x) e T.L.
X ∗(s).
′
O tempo médio de serviço dado por E[X] = −X ∗ (0).
• Possui somente um servidor
Casos particulares:
• M/D/1: serviço determinı́stico
• M/M/1: serviço exponencial
NCE/UFRJ
Teoria das Filas
tfilaMG1.tex
Métricas da Fila M/G/1
• W =⇒ tempo gasto na fila de espera
• Nq =⇒ número de pessoas na fila de espera
• X =⇒ tempo de serviço
• Ns =⇒ número de pessoas no servidor
• T = W + X =⇒ tempo total gasto na fila
• N =⇒ número de pessoas na fila, incluindo o serviço
Em geral, estamos interessados ou nos valores médios destas grandezas ou nas transformadas correspondentes
NCE/UFRJ
Teoria das Filas
tfilaMG1b.tex
Resultado de Little
• Seja um sistema em equilı́brio, no qual os fregueses chegam e
saem a uma taxa média de λ( f regueses
)
s
• O sistema estando em equilı́brio significa que o número médio
de pessoas no sistema N é finito, que a taxa média de saı́da é
igual à taxa média de entrada e também que o tempo médio T
gasto dentro do sistema é finito.
regueses
λ( fsegundo
)⇒
N fregueses
regueses
⇒ λ( fsegundo
)
A expressão conhecida como Resultado de Little
(Little’s Result) afirma que:
E[N ] = λE[T ].
Este resultado é valido qualquer que seja o sistema em consideração.
NCE/UFRJ
Teoria das Filas
tfila2.tex
Análise da Fila M/G/1
Aplicando Little e considerando
• Toda a fila:
E[N ] = λE[T ] = λ(E[W ] + E[X]) = λE[W ] + λE[X]
• Apenas a fila de espera: E[Nq ] = λE[W ]
• Apenas o servidor: E[Ns] = λE[X].
• A grandeza λX = λ/µ é chamada ρ e representa a utilização do
sistema.
P{ sistema está ocupado} = P{ pelo menos uma pessoa no sistema}
= P{ servidor ocupado }
= % do tempo que o servidor está ocupado
= ρ,
P{ sistema está vazio} = % do tempo que o servidor está vazio
= 1 − ρ.
NCE/UFRJ
Teoria das Filas
tfilaMG1a.tex
Chegadas Poisson Correspondem a
Amostragem Aleatória
• Sabemos que chegadas Poisson correspondem a uma amostragem
aleatória do sistema de filas ( este resultado pode ser deduzido
matematicamente)
Em inglês, Poisson Arrivals See Time Averages (PASTA)
• Podemos então afirmar que um freguês genérico encontrará a
fila ocupada com probabilidade ρ, e com probabilidade 1 − ρ
encontrará a fila vazia.
• Lembre-se que a fila passa por estados alternados de ociosidade
e ocupação, e uma amostragem aleatória cai num intervalo ocupado com probabilidade ρ e num intervalo vazio com probabilidade 1 − ρ.
NCE/UFRJ
Teoria das Filas
tfila14.tex
Como Calcular E[W ] para M/G/1 FCFS?
Para um freguês genérico, o seu tempo médio de espera E[W ] será
a soma das seguintes parcelas
• tempo médio para servir os fregueses que são encontrados na fila
de espera
• tempo médio do serviço residual (= E[Xr ]) do servidor encontrado ocupado (prob. = ρ).
E[W ] = E[Nq ]E[X] + E[Ns]E[Xr ] = λE[W ]E[X] + λE[X]E[Xr ]
r]
= ρE[W ] + ρE[Xr ] = ρE[X
1−ρ
=
λE[X 2 ]
2(1−ρ)
E[T ] = E[W ] + E[X], E[N ] = λE[T ], E[Nq ] = λE[W ]
• Para M/D/1 (serviço determinı́stico)
X = E[X] = 1/µ (constante), E[X 2] = 1/µ2.
E[WM/D/1] =
ρ
λ
=
2µ2(1 − ρ) 2µ(1 − ρ)
• Para M/M/1, com E[X] = 1/µ,
E[WM/M/1] =
ρ
µ(1 − ρ)
Resultados válidos para qualquer ordem de atendimento que não seja
dependente do tempo de serviço.
NCE/UFRJ
Teoria das Filas
tfila23a.tex
Vida Residual de uma Distribuição Qualquer
Amostre aleatoriamente uma fila durante seu perı́odo ocupado.
• Xs, o serviço selecionado
• Xr , a vida residual do serviço selecionado (quanto falta até o
seu término )
• Xi, a idade do serviço selecionado (quanto tempo do serviço já
transcorrido)
Xs = Xi + Xr .
Por simetria e reversibilidade do tempo, Xi e Xr têm igual pdf.
NCE/UFRJ
Teoria das Filas
tfila221.tex
Vida Residual de uma Distribuição Qualquer
Seja fXs (t) a pdf de Xs, o intervalo selecionado.
• Intervalos de tamanho t terão maior probabilidade de serem selecionados quanto maior for t e quanto maior for a probabilidade
de ocorrência de intervalos deste tamanho ( P {t ≤ X ≤ t + dt}
• Intuitivamente, P {t ≤ Xs ≤ t + dt} será diretamente proporcio-nal a tP {t ≤ X ≤ t + dt}
. P {t ≤ Xs ≤ t + dt} =
t
m P {t
≤ X ≤ t + dt}, ou fXs (t) =
t
m fX (t).
A constante m serve para normalização.
∫∞
A conservação de probabilidade 0 fXs (t)dt = 1 =⇒ m = E[X].
X (t)
Consequentemente, fXs (t) = tfE[X]
e
∫∞ 2
∫ ∞
E[X 2]
0 t fX (t)dt
E[Xs] =
tfXs (t)dt =
=
E[X]
E[X]
0
Como E[Xs] = 2E[Xr ], temos E[Xr ] =
NCE/UFRJ
E[X 2 ]
2E[X] .
Teoria das Filas
tfila221.tex
Densidade e Distribuição da Vida Residual
∫
∞
P {Xr ≤ y} =
P {Xr ≤ y|x < Xs ≤ x + dx}P {x < Xs ≤ x + dx}
x=0
Condicionando no valor de Xs e observando que a amostragem aleatória cai
uniformemente em qualquer ponto do intervalo, obtemos
{
P {Xr ≤ y|x < Xs ≤ x + dx} =
1
y
x
para x < y
para 0 ≤ y ≤ x
Substituindo o valor da probabilidade condicional, e lembrando que a pdf do
X (x)
intervalo escolhido fXs (x) = xfE[X]
, obtemos:
∫
P {Xr ≤ y} =
=
=
=
=
∫ ∞
y
P {x < Xs ≤ x + dx} +
P {x < Xs ≤ x + dx}
x=0
x=y x
∫ y
∫ ∞
y
fX (x)dx
fXs (x)dx +
x s
0
y
∫ ∞
yfX (x)
FXs (y) +
dx
E[X]
y
∫ ∞
y
FXs (y) +
fX (x)dx
E[X] y
y
(1 − FX (y))
FXs (y) +
E[X]
y
fXr (y) é obtida derivando P {Xr ≤ y} em relação a y.
Lembrando que fXs (y) =
fXr (y) =
yfX (y)
E[X] ,
temos:
dP {Xr ≤ y}
yfX (y) 1 − FX (y) yfX (y)
=
+
−
dy
E[X]
E[X]
E[X]
1 − FX (y)
=
E[X]
NCE/UFRJ
Teoria das Filas
tfila222.tex
Transformada de Laplace da Densidade da
Vida Residual
Pode-se facilmente mostrar que:
f∫(t), t ≥ 0 ⇐⇒ F ∗(s),
t
F ∗ (s)
f
(y)dy
⇐⇒
0
s .
Usando esta propriedade e o fato de u−1(t) = 1, t ≥ 0 ⇐⇒ 1s ,
podemos inverter fXr (t) =
sim,
Xr∗(s)
1−FX (t)
E[X]
e obter diretamente Xr∗(s). As-
1
X ∗(s)
1 − X ∗(s)
=
−
=
sE[X] sE[X]
sE[X]
onde fX (t) ⇐⇒ X ∗(s) é a T. L. da pdf do tempo de serviço X.
Deduzindo diretamente:
Xr∗ (s) =
=
=
=
=
∫
∞
e−st (1 − FX (t))dt
E[X]
0
∫ t
∫ ∞ −st
∫ ∞
e dt
1
−st
−
e dt
fX (y)dydt
E[X]
E[X] 0
0
0
)
∫ ∞ (∫ ∞
1
1
−st
−
e dt fX (y)dy
sE[X] E[X] y=0
t=y
)
∫ ∞( ∫ ∞
1
1
1
−
se−st dt fX (y)dy
sE[X] E[X] y=0 s t=y
∫ ∞
1
1
1 − X ∗ (s)
−
e−sy fX (y)dy =
sE[X] sE[X] y=0
sE[X]
NCE/UFRJ
Teoria das Filas
tfila223.tex
Como Modelar um Canal de Comunicação de
Capacidade C bps?
• Suponha pacotes de dados de tamanho exponencial, com tamanho médio igual a 1/µ bits. O tempo médio de transmissão de
um pacote será
E[X] = E[Xr ] =
1/µ
C
=
1
µC .
• Modelando o canal como uma fila M/M/1, obtemos:
E[T ] =
•ρ=
E[X]
1−ρ
=
1
µC−λ
λ
µC .
NCE/UFRJ
Teoria das Filas
tfila16.tex
Suposição de Independência (Kleinrock 64)
• Num nó, os pacotes considerados para transmissão num determinado canal de comunicação podem ser pacotes locais originados
de aplicações no próprio nó ou serem pacotes em trânsito pelo
nó e oriundos de nós vizinhos.
• A análise matemática exata de um sistema complexo em que
pacotes de diferentes tamanhos circulam por uma rede de comunicação é em muitos casos intratável.
• Para que haja tratabilidade nos sistemas de comunicação de dados e simplicidade das expressões matemáticas, o princı́pio da
independência assume que:
o pacote perde a sua identidade ao se propagar pela
rede de comunicação, e que um novo tamanho é escolhido em cada nó intermediário (normalmente segundo uma distribuição exponencial) para efeito de
modelagem.
• Esta suposição de independência foi validada através de simulações
e medidas feitas em sistemas reais têm demonstrado a eficácia
da aproximação.
NCE/UFRJ
Teoria das Filas
tfila17.tex
Exemplo: Concentrador de Comunicação
• Suponha um nó concentrador que recebe 4 fluxos Poisson de 4800
bps com taxa λi = 2 pacotes/s e transmite-os em um único canal
de 9600 bps.
Assuma que o tamanho médio de pacote é E[L] = 1000 bits e
que a distribuição é exponencial com taxa µ = 1/1000.
A taxa total é λt = 4λi = 8 pacotes/s.
A linha é vista como servidor, e o tempo de serviço é o tempo
de transmissão do pacote.
• Calculando E[T ] obtemos:
E[T ] =
1
1
=
= 0, 625
µC − λ 9, 6 − 8
Tempo médio total no concentrador = 0,625 s
• Número médio de pacotes no concentrador = E[N ] = λtE[T ]
= 8 × 0, 625
= 5.
• Utilização da linha = ρ =
λ
µC
=
NCE/UFRJ
8
9,6
≈ 83 %.
Teoria das Filas
tfila18.tex
Quantos Buffers Devo Manter no
Concentrador?
• Na prática o # de buffers teria um valor B, tal que
P { encontrar o sistema com B ou mais pacotes } < α
P { encontrar o sistema com menos de B buffers ocupados } ≥ 1 − α
• Para M/M/1, Pk = P { encontrar a fila com k pacotes } = (1 − ρ)ρk .
∑
B
• Modelando o sistema como uma fila M/M/1, B−1
k=0 Pk = 1 − ρ ≥ 1 − α.
ρB ≤ α =⇒ Blog ρ ≤ log α
, mas como log ρ < 0, resulta
B≥
log α
log ρ
α
ρ E[N ] B ≥
0,01 0,83
5
26
0,01 0,90
9
44
0,01 0,95 19
90
Assim, um # de buffers da ordem de pelo menos 5 vezes o número médio de
pacotes no sistema seria razoável, como uma primeira aproximação.
NCE/UFRJ
Teoria das Filas
tfila19.tex
Dedicado versus Compartilhado
Suponha que num condomı́nio com 40 apartamentos é oferta uma
banda larga individual de 1M bps. Pelo mesmo preço de 40 assinaturas individuais é possı́vel comprar uma assinatura predial com
40M bps compartilhada entre todos os condôminos. Pensando apenas no desempenho percebido por cada indivı́duo, qual solução seria
mais efetiva?
Assuma que o tráfego de cada condômino é Poisson com taxa
λi = 1000 pacotes/s e tamanho médio L = 1/µ = 800 bits.
Modelando com M/M/1, as duas soluções possuem a mesma utilização, pois o tráfego e a capacidade do canal são proporcionais.
• Usando assinatura individual
Temos: λi = 1000 e capacidade do canal dedicado = Cs = 1
Mbps.
1
1
Logo: Ti = µC−λ
= 250
= 4ms.
• Compartilhando na assinatura predial
Temos: λp = 40λi = 40.000 pacotes/s e Cp = 40M bps.
Logo: Tc = µCp1−λp = 0, 1ms
e portanto o sistema compartilhado é 40 vezes melhor.
NCE/UFRJ
Teoria das Filas
tfila20.tex
Sistemas Maiores São Melhores
Assuma um sistema A que atende a uma população de N pessoas
e usa um canal de comunicação com capacidade de C bps.
Assuma um sistema B que atende a uma população k vezes maior
(kN) e possui um canal também k vezes mais rápido (kC bps), com
a mesma utilização do sistema A.
Do ponto de vista do usuário é melhor ele estar sendo
atendido pelo sistema A ou pelo sistema B?
Seja 1/µ o tamanho médio dos pacotes e vamos modelar os sistemas por uma fila M/M/1. Então:
TA =
1
µC−λ
e
TB =
1
µkC−kλ
=
TA
k .
O sistema B é portanto k vezes melhor!
NCE/UFRJ
Teoria das Filas
tfila21.tex
Download