Вы находитесь на странице: 1из 24

APUNTES SOBRE SISTEMAS DE

ENCOLAMIENTO PARA REDES


DE COMPUTADORES

Profesor: Ral Burgos Viveros


Magister en Ingeniera Electrnica

DEPARTAMENTO DE INGENIERA ELCTRICA


Ao 2010

Teora de Colas
Introduccin
Una de las reas mas utilizadas de la teora de probabilidades en aplicaciones de
la ciencia computacional y las comunicaciones es el estudio de la teora de colas o
lneas de espera. Si bien es cierto su aplicacin es variada en la vida cotidiana, su
utilizacin en comunicaciones y sistemas computacionales es comn en la modelacin
de espera por terminales, requerimientos de canal o enlaces, colas de I/O, colas para
procesamiento por la CPU, etc.
Los 5 elementos fundamentales que describen un sistema de colas de espera son:
- f.d.p que determina el acceso a la cola
- f.d.p que determina el tiempo de servicio
- N de servidores
- Disciplina del servicio
- Espacio disponible para la atencin

Poblacin de Trfico de
Consumidores Entrada

Cola de Espera

Servidores
Elementos de un Sistema de Encolamiento
Variables de un Sistema de Encolamiento
N

Ns
Nq

Tiempo entre arribos

s
w

q: describe el tiempo de espera en cola


s: describe el tiempo de servicio
w: describe el tiempo total de espera dentro del sistema w=q+s
: describe el tiempo entre arribos

: razn promedio de arribos al sistema


: razn promedio de servicio
c : N de servidores

: utilizacin del servidor =

0 1
c

= E[s ]

Pn (t ) : Pr obabilidad que n consumidores est en el sistema el tiempo t


p n : Pr obabilidad en estado estacionario que n consumidores est en el sistema
N : N esperado de consumidores en elsistema en estado estacionario
N q : N esperado de consumidores en cola en estado estacionario
N s : N esperado de consumidores recibiendo servicio enestado estacionario

E [s ] = Ws : tiempo esperado de servicio

Notacin de Kendall
A /B /c /K
distribucin del
tiempo entre
arribos
de servicio

/m /Z
disciplina de la cola
tamao poblacin fuente
capacidad del sistema

N servidores

Ejemplo:
Sistema M/M1/K
Es un sistema con tiempo entre arribos de caracterstica exponencial y
caracterstica de servicio exponencial, con un servidor, poblacin infinita, disciplina
FIFO y capacidad limitada del sistema en K.
Sistema M/M/1
Sistema con arribos y servicio exponencial, un servidor, disciplina FIFO,
poblacin infinita y capacidad del sistema infinita

Procesos de Nacimiento y Muerte

Flujo IN k 1 Pk 1 (t ) + k +1 Pk +1 (t )
Flujo OUT k Pk (t ) + k Pk (t )
Pk (t )
= k 1 Pk 1 (t ) + k +1 Pk +1 (t ) ( k + k ) Pk (t )
t

(1)

Sujeto a

P (t ) = 1
k

(2)

P0 (t )
= 1 P1 (t ) 0 P0 (t ) (3)
t
Veamos un proceso de Nacimiento Puro

k =
k = 0

con

k=0,1,2,3,4,

de (3)

P0 (t )
= P0 (t ) P0 (t ) = e t
t

de (1)

P1 (t )
= P0 (t ) P1 (t ) = e t P1 (t )
t
P1 (t )
= e t P1 (t ) P1 (t ) = te t
t

P2 (t )
(t ) e t
= P1 (t ) P2 (t ) = 2 te t P2 (t ) P2 (t ) =
t
2!
2

etc..

Pk (t ) =

(t )k e t
k!

Proceso de Poisson!

El nmero promedio de arribos estar dado por

E [k ] = kP k (t ) = k
0

E [k ] =e

(t )k e t =
k!

k (t )k e t
k (k 1)!

t (t )2 (t )3

+
+ ..............................................
+
1!
2!
0!

t (t )2

(
t )k
= te 1 + +
+ ............ +
+ ....................
2!
k!
1!

t t
= te e

E [k ] = t

en el tiempo [0, t ]

Interesa determinar la relacin existente entre este proceso y el tiempo entre arribos

A(t ) : funcin de distribucin acumulativa

A(t ) = 1 Pque no exista ningun arribo


Pero en P0 no hay ningn arribp
A(t ) = 1 P0 (t )
A(t ) = 1 e t
f.d.p= a (t ) =

A(t )
= e t f.d.p Exponencial
t

Ejemplo: Supongamos una cola M/M/1


1 servidor, Arribo y Servicio Exponencial A(t ) = 1 e t y B(t ) = 1 e t

k =
k =
P0 (t )
= P1 (t ) P0 (t )
t (t )

(1)

Pk (t )
= Pk +1 (t ) + Pk 1 (t ) [ + ]Pk (t )
t

(2)

P (t ) = 1

(3)

Se observa que el sistema no es facil de analizar. Sin embargo, si se desean conocer solo
P (t )
las condiciones en estado estacionario (eso es, las situaciones transientes k
=0 y
t
las p k = lim Pk (t ) entonces las ecuaciones se reducen considerablemente en su
t

complejidad y tendramos:

p1 = p0

(1)

p k +1 + p k 1 = ( + ) p k p k +1 =

=1

( + ) p

p k 1

(2)

(3)

De (1)
(2)

p0 = p0

( + ) p p = ( + ) p p
p2 =
1
0
0
0
u

p 2 = p0 + p0 p0 = 2 p0

p1 =

p3 =

( + ) p

( + ) 2 p p
p1 =
0
1

p3 = 3 p 0 + 2 p 0 p1 = 3 p 0 + 2 p 0 2 p 0
p3 = 3 p 0
p k = p0
k

y as sucesivamente ..

De (3)

= 1 k p0 = 1

p0 k = 1

pero

1
1 x

= 1 + x + x 2 + x 3 + ........ + x k + ............ =

1
p 0
= 1 p 0 = (1 )
1

si

x <1

por lo tanto

p k = k (1 )

El nmero promedio de personas en el sistema

L = E [k ] = k k = k k (1 ) = (1 ) k k = (1 ) k k 1
0

= (1 )

k
0

1
1

= (1 )
=
2
(1 )
(1 )
= (1 )

E [k ] =

(1 )

Por Littles

W=

(1 )

W = E [w] =

1
E [s ]

W =

Wq = E[q ] = W E [s ] =
Wq =

E [s ]
(1 )

Aplicando Littles

[ ]

Lq = E N q = W q =

Lq =

pero

E [s ] =

E [s ]
(1 )

E [s ]
E [s ]
E [s ] =
[1 (1 )]
(1 )
(1 )

E [s ]
E [s ]
=
E [s ]
(1 )
(1 )

2
(1 )

La probabilidad que el servidor est ocupado

P[server ocupado] = 1 P[k = 0] = 1 (1 ) =


t
w

W (t ) = P[w t ]1 e
Probabilidad de que al arribar se deba esperar un tiempo t
en el sistema para ser procesado

W( t ) = P[q t ] = 1

t
w

Probabilidad que se deba esperar un tiempo t para ser

atendido por el servidor

Sistema M/M/1 con

k =

k +1

k =

P0 (t )

= 1 p1 0 p 0 = 0 p1 = 0 p0
1
t

De (3)

pero 0 =

= y 1 =

Luego
p1 = p 0

k 1 p k 1 + k +1 p k +1 = k p k + k p k = (k + k ) p k

de (1)

p k +1 =

p k +1 =

( k + k ) p k k 1 p k 1

k +1

[(k + ) pk k 1 pk 1 ] =

+ p k p k 1

k
k + 1

p k +1 =
+ 1 p k p k 1
k
k + 1

Para k = 1

pero p1 = p 0 por lo tanto


p 2 = + 1 p1 p 0
2

+ 2
p 2 = + 1 p 0 p0 =

p
=
p0 + p0 p 0

0
0
2
2

2
p2 =

2
2

p0

Para k = 2

p3 = + 1 p 2 p1 = + 1
p 0 p0 =
p0 +
p0
p0
2
2
3* 2
2
2
3

3
2
2

p3 =

3
3* 2

p0

En general..
pk =

k
k!

p0

pk = 1

De (2)

xn

n! = e

Pero

k!

p0

entonces

=1

p0 e = 1 p0 = e

Luego
pk =

k
k!

p0 =

k
k!

k!

L = E [k ] = k p k = k

= e

(k 1)!
0

k!

k = k 1

L = E[k ] =

entonces

e =

= e

k k
e
k (k 1)!

k 1

(k 1)!
0

= e , por tanto

en este ltimo caso si

Sistema M/M/1/K
Considera como cantidad mxima en el sistema un total de K consumidores. Por tanto,
es un sistema que cuenta con un buffer finito, lo que lo hace mas realista a un sistema de
comunicaciones.

para k = 0,1,2,3,......, K 1

k =

k =

para k > K

para k = 1,2,3,...., K
para k > K

p 0 p1 = p 0

= p k p k = p k 1 p k = p k 1

De (1)

p0 = p1 p1 =

De (2)

p k 1

Entonces
p 2 = p1 = ( p 0 ) = 2 p 0

p3 = p 2 = 2 p 0 = 3 p 0

etc
p k = k p0
K

De (3)

= 1 p0 k = 1

pero

x
0

1 x N +1
por tanto
=
1 x

1 K +1
= 1 con lo cual
p0
1
1

p0 =
K +1
1

Si

p
0

Si

entonces = 1

y en ese caso

= 1 1k = 1 + (1 + 1 + 1 + ........... + 1) = K + 1
0

luego

1
p0 =

K +1

pk =

K
K +1

Entonces tenemos que


1

k +1

pk =
1
k
( K + 1)

para k = 0,1,2,3,...., K
para = k = 0,1,2,3,...., K

Si

L = E [k ] = k p k = k k

(1 )

(1 K +1 )

(1 ) K
k k

k +1
(1
) 0

K
(1 )

k k 1

K +1
(1 ) 0

(1 )
K k
(1 )
1 K +1

=
K +1
(1 K +1) ) 0
(1 ) 1
=

(1 )

(
1 K +1 )(1 )
K +1
(1 )

(1 ) 1 K ( K + 1) (1 K +1 ) (1 ) 2

( K + 1) K

+ (1 K +1 )(1 ) 2
(1 )
(1 )
( K + 1) K (1 K +1 )
+
=

(1 )
(1 K +1 )
(1 ) 2
=

(1 ) ( K + 1) K
(1 ) (1 K +1 )
+
(1 K +1 ) (1 )
(1 K +1 ) (1 ) 2

L = E [k ] =

(1 )

( K + 1) K +1
(1 K +1 )

=1
K
K
1
1
1
[1 + 2 + 3 + 4 + 5 + .... + K ]
L = k pk = k
=
k=

( K + 1) ( K + 1) 0
( K + 1)
0
0

Si

L=

1
( K + 1)
K
( K + 1)
2

L=

K
2

Por tanto tenemos

(1 )
K
2

L = E [k ] =

( K + 1) K +1
(1 )

si

si

0 = p k = (1 p k )
Por Littles

W = E [w] =
donde

Wq = E [q ] =

Lq

Lq = L (1 p 0 )

La verdadera utilizacin , que es la probabilidad de que el servidor est ocupado es


(fraccin del tiempo que el server est busy)

0 = 0 E [s ] = (1 p k ) E[s ] = (1 p k )

0 = (1 p k )
E [q q > 0] =

Wq
(1 p 0 )

Tiempo promedio en la cola para aquellos mensajes retardados

Recordemos que para el clculo del retardo promedio T tenemos:


M

T =

Ti i

i =1

Si miramos la situacin de nuestra red, podemos considerar en primera aproximacin


que ella es del tipo M/M/1, con lo cual
W=

E [s ]
1

pero = E[s ] E [s ] =

W =T =

Ti =

si la cola es M/M/1, entonces

i
1 i

Si cambiamos la notacin para transformar consumidores/seg bits/seg , y


y donde
suponemos paquetes de tamao promedio 1 bits

paquete

C i es la capacidad del canal o enlace en bits


seg

1
tamao del paquete
1

E [s ] = tiempo de servicio =
E [s ] =
=
Capacidad del canal
Ci
Ci
paquetes

seg

La razn de arribo es i

i
E [s ]
Ti =
=
=
1 i 1 i E [s ]

Dado que

T =
i =1

Ci

1 i
Ci

Ti i

Ti =

T=

C i i

i =1

Sea una red

Y la matriz de trfico simtrica siguiente


A
A
B
C

9
AB
X

4
ABC
8
BC
X

1
ABFD
3
BFD
3
CD
X

7
AE
2
BFE
3
CE
3
DCE
X

4
AEF
4
BF
2
CEF
4
DF
5
EF

D
E
F

Sea 1 = 800 bits

paquete

Determine:
a) retardo medio de cada enlace Ti
b) retardo promedio de la red T

Canal

Enlace

1
2
3
4
5
6
7
8

AB
BC
CD
AE
EF
FD
BF
EC

T=

i =1

C paq
paq
T mseg

C i Kbits
i
seg
seg i
seg i
paq

20
25
14
91
20
25
12
77
10
12,5
6
154
20
25
11
71
50
62,5
13
20
10
12,5
8
222
20
25
10
67
20
25
8
59

1 14 12 6 11 13
8 10 8 7,08
+ +
+ +
+
+ +
=
114 [mseg ]

62 11 13 6,5 14 49,5 4,5 15 17


62

Es posible optimizar la situacin realizando una nueva Asignacin de Capacidades a las


lneas o enlaces.

Asignacin de Capacidades
La situacin se resume en lo siguiente:
Dado la Topologa y i
Se trata de minimizar T
Haciendo nuevas Asignaciones de C i
Bajo restriccin de costo

Supongamos d (C i ) = d i C i
Resolvemos el Lagrangiano
M

G = T + d i Ci D
i =1

G=

i =1

donde

T=

i =1

+ d i Ci D
i
i =1

i
G
1

=0
+ d i = 0
2
( C i i )
C i

i
= di
( C i i ) 2
Ci =

( C i i )2 =

i
di

i
i 1
+

di

M
M

1
D = d i Ci = d i i +

i =1
i =1

D
i =1

d i i

i =1

i
d i

i d i = De

De : Costo en Exceso..lo que debe agregarse al costo mnimo para obtener un costo D y
un retardo T
De esta forma la nueva asignacin Ci es:

Ci =

i De
+
di

i d i
M

j =1

j d j

con De = D
i =1

d i i

D = d i Ci
i =1

En nuestro caso si d i = 1
M

i =1

i =1

[ s]

D = d i C i = C i = 170 Kb

[ s ] 0,8 Kb paq * 82 paq s = 104 [Kb s ]

De = 170 Kb

Ci =

i De
+
di

i d i
M

j =1

jd j

104 i
C i = 0,8 i +

25,4

Canal Enlace
1
2
3
4
5
6
7
8

AB
BC
CD
AE
EF
FD
BF
EC

i De
+ M

j =1

i
j

C
C i Kbits
i
seg

26,5
23,3
14,8
22,4
25,2
18
21
18

T = 76 ms
paq

paq
C paq
T mseg

i
i
seg
seg
paq

i
33,2
19,2
52
29,7
17,7
56,5
18,5
12,5
80
30
19
52,6
31,5
18,5
54
22,5
14,5
69
26,2
16,2
61,7
22,5
14,5
69

Se optimiz !!!!

TAREA!!!!

Sea la siguiente red con 1 = 300 bit


paq

B
25
AB

C
1
AEC
7
BC

C
D

D
80
AD
6
BCD
14
CD

E
39
AE
2
BCE
2
CE
30
DE

-Determinar Ti
-Calcular T
-Minimizar T haciendo Asignacin de Capacidades. Considere di=1
Redes de Acceso Local
Objetivo: Como conectar Host y terminales al IMP mas cercano
Asignacin de Puntos de Utilizacin a Concentradores
Sea n: N de puntos de utilizacin
m: N de Concentradores
C i j : Costo de conectar el punto de utilizacin i al concentrador j
Condiciones
m 1

i)

X
j =0

i j

ii)

X
i =1

i j

= 1 i = 1,2,3,4,......., n

kj

j = 0,1,2,3,4,..., m

k j : conectividad del concentrador j

Algunas Heursticas
H1. Sea la matriz de costos C i j , proceda entonces por filas conectando a concentrador
de menor costo hasta completar conectividad
H2. Se escogen las asignaciones de acuerdo a una prioridad preestablecida. Por ejemplo,
mayor prioridad a fila de costo mas alto.

Ejemplo: Sea k j = 2 . Realizar asignaciones usando ambas heursticas y determine el


costo de ellas.
Ci j 0

1
2
3
4
5
6
7
8

4
3
2
7
6
9
2
8

7
5
1
6
2
4
3
7

2
4
3
8
1
2
4
5

6
1
2
6
3
3
3
9

4
1
1
3
2
3
6
2

Proponga una Heurstica diferente


Layout de Terminales
Objetivo: Como conectar los terminales del punto de utilizacin al concentrador o host
(Esquema multipunto)
Se tiene: - Una Matriz de Costos
- Una posible restriccin de flujo mximo por conexin
Heursticas Arbol de mnima extensin
Algunos Algoritmos:
-PRIM
-KRUSKAL
-ESAU-WILLIAMS
-PRIM
1.- Inicie asignando a cada nodo un factor de peso Wi .
W1 = 0 y Wi = para i > 1
Se define una funcin de desventaja Ti j = C i j Wi
2.- Encontrar Ti* j* = Ti j ptimo
3.- Chequear restricciones. Si hay, ponga

Ti* j* = y vuelva a 2

4.- Agregue enlace i j , ponga W j* = 0 y reajuste la Matriz (calcule nuevamente


*

los Ti j ).
Borre Ti*

j*

y W j* , vuelva a 1

-KRUSKAL
-Se seleccionan los enlaces en forma de costo creciente.
-Cada lnea potencial se chequea en sus restricciones. Si no hay problemas se
conecta, caso contrario se elimina.

-ESSAU-WILLIAMS
Paso 0. Ti j = C i j C i 1
1.

i, j

Ti j mnimo = Ti*

j*

El enlace encontrado es i * , j *

2. Chequea restricciones. Si no hay problemas vaya a 3. Si no haga


Ti* j* = , vuelva a 1.

3. Agregue enlace i * , j * . Borre fila i * de la Matriz. Etiquete nodo i *


con la etiqueta del nodo j * para mostrar que nodo i * est conectado
con nodo j * , reevale las restricciones. Borre Ti*

j*

y vaya a 1.

Ejemplo: Resuelva la siguiente asignacin mediante los 3 algoritmos. Determine el


Costo respectivo
Flujo Mximo: 5 unidades
Ci j 1

1
2
3
4
5

X 3 5 3
X 6 4
X 3
X

5
10
8
5
7
X

Conmutacin de Circuitos
Este tipo de comunicacin establece una ruta de extremo a extremo antes del
envo de los datos, es decir, primero debe establecerse la conexin. Su operacin es
similar a la situacin telefnica.

Conmutacin de Mensajes
No existe un establecimiento anticipado de la ruta. En su lugar, cuando el que
enva tiene listo un bloque de datos, ste se almacena en el primer IMP para expedirse
despus dndole solo un salto a la vez. Cada bloque se recibe ntegramente, se revisa en
busca de errores y se retransmite con posterioridad. Estas redes se denominan de
almacenamiento y reenvo (store and forward).

Conmutacin de Paquetes
En el anterior no existe lmite para el tamao del bloque, esto implica el uso de
grandes memorias o discos de almacenamiento, tambin implica gran ocupacin del
enlace lo que disminuye la interactividad o la comparticin del recurso.
A diferencia del anterior, la conmutacin de paquetes fija un lmite superior para
el tamao del bloque

Las redes normalmente usan Conmutacin de Paquetes y ocasionalmente


Conmutacin por Circuito, pero nunca Conmutacin por Mensajes.

Conmutacin por
Circuitos
Conmutacin por
Paquetes

Ancho de Banda
Reserva

Orden de los Paquetes


N

Si

Util para
Circuitos
Virtuales
Datagramas

TAREA!!!
Suponga un mensaje de X bits y un enlace de K trayectos. Suponga dos
situaciones. Una red de Conmutacin de Circuitos y una red de Conmutacin de
Paquetes. El tiempo de establecimiento de un circuito es de s segundos, el retardo de
propagacin es de d segundos por trayecto, el tamao del paquete es de p bits y la
velocidad de transmisin es de b bits por segundo.
Bajo qu condiciones tiene menor retardo la red de Conmutacin por paquetes?.

Circuitos Virtuales
Se establece conexin , se usa y se libera
Cada IMP debe mantener una tabla con una entrada por circuito virtual abierto que pasa
a travs de l, esto implica recordar hacia donde se deben enviar los paquetes.
Los paquetes tendrn que tener un campo con nmero de circuito virtual en su
header.
Problema!. Cmo asignar Ns identificadores a los circuitos virtuales dado que las
mquinas son independientes?.
Por ejemplo, el mismo nmero podra estar utilizado en dos trayectorias
diferentes a travs de algn IMP intermedio generando posible ambigedades.
Ejemplo:

Originados en A
0-ABCD
1-AEFD
2-ABFD
3-AEC
4-AECDFB

Originados en B
0-BDC
1-BAE
2-BF

B
A0
H0
H1
A1
H2
F0

Orden de creacin
Izquierda a derecha y hacia abajo

C
C0
C1
A0
F0
F1
H0

B0
B1
E0
E1

D0
D1
H0
D2

D
A
H0
H1
B0
H2
H3
H4

C0
C1
F0
F1

B0
E0
E1
B1
E2
E3
E
A0
A1
A2
A3

H0
H1
H2
H3

F
E0 D0
B0 D1
B1 H0

F0
H0
C0
C1

Ventana Deslizante
Objetivo: Asegurar la sincronizacin y mejorar el rendimiento de canal.
Se usa un campo de secuencia y un tamao de ventana!!
Ejemplo: Ventana deslizante de 1 bit con N de secuencia de 2 bits

Tx espera

Tx enva Tx aun no
recibe ACK

ACK

Tx enva Tx no
recibe ACK

Tx recibe
ACK

Rx espera Rx aun no
Recibe

Rx recibe
enva ACK

Rx espera

Rx aun no Rx recibe
recibe
enva ACK

Avanza
ventana

Con tamao de ventana de 2 bit implica


Rx espera 0,1

recibe OK avanza ventana para esperar 2,3etc

Rx espera 0,1
esperar 1,2

recibe OK 0 y enva NAK por pquete 1 y avanza su ventana para

Deben implementarse los time out respectivos!

Ventanas Deslizantes con Pipeline


Objetivo: Mejorar el rendimiento de comunicacin maximizando el uso del
ancho de banda del canal.
Ejemplo: Caso Satelital

X 2 = (36 + 6 ) * 10 3

] (6 *10 )
2

3 2

= 1764 * 10 6 36 * 10 6

X = 41569 Km
Si suponemos que la seal viaja aproximadamente a la velocidad de la luz
41569
300 * 10 3 Km
llegar desde A al satlite en :
138 msegundos
seg
300 * 10 3

Valor estndar = 125 mseg

Nivel de Red
Objetivo: Transportar los paquetes de extremo a extremo a travs de la red.
Por tanto el nivel de Red debe rutear y hacerlo de una manera inteligente que tienda a
evitar la congestin.