INVESTIGACIÓN OPERATIVA Modelado de Teoría de Colas y sistemas de Telecomunicaciones Ing. Orlando Philco A. MSc. Hoy las nuevas tecnologías están ampliamente diversificadas; lo que además ha puesto énfasis en la necesidad de compartir recursos, desde fuentes de energía hasta los servidores de centros de datos. El continuo aumento en el número de usuarios y dispositivos que comparten estos recursos, le ha dado un vuelco insospechado a las telecomunicaciones modernas. No obstante, en sus inicios, éstas no habrían podido existir sin la Teoría de Colas. La optimización requerida en las redes de telecomunicaciones va por la necesidad de mejorar la utilización de un recurso que se agota y destinarlo a un usuario sólo por determinados tiempos de conexión según sea su demanda, lo que lleva también una optimización en los costos involucrados en los modelos de asignación de éstos para determinar una valorización de los servicios. Naturaleza compleja del tráfico en las redes de telecomunicaciones • Tráfico combinado de diversas clases: voz, video, datos. • Distintos modos de conmutación: • Conmutación de circuitos. • Conmutación de paquetes. • Variedad de dispositivos de gestión y control de tráfico. • Distintos métodos de gestión de tráfico: • FIFO. (First In First Out, primero en entrar, primero en salir) • Prioridades. • Leaky bucket, Token bucket. (Algoritmos que evitan que el tráfico llegue a niveles inaceptables de congestión). • Aleatoriedad en los procesos de demanda de servicios. • Aleatoriedad en el proceso de circulación de paquetes. • Aleatoriedad en las duraciones de las conexiones. • Aleatoriedad en los tiempos de respuesta de los dispositivos. Objetivos del diseño de un sistema de telecomunicaciones • Ofrecer un servicio de calidad dentro de las restricciones físicas, tecnológicas o económicas a que esté sujeto el sistema. Para cuantificar la calidad es preciso medir una serie de parámetros de interés: • Throughput • Retardo • Tasa de pérdidas • Variabilidad en el retardo (Jitter) • Modelos matemáticos: Teoría de Colas. • Modelos de simulación Parámetros para cuantificar la QoS • Throughput: Aprovechamiento real del ancho de banda disponible. • Retardo: ƒEn conmutación de circuitos, tiempo que tarda el usuario en tener un circuito disponible. ƒEn conmutación de paquetes, tiempo de espera a que se someten los paquetes de una conexión por tener que compartir los recursos de la red con paquetes de otras conexiones. • Tasa de pérdidas: Clientes que no consiguen acceder al sistema por estar todos sus recursos ocupados; proporción de paquetes que se pierden por desbordamiento de los buffers de una red. • Variabilidad en el retardo (Jitter): Aplicaciones como la videoconferencia son muy sensibles a esta variabilidad. Necesidad de construir modelos de los sistemas que clarifiquen las relaciones entre la calidad de servicio y la configuración de los recursos del sistema • Modelos matemáticos: Teoría de Colas. • Modelos de simulación Teoría de Colas Se ocupa del estudio de las colas de espera, con un alcance más general que los sistemas de comunicaciones cuyo objetivo es el estudio de sistemas compuestos, por una o más unidades, llamadas servidores, encargados de realizar las tareas encomendadas por otras unidades, llamadas clientes, con la particularidad de que si durante algún intervalo de tiempo la llegada de clientes supera la capacidad de procesamiento del sistema, dichos clientes permanecen en cola hasta que sean servidos. Cuestiones que pueden consistir simplemente en la evaluación de características de un sistema ya establecido (por ejemplo: tiempo de espera de los clientes en cola, número medio de clientes en cola, número medio de servidores del sistema que están ocupados en cada momento, etc.) • Por Ejemplo: En el contexto particular de los sistemas de conmutación de paquetes, los clientes son los paquetes o mensajes generados por alguna fuente (datos, voz, video, etc.); los servidores son los canales a través de los cuales deben ser enviados estos paquetes o mensajes. Las colas se forman en los buffers disponibles en los conmutadores o multiplexores, donde los mensajes deben esperar a que se libere el canal correspondiente para poder ser transmitidos. Campos de Aplicación de Teoría de Colas Se puede resolver un buen número de cuestiones que se plantean en el contexto de estos sistemas; cuestiones que pueden consistir simplemente en la evaluación de características de un sistema ya establecido (por ejemplo: tiempo de espera de los clientes en cola, número medio de clientes en cola, número medio de servidores del sistema que están ocupados en cada momento, etc.), o bien en el diseño de un sistema del que se desea que cumpla ciertos parámetros de calidad sobre dichas características. Campos de Aplicación Teoría de Colas Los campos de aplicación de la Teoría de Colas en la Ingeniería de Telecomunicación, puede agruparse en las siguientes grandes áreas: • Análisis y diseño de protocolos de comunicación. • Control y gestión de recursos en redes de telecomunicaciones. • Dimensionado de redes de comunicación. • Modelado del tráfico que circula por las redes: voz, video y datos. Erlang En sentido estricto un Erlang representa el uso continuo de un canal de voz; pero en la práctica se emplea para medir el volumen de tráfico en una hora. • Por ejemplo, Si un grupo de personas hacen 30 llamadas en una hora y cada llamada tiene una duración de 5 minutos, dicho grupo ha tenido un tráfico de 2,5 Erlangs. Esta cifra resulta de lo siguiente: • Minutos de tráfico en una hora = número de llamadas x duración • Minutos de tráfico en esa hora = 30 x 5 • Minutos de tráfico en esa hora = 150 • Horas de tráfico por hora = 150 / 60 • Horas de tráfico por hora = 2.5 • Valor del Tráfico = 2.5 Erlangs Tabla de Erlang B CARACTERÍSTICAS DE UN SISTEMA DE TEORÍA DE COLAS Numero de Servidores • Forma de arribo y servicio • Comportamiento de la línea Medición del Sistema Promedio del número de clientes en espera • tiempo promedio de espera del cliente • Utilization del sistema Número de Servidores Un servidor Multiples servidores Multiples Servidores sencillos Forma de llegada Usualmente se asume una distribución Poisson: Distribuciones de variable discreta. Sus principales aplicaciones hacen referencia a la modelización de situaciones en las que nos interesa determinar el número de hechos de cierto tipo que se pueden producir en un intervalo de tiempo o de espacio, bajo presupuestos de aleatoriedad y ciertas circunstancias restrictivas. Una variable aleatoria X tiene una distribución de Poisson, si su función de probabilidades está dada por: Donde e es la base de los logaritmos naturales y el promedio de la distribución, la cual debe ser mayor que cero. (e = 2,71828 ...) Tiempo de Servicio Si se considera que: 1. La esperanza de ocurrencia de un evento en un intervalo es la misma que la esperanza de ocurrencia del evento en otro intervalo cualesquiera, sin importar donde empiece el intervalo. 2. Que las ocurrencias de los eventos son independientes, sin importar donde ocurran 3. Que la probabilidad de que ocurra un evento en un intervalo de tiempo depende de la longitud del intervalo. 4. Que las condiciones del experimento no varían, y 5. Que nos interesa analizar el número promedio de ocurrencias en el intervalo. Una distribución exponencial es asumida: Relative Frequency (%) Service Time Entonces se puede afirmar, que la variable aleatoria mencionada en los fenómenos descritos es una variable de Poisson. Comportamiento de la linea de espera Primeras entradas – Primeras Salidas (FCFS, FIFO): Prioridades Multiples: Algunos Modelos Existe una clasificación estándar para identificar los modelos de colas, según sus características o propiedades. Esta clasificación se aplica a modelos de servicio único prestado por una o varias estaciones. Los modelos se identifican mediante la siguiente convención, en letras: 1. Un servidor, tiempo de servicio exponencial (M/M/1) 2. Un servidor, tiempo de servicio general (M/G/1) 3. Servidores múltiples, tiempo de servicio exponencial (M/M/s) Nomenclatura A/B/s Distribución De llegada Distribución de servicio Número de Servidores donde M = distribución exponencial (“Markovian”) D = determinística (constante) G = distribución general Donde las letras o campos se usan según la siguiente convención: A = En esta campo se coloca la distribución del tiempo entre llegadas B = En este campo se especifica la distribución del tiempo de servicio C = Se usa para identificar el número de estaciones de servicio, en paralelo D = Se especifica la prioridad del sistema. Por defecto se supone que es FIFO. E =Indica la capacidad de sistema (Por defecto se supone que es limitada) F = Tamaño de la fuente (Por defecto se asume que es ilimitada) Para especificar la distribución del tiempo entre llegadas y del tiempo se servicio se usa la siguiente convención: • M = Distribución exponencial • G = Distribución general • Ek = Distribución de Erlang • D = Distribución constante A veces la clasificación es simplemente A/B/C, y si es del caso se especifica con palabras alguna otra propiedad del sistema. Ejemplo: M/M/5: (FIFO/∞/∞) Ejemplo: M/M/1: (FIFO/10/∞) Ejemplo: M/M/s: (FIFO/M/M) Ejemplo: M/G/1 Principales parámetros usados en los modelos de colas: = Tasa o número de llegada del cliente m = tasa o número de servicio (1/m = tiempo de servicio promedio) s = número de servidores m = Tamaño de la fuente (número máximo de clientes que pueden llegar al sistema) N = Capacidad del sistema (número máximo de clientes que pueden haber en el sistema en cualquier instante) Se calcula Lq = número promedio de clientes en la línea (en la cola) L = número promedio de clientes en el sistema Wq = tiempo promedio de espera de un cliente en la línea W = Tiempo pormedio de espera (incluyendo tiempo de servicio) Pn = Probabilidad de tener n clientes en el sistema r = Utilización del sistema Conceptos basicos Las siguientes ecuaciones se aplican para todos los tipos de modelos sm • Utilización del sistema r • Número promedio de clientes en el sistema L Lq • Tiempo promedio de espera en la línea Wq • Tiempo total de espera (incluyendo servicio) W Wq m Lq 1 m Modelo 1 (M/M/1) Formulas: m Probabilidad que el sistema este vacío: P0 1 Probabilidad de que haya n clientes en el sistema: Pn P0 m Numero promedio en la línea de espera: 2 Lq m m n Estas formulas se aplican cuando µ> λ; esto es, la tasa promedio de servicio > tasa promedio de llegadas; o sea, cuando λ/µ < 1 ; en caso contrario la cola crece sin limite, pues el servicio no tiene capacidad para manejar las unidades que llegan Modelo 2 (M/G/1) Formulas Número promedio en línea: 2 2 r 2 Lq 2 1 r m Probabilidad de que le sistema este vacio: P0 1 Caso especial: M/D/1 2 Lq 2 m m Modelo 3 (M/M/s) Formulas Probabilidad que sistema este vacío : P0 1 s1 n0 Probabilidad de n clientes en el sistema: / mn / ms n! ( / m )n P0 n! Pn n / m P0 s!s ns s!(1 r ) for n 1 , s for n s s Probabilidad de que un nuevo cliente vaya a esperar: Numero promedio en línea: P0 Pw m s!(1 r ) ( / m )s1 Lq P0 2 (s 1)!(s / m ) Aplicación de teoria de Colas Se pueden usar los resultados de teoria de colas para tomar las siguientes decisiones: Cost Cuantos servidores usar Total Cost Cost of Service Capacity Usar un servidor rapido o varios servidores lentos Tener un servidor general o un servidor para una tarea específica Cost of customers waiting Optimum Service Capacity Objetivo: Minimizar costo total = costo del servidor + costo de espera Resultados de simulación de red de telecomunicaciones Mediante simulación, múltiples trabajos estiman cifras de eficiencia en el uso del recurso espectral, mediante asignación dinámica, manteniendo reducidos objetivos de probabilidad de bloqueo. Sin duda al existir una asignación dinámica de recursos habrá una degradación de la QoS debido a la probabilidad de congestión, por ello los modelos de estimación y simulación del tráfico de datos, son de suma importancia, y existe mucha investigación al respecto. Se puede ver resultados de la simulación de los distintos esquemas de asignación para rutas entre nodos. Resultado de simulación de teoría de Colas Problema: Simulación del tiempo de espera de un cliente en la fila de un banco antes de que sea atendido Tiempo Tiempo Cliente llegada salida 1 2 3 4 5 6 0.4 1.6 2.1 3.8 4.0 5.6 2.4 3.1 3.3 4.9 5.2 8.6 Tiempo del servidor 2 0.7 0.2 1.1 0.3 3 Tiempo de espera 0 0.8 1 0 0.9 0 Inicio t. llegadas NA=0 (No. De clientes atendidos) NNA=0 (No. De clientes no atendidos) NS=1 (No. De servidores) T=600 minutos (tiempo servicio) L=20 (cantidad personas t. salidas máximo en la fila) Dist. Poisson para llegadas λ=4 Return Dist. Exponencial 4 Dist. Poisson para llegadas 4 Dist. Exponencial para salida Para llegadas λ=4 S =0 (Estado del servidor) Wq=0 (T. promedio espera en fila) Lq=0 (T. promedio clientes en fila) Tts=0 (Tiempo total del servicio) Ttl=0 (Tiempo total de llegadas) Tto=0 (Tiempo total) Cf=0 (No. De clientes en la fila) Return t. llegadas Tto=Tto+Ttl cf=cf+1 No S=0 Si t. servicio No t>600 Fin de la simulación L<20 Si No NNA=NNA+1 NA=0 (No. De clientes atendidos) NNA=0 (No. De clientes no atendidos) t=600 minutos (tiempo servicio) 4 L=20 (cantidad personas 4 máximo en la fila) Dist. Poisson para llegadas Dist. Exponencial para salida Wq=0 (T. promedio espera en fila) Lq=0 (T. promedio clientes en fila) tts=0 (Tiempo total del servicio) tl=0 (Tiempo total de llegadas) tt=0 (Tiempo total) cf=0 (No. De clientes en la fila) Conclusiones • Se formulan modelos matemáticos que representan su operación y después se usan estos modelos para obtener medidas de desempeño. • El ‘cliente’ es todo agente o individuo que inicia una petición a un servicio en específico. Forman parte de la cola, ya que son quienes participan de forma activa en el estudio de un sistema. • En el campo de las telecomunicaciones, estos clientes serían paquetes de datos con todos los encabezados requeridos para la aceptación y operación del servicio a solicitar. Los clientes necesitan ser analizados por medio de una distribución estadística para dar información de tiempos entre llegadas. • El problema es determinar qué capacidad o tasa de servicio proporciona el balance correcto. Esto no es sencillo, ya que un cliente no llega a un horario fijo, es decir, no se sabe con exactitud en que momento llegarán los clientes. También el tiempo de servicio no tiene un horario fijo. • Este análisis proporciona información vital para diseñar de manera efectiva sistemas de colas que logren un balance apropiado entre el costo de proporcionar el servicio y el costo asociado con la espera por ese servicio. Conclusiones • La disciplina de la cola se refiere al orden en el que se seleccionan sus miembros para recibir el servicio. Por ejemplo, puede ser: FIFO (first in first out) primero en entrar, primero en salir, según la cual se atiende primero al cliente que antes haya llegado. LIFO (last in first out) también conocida como pila que consiste en atender primero al cliente que ha llegado el último. RSS (random selection of service) que selecciona los clientes de manera aleatoria, de acuerdo a algún procedimiento de prioridad o a algún otro orden. Processor Sharing Sirve a los clientes igualmente. La capacidad de la red se comparte entre los clientes y todos experimentan con eficacia el mismo retraso. • En un caso típico de un servidor con varios dispositivos conectados; la velocidad del servidor depende más que nada de las características de los dispositivos empleados, Si la velocidad es baja, el retardo crecerá rápidamente conforme a la utilización. En el caso de que la velocidad sea alta, el retardo no subirá tan de golpe, sino hasta que alcance cierto porcentaje de utilización en donde peligrará la saturación total del sistema en caso de que haya un salto brusco de utilización.