La base del MPLS está en la asignación e intercambio de etiquetas, que permiten el establecimiento de los caminos LSP por la red. Los LSPs son unidireccionales (simplex) por naturaleza; el tráfico bidireccional (dúplex) requiere dos LSPs, uno en cada sentido. Cada LSP se crea a base de concatenar uno o más saltos (hops) en los que se intercambian las etiquetas, de modo que cada paquete se envía de un conmutador de etiquetas (LSR) a otro, a través del dominio MPLS.
El envío se implementa mediante el intercambio de etiquetas en los LSPs. Sin embargo, MPLS no utiliza ninguno de los protocolos de señalización ni de enrutamiento definidos por el ATM Forum; en lugar de ello, se utiliza el protocolo RSVP o bien un nuevo estándar de señalización LDP (Label Distribution Protocol).
Pero, de acuerdo con los requisitos del IETF, el transporte de datos puede ser cualquiera. Por ejemplo, si éste fuera ATM, una red IP habilitada para MPLS es ahora mucho más sencilla de gestionar que la solución clásica IP/ATM. No es necesario administrar dos arquitecturas diferentes, lo que se haría transformando las direcciones y las tablas de enrutamiento IP en las direcciones y el enrutamiento ATM. Este problema lo resuelve el procedimiento de intercambio de etiquetas MPLS.
Un camino LSP es el circuito virtual que siguen por la red todos los paquetes asignados a la misma FEC. Al primer LSR que interviene en un LSP se le denomina de entrada o de cabecera y al último se le denomina de salida o de cola. Los dos están en el exterior del dominio MPLS. El resto, entre ambos, son LSRs interiores del dominio MPLS. Un LSR es como un enrutador que funciona a base de intercambiar etiquetas según una tabla de envío. Esta tabla se construye a partir de la información de enrutamiento que proporciona la componente de control, según se verá más adelante.
El envío se implementa mediante el intercambio de etiquetas en los LSPs. Sin embargo, MPLS no utiliza ninguno de los protocolos de señalización ni de enrutamiento definidos por el ATM Forum; en lugar de ello, se utiliza el protocolo RSVP o bien un nuevo estándar de señalización LDP (Label Distribution Protocol).
Pero, de acuerdo con los requisitos del IETF, el transporte de datos puede ser cualquiera. Por ejemplo, si éste fuera ATM, una red IP habilitada para MPLS es ahora mucho más sencilla de gestionar que la solución clásica IP/ATM. No es necesario administrar dos arquitecturas diferentes, lo que se haría transformando las direcciones y las tablas de enrutamiento IP en las direcciones y el enrutamiento ATM. Este problema lo resuelve el procedimiento de intercambio de etiquetas MPLS.
Un camino LSP es el circuito virtual que siguen por la red todos los paquetes asignados a la misma FEC. Al primer LSR que interviene en un LSP se le denomina de entrada o de cabecera y al último se le denomina de salida o de cola. Los dos están en el exterior del dominio MPLS. El resto, entre ambos, son LSRs interiores del dominio MPLS. Un LSR es como un enrutador que funciona a base de intercambiar etiquetas según una tabla de envío. Esta tabla se construye a partir de la información de enrutamiento que proporciona la componente de control, según se verá más adelante.
Cada entrada de la tabla contiene un par de etiquetas entrada/salida correspondientes a cada interfaz de entrada/salida correspondientemente, que se utilizan para acompañar a cada paquete que llega por ese interfaz y con la misma etiqueta (en los LSR exteriores sólo hay una etiqueta, de salida en el de cabecera y de entrada en el de cola), en la figura anterior se ilustra un ejemplo del funcionamiento de un LSR del núcleo MPLS.
Haz clic aquí para modificar.
Haz clic aquí para modificar.
El algoritmo de intercambio de etiquetas requiere la clasificación de los paquetes a la entrada del dominio MPLS para poder hacer la asignación por el LSR de cabecera. En la figura Backbone (dominio) MPLS el LSR de entrada recibe un paquete normal (sin etiquetar) cuya dirección de destino es 212.95.193.1. El LSR consulta la tabla de encaminamiento y asigna el paquete a la clase FEC definida por el grupo 212.95/16. Así mismo, este LSR le asigna una etiqueta (con valor 5 en el ejemplo) y envía el paquete al siguiente LSR del LSP.
Dentro del dominio MPLS los LSR ignoran la cabecera IP; solamente analizan la etiqueta de entrada, consultan la tabla correspondiente (tabla de conmutación de etiquetas) y la reemplazan por otra nueva, de acuerdo con el algoritmo de intercambio de etiquetas. Al llegar un paquete al LSR de cola (salida), este determina que el siguiente salto va fuera de la red MPLS, por lo que al consultar la tabla de conmutación de etiquetas, remueve la etiqueta y envía dicho paquete por enrutamiento convencional. Como se ve, la identidad del paquete IP original queda enmascarada durante el transporte por la red MPLS.
Las etiquetas se insertan en cabeceras MPLS, entre los niveles 2 y 3. Según las especificaciones del IETF, MPLS debía funcionar sobre cualquier tipo de transporte: PPP, LAN, ATM, Frame Relay, etc. Por ello, si el protocolo de transporte de datos contiene ya un campo para etiquetas (ATM, Frame Relay, etc.), se pueden utilizan esos campos nativos para las etiquetas. Sin embargo, si la tecnología de nivel 2 empleada no soporta un campo para etiquetas (i.e. enlaces PPP o LAN), entonces se emplea una cabecera genérica MPLS de 4 octetos, que contiene un campo específico para la etiqueta y que se inserta entre la cabecera del nivel 2 y la del nivel 3.
Dentro del dominio MPLS los LSR ignoran la cabecera IP; solamente analizan la etiqueta de entrada, consultan la tabla correspondiente (tabla de conmutación de etiquetas) y la reemplazan por otra nueva, de acuerdo con el algoritmo de intercambio de etiquetas. Al llegar un paquete al LSR de cola (salida), este determina que el siguiente salto va fuera de la red MPLS, por lo que al consultar la tabla de conmutación de etiquetas, remueve la etiqueta y envía dicho paquete por enrutamiento convencional. Como se ve, la identidad del paquete IP original queda enmascarada durante el transporte por la red MPLS.
Las etiquetas se insertan en cabeceras MPLS, entre los niveles 2 y 3. Según las especificaciones del IETF, MPLS debía funcionar sobre cualquier tipo de transporte: PPP, LAN, ATM, Frame Relay, etc. Por ello, si el protocolo de transporte de datos contiene ya un campo para etiquetas (ATM, Frame Relay, etc.), se pueden utilizan esos campos nativos para las etiquetas. Sin embargo, si la tecnología de nivel 2 empleada no soporta un campo para etiquetas (i.e. enlaces PPP o LAN), entonces se emplea una cabecera genérica MPLS de 4 octetos, que contiene un campo específico para la etiqueta y que se inserta entre la cabecera del nivel 2 y la del nivel 3.
En la figura anterior se representa el esquema de los campos de la cabecera genérica MPLS y su relación con las cabeceras de los otros niveles. Los 32 bits de la cabecera MPLS se reparten en:
- 20 bits para la etiqueta MPLS.
- 3 bits para identificar la clase de servicio en el campo EXP (experimental, anteriormente llamado CoS).
- 1 bit de pila (stack) para poder apilar etiquetas de forma jerárquica.
- 8 bits para indicar el TTL (time-to-live) que sustenta la funcionalidad estándar TTL de las redes IP.