Aplicación de la teoría del mínimo costo en redes MPLS

Anuncio
Aplicación de la teoría del mínimo costo en redes MPLS
para la optimización en la asignación del flujo en un LSP
Mónica Huerta
Xavier Hesselbach
Dept de Ingeniería Telemática. Universidad Politécnica de
Cataluña Jordi Girona 1 y 3. Campus Nord, Modulo C3,
UPC. 08034 Barcelona
. E-mail: [email protected]
Dept de Ingeniería Telemática. Universidad
Politécnica de Cataluña Jordi Girona 1 y 3. Campus
Nord, Modulo C3, UPC. 08034 Barcelona
E-mail: [email protected]
Resumén: Multiprotocol Label Switching (MPLS) es una
tecnología flexible que permite nuevos servicios en redes
IP y que hace más efectivo el enrutamiento. MPLS lleva
el trafico en una conexión virtual llamada Label
Switched Path (LSP). Este articulo propone un método
analítico para la minimización del ancho de Banda de un
LSP usando la teoría del mínimo costo. Los resultados
muestran que hay una optimización sustancial del ancho
de banda, comparando los resultados obtenidos con los
métodos: CPLEX y LIPSOL, donde LIPSOL hace una
mejor distribución del flujo y por consiguiente una mejor
optimización del ancho de Banda.
Keywords: Ingeniería de tráfico, MPLS, LSP, mínimo
costo
I. INTRODUCCIÓN
Hoy en día la arquitectura del Multiprotocol Label
Switching (MPLS) está obteniendo un notable éxito, por
su capacidad de coexistir con cualquier protocolo de la
red y, sobre todo por su compatibilidad con cualquier
tecnología de la red subyacente [1], [2]. La red IP se ha
transformado en una extensa red en la que las opciones
de negocio y los mercados de consumo inducen al
desarrollo de nuevas aplicaciones. Existen aplicaciones
de voz y multimedia que requieren una gran cantidad de
ancho de banda y que éste se mantenga garantizado
durante todo el servicio. Estos requerimientos de Calidad
de Servicio hacen que los recursos de la red estén
sobreutilizados en términos de velocidad y ancho de
banda.
Avanzamos hacia una convergencia entre voz y datos en
la red IP y su infraestructura y protocolos han sido
optimizados sólo para datos, así que los protocolos de
encaminamiento IGPs (Interior Gateway Protocol) como
RIP (Routing Information Protocol), OSPF (Open
Shortest Path First) y EGPs (Exterior Gateway Protocol)
como BGP4 (Border Gateway Protocol v4), no son la
solución óptima. Muchos de estos protocolos de
enrutamiento están basados en algoritmos para obtener el
camino más corto (como RIP y BGP4, basados en el
vector distancia) sin tener en cuenta métricas adicionales
como retardo, jitter y congestión del tráfico. MPLS ha
sido desarrollado para eliminar varios de estos
problemas. Tiene la capacidad de soportar cualquier tipo
de tráfico en una red IP sin tener que supeditar el diseño
de la red a las limitaciones de los diferentes protocolos de
enrutamiento, capas de transporte y esquemas de
direcciones. La red MPLS esta orientada a conexión, en
la cual uno o más LSP (Label Switching Path) son
establecidos entre cada par de nodos LER (Label Edge
Router) [3].
El ancho de banda no utilizada representa durante una
transmisión, una perdida de costos para el operador y una
perdida de QoS para el cliente, la cual lleva a pensar en
una minimización del ancho de banda del canal [4]. La
mayoría de los problemas de minimización de recursos
en una red son NP Completos, y es uno de los principales
problemas a la hora de optimización en el diseño de
redes. Esos problemas pueden ser resueltos mediante las
teorías del Multicommodity Flow y del mínimo costo [5],
[6]. Muchas teorías de optimización han sido analizadas
para ser aplicadas en redes. La Teoría del Mínimo Costo
presenta nuevos panoramas para resolver problemas de
optimización, específicamente en redes de banda ancha
como lo es MPLS. Como lo demuestran Recientes
investigaciones [4], [7]. El costo de un enlace puede ser
definido en función del parámetro que se quiera
optimizar, como lo puede ser dinero, una función del
buffer, la utilización del ancho de banda y la asignación
de flujos. El costo de la ruta viene a representar el costo
total de todos los enlaces en la ruta. El problema de
optimización esta en encontrar una ruta con un bajo costo
en medio de todas las posibles [4].
En este artículo se propone dos algoritmos de asignación
de flujos los cuales evalúan la distribución de los flujos
en los enlaces de una red MPLS y permiten minimizar el
ancho de banda en un LSP (Label Switching Path)
utilizando técnicas de optimización basados en la teoría
mínimo costo los cuales son evaluados con las
herramientas de optimización GAMS y Matlab [8], [9].
Este articulo esta organizado de la siguiente manera: en la
sección II se describe la tecnología de redes MPLS, la
sección III se describe la teoría del Mínimo Costo. En la
sección IV se presenta la propuesta del modelo y
finalmente presentamos los resultados y las conclusiones
en la sección V y VI respectivamente.
II. MPLS
MPLS es un mecanismo de enrutamiento flexible que
esta basado en la asignación de flujos en rutas extremo extremo dentro de un Dominio Autónomo. La
flexibilidad ofrece la libertad de escoger el criterio por el
que los flujos de tráfico serán reconocidos y tratados
como flujos distintivos, tal libertad permite que el tráfico
entre un par destino-fuente sea dividido en rutas paralelas
para evitar congestionar los enlaces en la red, siendo esta
una de las aplicaciones primarias previstas para MPLS
[2]. Las principales funciones de MPLS son:
• Especificar mecanismos para gestionar flujos de
tráfico de diferentes tipos (Ej.: flujos entre diferente
hardware, diferentes máquinas,...).
• Obtener independencia de los protocolos de la capa
de enlace y la capa de red.
• Disponer de medios para traducir las direcciones IP
en etiquetas simples de longitud fija utilizadas en
diferentes tecnologías de envío y conmutación de
paquetes.
• Ofrecer interfaces para diferentes protocolos de
enrutamiento y señalización.
• Soportar los protocolos de la capa de enlace de IP,
ATM y Frame Relay.
Entre las principales características del MPLS se destaca
la división de los planos de control y de envío. El
mecanismo de control se encarga básicamente de dos
funciones: creación de rutas, que implica la construcción
de las tablas de encaminamiento, y la señalización de las
rutas. El módulo de envio es el encargado de la
conmutación de paquetes a través del intercambio de
etiquetas. Las etiquetas son insertadas al comienzo del
paquete en la entrada de la red MPLS. En cada salto el
paquete es encaminado según el valor de la etiqueta y
sale por la interfaz correspondiente con otra etiqueta. Se
obtiene una gran rapidez en la conmutación gracias a que
las etiquetas son insertadas al principio del paquete y son
de longitud fija, lo que hace que pueda hacerse una
conmutación vía hardware.
Mediante este sistema de intercambio de etiquetas se
crean los LSP (Label Switching Path) Las etiquetas se
distribuyen utilizando protocolos de señalización, los tres
principales recomendados por la IETF (Internet
Engineering Task Force) son: LDP (Label Distribution
Protocol), RSVP (ReSource reserVation Protocol) y el
CR-LDP (Constraint-Based Routing label Distribution
Protocol) [10]. Una red MPLS esta compuesta por
Routers MPLS: LSR (Label Switched Router) que
representan el núcleo de la red (b ackbone)y los LER
(Label Edge Router), que son los encargados de realizar
la interfaz con otras redes, como se observa en la Fig. 1.
Otra característica importante en MPLS es la posibilidad
de hacer enrutamiento explícito, el cual consiste en una
ruta que ha sido configurada en el LER de acuerdo a los
criterios de QoS y a la información de enrutamiento de la
red [2]. MPLS clasifica en el LER de entrada el tráfico de
modo que le asigna un FEC (Forward Equivalence
Class).
III. TEORÍA DEL COSTO MÍNIMO
Por definición una red es una díagrafica G = (V, E), en la
cual cada borde e = (i, j) tiene una dirección desde su
punto inicial i hasta su punto final j, donde V representa
un conjunto de puntos denominados vértices, y E un
conjunto de rectas de conexión denominadas bordes, en
este caso los vértices representan los nodos de la red V =
{1, 2…m} y E representa los enlaces E = {(i, j); i, j ∈ V},
el enlace (i, j) es incidente con los nodos i y j. Cada
enlace tiene una capacidad asignada Uij >0 (máximo flujo
posible a lo largo del enlace (i, j)). En un vértice s
denominado fuente, se produce un flujo que circula a lo
lago del enlace hacia otro vértice t llamado destino.
El problema de flujo de costo mínimo se define como el
envio de la oferta disponible a través de la red para
satisfacer la demanda de manera tal que el costo de envío
sea mínimo. A cada uno de los grafos se le asocia una
cantidad bi , que representa la cantidad disponible del
ancho de banda (si bi >0) o la demanda del ancho de
banda (si bi <0). A los nodos con bi >0 se les denomina
nodos fuente y a los nodos bi <0 nodos destinos. Si bi = 0
entonces al nodo i se le denomina nodo de trasbordo [5]
Asociado a cada enlace, se especifica un costo unitario de
envío. Este costo puede ser especificado en unidades
monetarias, como una función del buffer, tiempo de
retardo ó como ancho de banda utilizado. En este artículo
aplicaremos la teoría del costo mínimo, para reducir el
ancho de banda sobrante. El modelo utilizado para el
problema del costo mínimo es el siguiente:
Min
∑
( i , j )∈E
cij xij
(1)
Sujeto a:
∑
{ j: (i , j)∈ E}
xij −
∑
{ j:( j, i)∈ E}
x j i = bi
(2)
Para i =1….m,
LERs
LSRs
LSP
LSRs
R1
LERs
Nodos
De Bordes
R2
(3)
Este modelo facilita la optimización del problema del
mínimo costo mediante la ecuación 1, la cual representa
la función objetivo bajo las restricciones que imponen las
ecuaciones 2 y 3.
R´2
RM
Nodos
Interiores
xij ≥ 0 Para ( i, j ) ∈ E
R´1
R´M
LSP
IV. MODELO PROPUESTO
Red de
acceso
Nucleo de
La red
Figura 1. Topología típica de una red MPLS
Red dde
e
acceso
Tenemos una red que consiste en N nodos (routers), los
nodos (m, n) están conectados en la dirección m? n con
un ancho de banda equivalente b(m, n) en (bit / seg) . El
número de enlaces es el número de pares (m, n) con b (m, n)
>0 al cual denominaremos L. se asume que la red tiene la
propiedad de que todos los nodos n pueden ser
alcanzados por todos los nodos m lo que implica, según
T. Ott [11]:
N ≤ L ≤ N ( N − 1)
(13)
Para la demanda de tráfico se define la matriz [d (i, j)],
donde d (i, j) es la cantidad de tráfico que entra en la red
por el nodo i y sale por el nodo j. Se asume que b (m, n) y
d (i, j) son constantes en el tiempo y que todos los flujos
son flujos fluidos, es decir, que no tienen pérdida. La
carga en el enlace (m, n) es X(m,n) y X(i,j)(m,n) ≥ 0
representa el flujo del tráfico del par de nodos (i, j) en el
enlace (m, n), Fig. 2. El flujo, por supuesto, esta
determinado por las rutas seleccionadas por el tráfico y
por la asignación del tráfico en dicha ruta, así el flujo
total de dicha ruta será:
X ( m, n ) = ∑ x(i, )j ( m, n )
(14)
i, j
Esta ecuación interpreta que el flujo total es la sumatoria
de cada flujo que pasa por el enlace, es decir, que para
cada enlace puede pasar información de varios pares de
(i, j), y en cada enlace tenemos la limitación:
0 ≤ X ( m, n ) ≤ b(m, n)
(15)
x ij
m
i
j
n
Xmn
Figura 2. flujo del tráfico del par de nodos (i, j) en el enlace (m, n)
Una vez planteada la red se necesita optimizar el ancho
de banda en los enlaces correspondientes entre cada nodo
de entrada y el nodo de salida. En vista que tenemos
varios nodos de entrada y varios nodos de salida, se tiene
que aplicar la teoría del mínimo costo para optimizar el
ancho de banda.
A. Evaluación del modelo
El modelo propuesto se basa en la red mostrada en la
Fig. 3, donde se desea optimizar la asignación del flujo
de un LSP. Para ello se aplican las ecuaciones del
mínimo costo, como explicamos en la sección anterior, y
se evaluan los resultados mediante CPLEX y LIPSOL.
Para analizar la efectividad de la teoría del mínimo costo
en la red MPLS se emplea la red de la Fig. 3, la cual
consiste en 9 nodos, con 18 enlaces; la capacidad de cada
enlace estará limitada entre 0 y 5 ? i, j. Los flujos de
entrada f1, f2, f3, serán respectivamente: 5, 2, 3 y los
flujos de salida f4, f5, f6 serán: -4, -3,-3; se asume que el
costo de cada enlace = 1; ? i, j. con bi = fi
f1
X14
1
X16
f2
X 47
4
X15 X24
X25
2
X48
X57
X58
5
7
8
f4
f5
X26
f3
X34
3
X35
X36
X67
X49
X68 X59
6
9
f6
X69
Figura 3. Red modelo MPLS a evaluar
Para evaluar la asignación del flujo a través de CPLEX se
empleo la versión libre de GAMS, en el cual se evaluó el
siguiente algoritmo:
$title PROBLEMA DE FLUJO EN REDES MPLS
SET
I conjunto de nodos en la red /I1*I9/
CONEX(I,I) conjunto de conexiones de nodos
/I1.I4,I1.I5,I1.I6,I2.I4,I2.I5,
I2.I6,I3.I4,I3.I5,I3.I6,I4.I7,I4.I8,I4.I9,I5.I7,I5.I8,I5.I9,I6.I7,I6.I8,I6.I9/;
** El conjunto de nodos I se duplica para hacer referencias a distintos
elementos del mismo dentro de la misma restricción.
ALIAS(I, J)
PARAMETERS
F(I) flujo de entrada y salida en el nodo I /I1 5, I2 2, I3 3, I4 0, I5 0,
I6 0, I7 –4, I8 –3,I9 -3/
FMAX(I,J) capacidad maxima de la conexion entre I y J;
FMAX(I,J)=5;
** Se declaran las variables de optimizacion.
VARIABLES
z valor de la funcion objetivo
x(I,J) flujo que sale desde el nodo I hacia J;
** El limite superior de las variables de optmizacion es
** la capacidad maxima de las conexiones.
x.lo(I,J)=0;
x.up(I,J)=FMAX(I,J);
** Se declaran las restricciones.
EQUATIONS
COST funcion objetivo
BALANCE(I) condicion de conservacion del flujo;
COST .. z =E= SUM(CONEX(I,J),x(I,J)) ;
BALANCE(I) .. SUM(J$CONEX(I,J),x(I,J))SUM(J$CONEX(J,I),x(J,I)) =E= F(I) ;
MODEL flujored /ALL/;
SOLVE flujored USING lp MINIMIZING z;
Una vez evaluada la red con este algoritmo con CPLEX,
se procedió a evaluar la red con LIPSOL, esto se realizó
con MATLAB versión 6.5
function G= matrizllena (n,e,matriz);
% n = numero de nodos
% e = numero de enlaces
% matriz = enlaces entre nodos
G=zeros(n,e);
for i=1:e;
G(matriz(i,1),i)=1;
G(matriz(i,2),i)=-1;
end
Aeq=matrizllena(9,18,[1 4; 1 5; 1 6; 2 4; 2 5; 2 6; 3 4; 3 5; 3 6;
4 7; 4 8; 4 9; 5 7; 5 8; 5 9; 6 7; 6 8; 6 9]);
f=ones(18,1);
beq=[5; 2; 3; 0; 0; 0; -4; -3; -3];
lb=zeros(18,1);
ub=5*ones(18,1);
[x,fval,exitflag,output]=linprog(f,[],[],Aeq,beq,lb,ub,[]);
V. RESULTADOS OBTENIDOS
VI. CONCLUSIONES Y TRABAJOS FUTUROS.
La tabla 1 muestra los resultados obtenidos de la
evaluación mediante CPLEX y LIPSOL.
En este articulo se han presentado un modelo analítico
utilizando la teoría del mínimo costo para la optimización
del ancho de banda de un Label Switching Path (LSP) en
redes MPLS. De los resultados obtenidos podemos
deducir que el LIPSOL es un método más robusto que
CPLEX para la distribución del flujo en un LSP. Este
análisis abre una nueva línea de investigación entre las
técnicas convencionales de optimización empleados en
redes de comunicación multipath, específicamente en
redes MPLS. Los resultados expuestos en este trabajo
deben considerarse estimaciones aproximadas, que tienen
el único objetivo de plantear unas cotas previas en las que
basar futuros refinamientos. Para ello, se emplearán
modelos matemáticos que reflejen la realidad de manera
más ajustada, y herramientas de simulación que permitan
considerar un gran número de situaciones hipotéticas
diferentes y obtener, basándose en éstas, valores
estimados más concluyentes. Como trabajo futuro se
plantea utilizar este método analítico de optimización en
control de flujos y enrutamiento y para la asignación del
ancho de banda en redes MPLS
Tabla 1: flujo en cada enlace evaluado con ambos algoritmos
Enlace
CPLEX
LIPSOL
Enlace
CPLEX
LIPSOL
X14
5
1,6667
X47
4
1,3333
X15
0
1,6667
X48
3
1
X16
0
1,6667
X49
3
1
X24
2
0,6667
X57
0
1,3333
X25
0
0,6667
X58
0
1
X26
0
0,6667
X59
0
1
X34
3
1
X67
0
1,3333
X35
0
1
X68
0
1
X36
0
1
X69
0
1
Como se puede observar, de los datos obtenidos por
CPLEX, existen enlaces que están subutilizados porque
el flujo que por allí circula es cero, esto trae como
consecuencia que algunos enlaces se encuentren a su
máxima capacidad. LIPSOL demuestra una mejor
distribución de los flujos de los enlaces.
6
CPLEX
LIPSOL
5
4
3
2
X69
X68
X67
X59
X58
X49
X57
X48
X47
X36
X35
X34
X26
X25
X24
X15
0
X16
1
X14
distribución del flujo
en cada enlace
La distribución de los flujos obtenida en la tabla 1, nos da
una visualización de la repartición de los flujos en los
diferentes enlaces del modelo propuesto evaluado por
CPLEX, indica que el enlace X14 se encuentra
completamente ocupado, mientras que existen 12 enlaces
por el cual no pasa ningún flujo. Para LIPSOL, el análisis
para la distribución de los flujos obtenida en la tabla 1,
nos indica que la repartición del flujo por los diferentes
enlaces, que conforman la red, del modelo propuesto es
más equitativa. Para obtener una mejor visualización de
los resultados, se graficaron la capacidad máxima del
enlace versus el flujo asignado a cada enlace, con ambos
métodos. Podemos deducir que la evaluación realizada
por el algoritmo LIPSOL distribuye de manera uniforme
el flujo del enlace entre todos los enlaces posibles de la
red, en cambio CPLEX a pesar de optimizar algunos
enlaces tiende a sobrecargar algunos enlaces mientras
otros se encuentran con poco uso como se puede ver en la
Fig.4.
Enlaces
Figura 4 Asignación del flujo en los enlaces del modelo propuesto
Referencias
[1] D. Awduche et al. “Requirements for Traffic Engineering
over MPLS”. IETF RFC 2702, September 1999R.
[2] B. Jamoussi et al. “Multiprotocolo Label Switching
Arquitecture”. IETF RFC 3031, January 2001.
[3] E. Rosen, A. Viswanathan, R. Callon. “Multiprotocol
Label Switching Architecture”. Internet Draft <draft-ietfmpls-arch-06.txt>, August 1999.
[4] S. Chen, K Nahrtedt. “An overview of quality of service
Routing for Next Generation High Speed Networks:
problems and solutions”. IEEE Network, pp.64-71
November -December.1998
[5] K. Ahuja, T. L. Magnanti, and J. B. Orlin. “Network
Flows: Theory, Algorithms and Applications”. PrenticeHall, Inc., Englewood Cliffs, NJ 1993. ISBN: 0-13617549-X
[6] P. Chardaire, A. Lisser. “Minimum Cost Multicommodity
flow”. November 1999.
http://www.sys.uea.ac.uk/people/pc/hbook.pdf
[7] A. Löbel “ Solving Large–Scale Real–World MinimumCost Flow Problems By a network Simplex Method”
http://citeseer.nj.nec.com/lobel96solving.html
[8] http://www.gams.com
[9] http://www.mathworks.com/
[10] B.Jamoussi, et al. “Constraint – Based LSP setup Using
LDP”. Internet Draft <draft-ietf-mpls-cr-ldp-05.txt>.
January 2002.
[11] T.Ott, T. Bogovic, T.Carpenter, “Algorithms for Flow
Allocation for Multiprotocol label Switching”. Telecordia,
Technical memorandum, TM-26027,2001.
Descargar