Cesar Antonio Romero Avila Instituto Politécnico Nacional MPLS ESIME Zacatenco Instituto Politécnico Nacional E.S.I.M.E. Unidad Zacatenco Ingeniería en Comunicaciones y Electrónica. Seminario: Procesamiento de Señales Digitales Romero Avila Cesar Antonio Bol.98100273 TESINA: M.P.L.S. 7 Cesar Antonio Romero Avila Instituto Politécnico Nacional MPLS ESIME Zacatenco INDICE PAGINA INTRODUCCION..............................................................................................................................7 CAPITULO 1 1 OBJETIVO DEL MPLS.....................................................................................................9 1.1 Precio y Rendimiento..........................................................................................9 1.1.1 1.1.2 1.1.3 o 1.1.4 o o o IP sobre ATM....................................................................................10 Escalabilidad.....................................................................................11 Velocidad y Retardo......................................................................12 Control de la Ruta..........................................................................12 1.2 Antecedentes Historicos.................................................................................13 CAPITULO 2 2 CONCEPTOS BÁSICOS...............................................................................................16 2.1 Red y sus Clasificaciones...............................................................................16 o 2.1.1 Clasificación según su Tamaño.............................................................16 o 2.1.2 Clasificación según su distribución Lógica.........................................17 2.2 Modelo OSI...............................................................................................................18 2.2.1 o 2.2.2 o 2.2.3 o 2.2.4 o 2.2.5 o 2.2.6 o 2.2.7 o Capa 1 Física......................................................................................19 Capa 2 Enlace de datos................................................................19 Capa 3 Red.........................................................................................19 Capa 4 Transporte..........................................................................19 Capa 5 Sesión....................................................................................19 Capa 6 Presentación......................................................................19 Capa 7 Aplicación...........................................................................19 2.3 Protocolo............................................................................................................................20 2.4 Datagrama IP..................................................................................................................20 2.4.1 2.4.2 o 2.4.3 o 2.4.4 o 2.4.5 o 2.4.6 o 2.4.7 o o Versión.................................................................................................21 HL...........................................................................................................21 Tipo de Servicio...............................................................................21 Longitud Total..................................................................................21 Identificador......................................................................................21 Indicadores........................................................................................22 Desplazamiento del Fragmento...............................................22 8 Cesar Antonio Romero Avila Instituto Politécnico Nacional MPLS ESIME Zacatenco 2.4.8 Tiempo de Vida...............................................................................22 o 2.4.9 Protocolo............................................................................................22 o 2.4.10 Suma de Comprobación............................................................22 o 2.4.11 Dirección origen............................................................................23 o 2.4.12 Dirección Destino.........................................................................23 o 2.4.13 Opciones...........................................................................................23 o 2.4.14 Relleno...............................................................................................24 o 2.5 2.6 2.7 2.8 ATM ( Definición ).....................................................................................................25 MPLS ( Definición )...................................................................................................25 Conmutador (Switch)..............................................................................................26 Encaminador (Router).............................................................................................28 CAPITULO 3 3. IP / ATM…………………………………………………………..............................................30 3.1 ATM.......................................................................................................................................30 3.2 Estructura de la Celda ATM..............................................................................32 3.2.1 o 3.2.2 o 3.2.3 o 3.2.4 o 3.2.5 o 3.3 3.4 3.5 3.6 GFC........................................................................................................32 VPI.........................................................................................................32 PTI.......................……………………………………………………...32 CLP........................................................................................................32 HEC…………………….......................................................................33 Direcciones y Caminos Virtuales...................................................................34 Protocolo AAL...............................................................................................................35 IP sobre ATM ( IP/ATM).......................………………………………………..36 Convergencia IP / ATM........................................................................................40 o 3.6.1 o 3.6.2 o 3.6.3 o 3.6.4 Cell Switching Router (CSR)………………………………….42 Conmutación IP (IP Switching)................................................42 Conmutación de Etiquetas (Tag Switching)......................43 ARIS (Agregate Route Based IP)………………………….…43 CAPITULO 4 4. CONMUTACIÓN DE ETIQUETAS...................................................................46 4.1 La clase de Equivalencia Funcional FEC..................................................47 o 4.1.1 Escalabilidad y Grado de Granulado....................................48 4.2 Funciones de Control y Reenvio.....................................................................49 9 Cesar Antonio Romero Avila Instituto Politécnico Nacional 4.3 Alternativas para el Transporte de la Etiqueta...................................50 4.4 La tabla de Encaminamiento.............................................................................51 4.5 Asociación de etiquetas a FEC´s.....................................................................52 o 4.5.1 o 4.5.2 o 4.5.3 o 4.5.4 MPLS ESIME Zacatenco Asociación Local y Asociación Remota..........................52 Asociación de Etiquetas Rio Abajo.........................................52 Asociación de Etiquetas Rio Arriba.......................................53 Asociación de Etiquetas Dirigidas a Control.....................53 4.6 Intercambio de Etiquetas: Label Swapping...........................................54 CAPITULO 5 5. ARQUITECTURA MPLS......................................................................................56 5.1 Terminologia...................................................................................................................58 5.2 Tipos de Nodos.............................................................................................................58 5.3 Protocolos de Distribución de Etiquetas..................................................59 o 5.3.1 Distribución y Asignación de Etiquetas...............................60 5.4 Formato de las Etiquetas.......................................................................................61 5.5 La Pila de las Etiquetas...........................................................................................62 5.6 Caminos de Conmutación de Etiquetas (LSP): Reglas de Apilamiento............................................................................................................................. ..63 o 5.6.1 o 5.6.2 o 5.6.3 o 5.6.4 5.7 Control de Etiquetas.................................................................................................69 o o Extracción en el Penúltimo Salto.............................................64 Ejemplo 1............................................................................................65 Ejemplo 2............................................................................................67 Ejemplo 3 LSP´s Jerárquicos......................................................67 5.7.1 Control Independiente.................................................................70 5.7.2 Control Ordenado..........................................................................71 5.8 Conmutadores ATM como LSR......................................................................72 o 5.8.1 Interacción entre las Técnicas de Codificación.................73 o 5.8.2 Valores Reservados de Etiquetas............................................73 5.9 Conponentes de un LSR........................................................................................74 5.9.1 Base de Información del Reenvio (FIB: Forwarding Information Base).......................................................................................74 o 5.9.2 Modulo de Determinación de la Ruta...................................75 o 5.9.3 Modulo de Reenvio.......................................................................76 o 5.10 Intercambio de Etiquetas (Label Swapping)......................................76 5.11 Operación Global de MPLS..............................................................................77 5.12 Control de Bucles......................................................................................................78 10 Cesar Antonio Romero Avila Instituto Politécnico Nacional MPLS ESIME Zacatenco 5.13 Agregación.....................................................................................................................80 5.14 Selección de Ruta......................................................................................................82 o 5.14.1 Encaminamiento Salto a Salto (Hop By Hop).................82 o 5.14.2 Encaminamiento Explicito.......................................................82 5.15 Fusión de Etiquetas.................................................................................................82 5.15.1 LSR´s que No Pueden Fusionar Etiquetas........................83 o 5.15.2 Procedimientos para que los Conmutadores ATM realicen la Fusión de Etiquetas.............................................................84 o 5.15.3 Fusón VC..........................................................................................84 o 5.15.4 Fusión VP con Codificación Multipunto SVP................85 o 5.16 Modulos de Retención de Etiquetas..........................................................85 o 5.16.1 Modo Liberal de Retención de Etiquetas..........................85 o 5.16.2 Modo de Conservador de Retención de Etiquetas.......86 5.17 Espacio de Etiquetas..............................................................................................86 CAPITULO 6 6. PROTOCOLOS DE DISTRIBUCIÓN DE ETIQUETAS..................88 6.1 Protocolos de Estado Duro (Hard State) y Protocolos de Estado Blando (Soft State)..............................................................................................89 6.2 BGP.........................................................................................................................................90 o 6.2.1 MPLS-BGP……………………………………………………….....91 o 6.2.2 Ventajas de la utilización de MPLS-BGP.............................91 6.3 LDP….............................................................................................................................……93 6.3.1 6.3.2 o 6.3.3 o 6.3.4 o 6.3.5 o o Mensajes LDP...................................................................................94 FEC´s e Identificadores................................................................95 Indentificadores LDP....................................................................96 Sesión LDP.........................................................................................96 Establecimiento y Mantenimiento de Sesiones LDP......98 6.4 Formato de Mensajes..............................................................................................100 o 6.4.1 PDU LDP..........................................................................................100 o 6.4.2 Codificación TLV (Type-Legth-Value: Tipo-LonguitudValor)..............................................................................................................101 o 6.4.3 Codificación TLV para parámetros usados frecuentemente..........................................................................................101 6.5 Mensajes LDP...............................................................................................................103 o o o 6.5.1 Mensajes de Notificación..........................................................104 6.5.2 Mensajes HELLO..........................................................................105 6.5.3 Mensajes de Iniciación................................................................107 11 Cesar Antonio Romero Avila Instituto Politécnico Nacional MPLS ESIME Zacatenco 6.5.4 Mensajes de Mantenimiento....................................................107 o 6.5.5 Mensajes de Dirección................................................................108 o 6.5.6 Mensajes de Asociación de Etiquetas..................................109 o 6.5.7 Mensajes de Petición de Etiquetas........................................109 o 6.5.8 Mensajes de Petición de Abandono de Etiquetas..........110 o 6.5.9 Mensajes de Retiro de Etiquetas............................................111 o 6.5.10 Mensajes de Liberación de Etiquetas................................112 o 6.6 RSVP............................................................................................................................. .......112 o 6.6.1 o 6.6.2 o 6.6.3 o 6.6.4 Caracteristicas de RSVP.............................................................113 Flujo de Datos.................................................................................114 Mensajes RSVP...............................................................................115 Funcionamiento.............................................................................117 6.7 RSVP-TE: Extensiones de RSVP para tuneles LSP.........................118 6.8 CR-LDP..............................................................................................................................120 CAPITULO 7 7. APLICACIONES DE MPLS.....................................................................................122 7.1 Ingenieria de Trafico...............................................................................................122 7.2 Clases de Servicio (CoS)......................................................................................123 7.3 Redes Privadas Virtuales (VPN´s)...............................................................125 o 7.3.1 Tunneling.........................................................................................126 CONCLUSIÓN..................................................................................................................................131 GLOSARIO...........................................................................................................................................132 BIBLIOGRAFIA................................................................................................................................140 12 Cesar Antonio Romero Avila Instituto Politécnico Nacional MPLS ESIME Zacatenco INTRODUCCION La influencia de Internet en el mercado de las telecomunicaciones ha generado una gran demanda de flexibilidad en los servicios proporcionados a la vez que un mayor control sobre los costos. El objetivo del diseño de Internet no era el de utilizarla para dar servicios de gran fiabilidad (como el telefónico en el que se necesita garantizar la calidad de la transmisión). Es por eso que se necesitan crear mecanismos para suplir las deficiencias del protocolo IP y garantizar la calidad de las comunicaciones Estos hechos provocaron que a principio de los 90 se comenzaran a explorar soluciones que contribuyesen a superar estas limitaciones. MPLS (Multiprotocol Label Switching: conmutación de etiquetas multiprotocolo) es un estándar del IETF (Internet Engineering Task Force) que surgió para unificar las diferentes soluciones que los distintos fabricantes estaban proponiendo. Está basado en el uso de etiquetas que identifican la ruta para encaminar los paquetes. MPLS surgió de tecnologías similares existentes en la mitad de la década de los 90. Las más conocidas fueron la conmutación IP de Ipsilon, Cell Switching Router de Toshiba, Conmutación de etiquetas de Cisco y ARIS (Aggregate Route-based IP Switching) de IBM. Todas estas tecnologías se basan en la conmutación de etiquetas y utilizan el paradigma de control del protocolo de Internet (direcciones IP y protocolos de encaminamiento de Internet). 13 Cesar Antonio Romero Avila Instituto Politécnico Nacional MPLS ESIME Zacatenco Los estándares MPLS ofrecen actualmente dos opciones para la distribución de las etiquetas usadas para encaminar los paquetes. La primera de ellas, conocida como RSVP, fue definida para reservar recursos de red para los flujos individuales con el fin de garantizar la calidad de servicio del mismo. LDP es la segunda opción disponible actualmente. Este protocolo ha sido definido expresamente por los expertos involucrados en la especificación de los estándares MPLS en el IETF. Las aplicaciones más importantes de MPLS son la ingeniería de tráfico y las redes privadas virtuales (VPN). 14 Cesar Antonio Romero Avila Instituto Politécnico Nacional MPLS ESIME Zacatenco OBJETIVO GENERAL El objetivo de esta tesina es el conocimiento de la tecnología más usada para la distribución de información en internet, M.P.L.S. (Multi Protocol Label Switching; Conmutación de Etiquetas Multi Protocolo). Comprender su evolución a partir de IP/ATM, su poderio en funcionamiento y sus principales aplicaciones en la actualidad. 15 Cesar Antonio Romero Avila Instituto Politécnico Nacional MPLS ESIME Zacatenco 1. OBJETIVO DEL MPLS En este capitulo, se tratara de explicar el porque de la importancia del MPLS, y cuales fueron los 4 principales inconvenientes que lograron despertar en los proveedores de servicios de comunicaciones la estandarización de esta importante tecnología MPLS. Utiliza eficazmente la separación de las funciones de control y reenvío en los encaminadores Debido al crecimiento continuo de Internet, cada vez se exigen mayores prestaciones a los encaminadores, por lo que es imprescindible separar las funciones de control y reenvío de estos. De esta forma se permitirá la evolución de una manera más natural. Éste es el aspecto más importante de la conmutación de etiquetas (Label Switching) : Permite separar las funciones de control y reenvío. Esta idea no es nueva de MPLS. La separación de las funciones de control y reenvío ya se utilizaba antes. Ejemplo de ello lo tenemos en la conmutación IP. 1.1 Precio y Rendimiento MPLS permite conseguir la simplicidad del reenvío de las tecnologías de conmutación de la capa 2 (enlace de datos) manteniendo la flexibilidad y escalabilidad del encaminamiento de la capa 3 (capa de red). En general un encaminador es un dispositivo de nivel 3 (reenvía paquetes IP) mientras que un conmutador es un dispositivo de nivel 2 (reenvía paquetes de nivel 2 ). Un conmutador es más simple que un encaminador y 16 Cesar Antonio Romero Avila Instituto Politécnico Nacional MPLS ESIME Zacatenco soporta un número más limitado de protocolos y características. El algoritmo de reenvío de un conmutador es mucho más simple que el de un encaminador. El precio de un encaminador es mayor que el de un conmutador, pero éste suele ser más rápido que aquel. Esto es debido a que básicamente lo único que hace un conmutador es reenviar paquetes. Gracias a la conmutación de etiquetas se tienen dispositivos con características de precio/rendimiento de un conmutador, pero con la funcionalidad de un encaminador. Figura 1.1 Unión de funciones de conmutación y encaminamiento 1.1.1 IP sobre ATM.- Otra de las motivaciones de MPLS es la integración de IP sobre ATM. Muchas partes de la Internet de hoy día están construidas sobre conmutadores ATM rodeados de encaminadores relativamente lentos. Este tipo de redes se dice que usan el modelo superpuesto, esto es, una red IP superpuesta en una red ATM. Tendremos inteligencia IP externa, esto es, la red ATM permite una conectividad de alta velocidad mientras que la red IP tendrá la inteligencia para reenviar datagramas IP. Aunque tengamos sólo una infraestructura física, tenemos dos redes separadas que funcionan de distinta forma, de distinta tecnología y concebidas para dos fines distintos. Figura 1.2 Red IP sobre ATM Todos los esquemas que usan la conmutación de etiquetas no tienen en cuenta el modelo superpuesto, permitiendo que los protocolos de control IP corran directamente en hardware ATM. Por tanto, los conmutadores ATM se vuelven encaminadores IP (Figura 1.3). Tendremos inteligencia IP en cada nodo. Este modelo se conoce como modelo acoplado. Con él se reducen las adyacencias, que serían n(n-1)/2 en el caso del modelo superpuesto (red totalmente mallada), siendo n el número de nodos. 17 Cesar Antonio Romero Avila Instituto Politécnico Nacional MPLS ESIME Zacatenco Figura 1.3 Conmutadores ATM como encaminadores IP 1.1.2 Escalabilidad.-Otro de los problemas del modelo superpuesto consiste en que tenemos una red completamente mallada: todos los encaminadores están conectados entre sí. Cada conmutador tendrá n-1 vecinos (siendo n el número total de conmutadores). El hecho de que haya conmutadores entre los encaminadores no hace que no sigan apareciendo directamente conectados en el nivel de red (los conmutadores son invisibles en este nivel) Si hubiera un cambio en la topología del núcleo de la red, la cantidad de información de actualización de rutas que se deberían transmitir entre sí los encaminadores sería muy elevada (Figura 1.4). Aumentando el número de encaminadores, llegará un momento en que la cantidad de información transmitida será tal que el rendimiento caerá exponencialmente. Figura 1.4 Red IP sobre ATM con aumento de encaminadores De nuevo, la solución al problema anterior la encontramos en la conmutación de etiquetas (Figura 1.5). Como vimos antes, los encaminadores están acoplados a los conmutadores por lo que tendremos menos vecinos y por tanto una alta escalabilidad. 18 Cesar Antonio Romero Avila Instituto Politécnico Nacional MPLS ESIME Zacatenco Figura 1.5 Red IP sobre ATM con conmutación de etiquetas 1.1.3 Velocidad y retardo.- El reenvío (forwarding) tradicional basado en software es demasiado lento para manejar las grandes cantidades de tráfico de Internet o de las redes interconectadas. El tiempo de la búsqueda en las tablas de encaminamiento es demasiado elevado aún teniendo en cuenta métodos de aceleración de la búsqueda. Esto se traduce en pérdida de paquetes y conexiones, y por tanto en un bajo rendimiento. La conmutación de etiquetas es más rápida. El motivo es simple: el valor de la etiqueta que se pone en la cabecera de los paquetes es el que se usa para acceder a la tabla de encaminamiento del encaminador (es el índice para acceder a la tabla). Esto requiere un solo acceso a la tabla (cómo tenemos el índice, accedemos directamente). Por tanto, el tiempo para transmitir un paquete es menor que con el encaminamiento tradicional IP. Se reduce el retardo y el tiempo de respuesta. 1.1.4 Control de la ruta.- En la mayoría de las redes interconectadas, el encaminamiento se realiza basándose en la dirección de destino IP. El encaminamiento basado en el destino no siempre es eficiente. Veamos un ejemplo, en la figura 1.6: 19 Cesar Antonio Romero Avila Instituto Politécnico Nacional MPLS ESIME Zacatenco Figura 1.6 Encaminamiento con dirección destino IP El encaminador 3 recibe paquetes de los encaminadores 1 y 2. Cuando el encaminador 3 recibe paquetes con la dirección destino del 6, puede encaminar los paquetes tanto por el encaminador 4 como por el 5. Normalmente no tiene en cuenta ningún otro factor. La conmutación de etiquetas permite controlar las rutas. Por ejemplo, un paquete etiquetado que proviene del encaminador 2 y cuyo destino es el encaminador 6 se encamina a través del encaminador 4. El resto de paquetes se encaminan a través del encaminador 5. Por tanto, la conmutación de etiquetas permite emplear nuevas funcionalidades de encaminamiento. Esto permite dar a distintas clases de tráfico distintos niveles de servicio. De esta forma usamos la conmutación de etiquetas para conseguir que la red se adapte a las necesidades de las clases de tráfico, un concepto que se denomina ingeniería de tráfico. 1.2 Antecedentes Históricos ATM tiene su origen en redes ISBN (broadband ISDN) definida por la CCITT. 20 Cesar Antonio Romero Avila Instituto Politécnico Nacional MPLS ESIME Zacatenco La estandarización de ATM es un proceso que se inicia desde la década de los 80. En 1989 la ITU adopta el formato de celdas de 53B. En 1991 se constituye el ATM Forum En 1992 se entrega la primera especificación Se generan un número importante de RFC: 1483 y el 1577 (ATM ARP). En 1994 Toshiba desarrolla y presenta al IETF el método Cell Switching Router (CSR). Un nuevo protocolo, denominado Flow Attribute Notification Protocol (FANP), es el responsable de identificar los VCs (circuitos virtuales) entre los nodos CSR. Entre 1995-97 Las redes IP sobre ATM ofrecían entonces una buena solución al problema de crecimiento explosivo de la Internet que generaba un déficit de ancho de banda. El problema surge al establecer circuitos virtuales entre diferentes LIS, ya que es necesario pasar por un encaminador IP Surge el grupo del IETF ROLC (Routing Over Large Clouds) para resolver el problema anterior. Se define el protocolo NHRP (Next Hop Resolution Protocol, Protocolo de resolución del siguiente salto) para resolver el problema del salto a través del encaminador que conecta ambas LIS´s. La arquitectura MPOA, Multiprotocol Over ATM (Multiprotocolo a través de ATM), del ATM Forum, contempla la integración de IP con ATM mediante emulación de LAN versión 2 y NHRP. El modelo IP/ATM, presenta ventajas evidentes en la integración de los niveles 2 y 3 del las capas del modelo OSI, pero lo hace de modo discontinuo, a base de mantener dos redes separadas. Entre 1997-1998 Varios fabricantes desarrollan técnicas para realizar la integración de niveles de forma efectiva. La conmutación IP (IP Switching) fue desarrollada por Ipsilon (posteriormente adquirida por Nokia) y lanzada al mercado a comienzos del año 1996. Lanza Cisco su conmutación de etiquetas (Tag Switching) 21 Cesar Antonio Romero Avila Instituto Politécnico Nacional MPLS ESIME Zacatenco IBM crea ARIS (Agregate Route-Based IP Switching), que conceptualmente es similar a la solución de Cisco. El problema principal que presentaban las diversas soluciones de conmutación multinivel era la falta de interoperatividad entre productos privados de diferentes fabricantes. Además de ello, la mayoría de esas soluciones necesitaban ATM como transporte, pues no podían operar sobre infraestructuras de transmisión mixtas (Frame Relay, PPP, SONET/SDH y LANs). En 1997 se crea el Grupo de Trabajo de MPLS que se estableció en el IETF (Internet Engineering Task Force, en español Grupo de Trabajo en Ingeniería de Internet), organización internacional abierta de normalización, que tiene como objetivos el contribuir a la ingeniería de internet, se propuso como objetivo la adopción de un estándar unificado e interoperativo. Los objetivos establecidos por ese grupo en la elaboración del estándar eran: MPLS debía funcionar sobre cualquier tecnología de transporte, no sólo ATM MPLS debía soportar el envío de paquetes tanto unicast como multicast MPLS debía ser compatible con el Modelo de Servicios Integrados del IETF, incluyendo el protocolo RSVP MPLS debía permitir el crecimiento constante de la Internet Así es como la IETF define en el RFC3031, dichos estándares del MPLS. CONCLUSIÓN En el anterior capitulo se pudo observar el objetivo principal del nacimiento del MPLS, a continuación se tratara de explicar los principales conceptos basicos para un mejor entendimiento. 22 Cesar Antonio Romero Avila Instituto Politécnico Nacional MPLS ESIME Zacatenco 2. CONCEPTOS BASICOS Empezaremos por definir los conceptos básicos que intervienen en el funcionamiento de la tecnología MPLS, para tener un enfoque mas completo de su funcionamiento y todo lo que interviene para llegar a la implementación en redes de datos. 2.1 Red y sus Clasificaciones Una red es un sistema de transmisión de datos que permite el intercambio de información entre ordenadores. Si bien esta definición es demasiado general, nos sirve como punto de partida. La información que pueden intercambiar los ordenadores de una red puede ser de lo más variada: correos electrónicos, vídeos, imágenes, música en formato MP3, registros de una base de datos, páginas web, etc. La transmisión de estos datos se produce a través de un medio de transmisión o combinación de distintos medios: cables de fibra óptica, tecnología inalámbrica, enlaces vía satélite. 2.1.1 Clasificación según su tamaño: LAN, MAN y WAN.- Las redes LAN (Local Área Network, redes de área local). Son las redes que todos conocemos, es decir, aquellas que se utilizan en nuestra empresa. Son redes pequeñas, entendiendo como pequeñas las redes de una oficina, de un edificio… Debido a sus limitadas dimensiones, son redes muy rápidas en las cuales cada estación se puede comunicar con el resto. 23 Cesar Antonio Romero Avila Instituto Politécnico Nacional MPLS ESIME Zacatenco Las redes WAN (Wide Area Network, redes de área extensa). Son redes punto a punto que interconectan países y continentes. Por ejemplo, un cable submarino entre Europa y América, o bien una red troncal de fibra óptica para interconectar dos países. Al tener que recorrer una gran distancia sus velocidades son menores que en las LAN aunque son capaces de transportar una mayor cantidad de datos. Las redes MAN (Metropolitan Area Network, redes de área metropolitana). Un ejemplo es la red utilizada en una pequeña población, para interconectar todos sus comercios, hogares y administraciones públicas. 2.1.2 Clasificación según su distribución lógica.- Todos los ordenadores tienen un lado cliente y otro servidor: una máquina puede ser servidora de un determinado servicio pero cliente de otro servicio. Servidor. Máquina que ofrece información o servicios al resto de los puestos de la red. La clase de información o servicios que ofrezca determina el tipo de servidor que es: servidor de impresión, de archivos, de páginas web, de correo, de usuarios, de IRC (charlas en Internet), de base de datos... Cliente. Máquina que accede a la información de los servidores o utiliza sus servicios. Ejemplos: Cada vez que estamos viendo una página web (almacenada en un servidor remoto) nos estamos comportando como clientes. También seremos clientes si utilizamos el servicio de impresión de un ordenador remoto en la red (el servidor que tiene la impresora conectada). Dependiendo de si existe una función predominante o no para cada puesto de la red, las redes se clasifican en: Redes cliente/servidor. Los papeles de cada puesto están bien definidos: uno o más ordenadores actúan como servidores y el resto como clientes. Los servidores suelen coincidir con las máquinas más potentes de la red. No se utilizan como puestos de trabajo. En ocasiones, ni siquiera tienen monitor puesto que se administran de forma remota: toda su potencia está destinada a ofrecer algún servicio a los ordenadores de la red. Internet es una red basada en la arquitectura cliente/servidor. 24 Cesar Antonio Romero Avila Instituto Politécnico Nacional MPLS ESIME Zacatenco Redes entre iguales. No existe una jerarquía en la red: todos los ordenadores pueden actuar como clientes (accediendo a los recursos de otros puestos) o como servidores (ofreciendo recursos). Son las redes que utilizan las pequeñas oficinas, de no más de 10 ordenadores. 2.2 Modelo OSI Se han diseñado varias herramientas para ayudar a los diseñadores de protocolos a entender las partes del problema de comunicación y planear la familia de protocolos. Una de estas herramientas y la mas importante es el modelo de OSI esto es solo una manera de dividir el problema de la comunicación en partes llamadas capas. La familia de protocolos puede diseñarse especificando un protocolo que corresponda a cada capa. El modelo de referencia de Interconexión de Sistemas Abiertos (OSI, Open System Interconection) lanzado en 1984 fue el modelo de red descriptivo creado por ISO. Proporcionó a los fabricantes un conjunto de estándares que aseguraron una mayor compatibilidad e interoperabilidad entre los distintos tipos de tecnología de red producidos por las empresas a nivel mundial. Este modelo se puede observar en la figura 2.1 Aplicación Capa 7 Presentación Capa 6 Sesión Capa 5 Transportación Capa 4 Red Capa 3 Enlace de datos Capa 2 Física Capa 1 Figura 2.1 Modelo OSI Aunque los conceptos sobre el diseño de protocolos han cambiado en los 20 años transcurridos desde el desarrollo del modelo OSI y muchos protocolos modernos no encajan en el modelo anterior, prevalece buena parte de la terminología de la OSI. 25 Cesar Antonio Romero Avila Instituto Politécnico Nacional MPLS ESIME Zacatenco El modelo OSI es conocido porque ofrece una explicación sencilla de la relación entre los complejos componentes de hardware y de protocolo de red. En el modelo OSI, la capa inferior corresponde al hardware y las capas sucesivas al software que usa la red. 2.2.1 Capa 1 Física.-Se encarga de las características eléctricas, mecánicas, funcionales y de procedimiento que se requieren para mover los bits de datos entre cada extremo del enlace de la comunicación. 2.2.2 Capa 2 Enlace.- Asegura con confiabilidad del medio de transmisión, ya que realiza la verificación de errores, retransmisión, control fuera del flujo y la secuenciación de la capacidades que se utilizan en la capa de red. 2.2.3 Capa 3 Red.- Proporciona los medios para establecer, mantener y concluir las conexiones conmutadas entre los sistemas del usuario final. Por lo tanto, la capa de red es la más baja, que se ocupa de la transmisión de extremo a extremo. 2.2.4 Capa 4 Transporte.- Esta capa proporciona el control de extremo a extremo y el intercambio de información con el nivel que requiere el usuario. Representa el corazón de la jerarquía de los protocolos que permite realizar el transporte de los datos en forma segura y económica. 2.2.5 Capa 5 Sesión.- Administra el diálogo entre las dos aplicaciones en cooperación mediante el suministro de los servicios que se necesitan para establecer la comunicación, flujo de datos y conclusión de la conexión. 2.2.6 Capa 6 Presentación.- Permite a la capa de aplicación interpretar el significado de la información que se intercambia. Esta realiza las conversiones de formato mediante las cuales se logra la comunicación de dispositivos. 2.2.7 Capa 7 Aplicación.- Se entiende directamente con el usuario final, al proporcionarle el servicio de información distribuida para soportar las aplicaciones y administrar las comunicaciones por parte de la capa de presentación. Debido a que MPLS opera entre la capa 2 y 3 del modelo OSI pondremos más énfasis en explicarlas. 26 Cesar Antonio Romero Avila Instituto Politécnico Nacional MPLS ESIME Zacatenco 2.3 Protocolo Es el conjunto de normas y reglas, organizadas y convenidas de mutuo acuerdo entre todos los participantes en una comunicación. La misión del protocolo es hacer que la comunicación entre todos los ordenadores de una red que están usando ese protocolo sea compatible y regular algún aspecto de la misma. Estos protocolos son estandarizados por las asociaciones u organizaciones de estandarización, y los fabricantes toman en cuenta estos estándares para la realización de dispositivos tele-informáticos. El Protocolo Internet (IP) es la implementación más conocida de un esquema de direccionamiento de red jerárquico. IP es el protocolo de red que usa Internet. A medida que la información fluye por las distintas capas del modelo OSI, los datos se encapsulan en cada capa. En la capa de red, los datos se encapsulan en paquetes (también denominados datagrama). 1.4 Datagramas IP El Datagrama IP consiste en una parte de cabecera y en una parte de datos cuyo tamaño es variable. En la cabecera hay una parte fija de 20 bytes y una parte opcional de longitud variable. En la figura 1.1 se puede ver el formato de la cabecera IP. A continuación hay una descripción de cada uno de los campos que forman la cabecera (Figura 2.2): Figura 2.2. Datagrama IP 27 Cesar Antonio Romero Avila Instituto Politécnico Nacional MPLS ESIME Zacatenco 2.4.1 Versión (4 bits).- Indica el número de versión del protocolo al que pertenece el datagrama, lo que permitirá la evolución futura del protocolo y que la transición entre las versiones se pueda hacer ejecutándose en unas máquinas la versión vieja y en otras la versión nueva. 2.4.2 HL (Internet Header length) (4 bits).- Indica la longitud de la cabecera en palabras de 32 bits (4 bytes). El valor mínimo es cinco (20/4=5). Este campo es necesario por no ser constante el tamaño de la cabecera como hemos comentado anteriormente. El valor máximo puede ser 15 (1111) lo que limita la cabecera a 60 bytes (15*4) y en consecuencia el campo de opciones a 40 (60-20). En el caso de que, por ejemplo, se quiera registrar la ruta de un paquete este valor puede ser insuficiente y ser totalmente inútil esta opción. 2.4.3 Tipo de servicio (8 bits).- Permite que el host especifique que clase de servicio quiere, pudiéndose combinar confiabilidad y velocidad. Para la voz digitalizada es mas importante realizar la entrega de forma rápida que precisa, mientras que para la transferencia de ficheros no importa a que velocidad se realiza la transferencia pero si que esté libre de errores. De los 8 bits, 3 son para el campo de precedencia que en realidad es una prioridad de 0 (normal) a 7 (para los paquetes de control de red). A continuación aparecen los bits de seguridad (alta o baja), retardo (alto o bajo cuando se intenta minimizar el retardo) y rendimiento (normal o alto cuando se intenta maximizar el rendimiento durante la transmisión del datagrama). 2.4.4 Longitud total (16 bits).- En bytes que tendrá todo el datagrama, considerando tanto la cabecera como los datos. Hay que tener en cuenta que el tamaño máximo de un datagrama es de 65535 bytes lo que puede ser insuficiente en las redes de alta velocidad. 2.4.5 Identificador (16 bits).- Es un número de secuencia que junto a la dirección origen, la dirección destino y el protocolo de usuario, sirven para que la máquina destino determine a que datagrama pertenece el fragmento que ha recibido. Todos los fragmentos de un datagrama contienen el mismo valor en el campo identificador y este número debe ser único para la dirección origen, la dirección destino y el protocolo de usuario durante el tiempo en el que el datagrama permanece en el conjunto de redes. 28 Cesar Antonio Romero Avila Instituto Politécnico Nacional MPLS ESIME Zacatenco 2.4.6 Indicadores (3 bits).- El primer bit no se utiliza actualmente. El indicador de mas fragmentos (MF) cuando vale 1 indica que este datagrama tiene mas fragmentos y toma el valor 0 en el último fragmento. El indicador de no fragmentar (DF) prohíbe la fragmentación cuando vale 1. Es una orden que se le da a los encaminadores de que no fragmenten el datagrama cuando el destino es incapaz de reensamblarlo. Si este bit vale 1, el datagrama se descartará si se excede el tamaño máximo en una subred de la ruta. Por lo tanto, cuando este bit vale 1, es aconsejable usar encaminamiento por la fuente para evitar subredes cuyo tamaño máximo de paquete sea menor que el tamaño del datagrama. 2.4.7 Desplazamiento del fragmento (13 bits).- Indica en que posición del datagrama original, medido en unidades de 8 bytes (64 bits), va el fragmento actual. Debido a esto, todos los fragmentos excepto el último contienen un campo de datos con una longitud múltiplo de 8 bytes. Como se proporcionan 13 bits, puede haber un máximo de 8912 fragmentos por datagrama, y por lo tanto el tamaño máximo de un datagrama es de 65536 bytes, uno mas que el campo de longitud total. 2.4.8 Tiempo de vida (8 bits).- Es un contador que sirve para limitar la vida de un paquete. Aunque lo lógico sería pensar que cuenta el tiempo en segundos, en realidad lo que cuenta es el número de saltos de dispositivo de encaminamiento que realiza. Cuando el contador llega a cero, el paquete se descarta y se envía de una paquete al computador origen avisándole. Con este mecanismo se consigue que los datagramas no permanezcan indefinidamente en la red si, por ejemplo, se dañan las tablas de encaminamiento. 2.4.9 Protocolo (8 bits).- Se utiliza por la capa de red para saber a que protocolo de la capa de transporte le tiene que enviar el datagrama una vez lo ha reensamblado. Existen diferentes protocolos de transporte, entre ellos TCP y UDP. En el RFC 1700 se definen todos estos protocolos. 2.4.10 Suma de comprobación (16 bits).- Sirve para verificar el contenido de la cabecera y es útil para la detección de errores generados durante la transmisión del datagrama. Como algunos de los campos de la cabecera pueden cambiar en alguno de los dispositivos de encaminamiento (por ejemplo, el tiempo de vida y algunos campos 29 Cesar Antonio Romero Avila Instituto Politécnico Nacional MPLS ESIME Zacatenco relacionados con la segmentación), este valor es verificado y recalculado en cada uno de los dispositivos de encaminamiento. El algoritmo empleado consiste en sumar todas las medias palabras de 16 bits a medida que van llegando, usando la aritmética de complemento a 1, y luego obtener el complemento a 1 del resultado. Se supone que la suma de comprobación de la cabecera es cero cuando llega. Este algoritmo es algo mas robusto que una suma normal. Existen algunas técnicas para acelerar el cálculo. 2.4.11 Dirección origen (32 bits).- Indica el número de red y el número del ordenador que envía el datagrama. 2.4.12 Dirección destino (32 bits).- Indica el número de red y el número del ordenador al que se envía el datagrama. 2.4.13 Opciones (variable).- Contiene las opciones solicitadas por el usuario que envía los datos y se diseñó para que las versiones posteriores del protocolo pudieran incluir información no considerada originalmente, para que los investigadores pudieran probar cosas nuevas y para que aquellas aquella información que es utilizada pocas veces no tuviera asignada unos bits determinados en la cabecera. Cada una de las opciones empieza en 1 byte que identifica la opción. Algunas de las opciones vienes seguidas de un campo de 1 byte para indicar la longitud de la opción y a continuación uno o mas bytes de datos. Hay seis opciones Seguridad, Encaminamiento estricto desde el origen, Encaminamiento libre desde el origen, Registrar la ruta, Identificación de secuencia, Marca de tiempo definidas actualmente pero no todas son reconocidas por todos los dispositivos de encaminamiento: Seguridad: Permite añadir una etiqueta para indicar lo secreta que es la información que contiene el datagrama. Por ejemplo, se podría utilizar para que los dispositivos de encaminamiento no consideren redes en concreto. Pero en realidad esta etiqueta es ignorada y realmente para lo único que sirve es para ayudar a los espías a encontrar con mayor facilidad la información importante !!! Encaminamiento Estricto Libre Desde El Origen: Es una secuencia de direcciones IP que sirve para indicar la trayectoria completa que debe seguir el datagrama desde el origen hasta el destino. Esta opción es usada sobre todo cuando los administradores de sistemas envían paquetes de emergencia 30 Cesar Antonio Romero Avila Instituto Politécnico Nacional MPLS ESIME Zacatenco porque las tablas de encaminamiento se han corrompido o para hacer mediciones de tiempo. Encaminamiento Libre Desde El Origen: Es una secuencia de direcciones IP que sirve para indicar que el datagrama debe pasar obligatoriamente por esos dispositivos de encaminamiento y en ese orden, pero también puede pasar por otros dispositivos de encaminamiento. Esta opción es útil cuando por diversas consideraciones se deben pasar por algunos dispositivos de encaminamiento en concreto. Registrar la Ruta: Sirve para indicar que los dispositivos de encaminamiento agreguen su dirección IP al campo de opción y de esta manera tener conocimiento de la ruta seguida por el datagrama. Se utiliza, por ejemplo, para poder determinar si los algoritmos de encaminamiento están funcionando correctamente. Los 40 bytes de tamaño máximo que puede tener el campo de opciones sólo permite registrar 9 saltos, lo que puede ser en las redes actuales en muchos casos insuficiente. Identificador de Secuencia: Se utiliza cuando hay recursos reservados para un servicio, por ejemplo voz. Marca de Tiempo: En este caso, además de registrar las direcciones de los dispositivos de encaminamiento como se hacia en la opción registrar la ruta, se utilizan 32 bits para guardar una marca de tiempo expresada en milisegundos. Esta marca es usada principalmente para buscar fallos en los algoritmos de encaminamiento. 2.4.14 Relleno (variable).- El campo de opciones se rellena para que su tamaño sea múltiplo de 32 bits (4 bytes). IP determina la forma del encabezado del paquete IP (que como se vio anteriormente incluye información de direccionamiento y otra información de control) pero no se ocupa de los datos en sí (acepta cualquier información que recibe desde las capas superiores). Es decir, se preocupa de llevar el contenido al destino gracias a su direccionamiento y los encaminadores, pero no contiene datos en si. 31 Cesar Antonio Romero Avila Instituto Politécnico Nacional MPLS ESIME Zacatenco 2.5 ATM Debido a que más adelante se explicara ampliamente su convergencia hacia MPLS, solo se da una explicación general, a modo de definición. ATM (Modo de Transferencia Asíncrona o Asynchronous Transfer Mode ) es una tecnología de telecomunicaciones desarrollada para hacer frente a la gran demanda de capacidad de transmisión para servicios y aplicaciones. Con esta tecnología, a fin de aprovechar al máximo la capacidad de los sistemas de transmisión, sean estos de cable o radioeléctricos, la información no es transmitida y conmutada a través de canales asignados en permanencia, sino en forma de cortos paquetes (celdas ATM) de longitud constante y que pueden ser encaminadas individualmente mediante el uso de los denominados canales virtuales y trayectos virtuales. 2.6 MPLS De igual manera se explicara mas ampliamente adelante. MPLS (Multi-Protocol Label Switching) es una red privada IP que combina la flexibilidad de las comunicaciones punto a punto o Internet y la fiabilidad, calidad y seguridad de los servicios Prívate Line, Frame Relay o ATM. Ofrece niveles de rendimiento diferenciados y priorización del tráfico, así como en aplicaciones de voz y multimedia. Y todo ello en una única red; intenta conseguir las ventajas de ATM, pero sin sus inconvenientes Asigna a los datagramas de cada flujo una etiqueta única que permite una conmutación rápida en los encaminadores intermedios (solo se mira la etiqueta, no la dirección de destino). Opera entre la capa de enlace de datos y la capa de red del modelo OSI (capa 2 y 3). En la Capa 2 operan los Conmutadores, Hubs y Puentes; maneja protocolos como: EE802.1q, IEE802.2, IEE802.3, Token Ring, DIC, PPP, Frame Relay, ATM, SDH, PDH, 32 Cesar Antonio Romero Avila Instituto Politécnico Nacional MPLS ESIME Zacatenco WDM, X25. En la Capa 3 operan los Encaminadores y maneja protocolos como: IP, IPX, RIP, RIPV2, OSPF. Figura 2.3 Figura 2.3 Capa 2( Enlace de Datos ) y Capa 3 ( Red ). 2.7 Conmutador (Switch) El Conmutador o mejor conocido en el medio como Switch, trabaja en la capa Enlace de datos (son la versión moderna de los puentes o bridges) pero también puede tratarse como un sistema de interconexión de cables, eso sí, con cierta inteligencia; es el punto central desde el cual parten los cables de par trenzado hasta las distintos puestos de la red, siguiendo una topología de estrella. Figura 2.4 Figura 2.4 Topologia Estrella con Conmutador con punto central Un conmutador es un hub mejorado: tiene las mismas posibilidades de interconexión que un hub (al igual que un hub, no impone ninguna restricción de acceso entre los ordenadores conectados a sus puertos). Sin embargo se comporta de un modo más eficiente reduciendo el tráfico en las redes y el número de colisiones. 33 Cesar Antonio Romero Avila Instituto Politécnico Nacional MPLS ESIME Zacatenco Un conmutador no difunde las tramas Ethernet por todos los puertos, sino que las retransmite sólo por los puertos necesarios. Por ejemplo, si tenemos un ordenador A en el puerto 3, un ordenador B en el puerto 5 y otro ordenador C en el 6, y enviamos un mensaje desde A hasta C, el mensaje lo recibirá el conmutador por el puerto 3 y sólo lo reenviará por el puerto 6 (un hub lo hubiese reenviado por todos sus puertos). Cada puerto tiene un buffer o memoria intermedia para almacenar tramas Ethernet. Puede trabajar con velocidades distintas en sus ramas (autosensing): unas ramas pueden ir a 10 Mbps y otras a 100 Mbps. Suelen contener 3 diodos luminosos para cada puerto: uno indica si hay señal (link), otro la velocidad de la rama (si está encendido es 100 Mbps, apagado es 10 Mbps) y el último se enciende si se ha producido una colisión en esa rama. Los conmutador contienen una tabla dinámica de direcciones físicas y números de puerto. Nada más enchufar el conmutador esta tabla se encuentra vacía. Un procesador analiza las tramas Ethernet entrantes y busca la dirección física de destino en su tabla. Si la encuentra, únicamente reenviará la trama por el puerto indicado. Si por el contrario no la encuentra, no le quedará más remedio que actuar como un hub y difundirla por todas sus ramas. Las tramas Ethernet contienen un campo con la dirección física de origen que puede ser utilizado por el conmutador para agregar una entrada a su tabla basándose en el número de puerto por el que ha recibido la trama. A medida que el tráfico se incrementa en la red, la tabla se va construyendo de forma dinámica. Para evitar que la información quede desactualizada (si se cambia un ordenador de sitio, por ejemplo) las entradas de la tabla desaparecerán cuando agoten su tiempo de vida (TTL), expresado en segundos. En la figura 2.5 se pueden observar imágenes de Conmutadores. 34 Cesar Antonio Romero Avila Instituto Politécnico Nacional MPLS ESIME Zacatenco Figura 2.5 Conmutadores. 2.8 Encaminador (Router) El Encaminador o mejor conocido en el medio como Router, es un dispositivo electrónico que opera en la capa de red y tiene la capacidad para distribuir cada paquete de información que recibe y que además decide la manera más conveniente de enviarlo a destino. El encaminador es también la pieza fundamental de cualquier red electrónica de comunicaciones: sin la mediación del encaminador, internet no existiría. Son capaces de encaminar dinámicamente, es decir, son capaces de seleccionar el camino que debe seguir un paquete en el momento en el que les llega, teniendo en cuenta factores como líneas más rápidas, líneas más baratas, líneas menos saturadas, etc. Los encaminadores son más ``inteligentes'' que los conmutadores, pues operan a un nivel mayor lo que los hace ser capaces de procesar una mayor cantidad de información. Esta mayor inteligencia, sin embargo, requiere más procesador, lo que también los hará más caros. A diferencia de los conmutadores, que sólo leen la dirección MAC, los encaminadores analizan la información contenida en un paquete de red leyendo la dirección de red. Los encaminadores leen cada paquete y lo envían a través del camino más eficiente posible al destino apropiado, según una serie de reglas recogidas en sus tablas. Los encaminadores se utilizan a menudo para conectar redes geográficamente separadas usando tecnologías WAN de relativa baja velocidad, como ISDN, una línea T1,Frame Relay, etc. 35 Cesar Antonio Romero Avila Instituto Politécnico Nacional MPLS ESIME Zacatenco El encaminador es entonces la conexión vital entre una red y el resto de las redes. Un encaminador también sabe cuándo mantener el tráfico de la red local dentro de ésta y cuándo conectarlo con otras LANs, es decir, permite filtrar los broadcasts de nivel de enlace. Esto es bueno, por ejemplo, si un encaminador realiza una conexión WAN, así el tráfico de broadcast de nivel dos no es encaminado por el enlace WAN y se mantiene sólo en la red local. Eso es especialmente importante en conexiones conmutadas como RDSI. Un encaminador dispondrá de una o más interfases de red local, las que le servirán para conectar múltiples redes locales usando protocolos de nivel de red. Eventualmente, también podrá tener una o más interfases para soportar cualquier conexión WAN. Trabajan con direcciones IP. Se utiliza para interconectar redes y requiere una configuración. Podemos averiguar los encaminadores que atraviesan nuestros datagramas IP mediante el comando Tracert. En la figura 2.6 se muestras imágenes de algunos Encaminadores. Figura 2.6 Imágenes de Encaminadores. CONCLUSIÓN Podemos concluir que en capitulo anterior se llego al completo entendimiento de los conceptos con el fin de tener un mayor panorama de lo abarcado por la arquitectura MPLS. 36 Cesar Antonio Romero Avila Instituto Politécnico Nacional MPLS ESIME Zacatenco 3. IP / ATM Teniendo presentes los conceptos anteriormente citados; a continuación se abordara el tema de la tecnología IP/ATM, precursora de MPLS. Se mencionaran los problemas que enfrento debido al crecimiento constante del internet, así como las soluciones de proveedores a estos inconvenientes. 3.1 A.T.M. ( Modo de transmisión Asíncrono ) Con esta tecnología, a fin de aprovechar al máximo la capacidad de los sistemas de transmisión, sean estos de cable o radioeléctricos, la información no es transmitida y conmutada a través de canales asignados en permanencia, sino en forma de paquetes cortos llamados celdas ATM. longitud constante. Las cuales pueden ser encaminadas individualmente mediante el uso de los denominados canales virtuales y trayectos virtuales. La tecnología ATM Provee las siguientes funcionalidades: Integridad en la secuencia Baja varianza en el retardo de paquetes Calidad de servicio (Q o S) Tecnología escalable: 155Mbps a 2.5Gbps 37 Cesar Antonio Romero Avila Instituto Politécnico Nacional MPLS ESIME Zacatenco Cada celda es de 53 bytes longitud constante por una curiosa razón: los americanos proponían celdas de 64 bytes, mientras que los europeos lo hacían de 32. Y es que los primeros poseían una infraestructura de redes de mayor calidad, por lo que finalmente se acordó un término medio de 48 bytes (de información del usuario) a los que se añadieron 5 más de cabecera (información de control). Estas celdas pueden ser encaminadas individualmente mediante el uso de los denominados canales virtuales y trayectos virtuales. Figura 3.1 Figura 3.1 Celda ATM En el terminal transmisor, la información es escrita byte a byte en el campo de información de usuario de la celda y a continuación se le añade la cabecera. En el extremo distante, el receptor extrae la información, también byte a byte, de las celdas entrantes y de acuerdo con la información de cabecera, la envía donde ésta le indique, pudiendo ser un equipo terminal u otro módulo ATM para ser encaminada a otro destino. En caso de haber más de un camino entre los puntos de origen y destino, no todas las celdas enviadas durante el tiempo de conexión de un usuario serán necesariamente encaminadas por la misma ruta, ya que en ATM todas las conexiones funcionan sobre una base virtual. Figura 3.2 Diagrama simplificado del proceso ATM 38 Cesar Antonio Romero Avila Instituto Politécnico Nacional MPLS ESIME Zacatenco 3.2 Estructura de la celda ATM El estándar define el protocolo orientado a conexión que las transmite y dos tipos de formato de celda: NNI (Network to Network Interface o interfaz red a red); UNI (User to Network Interface o interfaz usuario a red), siendo este último el más utilizado. Diagrama de una celda UNI Figura 3.3 Diagrama de la Celda ATM 3.2.1 GFC (Control de Flujo Genérico, Generic Flow Control, 4 bits).- El estándar originariamente reservó el campo GFC para labores de gestión de tráfico, pero en la práctica no es utilizado. Las celdas NNI lo emplean para extender el campo VPI a 12 bits. 3.2.2 VPI (Identificador de Ruta Virtual, Virtual Path Identifier, 8 bits) y VCI (Identificador de Circuito Virtual, Virtual Circuit Identifier, 16 bits).- identifican la ruta y canal virtuales de la celda. 3.2.3 PTI (Tipo de Información de Usuario, Payload type, 3 bits).- identifica el tipo de datos de la celda (de datos o de control). 3.2.4 CLP (Prioridad, Cell Loss Priority, 1 bit).- identifica el nivel de prioridad de la celda. 39 Cesar Antonio Romero Avila Instituto Politécnico Nacional 3.2.5 MPLS ESIME Zacatenco HEC (Corrección de Error de Cabecera, Header Error Correction, 8 bits).- contiene un código de detección de error que sólo cubre la cabecera (no la información de usuario), y que permite detectar un buen número de errores múltiples y corregir errores simples. La razones principal del porque las celdas son de 53 bytes y de tamaño fijo es porque simplifica la construcción de conmutadores, se minimiza el largo de las colas de los conmutadores y por lo tanto se disminuye el retardo. Supongamos un conmutador con paquetes de largo variable en la figura 3.3, su tiempo de transmisión será de 327,68 µseg Figura 3.4 Paquete en Conmutador. Si un paquete de alta prioridad llega justo cuando el conmutador comienza a transmitir éste debe esperar 327,68 µseg por el acceso al link. Y si por el contrario, el paquete fuera de 53 bytes, este tiempo sólo sería de 4.24 µseg. Las colas de celdas tienden a ser más cortas que colas de paquetes por las siguientes razones: Al llegar un paquete a una cola vacía, no se puede transmitir hasta que llegue completamente. Mientras tanto, el link está ocioso Ahora si el paquete se descompone en un tren de varias celdas, al llegar la primera celda se puede comenzar a transmitir. Volviendo al ejemplo anterior, si llegan 2 paquetes de 4KB a la cola al mismo tiempo, el link estará ocioso por 327,68 µseg mientras los dos paquetes llegan. Al final de 40 Cesar Antonio Romero Avila Instituto Politécnico Nacional MPLS ESIME Zacatenco este tiempo tendremos 8KB en la cola (recordar que el buffer no se libera mientras no se transmite completamente el paquete). Por otro lado, si la misma información se pone en un tren de celdas la transmisión puede comenzar 4.24 µseg después que la primera celda comienza a llegar, transcurrido un tiempo de 327,68 µseg sólo habrá 4KB de datos. Figura 3.4 Figura 3.5 Ejemplo de Red ATM 3.3 Direcciones y Caminos virtuales La dirección de 24 bits tiene una jerarquía impuesta por los 8 bits de VPI y los 16 bits de VCI. Este esquema permite usar redes públicas usando sólo los VPI. Por ejemplo, si una empresa tiene 2 sitios conectados vía una red ATM pública, usa los 24 bits en total, pero para el despacho usa sólo los 8 bits de VPI. La ventaja es que la red pública ve sólo una conexión lo cual simplifica el despacho de celdas y diseño de conmutadores. 41 Cesar Antonio Romero Avila Instituto Politécnico Nacional MPLS ESIME Zacatenco Figura 3.6 Despacho de celdas Figura 3.7 Segmentación y reensamblado 3.4 Protocolo AAL El esquema tradicional usados por los stacks de protocolos que consiste en agregar headers en cada nivel no funciona en ATM. Figura 3.8 Figura 3.8 Stack 42 Cesar Antonio Romero Avila Instituto Politécnico Nacional MPLS ESIME Zacatenco La solución es fragmentar el mensaje de alto nivel en paquetes de bajo nivel. Los paquetes de bajo nivel se transmiten por la red y se reensamblan en el destino. Esto implica poner una capa de protocolo entre ATM y algún protocolo de largo variable como IP. Esta capa se denomina AAL (ATM Adaptation Layer). El header de un paquete de AAL contiene la información necesaria para reensamblar el mensaje original. Figura 3.9 La Capa AAL 3.5 IP sobre ATM IP/ATM A mediados de los 90 IP fue ganando terreno como protocolo de red a otras arquitecturas en uso (SNA, IPX, AppleTalk, OSI...). Por otro lado, hay que recordar que los backbones IP que los proveedores de servicio (NSP)2 habían empezado a desplegar en esos años estaban construidos a base de encaminadores conectados por líneas dedicadas T1/E1 y T3/E3. El crecimiento explosivo del internet había generado un déficit de ancho de banda en aquel esquema de enlaces individuales. La respuesta de los NSPs fue el incremento del número de enlaces y de la capacidad de los mismos. Del mismo modo, los NSPs se plantearon la necesidad de aprovechar mejor los recursos de red existentes, sobre todo la utilización eficaz del ancho de banda de todos los enlaces. Con los protocolos habituales de encaminamiento (basados en métricas del menor número de saltos), ese aprovechamiento del ancho de banda global no resultaba efectivo. Había que idear otras alternativas de ingeniería de tráfico. Como consecuencia, se impulsaron los esfuerzos para poder aumentar el rendimiento de los encaminadores tradicionales. Estos esfuerzos trataban de combinar, de diversas maneras, la eficacia y la rentabilidad de los conmutadores ATM con las 43 Cesar Antonio Romero Avila Instituto Politécnico Nacional MPLS ESIME Zacatenco capacidades de control de los encaminadores IP. A favor de integrar los niveles 2 y 3 estaba el hecho de las infraestructuras de redes ATM que estaban desplegando los operadores de telecomunicación. Estas redes ofrecían entonces una buena solución a los problemas de crecimiento de los NSPs. Por un lado, proporcionaba mayores velocidades (155 Mpbs) y, por otro, las características de respuesta determinísticas de los circuitos virtuales ATM posibilitaban la implementación de soluciones de ingeniería de tráfico. El modelo de red "IP sobre ATM" (IP/ATM) pronto ganó adeptos entre la comunidad de NSPs, a la vez que facilitó la entrada de los operadores telefónicos en la provisión de servicios IP y de conexión a la Internet al por mayor. El funcionamiento IP/ATM supone la superposición de una topología virtual de encaminadores IP sobre una topología real de conmutadores ATM. El backbone ATM se presenta como una nube central (el núcleo) rodeada por los encaminadores de la periferia. Cada encaminador comunica con el resto mediante los circuitos virtuales permanentes (PVCs) que se establecen sobre la topología física de la red ATM. Los PVCs actúan como circuitos lógicos y proporcionan la conectividad necesaria entre los encaminadores de la periferia. Estos, sin embargo, desconocen la topología real de la infraestructura ATM que sustenta los PVCs. Los encaminadores ven los PVCs como enlaces punto a punto entre cada par. En la figura 3.9 se representa un ejemplo en el que se puede comparar la diferencia entre la topología física de una red ATM con la de la topología lógica IP superpuesta sobre la anterior. 44 Cesar Antonio Romero Avila Instituto Politécnico Nacional MPLS ESIME Zacatenco Figura 3.10 Topología física de ATM con Lógica de IP La base del modelo IP/ATM está en la funcionalidad proporcionada por el nivel ATM, es decir, los controles de software (señalización y encaminamiento) y el envío de las celdas por hardware (conmutación). En realidad, los PVCs se establecen a base de intercambiar etiquetas en cada conmutador de la red, de modo que la asociación de etiquetas entre todos los elementos ATM determina los correspondientes PVCs. (Más adelante se verá que el intercambio de etiquetas es uno de los componentes fundamentales en la arquitectura MPLS). Las etiquetas tienen solamente significado local en los conmutadores y son la base de la rapidez en la conmutación de celdas. La potencia de esta solución de topologías superpuestas está en la infraestructura ATM del backbone; el papel de los encaminadores IP queda relegado a la periferia, que, a mitad de los 90, tenían una calidad cuestionable, al estar basados en funcionamiento por software. En la figura 2 se representa el modelo IP/ATM con la separación de funciones entre lo que es encaminamiento IP en el nivel 3 (control y envío de paquetes) y lo que es conmutación en el nivel 2 (control/señalización y envío de celdas). Aunque se trata de una misma infraestructura física, en realidad existen dos redes separadas, con diferentes tecnologías, con diferente funcionamiento y, lo que quizás es más sorprendente, concebidas para dos finalidades totalmente distintas. La solución de superponer IP sobre ATM permite aprovechar la infraestructura ATM existente. Las ventajas inmediatas son el ancho de banda disponible a precios competitivos y la rapidez de transporte de datos que proporcionan los conmutadores. En los casos de NSPs de primer nivel (la mayor parte telcos), ellos poseen y operan el backbone ATM al servicio de sus redes IP. Los caminos físicos de los PVCs se calculan a partir de la necesidades del tráfico IP, utilizando la clase de servicio ATM UBR (Unspecified Bit Rate), ya que en este caso el ATM se utiliza solamente como infraestructura de transporte de alta velocidad (no hay necesidad de apoyarse en los mecanismos inherentes del ATM para control de la congestión y clases de servicio). La ingeniería de tráfico se hace a base de proporcionar a los encaminadores los PVCs necesarios, con una topología lógica entre encaminadores totalmente mallada (Figura 3.10). El "punto de encuentro" entre la red IP y la ATM está en el acoplamiento de los subinterfaces en los encaminadores con los PVCs, a través de los cuales se intercambian los encaminadores la información de encaminamiento correspondiente al protocolo interno 45 Cesar Antonio Romero Avila Instituto Politécnico Nacional MPLS ESIME Zacatenco IGP. Lo habitual es que, entre cada par de encaminadores, haya un PVC principal y otro de respaldo, que entra automáticamente en funcionamiento cuando falla el principal. Figura 3.11 Modelo IP/ATM a bloques Sin embargo, el modelo IP/ATM tiene también sus inconvenientes: hay que gestionar dos redes diferentes, una infraestructura ATM y una red lógica IP superpuesta, lo que supone a los proveedores de servicio unos mayores costes de gestión global de sus redes. Existe, además, lo que se llama la "tasa impuesta por la celda", un overhead aproximado del 20% que causa el transporte de datagramas IP sobre las celdas ATM y que reduce en ese mismo porcentaje el ancho de banda disponible. Por otro lado, la solución IP/ATM presenta los típicos problemas de crecimiento exponencial n x (n-1) al aumentar el número de nodos IP sobre una topología completamente mallada. Piénsese, p. ej., en una red con 5 encaminadores externos con una topología virtual totalmente mallada sobre una red ATM. Son necesarios 5 x 4 =20 PVCs (uno en cada sentido de transmisión). Si se añade un sexto encaminador se necesitan 10 PVCs más para mantener la misma estructura (6 x 5=30). Una pega adicional del crecimiento exponencial de rutas es el mayor esfuerzo que tiene que hacer el correspondiente protocolo IGP. Como conclusión, podemos decir que el modelo IP/ATM, si bien presenta ventajas evidentes en la integración de los niveles 2 y 3, lo hace de modo discontinuo, a base de mantener dos redes separadas. 46 Cesar Antonio Romero Avila Instituto Politécnico Nacional MPLS ESIME Zacatenco 3.6 Convergencia IP/ATM La arquitectura ATM difiere significativamente de la arquitectura IP. La primera es una arquitectura orientada a conexión mientras que la segunda no lo es, es decir, es no orientada a conexión. Además, el esquema de direcciones es totalmente diferente, al igual que lo es el modelo de comunicación multicast o multienvío. Éstas son algunas de las diferencias entre ambos modelos. Dada la necesidad existente de transportar paquetes IP sobre redes ATM, han surgido grupos de trabajo del IETF. Cabe destacar dos RFCs : RFC 1483: IP sobre ATM RFC 1577: IP clásico sobre ATM y ATMARP (servidor ATM ARP) La primera RFC trata sobre cómo encapsular datagramas IP en enlaces ATM. En el modelo clásico los nodos IP pueden comunicarse entre sí si pertenecen a la misma subred IP lógica (LIS, Logical IP Subnet). Una LIS es simplemente un conjunto de hosts y encaminadores conectados a través de una red ATM. Dichos hosts y encaminadores están en una red IP, por lo que comparten la misma dirección de subred. Si un dispositivo en una LIS se quiere comunicar con otro que esté en otra LIS distinta, debe hacerlo a través de un encaminador que comunique ambas LISs (no podrán establecer un único circuito virtual para comunicarse). (Figura 3.12) 47 Cesar Antonio Romero Avila Instituto Politécnico Nacional MPLS ESIME Zacatenco Figura 3.12 Modelo LIS Para que dos dispositivos que están en la misma LIS se puedan comunicar, es necesario que conozcan sus direcciones ATM. Para tal cosa es necesario disponer de un servidor ARP (Address Resolution Protocol). En redes convencionales como las redes ethernet, los dispositivos IP aprenden sus respectivas direcciones gracias al protocolo ARP que se apoya en la difusión del nivel de enlace. Como las redes ATM carecen de esto se necesita el mencionado servidor para hacer la conversión de direcciones IP a direcciones ATM. Los dispositivos registran en dicho servidor su dirección ATM y su dirección IP de tal forma que cuando un dispositivo se quiere comunicar con otro que está en la misma LIS le solicita al servidor que haga la traducción de la dirección IP a la dirección ATM. Con la dirección ATM ya podrá comunicarse estableciendo un circuito virtual. La RFC-1577 no aborda el tema de que dos dispositivos que se encuentren en distinta LIS puedan establecer un circuito virtual para comunicarse. Para esto surgió el grupo del IETF ROLC (encaminamiento Over Large Clouds) que más o menos quiere decir "Encaminamiento a través de grandes nubes". Se definió el protocolo NHRP (Next Hop Resolution Protocol, Protocolo de resolución del siguiente salto) para resolver el problema del salto a través del encaminador que conecta ambas LISs (Figura 3.13). Esto se consigue teniendo servidores NHS (Next Hop Servers), de tal forma que un dispositivo en una LIS puede aprender la dirección ATM de otro dispositivo de otra LIS a través del mencionado servidor. Con la dirección ATM ya pueden establecer un circuito virtual. 48 Cesar Antonio Romero Avila Instituto Politécnico Nacional MPLS ESIME Zacatenco Figura 3.13 Circuito virtual en LIS La arquitectura MPOA, Multiprotocol Over ATM (Multiprotocolo a través de ATM), del ATM Forum, contempla la integración de IP con ATM mediante emulación de LAN versión 2 y NHRP. 3.6.1 Cell Switching Router (CSR) de Toshiba.- Esta idea fue desarrollada por Toshiba. Su utilización comercial se centró en redes académicas de Japón. Esta solución fue una de las primeras propuestas que trataba de utilizar los protocolos de encaminamiento del mundo IP para controlar conmutadores ATM, y básicamente fue diseñada para conectar subredes IP utilizando una aproximación clásica de "IP sobre ATM" [RFC1483]. En este caso los distintos conmutadores de etiquetas se comunican utilizando circuitos virtuales típicos de ATM, y las etiquetas son asignadas basándose en las características de los flujos de datos que se deben conmutar. Un nuevo protocolo, denominado Flow Attribute Notification Protocol (FANP), es el responsable de identificar los VCs (circuitos virtuales) entre los nodos CSR. Asimismo se utiliza este protocolo para establecer la asociación entre los flujos de datos individuales y los VCs dedicados. 49 Cesar Antonio Romero Avila Instituto Politécnico Nacional MPLS ESIME Zacatenco 3.6.2 Conmutación IP (IP Switching).- Esta solución fue desarrollada por Ipsilon (posteriormente adquirida por Nokia) y lanzada al mercado a comienzos del año 1996. Se basa en un dispositivo que puede realizar funciones de conmutador ATM, al que se le ha eliminado el plano de control (es decir todas aquellas funciones relacionadas con los protocolos de señalización) y también de encaminador IP de una manera sencilla y eficiente. Los dispositivos de conmutación IP utilizan los distintos flujos de tráfico para el establecimiento de etiquetas (que en este caso son cabeceras ATM). El funcionamiento de estos dispositivos puede describirse resumidamente de la siguiente forma: Un dispositivo de conmutación IP funciona como un encaminador normal hasta que detecta que existe una cierta cantidad de tráfico dirigida hacia un destino concreto. Una vez detectada esta situación, establece un VC ATM para este flujo de datos concreto. Para realizar correctamente estas funciones se definieron dos nuevos protocolos, uno destinado a establecer la relación entre los flujos de datos y las etiquetas denominado Ipsilon Flow Management Protocol (IFMP); y otro para gestionar las funciones del conmutador ATM y controlar el establecimiento de los CV a través de él, conocido como General Switch Management Protocol (GSMP). 3.6.3 Conmutación de Etiquetas (Tag Switching) de Cisco.- La solución desarrollada por Cisco para la conmutación de etiquetas fue bautizada como "Tag Switching". Esta solución, a diferencia de las comentadas anteriormente, se basa en el establecimiento de "caminos virtuales" entre los extremos de la red sin que existan flujos de datos que estimulen o dirijan el establecimiento de estos caminos virtuales; es decir, estos caminos son establecidos por necesidades de control de la red antes de que existan los flujos de datos que los utilicen. Básicamente una red de conmutación de etiquetas consiste en un conjunto de encaminadores frontera (Tag Edge Routers), encargados de añadir a la entrada y eliminar a la salida la información (tag) de encaminamiento interno, y un conjunto de encaminadores internos, denominados Tag Switching Routers, encargados de conmutar y encaminar los flujo de datos basándose en la etiqueta o "tag" añadida a la entrada. 50 Cesar Antonio Romero Avila Instituto Politécnico Nacional MPLS ESIME Zacatenco 3.6.4 ARIS ( Agregate Route Based IP) DE IBM.- Otro de los gigantes de la industria, IBM, desarrolló su propia solución en el entorno de la conmutación de etiquetas. Esta solución conocida como ARIS es conceptualmente similar a la solución de Cisco anteriormente descrita. En este caso, los caminos, y por tanto las etiquetas asociadas, son establecidos como respuesta a las acciones de control del tráfico. Los encaminadores que soportan esta tecnología son conocidos como "Integrated Switch Routers" (ISR) en la terminología IBM. La idea que subyacía a la hora de diseñar ARIS fue la utilización de ATM como nivel de enlace, por lo que los protocolos propios de ARIS son protocolos "peer-to-peer" o entre iguales, que se establecen entre los ISR implicados directamente a nivel IP y permiten establecer conexiones con los vecinos e intercambiar las correspondientes etiquetas asociadas a los distintos flujos de datos. Este mecanismo de distribución de etiquetas comienza en el extremo donde finaliza el flujo de datos en la red ARIS, también conocido como "egress encaminador", y es propagado de forma ordenada hasta el ISR que comenzó el flujo. Todas las soluciones de conmutación multinivel (incluido MPLS) se basan en dos componentes básicos comunes: la separación entre las funciones de control (encaminamiento) y de envío (forwarding) el paradigma de intercambio de etiquetas para el envío de datos En la figura 3.14 se representa la separación funcional de esas dos componentes, una de control y la otra de envío. La componente de control utiliza los protocolos estándar de encaminamiento (OSPF, IS-IS y BGP-4) para el intercambio de información con los otros encaminadores para la construcción y el mantenimiento de las tablas de encaminamiento. Al llegar los paquetes, la componente de envío busca en la tabla de envío, que mantiene la componente de control, para tomar la decisión de encaminamiento para cada paquete. En concreto, la componente de envío examina la información de la cabecera del paquete, busca en la tabla de envío la entrada correspondiente y dirige el paquete desde el interfaz de entrada al de salida a través del correspondiente hardware de conmutación. 51 Cesar Antonio Romero Avila Instituto Politécnico Nacional MPLS ESIME Zacatenco Figura 3.14 Función Control y Envió Al separar la componente de control (encaminamiento) de la componente de envío, cada una de ellas se puede implementar y modificar independientemente. El único requisito es que la componente de encaminamiento mantenga la comunicación con la de envío mediante la tabla de envío de paquetes y actualice la información. El mecanismo de envío se implementa mediante el intercambio de etiquetas, similar a lo visto para ATM. La diferencia está en que ahora lo que se envía por el interfaz físico de salida son paquetes "etiquetados". De este modo, se está integrando realmente en el mismo sistema las funciones de conmutación y de encaminamiento. CONCLUSIÓN En el capitulo anterior pudimos observar la convergencia de IP/ATM al sobre poner la capacidad de transporte de ATM una inteligencia IP logrando solucionando no del todo la demanda de internet; así es como se busca el principal cimiento de MPLS, la conmutación de etiquetas, tema que abordaremos a continuación. 52 Cesar Antonio Romero Avila Instituto Politécnico Nacional MPLS ESIME Zacatenco 4. CONMUTACION DE ETIQUETAS Teniendo el cimiento principal de la conmutación de etiquetas es necesario explicar sus conceptos básicos, como control de envió, FEC, de funcionamiento para comprender mucho mejor MPLS 53 Cesar Antonio Romero Avila Instituto Politécnico Nacional MPLS ESIME Zacatenco Antes de continuar conviene aclarar un par de términos. Los encaminadores utilizan dos protocolos para retransmitir el tráfico hacia el receptor. Uno retransmite los paquetes hacia su destino y el otro se encarga de encontrar un camino para que los paquetes puedan viajar hacia su destino. El primero de estos protocolos se llamaba antiguamente encaminamiento y el segundo descubrimiento de la ruta. Actualmente, el término encaminamiento se usa para referirse al segundo protocolo, y los términos reenvío y conmutación para referirse al primero. Se debe fundamentar los siguientes términos: Reenvío hacia delante(o simplemente reenvío): Esta operación la realizan tanto conmutadores como encaminadores y consiste básicamente en encaminar un paquete recibido por la línea de entrada en base a unos campos que contiene el paquete. Etiqueta: una etiqueta es un identificador de tamaño fijo que tiene significado local. Se usa para reenviar paquetes. Un dispositivo de conmutación de etiquetas reemplazará la etiqueta de un paquete antes de reenviarlo. LSR (Label Switching Router): encaminador de conmutación de etiquetas Dispositivo que implementa la conmutación de etiquetas. LER (Label Edge Router): encaminador de etiquetas frontera. Nodo que conecta un dominio de conmutación de etiquetas con un nodo externo al dominio, bien porque no soporta la conmutación de etiquetas o porque pertenece a otro dominio de conmutación de etiquetas. LSP (Label Switched Path): camino de conmutación de etiquetas. Camino a través de uno o más LSRs en un nivel de la jerarquía, que siguen los paquetes de una FEC particular. 54 Cesar Antonio Romero Avila Instituto Politécnico Nacional MPLS ESIME Zacatenco Figura 4.1 Componentes de Control y Reenvió 4.1 La Clase de Equivalencia Funcional FEC (Funtional Equivalence Class) La clase de equivalencia funcional se usa para describir una asociación de paquetes a una dirección destino, o lo que es lo mismo: grupo de paquetes IP que se reenvían de la misma manera (ejemplo: por el mismo camino, con el mismo tratamiento en el reenvío) [RFC3301]. También se puede asociar el valor de la FEC a una dirección destino y a una clase de tráfico. La clase de tráfico esta asociada habitualmente a un número de puerto destino. Uno de los motivos por los que se utiliza la FEC es porque permite agrupar paquetes en clases. Gracias a esta agrupación, el valor de la FEC en el paquete se puede utilizar para establecer prioridades, de tal forma que se da más prioridad a unos FECs sobre otros. Se pueden usar las FECs para dar soporte a operaciones eficientes de QoS (calidad de servicio). Por ejemplo, se pueden asociar FECs de alta prioridad a tráfico de voz en tiempo real, de baja prioridad a correo, etc. MPLS, para establecer la relación entre una FEC y un paquete, usa la etiqueta. Dicha etiqueta identifica una FEC específica. Para diferentes clases de servicio se utilizarán diferentes FECs y sus etiquetas asociadas. 55 Cesar Antonio Romero Avila Instituto Politécnico Nacional MPLS ESIME Zacatenco Una parte esencial de la tabla de encaminamiento mantenida por un encaminador es la dirección del siguiente encaminador. Un paquete perteneciente a una FEC asociado a una determinada entrada de la tabla se reenviará al siguiente encaminador según esté especificado en dicha tabla. 4.1.1 Escalabilidad y grado de granulado.- Un aspecto importante de una FEC es su grado de granulado. Si consideráramos una FEC en la que se incluyeran todos los paquetes en los que la dirección destino del nivel de red coincidiera con un determinado prefijo de dirección, tendríamos un granulado grueso. Como contrapartida, el sistema sería muy escalable. El inconveniente es que con un granulado grueso no podríamos diferenciar diferentes tipos de tráfico y por tanto no permitiría clases de tráfico ni operaciones de QOS. En el otro extremo tendríamos el granulado fino, en la que una FEC podría incluir sólo los paquetes pertenecientes a una aplicación entre dos ordenadores, es decir, paquetes que tengan las mismas direcciones origen y destino, los mismos puertos e incluso la misma clase de servicio. En este caso tendremos más clasificaciones de tráfico, más FECs, más etiquetas y una tabla de encaminamiento más grande. En consecuencia, una red de conmutación de etiquetas permite distintos grados de granulado de la FEC. 4.2 Funciones de Control y Reenvió Podemos distinguir claramente dos componentes: el componente de control y el componente de reenvío. El componente de control utiliza los protocolos estándar de encaminamiento, como OSPF y BGP. Utilizando estos protocolos los encaminadores intercambian información de encaminamiento para construir y mantener las tablas de encaminamiento. Además el componente de control debe crear las asociaciones entre etiquetas y FECs y distribuir esta información (Figura 4.2). 56 Cesar Antonio Romero Avila Instituto Politécnico Nacional MPLS ESIME Zacatenco Figura 4.2 Funciones de Reenvío y Encaminamiento El componente de reenvío envía los paquetes desde la entrada hacia la salida. Para reenviar los paquetes, el componente de reenvío examina la información de la cabecera del paquete, busca en la tabla de encaminamiento la entrada correspondiente y reenvía el paquete. Por tanto, el componente de reenvío consiste en el conjunto de procedimientos que usa el encaminador para tomar la decisión sobre el reenvío de un paquete. Estos algoritmos definen la información del paquete que utiliza el encaminador para encontrar una entrada en la tabla de encaminamiento, así como los procedimientos exactos que el encaminador utiliza para encontrar la entrada. Cada encaminador de la red implementa ambos componentes. Podríamos ver el encaminamiento del nivel de red como una composición de ambos componentes (control y reenvío) implementada de una manera distribuida por el conjunto de encaminadores que conforman la red. La ventaja fundamental de separar ambos componentes es la posibilidad de modificar uno de ellos sin modificar el otro. 4.3 Alternativas para el Transporte de la Etiqueta La decisión del reenvío se basa en uno o más campos del paquete (Figura 4.3). 57 Cesar Antonio Romero Avila Instituto Politécnico Nacional MPLS ESIME Zacatenco Figura 4.3 Paquete con etiquetas El protocolo IP y los números de puerto se usan en la FEC y en las decisiones de reenvío. Estos campos identifican el tipo de tráfico que reside en la parte de datos del datagrama IP, por lo que son muy importantes en redes que admiten diferentes servicios de QoS para diferentes tipos de tráfico. ATM y Frame Relay (tecnologías del nivel de enlace) llevan la etiqueta en la cabecera del paquete. ATM puede llevar la etiqueta en el campo VCI o en el VPI de la cabecera, mientras que en Frame Relay estará en el campo DLCI de la cabecera. En DWDM la etiqueta puede asociarse con una longitud de onda en la fibra. Si esta fuera la única opción, en tecnologías como ethernet que no disponen de un campo para poder llevar la etiqueta en la cabecera del nivel de enlace, no se podría emplear la conmutación de etiquetas. La solución a este problema consiste en transportar la etiqueta en un campo específico para la etiqueta, que se inserta entre la cabecera del nivel de enlace y la cabecera del nivel de red. Esta cabecera se denomina "cabecera shim" (algo así como cabecera de relleno). De este modo se permite cualquier tecnología o combinación de tecnologías del nivel de enlace. Ej: conmutación de etiquetas en redes ethernet. El hecho de llevar la etiqueta en el campo VCI de las células ATM permite que un conmutador ATM funcione como un LSR siempre que tenga el software de control apropiado. La cabecera shim está situada en una posición donde la mayoría de los encaminadores pueden procesarla por software, por lo que los encaminadores convencionales pueden convertirse en LSRs siempre que tengan el software apropiado. 4.4 La Tabla de Encaminamiento 58 Cesar Antonio Romero Avila Instituto Politécnico Nacional MPLS ESIME Zacatenco Una tabla de encaminamiento está constituida por múltiples entradas (Figura 4.4). Cada entrada consta de: 6 Etiqueta de entrada Una o más subentradas: Etiqueta de salida Interfaz de salida Dirección del siguiente salto Figura 4.4 Tabla de Encaminamiento Puede haber más de una subentrada, puesto que hay que tratar los paquetes de difusión. De esta forma se puede enviar un paquete por múltiples interfaces de salida. Puede existir una tabla de encaminamiento única o por interfaz, en cuyo caso a la hora de encaminar un paquete habrá que saber la interfaz por donde ha entrado el paquete. La tabla está indexada por el valor de la etiqueta, de tal forma que la búsqueda en la tabla es inmediata. Necesitaremos un solo acceso a memoria, lo que se traduce en un acceso rápido. La tabla o tablas de encaminamiento son mantenidas por el LSR. Un LSR mantiene un repositorio de etiquetas libres. Cuando se inicializa un LSR el repositorio contiene todas las etiquetas que el LSR puede usar para asociaciones locales. Cuando un LSR crea una asociación toma una etiqueta del repositorio y cuando la destruye la vuelve a depositar en el repositorio. Si el LSR tiene una tabla de encaminamiento por interfaz, tendrá que tener un repositorio con etiquetas por interfaz. 4.5 Asociación de Etiquetas a FEC´s 59 Cesar Antonio Romero Avila Instituto Politécnico Nacional MPLS ESIME Zacatenco 4.5.1 Asociación Local y Asociación Remota.Asociación local: el encaminador local establece la asociación entre la etiqueta y la FEC. Por tanto, la etiqueta pertenecerá al encaminador. Asociación remota: un encaminador vecino será el que establezca la asociación, por lo que el encaminador local recibirá la asociación de la etiqueta. El componente de control usa ambos tipos de asociaciones para poblar su tabla de encaminamiento con etiquetas de entrada y salida. 4.5.2 Asociación de etiquetas río abajo (Downstream).- Figura 4.5 Asociación Downstream) La asociación de la etiqueta a la FEC la realiza el encaminador que está río abajo (Rd) respecto al flujo de paquetes. Por tanto, en la tabla de encaminamiento de Ru tendremos como etiquetas de salida las etiquetas de la asociación remota (puesto que las ha elegido el encaminador que está río abajo) y como etiquetas de entrada las de la asociación local (Figura 4.5). Ejemplo: Ru le manda un paquete a Rd. Este paquete habrá sido identificado con anterioridad como perteneciente a una FEC y tendrá una etiqueta (E) asociada a ese FEC. Por tanto Ru le habrá puesto al paquete como etiqueta de salida E. 4.5.4 Asociación de etiquetas río arriba (Upstream).- 60 Cesar Antonio Romero Avila Instituto Politécnico Nacional MPLS ESIME Zacatenco Figura 4.6 Asociación upstream La asociación de la etiqueta a la FEC la realiza el encaminador que está río arriba (Ru) respecto al flujo de paquetes. Por tanto, en la tabla de encaminamiento de Ru tendremos como etiquetas de salida las etiquetas de la asociación local (puesto que es éste encaminador el que las ha elegido) y como etiquetas de entrada las de la asociación remota. En MPLS sólo se utiliza la asociación de etiquetas río arriba. 4.5.5 Asociación de Etiquetas Dirigida por Control o por Datos.- Un LSR crea o destruye asociaciones entre etiquetas y FECs en respuesta a un evento. Este evento puede deberse a que recibe información de control o a que debe reenviar paquetes. La asociación de etiquetas a FECs dirigida por control se establece de antemano. La asociación de etiquetas a FECs dirigida por los datos ocurre dinámicamente, a medida que fluyen los paquetes. Normalmente, ambos tipos de asociaciones se usan conjuntamente. 4.6 Intercambio de Etiquetas: Label Swapping El algoritmo empleado por el componente de reenvío se basa en el intercambio de etiquetas. Cuando un LSR recibe un paquete extrae el valor de la etiqueta y accede con él a la tabla de encaminamiento. En dicha tabla de encaminamiento encontrará el nuevo valor de la etiqueta que ha de ponerle al paquete antes de reenviarlo, así como la interfaz de salida por donde ha de mandarlo. También podrá encontrar información sobre si debe o no encolar el mensaje. 61 Cesar Antonio Romero Avila Instituto Politécnico Nacional MPLS ESIME Zacatenco El algoritmo de reenvío se suele implementar en hardware por su sencillez. Esto repercute favorablemente en el rendimiento del LSR. Veamos un ejemplo en la figura 4.7: Figura 4.7 Label Swapping La etiqueta 45 identifica el LSP entre el usuario A y el LSR 1. La etiqueta 45 identifica el LSP entre el usuario A y el LSR 1. La etiqueta 25 identifica el LSP entre el LSR 2 y el LSR 3. La etiqueta 28 identifica el LSP entre el LSR 3 y el usuario B. CONCLUSIÓN En el capitulo anterior se explicaron los conceptos principal de funcionamiento de MPLS, la conmutación de etiquetas y las clases de equivalencias funcional, ya que a partir de estos conceptos se puede entender la arquitectura de MPLS, tema que será tratado a continuación. 62 Cesar Antonio Romero Avila Instituto Politécnico Nacional MPLS ESIME Zacatenco 5. ARQUITECTURA MPLS Una vez vistos los conceptos fundamentales de la conmutación de etiquetas, veamos los beneficios de MPLS, y su funcionamiento global. En MPLS, la asignación de un paquete a una FEC se realiza cuando el paquete entra en la red asignándole a dicho paquete una etiqueta. En los siguientes saltos sólo se usará la etiqueta para determinar la interfaz por donde reenviar el paquete, por lo que no será necesario analizar la cabecera del nivel de red. La etiqueta se usa como índice en la tabla de encaminamiento donde se obtiene el siguiente salto y la nueva etiqueta con la que sustituir la anterior. Hay que recordar que las etiquetas son locales a los encaminadores. En MPLS los conmutadores pueden realizar el reenvío, pero éstos no tienen necesidad de analizar las cabeceras del nivel de red. Ventajas de basar el reenvío en las etiquetas en vez de en la cabecera del nivel de red: Dado que un paquete se asigna a una FEC cuando entra en la red, el encaminador frontera que encapsula el paquete podrá usar toda la información 63 Cesar Antonio Romero Avila Instituto Politécnico Nacional MPLS ESIME Zacatenco que tenga sobre el paquete. Incluso información que no esté en la cabecera del nivel de red. Por ejemplo podrá usar información del nivel de transporte, como los números de puerto, para asignar paquetes a FECs. Por tanto, gran parte del trabajo se realiza antes de que el tráfico entre en la red. Con el encaminamiento convencional sólo se puede examinar la cabecera del nivel de red. Un paquete que entra en la red por un determinado encaminador puede etiquetarse de distinta forma que si hubiera entrado por otro. Por tanto, se pueden tomar decisiones dependientes del encaminador frontera que encapsula el paquete. Esto no se puede hacer en el encaminamiento convencional porque la identidad del encaminador frontera que introdujo el paquete en la red no viaja con el paquete. Se podría forzar a un paquete a seguir una ruta elegida explícitamente antes o en el momento que el paquete entre en la red, en vez de elegirse por el algoritmo dinámico de encaminamiento a medida que el paquete fluye por la red. Esto podría hacerse para permitir la ingeniería de tráfico. En el encaminamiento convencional el paquete tendría que llevar la información de la ruta (encaminamiento fuente). En MPLS se puede usar una etiqueta para representar la ruta, de tal forma que el paquete no tiene por qué llevar la información de la ruta. Algunos encaminadores analizan la cabecera del nivel de red para determinar la clase de servicio a la que pertenece el paquete así como para determinar el siguiente salto. Con la información de la clase de servicio el encaminador podrá o no aplicar alguna disciplina planificada a los paquetes. MPLS permite, pero no impone, que la clase de servicio se infiera total o parcialmente de la etiqueta. Así podremos decir que una etiqueta representa la combinación de una FEC y una clase de servicio. Como vimos en el apartado de conceptos básicos de la conmutación de etiquetas, MPLS se llama así porque soporta cualquier protocolo de nivel de red así como cualquiera de nivel de enlace. Por tanto, MPLS puede o no, usar tecnologías subyacentes de backbone como ATM, Frame Relay, SDH y DWDM. 64 Cesar Antonio Romero Avila Instituto Politécnico Nacional MPLS ESIME Zacatenco 5.1 Terminología Fusión de etiquetas (label merging): reemplazo de múltiples etiquetas de entrada para una FEC particular por una sola etiqueta de salida. Salto de conmutación de etiquetas (label switched hop): salto entre dos nodos MPLS en los que el reenvío se hace usando etiquetas. Pila de etiquetas (label stack): conjunto ordenado de etiquetas Punto de fusión (merge point): nodo en el que se realiza la fusión de etiquetas. Fusión de circuitos virtuales (VC merge): fusión de etiquetas en donde la etiqueta MPLS se transporta en el campo ATM VPI/VCI. De esta forma se permite que múltiples circuitos virtuales se fusionen en un único circuito virtual. Fusión de caminos virtuales (VP merge): fusión de etiquetas en donde la etiqueta MPLS se transporta en el campo ATM VPI. De esta forma se permite que múltiples caminos virtuales se fusionen en uno sólo. Dos células con el mismo valor VCI se han originado en el mismo nodo. 5.2 Tipos de Nodos Los LSRs frontera son los encargados de etiquetar los paquetes que entran en la red. Para poder realizar este trabajo estos LSRs deben implementar el componente de control y el componente de reenvío tanto del encaminamiento convencional como de la conmutación de etiquetas. Si un paquete entra en la red, el encaminador frontera utilizará el componente de reenvío de la conmutación de etiquetas para determinar la etiqueta que ponerle al paquete. Si el siguiente salto no es un LSR y el paquete no tiene etiqueta, entonces el LSR deberá reenviar el paquete usando el componente de reenvío del encaminamiento convencional. Cuando el paquete va a salir de la red MPLS, el LSR que recibe el paquete le quitará la etiqueta y lo reenviará al siguiente salto usando el componente de reenvío del encaminamiento convencional. Dicho LSR sabrá que el paquete quiere abandonar la red simplemente porque el siguiente salto no es un LSR. 65 Cesar Antonio Romero Avila Instituto Politécnico Nacional MPLS ESIME Zacatenco Los tipos de nodos MPLS son: LSR de entrada (ingress LSR): LSR que recibe tráfico de usuario (por ejemplo datagramas IP) y lo clasifica en su correspondiente FEC. Genera una cabecera MPLS asignándole una etiqueta y encapsula el paquete junto a la cabecera MPLS obteniendo una PDU MPLS (PDU = Protocol Data Unit o unidad de datos del protocolo). LSR de salida (egress LSR): LSR que realiza la operación inversa al de entrada, es decir, desencapsula el paquete removiendo la cabecera MPLS. LSR intermedio o interior: LSR que realiza el intercambio de etiquetas examinando exclusivamente la cabecera MPLS (obteniendo la etiqueta para poder realizar la búsqueda en la tabla de encaminamiento). Figura 5.1 Arquitectura MPLS. 5.3 Protocolos de Distribución de Etiquetas Un protocolo de distribución de etiquetas es un conjunto de procedimientos por los que un LSR le informa a otro de las asociaciones de etiquetas a FECs que ha hecho. A dos LSRs que utilizan un protocolo de distribución de etiquetas para intercambiar información de asociaciones de etiquetas a FECs se les conoce como un par de distribución de etiquetas (label distribution peers) respecto a la información de las asociaciones que intercambian. 66 Cesar Antonio Romero Avila Instituto Politécnico Nacional MPLS ESIME Zacatenco MPLS no asume que haya sólo un protocolo de distribución de etiquetas. De hecho, se están normalizando distintos protocolos de distribución de etiquetas. También se están definiendo nuevos protocolos como el LDP (Label Distribution Protocol). 5.3.1 Distribución y Asignación de Etiquetas.- En MPLS, la decisión correspondiente a la asignación de una etiqueta a una FEC la realiza el LSR que está río abajo (downstream) con respecto a la asociación. El LSR que está río abajo informa al LSR que está río arriba de la asociación. Por tanto, las etiquetas se asignan o asocian río abajo y se distribuyen en el sentido que va del LSR que está río abajo al LSR que está río arriba. MPLS permite variaciones en al asociación río abajo: En Río abajo solicitado (downstream-on-demand) un LSR le solicita explícitamente a su siguiente salto una asociación de una etiqueta a una FEC. Figura 5.2 Rió Abajo En Río abajo no solicitado (unsolicited-downstream) un LSR distribuye asociaciones a LSRs que no lo han solicitado explícitamente. Figura 5.3 Río abajo no solicitado Estas aproximaciones se pueden usar por separado o conjuntamente. En caso de usarlas conjuntamente en una adyacencia de distribución de etiquetas (es decir, cuando tenemos dos LSRs que son pares de distribución de etiquetas) ambos LSRs se tendrán que poner de acuerdo en la técnica a usar. 67 Cesar Antonio Romero Avila Instituto Politécnico Nacional MPLS ESIME Zacatenco 5.4 Formato de las Etiquetas Una etiqueta MPLS tiene 32 bits. Se sitúa entre la cabecera de nivel 2 y 3. 5.4 Ubicación etiqueta MPLS 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 stack para poder apilar etiquetas de forma jerárquica (S) y 8 bits para indicar el TTL (time-to-live) que sustenta la funcionalidad estándar TTL de las redes IP. De este modo, las cabeceras MPLS permiten cualquier tecnología o combinación de tecnologías de transporte, con la flexibilidad que esto supone para un proveedor IP a la hora de extender su red. Figura 5.5 Asociación de etiquetas MPLS 5.5 La Pila de las Etiquetas En MPLS un paquete puede tener más de una etiqueta, organizadas éstas a modo de pila (FIFO). A esto se le conoce como pila de etiquetas. 68 Cesar Antonio Romero Avila Instituto Politécnico Nacional MPLS ESIME Zacatenco Aunque MPLS soporte una jerarquía gracias a la pila de etiquetas, el procesamiento de un paquete etiquetado es completamente independiente del nivel de la jerarquía. Siempre que se procese una etiqueta, ésta será la de la cima, sin importar cuántas etiquetas pueda haber debajo. Se puede considerar a un paquete no etiquetado como un paquete con una pila de etiquetas vacía, si la profundidad de la pila de etiquetas de un paquete es m, a la etiqueta que está al fondo de la pila se le llama etiqueta de nivel 1, a la que está encima etiqueta de nivel 2, y así sucesivamente. En la figura 5.6 tenemos tres dominios. Supongamos que el dominio 2 es un dominio de tránsito. En dicho dominio no se originan paquetes. Tampoco hay paquetes destinados a él. Para anunciar las direcciones del dominio 3 el LSR F le distribuye la información al LSR E. El LSR E le distribuye la información al LSR B el cual se la distribuye al LSR A. No se distribuye la información a los LSRs C y D porque son LSRs interiores. Figura 5.6 Pila de Etiquetas Se usan dos niveles de etiquetas. Cuando el tráfico entra en el segundo dominio se apila una nueva etiqueta en la cima de la pila, por lo que las etiquetas que hubiera en la pila descienden un nivel. 69 Cesar Antonio Romero Avila Instituto Politécnico Nacional MPLS ESIME Zacatenco 5.6 Caminos de Conmutación de Etiquetas (LSP): Reglas de Apilamiento. Un LSP de nivel m para un paquete P es una secuencia de encaminadores <R1,...,Rn> con las siguientes propiedades: R1, el LSR de entrada, es un LSR que apila una etiqueta en la pila de etiquetas de P, resultando una pila de etiquetas de profundidad m. Para todo i, 1<i<n , P tendrá una pila de etiquetas de profundidad m cuando lo reciba el LSR Ri. Mientras P se encuentre entre R1 y Rn-1 su pila de etiquetas nunca tendrá una profundidad menor que m. Para todo i, 1<i<n: P es transmitido desde Ri hasta Ri+1 por medio de MPLS, por ejemplo usando la etiqueta de la cima de la pila como índice de una ILM (Incoming Label Map). Para todo i, 1<i<n: si un sistema S recibe y reenvía P después de que P sea transmitido por Ri pero antes de que P sea recibido por Ri+1 (por ejemplo, Ri y Ri+1 pueden estar conectados vía una subred conmutada de enlace de datos, y S puede ser un conmutador de enlace de datos), entonces la decisión del reenvío de S no está basado en la etiqueta de nivel m, o en la cabecera del nivel de red. Esto puede ser debido a que: o La decisión no se basa en absoluto en la pila de etiquetas o en la cabecera del nivel de red. o La decisión se basa en una pila de etiquetas en la que se han apilado etiquetas adicionales (ejemplo: en un nivel de etiquetas m+k con k>0). En resumen, cuando un LSR etiqueta un paquete ya etiquetado, la nueva etiqueta corresponde a una FEC cuyo LSR de salida es el LSR que asignó la etiqueta que ahora está en la segunda posición en la pila. Consideremos el conjunto de nodos que pudieran ser el LSP de entrada para una FEC F. Entonces hay un LSP para la FEC F que empieza con cada uno de esos nodos. Si alguno de esos LSPs tiene el mismo LSP de salida, entonces podríamos considerar que el conjunto de esos LSPs forma un árbol, cuya raíz es el LSP de salida. Podríamos entonces hablar de un árbol LSP para una FEC F. 70 Cesar Antonio Romero Avila Instituto Politécnico Nacional MPLS ESIME Zacatenco 5.6.1 Extracción en el Penúltimo Salto.- Si <R1,...,Rn> es un LSP de nivel m para el paquete P, P puede ser transmitido desde Rn-1 a Rn con una pila de etiquetas de profundidad m-1. Se puede extraer de la pila de etiquetas en el penúltimo LSR del LSP, en vez de en el LSP de salida. Desde una perspectiva arquitectónica, esto es apropiado. El propósito de la etiqueta de nivel m es hacer llegar el paquete a Rn. Una vez que Rn-1 ha decidido mandar el paquete a Rn, la etiqueta ya no tiene ninguna funcionalidad y por tanto no es necesario transportarla. La extracción en el penúltimo salto tiene una ventaja: si no se hace, cuando el LSP de salida reciba el paquete, éste mirará la etiqueta de la cima de la pila y determinará que es el LSP de salida. Entonces deberá hacer una extracción de la pila y examinar lo que quede del paquete. Si hubiera otra etiqueta en la pila, el LSP de salida miraría esta etiqueta y reenviaría el paquete basándose en la información que ha obtenido. (En este caso, el LSP de salida para el paquete del LSP de nivel m es también un nodo intermedio para un LSP de nivel m-1). Si no hubiera etiquetas en la pila, entonces se reenviaría el paquete utilizando la dirección de destino del nivel de red. Esto obliga a que el LSR de salida haga dos consultas: bien dos consultas de etiquetas o una consulta de etiqueta seguido de una consulta de dirección. Con esta técnica, el LSR de salida sólo tiene que hacer una consulta y requiere que el penúltimo nodo haga una consulta. La creación del "camino rápido" del reenvío en un producto de conmutación de etiquetas puede ser muy favorecedor si se sabe que sólo requerirá una consulta: Se puede simplificar el código si se asume que sólo se necesitará una consulta. Se puede basar el código en un "presupuesto de tiempo" que asuma que sólo se necesitará una consulta. De hecho, cuando se usa la extracción en el penúltimo salto, el LSP de salida puede incluso no ser un LSR. No obstante, algunos motores hardware de conmutación 71 Cesar Antonio Romero Avila Instituto Politécnico Nacional MPLS ESIME Zacatenco pueden no ser capaces de extraer de la pila de etiquetas, por lo que esto no puede ser requerido universalmente. También puede haber situaciones en las que no es deseable la extracción en el penúltimo salto. Por tanto, el penúltimo nodo extraerá la etiqueta de la pila de etiquetas si el LSR de salida se lo pide explícitamente, o si el siguiente nodo en el LSP no soporta MPLS. (Si el siguiente nodo en el LSP no soporta MPLS, y no hace tal petición, el penúltimo nodo no tendrá manera de saber que es el penúltimo nodo). Un LSR que es capaz de extraer de la pila de etiquetas deberá realizar la extracción en el penúltimo salto cuando se lo pida el LSR del mismo nivel (su "igual" o peer) que está río abajo. Las negociaciones iniciales del protocolo de distribución de etiquetas deben permitir a cada LSR determinar si sus LSRs vecinos son capaces de extraer de la pila de etiquetas. Un LSR no le debe pedir a su "igual" de distribución de etiquetas que extraiga de la pila de etiquetas a no ser que sea capaz de hacerlo. Un nodo de salida siempre podrá interpretar la etiqueta de la cima de un paquete recibido cuando se utiliza la extracción en el penúltimo salto si se cumplen las reglas de alcance y unicidad expuestas en el apartado anterior. 5.6.2 Ejemplo 1.- En la figura 5.7 se puede apreciar que el LSR F realiza una doble consulta, lo que repercute en el rendimiento de dicho nodo. Para mejorar el rendimiento se usa la extracción en el penúltimo salto. Figura 5.7 Uso de las etiquetas en los nodos 72 Cesar Antonio Romero Avila Instituto Politécnico Nacional MPLS ESIME Zacatenco Pasos: Primero: llega un paquete IP al encaminador A. Segundo: el encaminador etiqueta el paquete y se lo reenvía al encaminador C. Tercero: el encaminador C realiza una búsqueda en la tabla, intercambia la etiqueta y reenvía el paquete al encaminador E. Cuarto: el encaminador E realiza una búsqueda en la tabla, intercambia la etiqueta y reenvía el paquete la encaminador F. Quinto: el encaminador F realiza una búsqueda en la tabla, extrae la etiqueta, realiza una búsqueda de nivel 3 y reenvía el paquete hacia un encaminador externo. 5.6.3 Ejemplo 2.- En la figura 5.8 podemos apreciar que el LSR F realiza una consulta menos que en el caso anterior. Figura 5.8 Uso de etiquetas en los nodos Pasos Primero: llega un paquete IP al encaminador A. Segundo: el encaminador etiqueta el paquete y se lo reenvía al encaminador C. Tercero: el encaminador C realiza una búsqueda en la tabla, intercambia la etiqueta y reenvía el paquete al encaminador E. 73 Cesar Antonio Romero Avila Instituto Politécnico Nacional MPLS ESIME Zacatenco Cuarto: el encaminador E realiza una búsqueda en la tabla, extrae la etiqueta y reenvía un paquete IP puro al encaminador F. Quinto: El encaminador F realiza únicamente una búsqueda de nivel 3 y reenvía el paquete hacia un encaminador externo. 5.6.4 Ejemplo 3 LSPs jerárquicos.- Ocurre cuando se crea un nuevo LSP dentro de un túnel de un LSP de orden superior ya existente. En la figura 5.10 se muestra cómo los LSPs de orden inferior disparan la formación de un LSP de orden superior. Los nodos en el borde de dos regiones con respecto a las características de multiplexado, son los responsables de la agregación de los LSPs. Figura 5.10 LSP de orden inferior y superior R0, R1, R9 y R10 manejan paquetes. S0 y S8 son conmutadores SONET/SDH. O3 y O7 son conmutadores electro-ópticos. P4, P5 y P6 son conmutadores ópticos. Entre R0-R1 y R9-R10 hay enlaces de 500 Mbps. Entre R1-S2 y S8-R9 hay un enlace de OC-12 (mayor capacidad que el anterior). Entre S2-O3 y O7-S8 hay un enlace de OC-192 (mayor capacidad que el anterior). Entre O3-O7 hay un enlace de fibra. 74 Cesar Antonio Romero Avila Instituto Politécnico Nacional MPLS ESIME Zacatenco LSP1 está configurado de R0 a R10 con ancho de banda de 500 Mbps. LSP1 está anidado dentro de LSP2,3,4 que son LSPs de orden superior. Los nodos en el borde de dos regiones con respecto a las características de multiplexado, son responsables de la formación de LSPs de orden superior o de agregar los LSPs de nivel inferior. La figura 5.11 muestra el proceso de formación del LSP. Figura 5.11 Formación de LSP La formación del LSP1 dispara la formación de los LSPs 2, 3 y 4. R0 manda una petición de camino (Path) a R1. La llegada de dicha petición a R1 dispara la formación del LSP1 de R1 a R9 y así sucesivamente hasta que se dispare la formación del LSP4 en O3. Una vez establecido el LSP4, el mensaje tercero de Path se manda a través del LSP4 (o sea, por el túnel) . Este proceso continua hasta que se cree el primer LSP y se forme la jerarquía. 5.7 Control de Etiquetas. Antes de continuar conviene aclarar lo que es un prefijo de dirección. En vez de utilizar la máscara de subred se puede utilizar un valor llamado valor de prefijo. Esto se utiliza en la agregación de direcciones (esto se explicará en otro punto posteriormente). El valor de prefijo describe cuántos bits se deben usar como máscara. Ejemplo: 138.100.15.1/24 75 Cesar Antonio Romero Avila Instituto Politécnico Nacional MPLS ESIME Zacatenco El número 24 es el valor prefijo e indica que la máscara de subred son 24 bits, dejando los restantes 8 bits para identificar a los hosts. En MPLS existen dos formas para asignar etiquetas a FECs: independiente y ordenado. 5.7.1 Control Independiente.- Cuando un LSR reconoce una FEC realizará una asociación de forma independiente de una etiqueta a esa FEC. Una vez echo esto informará de dicha asociación a los LSRs vecinos. Esta es la forma de trabajar en el encaminamiento IP convencional: cada nodo encamina los paquetes de forma independiente, apoyándose en que el algoritmo de encaminamiento converge rápidamente garantizando de esta forma que los datagramas son entregados de forma correcta. Ejemplo: Figura 5.12: el LSR A utiliza OSPF para informarle al LSR C el prefijo de dirección 192.165/16 Figura 5.12 Figura 5.13: cuando C recibe el prefijo, asigna de forma independiente una etiqueta a esta FEC e informa de dicha asociación a los LSRs vecinos. Figura 5.13 76 Cesar Antonio Romero Avila Instituto Politécnico Nacional MPLS ESIME Zacatenco 5.7.2 Control Ordenado.- La asignación de etiquetas ocurre de forma ordenada desde un extremo del LSP hacia el otro. El establecimiento del LSP puede iniciarse por el LSR de entrada o por el LSR de salida del LSP. Ejemplo: supongamos que el establecimiento del LSP lo inicia el LSR de salida. Figura 5.14: el nodo D se da cuenta que es el LSR de salida para el prefijo de dirección 192.168/16. Dicho nodo asigna una etiqueta a esta FEC e informa de dicha asociación a su vecino. Figura 5.14 Figura 5.15: cuando el LSR C recibe dicha información, asigna una etiqueta e informa de dicha asociación a sus LSRs vecinos. De esta forma, el establecimiento del LSP se hace de forma ordenada desde el LSR de salida al LSR de entrada. Figura 5.15 Si se pretende garantizar que el tráfico de una FEC particular sigue un camino que tiene una serie de propiedades, se debe usar el control ordenado. MPLS permite tanto el control independiente como el control ordenado. Un LSR sólo necesita implementar uno u 77 Cesar Antonio Romero Avila Instituto Politécnico Nacional MPLS ESIME Zacatenco otro. Un inconveniente del control independiente ocurre cuando dos vecinos no están de acuerdo en las FECs que van a usar. Cuando esto ocurre algunas FECs no tendrán LSPs asociadas a ellas. El control ordenado facilita la prevención de bucles. También permite a los administradores de la red controlar cómo se establecen los LSPs. Un inconveniente es que se tarda más tiempo en establecer un LSP que con el control independiente, debido a que las asociaciones deben propagarse a través de una región entera antes de que se establezca el LSP. Si se quiere que el control ordenado sea efectivo, se deberá implementar en todos los LSRs. 5.8 Conmutadores ATM como LSR. Como ya se mencionó, se pueden utilizar conmutadores ATM como LSRs si se les dota del software adecuado. Los conmutadores ATM utilizan el puerto de entrada y el valor del campo VPI/VCI como índice de la tabla de donde obtienen el puerto de salida y el valor de salida del campo VPI/VCI. Por tanto, si se codifica el valor de la etiqueta en estos campos se podrán utilizar estos conmutadores como LSRs. Por tanto, se podrán codificar las etiquetas de tres formas distintas: Codificación SVC (Switched Virtual Circuit: circuito virtual conmutado). Se utiliza el campo VPI/VCI. Con esta técnica el LSR no puede apilar ni extraer de la pila de etiquetas. Codificación SVP (Switched Virtual Path: camino virtual conmutado). Se utiliza el campo VPI para codificar la etiqueta de la cima de la pila de etiquetas y el campo VCI para codificar la segunda etiqueta de la pila si existe. Esta técnica permite utilizar la conmutación-VP ATM. De esta forma los LSPs son SVPs y el protocolo de distribución de etiquetas sirve como protocolo de señalización ATM. Con esta técnica, el ATM-LSR de salida del camino virtual realiza una operación de extracción de la pila. El inconveniente de esta técnica es que si la red tiene un camino virtual a través de una red no ATM, el campo VPI no estará disponible para que lo use MPLS. 78 Cesar Antonio Romero Avila Instituto Politécnico Nacional MPLS ESIME Zacatenco Codificación multipunto SVP. Se utiliza el campo VPI para codificar la etiqueta de la cima de la pila de etiquetas y parte del campo VCI para codificar la segunda etiqueta si existe. El resto de este campo se utiliza para identificar al LSP de entrada. Con esta técnica se puede utilizar la conmutación-VP ATM para permitir caminos virtuales multipunto-a-punto. Esta técnica depende de la posibilidad para poder asignar valores de 16 bits al campo VCI de cada conmutador ATM de tal forma que no se pueda asignar el mismo valor VCI a dos conmutadores diferentes. Si hay más etiquetas en la pila de las que se pueden codificar en la cabecera ATM entonces se tendrán que combinar las codificaciones ATM con la encapsulación genérica. 5.8.1 Interacción entre las Técnicas de Codificación.- Puede ocurrir que dos LSRs que están en el mismo LSP utilicen técnicas de codificación diferentes. Cuando un LSR recibe un paquete etiquetado lo decodifica y obtiene el valor de la etiqueta. Con este valor obtendrá la nueva etiqueta para poder reenviar el paquete y volverá a codificar el nuevo valor de la etiqueta antes de reenviarlo. Los conmutadores ATM no pueden realizar transformaciones de un tipo de codificación a otro, por lo que la arquitectura MPLS especifica que dos conmutadores ATM deberán utilizar, siempre que sea posible, la misma técnica de codificación cuando sean vecinos en el mismo LSP de nivel m. Cuando exista una combinación de LSRs ATM y LSRs que utilicen la cabecera shim MPLS, deberán existir LSRs con interfaces ATM e interfaces shim MPLS. De esa forma el LSR podrá hacer una traducción de un tipo de codificación a otro. 5.8.2 Valores Reservados de Etiquetas 0: representa la "etiqueta explícita nula (NULL) IPv4". Esta etiqueta se podrá encontrar en el caso de que sea la única entrada en la pila de etiquetas e indica que debe ser extraída de la pila de etiquetas y reenviado el paquete basándose en la cabecera del paquete IPv4. 79 Cesar Antonio Romero Avila Instituto Politécnico Nacional MPLS ESIME Zacatenco 1: representa la "etiqueta de alerta del encaminador". Esta etiqueta no puede estar en el último lugar de la pila. 2: representa la "etiqueta explícita nula IPv6". Es igual que el primer paso excepto que se reenvía el paquete basándose en la cabecera IPv6. 3: representa la "etiqueta implícita nula". 4-15: valores reservados 5.9 COMPONENTES DE UN LSR 5.9.1 Base de información del reenvío (FIB: Forwarding Information Base).La FIB se compone de : 1.Entrada para el reenvío con la etiqueta del siguiente salto (NHLFE: Next Hop Label Forwarding Entry). La NHLFE se usa cuando se reenvía un paquete etiquetado. Contiene la siguiente información: El siguiente salto del paquete. La operación a realizar en la pila de etiquetas del paquete, que será una de las siguientes: o Reemplazo de la etiqueta de la cima de la pila de etiquetas con una nueva etiqueta. o Extracción de la pila de etiquetas. o Reemplazo de la etiqueta de la cima de la pila de etiquetas con una nueva etiqueta y posterior apilamiento de una o más nuevas etiquetas en la pila de etiquetas. También puede tener: 80 Cesar Antonio Romero Avila Instituto Politécnico Nacional MPLS ESIME Zacatenco o Encapsulación del nivel de enlace a usar cuando se transmita un paquete. o Forma de codificar la pila de etiquetas cuando se transmita el paquete. 2. Correlación de la etiqueta entrante (ILM: Incoming Label Map). La ILM correlaciona cada etiqueta entrante con un conjunto de NHLFEs. Se utiliza cuando se reenvían paquetes que llegan como paquetes etiquetados. Si la ILM correlaciona una etiqueta particular con un conjunto de NHLFEs que contienen más de un elemento, se deberá elegir exactamente un elemento del conjunto antes de reenviar el paquete. La etiqueta de la cima de la pila se utiliza como índice de la ILM. Puede ser útil hacer que la ILM correlacione una etiqueta con un conjunto que contenga más de una NHLFE por si, por ejemplo, se desea hacer un balance de la carga de tráfico a través de múltiples enlaces. 3. Correlación de la FEC con la NHLFE (FTN: FEC-to-NHLFE) La FTN correlaciona cada FEC con un conjunto de NHLFEs. Se utiliza cuando se quieren reenviar paquetes que no llegan etiquetados, pero que se quieren reenviar etiquetados. Si la FTN correlaciona una etiqueta particular con un conjunto de NHLFEs que contienen más de un elemento, se deberá elegir exactamente un elemento del conjunto antes de reenviar el paquete. 5.9.2 Módulo de Determinación de la Ruta.- Este módulo construye las entradas de la FIB en una operación MPLS. Con la información de los protocolos de encaminamiento se determinan las FECs para las que se quieren crear NHLFEs. También se obtiene la información del siguiente salto que se necesita para crear la NHLFE. Dado que en MPLS sólo se permite la asociación de etiquetas río abajo, una NHLFE no tendrá información de la etiqueta de salida hasta que el LSR del mismo nivel que está río abajo le asigne una etiqueta. Un LSR puede construir las NHLFEs de dos formas: 81 Cesar Antonio Romero Avila Instituto Politécnico Nacional MPLS ESIME Zacatenco Asignando una o más etiquetas para usar como la etiqueta de entrada, creando ILMs para cada una, asociando cada ILM a un conjunto de NHLFEs y distribuyendo las etiquetas asociadas a los LSRs que están río arriba. Creando FTNs para las FECs asociadas con entradas específicas de encaminamiento y asociando cada una a un conjunto de NHLFEs con la información del siguiente salto. La función de determinación de la ruta se usa también para borrar o actualizar las entradas de la FIB cuando las rutas asociadas a una FEC son removidas o cuando cambia la información del siguiente salto. 5.9.3 Módulo de reenvío.- La función de reenvío se basa en la comparación exacta entre una etiqueta y la ILM, que a su vez se correlaciona con una NHLFE. El LSR seguirá las instrucciones de manipulación de la etiqueta que indique la NHLFE y enviará el paquete por la interfaz especificada en la información del siguiente salto. Puede ser que el LSR necesite usar la información de encapsulación de nivel de enlace especificada en la NHLFE para encapsular el paquete antes de enviarlo al siguiente salto. Ejemplo de esto último sería un enlace ethernet, en donde la dirección MAC (Media Access Control: control de acceso al medio) de la interfaz de salida y el siguiente salto se tienen que incluir en la encapsulación ethernet para poder entregar el paquete al siguiente salto. 5.10 Intercambio de Etiquetas (Label Swapping) En el intercambio de etiquetas se consideran dos casos: Si se quiere reenviar un paquete etiquetado, el LSR examinará la etiqueta de la cima de la pila de etiquetas. Con dicha etiqueta, escogerá una ILM y obtendrá la NHLFE. Con la NHLFE obtendrá la nueva etiqueta y la información necesaria para reenviar el paquete. Figura 5.16 Si se quiere reenviar un paquete no etiquetado, el LSR examinará la dirección del nivel de red para determinar la FEC a la que pertenece el paquete. Una vez hecho esto, usará la FTN para correlacionar la FEC con una NHLFE. Con la 82 Cesar Antonio Romero Avila Instituto Politécnico Nacional MPLS ESIME Zacatenco NHLFE sabrá dónde reenviar el paquete y realizará una operación en la pila de etiquetas del paquete. Figura 5.16 Label Swapping En ambos casos, el LSR codificará la nueva pila de etiquetas en el paquete y lo reenviará. 5.11 Operación Global de MPLS. A modo de ejemplo de lo visto anteriormente veamos la operación MPLS. Figura 5.17 Funcionamiento Global de MPLS 1 83 Cesar Antonio Romero Avila Instituto Politécnico Nacional MPLS ESIME Zacatenco Figura 5.18 Funcionamiento Global de MPLS 2 Figura 5.18 Funcionamiento Global de MPLS en tablas Figura 5.19 Funcionamiento Global de MPLS con etiquetas 5.12 Control de Bucles. Prácticamente en todos los protocolos existentes se pueden dar casos de bucles, por ejemplo en el periodo siguiente al fallo de un enlace. 84 Cesar Antonio Romero Avila Instituto Politécnico Nacional MPLS ESIME Zacatenco Dependiendo de la existencia del campo TTL (Time-To-Live: tiempo de vida) se actuará de distinta forma. En el reenvío IP convencional, los paquetes tienen un campo TTL en la cabecera. Cuando el paquete atraviesa un encaminador se decrementa dicho campo. Si el campo TTL llegara a valer cero se descartaría el paquete. De esta forma tenemos un grado de protección contra los bucles que puedan existir debidos a fallos en enlaces, convergencias lentas de los algoritmos de encaminamiento, etc. En muchos casos MPLS actúa de la misma forma. Esto dependerá exclusivamente de cómo sea la cabecera MPLS. En el caso de que exista la cabecera shim, ésta tendrá el campo TTL. Si los valores de las etiquetas están codificados en una cabecera del nivel de enlace (por ejemplo, en el campo VPI/VCI de la cabecera ATM), los paquetes son reenviados por un conmutador del nivel de enlace y si el nivel de enlace no tiene un campo TTL, entonces no se podrá actuar de esta forma. A un segmento de un LSP que contenga una secuencia de LSRs que no puedan decrementar el campo TTL de un paquete, se le llama segmento LSP no TTL. Si se dispone del campo TTL en la cabecera shim, se deberá inicializar éste copiándolo del campo TTL de la cabecera del nivel de red. Del mismo modo que en el reenvío IP convencional, se deberá decrementar en cada salto (LSR). Cuando el paquete salga del LSP se copiará el campo TTL de la cabecera shim al campo TTL de la cabecera del nivel de red. Cuando un paquete sale de un segmento LSP no TTL, el campo TTL deberá reflejar el número de saltos (LSRs) que ha atravesado. Para el caso unicast, se puede propagar la longitud a los LSRs de entrada, de tal forma que estos decrementen el valor TTL antes de reenviarlos al segmento LSP no TTL. En principio, el hardware de los componentes ATM no les permite decrementar el campo TTL, por lo que no habrá protección contra los bucles. Una posible solución a esto es la siguiente: muchos conmutadores ATM pueden limitar la cantidad de espacio del buffer del conmutador que puede consumir un circuito virtual. El objetivo durante los bucles transitorios es permitir que el encaminamiento reconverja, es decir, que las tablas 85 Cesar Antonio Romero Avila Instituto Politécnico Nacional MPLS ESIME Zacatenco de encaminamiento se estabilicen y el bucle desaparezca. Para conseguir esto hay que asegurarse que los encaminadores no se saturen reenviando paquetes que estén metidos en un bucle. En un LSR ATM si los paquetes que pertenecen al bucle consumen sólo una pequeña cantidad del espacio del buffer del conmutador, entonces los conmutadores todavía podrán reenviar paquetes de actualización de encaminamiento, lo que garantizará una convergencia del encaminamiento. Otra solución sería usar una técnica de detección de bucles. La técnica de detección de bucles es opcional y está especificada en [MPLS-ATM] y [MPLS-LDP] 5.13 Agregación. Una forma de particionar el tráfico en FECs es crear una FEC por cada prefijo de dirección que aparece en la tabla de encaminamiento. Gráficamente: Figura 5.20 Trafico de FEC´s Puede ocurrir que el tráfico del conjunto de FECs siga la misma ruta hacia el LSR de salida y que el intercambio de etiquetas sólo se utilice para hacer que el tráfico llegue a dicho LSR. En este caso, en el dominio MPLS, la unión de las FECs es a su vez una FEC. Por tanto habrá que elegir entre: Asociar una etiqueta distinta a cada FEC Asociar una etiqueta a la unión y aplicar dicha etiqueta a todo el tráfico de la unión. Gráficamente: 86 Cesar Antonio Romero Avila Instituto Politécnico Nacional MPLS ESIME Zacatenco Figura 5.21 Asociar una etiqueta a todo el trafico de la unión de FEC´s La arquitectura MPLS define la agregación como el procedimiento mediante el que se asocia una única etiqueta a una unión de FECs, que será a su vez una FEC (en algún dominio) y que aplica dicha etiqueta a todo el tráfico de la unión. La agregación puede reducir la cantidad de etiquetas que se necesitan para manejar un conjunto particular de paquetes, y también puede reducir la cantidad necesaria de tráfico de control de distribución de etiquetas. Dado un conjunto de FECs que pueden ser agregadas en una única FEC, se podrá: Agregarlas en una única FEC. Agregarlas en un conjunto de FECs. No agregarlas. Por tanto se podrá hablar de grado de granulado de la agregación. La agregación más gruesa se corresponderá con el primer punto y la agregación más fina con el tercero. Cuando se utiliza el control ordenado, cada LSR deberá tener, para un conjunto de FECs, el mismo grado de granulado para dichas FECs que el siguiente salto. Cuando se utilice el control independiente se podrá dar el caso en el que dos LSRs adyacentes agreguen un conjunto de FECs de distinta forma. 87 Cesar Antonio Romero Avila Instituto Politécnico Nacional MPLS ESIME Zacatenco Sea Ru el LSR que está río arriba y Rd el LSR que está río abajo. Si el grado de granulado de Ru es menor que el de Rd, Ru distribuirá más etiquetas para el conjunto de FECs que Rd. Por tanto, Ru deberá transformar n etiquetas en m etiquetas, con n>m. Otra opción sería que Ru retirara las n etiquetas y distribuyera un conjunto de m etiquetas que se corresponderían con el grado de granulado de Rd. Si la granularidad de Ru es mayor que la de Rd, tendrá dos opciones: o Adoptar el grado de granulado de Rd. o Correlacionar sus m etiquetas con un subconjunto de las n etiquetas de Rd, siempre y cuando sepa que el encaminamiento será el mismo. En todo momento cada LSR tendrá que saber qué grado de granulado aplicar a las etiquetas que asigna. 5.14 Selección de Ruta. MPLS permite usar dos métodos para seleccionar el LSP de una FEC: Encaminamiento Salto a Salto (Hop By Hop).- El encaminamiento salto a salto es el encaminamiento usual en redes IP. Cada LSR elegirá el siguiente salto hacia donde reenviar los paquetes de una FEC de forma independiente. Encaminamiento Explícito.- Con este tipo de encaminamiento un LSR no podrá elegir el siguiente salto. En vez de eso, un LSR, generalmente el LSR de entrada o el de salida, especificará el conjunto de saltos a usar en el LSP. El encaminamiento explícito permite dos modos de operación: o Encaminamiento explícito estricto: se especifica el LSP entero. o Encaminamiento explícito parcial: se especifica parte del LSP. La secuencia de LSRs que se deben seguir en un LSP especificado mediante encaminamiento explícito estricto, podrá ser elegido dinámicamente por un nodo o por 88 Cesar Antonio Romero Avila Instituto Politécnico Nacional MPLS ESIME Zacatenco configuración. Por tanto el encaminamiento explícito es muy útil para la ingeniería de tráfico y para dar soporte a la QoS. 5.15 Fusión de Etiquetas Un LSR que soporta la fusión de etiquetas, al recibir dos paquetes por dos interfaces de entrada distintas, y/o con etiquetas distintas, puede reenviar ambos paquetes por la misma interfaz de salida y con la misma etiqueta. Gráficamente: Figura 5.22 Fusión de Etiquetas Un LSR que no soporta la fusión de etiquetas, al recibir algún par de paquetes por interfaces distintas o con etiquetas distintas, reenviará dichos paquetes por interfaces distintas o con etiquetas distintas. Los LSRs ATM que usen codificaciones SVC o SVP no soportarán la fusión de etiquetas. Con la fusión de etiquetas sólo se necesita una etiqueta de salida por FEC, mientras que sin fusión de etiquetas el número de etiquetas de salida por FEC podría ser tan grande como el número de nodos de la red. MPLS soporta tanto LSRs con fusión de etiquetas como LSRs sin fusión de etiquetas. Por tanto, se han definido procedimientos que permiten el uso de LSRs que no soportan la fusión de etiquetas, así como procedimientos para permitir que ciertos conmutadores ATM puedan realizar la fusión de etiquetas. 5.15.1 LSRs que No Pueden Fusionar Etiquetas.- Un LSR que soporte la fusión de etiquetas y que esté río arriba sólo necesitará que le manden una etiqueta por 89 Cesar Antonio Romero Avila Instituto Politécnico Nacional MPLS ESIME Zacatenco FEC. Si no soportase la fusión de etiquetas necesitaría que le mandasen múltiples etiquetas por FEC. La arquitectura especifica que a un vecino que esté río arriba que no soporte la fusión de etiquetas, no se le mandarán etiquetas para ninguna FEC, a no ser que lo solicite explícitamente. Dicho vecino podrá realizar múltiples peticiones recibiendo cada vez una nueva etiqueta. Podría ocurrir que el vecino que está río abajo y que está recibiendo dichas peticiones no soporte tampoco la fusión de etiquetas, en cuyo caso le pasará la petición al vecino que esté río abajo. 5.15.2 Procedimientos para que los Conmutadores ATM realicen la Fusión de Etiquetas.- En principio, los conmutadores ATM no soportan la fusión de etiquetas debido a que si se intenta realizar, se podría acabar teniendo células intercaladas de diferentes paquetes. Si esto ocurre será imposible reensamblar los paquetes. Existen métodos para eliminar este problema y poder utilizar conmutadores ATM que exploten la fusión de etiquetas: 5.15.3 Fusión VC.- Nombre aplicado a cualquier técnica que le permita a un conmutador ATM realizar la fusión de etiquetas. Esta técnica requiere encolar las células asociadas a las tramas AAL (ATM Adaptation Layer: nivel de adaptación ATM) hasta que se reciba la última célula. Una vez obtenida la última, se transmiten las células en el mismo orden en el que se recibieron, teniendo sumo cuidado de no intercalarlas con células de otra trama AAL que se esté transmitiendo por el mismo VC. El intercalado de células con distinto VCI está permitido, no siendo así en el caso de células asociadas al mismo VCI, las cuales deberán ser transmitidas, por el mismo VCI, sin ser intercaladas con células recibidas por otras interfaces de entrada (o por la misma interfaz pero con diferente VCI). 90 Cesar Antonio Romero Avila Instituto Politécnico Nacional MPLS ESIME Zacatenco Figura 5.22 Fusión VC El intercalado de células de diferentes VPI/VCIs de entrada en el mismo VPI/VCI de salida hace que el receptor sea incapaz de determinar los límites de la trama a la hora de reensamblar la trama. Los marcadores de fin de trama de múltiples tramas se intercalaran también, lo que provocará que se ensamblen células de una trama con células de otra, produciendo una trama inservible. Para poder fusionar el tráfico en el nivel VPI/VCI, la primera célula de una entrada VPI/VCI no se deberá mandar a una salida VPI/VCI hasta que la última célula de otra entrada VPI/VCI no se haya mandado por la salida VPI/VCI comentada anteriormente. Por tanto, la fusión VC requiere encolar las células que se vayan a fusionar de cada entrada VPI/VCI hasta que la última célula de otra entrada VPI/VCI se haya mandado por esa misma salida VPI/VCI. 5.15.4 Fusión VP con Codificación Multipunto SVP.- Nombre aplicado a cualquier técnica que correlacione números VCI distintos en distintos caminos virtuales (VPs) en interfaces de entrada, al mismo VP en una interfaz de salida. Puesto que se usan VCIs distintos al transmitir las células por la interfaz de salida, no será posible intercalar las células de distintos flujos de entrada en la interfaz de salida. 5.16 Modos de Retención de Etiquetas. Un LSR puede recibir información de asociaciones de etiquetas a FECs que no use. Por tanto, un LSR podrá guardar dicha información o descartarla. Los modos de retención de etiquetas especifican el comportamiento ante tal situación. 91 Cesar Antonio Romero Avila Instituto Politécnico Nacional MPLS ESIME Zacatenco Sea Ru un LSR que está recibiendo asociaciones de etiquetas para FECs de un LSR Rd que no es su siguiente salto para dicha FEC. Si Ru guarda dicha información y por algún motivo Rd pasa a ser su siguiente salto, entonces Ru podrá usar la información de las asociaciones que le había enviado Rd previamente [RFC3301]. 5.16.1 Modo Liberal de Retención de Etiquetas.- Si un LSR soporta el modo liberal de retención de etiquetas, mantendrá las asociaciones entre etiquetas y FECs recibidas de LSRs que no son su siguiente salto para dicha FEC. La ventaja de este modo es que en el caso de que ocurra un cambio en la topología, las etiquetas de la nueva topología estarán ya en el LSR. El inconveniente de este modo es que requiere bastante memoria. 5.16.2 Modo Conservador de Retención de Etiquetas.- Si un LSR soporta el modo conservador de retención de etiquetas, descartará las asociaciones entre etiquetas y FECs recibidas de LSRs que no son su siguiente salto para dicha FEC. La ventaja de este modo es que requiere menos memoria que el modo anterior. El inconveniente de este modo es el coste en tiempo en la obtención de nuevas etiquetas ante un cambio en la topología. 5.17 Espacio de Etiquetas. El espacio de etiquetas se refiere al alcance de una etiqueta en un LSR y cómo este alcance se relaciona con su par adyacente. Se hablará de alcance por interfaz y alcance por plataforma. Se hablará de espacio de etiquetas por interfaz cuando se pueda interpretar una misma etiqueta de forma distinta dependiendo de su interfaz de entrada. Se hablará de espacio de etiquetas por plataforma cuando se interprete una etiqueta de la misma forma independientemente de su interfaz de entrada, siempre y cuando estas interfaces sean comunes con su par LSR. Un LSR puede tener múltiples espacios de etiquetas por plataforma, siempre y cuando pueda distinguir a los pares LSR. 92 Cesar Antonio Romero Avila Instituto Politécnico Nacional MPLS ESIME Zacatenco Por tanto, un LSR no podrá tener múltiples espacios de etiquetas por plataforma si no puede determinar qué interfaces tiene en común con sus pares LSRs. En general, Rd sólo podrá saber si la etiqueta L de la cima de la pila la puso Ru1 o Ru2 si se cumplen las dos condiciones siguientes: Ru1 y Ru2 son los únicos pares de distribución de etiquetas a los que Rd les distribuyó la asociación de la etiqueta L. Ru1 y Ru2 están conectados cada uno directamente a Rd mediante un interfaz punto a punto. CONCLUSION En el capitulo anterior se explico el funcionamiento de la arquitectura MPLS que recae su funcionamiento primordial en la conmutación de etiquetas, así como la administración de las mismas, y la generación de las tablas en los LSR. 93 Cesar Antonio Romero Avila Instituto Politécnico Nacional MPLS ESIME Zacatenco 6 PROTOCOLOS DE DISTRIBUCIÓN DE ETIQUETAS. A medida que se crean y destruyen asociaciones de etiquetas, los LSRs deberán notificarlo a sus vecinos. Para este propósito se utilizan los protocolos de distribución de etiquetas, que a continuación se explicaran principalmente 3: BGP, LDP, RSVP y CRLDP. La arquitectura MPLS define el protocolo de distribución de etiquetas como el conjunto de los procedimientos gracias a los cuales un LSR le informa a otro del significado de las etiquetas usadas para reenviar el tráfico a través de ellos. La arquitectura no impone ningún protocolo específico para la distribución de etiquetas. De hecho se están normalizando distintos protocolos de distribución de 94 Cesar Antonio Romero Avila Instituto Politécnico Nacional MPLS ESIME Zacatenco etiquetas. A grandes rasgos podemos distinguir entre los protocolos nuevos definidos exclusivamente para la distribución de etiquetas y los que incorporan la etiqueta encima de protocolos existentes de encaminamiento. En la bibliografía a esto último se le llama piggybacking. En este último caso se han extendido protocolos existentes para que se pueda utilizar la distribución de etiquetas usando piggybacking. La ventaja fundamental de utilizar piggybacking es que nunca tendremos condiciones de carrera, es decir, como se utiliza un protocolo de encaminamiento para la distribución de etiquetas, nunca se dará el caso de que tengamos la asociación de la etiqueta y no tengamos la información de encaminamiento asociada (asociación entre FECs y siguientes saltos). Otra ventaja radica en el hecho de que al estar utilizando un protocolo existente no sobrecargamos el sistema con nuevos mensajes. El inconveniente es que no siempre es sencillo extender protocolos existentes, puesto que podría ser necesario modificar los mensajes y por tanto tener problemas de compatibilidad con versiones anteriores. Las desventajas de utilizar protocolos nuevos de distribución de etiquetas son la dificultad de evitar las condiciones de carrera y el hecho de estar añadiendo más mensajes en el sistema, por lo que aumenta su complejidad. La ventaja de utilizar protocolos nuevos de distribución de etiquetas es poder dar soporte a dicha distribución de etiquetas cuando no se puede utilizar piggybacking. 6.1 PROTOCOLOS DE ESTADO DURO (HARD-STATE) Y PROTOCOLOS DE ESTADO BLANDO (SOFT-STATE) Conviene aclarar la distinción entre protocolos de estado duro y protocolos de estado blando. Protocolos de estado blando.-Con este tipo de protocolos si no se reciben los mensajes de actualización (update) o refresco de la información de estado, se marcará dicho estado como no válido y se descartará la información. Estos protocolos son 95 Cesar Antonio Romero Avila Instituto Politécnico Nacional MPLS ESIME Zacatenco adecuados en entornos no fiables. El protocolo de reserva de recursos RSVP (Resource ReSerVation Protocol) es un protocolo de estado blando. Protocolos de estado duro.- En ausencia de eventos que disparen una respuesta del protocolo, el estado del protocolo permanecerá sin cambio alguno durante un periodo de tiempo ilimitado. La información de estado deberá cambiarse explícitamente. Este tipo de protocolos requieren una total fiabilidad y por tanto no es de extrañar que la mayoría de estos protocolos se basen en el protocolo de control de transmisión TCP (Transmisión Control Protocol). Como es sabido, TCP es un protocolo fiable orientado a conexión.BGP (Border Gateway Protocol: Protocolo de pasarela externa) y LDP utilizan TCP. 6.2 BGP BGP es un protocolo de encaminamiento usado entre sistemas autónomos. Está siendo utilizado ampliamente para conectar grandes redes de proveedores. El protocolo utiliza mensajes que se envían utilizando conexiones TCP. Los distintos tipos de mensajes que maneja este protocolo son: Open: se utiliza para establecer una relación de vecindad con otro encaminador. Actualización (Update): se utiliza para transmitir información a través de una ruta y/o enumerar múltiples rutas que se van a eliminar. Mantenimiento (Keepalive): utilizado para confirmar un mensaje Open y para confirmar periódicamente la relación de vecindad. Notificación: este tipo de mensajes se envían cuando se detecta una condición de error. Los procedimientos funcionales de BGP son: Adquisición de vecinos: ocurre cuando dos encaminadores situados en diferentes sistemas autónomos se ponen de acuerdo para intercambiar información de encaminamiento regularmente. Un encaminador le enviará a otro un mensaje Open. Si el destino acepta la solicitud le devolverá un mensaje de mantenimiento. 96 Cesar Antonio Romero Avila Instituto Politécnico Nacional MPLS ESIME Zacatenco Detección de vecino alcanzable: una vez realizada la adquisición de vecinos se utiliza este procedimiento para mantener la relación. Periódicamente ambos dispositivos de encaminamiento se envían mensajes de mantenimiento para asegurarse que su par sigue existiendo y desea continuar con la relación de vecindad. Detección de red alcanzable: cada encaminador mantiene una base de datos con las redes que puede alcanzar y la ruta preferida para alcanzar dichas redes. Cuando se realiza un cambio a esta base de datos, el encaminador enviará un mensaje de actualización por difusión. De esta forma el resto de los encaminadores BGP podrán construir y mantener la información de encaminamiento. 6.2.1 MPLS-BGP.- En MPLS se puede utilizar BGP para distribuir la información de asociación de etiquetas para cada ruta que se anuncie. Esto es posible gracias a las extensiones multiprotocolo (MPEs: Multiprotocol Extensions) de BGP versión 4. Para distribuir las etiquetas se utilizan los mensajes de actualización (utilizando piggybacking), los cuales también se utilizan para distribuir la información de las rutas. La etiqueta se codifica en el campo NLRI (Network Layer Reachability Information: información de alcanzabilidad del nivel de red) y para indicar que el campo NLRI contiene una etiqueta, se utiliza el campo SAFI (Subsequent Address Family Identifier: identificador de familias de direcciones consecutivas). Un hablante BGP no podrá utilizar BGP para la distribución de etiquetas hacia un igual a no ser que dicho igual le indique que puede procesar mensajes de actualización con el campo SAFI especificado. 6.2.2 Ventajas de la utilización de MPLS-BGP. Si dos LSRs adyacentes también son hermanos BGP (peers), entonces la distribución de etiquetas se puede realizar sin necesidad de tener otro protocolo de distribución de etiquetas. Supongamos una red con dos clases de LSRs: LSRs exteriores, que hacen de interfaz con otras redes, y LSRs interiores, los cuales sólo transmiten tráfico entre los LSRs exteriores. Si los LSRs exteriores también son hablantes BGP y distribuyen etiquetas MPLS con la 97 Cesar Antonio Romero Avila Instituto Politécnico Nacional MPLS ESIME Zacatenco información de encaminamiento, entonces los LSRs interiores no necesitan recibir ninguna de las rutas BGP de los hablantes BGP. Como se comentó anteriormente, las etiquetas se transportan como parte del campo NRLI en los atributos de extensión multiprotocolo. El AFI indica la familia de direcciones de la ruta asociada. Si el campo NLRI contiene una etiqueta, se le dará un valor de cuatro al campo SAFI para identificar esta situación. El campo NLRI se codifica en una o más tripletas <longitud, etiqueta, prefijo> de la siguiente forma (Figura 6.1): Figura 6.1 Campo NLRI Longitud: este campo se utiliza para indicar la longitud en bits del prefijo de dirección más la etiqueta. Etiqueta: el campo de la etiqueta sirve para transportar una o más etiquetas (lo que corresponde a la pila de etiquetas). Cada etiqueta se codifica en 3 Bytes, donde los 20 bits de más peso contienen el valor de la etiqueta y los bits de menos peso contienen la parte baja de la pila. Prefijo: este campo contiene los prefijos de dirección seguidos de bits de relleno para conseguir que el campo ocupe un número exacto de Bytes. Para retirar una ruta anunciada previamente un hablante BGP podrá: Anunciar una nueva ruta (y una etiqueta) con la misma NLRI que la ruta previa. Listando la NLRI de la ruta previa en el campo de retirada de rutas (Withdrawn Routes Field) de un mensaje de actualización. 98 Cesar Antonio Romero Avila Instituto Politécnico Nacional MPLS ESIME Zacatenco Si se termina una sesión BGP también se retiran todas las rutas anunciadas previamente. Un hablante BGP puede mantener (y anunciar a sus hermanos) más de una ruta hacia un mismo destino siempre que cada ruta tenga sus propias etiquetas. La codificación mencionada previamente permite que un solo mensaje de actualización contenga múltiples rutas, cada una con su(s) propia(s) etiqueta(s). Para el caso en el que un hablante BGP anuncie múltiples rutas a un destino, si la ruta es retirada y la etiqueta(s) se especifica a la vez que la retirada, sólo dicha ruta con su correspondiente etiqueta es retirada. Si la ruta se retira y no se especifica etiqueta, entonces sólo la ruta sin etiquetar correspondiente se retira y se mantienen las rutas etiquetadas. Veámoslo con un ejemplo: Figura 6.2 BGP Hermanos No Adyacentes D le distribuye a A la etiqueta L. A no podrá simplemente apilar L en la pila de etiquetas del paquete y enviar dicho paquete hacia B. D debe ser el único LSR que vea L en la cima de la pila. Antes de que A le envíe el paquete deberá apilar otra etiqueta que habrá obtenido previamente de B. B remplazará esta etiqueta con otra que obtuvo de C. Dicho de otra forma, de haber un LSP entre A y D. Si no existiera dicho LSP, A no podría usar la etiqueta L. Esto siempre será cierto cuando las etiquetas se distribuyan entre LSRs que no son adyacentes, no importando si la distribución se hace por BGP o por cualquier otro método. 6.3 LDP El protocolo de distribución de etiquetas LDP (Label Distribution Protocol) se ejecuta sobre TCP y, por tanto, es un protocolo de estado duro. Dado que se ejecuta sobre TCP, éste le proveerá de fiabilidad en el envío de mensajes. Posteriormente se verá que la única excepción la encontramos en los mensajes de anuncio que se ejecutan sobre UDP. 99 Cesar Antonio Romero Avila Instituto Politécnico Nacional MPLS ESIME Zacatenco La definición según [RFC3036] es la siguiente: el protocolo de distribución de etiquetas es el conjunto de procedimientos mediante los cuales un LSR se comunica con otro para notificarle el significado de las etiquetas para reenviar el tráfico entre ellos. El uso más sencillo de LDP consiste en establecer enlaces unitarios de LSPs. Para hacer esto se puede usar la distribución de etiquetas río abajo no solicitado o río abajo por demanda y es compatible con el control ordenado y con el control independiente. Se podrá usar el modo de retención de etiquetas conservador o el liberal. Pero habrá combinaciones no factibles. Veámoslo con un par de ejemplos: Si los LSRs vecinos utilizan la distribución de etiquetas río abajo no solicitado y el LSR local utiliza el modo conservador de retención de etiquetas, habrá mucho tráfico de liberación de etiquetas. Si los LSRs vecinos utilizan la distribución de etiquetas río abajo por demanda y el LSR local utiliza el modo liberal de retención de etiquetas habrá mucho tráfico de petición de etiquetas. LDP es un protocolo muy útil para los casos en los que se desea establecer un LSP a través de LSRs que no soporten piggybacking (básicamente esta es la única ventaja de LDP). LDP es bidireccional y podrá operar entre LSRs adyacentes o no adyacentes. Figura 6.3 LDP El protocolo de distribución de etiquetas asocia una FEC con cada LSP que crea. Dos LDPs serán pares LDP (LDP peers) cuando ambos LSRs intercambien información 100 Cesar Antonio Romero Avila Instituto Politécnico Nacional MPLS ESIME Zacatenco de asociaciones de etiquetas y FECs. Para intercambiar dicha información establecerán una sesión LDP. 6.3.1 Mensajes LDP.- Los pares LDP se podrán intercambiar cuatro clases de mensajes: Mensajes de descubrimiento (discovery messages): se usan para anunciar y mantener la presencia de un LSR en la red. Un LSR mandará periódicamente por la red mensajes HELLO a través de un puerto UDP con la dirección multicast "todos los encaminadores de esta subred". Mensajes de sesión: se utilizan para establecer, mantener y terminar sesiones entre pares LDP. Cuando un LSR descubre a otro por medio de mensajes HELLO utilizará un procedimiento de iniciación LDP por medio de TCP. Mensajes de anuncio (advertisement messages): se usan para crear, modificar y eliminar asociaciones de etiquetas a FECs. Se transportan vía TCP. Cuando se haya establecido la asociación los pares LDP podrán intercambiarse este tipo de mensajes. Mensajes de notificación: Los mensajes de notificación también se transportan vía TCP. Hay dos tipos de mensajes de notificación: notificaciones de error y notificaciones de aviso. El primer tipo se utiliza para notificar errores fatales, en cuyo caso terminará la sesión y se descartarán todas las asociaciones de etiquetas aprendidas en dicha sesión. El segundo tipo se utiliza para pasarle a un LSR información de la sesión LDP o el estado de algún mensaje anterior. 6.3.2 FECs e identificadores.- Una FEC identificará a un conjunto de paquetes IP que podrán ser enviados a través de un LSP. LDP define dos tipos de FECs: Prefijo de dirección Dirección de host Habrá una correspondencia entre una dirección particular y un prefijo de dirección si la dirección comienza con el prefijo. Habrá una correspondencia entre un paquete y un LSP si existe una correspondencia entre el prefijo de dirección del LSP y la dirección de destino del paquete. 101 Cesar Antonio Romero Avila Instituto Politécnico Nacional MPLS ESIME Zacatenco El procedimiento para correlacionar un paquete a un LSP está formado por una serie de reglas. Estas reglas se aplicarán hasta que el paquete pueda ser correlacionado a un LSP. Las reglas son: Si hay exactamente un LSP con un elemento FEC de dirección host con la misma dirección destino que el paquete, entonces el paquete se correlacionará con ese LSP. Si hay varios LSPs, cada uno con un elemento FEC de dirección host idéntica a la dirección destino del paquete, entonces el paquete se correlacionará con uno de esos LSPs. Si hay una única equivalencia entre un paquete y un LSP, entonces el paquete se correlacionará con ese LSP. Si hay múltiples equivalencias entre un paquete y varios LSPs, entonces el paquete se correlacionará con el LSP que tenga mayor porcentaje de igualdad en el prefijo (es decir, el más largo). Si un paquete debe atravesar un encaminador frontera, y existe un LSP con un elemento FEC de prefijo de dirección que es una dirección de ese encaminador, entonces el paquete se correlacionará con ese LSP. 6.3.3 Identificadores LDP.- Un identificador LDP se utiliza para identificar el espacio de etiquetas de un LSR. Se compone de seis octetos, de los cuales los cuatro primeros identifican al LSR y los dos últimos identifican el espacio de etiquetas de dicho LSR. Como se comentó en capítulos anteriores, el espacio de etiquetas puede ser por interfaz o por plataforma. Si los dos últimos octetos tienen un valor de cero el espacio de etiquetas será por plataforma. La especificación de LDP utiliza la siguiente nomenclatura para representar un identificador LDP: Figura 6.4 Identificador LDP 102 Cesar Antonio Romero Avila Instituto Politécnico Nacional MPLS ESIME Zacatenco 6.3.4 Sesión LDP.- Cuando un LSR utiliza LDP para anunciar más de un espacio de etiquetas a otro LSR, utilizará diferentes sesiones LDP para cada espacio de etiquetas. Como se comentó anteriormente, LDP utiliza TCP. Cuando dos LSRs requieren múltiples sesiones LDP, se establecerán sesiones TCP distintas para cada sesión LDP. En la especificación del protocolo se definen dos fases para el establecimiento de la sesión LDP: Descubrimiento Establecimiento y mantenimiento de sesiones LDP Descubrimiento.- El protocolo de descubrimiento de LDP utiliza UDP como protocolo de transporte. Existen dos modalidades de descubrimiento: básica y extendida. En la modalidad básica el LSR envía periódicamente mensajes HELLO a un puerto bien conocido con la dirección multicast "todos los encaminadores de esta red". Los encaminadores están escuchando continuamente en este puerto a la espera de recibir mensajes HELLO. Por tanto, llegará un momento en el que el LSR conocerá todos los LSRs con los que tiene una conexión directa. Por tanto este mecanismo se utiliza si los LSRs están conectados directamente por medio de un enlace. Los mensajes HELLO transportarán el identificador LDP con el espacio de etiquetas que LSR pretende usar en esa interfaz, además de otro tipo de información. Con la modalidad extendida se permite que dos LSRs que no están conectados directamente establezcan una sesión LDP. Con esta modalidad, un LSR emite periódicamente mensajes HELLO a un puerto (UDP) bien conocido y con una dirección específica, que habrá aprendido de algún modo (por ejemplo, por configuración). Los mensajes HELLO transportarán el identificador LDP con el espacio de etiquetas que LSR pretende usar, además de otro tipo de información. El LSR al que se le están enviando los mensajes HELLO podrá responder o ignorar dicho mensaje. Si decide responder a dicho mensaje deberá mandar periódicamente mensajes HELLO al LSR que inició el proceso. 103 Cesar Antonio Romero Avila Instituto Politécnico Nacional MPLS ESIME Zacatenco La modalidad extendida es útil cuando se ha configurado un LSP entre dos LSRs por ingeniería de tráfico, deseando mandar paquetes ya etiquetados a través de ese LSP. El LSR situado al principio del LSP necesitará saber como etiquetar los paquetes que le enviará la LSR situado al final del LSP. 6.3.5 Establecimiento y mantenimiento de sesiones LDP.- Una vez conocidos los vecinos se podrá establecer la sesión. Cada uno de los LSRs implicados puede jugar un papel activo o pasivo. El establecimiento de una sesión consta de dos fases: Establecimiento de la conexión de transporte Esta fase consiste en el establecimiento de una conexión TCP entre los LSRs implicados, para una nueva sesión LDP. Inicio de la sesión Una vez establecida la conexión TCP los LSRs deben negociar los parámetros de la sesión. Esto se hace intercambiando mensajes de iniciación. Estos parámetros incluyen la versión del protocolo LDP, el método de distribución de etiquetas, valor de los temporizadores, etc. Si el LSRa juega el papel activo, éste iniciará la negociación de los parámetros de la sesión enviando un mensaje de iniciación al LSRb. Este mensaje contendrá tanto el identificador LDP del LSRa como el identificador del LSRb. Cuando un LSR recibe un mensaje de iniciación, mirará dicho mensaje para determinar si los parámetros son aceptables. Si lo son, responderá con su propio mensaje de iniciación proponiendo los parámetros que desea usar y un mensaje de mantenimiento (KeepAlive) para notificar al otro LSR que acepta los parámetros. Si los parámetros no son aceptables, responderá con un mensaje de notificación de error de parámetros rechazados. 104 Cesar Antonio Romero Avila Instituto Politécnico Nacional MPLS ESIME Zacatenco Máquina de estado de la negociación de la sesión LDP A continuación se muestra la Tabla de transición, y el diagrama de transición de estado de inicialización de la sesión. NUEVO ESTA EVENTO DO ESTADO NO EXISTENTE INICIAL IZADO INICIAL IZADO Conexión TCP de sesión establecida Transmitir mensaje de inicio(papel activo) INICIALIZ ADO OPENSEN T Recibir mensaje de inicio aceptable (papel pasivo). OPENREC Acción: transmitir mensajes de inicio y mantenimiento. INICIAL IZADO Recibir cualquier otro mensaje LDP. Acción: transmitir mensaje de notificación de error (NAK) y cerrar la conexión de transporte OPENR EC OPENR EC Recibir mensaje de mantenimiento ENT EXISTENTE OPERACI ONAL Recibir cualquier otro mensaje LDP. Acción: transmitir mensaje de notificación de error (NAK) y cerrar la conexión de transporte. OPENS NO NO EXISTENTE Recibir un mensaje de iniciación aceptable. Acción: OPENREC transmitir un mensaje de mantenimiento. OPENS ENT Recibir cualquier otro mensaje LDP. Acción: transmitir mensaje de notificación de error (NAK) y cerrar la conexión de transporte. OPERA CIONAL OPERA CIONAL OPERA CIONAL NO EXISTENTE Recibir mensaje de finalización. Acción: transmitir mensaje de finalización y cerrar la conexión de transporte. Recibir cualquier otro mensaje LDP Intervalo de tiempo sobrepasado. Acción: transmitir mensaje de finalización y cerrar la conexión de transporte. NO EXISTENTE OPERACI ONAL NO EXISTENTE Diagrama de transición de estado de iniciación de la sesión 105 Cesar Antonio Romero Avila Instituto Politécnico Nacional MPLS ESIME Zacatenco Figura 6.5 Diagrama de Transición de Estado de Iniciación de la Sesión 6.4 Formato de los mensajes. 6.4.1 PDUs LDP.- El intercambio de mensajes entre LSRs pares se realiza mediante el envío de PDUs (PDU: Protocol Data Unit: Unidad de datos del protocolo) LDP. Cada PDU LDP puede transportar más de un mensaje. Cada PDU LDP está compuesto por una cabecera seguida de uno o más mensajes LDP. El formato de la cabecera es el siguiente: Figura 6.6 Cabecera PDU LDP 106 Cesar Antonio Romero Avila Instituto Politécnico Nacional MPLS ESIME Zacatenco Versión: dos octetos que identifican la versión del protocolo. Actualmente la 1 Longitud PDU: dos octetos que especifican la longitud total en octetos de la PDU excluyendo los campos de la Versión y la Longitud de la PDU. La longitud de la PDU es negociable cuando se inicia la sesión LDP. Antes de la negociación, el tamaño máximo admitido es de 4096 octetos. Identificador LDP: campo de 6 octetos definido anteriormente. 6.4.2 Codificación TLV (Type-Length-Value: Tipo-Longitud-Valor).- El protocolo LDP utiliza el esquema de codificación de mensajes conocido como TLV. Figura 6.7 Codificación TLV U: bit de desconocido (Unknown). Si se recibe una TLV desconocida y U = 0, se debe enviar un mensaje de notificación al LSR origen y se ignora el mensaje. Si U = 1 se ignora el mensaje sin notificación. F: bit de reenvío de una TLV desconocida (Forward Unknown). Este campo sólo se utiliza cuando el bit U está activo. Si F = 0 la TLV desconocida no es reenviada. Si F = 1 la TLV desconocida se reenvía . Tipo: campo de 14 bits que define el tipo de mensaje y por tanto indica cómo debe ser procesado el campo Valor. Valor: campo de tamaño variable con la información a ser interpretada como lo especifique el campo Tipo. Este campo puede tener a su vez TLVs. 6.4.3 Codificaciones TLV para los parámetros usados frecuentemente.- TLVs definidas en la versión 1 del protocolo: FEC: esta TLV contendrá las FECs que se intercambian los LSRs. Una FEC podrá ser un prefijo de dirección o una dirección completa de un host. El elemento FEC comodín se utiliza exclusivamente en los mensajes de liberación y retiro de etiquetas. 107 Cesar Antonio Romero Avila Instituto Politécnico Nacional MPLS ESIME Zacatenco Etiquetas: estas TLVs sirven para codificar etiquetas. Las TLVs de etiquetas son transportadas por los mensajes de anuncio, petición liberación y retiro de etiquetas. Tipos de TLVs de etiquetas: o Etiqueta genérica: un LSR utiliza este tipo de TLV para codificar etiquetas que se van a usar en enlaces para los que los valores de las etiquetas son independientes de la tecnología del nivel de enlace subyacente (por ejemplo, PPP y Ethernet). o Etiqueta ATM: un LSR utiliza este tipo de TLV para codificar etiquetas a usar en enlaces ATM. Esta TLV contendrá los valores ATM VPI/VCI. o Etiqueta de retransmisión de tramas (Frame Relay): un LSR utilizará la TLV de etiqueta de retransmisión de tramas para codificar etiquetas a usar en enlaces Frame Relay. Contendrá los valores DLCI de Frame Relay. Lista de direcciones: la TLV de lista de direcciones aparece en los mensajes de dirección y retiro de etiquetas. Actualmente sólo está definido IPv4. Cuenta de saltos: esta TLV aparece como un campo opcional en los mensajes que establecen los LSPs. Calcula el número de saltos LSR a través de un LSP a medida que el LSP se establece. Se puede usar para la detección de bucles. Vector camino: se utiliza conjuntamente con la TLV de cuenta de saltos en los mensajes de petición y asociación de etiquetas para implementar el mecanismo opcional de detección de bucles. Su uso en el mensaje de petición de etiquetas registra el camino de LSRs que ha atravesado la petición. En el mensaje de asociación de etiquetas, registra el camino de LSRs que el mensaje de aviso (Advertisement) ha atravesado para establecer el LSP. Estado: los mensajes de notificación transportan TLVs de estado para especificar los eventos que se están señalizando. Estado extendido: extiende la TLV anterior con información adicional. PDU devuelta: esta TLV puede operar con la TLV de estado. Un LSR la utilizará para devolver parte de la PDU LDP que le envió 108 Cesar Antonio Romero Avila Instituto Politécnico Nacional MPLS ESIME Zacatenco otro LSR. El valor de esta TLV será la cabecera de la PDU y tantos datos de la PDU como sean necesarios por la condición que marque el mensaje de notificación. Mensaje devuelto: se puede usar conjuntamente con la TLV de estado. Sirve para devolver parte de un mensaje LDP al LSR que lo envió. Parámetros HELLO comunes: esta TLV contiene parámetros comunes para manejar los mensajes HELLO. Dirección de transporte IPv4: esta TLV permite que se use una dirección IPv4 al abrir una conexión TCP para una sesión LSP. Número de secuencia de configuración: identifica el estado de configuración del LSR emisor. Se usa para que el LSR receptor pueda detectar cambios en la configuración. Dirección de transporte IPv6: esta TLV permite que se use una dirección IPv6 al abrir una conexión TCP para una sesión LSP. Parámetros comunes de la sesión: esta TLV tendrá los valores propuestos por el LSR emisor para los parámetros que pretende negociar en una sesión LDP. Parámetros de la sesión ATM: esta TLV contiene las capacidades de un LSR ATM. Parámetros de la sesión de retransmisión de tramas: igual que la anterior, pero para retransmisión de tramas. Identificador del mensaje de petición de etiquetas: el valor de este parámetro es el identificador del mensaje de petición de etiquetas. Privada de vendedor (propietaria): usada para transmitir información de privada de vendedor (propietaria). Experimental: para usos experimentales. 109 Cesar Antonio Romero Avila Instituto Politécnico Nacional MPLS ESIME Zacatenco 6.5 Mensajes LDP Todos los mensajes LDP tienen el siguiente formato: Figura 6.8 Formato de mensajes LDP U: bit de mensaje desconocido. Cuando se reciba un mensaje desconocido, si U = 0 se enviará una notificación al origen del mensaje. Si U = 1 simplemente se ignorará. Tipo de mensaje: identifica el tipo del mensaje. Longitud del mensaje: longitud del identificador del mensaje, de los parámetros obligatorios y de los parámetros opcionales Identificador del mensaje: identificador del mensaje. Parámetros obligatorios: conjunto de todos los parámetros obligatorios de los mensajes. Este campo tiene una longitud variable. Algunos mensajes no tienen parámetros obligatorios. Parámetros opcionales: conjunto de los parámetros opcionales de los mensajes. Este campo también es de longitud variable. Todo lo que aparece en un mensaje LDP se podría codificar en una TLV, pero la especificación no utiliza dicha codificación para todos los casos. Los tipos de mensajes que define la especificación son los siguientes: Notificación HELLO Iniciación Mantenimiento 110 Cesar Antonio Romero Avila Instituto Politécnico Nacional Dirección Retiro de dirección Asociación de etiqueta Petición de etiqueta Petición de abandono de etiqueta Retiro de etiqueta Liberación de etiquetas MPLS ESIME Zacatenco A continuación se mostrará el formato de cada uno de estos mensajes. 6.5.1 Mensaje de Notificación.- Este tipo de mensajes es utilizado por un LSR para notificarle a su par LSR de una condición de error o para suministrarle información de aviso. La codificación es la siguiente: Figura 6.9 Formato de Mensaje de Notificación Identificador de mensaje: valor de 32 bits usado para identificar el mensaje. TLV de estado: indica el evento que está siendo señalizado Parámetros opcionales: campo de longitud variable. Contiene cero o más parámetros, cada uno codificado en una TLV. Los parámetros que pueden aparecer son: estado extendido, PDU devuelta y mensaje devuelto. Cuando un LSR recibe un mensaje de notificación que contiene un código de estado que indica un error fatal, éste terminará la sesión LDP cerrando conexión TCP de la sesión y descartará todo estado asociado a la sesión, incluyendo todas las asociaciones de etiquetas a FECs aprendidas en dicha sesión LDP. Clasificación de los eventos que este tipo de mensajes señalizan: 111 Cesar Antonio Romero Avila Instituto Politécnico Nacional MPLS ESIME Zacatenco PDU mal formada o mensaje mal formado. TLV desconocida o mensaje desconocido. Expiración del temporizador del mantenimiento de la sesión. Terminación de la sesión unilateralmente. Eventos de mensajes de iniciación. Eventos resultantes de otros mensajes Errores internos. Eventos diversos. 6.5.2 Mensaje HELLO.- Este tipo de mensajes son intercambiados entre pares LDPs durante la fase de descubrimiento. El formato de este tipo de mensajes es el siguiente: Figura 6.10 Formato de Mensaje HELLO Identificador del mensaje: valor de 32 bits usado para identificar el mensaje. TLV de parámetros comunes HELLO. Especifica los parámetros comunes de los mensajes HELLO. El formato de esta TLV se puede apreciar en la figura 52. Campos: o Tiempo de espera: tiempo de espera en segundos. Un LSR mantiene un registro de los HELLOs recibidos de pares potenciales. Este campo especifica el tiempo que el LSR emisor mantendrá el registro de HELLOs del receptor sin recibir otro HELLO. Los LSRs negocian los tiempos de espera que usarán para los HELLOs de cada uno. Cada uno propondrá un tiempo y se utilizará el mínimo entre ambos. o T: HELLO con destino (Targeted HELLO). T = 1 implica que este HELLO es un HELLO con destino. T = 0 implica que es un HELLO de enlace. Recordemos que existían dos modalidades de descubrimiento. 112 Cesar Antonio Romero Avila Instituto Politécnico Nacional MPLS ESIME Zacatenco La modalidad básica utiliza este último tipo de HELLOs. La extendida utiliza el primer tipo de HELLOs. o R: Petición de envío de HELLOs con destino. Un valor de uno indica una petición al receptor de mandar periódicamente HELLOs con destino a la fuente. Un valor de cero implica que no hay petición. Parámetros opcionales: campo de longitud variable que contiene cero o más parámetros codificados como TLVs. Los parámetros opcionales son: Dirección de transporte IPv4, configuración del número de secuencia, dirección de transporte IPv6. 6.5.3 Mensaje de Iniciación.- Este mensaje se utiliza cuando dos pares LDP desean establecer una sesión LDP. El formato de este tipo de mensajes es el siguiente: Figura 6.11 Formato de Mensaje de Iniciación Identificador del mensaje: valor de 32 bits usado para identificar el mensaje. TLV de parámetros comunes de sesión: especifica los parámetros propuestos por el emisor para la negociación de la sesión LDP. Estos parámetros son: tiempo de mantenimiento, disciplina de anuncio de etiquetas (río abajo no solicitado y río abajo por demanda), detección de bucles, máximo tamaño del vector camino, longitud máxima de la PDU, etc. Parámetros opcionales: campo de longitud variable que contiene cero o más parámetros codificados en TLVs. Los parámetros opcionales son: parámetros de sesión ATM y parámetros de sesión de retransmisión de tramas. 6.5.4 Mensaje de Mantenimiento (KeepAlive).- Estos mensajes los intercambian pares LSRs para monitorizar la integridad de la conexión de transporte de la sesión LDP. El formato de este tipo de mensaje es el siguiente: 113 Cesar Antonio Romero Avila Instituto Politécnico Nacional MPLS ESIME Zacatenco Figura 6.12 Formato de Mensajes de Mantenimiento Identificador del mensaje: valor de 32 bits usado para identificar el mensaje. Parámetros opcionales: No definidos. 6.5.5 Mensaje de Dirección.- Este mensaje se lo manda un LSR a su par LSR para notificarle las direcciones de sus interfaces. El LSR que reciba este mensaje utilizará las direcciones aprendidas para actualizar una base de datos para las correlaciones entre los identificadores LDP de los pares y las direcciones de los siguientes saltos. El formato de este tipo de mensajes es el siguiente: Figura 6.13 Formato de Mensajes de Dirección Identificador del mensaje: valor de 32 bits usado para identificar el mensaje. TLV lista de direcciones: lista de las direcciones de las interfaces que están siendo notificadas por el LSR emisor. Parámetros opcionales: no definidos. Mensaje de retiro de direcciones Este mensaje se utiliza para retirar las direcciones de interfaces notificadas anteriormente. El formato de este tipo de mensajes es el siguiente: 114 Cesar Antonio Romero Avila Instituto Politécnico Nacional MPLS ESIME Zacatenco Figura 6.14 Formato de Retiro de Dirección. Identificador del mensaje: valor de 32 bits usado para identificar el mensaje. TLV lista de direcciones: lista de las direcciones de los interfaces que se están retirando por el LSR emisor. Parámetros opcionales: no definidos. 6.5.6 Mensaje de Asociación de Etiquetas.- Este mensaje lo utiliza un LSR para notificarle a su par LSR una asociación de etiquetas. El formato de este tipo de mensajes es el siguiente: Figura 6.15 Formato de Asociación de Etiquetas Identificador del mensaje: valor de 32 bits usado para identificar el mensaje. FEC TLV: especifica el componente FEC de la asociación de etiquetas que se está notificando. TLV de etiquetas: especifica el componente de etiqueta de la asociación de etiquetas. Parámetros opcionales: campo de longitud variable que contiene cero o más parámetros codificados en TLVs. Los parámetros opcionales son: TLV 115 Cesar Antonio Romero Avila Instituto Politécnico Nacional MPLS ESIME Zacatenco identificador del mensaje de petición de etiquetas, TLV de cuenta de saltos y TLV de vector camino. 6.5.7 Mensaje de Petición de Etiquetas.- Este mensaje se lo manda un LSR a su par LSR cuando quiere solicitarle una asociación de etiquetas. El formato de este tipo de mensajes es el siguiente: Figura 6.16 Formato de Petición de Etiquetas Identificador del mensaje: valor de 32 bits usado para identificar el mensaje. FEC TLV: la FEC para la que se está solicitando la etiqueta. Parámetros opcionales: campo de longitud variable que contiene cero o más parámetros cada uno codificado como una TLV. Los parámetros opcionales son: TLV de cuenta de saltos. TLV de vector camino. El mensaje de petición de etiquetas lo utiliza un LSR que está río arriba para solicitarle explícitamente al LSR que está río abajo una asociación de etiquetas. Un LSR puede enviar un mensaje de petición de etiquetas sí: El LSR reconoce una nueva FEC vía la tabla de reenvío y el siguiente salto es un par LDP, y además el LSR no tiene una asociación del siguiente salto para dicha FEC. El siguiente salto para la FEC cambia y el LSR no tiene todavía la asociación de su siguiente salto para dicha FEC. El LSR recibe una petición de etiquetas para una FEC de su par LDP que está río arriba, el siguiente salto de la FEC es un par LDP, y el LSR no tiene la asociación de su siguiente salto. 6.5.8 Mensaje de Petición de Abandono de Etiqueta.- Este mensaje abandona una petición de etiquetas pendiente. El formato de este tipo de mensajes es el siguiente: 116 Cesar Antonio Romero Avila Instituto Politécnico Nacional MPLS ESIME Zacatenco Figura 6.17 Formato de Mensajes de Petición de Abandono de Etiquetas Identificador del mensaje: valor de 32 bits usado para identificar el mensaje. FEC TLV: identifica a la FEC para la que se está abandonando la petición de etiquetas. TLV identificador del mensaje de petición de etiquetas: especifica el identificador del mensaje de petición de etiquetas que se va a abandonar. Parámetros opcionales: no definido. 6.5.9 Mensaje de Retiro de Etiquetas.- Este mensaje se utiliza para retirar una asociación de etiquetas que está siendo usada. Un LSR le enviará este tipo de mensaje a su par LSR para indicarle que no puede continuar usando la asociación que previamente anunció. De esta forma se rompen las asociaciones entre etiquetas y FECs. El formato de este tipo de mensajes es el siguiente: Figura 6.18 Formato de Mensajes de Retiro de Etiquetas. Identificador del mensaje: valor de 32 bits usado para identificar el mensaje. FEC TLV: identifica la FEC para la que la asociación de etiquetas está siendo retirada. 117 Cesar Antonio Romero Avila Instituto Politécnico Nacional MPLS ESIME Zacatenco TLV de etiquetas: campo de longitud variable. Si no aparece este campo, se retirarán todas las etiquetas asociadas a la FEC. En caso de que aparezca, sólo se retirará dicha etiqueta. Parámetros opcionales: campo de longitud variable que contiene cero o más parámetros codificados como TLVs. Un LSR enviará este tipo de mensajes bajo las siguientes condiciones: El LSR no reconoce una FEC que antes reconocía para la que ha anunciado una etiqueta. El LSR ha decidido unilateralmente (por ejemplo, vía configuración) que no va a realizar la conmutación de etiquetas para la FEC o FECs con la asociación que se va a retirar. Un LSR que reciba este tipo de mensaje debe responder con un mensaje de liberación de etiquetas. 6.5.10 Mensaje de Liberación de Etiquetas.- Este mensaje se utiliza cuando un LSR quiere informar a su par LSR que ya no necesita una asociación pedida o advertida anteriormente por su par LSR. El formato de este mensaje es: Figura 6.19 Formato de Mensajes de Liberación de Etiquetas. Los campos son iguales que en el mensaje anterior. Un LSR debe transmitir este mensaje sí: o El LSR que mandó la asociación ya no es el siguiente salto para la FEC asociada y el LSR está configurado para operar en modo conservativo. 118 Cesar Antonio Romero Avila Instituto Politécnico Nacional o MPLS ESIME Zacatenco El LSR recibe una asociación de un LSR que no es el siguiente salto para la FEC, y el LSR está configurado para operar en modo conservativo. o El LSR recibe un mensaje de retiro de etiquetas. 6.6 RSVP El protocolo de reserva de recurso (RSVP: Resource reSerVation Protocol, Protocolo de Reserva de Recursos) se utiliza para reservar recursos para una sesión entorno de red IP. Es un protocolo de estado blando. En la figura 6.19 podemos apreciar que el protocolo RSVP se apoya en IP: RSVP pretende proporcionar calidad de servicio estableciendo una reserva de recursos para un flujo determinado. Un host hace una petición de una calidad de servicio específica sobre una red para un flujo particular de una aplicación. Figura 6.20 RSVP apoyándose en IP 6.6.1 Características de RSVP.Protocolo de reserva de recursos. Se diseña para trabajar con cualquier servicio de QoS (los objetos propios de la QoS no están definidos por el protocolo). Permite Unicast y Multicast. No es un protocolo de encaminamiento, sino que está pensado para trabajar conjuntamente con éstos. 119 Cesar Antonio Romero Avila Instituto Politécnico Nacional MPLS ESIME Zacatenco No transporta datos de usuario. Los protocolos de encaminamiento determinan dónde se reenvían los paquetes mientras que RSVP se preocupa por la QoS de los paquetes reenviados de acuerdo con el encaminamiento. Es un protocolo simplex: petición de recursos sólo en una dirección, diferencia entre emisor y receptor. El intercambio entre dos sistemas finales requiere de reservas diferenciadas en ambas direcciones. Reserva iniciada por el receptor (protocolo orientado al receptor). Mantenimiento del estado de la reserva (estado blando) en los encaminadores. El mantenimiento de la reserva es responsabilidad de los usuarios finales. Permite diferentes tipos de reservas. Protocolo transparente para los encaminadores no RSVP. Soporta IPv4 e IPv6 aunque no sea un protocolo de transporte. Existen dos tipos fundamentales de mensajes RSVP: Mensajes Path: estos mensajes los generan los emisores. Describen el flujo del emisor y proporcionan la información del camino de retorno hacia el emisor. Este mensaje lo utilizan los emisores para establecer el camino de la sesión. Estos mensajes pueden atravesar encaminadores que no entiendan RSVP puesto que tienen una dirección IP origen y una dirección IP destino. Mensaje Resv: estos mensajes los generan los receptores y sirven para hacer una petición de reserva de recursos. Crean el "estado de la reserva" en los encaminadores. Generalmente, una petición de recursos implicará una reserva de éstos en todos los nodos del camino del flujo de datos. Estos mensajes siguen exactamente el camino inverso al de los datos. Por tanto, el mensaje Path es el responsable del inicio de la operación y es mandado a los participantes potenciales de la sesión. El mensaje Resv se manda en respuesta al mensaje Path. La siguiente figura muestra el uso de estos mensajes: 120 Cesar Antonio Romero Avila Instituto Politécnico Nacional MPLS ESIME Zacatenco Figura 6.21 Mensajes Path y Resv 6.6.2 Flujos de Datos.- Existen tres conceptos básicos asociados con los flujos de datos que maneja el protocolo: Sesión RSVP: es un flujo de datos identificado por su destino y por un protocolo de transporte particular. Sus componentes son: o Dirección IP destino: dirección IP destino de los paquetes (unicast o multicast) o Identificador del protocolo IP. o Puerto destino (opcional). Descriptor de flujo: se llama así a una petición de reserva realizada por un sistema final. Está compuesto de: o Flowspec: especifica la calidad de servicio deseada. Incluye: o Service class: clase de servicio. o Y dos parámetros numéricos: Rspec, que define la QoS deseada (Reserve) y Tspec, que describe el flujo de datos (Traffic) Filter spec: designa un conjunto arbitrario de paquetes dentro de una sesión a los que aplicar la QoS definida por el flowspec . El formato depende de si se utiliza IPv4 o IPv6, pero básicamente es: o Dirección IP fuente + puerto UDP/TCP fuente 121 Cesar Antonio Romero Avila Instituto Politécnico Nacional 6.6.3 MPLS ESIME Zacatenco Mensajes RSVP.- Un mensaje RSVP está formado por una cabecera común, seguida de un número variable de objetos de longitud variable. Formato de la cabecera Figura 6.22 Formato de Cabecera Campos de la cabecera Vers: versión del protocolo RSVP. Actualmente la 1. Flags: no definido. Msg Type: tipo de mensaje. A continuación se enumeran. 1. Path 2. Resv 3. Path_Err 4. Resv_Err 5. PathTear 6. ResvTear 7. ResvConf RSVP Checksum: campo de verificación. Send_TTL: indica el tiempo de vida (Time To Live) del mensaje. RSVP Length: longitud total del mensaje expresada en bytes, incluyendo la cabecera y el cuerpo. 122 Cesar Antonio Romero Avila Instituto Politécnico Nacional MPLS ESIME Zacatenco Formato de los objetos Figura 6.23 Formato de Objetos Campos de los objetos Length: longitud total del objeto expresada en bytes. Su valor debe ser siempre múltiplo de cuatro. Class_Num: identifica la clase del objeto. Todas las implementaciones de RSVP reconocen las siguientes clases: o NULL o SESSION o RSVP_HOP o TIME_VALUES o STYLE o FLOWSPEC o FILTER_SPEC o SENDER_TEMPLATE o SENDER_TSPEC o ADSPEC o ERROR_SPEC o POLICY_DATA o INTEGRITY o SCOPE o RESV_CONFIRM C_Type: tipo de objeto. Identifica el tipo de objeto dentro de la clase. 6.6.4 Funcionamiento.- La fuente envía un mensaje Path a los destinos. Dicho mensaje se manda a una dirección que es una dirección de sesión. Podrá ser una 123 Cesar Antonio Romero Avila Instituto Politécnico Nacional MPLS ESIME Zacatenco dirección unicast o multicast. Cuando el destino reciba el mensaje Path podrá enviar un mensaje Resv a la fuente, que viajará justo por el camino inverso al mensaje Path. Dicho mensaje Resv identificará la sesión para la que se quiere hacer la reserva. El mensaje será reenviado hacia la fuente por los encaminadores. Éstos reservarán los recursos necesarios analizando dicho mensaje. Figura 6.24 Funcionamiento de RSVP Como vimos anteriormente, RSVP es un protocolo simplex. Los encaminadores reconocerán los paquetes pertenecientes a un flujo examinando la dirección origen y destino, el puerto origen y destino y el número de protocolo (ej: UDP). Puesto que RSVP es un protocolo de estado blando, se deberán mandar periódicamente mensaje Path y Resv para refrescar el estado. 6.7 RSVP-TE: EXTENSIONES DE RSVP PARA TÚNELES LSP RSVP-TE define los siguientes objetos extendidos para poder usarse con RSVP: Objeto Etiqueta Objeto Petición de etiqueta Objeto Ruta Explícita Objeto Registrar Ruta Objeto Sesión LSP_TUNEL_IPv4 Objeto Sesión LSP_TUNEL_IPv6 Objeto Plantilla Emisor LSP_TUNEL_IPv4 124 Cesar Antonio Romero Avila Instituto Politécnico Nacional MPLS ESIME Zacatenco Objeto Plantilla Emisor LSP_TUNEL_IPv6 Objeto Especificación Filtro LSP_TUNEL_IPv4 Objeto Especificación Filtro LSP_TUNEL_IPv6 Objeto Atributo Sesión Objetos TSPEC y FLOWSPEC para clases de servicio Objetos Hello Se puede utilizar RSVP para establecer LSPs usando la distribución de etiquetas río abajo por demanda [RFC3209]. Para establecer un LSP, el LSR de entrada mandará un mensaje Path. Dicho mensaje tendrá un Objeto de petición de etiqueta y un objeto de sesión LSP_TUNEL_IPv4 o LSP_TUNEL_IPv6. Si un nodo no es capaz de realizar una asociación de etiquetas, mandará un mensaje PathErr con un error "Clase de Objeto Desconocido". Cuando el mensaje Path llegué al LSR de salida, éste responderá con un mensaje Resv. Este mensaje contendrá el Objeto Etiqueta, utilizado como se describe a continuación. El LSR de salida realizará una asociación de etiquetas e incluirá esta etiqueta en el Objeto Etiqueta. Acto seguido mandará el mensaje río arriba. Cuando el siguiente LSR reciba este mensaje sabrá que la etiqueta incluida en el Objeto Etiqueta será la que debe usar como etiqueta de salida para ese flujo. Una vez hecho esto, el LSR asignará una etiqueta (que será la futura etiqueta entrante), la insertará en el Objeto Etiqueta y enviará el mensaje Resv río arriba. Este proceso se repetirá hasta que el mensaje llegue a la fuente. En ese momento se podrá decir que se ha establecido el LSP. La siguiente figura muestra este proceso: Figura 6.25 Proceso de RSVP-TE 125 Cesar Antonio Romero Avila Instituto Politécnico Nacional MPLS ESIME Zacatenco El último LSR de la figura asigna la etiqueta a y la distribuye al LSR del centro. Éste LSR asigna la etiqueta b y la distribuye al LSR de entrada. El LSP para este flujo ya está creado. Un LSR de entrada puede crear una ruta explícita. Esto se consigue añadiendo al mensaje Path el Objeto Ruta Explícita. Este objeto encapsula una concatenación de saltos que constituyen el camino explícito. Este camino explícito puede ser especificado por un administrador o puede generarse automáticamente en base a una política determinada y una QoS requerida. Cuando un mensaje Path contiene el Objeto de enrutamiento explícito, cada LSR reenviará el mensaje por el camino que dicho objeto especifique. Una de las mayores ventajas del hecho de usar RSVP para establecer túneles LSP es que permite la asignación de recursos a través del camino. Pero no es obligatorio realizar la reserva de recursos cuando se establece el LSP. Se puede establecer un LSP sin reservar ningún tipo de recursos. 6.8 CR-LDP El grupo de trabajo sobre MPLS del IETF ha definido extensiones para que el protocolo LDP soporte el encaminamiento basado en restricciones. A esta extensión del protocolo se le denomina CR-LDP. Cuando un LSR de entrada decide usar un camino explícito, añadirá la TLV ER (Explicit Route TLV: TLV de camino explícito) al mensaje LDP de petición de etiquetas. El uso de esta TLV para establecer un LSP requiere el uso de la distribución de etiquetas río abajo por demanda y el modo de control ordenado. Cada LSR enviará el mensaje de petición de etiquetas a través del camino especificado en dicha TLV. Cuando el mensaje llegue al LSR de salida, éste responderá con un mensaje de asociación de etiquetas, donde habrá incluido la etiqueta de la asociación. 126 Cesar Antonio Romero Avila Instituto Politécnico Nacional MPLS ESIME Zacatenco Estos mensajes se irán enviando río arriba hacia el LSR de entrada por el camino inverso por donde se mandaron los mensajes de asociación de etiquetas. Por supuesto, en cada nodo se realizará la correspondiente asociación incluyéndose la etiqueta en el mensaje que se envía río arriba. Cuando al LSR de entrada le llegue un mensaje de asociación de etiquetas para una etiqueta pedida, el LSP estará establecido. Para poder reservar recursos en el LSP se ha definido un nuevo objeto: el objeto de parámetro de tráfico. Actualmente hay definidos siete parámetros de tráfico: Peak data Rate (PDR: velocidad de pico de datos) Peak burst size (PBS: tamaño de pico de la ráfaga) Commited data rate (CDR: velocidad de datos garantizada) Commited burst size (CBS: tamaño de ráfagas garantizada) Excess burst size (EBS: tamaño de la ráfaga en exceso) Frequency (frecuencia) Weight (peso) Con PDR y PBS se define un cubo de tokens con la máxima velocidad de tráfico que se supone que va a ir por el LSP. Con CDR y CBS se define un cubo de tokens con la velocidad media que se supone que va a ir por el LSP. EBS define un cubo goteante que indica cuánto puede sobrepasar la ráfaga a lo pactado. CR-LDP no requiere un refresco periódico de la información de estado. CR-LDP y RSVP-TE son dos protocolos de señalización que realizan funciones similares en redes MPLS. Actualmente no hay consenso sobre si uno es superior tecnológicamente al otro. Las limitaciones de CR-LDP en la actualidad son las siguientes: Sólo soporta LSPs punto a punto. Sólo soporta el establecimiento unidireccional de LSPs. Sólo soporta una única etiqueta por LSP. 127 Cesar Antonio Romero Avila Instituto Politécnico Nacional MPLS ESIME Zacatenco Lógicamente, se está trabajando para encontrar soluciones a las presentes limitaciones. CONCLUSION En el capitulo anterior se explico el funcionamiento, características y como son conformados los protocolos de BGP, LDP, RSVP y CR-LDP y su accionar en la arquitectura MPLS, teniendo ya todas las bases teóricas y explicaciones del funcionamiento; solo nos queda explicar las aplicaciones de esta arquitectura, tema que será abordado en el siguiente capitulo. 128 Cesar Antonio Romero Avila Instituto Politécnico Nacional MPLS ESIME Zacatenco 7 APLICACIONES DE MPLS Viendo los capítulos anteriores solo nos queda mencionar las aplicaciones que se pueden dar a esta útil herramienta en la transferencia de datos. Las principales aplicaciones que hoy en día tiene MPLS son: Ingeniería de tráfico Diferenciación de niveles de servicio mediante clases (CoS) Servicio de redes privadas virtuales (VPN) Veamos brevemente las características de estas aplicaciones y las ventajas que MPLS supone para ello frente a otras soluciones tradicionales. 7.1 Ingeniería de tráfico El objetivo básico de la ingeniería de tráfico es adaptar los flujos de tráfico a los recursos físicos de la red. La idea es equilibrar de forma óptima la utilización de esos recursos, de manera que no haya algunos que estén suprautilizados, con posibles puntos calientes y cuellos de botella, mientras otros puedan estar infrautilizados. A comienzos de los 90 los esquemas para adaptar de forma efectiva los flujos de tráfico a la topología física de las redes IP eran bastante rudimentarios. Los flujos de tráfico siguen el camino más corto calculado por el algoritmo IGP correspondiente. En casos de congestión de algunos enlaces, el problema se resolvía a base de añadir más capacidad a los enlaces. La ingeniería de tráfico consiste en trasladar determinados flujos seleccionados por el 129 Cesar Antonio Romero Avila Instituto Politécnico Nacional MPLS ESIME Zacatenco algoritmo IGP sobre enlaces más congestionados, a otros enlaces más descargados, aunque estén fuera de la ruta más corta (con menos saltos). En el esquema de la figura 9 se comparan estos dos tipos de rutas para el mismo par de nodos origen-destino. El camino más corto entre A y B según la métrica normal IGP es el que tiene sólo dos saltos, pero puede que el exceso de tráfico sobre esos enlaces o el esfuerzo de los encaminadores correspondientes hagan aconsejable la utilización del camino alternativo indicado con un salto más. MPLS es una herramienta efectiva para esta aplicación en grandes backbones, ya que: Permite al administrador de la red el establecimiento de rutas explícitas, especificando el camino físico exacto de un LSP. Permite obtener estadísticas de uso LSP, que se pueden utilizar en la planificación de la red y como herramientas de análisis de cuellos de botella y carga de los enlaces, lo que resulta bastante útil para planes de expansión futura. Permite hacer "encaminamiento restringido" (Constraint-based encaminamiento, CBR), de modo que el administrador de la red pueda seleccionar determinadas rutas para servicios especiales (distintos niveles de calidad). Por ejemplo, con garantías explícitas de retardo, ancho de banda, fluctuación, pérdida de paquetes, etc. La ventaja de la ingeniería de tráfico MPLS es que se puede hacer directamente sobre una red IP, al margen de que haya o no una infraestructura ATM por debajo, todo ello de manera más flexible y con menores costes de planificación y gestión para el administrador, y con mayor calidad de servicio para los clientes. Figura 7.1 Ingeniería de trafico 130 Cesar Antonio Romero Avila Instituto Politécnico Nacional 7.2 MPLS ESIME Zacatenco Clases de servicio (CoS) MPLS está diseñado para poder cursar servicios diferenciados, según el Modelo DiffServ del IETF. Este modelo define una variedad de mecanismos para poder clasificar el tráfico en un reducido número de clases de servicio, con diferentes prioridades. Según los requisitos de los usuarios, DiffServ permite diferenciar servicios tradicionales tales como el WWW, el correo electrónico o la transferencia de ficheros (para los que el retardo no es crítico), de otras aplicaciones mucho más dependientes del retardo y de la variación del mismo, como son las de vídeo y voz interactiva. Para ello se emplea el campo ToS (Type of Service), rebautizado en DiffServ como el octeto DS. (Véase más información sobre el modelo DiffServ en las referencias correspondientes a QoS). Esta es la técnica QoS de marcar los paquetes que se envían a la red. MPLS se adapta perfectamente a ese modelo, ya que las etiquetas MPLS tienen el campo EXP para poder propagar la clase de servicio CoS en el correspondiente LSP. De es te modo, una red MPLS puede transportar distintas clases de tráfico, ya que el tráfico que fluye a través de un determinado LSP se puede asignar a diferentes colas de salida en los diferentes saltos LSR, de acuerdo con la información contenida en los bits del campo EXP entre cada par de LSR exteriores se pueden provisionar múltiples LSPs, cada uno de ellos con distintas prestaciones y con diferentes garantías de ancho de banda. P. ej., un LSP puede ser para tráfico de máxima prioridad, otro para una prioridad media y un tercero para tráfico best-effort, tres niveles de servicio, primera, preferente y turista, que, lógicamente, tendrán distintos precios. 7.3 Redes Privadas Virtuales (VPNs) Una red privada virtual (VPN) se construye a base de conexiones realizadas sobre una infraestructura compartida, con funcionalidades de red y de seguridad equivalentes a las que se obtienen con una red privada. El objetivo de las VPNs es el soporte de aplicaciones intra/extranet, integrando aplicaciones multimedia de voz, datos y vídeo sobre infraestructuras de comunicaciones eficaces y rentables. La seguridad supone aislamiento, y "privada" indica que el usuario "cree" que posee los enlaces. Las IP VPNs 131 Cesar Antonio Romero Avila Instituto Politécnico Nacional MPLS ESIME Zacatenco son soluciones de comunicación VPN basada en el protocolo de red IP de la Internet. En esta sección se va a describir brevemente las ventajas que MPLS ofrece para este tipo de redes frente a otras soluciones tradicionales. Las VPNs tradicionales se han venido construyendo sobre infraestructuras de transmisión compartidas con características implícitas de seguridad y respuesta predeterminada. Tal es el caso de las redes de datos Frame Relay, que permiten establecer PCVs entre los diversos nodos que conforman la VPN. La seguridad y las garantías las proporcionan la separación de tráficos por PVC y el caudal asegurado (CIR). Algo similar se puede hacer con ATM, con diversas clases de garantías. Los inconvenientes de este tipo de solución es que la configuración de las rutas se basa en procedimientos más bien artesanales, al tener que establecer cada PVC entre nodos, con la complejidad que esto supone al proveedor en la gestión (y los mayores costes asociados). Si se quiere tener conectados a todos con todos, en una topología lógica totalmente mallada, añadir un nuevo emplazamiento supone retocar todos los CPEs del cliente y restablecer todos los PVCs. Además, la popularización de las aplicaciones TCP/IP, así como la expansión de las redes de los NSPs, ha llevado a tratar de utilizar estas infraestructuras IP para el soporte de VPNs, tratando de conseguir una mayor flexibilidad en el diseño e implantación y unos menores costes de gestión y provisión de servicio. La forma de utilizar las infraestructuras IP para servicio VPN (IP VPN) ha sido la de construir túneles IP (Tunneling) de diversos modos. 7.3.1 Tunneling.- El problema de los protocolos que envían sus datos en claro (HTTP, FTP, POP3 y otros muchos), es decir, sin encriptarlos, es que cualquier persona que tenga acceso físico a la red en la que se sitúan nuestras máquinas puede ver dichos datos. Es tan simple como utilizar un sniffer, que básicamente, es una herramienta que pone nuestra tarjeta de red en modo promiscuo (modo en el que las tarjetas de red operan aceptando todos los paquetes que circulan por la red a la que se conectan, sean o no para esa tarjeta). De este modo, alguien que conecte su máquina a una red y arranque un sniffer recibirá y podrá analizar por tanto todos los paquetes que circulen por dicha red. Si alguno de esos paquetes pertenece a un protocolo que envía sus comunicaciones en claro, y contiene información sensible, dicha información se verá comprometida. Si por el 132 Cesar Antonio Romero Avila Instituto Politécnico Nacional MPLS ESIME Zacatenco contrario, encriptamos nuestras comunicaciones con un sistema que permita entenderse sólo a las dos máquinas que queremos sean partícipes de la comunicación, cualquiera que intercepte desde una tercera máquina nuestros paquetes, no podrá hacer nada con ellos, al no poder desencriptar los datos. Una forma de evitar el problema que nos atañe, sin dejar por ello de utilizar todos aquellos protocolos que carezcan de medios de encriptación, es usar una útil técnica llamada tunneling. Básicamente, esta técnica consiste en abrir conexiones entre dos máquinas por medio de un protocolo seguro, como puede ser SSH (Secure SHell), a través de las cuales realizaremos las transferencias inseguras, que pasarán de este modo a ser seguras. De esta analogía viene el nombre de la técnica, siendo la conexión segura (en este caso de ssh) el túnel por el cual enviamos nuestros datos para que nadie más aparte de los interlocutores que se sitúan a cada extremo del túnel, pueda ver dichos datos. Ni que decir tiene, que este tipo de técnica requiere de forma imprescindible que tengamos una cuenta de acceso seguro en la máquina con la que nos queremos comunicar. Los túneles IP en conexiones dedicadas se pueden establecer de dos maneras: en el nivel 3, mediante el protocolo IPSec del IETF en el nivel 2, mediante el encapsulamiento de paquetes privados (IP u otros) sobre una red IP pública de un NSP En las VPNs basadas en túneles IPSec, la seguridad requerida se garantiza mediante el cifrado de la información de los datos y de la cabecera de los paquetes IP (encriptación), que se encapsulan con una nueva cabecera IP para su transporte por la red del proveedor. Es relativamente sencillo de implementar, bien sea en dispositivos especializados, tales como cortafuegos (fireware), como en los propios encaminadores de acceso del NSP. Además, como es un estándar, IPSec permite crear VPNs a través de redes de distintos NSPs que sigan el estándar IPSec. Pero como el cifrado IPSec oculta las cabeceras de los paquetes originales, las opciones QoS son bastante limitadas, ya que la red no puede distinguir flujos por aplicaciones para asignarles diferentes niveles de servicio. Además, sólo vale para paquetes IP nativos, IPSec no admite otros protocolos. En los túneles de nivel 2 se encapsulan paquetes multiprotocolo (no necesariamente IP), sobre los datagramas IP de la red del NSP. De este modo, la red del proveedor no pierde la visibilidad IP, por lo que hay mayores posibilidades de QoS para 133 Cesar Antonio Romero Avila Instituto Politécnico Nacional MPLS ESIME Zacatenco priorizar el tráfico por tipo de aplicación IP. Los clientes VPN pueden mantener su esquema privado de direcciones, estableciendo grupos cerrados de usuarios, si así lo desean. (Además de encapsular los paquetes, se puede cifrar la información por mayor seguridad, pero en este caso limitando las opciones QoS). A diferencia de la opción anterior, la operación de túneles de nivel 2 está condicionada a un único proveedor. A pesar de las ventajas de los túneles IP sobre los PVCs, ambos enfoques tienen unas características comunes que las hacen menos eficientes frente a la solución MPLS: están basadas en conexiones punto a punto (PVCs o túneles) la configuración es manual la provisión y gestión son complicadas; una nueva conexión supone alterar todas las configuraciones plantean problemas de crecimiento al añadir nuevos túneles o circuitos virtuales la gestión de QoS es posible en cierta medida, pero no se puede mantener extremo a extremo a lo largo de la red, ya que no existen mecanismos que sustenten los parámetros de calidad durante el transporte Realmente, el problema que plantean estas IP VPNs es que están basadas en un modelo topológico superpuesto sobre la topología física existente, a base de túneles extremos a extremo (o circuitos virtuales) entre cada par de encaminadores de cliente en cada VPN. De ahí las desventajas en cuanto a la poca flexibilidad en la provisión y gestión del servicio, así como en el crecimiento cuando se quieren añadir nuevos emplazamientos. Con una arquitectura MPLS se obvian estos inconvenientes ya que el modelo topológico no se superpone sino que se acopla a la red del proveedor. En el modelo acoplado MPLS, en lugar de conexiones extremo a extremo entre los distintos emplazamientos de una VPN, lo que hay son conexiones IP a una "nube común" en las que solamente pueden entrar los miembros de la misma VPN. Las "nubes" que representan las distintas VPNs se implementan mediante los caminos LSPs creados por el mecanismo de intercambio de etiquetas MPLS. Los LSPs son similares a los túneles en cuanto a que la red transporta los paquetes del usuario (incluyendo las cabeceras) sin examinar el contenido, a base de encapsularlos sobre otro protocolo. Aquí está la diferencia: en los túneles se utiliza el encaminamiento convencional IP para transportar la 134 Cesar Antonio Romero Avila Instituto Politécnico Nacional MPLS ESIME Zacatenco información del usuario, mientras que en MPLS esta información se transporta sobre el mecanismo de intercambio de etiquetas, que no ve para nada el proceso de encaminamiento IP. Sin embargo, sí se mantiene en todo momento la visibilidad IP hacia el usuario, que no sabe nada de rutas MPLS sino que ve una internet privada (intranet) entre los miembros de su VPN. De este modo, se pueden aplicar técnicas QoS basadas en el examen de la cabecera IP, que la red MPLS podrá propagar hasta el destino, pudiendo así reservar ancho de banda, priorizar aplicaciones, establecer CoS y optimizar los recursos de la red con técnicas de ingeniería de tráfico. En la figura 7.2 se representa una comparación entre ambos modelos. La diferencia entre los túneles IP convencionales (o los circuitos virtuales) y los "túneles MPLS" (LSPs) está en que éstos se crean dentro de la red, a base de LSPs, y no de extremo a extremo a través de la red. Figura 7.2 VPN´s de modelo superpuesto y acoplado Como resumen, las ventajas que MPLS ofrece para IP VPNs son: proporcionan un modelo "acoplado" o "inteligente", ya que la red MPLS "sabe" de la existencia de VPNs (lo que no ocurre con túneles ni PVCs) evita la complejidad de los túneles y PVCs la provisión de servicio es sencilla: una nueva conexión afecta a un solo encaminador tiene mayores opciones de crecimiento modular 135 Cesar Antonio Romero Avila Instituto Politécnico Nacional MPLS ESIME Zacatenco permiten mantener garantías QoS extremo a extremo, pudiendo separar flujos de tráfico por aplicaciones en diferentes clases, gracias al vínculo que mantienen el campo EXP de las etiquetas MPLS con las clases definidas a la entrada permite aprovechar las posibilidades de ingeniería de tráfico para poder garantizar los parámetros críticos y la respuesta global de la red (ancho banda, retardo, fluctuación...), lo que es necesario para un servicio completo VPN. CONCLUSIÓN Con las principales aplicaciones de MPLS, podemos observar la importancia de su uso y por que fue tan importante la innovación y convergencia del IP/ATM al MPLS. Actualmente esta tecnología forma parte fundamental en las infraestructuras de tanto proveedores de servicios de telecomunicaciones, como la misma administración del los clientes de estos servicios. Al igual que todas las tecnologías tiene sus virtudes y sus defectos, que con el tiempo se mejoran y tal vez den la pauta para una mejora de estos defectos, y nazca una nueva tecnología que mejore las comunicaciones. 136 Cesar Antonio Romero Avila Instituto Politécnico Nacional MPLS ESIME Zacatenco GLOSARIO Ancho de Banda: Capacidad de transmisión medida en bits por segundo. Indica la máxima capacidad teórica de conexión, aunque puede verse deteriorada por factores negativos como el retardo de transmisión. ARIS: Aggregate Route-based IP switching. Solución en el entorno de la conmutación de etiquetas de IBM. ARP: Address Resolution Protocol. Arquitectura no orientada a conexión: Arquitectura en la que no es necesario establecer y liberar la conexión. Típicamente, cada mensaje lleva la dirección del destino y cada uno es dirigido a través del sistema independientemente del resto. Arquitectura orientada a conexión: Arquitectura en la que para establecer la comunicación primero se debe establecer la conexión. Acto seguido se usa la conexión y por último se libera la conexión. ATM: Modo de Transferencia Asíncrono. Tecnología utilizada tanto para redes locales como redes de área amplia. Utiliza conmutadores que establecen circuitos lógicos entre sistemas finales por lo que hay una garntía de QoS. Esta tecnología se utiliza como espina dorsal en redes de proveedores y en grandes compañias. Tiene una alta escalabilidad. ATMARP: Ver servidor ATM ARP. Backbone ( Espina Dorsal ): Nivel más alto de una red jerárquica. Se garantiza que las redes aisladas y de tránsito conectadas al mismo eje troncal están interconectadas. Base de información del reenvío: Tabla que forma parte de un LSR y que contiene la NHLFE, la ILM y la FTN. Se utiliza para reenviar paquetes. Best-effort: "Lo mejor posible". Los paquetes se entregan de la mejor forma posible. BGP: Border Gateway Protocol. Buffer: Memoria de almacenamiento. Cabecera de un paquete: Información de control de un sistema definido que precede a los datos del usuario. Cabecera shim: Campo que sirve para transportar la etiqueta y que permite que MPLS funcione con cualquier tecnología del nivel de enlace. Está situado entre la cabecera del nivel de enlace y la cabecera del nivel de red. 137 Cesar Antonio Romero Avila Instituto Politécnico Nacional MPLS ESIME Zacatenco Camino de conmutación de etiquetas: Célula: Paquete de longitud fija utilizado en ATM. Una célula tiene 48 octetos de información y 5 octetos de control. El hecho de utilizar células de tamaño fijo permite el uso de nodos de conmutación a velocidades muy altas. Circuito virtual: Conexión establecida entre dos estaciones al comienzo de la transmisión. La ruta se establecerá antes de la transferencia de los datos. Todos los paquetes seguirán el mismo camino. Cola: Conjunto de paquetes en espera de ser procesados. Conexión de trayecto virtual: Conjunto de VCCs que tienen el mismo punto de terminación. Las células del conjunto de los VCCs se conmutarán conjuntamente en una VPC. Conmutación de etiquetas: Término genérico usado para referirse al reenvío de paquetes IP usando el algoritmo de intercambio de etiquetas. Conmutación IP: Aproximación de Ipsilon para la conmutación de etiquetas. Conmutador ( Switch ): Dispositivo de nivel 2. Utiliza la cabecera de nivel 2 para enviar las tramas. Conmutar: Operación que realizan encaminadores y conmutadores. Éstos reciben un paquete por la línea de entrada y redirigen el paquete a la línea de salida adecuada en base a la información en la cabecera del paquete. CoS: Class of Service ( Clase de Servicio ) CR-LDP: Constraint-based Routing LDP ( Encaminamiento Basado en Restricciones LDP ). CSR: Encaminador de Conmutación de Células. Datagrama: Término utilizado para referirse a un paquete en una arquitectura no orientada a conexión. DiffSer: Servicios Diferenciados. DLCI: Data Link Connection Identifier (Identificador de la Conexión del Enlace de Datos ). Encaminador ( Router ): Dispositivo de nivel 3. Analiza la información de la cabecera de nivel 3 para reenviar los paquetes a través de la red. Encaminamiento: Acciones realizadas por los encaminadores para mover los paquetes a través de la red. Encapsular: Información de control que le añade una entidad del protocolo a los datos obtenidos de un usuario de protocolo. 138 Cesar Antonio Romero Avila Instituto Politécnico Nacional MPLS ESIME Zacatenco Ethernet: IEEE 802.3 (CSMA/CD). Red de difusión basada en bus con control descentralizado que opera a 10, 100, 1000 Mbps. En una red ethernet, los computadores pueden transmitir cuando quieran. Si dos o más paquetes colisionan, los computadores esperarán un tiempo aleatorio y probarán a retransmitir más tarde. Etiqueta: Identificador de tamaño fijo que tiene significado local. Se usa para reenviar paquetes. Un dispositivo de conmutación de etiquetas reemplazará la etiqueta de un paquete antes de reenviarlo. Extranet: Una extranet es similar a una intranet que es parcialmente accesible desde fuera a usuarios autorizados. Las extranets están siendo muy utilizadas como medio de intercambio de información entre las compañías y sus partners. FEC: Functional Equivalence Class ( Clase de Equivalencia Funcional ). Grupo de paquetes IP que se reenvían de la misma forma. La FEC permite agrupar paquetes en clases. Fiabilidad: Tasa media de error en la red. FIB: Forwarding Information Base ( Base de Información del Reenvío ). FIFO: First In First Out. Término que se utiliza para referirse a una pila. Forwarding ( Reenvio ): Operación que realizan tanto conmutadores como encaminadores. Consiste básicamente en encaminar un paquete recibido por la línea de entrada en base a unos campos que contiene el paquete. Frame Relay: Ver retransmisión de tramas. FTN: FEC-to-NHLFE ( Correlación de la FEC con la NHLFE ) Host ( Anfitrion ): Dispositivo dentro de la red que se interconecta con la Red (Un ejemplo una pc de un usuario). IETF: Internet Engineering Task Force. Grupo de ingenieros, que a través de su grupo de dirección (Internet Engineering Steering Group) se responsabiliza de toda la problemática técnica a corto plazo. Ingeniería de tráfico: Persigue adaptar flujos de tráfico a recursos físicos de la red, de tal forma que exista un equilibrio entre dichos recursos. De esta forma se conseguirá que no haya recursos excesivamente utilizados, con cuellos de botella, mientras existan recursos poco utilizados. Interfaz: Zona de contacto o conexión entre dos aplicaciones o entre un usuario y una aplicación. IGP: Interior Gateway Protocol ( Protocolo de Pasarela Interior ). Protocolo de encaminamiento usado dento de un sistema autónomo. 139 Cesar Antonio Romero Avila Instituto Politécnico Nacional MPLS ESIME Zacatenco ILM: Incoming Label Map. ( correlación de la etiqueta entrante ). Entrada de la FIB que sirve para correlacionar cada etiqueta entrante con un conjunto de NHLFEs. Se utiliza cuando se reenvían paquetes que llegan como paquetes etiquetados. Intranet: Red perteneciente a una organización, basada en TCP/IP, accesible exclusivamente a los miembros de la organización, empleados, o a personas con autorización. IP: Internet protocol ( Protocolo de Internet ). IPv4: Versión 4 del Protocolo IP. IPv6: Versión 6 del Protocolo IP. ISP: Internet Service Provider ( Proveedor de Servicios Internet ). Label distribution peers ( Par de distribución de Etiquetas ): LSRs que utilizan un protocolo de distribución de etiquetas para intercambiar información de asociaciones de etiquetas a FECs. Label merging ( Fusión de Etiquetas ): Reemplazo de múltiples etiquetas de entrada para una FEC particular por una sola etiqueta de salida. Label stack (Pila de Etiquetas ): Conjunto ordenado de etiquetas. Label swapping ( Intercambio de Etiquetas ): Algoritmo empleado por el componente de reenvío de un LSR. Cuando un LSR recibe un paquete extrae el valor de la etiqueta y accede con él a la tabla de encaminamiento. En dicha tabla de encaminamiento encontrará el nuevo valor de la etiqueta que ha de ponerle al paquete antes de reenviarlo, así como la interfaz de salida por donde ha de mandarlo. También podrá encontrar información sobre si debe o no encolar el mensaje. Label switched hop ( Salto de Conmutación de Etiquetas ): Salto entre dos nodos MPLS en los que el reenvío se hace usando etiquetas. LDP: Label Distribution Protocol ( Protocolo de Distribución de Etiquetas ). LDP peers: Pares o iguales LDP. LER: Label Edge Router ( Encaminador de Etiquetas Frontera ). Nodo que conecta un dominio de conmutación de etiquetas con un nodo externo al dominio, bien porque no soporta la conmutación de etiquetas o porque pertenece a otro dominio de conmutación de etiquetas. LIS: Logical IP Subnet ( Subred Lógica IP ). LSP: Label Switched Path ( Camino de Conmutación de Etiquetas ). Camino a través de uno o más LSRs en un nivel de la jerarquía que siguen los paquetes de una FEC particular. 140 Cesar Antonio Romero Avila Instituto Politécnico Nacional MPLS ESIME Zacatenco LSR: Label Switching Router ( Encaminador de conmutación de etiquetas ). Dispositivo que implementa la conmutación de etiquetas. LSR de entrada: LSR que recibe tráfico de usuario (por ejemplo datagramas IP) y lo clasifica en su correspondiente FEC. Genera una cabecera MPLS asignándole una etiqueta y encapsula el paquete junto a la cabecera MPLS obteniendo una PDU MPLS. LSR de salida: LSR que desencapsula un paquete removiendo la cabecera MPLS. LSR frontera: LSR encargado de etiquetar los paquetes que entran en la red. Para poder realizar este trabajo, dicho LSR deberá implementar el componente de control y el componente de reenvío tanto del encaminamiento convencional como de la conmutación de etiquetas. LSR interior: LSR que realiza el intercambio de etiquetas examinando exclusivamente la cabecera MPLS (obteniendo la etiqueta para poder realizar la búsqueda en la tabla de encaminamiento). Mensaje: Conjunto de datos transmitido por una línea de comunicaciones. Modelo acoplado: Modelo en el que los protocolos de control IP corren directamente en hardware ATM. Habrá por tanto inteligencia IP en cada nodo. Modelo superpuesto: Red IP superpuesta en una red ATM. Habrá inteligencia IP externa, esto es, la red ATM permite una conectividad de alta velocidad mientras que la red IP tendrá la inteligencia para reenviar datagramas IP. MPEs: Multiprotocol Extensions ( Extensiones Multiprotocolo ). MPLS: Multiprotocol Label Switching ( Conmutación de Etiquetas Multiprotocolo ). Estándar del IETF para la conmutación de etiquetas. Se basa en el uso de etiquetas las cuales identifican la ruta para encaminar los paquetes. MPOA: Multiprotocol Over ATM. Multiprotocolo a través de grandes redes. Protocolo que contempla la integración de IP con ATM mediante emulación de LAN versión 2 y NHRP. Multicast ( Multifusión ): Modo de difución de información que permite que ésta pueda ser recibida por múltiples nodos de la red y por tanto, por múltiples usuarios. NHLFE: Next Hop Label Forwarding Entry ( Entrada para el Reenvío con la Etiqueta del Siguiente Salto. Entrada de la FIB utilizada para reenviar paquetes etiquetados. 141 Cesar Antonio Romero Avila Instituto Politécnico Nacional MPLS ESIME Zacatenco NHRP: Next Hop Resolution Protocol ( Protocolo de Resolución del Siguiente Salto ). Protocolo usado para permitir que dos dispositivos pertenecientes a distinta LIS puedan comunicarse. NHS: Next Hop Servers. Servidores que sirven para que un dispositivo en una LIS pueda aprender la dirección ATM de otro dispositivo de otra LIS. NLRI: Network Layer Reachability Information ( Información de alcance del nivel de red ) Nodo: Dispositivo direccionable conectado a una red de ordenadores. OSPF: Open Shortest Path First ( Protocolo Abierto del Primer Camino Más Corto ). Protocolo de encaminamiento IP que está sustituyendo rápidamente a RIP. Paquete: Unida de datos del protocolo de red.Un paquete incluirá datos y señales de control. PDR: Peak Data Rate ( Tasa Máxima de Transmisión ) PDU: Protocol Data Unit ( Unidad de Datos del Protocolo ). Conjunto de datos especificado en un protocolo en un nivel dado. Está compuesto por datos de control del protocoo y datos de usuario. PHB: Per-Hop-Behaviour ( Comportamiento por Salto ) Piggybacking: En MPLS, protocololos que incorporan la etiqueta encima de protocolos existentes de encaminamiento. PPP: Point to Point Protocol ( Protocolo Punto a Punto ). Protocolo del nivel de enlace para líneas punto a punto que realiza control de errores, soporta múltiples protocolos y que permite negociar en tiempo de conexión la dirección IP. Protocolo: Conjunto de reglas que gobiernan el formato y significado de las tramas, paquetes o mensajes que se intercambian entidades pares dentro de un nivel. realiza la fusión de etiquetas. QoS: Quality Of Service ( Clase de servicio ): Categoría basada en el tipo de usuario, aplicación o criterio que los sistemas de QoS usan para proporcionar diferentes servicios. Red totalmente mallada: Red en la que todos los nodos están conectados entre sí. RIP: Routing Information Protocol ( Protocolo de Información de Encaminamiento ). Protocolo definido en ka RFC 1058 que especifica cómo los encaminadores intercambian la información de encaminamiento. Con RIP, los encaminadores 142 Cesar Antonio Romero Avila Instituto Politécnico Nacional MPLS ESIME Zacatenco intercambian tablas enteras. Esto es ineficiente, por lo que este protocolo está siendo sustituido por OSPF. RSVP: Resource reSerVation Protocol ( Protocolo de Reserva de Recursos ). Protocolo de estado blando utilizado para reservar recursos en una sesión en un entorno IP. Es un protocolo simplex. Este protocolo permite la asignación de diferentes niveles de servicio a diferentes usuarios. Se utiliza para ofrecer discriminación de servicio a las aplicaciones sensibles al retardo mediante la asignación de recursos. SAFI: Subsequent Address Family Identifier ( Identificador de Familias de Direcciones Consecutivas ). Campo que sirve para indicar que el campo NLRI contiene una etiqueta en MPLS-BGP. Tag: Término usado para referirse a una etiqueta en la aproximación de la conmutación de etiquetas de Cisco. Tag switching: Aproximación de Cisco a la conmutación de etiquetas. TCP: Transmisión Control Protocol ( Protocolo de Control de la Transmisión ). Protocolo fiable orientado a conexión. Pertenece al nivel de transporte. Fragmenta el flujo entrante de bytes en mensajes discretos y le pasa cada uno al nivel Internet. En el destino, el proceso receptor TCP reensambla los mensajes recibidos. TCP maneja control de flujo para que un emisor rápido no inunde a uno lento. TCP/IP: Transmisión Control Protocol / Internet Protocol ( Protocolo de Control de la Transmisión / Protocolo de Internet ). Conjunción indespensable en la internet mundial. TOS: Type Of Service ( Tipo de Servicio ). Campo de la cabecera IP utilizado por los elementos de la red para realizar una solicitud con un determinado nivel de QoS. Trama: Grupo de bits que incluye datos, direcciones e información de control del protocolo. Se refiere a la PDU del nivel de enlace. TTL: Time To Live. ( Tiempo de Vida ). Número de nodos que puede atravesar un paquete. Cuando este campo llega a cero se desacarta el paquete. UDP: User Datagram Protocol ( Protocolo de Datagramas de Usuario ). Protocolo no fiable no orientado a conexión para aplicaciones que no requieran control de flujo o la secuencia de TCP. Unicast: Unidifusión. Dirección que es reconocida por un sólo sistema anfitrión. VC: Virtual Channel ( Canal Virtual ). En ATM, término genérico para describir la capacidad de comucicación unidireccional para transportar células ATM. VCC: Virtual Channel Connection ( Conexión de Canal Virtual ). Conexión lógica de ATM. 143 Cesar Antonio Romero Avila Instituto Politécnico Nacional MPLS ESIME Zacatenco VC merge: Fusión de Circuitos Virtuales. Fusión de etiquetas en donde la etiqueta MPLS se transporta en el campo ATM VPI/VCI. De esta forma se permite que múltiples circuitos virtuales se fusionen en un único circuito virtual. VCI: Virtual Channel Identifier ( Identificador de Canal Virtual ). Etiqueta que identifica al canal virtual en cada enlace. VP: Virtual Path ( Trayecto Virtual ). Término genérico para designar un agrupamiento de canales virtuales. Todos los canales virtuales de un trayecto virtual tienen los mismos puntos de terminación. VP merge: Fusión de Caminos Virtuales. Fusión de etiquetas en donde la etiqueta MPLS se transporta en el campo ATM VPI. De esta forma se permite que múltiples caminos virtuales se fusionen en uno sólo. Dos células con el mismo valor VCI se han originado en el mismo nodo. VPN: Virtual Private Network ( Red Privada Virtual ). Red en la que la conectividad entre múltiples lugares se realiza a través de una infraestructura compartida con las mismas políticas de acceso y seguridad que en una red privada. VPC: Virtual Path Connection ( Conexión de Trayecto Virtual ). Conjunto de VCCs que tienen el mismo punto de terminación. Las células del conjunto de los VCCs se conmutarán conjuntamente en una VPC. VPI: Virtual Path Identifier ( Identificador de Trayecto Virtual ). Etiqueta que identifica al trayecto virtual en cada enlace. X.25: Primera red internacional normalizada de conmutación de paquetes. X.25 se diseñó para ser una red datos pública a nivel mundial. Tecnología orientada a conexión para la transmisión en medios no fiables. 144 Cesar Antonio Romero Avila Instituto Politécnico Nacional MPLS ESIME Zacatenco BIBLIOGRAFÍA o Bruce Davie, Yakov Rekhter. MPLS. Technology and applications Morgan Kaufmann. 2000. o Pepelnjak, Guichard. MPLS and VPN architectures Cisco Press. 2001. o Jesús García Tomás, Santiago Ferrando, Mario Piattini. Redes para proceso distribuido Ra-Ma. 1997. o Jesús García Tomás, Santiago Ferrando, Mario Piattini. Redes de alta velocidad Ra-Ma. 1997. o Jesús García Tomás. Alta velocidad y calidad de servicio en redes IP Ra-Ma. 1997. o William Stallings. Comunicaciones y redes de computadores. Sexta edición Prentice Hall. 2000. o Andrew S. Tanenbaum. Computer Networks. Third edition Prentice Hall. 1996. WEB o http://www.nano.org/mtg-9905/ppt/mpls o http://es.wikipedia.org/wiki/MPLS o http://www.rediris.es/rediris/boletin/53/enfoque1.html o http://www.cisco.com/warp/public/cc/cisco/mkt/wan/ipatm/tech/mpls_wp.htm o http://www.cisco.com/warp/public/cc/cisco/mkt/servprod/dial/tech/ievpn_rg.htm o http://www.juniper.net/techcenter/techpapers/mpls/mpls.html 145