Document

Anuncio
Temas 5 y 6
6.263/16.37
Introducción a la teoría de colas
Eytan Modiano
MIT, LIDS
Eytan Modiano
Dispositiva 1
Redes conmutadas por paquetes
Los mensajes se dividen
en paquetes que se
enrutan hacia su destino
PS
PS
PS
Red de paquetes
PS
PS
PS
Cola
(buffer)
PS
Eytan Modiano
Diapositiva 2
conmutación
de
paquetes
Sistemas de colas
•
Se utilizan para analizar el rendimiento de las redes
•
En las redes de paquetes, los eventos son aleatorios:
–
–
•
Mientras en la capa física nos preocupaba la tasa de error de bits (BER),
en la capa de red nos interesan los retardos:
–
–
•
¿Cuánto tiempo espera un paquete en la cola?
¿Qué tamaño tienen las colas?
En las redes conmutadas por circuitos queremos saber las
probabilidades de que se produzca un bloqueo de llamada:
–
Eytan Modiano
Diapositiva 3
Llegadas de paquetes aleatorias
Tamaño de paquetes aleatorio
¿Cuántos circuitos son necesarios para limitar la probabilidad de bloqueo?
Eventos aleatorios
•
Proceso de llegada:
–
–
•
Los paquetes llegan según un proceso aleatorio
Generalmente, el proceso de llegada se modela como proceso de Poisson
El proceso de Poisson:
–
Tasa de llegada de λ paquetes por segundo
–
Sobre un pequeño intervalo δ:
P(exactamente una llegada) = λδ + ο(δ)
P(0 llegadas) = 1 - λδ + ο(δ)
P(más de una llegada) = 0(δ)
donde 0(δ)/ δ −> 0 �� δ −> 0.
–
Se puede demostrar que:
( λT )n e −λT
P(n llegadas en el intervalo T)=
n!
Eytan Modiano
Diapositiva 4
El proceso de Poisson
( λT )n e −λT
P(n llegadas en el intervalo T)=
n!
n = número de llegadas en T
Se puede demostrar que:
E[n] = λ T
E[n ] = λT + (λ T)
2
2
σ 2 = E[(n -E[n]) 2 ] = E[n2 ] - E[n]2 = λT
Eytan Modiano
Diapositiva 5
Tiempos entre llegadas
•
Tiempo que pasa entre las llegadas (IA)
P(IA <= t) = 1 - P(IA > t)
= 1 - P(0 llegadas en un tiempo t)
= 1 - e-λt
•
Esto se conoce como distribución exponencial:
–
–
CDF entre llegadas = FIA (t) = 1 - e-λt
PDF entre llegadas = d/dt FIA(t) = λe-λt
• La distribución exponencial se suele utilizar para modelar los tiempos de
servicio (es decir, la distribución del tamaño de los paquetes)
Eytan Modiano
Diapositiva 6
Propiedad de Markov (ausencia de memoria)
P(T ≤ t0 + t | T > t 0 ) = P(T ≤ t)
Demostración:
P(T ≤ t0 + t | T > t 0 ) =
t 0 +t
∫
=
∫
t0
λ e −λt dt
− λt t + t
−e | t00
−e −λ ( t +t 0 ) + e −λ ( t0 )
=
=
∞
−λ ( t )
−λ t ∞
− λt
−e
|
e 0
λ e dt
t0
t0
− λt
=1−e
•
P(t0 < T ≤ t0 + t)
P(T > t0 )
= P(T ≤ t)
¡Los antecedentes no ayudan a prevenir el futuro!
• ¡La distribución del tiempo hasta la próxima llegada es independiente de
cuándo se produjo la última llegada!
Eytan Modiano
Diapositiva 7
Ejemplo
•
Supongamos que un tren llega a una estación siguiendo un proceso
de Poisson con una media de tiempo entre llegadas de 20 minutos
•
Cuando un cliente llega a la estación, la media de tiempo transcurrido
hasta la siguiente llegada es de 20 minutos:
–
Independientemente de cuándo haya llegado el tren anterior
•
¡La media de tiempo desde la última salida es de 20 minutos!
•
Paradoja: si pasaron una media de 20 minutos desde la llegada del
último tren y una media de 20 minutos hasta la llegada del próximo,
entonces pasarán una media de 40 minutos entre los trenes:
–
–
Eytan Modiano
Diapositiva 8
¡Pero nosotros supusimos una media de tiempo entre llegadas de 20 minutos!
¿Qué ha sucedido?
Modelos de colas
Clientes
servidor
cola/buffer
•
Modelo para:
–
–
–
•
Se quiere saber:
–
–
•
Los clientes que esperan en línea
La línea de ensamblaje
Los paquetes de una red (línea de transmisión)
El promedio de clientes que hay en el sistema
La media de espera que experimenta un cliente
Cantidades obtenidas según:
– La tasa de llegada de los clientes (promedio de clientes por unidad de tiempo)
– La tasa de servicio (promedio de clientes que puede atender el servidor
por unidad de tiempo)
Eytan Modiano
Diapositiva 10
Teorema de Little
λ paquetes por segundo
Red (sistema)
(N,T)
• N = promedio de paquetes que hay en el sistema
• T = promedio de tiempo que está un paquete en el sistema
• λ = tasa de llegada de paquetes al sistema
(no necesariamente de Poisson)
•
Teorema de Little: N = λT
–
–
Se puede aplicar a todo el sistema o a una de sus partes
Sistema concurrido -> largas esperas
¡En los días de lluvia, la gente conduce más despacio y las carreteras están más congestionadas!
Eytan Modiano
Diapositiva 11
Demostración del Teorema de Little
α(t), β(t)
α(t)
T2
T3
T1
t1 t2 t3 t4
T4
β(t)
•
•
•
•
•
α(t) = número de llegadas en un tiempo t
β(t) = número de salidas en un tiempo t
ti = tiempo de llegada del cliente i
Ti = tiempo que el cliente i permanece en el sistema
N(t) = número de clientes que hay en el sistema en un tiempo t = α(t) - β(t)
•
Demostración similar cuando no se sigue un servicio FCFS, es decir, cuando
el primero que llega no es el primero en ser atendido
Eytan Modiano
Diapositiva 12
Demostración del Teorema de Little
1t
Nt = ∫ N (τ )dτ = tiempo medio de los clientes en la cola
t0
N = Límitet→ ∞ Nt = tiempo medio en estado estacionario
λ t = α (t) / t, λ = Límite t→ ∞ λ t = tasa de llegada
α ( t)
Tt =
•
∑T
i
i= 0
α (t)
= tiempo medio de espera en el sistema, T = Límitet → ∞ Tt
Suponiendo que existen los límites anteriores; se supone un sistema ergódico
N (t) = α (t) − β (t ) ⇒ Nt
N = límt → ∞
Eytan Modiano
Diapositiva 13
∑
N=
α ( t)
i=1
t
∑
Ti
α (t )
i =1
Ti
t
=(
,
α (t)
t
∑
=
α ( t)
i=1
Ti
t
T = límt →∞
∑
)
α ( t)
i=1
Ti
α (t)
∑
= λT
α(t )
i =1
Ti
α (t)
⇒ ∑ i=1 Ti = α (t)T
α ( t)
Aplicación del Teorema de Little
•
El Teorema de Little se puede aplicar a casi todos los sistemas o a alguna de
sus partes
•
Ejemplo:
Clientes
servidor
Cola/buffer
1) El emisor: DTP = tiempo de transmisión de paquetes
–
Promedio de paquetes en el emisor = λD TP = ρ = uso del enlace
2) La línea de transmisión: D p = retardo de propagación
–
Promedio de paquetes en camino = λDp
3) La cola: Dq = promedio de espera en la cola
–
Promedio de paquetes en la cola = N q = λDq
4) Emisor + cola:
–
Eytan Modiano
Diapositiva 14
Promedio de paquetes = ρ + N q
Aplicación a un sistema complejo
λ3
λ1
λ2
λ1
λ3
λ2
•
Tenemos una red compleja con varias líneas de tráfico que se mueven por
ella e interactúan de forma arbitraria
•
Para cada línea i por separado, Little dice que N i = λiTi
•
Para todas las líneas en conjunto, Little dice que N = λT, donde:
•
•
Eytan Modiano
Diapositiva 15
N = ∑i Ni & λ = ∑i λi
Del Teorema de Little se obtiene:
∑
T=
∑
i= k
λT
i=1 i i
i= k
i=1
λi
Colas con un único servidor
cola
λ paquetes por segundo
Servidor
µ paquetes por segundo
Tiempo de servicio = 1/µ
•
M/M/1:
–
•
M/G/1:
–
•
Llegadas de Poisson; tiempos de servicio generales
M/D/1:
–
Eytan Modiano
Diapositiva 16
Llegadas de Poisson; tiempos de servicio exponenciales
Llegadas de Poisson; tiempos de servicio deterministas (fijos)
Cadena de Markov para un sistema M/M/1
λδ
1−λδ
0
λδ
1
µδ
λδ
λδ
2
µδ
k
µδ
µδ
•
Estado k => k clientes en el sistema
•
P(I,j) = probabilidad de transición del estado I al estado j
–
Para δ => 0, se obtiene:
P(0,0) = 1 - λδ,
P(j,j) = 1 - λδ −µδ
P(j,j+1) = λδ
P(j,j-1) = µδ
P(I,j) = 0 para todos los otros valores de I,j.
•
Procesos de nacimiento y muerte: las transiciones se producen sólo entre
estados adyacentes:
–
Eytan Modiano
Diapositiva 17
λδ , µδ son las velocidades de flujo entre los estados
Análisis de equilibrios
•
Queremos obtener P(n) = la probabilidad de estar en el estado n
•
En el equilibrio λP(n) = µP(n+1) para todo n:
–
–
•
•
Ecuaciones de equilibrio local entre dos estados (n, n+1)
P(n+1) = (λ/µ)P(n) = ρP(n), ρ = λ/µ
Continúa: P(n) = ρn P(0)
Luego, por axioma de probabilidad:
∑
∞
i=0
P(n) = 1
⇒ ∑i =0 ρ P(0) =
∞
n
⇒ P(0) = 1 − ρ
P(n) = ρ n (1 − ρ )
Eytan Modiano
Diapositiva 18
P(0)
=1
1− ρ
Tamaño medio de la cola
∞
∞
n=0
n=0
N = ∑ nP(n) = ∑ nρ n (1 − ρ ) =
N=
ρ
1−ρ
=
ρ
1− ρ
λ/µ
λ
=
1− λ /µ µ − λ
• N = media de clientes en el sistema
• El promedio de tiempo que pasa un cliente en el sistema
T=
se puede obtener a partir de la fórmula de Little (N=λT => T = N/λ)
1
µ−λ
• T incluye el tiempo de espera en la cola más el tiempo de servicio (tiempo de servicio
= DTP = 1/µ )
–
W=
W = tiempo que se pasa en la cola = T - 1/µ =>
1
1
−
µ−λ µ
• Por último, la media de clientes en cola se puede obtener a partir de la
fórmula de Little:
NQ = λW =
Eytan Modiano
Diapositiva 19
λ
µ−λ
−
λ
=N−ρ
µ
Ejemplo (restaurante de comida rápida)
•
•
En un restaurante de comida rápida llegan 100 clientes por hora
y se tarda 30 segundos en servir a cada uno de ellos
¿Cuánto tiempo pasan los clientes en el restaurante?
–
–
•
¿Cuánto tiempo esperan en la cola?
–
•
N = λT = 5
¿Cuál es la utilización del que sirve?
–
Eytan Modiano
Diapositiva 20
W = T - 1/µ = 2.5 minutos
¿Cuántos clientes hay en el restaurante?
–
•
Tasa de servicio = µ = 60/0.5=120 clientes por hora
T = 1/µ−λ = 1/(120-100) = 1/20 hrs = 3 minutos
ρ = λ/µ = 5/6
Conmutación de paquetes frente a conmutación de circuitos
1
λ/M
1 2 3
λ/M
M 1 2 3
M
Multiplexado por división de tiempo (TDM)
Cada usuario puede enviar µ/N paquetes/seg y
recibirlos a una tasa de λ/N paquetes/seg
2
λ/M
M (λ / µ)
D = M /µ +
(µ − λ )
N
Paquetes generados en tiempos aleatorios
λ/M
Multiplexador
estadístico
λ/M
Eytan Modiano
Diapositiva 21
λ
Cola
Fórmula para
M/M/1
µ paquetes/seg
(λ / µ)
D = 1/ µ +
( µ − λ)
Fórmula para
M/M/1
Conmutación de circuitos (tdm/fdm) frente a la de paquetes
Tiempo medio de servicio de paquetes
(slots)
Tiempo medio de servicio
100
TDM con 20
fuentes
Multiplexado
estadístico ideal
(M/D/1)
10
1
0
0.2
0.4
0.6
0.8
Carga de tráfico total; paquetes por slot
Eytan Modiano
Diapositiva 22
1
Sistemas de M servidores: M/M/m
cola
Servidor
M servidores
λ paquetes por segundo
•
•
µ paquetes por
Servidor
segundo, por
servidor
La tasa de salida es proporcional al número de servidores utilizados
Cadena de Markov similar:
λδ
1−λδ
0
1
µδ
Eytan Modiano
Diapositiva 23
λδ
λδ
2
2µδ
m
3µδ
λδ
λδ
mµδ
m+1
mµδ
Colas M/M/m
•
Ecuaciones de equilibrio:
λ P(n − 1) = nµP(n) n ≤ m
λ P(n − 1) = mµP(n) n > m
 P(0)( mρ )n / n!
n≤m
P(n ) = 
,
 P(0)( mm ρ n ) / m! n > m
•
Resolver, una vez más, para P(0):
−1
 m −1 (mρ ) n
( mρ )m 

P(0) =  ∑
+
 n =0 n!
m!(1− ρ ) 
P(0)(m ρ )m
PQ = ∑ P( n) =
m!(1 − ρ )
n= m
n= ∞
ρ
mm ρm + n
NQ = ∑ nP(n + m) = ∑ nP(0)(
) = PQ (
)
m!
1
−
ρ
n=0
n =0
n= ∞
W=
Eytan Modiano
Diapositiva 24
NQ
λ
n=∞
, T = W + 1/ µ, N = λ T = λ / µ + NQ
ρ=
λ
≤1
mµ
Aplicaciones de M/M/m
•
•
Banco con m cajeros
Red con líneas de transmisión paralelas
m líneas de tasa µ cada una
λ
VS .
Nodo
B
Una línea de tasa mµ
λ
•
Nodo
A
Nodo
A
Nodo
B
Utilizar la
fórmula de
M/M/m
Utilizar la
fórmula de
M/M/1
Cuando el sistema está ligeramente cargado, PQ~0 y el servidor único es m
veces más rápido
• Cuando el sistema está muy cargado, predomina la espera en la cola y los
sistemas permanecen más o menos igual
Eytan Modiano
Diapositiva 25
M/M/Infinito
•
•
Número ilimitado de servidores => los clientes no sufren retardo en cola
El número de clientes que hay en el sistema representa el número de
clientes que están siendo servidos en ese momento
λδ
1−λδ
0
λδ
1
µδ
λδ
2
n
2µδ
λδ
λδ
3µδ
nµδ
n+1
(n+1)µδ
P(0)(λ / µ)n
λ P(n − 1) = nµP(n), ∀n > 1, ⇒ P( n) =
n!
[
] =e
P(0) = 1 + ∑ n=1 (λ / µ ) / n!
∞
n
−1
−λ / µ
P(n ) = (λ / µ) n e − λ / µ / n! => ¡distribución de Poisson !
N = promedio del sistema = λ / µ, T = N / λ =1/ µ = tiempo de servicio
Eytan Modiano
Diapositiva 26
Probabilidad de bloqueo
•
Una red conmutada por circuitos se puede ver como un sistema de
colas multiservidor:
Las llamadas se bloquean cuando no hay servidores disponibles:
"señal de ocupado"
– Para las redes conmutadas por circuitos nos interesa la probabilidad
de bloqueo de llamadas
–
•
Sistema M/M/m/m:
–
–
•
m servidores => m circuitos
Las anteriores m indican que el sistema no puede sostener más de
m usuarios
Fórmula B de Erlang:
Nos da la probabilidad que existe de que el usuario que inicia una llamada
encuentre todos los circuitos ocupados
– Vale para la distribución de las llamadas recibidas en general (aunque
nosotros aquí demostremos sólo el supuesto de Markov)
–
(λ / µ) m / m!
PB = m
n
λ
/
µ
)
/ n!
(
∑
n= 0
Eytan Modiano
Diapositiva 27
Sistema M/M/m/m: fórmula B de Erlang
λδ
1−λδ
0
λδ
1
µδ
λδ
λδ
2
m
2µδ
3µδ
mµδ
P(0)( λ / µ )
λ P(n − 1) = nµP(n ), 1 ≤ n ≤ m, ⇒ P(n) =
n!
P(0) =
[∑
m
n= 0
( λ / µ ) / n!
n
]
−1
( λ / µ ) / m!
PB = P(bloqueo) = P(m) = m
∑n= 0 (λ / µ) n / n!
m
Eytan Modiano
Diapositiva 28
n
Fórmula B de Erlang
•
( A) m / m!
A= λ/µ = (tasa de llegada)*(durac. med. de llamadas) = carga media P =
m
B
n
La fórmula se ve afectada por variaciones en la relación existente
/ n!
(
A)
∑
La carga del sistema se suele expresar en Erlangs:
–
–
•
entre λ y µ, no por sus respectivos valores
n= 0
Se utiliza para calcular el tamaño de la línea de transmisión:
–
–
¿Cuántos circuitos ha de soportar el satélite?
El número de circuitos es una función de la probabilidad de bloqueo que podemos tolerar:
Los sistemas están diseñados para unas predicciones de carga y probabilidades de bloqueo
determinadas (generalmente pequeñas)
•
Ejemplo:
–
Tasa de llegada = 4 llamadas por minuto, promedio de 3 minutos por llamada => A = 12
–
¿Cuántos circuitos debemos preveer?
Depende de la probabilidad de bloqueo que podamos tolerar
Circuitos
Eytan Modiano
Diapositiva 29
PB
20
15
1%
8%
7
30%
Cadenas multidimensionales de Markov
•
K clases de clientes:
–
Clase j: tasa de llegada λ j; tasa de servicio µj
• Estado del sistema: n = (n1, n2… nk); nj = número de clientes de la clase j
que hay en el sistema
• Si las ecuaciones de equilibrio detalladas valen para estados adyacentes,
entonces existe una solución en forma de producto, en la que:
–
•
P(n, n2… nk) = P
1(n1)*P2(n2)*…*Pk(nk)
Ejemplo: K sistemas M/M/1 independientes
Pi (ni ) = ρ ini (1 − ρ i ), ρi = λ i / µi
•
Esto también es aplicable a otras cadenas de nacimiento y muerte
independientes
–
Eytan Modiano
Diapositivas 30
Ej.: M.M/m, M/M/Inf o M/M/m/m
Truncación
•
Elimina algunos de los estados:
–
•
Ej.: en las K colas M/M/1, elimina todos los estados en los que n1+n2+…+nk > K1 (constante)
La cadena resultante debe ser irreducible:
–
Todos los estados se deben comunicar entre sí
Producto para la distribución estacionaria del sistema truncado
•
Ej.: K colas M/M/1 independientes:
P(n1, n2 ,...nk ) =
•
ρ1n1ρ 2n2 ....ρ nK
K
G
, G = ∑ ρ1 ρ 2 ....ρ K
n1
n2
nK
n∈S
Ej.: K colas M/M/inf independientes:
( ρ1n1 / n1!)(ρ 2n2 / n2 !)....(ρ KnK / nk !)
n1
n2
nK
P(n1, n2 ,...nk ) =
, G = ∑ (ρ 1 / n1!)( ρ 2 / n2 !)....( ρ K / nk !)
G
n∈S
–
–
Eytan Modiano
Diapositiva 31
G es una constante de normalización que convierte P(n) en una distribución
S es el conjunto de estados del sistema truncado
Ejemplo
•
Dos clases de sesiones en un sistema conmutado por circuitos:
–
–
M canales de igual capacidad
Dos tipos de sesión:
Tipo 1: tasa de llegada λ1 y tasa de servicio µ1
Tipo 2: tasa de llegada λ2 y tasa de servicio µ2
•
El sistema puede soportar hasta M sesiones de cada clase:
–
–
–
–
•
Si µ1= µ2, tratar el sistema como una cola M/M/m/m con una tasa de llegada de λ1+ λ2
Cuando µ1!= µ2 es necesario saber el número de llamadas en curso de cada tipo
de sesión
Dos estados de la cadena de Markov dimensional = (n1, n2)
Se quiere que P(n1, n2): n1+n2 <=m
Se pueden considerar como colas M/M/Inf truncadas:
–
Obsérvese que las tasas de transición en la cola M/M/Inf son iguales a las de la
cola M/M/m/m truncada
( ρ1n1 / n1 !)( ρ2n2 / n2 !)
,
P(n1, n2 ) =
G
–
Eytan Modiano
Diapositiva 32
i = m j = m −i
G= ∑
i =0
∑( ρ / i!)(ρ
j =0
i
1
j
2
/ j!), n1+ n2≤ m
Obsérvese que la doble suma contabiliza sólo los estados para los que j+i <= m
La propiedad PASTA (Poisson Arrivals See Time Averages)
•
El estado de una cola M/M/1 es el número de clientes que hay en el sistema
• Los sistemas de colas más generales tienen un estado más general que puede
incluir la cantidad de servicio que ha recibido ya cada cliente
• En las llegadas de Poisson, las llegadas en cualquier futuro incremento de
tiempo son independientes de las producidas en pasados incrementos y, para
muchos sistemas de interés, independientes del estado actual S(t) (verdadero
para M/M/1, M/M/m y M/G/1)
•
Para estos sistemas, P{S(t)=s|A(t+δ)-A(t)=1} = P{S(t)=s}
–
•
Eytan Modiano
Diapositiva 33
(donde A(t)= número de llegadas desde t=0)
En el estado estacionario, las llegadas siguen las probabilidades del estado
estacionario
Distribución de ocupación en la llegada
•
Las llegadas pueden no seguir siempre los promedios del estado
estacionario
•
Ejemplo:
–
–
Llegadas deterministas: 1 por segundo
Tiempo de servicio determinista de 3/4 de segundo
λ = 1 paquete/segundo T = 3/4 de segundo (sin cola)
N = λT = ocupación media = 3/4
•
Eytan Modiano
Diapositiva 34
Sin embargo, obsérvese que una llegada siempre encuentra
el sistema desocupado (vacío)
Ocupación en la llegada para una cola M/M/1
an = Lím t-> inf (P (N(t) = n | se produjo una llegada justo después del tiempo t))
Pn = Lím t-> inf (P(N(t) = n))
En los sistemas M/M/1 an = Pn
Demostración: supongamos que A(t, t+δ) es el evento y que la llegada tuvo lugar
entre t y t+δ
an (t) = Lím t-> inf (P (N(t) = n| A(t, t+δ) )
= Lím t-> inf (P (N(t) = n, A(t, t+δ) )/P(A(t, t+δ) )
= Lím t-> inf P(A(t, t+δ)| N(t) = n)P(N(t) = n)/P(A(t, t+δ) )
• Dado que las futuras llegadas son independientes del estado del sistema:
P(A(t, t+δ)| N(t) = n)= P(A(t, t+δ))
•
De este modo, an (t) = P(N(t) = n) = Pn(t)
•
Calculando los límites cuando t tiende a infinito, obtendremos que: a n = Pn
•
Este resultado vale también para los sistemas M/G/1
Eytan Modiano
Diapositiva 35
Descargar