lunes, 22 de abril de 2013

Laboratorio 8. A multicast Congestion Control Scheme for Mobile Ad-Hoc Networks

A Multicast Congestion Control Scheme for Mobile Ad-Hoc Networksby Jun Peng and Biplab Sikdar

Vocabulario.
MANETs = (Mobile Ad-Hoc Networks)

Introducción


Este paper habla de un sistema de control de congestión para redes móviles Ad-hoc (MANETs). No sólo el esquema propuesto supera las desventajas de los protocolos de control de congestión de multidifusión existentes, sino que también logra un buen rendimiento en otros aspectos como la equidad con TCP, estabilidad de tráfico, etc. 

Los sistemas de control de congestión de multidifusión existentes generalmente se dividen en dos categorías: single-rate y multi-rate. Los esquemas multi-rate usualmente ofrecen mucho más libertad a los receptores en la elección del tipo de receptor apropiado. Debido a que los enlaces de un árbol de multidifusión son generalmente heterogéneos, los receptores en una sesión multidifusión pueden tener diferentes cantidades de ancho de banda. Así que los esquemas multi-rate tienen una gran ventaja sobre los esquemas single-rate en el abastecimiento a todos los receptores en una sesión de multidifusión.

Para los protocolos de transporte que no estén diseñados específicamente para MANETs, las principales fuentes de problemas en estas redes son las altas tasas de error de enlace, ancho de banda limitado, retrasos en el acceso de enlace. Casi todos los sistemas de control de congestión de multidifusión existentes sufren de los mismos problemas como TCP sufre en MANETs (Por ejemplo, reduciendo innecesariamente la tasa de transmisión en respuesta a los errores de enlace). Esto es porque utilizan las pérdidas como la indicación de congestión pero no pueden distinguir entre los errores de enlace y las pérdidas de congestión. 

Otro problema específico para los sistemas multi-rate es el retardo de acceso de enlace en MANETs causados por la competencia de acceso. Debido al diseño inherente del protocolo IGMP, la latencia de la capa caída ya es un problema significativo en las redes inalámbricas para los esquemas multi-rate. Aunque algunos esquemas han hecho un progreso significativo en la lucha contra el problema, por lo general introducir una sobrecarga considerable de control de tráfico es una seria desventaja en MANETs. (Por ejemplo, ancho de banda valioso y potencia son gastados).  Además de las desventajas específicas para MANETs, esquemas más actuales aún tienen problemas para compartir el ancho de banda de manera justa con TCP y haciendo frente al mal comportamiento de los receptores. 

El esquema propuesto supera la mayor parte de las desventajas de los sistemas existentes. En primer lugar, los errores de enlace no pueden hacer que el esquema propuesto bloquee erróneamente una capa, debido a que el estado de la cola en un cuello de botella, en lugar de la pérdida de información en los receptores, es usado para ajustar la tasa de tráfico de multidifusión en el cuello de botella. Segundo, el retardo del enlace de acceso causado por la competencia en MANETs no puede obstaculizar el ajuste del tipo del problema propuesto, ya que, en lugar de depender de los receptores para solicitar la poda para dejar capas, las capas de bloques de multidifusión se ponen en cada cuello de botella de un árbol multidifusión. En tercer lugar, el esquema propuesto solo introduce un muy limitado control de tráfico debido a la recolección de información en el terreno y a la tasa de control. 

Además de las características anteriores que le permiten trabajar eficazmente en MANETs, el esquema propuesto tiene también un buen rendimiento en el intercambio de ancho de banda con TCP, robustez frente a los receptores de mal comportamiento y estabilidad de tráfico. Por otra parte, el sistema no impone ningún cambio significativo en la gestión de colas, programación o reenvío de políticas en las redes existentes.

Esquema de Control de Congestión Multi-Rate

El esquema propuesta opera de la siguiente manera. Cuando sesiones de multidifusión atraviesan un enlace, el agente esquema comienza a observar la cola de salida del enlace y el tráfico que pasa por el enlace. Cuando el número de paquetes en una cola excede de un umbral, algunas de las capas de sesiones multidifusión son bloqueadas de entrar al enlace. Cuando el número de paquetes está por debajo de otro umbral, por un período de tiempo, alguna de las capas bloqueadas son liberadas para atravesar el enlace. En otros casos, no hay ajuste en las capas. De esta manera, se puede aliviar la congesión mientras que también se puede presentar la liberación de ancho de banda. 

Esquema Básico

El esquema propuesto recupera algo de información acerca de las sesiones de la competencia en un cuello de botella para ayudar a su funcionamiento. Específicamente, el número de sesiones TCP, el número de sesiones de multidifusión, el número de capas en cada sesión de multidifusión, la tasa de flujo de las sesiones de multidifusión y la tasa de flujo de las sesiones TCP es la información recabada.


En algunas aplicaciones como en Streaming, una capa inferior por lo general tiene más prioridad que una superior. El esquema propuesto incrusta la información de prioridad de la capa en las direcciones utilizadas por las capas de una sesión de multidifusión.  

En el cuello de botella, el esquema propuesto distingue las prioridades de as capas de la misma sesión de multidifusón. Específicamente, una capa con menor dirección tiene mayor prioridad que una capa con mayor dirección. 

En lugar de usar la adición de capas o eliminación de las mismas en los receptores como en la mayoría de los esquemas existentes, el esquema propuesto utiliza la capa de bloqueo y capa de liberación en los cuellos de botellas para solucionar la congestión y para reclamar banda ancha respectivamente. La capa de bloqueo es la modificación de la tabla de enrutamiento multidifusión para negar el acceso a una capa a un enlace congestionado, la capa de liberación es la modificación de la tabla de enrutamiento para permitir que una capa de bloqueo atraviese un enlace. Cuando la capa de bloqueo es necesaria, la sesión de multidifusión con el número máximo de capas es seleccionado para bloquear una capa. 

Dentro de esta sesión, la capa con la prioridad más baja entre las capas de bloqueo es bloqueada. Sin embargo, cuando la capa de liberación es requerida, la sesión de multidifusión con el número mínimo de capas de capas es seleccionada para liberar una capa. En esta sesión, la capa con la mayor prioridad entre las capas de bloqueo es liberada.  Una capa vacía de un receptor es una capa que fue bloqueada en alguna parte en la red y no tiene flujo de datos en el receptor. 


El esquema propuesto bloquea o libera capas de multidifusión en un cuello de botella de acuerdo al estado de la salida de la cola del enlace. La cola se clasifica en tres fases: fase 1, fase 2 y fase 3. La fase de la cola es decidida por el número de paquetes en la cola. 


Adaptación del esquema


Generalmente, el tráfico de multidifusión debe ser lo más estable posible, lo que es necesario para algunas aplicaciones específicas como streaming y también para una buena utilización de ancho de banda. Para evitar varios tipos de variación en el número de capas de multidifusión en un cuello de botella, se agregan tres procedimientos para adaptar el esquema a varias situaciones.

  1. Cuando las sesiones de multidifusión necesitan incrementar su tasa de tráfico continuamente, la tasa de incremento se reduce cada vez que una capa es liberada. Específicamente, el tiempo de observación para la siguiente capa de liberación es incrementada por un factor
  2. Cuando una capa es bloqueada justo después de que una capa es liberada, el tiempo de observación para la siguiente capa de liberación es incrementada por otro factor
  3. Una capa es bloqueada en la fase 3 solo si la tasa promedio de flujo de las sesiones de multidifusión es mayor que la tasa promedio de flujo de las sesiones TCP por el umbral de relación  . 
    Este procedimiento previene a una capa de ser bloqueada alternativamente y liberada en la fase 3 y fase 2 respectivamente.

Análisis del esquema

Para facilidad de su entendimiento, se toma como escenario una sesión de multidifusión compartiendo un cuello de botella con una sesión TCP. Se asume que la sesión TCP tiene límites de ventana lo suficientemente grande, entonces epuede consumir su ancho de banda compartida. El ancho de banda del cuello de botella es denotado por W. La tasa instantánea y la tasa promedio de la sesión de multidifusión se denota por Y1(t) y Y1, respectivamente; la tasa instantánea y la tasa promedio de la sesión TCP se denotan por Y2(t) y Y2, respectivamente. Para llegar a la equidad ideal y la utilización del enlace, las siguientes condiciones deben cumplirse:


Así que lo ideal  es que ambas Y1(t) y Y2(t) sean constantemente W/2.


La interacción de la sesión de multidifusión con la sesión TCP en el escenario anterior puede analizarse de la siguiente manera: Primero, la tasa de la sesión TCP puede representarse:





Las ecuaciones representan "no congestionado" y "congestionado" respectivamente. Esta información se infiere por el remitente TCP detectando pérdidas en la transmisión. 


El comportamiento de la sesión de multidifusión puede también ser expresado matemáticamente. Con la suposición de los límites de ventana, la sesión TCP no tiene ancho de banda libre para ahorrar. La fase 1 está diseñada para reclamar ancho de banda libre ahorrado por alguna sesión de multidifusión o TCP. El comportamiento de la sesión de multidifusión se puede expresar de la siguiente manera: 



En esta ecuación, además de la congestión de información, las tasas promedio Y1 y Y2 también se utilizan. Cuando Y1 es menor que Y2 y la red es no congestionada, la sesión multidifusión incrementa su tasa en un paso g; cuando Y1 es mayor que Y2 y la red está congestionada la sesión multidifusión decrementa su tasa en un paso g, de otro modo no se ajusta la tasa. 




Eficacia en MANETs

La eficacia del esquema propuesto en MANETs se debe a diferentes factores. En lugar de esperar a los receptores para la solicitud de poda e injerto como en los esquemas existentes, el esquema propuesto ajusta la tasa de tráfico de multidifusión en cada cuello de botella de un árbol de multidifusión. Los errores del enlace no pueden decrementar el rendimiento del esquema, mientras este utilice el estado de la cola en el cuello de botella en vez de la pérdida de información en los receptores como métrica para ajustar la tasa de tráfico en el cuello de botella. 

Otra de las características del sistema propuesto es que los receptores de mal comportamiento no se pueden beneficiar a sí mismos ni lastimar a otros receptores, ya que con el esquema, el número de capas activas que un receptor puede recibir es controlada exclusivamente en el cuello de botella en el camino de la fuente al receptor. Si un receptor suscribe intencionalmente o accidentalmente a demasiadas capas, el número de capas que tienen datos fluyendo en el receptor no van a cambiar, porque el cuello de botella va a bloquear las capas excesivas de forma automática.  La única consecuencia es que el ancho de banda limitado sobre el cuello de botella es posiblemente gastado. 

Resultados de la simulación

En el MANET, el protocolo MAC es 802.11 y el protocolo de ruteo ad-hoc es DSDV. Hay 5 sesiones de prueba: 2 multicast y 3 sesiones TCP.  La fuente de cada sesión es en la red alámbrica, mientras el destino de cada sesión está en el MANET. Cada sesión de multidifusión tiene 15 capas, la tasa de cada capa es 25Kh/s.

Se consideraron cuatro escenarios en el experimento. En el primero, todas las sesiones empiezan y se detienen al mismo tiempo. En la segunda, dos sesiones TCP empiezan después que las otras sesiones. En el tercer escenario, las dos sesiones de multidifusión empiezan después que las sesiones TCP. En el cuarto escenario, todas las sesiones empiezan al mismo tiempo pero dos sesiones terminan antes que las otras sesiones. En este paper solo se mencionan los resultados de los primeros dos escenarios.

Escenario 1. Comienzo y terminación simultáneos.
En este escenario, todas las sesiones empiezan en el comienzo de la simulación y terminan a los 1500 segundos. Los resultados de la simulación se muestran en las siguientes imagenes.



La primera imagen muestra el número de capas y el umbral de cada sesión de multidifusión, mientras la segunda imagen muestra el umbral de cada sesión individual TCP y la tasa de flujo promedio de las sesiones TCP.

Cada sesión obtiene un umbral cerca de 20KBytes/s. Además, después del ajuste inicial, el número de capas de cada sesión de multidifusión es estable. Esto muestra que el esquema alcanza un balance rapidamente y se mantiene. 

Escenario 2.  Llegada después de las sesiones TCP.
Este escenario prueba si las llegadas tarde de las sesiones TCP pueden obtener una parte justa del ancho de banda. Una sesión TCP se une con las otras sesiones a los 500 segundos, mientras que la otra sesión TCP se une a los 1000 segundos. 

En los primeros 500 segundos, hay una sesión TCP y dos sesiones multidifusión. Cada una de estas últimas tiene un umbral cerca de 30 KBytes/s, mientras la sesión TCP también tiene un umbral cerca a los 30KBytes/s. En el segundo 500, hay 2 sesiones TCP y 2 multicast, cada sesión obtiene un umbral cerca de los 25KBytes/s. En los últimos 500 segundos, hay 3 sesiones TCP y dos multidifusión. Cada sesión tiene un umbral cerca de 20KBytes/s.






Conclusiones:

Los esquemas para controlar el tráfico pueden ser muy útiles ya que con esto puedes mejorar algunas cosas en la red. Por ejemplo, al controlar el tráfico puedes evitar que haya pérdidas de paquetes y con esto evitar que la comunicación se degrade. También con esto se puede ayudar a liberar ancho de banda y tener una comunicación más estable, rápida y eficaz. 

En este esquema se pudo ver que se hicieron varias simulaciones, lo que hace básicamente el esquema es prohibir el paso a algunas sesiones si la red está congestionada, o en caso contrario liberar el paso, para esto se tiene que determinar si la red está congestionada o no. En las simulaciones realizar se pudo observar que en algunas las sesiones iniciaban y terminaban al mismo tiempo y en otras algunas sesiones comenzaban un poco después del inicio de la simulación, esto me parece muy bien para así probar la efectividad del esquema en varios escenarios y ver si en realidad está funcionando. 

Referencias:
A multicast Congestion Control Scheme for Mobile Ad-Hoc Networks
Jun Peng and Biplab Sikdar
Dec 2003, Global Telecommunications Conference, 2003. GLOBECOM '03. IEEE


1 comentario: