SciELO - Scientific Electronic Library Online

 
vol.25 issue2SURFACE NORMAL ESTIMATION AND OUTLIERS REDUCTION ON TRIDIMENSIONAL CLOUD POINTSMETHODOLOGY FOR THE DIAGNOSIS OF PRACTICE MODEL PERSONAL SOFTWARE PROCESS author indexsubject indexarticles search
Home Pagealphabetic serial listing  

Services on Demand

Journal

Article

Indicators

Related links

Share


Información tecnológica

On-line version ISSN 0718-0764

Inf. tecnol. vol.25 no.2 La Serena  2014

http://dx.doi.org/10.4067/S0718-07642014000200006 

COMPUTACIÓN E INFORMÁTICA

ESTIMACIÓN Y OPTIMIZACIÓN DEL BALANCEO DE CARGA USANDO INGENIERÍA DE TRÁFICO ADAPTATIVA MATE EN REDES DE CONMUTACIÓN DE ETIQUETAS MULTIPROTOCOLO GENERALIZADO (GMPLS)

 

ESTIMATION AND OPTIMIZATION OF LOAD BALANCING USING ADAPTIVE TRAFFIC ENGINEERING MATE IN GENERALIZED MULTIPROTOCOL LABEL SWITCHING (GMPLS)

 

Danilo A. López*, Nancy Y. García y Pedro J. Figueroa

Universidad Distrital "Francisco José de Caldas", Carrera 7 No. 40 - 53 Bogotá-Colombia. (e-mail: dalopezs@udistrital.edu.co*, nygelvezg@udistrital.edu.co, pedro.jf4@hotmail.com)

* Autor a quien debe ser dirigida la correspondencia.


Resumen

El artículo propone la utilización del algoritmo de balanceo de carga con ingeniería de tráfico adaptativo propio de MPLS (MATE) para que sea usado como distribuidor de carga a través de múltiples enlaces sobre redes de conmutación de efiquetas multiprotocolo generalizado (GMPLS). Esto con el fin de hacer un uso más eficiente de las rutas exintentes entre el origen y el destino de los datos. La metodología usada incluyó la implementación del algoritmo en C++ para poder evaluar su desempeño en el simulador de eventos discretos NS-2 y a partir de los resultados generar una propuesta de optimización que permitiera elevar su rendimiento. Se puede destacar que MATE presenta problemas de estabilidad que fueron resueltas mediante el modelamiento de una función de convergencia adaptativa que es válida sobre redes GMPLS.

Palabras clave: mate, gmpls, ns-2, balanceo de carga, optimización


Abstract

The article proposes the use of load balancing algorithm with (MATE) adaptive traffic engineering to be used as load dinfributor through multiple links on Generalized Multiprotocol Label Switching networks (GMPLS). This with fhe purpose of making more efficient distribution of the existing routes between the origin and destination of the data. The methodology included the algorithm, implemented in C++ to assess their performance in the discrete event simulator NS-2 and from the results generating an optimization proposal that would raise their performance. In can be noted that MATE presents stability problems that were solved by the modeling of adaptive convergence function valid for GMPLS networks.

Keywords: mate, gmpls, ns-2, load balancing, optimization


 

INTRODUCCIÓN

Es claro que la tendencia del mundo globalizado es a que todo tipo de información sea enviada a través de la super-autopista de las comunicaciones llamada Internet; esto ha comenzado a generar enormes cuellos de botella en los núcleos de la red debido a la descomunal cantidad de datos o flujos de información que deben procesar y reenviar los encaminadores y conmutadores (Ramenh y Prifa, 2013); ello es parte gracias a la deficiente forma que tienen las tecnologías de networking al utilizar los recursos existentes. Todo esto ha generado que desde la industria y la misma academia se estén realizando investigaciones que permitan resolver muchas de las problemáticas que implican el envío y recepción del tráfico de manera óptima (Wenda ef al., 2013). En este sentido uno de los mayores avances a los que se ha llegado en los últimos años con el fin de resolver el problema del transporte óptimo de información se relaciona con el diseño y desarrollo de estándares que eleven su rendimiento disminuyendo los recursos computacionales necesarios para su funcionamiento entre los que se encuentran la conmutación de etiquetas multiprotocolo (MPLS) (López et al., 2012) y (GMPLS), este último con la ventaja de transportar tanto datos a nivel eléctrico como óptico.

No obstante de lo prometedora que pueda ser este estándar, existen varias líneas de investigación que aún se deben investigar entre las que se encuentra la aplicación de balanceo de carga de manera eficiente (Anffi et al., 2012), que tiene como finalidad la utilización de forma equilibrada de múltiples canales de transporte al existir diferentes rutas desde un nodo origen de datos hasta uno destino y así poder hacer un uso más eficiente de los recursos sin saturarlos ni subutilizarlos evitando cuellos de botella (Liu et al., 2013). En este sentido el artículo propone la utilización del algoritmo MATE propio de redes de conmutación de etiquetas para que sea usado en estructuras GMPLS, y para ello estima su rendimiento y genera una propuesta de optimización para que su uso sea adecuado en este tipo de tecnologías.

El balanceo de carga usando el algoritmo adaptativo de ingeniería de tráfico (MATE) tiene por objetivo realizar un reparto de carga eficiente a través de los enlaces disponibles enfre la fuenfe y el destino de los datos, utilizando para ello las variables de red que rigen la networking entre los que se encuentran el nivel de tráfico, retardo y el rendimiento (Vilalta et al., 2012). Dentro de las características fundamentales que sustentan este repartidor de carga, están las relacionadas con el envío de datos distribuido, donde su control es llevado a cabo por los nodos ingreso y egreso en la red sin la necesidad de tener un conocimiento de la demanda de tráfico apriori, ya que la toma de decisiones está basada en las medidas del nivel de congentión en los medios de transmisión.

EL ALGORITMO MATE

En la Fig.1 se muestra el funcionamiento del algoritmo MATE (modelado y adaptado por los Autores para su funcionamiento en GMPLS). El proceso de funcionamiento parte de las condiciones iniciales Xi, que son los niveles de tráfico actuales que se están distribuyendo por cada camino de conmutación de etiquetas (FA-LSP) y el volumen del tráfico total entrante al encaminador de borde en la estructura de red LER (López et al, 2011), que es donde a su vez dichos valores son llevados a niveles óptimos para una adecuada distribución del tráfico; seguidamente el algoritmo iterativo, que utiliza el método del gradiente toma las condiciones iniciales Xi y les resta el gradiente que en este caso en la derivada de la función costo respecto de la variable que indica el tráfico por cada FA-LPS; esta variable en multiplicada por una constante llamada factor de convergencia, fundamental para brindar estabilidad al flujo de datos a repartir y quien es además la que garantiza una convergencia adecuada que debe poseer un balanceador, donde la elección de C(t) en clave ya que en la que determina los parámetros de la red que deben ser medidos y ecualizados por el algoritmo (para la investigación realizada se escogió el retardo ya que en una métrica asociada al medio de transmisión, que fácilmente puede ser conocida).

Fig. 1: Diagrama de flujo del algoritmo de balanceo MATE (Elwalid et al., 2001) para GMPLS.

Como se debe cumplir que la suma de las tasas de tráfico que se van a repartir por las diferentes rutas debe ser igual al nivel de tráfico entrante, es necesario aplicar una función de restricción que garantizará que el tráfico rs que entra al LER va a ser igual a la sumatoria de los flujos de salida por cada camino de conmutación identificado en la ecuación como zi.

En el siguiente bloque dentro del diagrama de flujo se actualizan laz variables Xi que finalmente serán los niveles de tráfico que se repartirán, donde el valor actual calculado es igual al valor inicial de la próxima iteración. Finalmente se compara la diferencia entre la iteración actual y la anterior mediante una constante , que es la que al final indica si se tiene calculada la tasa de datos óptima a enviar por ese camino o FA-LSP.

METODOLOGIA Y ESCENARIO DE SIMULACION

La metodología utilizada para el análisis y evaluación del funcionamiento de MATE en ambientes GMPLS parte de una topología de red que es sobre el que se implementa y simula el algoritmo usando los lenguajes de programación C++ y TCL propios del simulador de eventos discretos Network Simulator (NS-2), para seguidamente estudiar su funcionamiento desde el punto de vista de las métricas de rendimiento, nivel de balanceo y estabilidad a partir de la transferencia de datos. Estos resultados permitieron establecer las problemáticas existentes, lo que permitió proponer mejoras y valorarlas a su vez con el fin optimizar su rendimiento.

La topología GMPLS de red que se usó para el desarrollo de la investigación (ver Fig.2) está formada por 10 nodos, donde los conmutadores ópticos son los que aparecen identificados como OXC (cabe destacar que fue necesario implementarlos en código al igual que la nube GMPLS porque el simulador no los soportaba), los LER corresponden a encaminadores electro-ópticos y los servidores son los que generan y reciben la carga. El flujo de datos que circula por la red es de tipo eléctrico y óptico, donde la tasa de transferencia desde el emisor al receptor es de 11 Mbps y los anchos de banda para cada ruta son las mostradas en la Fig.2. Con el fin de evaluar el algoritmo de balanceo MATE se tomó como punto de partida la posibilidad de distribuir la carga a través de tres caminos distintos de conmutación de etiquetas bidireccionales conocidos como FA-LSPs (que son los enlaces virtuales que se deben establecer para el transporte de los datos por cada canal físico) desde el LER-1. Estos fueron identificados así:

Camino 1 (LSP1): LER-1 _ OXC-1 _ OXC-2 _ LER-2

Camino 2 (LSP2): LER-1 _ OXC-3 _ OXC-4 _ LER-2

Camino 3 (LSP3): LER-1 _ OXC-5 _ OXC-6 _ LER-2

El retardo de cada medio de transporte es variable y depende de los valores que pueda tomar la variable (que esta entre 0 y 10 mseg) y cambia de acuerdo al parámetro que se esté evaluando.

Fig. 2: Estructura de la red GMPLS

ANALISIS Y RESULTADOS

La estimación del funcionamiento de MATE incluyo un estudio de su funcionamiento desde el punto de vista del rendimiento, nivel de balanceo y estabilidad que son parámetros que dan una idea de que tan robusto es un distribuidor de flujo en las redes teleinformáticas (Antti et al., 2012).

Rendimiento

Una de las métricas que permiten estudiar el desempeño de un algoritmo de balanceo de carga se relaciona con el throughput ya que ésta medida indica en un instante de tiempo el volumen de tráfico que está siendo transmitido por un LSP. Los resultados encontrados cuando el flujo de datos circula por los tres FA-LSP (que en adelante se designaran como LSP) establecidos en la simulación es el mostrado en la Fig.3, donde se aprecia que la cantidad de paquetes por cada ruta son LSP1= 4.5308 Mbps, LSP2= 3.2038 Mbps, LSP3= 2.2654 Mbps.

Fig.3: Medida del tráfico para Ios 3 LSP de la topología de red

Se observa que el nivel de tráfico es uniforme a partir de los 30 seg para una tasa de tráfico total invariable, en la que las medidas para los retardos dados en las constantes 'a' fueron a1=0.5, a2=1, a3=2 para una tasa total entrante de 10 Mbps. Los comportamientos crecientes y decrecientes del nivel de flujo obedecen a las condiciones anteriores a ser ejecutado el pseudocódigo en la simulación (cuando el valor óptimo es mayor que el valor inicial, el comportamiento es creciente y viceversa).

Cuando se genera un cambio brusco en el nivel de tráfico de entrada después de una actualización en las variables asociadas a los retardos (donde a1=0.7, a2=1.2, a3=0.5) de los medios de transmisión exactamente en un t=31 seg (Fig.4) es claro que el algoritmo se adapta a estos nuevas circunstancias lo que repercute en una reasignación del tráfico que viaja por cada camino. Específicamente se asigna en este caso una mayor cantidad de datos al LSP3 ya que la métrica disminuyo en su valor lo que se traduce en una caída en los flujos asociados a Ios LSP1 y LSP2.

Fig.4: Cambio del nivel de tráfico.

Nivel de balanceo

Este parámetro permite conocer la proporción de datos respecto del total enviado que se transmite por un camino, y se calcula como la cantidad de información que se va repartir por los caminos bidireccionales LSPs de la red GMPLS dividido por el volumen total de entrada al LER en el núcleo de la networking. Como es una medida en proporción del tráfico total se da en términos de porcentaje, como sigue:

En la Fig.5 se presenta la respuesta encontrada al balancear la carga de tráfico entre los 3 LSPs, para las constantes de las medidas del retardo a1=0.5, a2=1 y a3=2. Los porcentajes de tráfico por cada LSP calculados a partir de la ecuación 1 fueron NB1=45.3%, NB2= 32.04% y el NB3= 22.65%.

Fig.5: Nivel de balanceo para MATE.

A partir del análisis se puede concluir que le toma alrededor de 30 seg estabilizar la respuesta, tiempo en el cual los flujos que disminuyen automáticamente se están asignando a los demás LSP compensando así de forma eficiente la carga sin pérdida de información, factor que no puede ser cumplido por otros tipos de balanceadores (Guan et al., 2013). Lo anterior sugiere que MATE realiza un reparto de tráfico muy eficiente a través de las rutas disponibles donde en cualquier instante de tiempo, siempre la suma de los porcentajes de equilibrio serán iguales al 100% del total que está ingresando al LER-1.

Estabilidad

Esta variable dentro un mecanismo de balanceo de carga en tiempo real es susceptible a cambios impredecibles en la red; dichas variaciones a veces bruscos hacen que la respuesta de un balanceador responda de forma inestable en el tiempo, en algunos casos en proporción a las transiciones ocurridas en la entrada produciendo un rendimiento bajo en la capacidad de reparto. No obstante algunos balanceadores como el presentado en el artículo poseen parámetros en sus modelos funcionales como constantes elegibles (llamados factores de convergencia) para prevenir estas oscilaciones en la respuesta que para el caso de MATE en redes de Conmutación de Etiquetas (MPLS) oscila entre los valores 0,005 y 0,15 (El-Alfy et al., 2013). Partiendo de la anterior premisa lo que se pretende en este ítem es probar si dichos niveles son válidos en GMPLS y de no serlos estimarlos para poder determinar qué tan establece es MATE en este tipo de redes. Una vez ejecutada la simulación aplicando un cambio brusco en el flujo entrante al LER-1 de 30 Mbps a 10 Mbps y evaluando dicho parámetro, los resultados en la Fig.6 presentan unas oscilaciones amortiguadas de los porcentajes de tráfico calculados a pesar de que el factor de convergencia se encuentra dentro de los rangos (en este caso 0.009) cuando a1=0.5, a2=1 y a3=2.

Fig.6: Inestabilidad en el nivel de balanceo

Cuando el factor de convergencia es 0,15 y con los valores de retardo iguales que en el caso anterior se pudo constatar que se presentan oscilaciones de más amplitud y por tanto de mayor inestabilidad, en algunos casos llevando tales niveles de flujo por debajo de 0 por las amplitudes tan amplias que se presentan. Al existir este tipo de oscilaciones, el rendimiento del algoritmo baja porque las tasas de tráfico a repartir no son estables y no permite una distribución adecuada de los paquetes. Cuando se incluye un valor que esta por fuera del rango y es superior (por ejemplo 0,02) se pudo observar que su comportamiento es totalmente divergente; esto como consecuencia de que MATE utiliza el método del gradiente el cual debe ir tendiendo a un punto óptimo tras una serie de iteraciones en el algoritmo, esta tendencia a ese nivel se logra dando un "paso" en cada iteración, donde la magnitud de este "paso" depende del factor de convergencia adoptado; cuando es demasiado grande no encuentra ese nivel adecuado y tiende al infinito; en esas condiciones como la variable está acotada a un 100% de la capacidad del enlace, a todos los caminos les queda asignado el 100% del flujo de información, que es algo ilógico y sin sentido, ocasionando la réplica de la misma información en recepción si el ancho de banda en cada enlace lo permite ocasionando la utilización de recursos de manera ineficiente.

Cuando su coste es menor (0,002) el algoritmo tarda más tiempo en converger y la respuesta se torna muy lenta en estabilizarse en un valor de porcentaje constante. En este caso el "paso" del gradiente es demasiado pequeño por lo que la aplicación software requiere de más iteraciones para llegar al valor óptimo; ello que implica más tiempo en llegar a ese coste deseable, generando demoras en la asignación del balanceo y retrasos en la entrega, condición inaceptable para aplicaciones como video o voz que requieren ser entregados casi en tiempo real a los usuarios finales.

OPTIMIZACION DE MATE EN REDES GMPLS

Después de haber analizado y evaluado MATE desde el punto de vista de rendimiento, nivel de balanceo y estabilidad, se ha podido establecer que el algoritmo tiene un problema de estabilidad cuando se usa como distribuidor de flujo en entornos GMPLS ya que la respuesta del mecanismo oscila o diverge dependiendo del valor del factor de convergencia que se adopte.

En este sentido se propone una posible solución a la problemática existente que se denominó "factor de convergencia adaptativo" y que se explica a continuación.

Partiendo del hecho de que la literatura que aborda MATE (Elwalid et al., 2001) no especifica cómo debe ser adoptado el factor de convergencia de la función iterativa γ la cual esta referenciada en la ecuación 2; los artículos existentes aducen que dicha constante se debe escoger según las variables que el algoritmo este usando (tráfico por cada camino, número de LSPs, entre otras).

Sin embargo a pesar de que esta hipótesis es válida en topologías que usen MPLS, este valor en GMPLS no debe ser una constante fija sino una variable que dependa del tráfico entrante y las medidas del retardo, porque al presentar variaciones considerables en tiempo real en las métricas de entrada, la salida del mecanismo de balanceo puede presentar oscilaciones, como las encontradas en la Fig.6.

En ese sentido se hace necesario modelar una función para el factor de convergencia que dependa de la medida de los retardos de los LSP y el tráfico total entrante al LER-1que en nuestro caso tuvo la forma de la ecuación 3.

Donde los ai, hace referencia al valor que relaciona la medida del retardo para valores de γ.

Para generarla, se llevaron a cabo una serie de medidas de diferentes tráficos y valores de a, para los cuales se eliminaran las oscilaciones en la respuesta del algoritmo a cambios en el estado de la red a través de una regresión exponencial. En la Tabla.1 se muestran a manera de ejemplo algunos de los datos recolectados para realizar la regresión y en la Fig.7 se genera la regresión respecto al valor del tráfico entrante mientras en la Fig.8 se ilustra un demostrativo de la gráfica de la regresión respecto al valor de los retardos.

Tabla 1: Valores para las regresiones

Fig. 7: Regresión para la variable tráfico total.

Fig.8: Regresión para suma de las medidas de los retardos.

La fórmula matemática a la que finalmente se llegó es la mostrada en la ecuación 4, donde es claro que es válida solamente solo para 3 LSP; para más caminos es necesario realizar una nueva recolección de datos y obtener una nueva regresión.

El diagrama de flujo con la función que calcula el factor de convergencia adaptado a GMPLS aparece en la Fig.9, donde se puede ver en sombreado el bloque de la función adaptativa que se desarrolló. Esta función tiene que ser ejecutada en cada iteración por eso va dentro del flujo de cada iteración ya que constantemente debe ser actualizada para que pueda adaptarse a cualquier cambio en la red.

Fig. 9: Diagrama de flujo MATE modificado para GMPLS.

Aplicando la mejora del factor de convergencia adaptativo, la respuesta al cambio en el nivel de tráfico mejora la respuesta del algoritmo MATE como se muestra en la Fig.10 eliminando notablemente las oscilaciones que se presentaron al ocurrir un cambio abrupto en el nivel de tráfico, produciendo una respuesta estable y suave que es lo deseable.

Fig. 10: Estabilidad al cambio del nivel de tráfico

CONCLUSIONES

El factor de convergencia de los algoritmos está muy relacionado con la estabilidad en la respuesta de los mecanismos de balanceo de carga, pues el valor que tenga este factor hace que la respuesta oscile, diverja o se torne muy lenta. Además es un parámetro que se debe establecer previamente según el comportamiento de la red para un mejor rendimiento en tiempo real y a cambios abruptos en las medidas de la red (nivel de tráfico, retardo, pérdida de paquetes) donde este parámetro puede ajustarse a estos cambios, haciendo este factor adaptativo.

A partir de la problemática que presentó MATE desde el punto de vista de la estabilidad del balanceador se logró modelar una función de convergencia adaptativa que eliminó ostensiblemente las oscilaciones producidas ocasionadas por las alteraciones o cambios bruscos en las medidas de tráfico y retardo en la red. Quedando en evidencia que la estabilidad del algoritmo depende de la no fluctuación de las medidas en la networking. Como una solución a los problemas de congestión en las redes GMPLS el balanceador de carga propuesto es una buena elección, gracias a la facilidad de la implementación en este tipo de redes y a su bajo consumo computacional (Zhanqi et al., 2013), ya que mediante una eficiente asignación de los recursos los retardos en la trasmisión y la pérdida de paquetes disminuyen, incrementando el throughput total de la red.

Finalmente, se logró optimizar el rendimiento de MATE en GMPLS ya que se logró estabilizar el nivel de balanceo a partir de que el modelamiento del factor de convergencia fuera dependiente del tráfico entrante y del retardo en los enlaces; dando como resultado una respuesta más suave y constante dentro del sistema.

REFERENCIAS

Antti, M., Siikavirta, S., Jukka, M, Comparison of load-balancing approaches for multipath connectivity, Computer Networks, 56(8), 2179-2195(2012)        [ Links ]

El-Alfy, E., Mujahid, S., Selim, S, A Pareto-based hybrid multiobjective evolutionary approach for constrained multipath traffic engineering optimization in MPLS/GMPLS networks, Journal of Network and Computer Applications, 36 (4), 1196-1207 (2013)        [ Links ]

Elwalid, A., Jin, C., Low, S., Widjaja, I, MATE: MPLS Adaptive Traffic Engineering, Proc. of IEEE INFOCOM, April (2001)        [ Links ]

Guan, Y., Zhou, Z., Liu, L., Wu, W, Replica-aided load balancing in overlay networks, Journal of Network and Computer Applications, 36(1), 388-401(2013).         [ Links ]

Liu, L., Tsuritani, T., Casellas, R., Morita, I., Martinez, R., Muñoz, R, Design of a GMPLS control plane with PCE-based impairment-aware full restoration capability for translucent WSON: Enabling techniques, service demonstration, and performance evaluation, Optical Switching and Networking, Advances in Optical Networks Control and Management, 10(1), 16-31(2013)        [ Links ]

López, D., Hernández, C., Pedraza, F, CR-LDP as the signaling protocol at networking multiprotocol label switching, Revista Ingeniería, Universidad de Antioquia, 58, Abril-Junio (2011).         [ Links ]

López, D., Hernández, C., Salcedo, O, Redes Multidifusión utilizando Conmutación de Etiquetas multiprotocolo y estándares de Señalización. Información Tecnológica, 23(6) 43-50 (2012).         [ Links ]

Ramesh, P.G.V. y N. Prita, N, A multi-layer approach for load balancing in optical burst switching networks, Optik - International Journal for Light and Electron Optics 124(7), 2602-2607(2013)        [ Links ]

Vilalta, R., Munoz, R., Casellas, R., Martinez, R., Vilchez, R, GMPLS-enabled MPLS-TP/PWE3 node with integrated 10 Gbps tunable DWDM transponders: design and experimental evaluation, Computer Networks, 56(13), 3123-3135 (2012)        [ Links ]

Wenda, N., Changcheng, H., Jing, W., Michel, S, Availability of survivable Valiant load balancing (VLB) networks over optical networks, Optical Switching and Networking, 10(3) 274-289(2013)        [ Links ]

Zhanqi, X., Jiangjiang, H., Zhiqiang Z., Zhe, D., Tao, M., Junping, W, A novel grooming algorithm with the adaptive weight and load balancing for dynamic holding-time-aware traffic in optical networks, Optical Fiber Technology, 19(5), 392-399, October (2013)        [ Links ]

Recibido Ago. 19, 2013; Aceptado Oct. 7, 2013; Versión final recibida Oct. 29, 2013