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 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. tfila1.tex
A Fila M/G/1 A primeira letra M caracteriza o 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 A pdf do tempo de serviço é dada por b X (x), com X (s). O tempo médio de serviço é então dado por = X (0). Possui somente um servidor tfilamg1.tex
Métricas da Fila M/G/1 W = tempo gasto na fila de espera N q = número de pessoas na fila de espera X = tempo de serviço N s = 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 tfilamg1b.tex
Resultado de Little Seja um sistema em equilíbrio, no qual os fregueses chegam e saem a uma taxa média de λ( fregueses 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. λ( fregueses segundo ) N fregueses λ(fregueses segundo ) 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. tfila2.tex
Análise da Fila M/G/1 Aplicando Little e considerando Toda a fila: E[N] = λe[t] = λ(e[w]+) = λe[w]+λ Apenas a fila de espera: E[N q ] = λe[w] Apenas o servidor: E[N s ] = λ. 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 ρ. 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 ρ. tfila14.tex
Como Calcular W para M/G/1? Para um freguês genérico chegando à fila, o seu tempo médio de espera W será o tempomédio para serviros freguesesquesão encontrados em espera na fila mais o tempo médio para terminar o serviço (serviço residual = E[X r ]) do freguês eventualmente encontrado em serviço (com probabilidade ρ). Assim: E[W] = E[N q ]+E[N s ]E[X r ] = λe[w]+λe[x r ] = ρe[w]+ρe[x r ] = ρe[x r] 1 ρ = λe[x2 ] 2(1 ρ) Com E[T] = E[W]+,E[N] = λe[t] e E[N q ] = λe[w]. Para M/D/1 (serviço determinístico) X = = 1/µ e E[X 2 ] = 1/µ 2. Então: λ E[W M/D/1 ] = 2µ 2 (1 ρ) = ρ 2µ(1 ρ) Para M/M/1, com = 1/µ, temos ρ E[W M/M/1 ] = µ(1 ρ) Resultados válidos para qualquer ordem de atendimento que não seja dependente do tempo de serviço. tfila23a.tex
Vida Residual de uma Distribuição Qualquer Amostre aleatoriamente uma fila durante seu período ocupado. Seja X s o intervalo do serviço selecionado, X r a vida residual do intervalo selecionado e X i a idade do intervalo selecionado. Temos, X s = X i +X r. Por simetria e reversibilidade do tempo, X i e X r têm igual pdf. Seja f Xs (t) a pdf de X s. Intervalos maiores terão maior probabilidade de serem selecionados e, então, intuitivamente, espera-se que P{t X s t + dt} seja diretamente proporcional a t vezes a probabilidade de ocorrência de intervalos deste tamanho P{t X t+dt}. Assim, P{t X s t+dt} = t m P{t X t+dt}, ou f X s (t) = t m f X(t). A constante m serve para normalização e 0 f Xs (t)dt = 1 implica em m =. Consequentemente, f Xs (t) = tf X(t) e E[X s ] = 0 tf Xs (t)dt = 0 t 2 f X (t)dt = E[X2 ] Como E[X s ] = 2E[X r ], temos E[X r ] = E[X2 ] 2. tfila221.tex
Densidade e Distribuição da Vida Residual P{X r y} = x=0 P{X r y x < X s x+dx}p{x < X s x+dx}, mas Observando que a amostragem aleatória cai uniformemente em qualquer ponto do intervalo X s, podemos então afirmar que: P{X r y x < X s x+dx} = { 1 para x < y para 0 y x y x Substituindo o valor da probabilidade condicional, e lembrando que a pdf do intervalo escolhido f Xs (x) = xf X(x), obtemos: P{X r y} = = y 0 y 0 = F Xs (y)+ P{x < X s x+dx}+ f Xs (x)dx+ y y y y x f X s (x)dx yf X (x) dx = F Xs (y)+ y f X (x)dx y = F Xs (y)+ y (1 F X(y)) y x P{x < X s x+dx} f Xr (y) é obtida derivando P{X r y} em relação a y. Lembrando que f Xs (y) = yf X(y), temos: f Xr (y) = dp{x r y} dy = yf X(y) = 1 F X(y) + 1 F X(y) yf X(y) tfila222.tex
Transformada de Laplace da Densidade da Vida Residual Pode-se facilmente mostrar que: f(t),t 0 F (s), t 0 f(y)dy F (s) s. Usando esta propriedade e o fato de u 1 (t) = 1,t 0 1 s, podemos inverter f Xr (t) = 1 F X(t) e obter diretamente X r(s). Assim, Xr(s) = 1 s X (s) s = 1 X (s) s onde f X (t) X (s) é a T. L. da pdf do tempo de serviço X. Deduzindo diretamente: X r(s) = = = = = 0 e st (1 F X (t))dt e st dt 0 1 1 s 1 1 s 1 1 s 1 s 0 ( y=0 t=y ( 1 y=0 y=0 s t e st dt e st dt t=y 0 ) f X (y)dydt f X (y)dy ) se st dt f X (y)dy e sy f X (y)dy = 1 X (s) s 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 r ] = 1/µ C = 1 µc. Modelando o canal como uma fila M/M/1, obtemos: ρ = λ µc. E[T] = 1 ρ = 1 µc λ 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. tfila17.tex
Exemplo: Concentrador de Comunicação Suponhaumnóconcentradorquerecebe4fluxosPoissonde4800 bpscomtaxaλ i = 2pacotes/setransmite-osemumúnicocanal 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. Calculando E[T] obtemos: E[T] = 1 µc λ = 1 9,6 8 = 0,625 Tempo médio total no concentrador = 0,625 s Númeromédiodepacotesnoconcentrador= E[N] = λ t E[T] = 8 0,625 = 5. Utilização da linha = ρ = λ µc = 8 9,6 83 %. A linha é vista como servidor, e o tempo de serviço é o tempo de transmissão do pacote. tfila18.tex
Quantos Buffers Devo Manter no Concentrador? E[N] não indica o número máximo de pacotes que podem se enfileirar no concentrador, mas veremos que serve como uma indicação. Na prática o # de buffers teria um valor B, tal que a probabilidadede encontrar o sistema com B ou mais pacotes fosse menor que um valor determinado α, ou de forma equivalente, a probabilidade de encontrar o sistema com menos de B buffers ocupados seria igual ou maior que 1 α. Para M/M/1, P k = prob. de encontrar a fila com k pacotes = (1 ρ)ρ k. Modelando o sistema como uma fila M/M/1, B 1 k=0 P k = 1 ρ B 1 α. Então, ρ B α = Blogρ logα, mas como logρ < 0, resulta B logα logρ α ρ 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. tfila19.tex
Dedicado versus Compartilhado Suponha quetenhamos umalinha de64kbps eoitosessõesabertas nesta linha. Se cada sessão tem tráfego de pacotes Poisson com taxa λ s = 2 pacotes/s e tamanho médio L = 1/µ = 2000 bits, divido a linha em 8 fatias (usando TDM ou FDM), ou tento compartilhar usando ATDM? Ambas as soluções têm a mesma utilização nas filas. Usando TDM ou FDM Temos: λ s = 2 e capacidade do canal dedicado = C s = 8 Kbps. Logo: T s = 1 µc λ = 1 = 500 ms. 2 Compartilhando Temos: λ c = 8λ s = 16 pacotes/s e C c = 64 Kbps. Logo: T c = 1 µc c λ c = 62,5 ms e portanto o sistema compartilhado é 8 vezes melhor. 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: T A = 1 µc λ e T B = 1 µkc kλ = T A k. O sistema B é portanto k vezes melhor! tfila21.tex