Resumen Una Red Privada Virtual (VPN) es una red virtual creada dentro de otra red, generalmente Internet, por lo que los requerimientos de seguridad son de alto nivel e importancia. El intercambio efectivo de paquetes y la QoS son servicios de alta importancia en el manejo de redes virtuales privadas. El protocolo de conmutación de etiquetas (MPLS) integra el ancho de banda, la latencia y la utilización de Capa 2 en la Capa3 para mejorar y simplificar el intercambio de paquetes. Es decir, es una técnica que utiliza la inteligencia del ruteo y el desempeño de los conmutadores para disminuir el tráfico de rutas, la congestión, las fallas de conexión y los cuellos de botella. MPLS proviene de tecnologías ya existentes, como son “Tag Switching” de CISCO y “ARIS” de IBM. En 1997 fue creado el primer grupo de trabajo de MPLS por el Grupo de Trabajo en Ingeniería de Internet (IETF). Hoy en día lo estándares de MPLS están en fase de borrador, algunos mas profundizados que otros, sin embargo es un tema de actualidad que en un futuro será un estándar de calidad y desempeño completo que permitirá formar sistemas de redes muy robustos. En este proyecto se pretende formar una base sólida que muestre las especificaciones y características de la tecnología MPLS en redes virtuales privadas, siendo un tema de actualidad y de gran futuro. Esto con el fin de proveer un pilar preeliminar para cualquier análisis y/o implementación del protocolo en un futuro. Redes, VPN, tecnología, MPLS 1. Introducción y Definición del Problema Una Red Privada Virtual (VPN) es una red virtual creada dentro de otra red, generalmente Internet, por lo que los requerimientos de seguridad son de alto nivel e importancia. El intercambio efectivo de paquetes y la QoS son servicios de alta importancia en el manejo de redes virtuales privadas. El protocolo de conmutación de etiquetas (MPLS) integra el ancho de banda, la latencia y la utilización de Capa 2 en la Capa3 para mejorar y simplificar el intercambio de paquetes. Es decir, es una técnica que utiliza la inteligencia del ruteo y el desempeño de los conmutadores para disminuir el tráfico de rutas, la congestión, las fallas de conexión y los cuellos de botella. MPLS proviene de tecnologías ya existentes, como son “Tag Switching” de CISCO y “ARIS” de IBM. En 1997 fue creado el primer grupo de trabajo de MPLS por el Grupo de Trabajo en Ingeniería de Internet (IETF). Hoy en día lo estándares de MPLS están en fase de borrador, algunos mas profundizados que otros, sin embargo es un tema de actualidad que en un futuro será un estándar de calidad y desempeño completo que permitirá formar sistemas de redes muy robustos. En este proyecto se pretende formar una base sólida que muestre las especificaciones y características de la tecnología MPLS en redes virtuales privadas, siendo un tema de actualidad y de gran futuro. Esto con el fin de proveer un pilar preeliminar para cualquier análisis y/o implementación del protocolo en un futuro. 1 1.1 Objetivo General El objetivo general de esta investigación es mostrar las ventajas que tiene la tecnología MPLS en Redes Privadas Virtuales y diferencias que tiene al trabajar con otras tecnologías. El protocolo MPLS involucra diversos temas de actualidad entre los cuales se encuentra: Calidad de Servicio (QoS) e Ingeniería de Tráfico (TE). Ambos son temas investigados hoy en día por un gran número de empresas y organizaciones gracias a las ventajas que presentan para establecer conexiones seguras sin importar la topología. 2 1.2 Objetivo Especifico Analizar a fondo las ventajas principales de la tecnología MPLS: • QoS • Ingeniería de Tráfico • Soporte VPN • Soporte Multiprotocolo Funcionalidad MPLS • Operación. • Etiquetado. • Formato de etiquetado. • Procesamiento de Etiquetas. • Flujo de Paquetes. • Selección de rutas. • Diferenciación de Servicios. Funcionalidad VPN • Túneles. • Distribución de etiquetas y protocolos de enrutamiento. 3 1.3 Alcances y Limitaciones 1.3.1 Alcances Investigación a fondo de la tecnología VPN MPLS. Funcionalidad. Ventajas. Ruta Tecnológica. Ruta Empresarial. Comparativa con otras tecnologías. 1.3.2 Limitaciones Se realizara la investigación de la tecnología con el fin de proveer una base preliminar para su futura implementación o análisis. Sin embargo el propósito de la Tesis es mostrar la funcionalidad del protocolo con la meta de que en un futuro se invierta en infraestructura o se contrate el servicio con algún proveedor. Esto para el manejo de la red Universitaria y así facilitar y mejorar la transmisión de datos como video y voz en tiempo real con garantía de calidad. 4 1.4 Hardware y Software a Utilizar 1.4.1 Hardware No se utilizará hardware ya que la tesis es de investigación, sin embargo uno de los objetivos de esta tesis es mostrar el beneficio que una red MPLS puede otorgar a la universidad y/o a cualquier institución. Para una lista de hardware compatible consultar [22]. 1.4.2 Software No se utiliza software ya que la tesis es de investigación. 5 2. MPLS 2.1 Protocolo MPLS El multiprotocolo de conmutación de etiquetas (MPLS) reduce significativamente el procesamiento de paquetes que se requiere cada vez que un paquete ingresa a un enrutador en la red, esto mejora el desempeño de dichos dispositivos y del desempeño de la red en general. Más adelante se mostrara detalladamente el manejo de paquetes (packets), etiquetas (labels) y encabezados (headers), así como el recorrido de los paquetes a lo largo de una red privada implementando MPLS. Dicho protocolo se puede considerar en desarrollo constante ya que en los últimos años la demanda de esta tecnología ha ido creciendo. Las capacidades más relevantes de dicho protocolo son cuatro: Soporte de Calidad sobre servicio (QoS), Ingeniería de tráfico, soporte para Redes Privadas Virtuales (VPNs) y soporte multiprotocolo. [12] En la siguiente sección se analiza a fondo los conceptos de QoS, Ingeniería de Tráfico, VPN’s y la importancia del soporte multiprotocolo ya que son pilares para entender las ventajas de MPLS. 6 2.1.1 Soporte QoS QoS permite a los administradores de redes el uso eficiente de los recursos de sus redes con la ventaja de garantizar que se asignaran más recursos a aplicaciones que así lo necesiten, sin arriesgar el desempeño de las demás aplicaciones. En otras palabras el uso de QoS le da al administrador un mayor control sobre su red, lo que significa menores costos y mayor satisfacción del cliente o usuario final. 2.1.1.1 ¿Por qué la importancia de QoS? En los últimos años el tráfico de redes ha aumentado considerablemente, la necesidad de transmitir cada vez más información en menos tiempo, como video y audio en tiempo real (streaming media). La solución no es solo aumentar el ancho de banda (bandwidth) cada vez más, ya que en la mayoría de los casos esto no es posible y el además es limitado. Es aquí donde la administración efectiva de recursos que provee QoS entra a relucir. 2.1.1.2 Beneficios principales de QoS QoS trabaja a lo largo de la red y se encarga de asignar recursos a las aplicaciones que lo requieran, dichos recursos se refieren principalmente al ancho de banda. Para asignar estos recursos QoS se basa en prioridades, 7 algunas aplicaciones podrán tener más prioridades que otras, sin embargo se garantiza que todas las aplicaciones tendrán los recursos necesarios para completar sus transacciones en un periodo de tiempo aceptable. En resumen QoS otorga mayor control a los administradores sobre sus redes, mejora la interacción del usuario con el sistema y reduce costos al asignar recursos con mayor eficiencia (bandwidth). Mejora el control sobre la latencia (Latency y jitter) para asegurar la capacidad de transmisión de voz sin interrupciones y por ultimo disminuye el porcentaje de paquetes desechados por los enrutadores: confiabilidad (Reliability). MPLS impone un marco de trabajo orientado a conexión en un ambiente de Internet basado en IP (Internet Protocol) y facilita el uso de contratos de tráfico QoS exigentes. 2.1.2 Ingeniería de Tráfico Es la habilidad de definir rutas dinámicamente y planear la asignación de recursos con base en la demanda, así como optimizar el uso de la red. MPLS facilita la asignación de recursos en las redes para balancear la carga dependiendo de la demanda y proporciona diferentes niveles de soporte dependiendo de las demandas de tráfico de los usuarios. El protocolo IP provee una forma primitiva de Ingeniería de Tráfico al igual que el protocolo del Camino 8 Más Corto Primero (OSPF) que permite a los enrutadores cambiar la ruta de los paquetes cuando sea necesario para balancear la carga. Sin embargo esto no es suficiente ya que este tipo de ruteo dinámico puede llevar a congestionar la red y no soporta QoS. Todo tráfico entre dos puntos finales (endpoints) sigue la misma ruta y puede ser cambiada si ocurriera congestión, sin embargo este cambio solo ocurre solo cuando hay congestión que es algo que siempre se trata de evitar. En MPLS a diferencia de OSPF no se ve paquete por paquete sino flujos de paquetes con su respectivo QoS y demanda tráfico predecible. Con este protocolo es posible predecir rutas en base a flujos individuales, pudiendo haber diferentes flujos entre canales similares pero dirigiéndose a diferentes enrutadores. Si llegase a amenazar congestión en la red, las rutas MPLS pueden ser re-ruteadas inteligentemente, de esta manera se pueden cambiar las rutas de flujo de paquetes dinámicamente conforme a las demandas de tráfico de cada flujo. [23] 2.1.2.1 Beneficios principales de ingeniería de trafico MPLS • Permite al eje troncal (backbone) expandirse sobre las capacidades de la ingeniería de tráfico de las redes de Modo de Transferencia Asíncrona 9 (ATM) y Frame Relay (FE) de Capa 2. (Véase modelo de Interconexión de Sistemas Abiertos OSI). • La ingeniería de tráfico es esencial para los ejes troncales de proveedores de servicios. Dichos ejes deben soportar un uso elevado de su capacidad de transmisión. • Utilizando MPLS las capacidades de ingeniera de tráfico son integradas a la Capa 3 (OSI) lo que optimiza el ruteo de trafico IP gracias a las pautas establecidas por la topología y las capacidades de la troncal. • La ingeniería de trafico MPLS rutea el flujo de tráfico a lo largo de la red basándose en los recursos que dicho flujo requiere y en los recursos disponibles en toda la red. • MPLS emplea la ruta más corta que cumpla con los requisitos del flujo de tráfico, que incluye: requisitos de ancho de banda, de medios y de prioridades sobre otros flujos. 2.1.2.2 ¿Cómo funciona la Ingeniería de Trafico MPLS? MPLS es básicamente una integración de tecnologías de Capa 2 a Capa 3, dicha integración permite manejar el tráfico a nuestra conveniencia. De esta manera el flujo de paquetes viaja a través de un túnel de datos en el eje troncal creado por el Protocolo de Reserva de Recursos (RSVP), la ruta de dicho túnel esta dada por los requisitos de recursos del túnel y de la red (constraint-based 10 routing). El Protocolo de Enrutamiento Interno (IGP) rutea el tráfico a dichos túneles. Con un buen manejo del tráfico en las redes, se pueden evitar congestionamientos, mejorar el desempeño general y reducir la latencia y el desechado de paquetes. En pocas palabras se maximiza la capacidad de la red y se minimizan los costos. 2.1.3 Soporte de Redes Virtuales Privadas (VPN) MPLS provee un mecanismo eficiente para el manejo de redes privadas virtuales. De esta manera el tráfico de una red privada “atraviesa” la Internet eficazmente y de manera transparente para el usuario, eliminando cualquier tráfico externo y protegiendo la información. Las VPN creadas con tecnología MPLS tienen una mayor capacidad de expansión y son más flexibles en cualquier red, principalmente IP. MPLS se encarga de reenviar (forward) paquetes a través de túneles privados utilizando etiquetas que actúan como códigos postales. Dicha etiqueta tiene un identificador que la aísla a esa VPN, más adelante se mostrara ampliamente el funcionamiento de las etiquetas. Las ventajas principales de implementar MPLS en VPN son: [24] • Maximizar la capacidad de ampliación. • Actualización transparente para el usuario. 11 • Utilización optima de los recursos de la red. • Diferenciación entre servicios. • Reducción de costos mediante consolidación de servicios. • Seguridad y rapidez de transmisión de información. • Uso de tecnología de vanguardia. 2.1.4 Soporte Multiprotocolo MPLS puede ser utilizando con diversas tecnologías, es decir no es necesario actualizar los routers IP existentes. Los routers MPLS pueden trabajar con routers IP a la par, lo que facilita la introducción de dicha tecnología a redes existentes ya que esta diseñada para trabajar con redes ATM y Frame Relay. Al igual que los routers, los switches MPLS peden trabajar con switches normales. Esta tecnología puede trabajar con tecnologías puras como son IPInternet, ATM y Frame Relay. Todo esto con la ventaja de tener redes mixtas añadiendo QoS para optimizar y expandir los recursos. Estas características hacen de MPLS una tecnología innovadora que se puede aplicar a redes nuevas así como a redes ya existentes. [13] 2.2 Ventaja MPLS sobre otras tecnologías Las soluciones más comunes para implementar redes privadas son las siguientes: [22] 12 • Frame Relay • Circuitos ATM • Túneles tradicionales (IP-IP y GRE) • IPSec • L2F • PPTP • L2TP • MPLS (a manera de comparación) 2.2.1 Frame Relay Es un protocolo de transporte orientado a conmutación de paquetes manejando velocidades desde 2.4 hasta 45 Mbps y mayores en algunos tipos de implementaciones. Esta tecnología nació con el fin de transmitir datos y fue evolucionando con el tiempo para soportar transporte de voz y de video. Frame Relay fue concebido originalmente como un protocolo para manejar interfaces de tipo Red Digital de Servicios Integrados (ISDN). En donde se proporciona la comunicación de paquetes de conmutación de datos usada a través de la interfaz con los dispositivos de usuario, como lo son: (enrutadores, puentes, etc.) y los equipos de red. La red proporcionada por Frame Relay puede ser pública o privada. [18] 13 La característica que hace de Frame Relay una opción atractiva es su bajo costo (principalmente frente a ATM), sin embargo Frame Relay depende de una buena línea de transmisión si se desea un funcionamiento eficiente. Otra desventaja notable es que necesita que los nodos conectados a la red Frame Relay manejen sus propios protocolos para control de flujo, envío de acuses de recepción y recuperación de errores. Frame Relay proporciona conexiones entre usuarios a través de una red pública, del mismo modo que lo haría una red privada con circuitos punto a punto, esto quiere decir que es orientado a la conexión. Su uso es principalmente en el eje troncal de redes de datos en donde se transportan protocolos heredados como lo son: 2.2.1.1 X.25 Interfaz estándar para conexión de terminales de datos a redes públicas basado en el Protocolo de Enlace de Alto Nivel (HDLC) propietario de IBM. Es un protocolo de empaquetamiento conmutado, definido por el Comité Consultivo de Innovación y Transferencia de Tecnología (ITT) y adoptado luego por la Organización Internacional de Estandarización (ISO). Establece mecanismos de direccionamiento entre usuarios, negociación de características de comunicación, técnicas de recuperación de errores, entre otros. Se utilizaba en redes de comunicaciones de baja/media velocidad, fue de gran importancia hasta finales de los 80’s. 14 X.25 fue el conjunto de protocolos mejor conocido y más ampliamente utilizado de todos los protocolos basados en el modelo OSI. Posteriormente fue recomendado por una organización internacional que recomienda estándares para los servicios telefónicos internacionales llamada Unión Internacional de Telecomunicaciones Sección Telecomunicaciones (ITU-TS). 2.2.1.2 Arquitectura de Sistema de Red (SNA) Protocolo desarrollado por IBM para el manejo de redes con mainframes, actualmente se considera obsoleto sin embargo se estima que gran parte de las redes institucionales utilizan SNA como único protocolo de transporte. Esta tecnología es utilizada principalmente en bancos en conjunto con servidores AS/400 de IBM o el SNA Server que corre bajo Windows Server. 2.2.1.3 Comunicación Binaria Síncrona (Bisync) Es uno de los primeros protocolos de transferencia de frames, en el que se transmiten tramas de bytes y no de bits como en los protocolos de la última década. 15 2.2.1.4 HDLC Protocolo de comunicaciones de datos punto a punto entre dos elementos. Proporciona recuperación de errores en caso de perdida de paquetes de datos, fallos de secuencia y otros. Mediante una red de conmutadores de paquetes conectados por líneas punto a punto y con los usuarios, se constituye en la base de las redes de comunicaciones X.25. 2.2.2 Circuitos ATM El Modo de Transferencia Asíncrona es un protocolo de transporte de alta velocidad, actualmente se encuentra implementado principalmente en redes locales en compañías que requieren altas velocidades para transferencia de datos. ATM en Redes de Área Amplia (WAN) proporciona un backbone de conmutación de las redes que así lo requieran y tiene facilidad de conexión a redes de alta velocidad (Como carriers y proveedores de servicios). Los anchos de banda soportados por ATM permiten el transporte de vídeo, voz y datos, como se muestra posteriormente. Esta tecnología define dos velocidades de transmisión, STM-1 (155Mbps) y STM-4 (620Mbps). Actualmente esta tecnología es utilizada ampliamente, sin embargo esta siendo sustituida por medios de transmisión síncronos y ópticos. 16 ATM es una tecnología de conmutación de paquetes relativamente nueva, basada en la Red Digital de Servicios Integrados de Banda Ancha (BISDN). La característica más relevante en cuanto al envío de paquetes es que estos son de longitud fija, 53 bytes, de los cuales 48 son la información (payload) y los 5 restantes son el encabezado (header) que es donde se lleva acabo el direccionamiento. Esta característica permite diferentes tipos de tráfico en la misma red ya que la información es transportada de una manera segura y predecible gracias a la longitud física de sus paquetes. Otra diferencia es que ATM esta basado en conmutadores, lo cual tiene sus ventajas sobre el bus de datos como son: Reservar ancho de banda, Mayor ancho de banda, velocidades flexibles y procedimientos de conexión bien definidos. 2.2.2.1 Arquitectura ATM La arquitectura ATM esta dividida en tres capas: 1. Adaptación: Divide los diferentes tipos de datos en el payload. 2. Capa intermedia: Añade los datos de la Capa de Adaptación (OSI) con los 5 bytes del encabezado y garantiza que el paquete será enviado por la conexión adecuada. 17 3. Capa física: Define las características físicas del enlace entre las interfaces de red. ATM no esta ligado a un tipo de transporte físico en particular, este puede ser par trenzado, coaxial u óptico. En el campo de las VPN’s el Modo de Transferencia Asíncrona reserva Circuitos Virtuales Permanentes (PVC) con un ancho de banda determinado para cada unos de los puntos a conectar. Los PVC son líneas virtuales punto apunto que se interconectan a través de un circuito establecido. 2.2.2.2 Desventajas que ATM presenta • Hoy en día el tráfico de Internet es IP en un gran porcentaje, el manejo de redes ATM es diferente al de IP por lo que se tienen que duplicar dichos sistemas, uno para cada uno, esto significa mayores problemas de operación y mantenimiento (añadidos al alto costo de implementar dicha tecnología). • El problema de N2, esto se refiere al número de enlaces necesarios para conectar los nodos de la red. Se utiliza la regla de Ν (Ν − 1) , por ejemplo 2 si tenemos 60 nodos es necesario tener 60 × 59 enlaces, que son: 1770! • ATM es radicalmente diferente a las demás tecnologías de Red de Área Local (LAN), por lo que muchos conceptos aun no están estandarizados, los sistemas operativos y algunos protocolos en particular requieren de modificaciones significativas para poder trabajar junto con ATM. Todo esto genera perdida de tiempo y dinero. 18 • Existen tecnologías de alta velocidad que proveen alto rendimiento a precios que los productos ATM no pueden competir. 2.2.3 Túneles IP En las redes que no utilizan a ATM como protocolo de transporte, se puede utilizar otro tipo de técnica, el uso de túneles IP, en donde los datos viajan a través de la red como si hubiera un túnel directo entre cada nodo de origen y destino. Los túneles IP aportan pocas ventajas sobre los PVC de ATM, salvo que los PVC solo funcionan con ATM y los túneles al estar por encima del nivel físico y de enlace del modelo OSI, son independientes del medio de transmisión. Los túneles mas comunes son los de Ruteo de Encapsulación Genérica (GRE) y los IP sobre IP (IP-IP). Ambos tipos de túneles carecen de cifrado y proveen conexiones virtuales y asignación estática de IP sin esconder la comunicación. IP-IP no provee ningún tipo de autenticación, GRE solo provee un método de autenticación sencillo. IP-IP es una técnica muy limitada ya que solo puede transportar paquetes IP por lo que el túnel solo puede manejar tráfico IP. Si se desea trasportar otro tipo de protocolos, es necesario utilizar túneles GRE, sin embargo los dos tipos de túneles son inseguros en cuanto a protección de información. 19 2.2.3.1 Desventajas Túneles IP En una arquitectura típica de túneles, se utilizan concentradores de túneles para manejarlos, dichos equipos son muy costosos y complejos. Otra desventaja es que el tráfico tipo túnel de estos métodos no es monitoreado por los routers, con lo que se pierde la información del header IP en donde se manejan las políticas QoS. 2.2.4 Seguridad del Protocolo de Internet (IPSec) El protocolo IPSec surge a partir del desarrollo del Protocolo de Internet versión 6 (IPv6). IPv6 es la última versión del protocolo IP, la principal característica es que maneja direcciones de 128 bits, en comparación de las direcciones de 32 bits del Protocolo de Internet versión 4 (IPv4). Dicha tecnología se desarrolla ya que se estima que hoy en día ya están asignadas 2/3 del total de direcciones que proporciona IPv4, con IPv6 se pretende manejar que cada dispositivo de red tenga una dirección IP diferente (en todo el mundo), esto gracias a los trillones de direcciones que proporcionan 128 bits. IPSec empezó como una extensión de IPv6, pero ya que cubría las necesidades de un gran número de clientes se implanto en parte para IPv4. La característica mas importante de IpSec es la posibilidad de encriptar los datos transmitidos, esta cualidad hace de este protocolo una opción muy atractiva y de rápida difusión en el mundo empresarial. 20 2.2.4.1 Desventajas IpSec Algunas de las desventajas principales del protocolo Ipsec basado en IPv6 son: [25] • Protocolo complejo. (Muchas características y opciones) • Configuración complicada. • Requiere de configuración en el cliente. 2.2.5 Reenvío de Capa 2 (L2F) El protocolo L2F se creó en las primeras etapas de desarrollo de las VPN´s y fue diseñado para establecer túneles de tráfico desde usuarios remotos hasta sus sedes. La principal característica de L2F es que como el establecimiento de túneles de L2F no depende de IP, es capaz de trabajar directamente con otros medios, como Frame Relay y ATM. Utiliza el Protocolo Punto a Punto (PPP) para la autenticación del usuario remoto, pero también implementa otros sistemas de autenticación como el Sistema de Control de Acceso del Controlador de Acceso a Terminales (TACACS+) y el Servicio de Usuario de Acceso Telefónico de Autenticación Remota (RADIUS). L2F permite que los túneles contengan más de una conexión. 21 Hay dos niveles de autenticación del usuario, primero por parte del Proveedor de Servicio de Internet (ISP) anterior al establecimiento del túnel, y por otra parte, cuando se ha establecido la conexión con la puerta de enlace (gateway) corporativa. Como L2F es un protocolo de Nivel de Enlace de Datos (OSI), ofrece a los usuarios flexibilidad para manejar protocolos distintos a IP, como Intercambio de Paquetes de Red Interna (IPX) e Interfase Extendida de Usuario de NetBios (NetBEUI). 2.2.6 Protocolo de Túneles Punto a Punto (PPTP) Es un protocolo desarrollado por Microsoft, U.S. Robotics, Ascend Communications, 3Com/Primary Access, ECI Telematics conocidas colectivamente como PPTP Forum, para implementar redes privadas virtuales. En la actualidad no se utiliza y fue sustituyó por L2TP e IPSec ya que la IETF nunca lo ratificó como estándar ya que era vulnerable y no se podía utilizar donde la privacidad de los datos fuera importante. [RFC 2637] El fallo de PPTP fue causado principalmente por errores de diseño en la criptografía del Protocolo Ligero de Autenticación Extensible (LEAP) de Cisco, en la Versión 2 del Protocolo de Autenticación por Reto de Microsoft (MS-CHAPv2) [RFC 2759] y por las limitaciones de longitud de clave del Protocolo Punto a Punto de Encriptamiento de Microsoft (MPPE). [RFC 3078] 22 2.2.7 Protocolo de Túneles de Capa 2 (L2TP) L2TP fue diseñado por el IETF como el heredero aparente de los protocolos PPTP y L2F. Fue creado para corregir las deficiencias de estos protocolos y establecerse como un estándar aprobado por el IETF. L2TP utiliza PPP para proporcionar acceso telefónico (dial-up) que puede ser dirigido a través de un túnel a través de IP hasta un punto determinado. L2TP define su propio protocolo de establecimiento de túneles, basado en L2F. El transporte de L2TP está definido para una gran variedad de tipos de paquete, incluyendo X.25, Frame Relay y ATM. Cuando se utiliza PPP para el establecimiento telefónico de enlaces, L2TP incluye los siguientes mecanismos de autenticación: • PPP • Protocolo de Autenticación por Password (PAP). • Protocolo de Autenticación por Reto (CHAP). A pesar de que L2TP ofrece una variante económica, multiprotocolo y con acceso a LAN remotas, no presenta características criptográficas suficientemente robustas. Por ejemplo: 23 Característica: Sólo se realiza la operación de autenticación entre los puntos finales del túnel. Problema: Esto puede dar lugar a suplantaciones de identidad en algún punto interior al túnel ya que no se realiza autenticación para cada uno de los paquetes que viajan por él. Característica: No hay comprobación de la integridad de cada paquete. Problema: Es posible realizar un ataque de denegación del servicio (denial of service) por medio de mensajes falsos de control que den por acabado el túnel L2TP. Característica: L2TP no encripta en un principio el tráfico de datos de usuario. Problema: Puede dar problemas cuando sea importante mantener la confidencialidad de los datos. Característica: La información contenida en los paquetes PPP puede ser cifrada, sin embargo el protocolo no cuenta con mecanismos para generar y/0 renovar claves automáticamente. Problema: Esto puede hacer que alguien que escuche en la red (sniffing) y obtenga alguna clave pueda tener acceso a todos los datos transmitidos. 24 Ante estos inconvenientes la IETF optó por crear un nuevo conjunto de protocolos para L2TP, muy parecidos a los utilizados en IPSec, por lo que para no repetir el trabajo tomó la decisión de los mismos protocolos de IPSec para proteger los datos. [RFC 3193] El Protocolo de Túneles de Capa 2 es en realidad una variación de los protocolos de encapsulamiento IP. Los túneles L2TP se crean encapsulando tramas L2TP en paquetes de tipo Protocolo de Datagramas de Usuario (UDP). Dicho protocolo encapsula la información en un paquete IP por lo que las direcciones de origen y destino definen los extremos del túnel. Es aquí donde los protocolos IPSec pueden ser utilizados sobre este paquete para proteger la información. 2.2.8 MPLS Este protocolo esta siendo estandarizado por el IETF, de hecho compite directamente con IPSec que también esta siendo estandarizado por el Instituto pero en un grupo de trabajo diferente. Las ventajas que MPLS tiene sobre sus adversarios más cercanos (IPSec y ATM) es que dicho protocolo “encapsula” la información por encima del nivel de enlace y debajo de IP, lo que se consigue con esto es mejorar el tiempo de resolución para los paquetes IP. Como se menciono antes MPLS utiliza RSVP como protocolo de señalización para la reserva de recursos. Hoy en día RSVP representa la forma 25 más completa y sencilla para implementar técnicas de Ingeniería de Tráfico. Una ventaja fundamental que tiene MPLS sobre IPSec es en que las redes privadas virtuales implementadas con dicha tecnología solo se aplican al backbone del proveedor del servicio, lo que provee un escenario transparente para el usuario final. RSVP provee otro tipo de ventajas además de la Ingeniería de Trafico ya que permite técnicas de protección de los caminos de MPLS. Si se diera un problema con el enlace del backbone del proveedor, no se apreciaría perdida de información ya que automáticamente se toma un camino físico alternativo. [26] MPLS crea una tabla de rutas distinta para cada VPN para permitir la reutilización del espacio de direcciones y para separar el trafico entre VPN’s; ambas son ventajas para los clientes ya que pueden crear una VPN nueva sin necesidad de redireccionar. Hoy en día las tecnologías más utilizadas para el manejo de Redes Privadas Virtuales son MPLS y IPSec, ambas en proceso de estandarización por el IETF. Las operadoras (Telmex, Avantel, AT&T, etc.) están optando por migrar sus redes ATM a MPLS debido a las ventajas que tiene en costo y las herramientas que maneja para mejorar el desempeño de la red en general. Ambas tecnologías se están desarrollando a la par, MPLS por un lado se enfoca principalmente en los backbones e IPSec por otro en los clientes. Por esta razón se busca hibridar ambas tecnologías en un futuro para que IPSec maneje la 26 encriptación de la información y MPLS la provisión de servicios y de ruteo inteligente de tráfico. 2.3 Funcionamiento MPLS Una red MPLS consiste de un conjunto de Enrutadores de Conmutación de Etiquetas (LSR) que tienen la capacidad de conmutar y rutear paquetes en base a la etiqueta que se ha añadido a cada paquete. Cada etiqueta define un flujo de paquetes entre dos puntos finales. Cada flujo es diferente y es llamado Clase de Equivalencia de Reenvío (FEC), así como también cada flujo tiene un camino específico a través de los LSR de la red, es por eso que se dice que la tecnología MPLS es “orientada a conexión”. Cada FEC, además de la ruta de los paquetes contiene una serie de caracteres que define los requerimientos de QoS del flujo. Los routers de la red MPLS no necesitan examinar ni procesar el encabezado IP, solo es necesario reenviar cada paquete dependiendo el valor de su etiqueta. Esta es una de las ventajas que tienen los routers MPLS sobre los routers IP, en donde el proceso de reenvío es más complejo. [14] En un router IP cada vez que se recibe un paquete se analiza su encabezado IP para compararlo con la tabla de enrutamiento (routing table) y ver cual es el siguiente salto (next hop). El hecho de examinar estos paquetes en cada uno de los puntos de tránsito que deberán recorrer para llegar a su 27 destino final significa un mayor tiempo de procesamiento en cada nodo y por lo tanto, una mayor duración en el recorrido. 2.3.1 Diagrama de Operación MPLS Figura 2. 1 : Funcionamiento MPLS A continuación los pasos que sigue el flujo de paquetes MPLS en la Figura 2.1: 1. Antes de mandar la información por el flujo es necesario establecer un Camino de Conmutación de Etiquetas (LSP) entre los routers que van a transmitir la FEC. Dichos LSP sirven como túneles de transporte a lo largo 28 de la red MPLS e incluyen los parámetros QoS específicos del flujo. Estos parámetros sirven para determinar dos cosas: a. La cantidad de recursos a reservar al LSP. b. Las políticas de desechado y la cola de procesos en cada LSR. Para lograr los puntos anteriores se utilizan dos protocolos para intercambiar información entre los routers de la red. Se le asignan etiquetas a cada flujo FEC particular para evitar el uso de etiquetas globales que dificultan el manejo y la cantidad de las mismas. Por esta razón las etiquetas solo hacen referencia al flujo específico. La asignación de nombres y rutas se puede realizar manualmente o bien se puede utilizar el Protocolo de Distribución de Etiquetas (LDP). 2. En esta sección el paquete entra al dominio MPLS mediante un LSR frontera que determina que servicios de red requiere, definiendo así su QoS. Al terminar dicha asignación el LSR asigna el paquete a una FEC y a un LSP particular, lo etiqueta y lo envía. Si no existe ningún LSP, el router frontera trabaja en conjunto con los demás LSRs para definirlo. 3. En este momento el paquete ya esta dentro del dominio MPLS, cuando los routers contiguos del LSR reciben el paquete se llevan acabo los siguientes procesos: 29 a. Se deshecha la etiqueta de entrada y se le añade la nueva etiqueta de salida al paquete. b. Se envía el paquete al siguiente LSR dentro del LSP. 4. El LSR de salida “abre” la etiqueta y lee el encabezado IP para enviarlo al destino final. 2.3.2 Ventajas específicas de MPLS En este momento ya es posible identificar algunas de las ventajas internas más importantes que MPLS presenta: 1. Un domino MPLS consiste de una serie de routers habilitados con MPLS continuos y contiguos. El tráfico puede entrar por un punto final físicamente conectado a la red, o por otro router que no sea MPLS y que este conectado a un red de computadoras sin conexión directa a la nube MPLS. 2. Se puede definir un Comportamiento por Salto (PHB) diferente en cada router de la FEC. El PHB define la prioridad en la cola y las políticas de desechado de los paquetes. 30 3. Para determinar el FEC se pueden utilizar varios parámetros que define el administrador de la red. [14] a. Dirección IP fuente o destino y/o las direcciones IP de la red. b. Utilizar el ID del protocolo IP. c. Etiqueta de flujo IPv6. d. Numero de puerto de la fuente o del destino. e. El punto de código (codepoint) de los servicios diferenciados (DSCP). 4. El reenvío de la información se lleva acabo mediante una búsqueda simple (lookup) en una tabla predefinida que enlaza los valores de las etiquetas con las direcciones del siguiente salto (next hop). 5. Los paquetes enviados de mismos endpoints pueden tener diferente FEC, por lo que las etiquetas serán diferentes y tendrán un PHB distinto en cada LSR. Esto puede genera diferentes flujos en la misma red. 31 2.3.3 Diagrama de Manejo de colas y etiquetas Figura 2. 2 Reenvío de Paquetes Como se puede observar en la Figura 2.2 cada LSR tiene una tabla de reenvío para cada LSP que pasa por sus interfaces. Dichas tablas manejan diferentes tipos de datos, la tabla del LSR de entrada maneja la FEC, la interfaz de salida y etiqueta de salida, los LSR siguientes manejan etiqueta e interfaz, ambas de entrada y de salida. Posteriormente se muestra como llegan los datos (a y b) sin etiqueta al LSR de entrada, el cual les asigna una etiqueta de salida y lo manda al siguiente LSR (next hop LSR). El LSR siguiente deshecha las etiquetas de entrada y les añade nuevas y las manda a los LSR correspondientes, es aquí donde se ve la escalabilidad de la tecnología, ya que las etiquetas solo tienen significado local. 32 Otra de las funciones del LSR de entrada es asignarle una FEC a cada paquete sin etiquetar que entra, y en base a esto asigna cada paquete a un LSP particular. En la Figura 2.2 tenemos dos FECs (a y b) cada uno con su LSP particular. 2.3.4 Apilamiento de Etiquetas (Label Stacking) Una de las características más importantes que tiene MPLS es el apilamiento de etiquetas que maneja, un paquete etiquetado puede contener varias etiquetas organizadas en modo Ultimo en Entrar Primero en Salir (LIFO). El procesado de etiquetas en MPLS siempre se basa en la etiqueta superior, por lo que en cualquier LSR se puede añadir (push) o remover (pop) una etiqueta. La ventaja principal del apilamiento de etiquetas es que permite añadir rutas parciales dentro de la red a un LSP existente, creando así túneles. Al principio de cada túnel los LSR asignan la misma etiqueta a los paquetes que van entrando mediante la operación push que mencionamos anteriormente. Al final de cada túnel pasa lo inverso, el LSR de salida remueve la etiqueta superior (añadida a la entrada del túnel) para mostrar la etiqueta original con el fin de que siga su trayectoria original. Esta operación se puede realizar indefinidamente formando así una red de túneles dentro de cada LSP original. Esta es una característica que ATM maneja, sin embargo solo maneja apilamiento de un nivel. 33 2.3.5 Formato de etiquetas MPLS Figura 2. 3 Formato de Etiqueta Una etiqueta MPLS esta conformada por 32 bits, divididos como se muestra en la Figura 2.3, y contiene los siguientes elementos: • Valor de la etiqueta: Etiqueta de 20 bits con valor local. • Experimental: Son los 3 bits siguientes reservados para uso experimental. Se podría especificar en estos bits el PHB del salto. (Ver Cáp. 2.3.12.1) • S: Es el bit de posición de pila: o Cuando es 1 denota que es la entrada más antigua en la pila. o Cuando es 0 denota que es cualquier otra entrada. 34 • Tiempo de Vida (TTL): Son los últimos 8 bits del paquete y se utilizan para codificar el valor del conteo de saltos (IPv6) o de tiempo de vida (IPv4). 2.3.5.1 Procesando el TTL Un elemento clave en el encabezado de un paquete IP es el campo TTL y el Limite de Saltos (Hop limit). En un ambiente común de Internet (basado en IP), dicho campo va disminuyendo uno a uno hasta que llega a cero y se elimina el paquete. Esto es una medida de prevención de los paquetes se ciclen (looping) o estén demasiado tiempo en el Internet debido a un ruteo mediocre. En el ruteo MPLS no se lee el encabezado de los paquetes, es por eso que se añaden estos 8 bits que manejan el TTL para evitar que ocurra lo mencionado anteriormente. 2.3.5.2 Reglas para procesar el campo TTL: 1. Cuando un paquete IP llega al router de entrada de un dominio MPLS, solo se añade una etiqueta de entrada a la pila, el valor de TTL de este campo se obtiene del valor original del TTL en IP. En este paso se da por supuesto que el campo ya fue disminuido, como parte del proceso IP. Cuando un paquete MPLS llega a uno de los LSR internos, el valor del campo TTL de la etiqueta del primer elemento en la pila es disminuido. Entonces: 35 a. Si el valor es 0, no se reenvía el paquete, dependiendo del valor que tenga la etiqueta del paquete puede ser desechado o es enviado al nivel de red para procesamiento de errores. b. Si el valor es positivo, se le añade a la nueva etiqueta de la pila en el campo TTL y es reenviado al siguiente salto. El valor del campo TTL del paquete reenviado esta dado en función del valor del campo de Tiempo de Vida del paquete original. 2. Cuando un paquete MPLS llega a un LSR de salida, el valor del campo TTL en la etiqueta es disminuido (uno por uno) y posteriormente se quita la etiqueta de la pila, lo que deja una pila vacía. Entonces: a. Si el valor es 0, no se reenvía el paquete, dependiendo del valor que tenga la etiqueta del paquete puede ser desechado o es enviado al nivel de red para procesamiento de errores. b. Si el valor es positivo, se coloca en el campo TTL del encabezado IP y es enviado utilizando ruteo IP tradicional. Es importante mencionar que cuando el valor del campo TTL llega a 0 y el paquete no ha llegado a su destino predefinido en el valor de la etiqueta, dicho paquete es desechado y se envía un mensaje del Protocolo de Control de 36 Mensajes de Internet (ICMP) al remitente. Esto con el fin de evitar que un paquete no entregado se quede circulando en el Internet. En teoría TTL esta medido en segundos, aunque cada equipo (host) que pase el paquete debe reducir el Tiempo de Vida en al menos una unidad. El campo TTL es disminuido en una unidad en cada salto, es por eso que en IPv6 a este decremento de unidades en cada salto se le llama Conteo de Saltos (hop count). [27] 2.3.6 Pila de etiquetas La última sección del formato de las etiquetas es la sección S, en donde está contenida la información del orden en la pila. Cuando S = 1 indica que es la última etiqueta y que al salir quedará vacía la pila, esto generalmente ocurre en el router de salida, cuando es S = 0 indica que por lo menos hay otra etiqueta antes, en la pila. Figura 2. 4 Formato de paquete MPLS Lo anterior se puede ver claramente en la Figura 2.4. Es muy importante considerar que cuando un Enrutador de Etiquetas Frontera (LER) saca el último encabezado MPLS del paquete este debe de mandar la información (payload) fuera de la nube MPLS al destino contenido en el encabezado IP, previamente 37 obtenido por el router de entrada. La importancia radica en que los routers MPLS no cuentan con tablas de búsqueda de etiquetas (label lookup tables). [20] Para entender esto podemos ver que cuando a un router MPLS le llega el valor S=1 en el encabezado MPLS se sabe que el siguiente encabezado es el encabezado de red y que debe usarlo para reenviar el paquete conforme al mecanismo de ese tipo de red. Como se menciona anteriormente MPLS soporta múltiples protocolos de red, en realidad todos, pero un encabezado IP no tiene la misma estructura que un encabezado Ethernet, por lo que aunque el router de salida sepa que lo siguiente en la pila es un encabezado de red, no sabe de que tipo es y no puede interpretarla. Esto se soluciona leyendo los valores reservados del campo de valor de la etiqueta de 20 bits (Véase Figura 2.3), este indicará el tipo de encabezado de red para que así pueda “entender” lo que este dice. Los valores reservados para el campo “valor de etiqueta” de la primera etiqueta que se añade al paquete (la etiqueta con el valor S=1) son los siguientes: • Label “0”: El paquete proviene de una red IPv4. • Label ”2”: El paquete proviene de una red IPv6. • Label ”4” – “15” reservados para uso futuro por la Agencia de Asignación de Números de Internet (IANA). 38 Las etiquetas de la pila de etiquetas MPLS van después de los encabezados de la capa de enlace de datos (modelo OSI), pero antes de los encabezados de la capa de red. En la Figura 2.4, el primer elemento (lado izquierdo) es más cercano a la capa de red, y el último elemento (S=0, lado derecho) esta es más cercano al encabezado de la capa de enlace de datos. Por esta razón el paquete de la capa de red sigue a la etiqueta que tenga el bit S establecido. A continuación una descripción gráfica de la ubicación del protocolo MPLS en cuanto al modelo OSI. Figura 2. 5 Modelo OSI-MPLS En la Figura 2.5 se muestra el modelo OSI añadiendo el campo MPLS entre el Nivel de Enlace y el Nivel de Red. 39 2.3.7 Relación entre FECs, LSPs y Etiquetas. Para entender el funcionamiento de la tecnología MPLS, es necesario comprender y analizar la importancia de la relación entre etiquetas, el LSP y la FEC. La característica principal de la funcionalidad de la tecnología MPLS es que el tráfico se divide en “canales privados” (Clase de Equivalencia de Reenvío). El tráfico de cada FEC viaja por medio de un LSP dentro del dominio MPLS. Los paquetes dentro de un FEC solo tienen validez en dicho canal, ya que las etiquetas son de significado local. A lo largo de la nube MPLS en cada LSR se reenvían los paquetes etiquetados a la ruta especifica de la etiqueta, cada vez que entra el paquete al LSR este reemplaza el valor de la etiqueta de entrada con el nuevo valor de la etiqueta de salida. Esto se lleva acabo sucesivamente hasta que dicho paquete llega al router se salida. [22] 2.3.7.1 Requisitos para el tráfico MPLS Para que esto se lleve acabo satisfactoriamente se deben de cumplir los siguientes requisitos: 1. Todo tráfico debe de asignarse a un FEC específico. 40 2. Se necesita un protocolo de ruteo para determinar la topología y las condiciones del dominio para que las LSPs puedan ser asignadas a un FEC. Adicionalmente, el protocolo de ruteo debe de recolectar información y utilizarla para proveer los requerimientos de QoS del FEC. 3. Cada LSR debe de conocer las LSPs de cada FEC para poder asignarles una etiqueta de entrada y deben de comunicarla a todos los demás LSR en la ruta de dicho LSP. [27] A continuación un análisis más profundo de cada requisito. 2.3.7.1.1 Topología de LSPs. El primer requisito se lleva acabo fuera de las especificaciones MPLS. La asignación del flujo de datos a una FEC específico se puede llevar acabo de diferentes maneras: • Configuración manual. • Protocolo de asignación. • Análisis de paquetes de entrada en el LER. La topología de la red MPLS tiene cuatro variantes, de las cuales la última sigue en etapa de desarrollo: 41 1. Un LSR de entrada y otro de salida. En este caso solo es necesario un camino a través del dominio MPLS. 2. Un LSR de salida y varios LSR de entrada. Este caso se da cuando se le asigna tráfico de diferentes fuentes a una sola FEC, el flujo de datos puede entrar por diferentes LSR de entrada. Un ejemplo claro es el caso de una intranet empresarial en una misma ubicación conectada a un dominio MPLS con varios LSR de entrada. Esto genera varios caminos dentro del dominio MPLS que comparten los últimos saltos (hops) antes de llegar al LER. 3. Varios LSRs de salida y tráfico unicast. En este caso la FEC puede requerir varios LSP a diferentes LERs, esto se da cuando el LSR de salida esta conectado a un cluster de redes. Todos los destinos del cluster de redes son alcanzables por el mismo LSR de salida. Este caso se da cuando un paquete no es asignado a la FEC por la dirección destino de la capa de red (como comúnmente sucede).[ RFC 3031] 4. Varios LSR de salida para tráfico a múltiples destinos (multicast). El tráfico multicast en MPLS es la tecnología que dará funcionalidad a los servicios de banda telecomunicaciones. ancha de la próxima generación de De esta manera se pueden proveer servicios de transmisión de video de alta calidad y fiabilidad a multiusuarios ocupando 42 un mismo canal. En un pasado para simular multicast se utilizaba un canal distinto (transmitiendo la misma información) para cada usuario, por ejemplo en una videoconferencia dirigida a destinos diferentes. Esto representaba un coste altísimo por el ancho de banda requerido, además de que no soportaba QoS ni Ingeniería de Tráfico. Multicast en MPLS es el futuro de la televisión vía IP y de la transmisión de streaming media dirigida a multiusuarios. 2.3.7.1.2 Selección de rutas El Multiprotocolo de Conmutación de Etiquetas maneja tres tipos de técnicas para la selección de rutas que toman los LSP dentro de un FEC específico: • Ruteo de salto a salto (Hop-by-hop routing). • Ruteo Explicito (Explicit routing). • Algoritmo de Ruteo basado en restricciones (Constraint-based routing algorythm). 2.3.7.1.2.1 Ruteo Salto a Salto En el ruteo de salto a salto cada LSR escoge el siguiente salto para cada FEC, independientemente de los demás LSRs. En esta opción se utiliza OSPF, 43 siendo uno de los protocolos de ruteo más sencillos, provee sólo algunas de las ventajas de MPLS como son: conmutación y apilado de etiquetas, trato diferencial de paquetes de diferentes FEC pero con la misma ruta. Sin embargo no provee Ingeniería de Tráfico ni Políticas de Ruteo para el manejo de QoS. 2.3.7.1.2.2 Ruteo Explicito En el ruteo explicito el LSR de entrada o de salida define todos o varios de los LSRs por los que va pasar el LSP dentro de un FEC determinado. Cuando el LER define todos los LSR se cumple completamente el ruteo explicito, si define solo algunos el ruteo explicito es parcial. Con cualquiera de las técnicas de ruteo explicito se manejan todos los beneficios de MPLS, tanto de ingeniería de tráfico como de QoS. Las rutas explicitas se pueden definir de previamente o bien dinámicamente. Si las rutas se definen dinámicamente se mejora el alcance de las técnicas de Ingeniería de Tráfico. Para que esto sea posible el LER debe de tener información de la topología de la red y de los requisitos de QoS del dominio. El documento RFC 2676 [6] sugiere que la información QoS debe de dividirse en dos categorías: 44 a) Un conjunto de atributos asociados con un FEC o con un conjunto de FECs similares que definen sus características de comportamiento a forma de grupo. b) Un conjunto de atributos asociado con los recursos, como nodos y ligas, que obligan el paso de los LSPs a través de ellas. Las categorías se deben formar con el fin de cumplir con las especificaciones de la Ingeniería de Tráfico en MPLS. 2.3.7.1.2.3 Ruteo mediante un algoritmo Por ultimo esta el ruteo mediante un algoritmo a base de restricciones en donde se toman en cuenta los requisitos de varios flujos de paquetes y los recursos disponibles en cada salto y en diferentes nodos. Una red MPLS que implementa esta técnica de selección de rutas esta consciente en todo momento de la utilización de los recursos, de la capacidad disponible y de los servicios proporcionados. Las técnicas tradicionales de ruteo como OSPF y el Protocolo de Pasarela Externa (BGP) no cuentan con métricas de coste (cost metrics) suficientes para el manejar restricciones en sus algoritmos. La razón principal es que solo manejan una métrica de costo ya sea conteo de saltos, retraso (delay), etc. Para esta técnica es necesario contar con otro tipo de métricas, como: 45 Proporción de pérdida de paquetes, reserva de capacidad actual, retraso de propagación y transferencia máxima de datos de la conexión. [7] 2.3.7.1.3 Distribución de Etiquetas Para configurar el LSP cada LSR en el camino debe realizar una serie de operaciones: 1. Primero debe de asignar una etiqueta al LSP que sirve para identificar los paquetes que pertenecen a dicho FEC. 2. Posteriormente debe de informar a todos los nodos (computadoras, servidores, routers IP, conmutadores, etc.) que mandan información, de la nueva etiqueta asignada por el LSR a la FEC en cuestión. Esto con el propósito de que dichos nodos etiqueten correctamente los paquetes con dirección al LSR que los contacto. 3. Por último debe saber cual es el siguiente salto para el LSP y la etiqueta que le asignó el next hop LSR. Este proceso permite la LSR mapear la etiqueta de entrada a una etiqueta de salida. (Ver Figura 3.2) La primera operación se realiza localmente, sin embargo la segunda y la tercera se deben realizar manualmente o mediante un protocolo de distribución 46 de etiquetas. La función principal de dichos protocolos es permitir a los LSR informar a los demás LSRs de las operaciones que realizó a las etiquetas del FEC. Adicionalmente, los protocolos de distribución informan las capacidades MPLS de cada LSR a los demás LSR. Extensiones a los protocolos RSVP y BGP (entre otros) pueden proporcionar funcionalidad a la distribución de etiquetas MPLS. 2.3.7.1.4 Relación entre selección de rutas y distribución de etiquetas. La relación que existe entre la distribución de etiquetas y la selección de rutas es estrecha y para facilitar su entendimiento se puede dividir en dos tipos: • Salto a Salto • Explicita 2.3.7.1.4.1 Salto a salto (hop-by-hop). Como fue mencionado anteriormente no se presta atención a la ingeniería de tráfico ni a las políticas de ruteo. En este caso se puede utilizar un protocolo común, como OSPF, para determinar el next hop de cada LSR. Un protocolo de distribución de etiquetas RSVP puede trabajar con OSPF para elegir las rutas. 47 2.3.7.1.4.2 Ruta Explicita (Explicit Route). Aquí se debe de emplear un algoritmo de selección de rutas más complejo, que se base en más de una métrica para elegir una ruta. En este caso particular se recomienda utilizar un protocolo de distribución de etiquetas y un protocolo de ruteo como el Protocolo de Reserva de Recursos con Extensiones de Ingeniería de Tráfico (RSVP-TE) ó el Protocolo de Distribución de Etiquetas con Encaminamiento Basado en Restricciones (CR-LDP) que soporte ingeniería de tráfico (Ambos descritos en la siguiente sección). O bien incorporar un algoritmo de ruteo en un protocolo de distribución de etiquetas más complejo. [7] 2.3.8 Protocolos de selección de rutas MPLS Una de las funcionalidades que tiene MPLS, principalmente en la transmisión de video, es que asegura que siempre habrá recursos disponibles para mantener el canal de transferencia fluido; cuando se cumplen los requisitos de QoS. Esto es muy importante en videoconferencias multipunto, en donde se asegura ancho de banda suficiente para el video y se acota un retardo máximo para la voz. Para hacer esto se necesitan dos cosas: 1. Ruteo con QoS para determinar la métrica. 48 2. Algoritmo de distribución de etiquetas que permita reservar recursos para cada petición. CD-LDP o RSVP-TE 2.3.8.1 CR-LDP El protocolo CR-LDP es muy parecido al protocolo Salto a Salto visto en secciones anteriores, sin embargo, tiene algunas particularidades, como son: a. El mensaje LDP_REQUEST que envía el LER permite especificar explícitamente que rutas van a ser utilizadas. b. La ventaja principal de manejar rutas explicitas es que pueden reservar recursos con diferentes características. Las características del camino están descritas por: • Velocidad de Pico de Datos (PDR) – velocidad máxima de transferencia de datos. • Velocidad de Datos Garantizada (CDR) – velocidad de transferencia de datos reservada. • Tamaño Pico de la Ráfaga (PBS) – tamaño máximo de la traza. • Tamaño de Ráfagas Garantizado (CBS) – tamaño máximo reservado de la traza. 49 • Frecuencia (frecuency) – especifica que tan frecuentemente se garantiza el CDR. • Peso (weigth) – determina las prioridades relativas en cada LSR para múltiples LSP cuando amenaza congestión o hay poco ancho de banda disponible. c. En CR-LDP los recursos requeridos pueden ser negociables. Cuando un LSR no tiene los recursos necesarios para satisfacer un parámetro negociable, realiza la reserva de los recursos disponibles y propaga el LDP_REQUEST con los nuevos valores al próximo LSR para que este complete la petición. En el capitulo 2.3.10 se explicará a fondo como funciona el protocolo de distribución de etiquetas (LDP). [28] 2.3.8.2 RSVP-TE El protocolo RSVP-TE es una extensión del protocolo RSVP original, que fue diseñado para ejecutar la distribución de etiquetas sobre MPLS. RSVP-TE soporta además la creación de rutas explícitas con o sin reserva de recursos. Una de las características adicionales más importantes de este protocolo es que permite el re-enrutamiento de los túneles LSP, con el fin de dar una solución ante caídas de red, congestión y cuellos de botella. Originalmente el IETF propuso a RSVP-TE como el protocolo de señalización principal, ya que este era utilizado por la mayoría de las compañías 50 de Internet en MPLS y porque la tendencia es utilizar un protocolo de señalización RSVP. De aquí en adelante la IETF recomendó profundizar más en el protocolo RSVP y dejar a un lado CR-LDP. [29] A continuación (Figura 2.6) un escenario de funcionamiento del protocolo RSVP-TE, adaptado en este caso para tráfico multicast, en donde la videoconferencia es uno de los principales desafíos para el QoS. Figura 2. 6 Funcionamiento RSVP-TE 1. Primero tenemos un nodo de entrada LER1 que determina que necesita establecer una nuevo LSP con un LER de salida. Es aquí donde por medio de políticas administrativas el LER1 determina las rutas para los nuevos LSPs. En este caso determina que el nuevo camino al LER5 debe establecerse por el nodo intermedio LSR2. 51 El LSR1 es el encargado de construir y mandar el mensaje PATH que contiene la ruta explicita (LSR2, LSR3). El mensaje se envía en forma de paquete IP y contiene los detalles de los parámetros de tráfico para la nueva ruta. Cuando el mensaje PATH llega al siguiente salto (LSR2) este contiene también el objeto LABEL_REQUEST pata la petición de las etiquetas. 2. Los nodos intermedios (LSR2, LSR3, LSR4) reciben el mensaje PATH, al ver que no son LERs, reenvían el mensaje a través de la ruta contenida en el mensaje, esto se repite hasta que el nodo que recibe el mensaje sea de salida. 3. Todos los nodos de salida contenidos en las LSPs asignan los recursos solicitados y seleccionan una etiqueta para cada una de las rutas. La etiqueta se envía y se distribuye dentro del mensaje RESV en el objeto LABEL. El mensaje se envía por el puerto donde llegó el mensaje PATH. 4. Cuando los nodos LSR 1, 2 y 3 reciben el mensaje RESV, determinan los recursos que deben reservar, guardan la etiqueta para cada LSP y agregan la información del valor de la etiqueta, el puerto de salida y el puerto de entrada en la tabla LIB (Figura 2.7) . Después de esta acción envía el mensaje RESV al nodo anterior. 52 Figura 2. 7 Formato de tabla LIB 5. Cuando el mensaje RESV llega al nodo de entrada LER1, este solo actualiza la tabla LIB (Figura 2.7), no asigna una nueva etiqueta ni reenvía el mensaje RESV. [32] En el tráfico multicast en RSVP-TE y CR-LDP se le llama Caminos Multicast de Conmutación de Etiquetas (mLSP) al conjunto de LSPs configurados. Una de las ventajas que tiene RSVP-TE sobre CR-LDP es que la operación de actualización de los mensajes PATH y RESV muestra los enlaces activos para identificar fácilmente cuando un LSP no puede ser establecido. Cuando esto pasa se generan los mensaje PATHERR y RESVERR. Otra forma de detectar errores, mas sencilla y robusta, es mediante mensajes HELLO, para detectar fallas nodo a nodo. [29] 2.3.9 Protocolo LDP Todo LSR que soporte el protocolo LDP debe mantener sesiones LDP con otros LSR o LER que hagan lo mismo. Durante una sesión LDP se generan diversos tipos de mensajes con la finalidad de dar a conocer a otros enrutadores 53 que el enrutador esta vivo, mantener vivo dicho conocimiento, comunicar las asociaciones que el LSR haga de etiquetas o FECs, solicitar etiquetas a otros LSR, comunicar cuando una asociación ya no es válida, entre otras. En resumen el protocolo LDP mantiene el dominio MPLS en coherencia, en cuanto a las etiquetas y las relaciones que puedan tener con otros FECs en la red. Los mensajes LSP son de suma importancia y deben de ser fiables al 100% ya que gracias a ellos es que MPLS funciona. Cuando se utiliza IP como protocolo de red, los LSRs anuncian su estado mediante UDP/IP; si utiliza IP lo hace mediante multicast a todos los routers suscritos al domino MPLS. Cuando los routers suscritos reciben el mensaje, que se comporta como un “ping” tradicional, estos los reenvían también. En los mensajes “ping” o “hello” vía UDP se transporta también la IP del servidor que se anuncia con el fin de que si alguno de los LSR desea establecer una sesión LDP, lo hará con el protocolo TCP y a la dirección IP anunciada. Si se da el caso, se establece la conexión y se inicia una sesión LDP entre los LSR interesados. [30] A continuación la representación gráfica del proceso de multicast a través de mensajes “hello” mediante sesiones LDP en un dominio MPLS. 54 Figura 2. 8 Multicast en LDP En la Figura 2.8, el LSR enmarcado en rojo soporta LDP y envía mensajes “hello” periódicamente mediante el protocolo UDP para ver si algún vecino quiere establecer una conexión LDP. Figura 2. 9 Sesión LDP entre nodos MPLS En la Figura 2.9 todos los nodos reciben los mensajes “hello” del emisor, sin embargo, solo el LSR inferior izquierdo le interesa establecer una sesión LDP con el que LSR que envió el anuncio. Después abre una conexión TCP con el para establecer una sesión LDP. 55 Cuando la sesión LDP esta abierta existen dos métodos por los cuales se comunican las asociaciones de: etiquetas, de la FEC con LSR y de la FEC con LER. 2.3.9.1 Asociación de etiquetas bajo demanda La comunicación bajo demanda se da cuando un LSR pide a su siguiente salto que le informe de la etiqueta que debe usar y la interfaz de entrada para enviarle datos dirigidos a un destino definido. Según el destino el LSR del siguiente salto le envía la etiqueta que más le convenga para dicho destino. Este proceso suele ser el mas usual y uno de sus aspectos más interesantes es que la distribución de etiquetas se lleva acabo en sentido contrario al tráfico de datos. Las Figuras 2.10 y 2.11 muestran claramente el proceso: Figura 2. 10 Solicitud de etiqueta bajo demanda A continuación los pasos que sigue la Figura 2.10: 1. Primero el LER A pide una etiqueta de tráfico dirigido a la dirección 192.168.100.1. (Dirección IP ejemplo, no real) 56 2. Después el LSR B contesta que no es el LER de salida y que enviará la petición al siguiente vecino y posteriormente le envía la dirección a C. 3. El LSR C hace lo mismo que el LSR B pero ahora envía a D. 4. El LER D recibe la petición de etiqueta del LSR C y hace lo siguiente: Figura 2. 11 Respuesta a solicitud bajo demanda A continuación los pasos que sigue la Figura 2.11 5. El LER D confirma que es el LER de salida. Posteriormente dice que se utilice la etiqueta “57” (Tomamos el 57 como ejemplo) para el tráfico 192.168.100.1. 6. El LSR D toma el valor “57” como de salida y envía “45” al LSR B. 7. EL LSR B recibe el valor “45” como etiqueta de salida y envía “10” al LER A que solicito el valor. 8. Finalmente el LER de entrada A toma el valor “10” para el tráfico dirigido a 192.168.100.1 y envía la información. 57 En este último paso el LER de entrada recibe la etiqueta que pidió y en todo el camino ya están creadas las tablas de conmutación para cuando se envíe la etiqueta. 2.3.9.2 Asociación de etiquetas a múltiples destinos Este método cada LSR realiza asociaciones de etiquetas y FEC para transmitirlas a sus vecinos para que las almacenen en sus tablas de etiquetas. En este caso la información de etiquetas para tráfico también viaja en sentido contrario al flujo de tráfico pero aquí la información la reciben todos los nodos, inclusive sin haberla pedido. Esta es una manera eficiente de mantener las tablas de todos los nodos actualizadas, el problema que esto representa es que el tráfico en la red se incrementa significativamente, sin embrago agiliza la creación de nuevos FECs. 2.3.10. Etiquetación frente a encapsulación MPLS etiqueta la información, sin embargo algunos autores utilizan la palabra “encapsulación” para describir el funcionamiento de las etiquetas en dicha tecnología. Cuando se encapsula un protocolo en otro se forma una Unidad de Datos de Protocolo (PDU) o unidad de datos de protocolo de nivel N1. 58 Siendo el paquete la PDU de la capa de red, cada capa emisora de un protocolo toma la PDU de una capa superior, y lo codifica dentro del área de datos. A medida que se transmite, la capa recibe la PDU de su capa par, recupera el área de datos y la transmite a una capa superior, que procede de igual manera. Por esta razón las PDU tienen encapsuladas en su área de datos otras PDU. MPLS toma la PDU de red y la transmite intacta, solo coloca una etiqueta MPLS entre el encabezado de red y el de enlace (ver Figura 2.4), esto deja intactas las tramas pequeñas de tamaño fijo del protocolo de red. Si el protocolo de red es IP las tramas son variables y comúnmente grandes, MPLS no modifica esta información y la trasmite intacta. Figura 2. 12 Longitud de trama fija en MPLS En la imagen Figura 2.12 se puede ver la diferencia en el tamaño de las tramas de los protocolos de red, en MPLS la longitud de las tramas es fija lo que generaliza el proceso. 59 2.3.11 Modelo de Servicios Diferenciados (DiffServ) El modelo DiffServ [9] propuesto por el IETF se basa en clasificar el tráfico del dominio en clases, cada una con: políticas de cola y de reenvío independientes. Este modelo sustituye al modelo anterior propuesto por el IETF llamado Servicios Integrados (IntServ) [31] que tenía problemas de escalabilidad ya el se trataba el tráfico por flujo y no por clase de tráfico, lo que impide el uso de políticas CoS. En este último modelo cuando el número de flujos aumenta el número de estados de los routers aumenta enormemente, lo que al final de cuentas genera una congestión insostenible en la red. En MPLS los LSP pueden llevar uno o varios FEC y se pueden asignar numerosos flujos de información a cada FEC como sea necesario, el protocolo es tan manejable que se puede asignar, por así decirlo, que tráfico va a ser enviado por que cable físico del dominio que forma el LSP. De esta manera se puede asignar que tipo de tráfico va a ser transportado por medios físicos ópticos o de cobre en el caso de Cable de Par Retorcido no blindado (UTP) de Categoría 5e (CAT5e), esto con el fin de agrupar diferentes tipos de servicio a diferentes medio físicos. Es por esto que la diferenciación de servicios es mucho más escalable que su predecesor servicios integrados. La asignación de canales se puede hacer a nivel FEC o a un conjunto de FECs que a su vez pueden incluir cientos de flujos de información distintos, esto ayuda a disminuir la carga de estados en los routers. En la Figura 2.13 se muestra una nube MPLS con diferentes clases de servicio. 60 Figura 2. 13 LSP con distintas prioridades Este tipo de control de flujos es solo una de las opciones disponibles en la tecnología MPLS, ya que cuando la tecnología MPLS trabaja de la mano con DiffServ se puede especificar la clase de tráfico a la que pertenece cada paquete. Esto modifica la manera en que se mueve cada paquete a través de los LSR del dominio MPLS. En capítulos anteriores se mencionó como se organiza el encabezado de los paquetes MPLS, tenemos el campo de Etiqueta o Label, el campo TTL o Tiempo de Vida, el campo S y por ultimo el campo EXP en donde en un principio los 3 bites que ocupa estaban reservados para uso experimental. En la Figura 2.14 se muestra el cambio en el campo. 61 Figura 2. 14 Campo EXP: CoS Este campo dejó de ser experimental a partir del RFC 3270 en donde se define un nuevo tipo de campo. El campo Clase de Servicio (CoS) utiliza estos 3 bites para implementar el modelo de servicios diferenciados. 2.3.11.1 Clase de Servicio Con CoS cada paquete MPLS puede llevar en su encabezado de los 8 disponibles [10], solo hay 8 tipos de servicio porque solo hay 3 bites disponibles: xxx000 para designar la clase de servicio. Con esto podemos especificar que un LSP se transporte por cierto camino físico de fibra óptica con mayor rapidez y calidad y que otro LSP vaya por un camino físico distinto, como el cobre, con menor rapidez y prestaciones. A su vez se pueden asignar clases de servicio a paquetes dentro del mismo FEC, mismo LSP y mismo medio físico. Ahora, con esta nueva característica cada LSR que soporte servicios diferenciados MPLS debe de conmutar en base a los 20 bits completos, incluyendo el nuevo campo CoS, un ejemplo de la tabla interna de un LSR es el siguiente: 62 Tabla 2. 1 MPLS con CoS En la Tabla 2.1 se puede apreciar con facilidad como tráficos que entran por la misma interfaz física y con la misma etiqueta pueden tener deferente clase de servicio, pero deben de tener un trato distinto porque pertenecen a clases distintas. Esto se logra porque cada LSR que maneja DS (abreviación de DiffServ) clasifica todo el tráfico entrante dependiendo de su clase de servicio. Para cada clase de servicio de los 8 disponibles se forma una cola gestionada por políticas que pueden ser distintas para cada tipo de servicio disponible. De esta forma con DS se forman 8 colas, cada una con una clase de servicio distinta pero con diferentes tipos de datos como: Protocolo de Transferencia de Hipertexto (HTTP), Protocolo de Transferencia de Archivos (FTP), voz sobre IP (VoIP), etc. Cada cola tiene prioridades distintas en función del QoS que se quiera ofrecer para cada servicio. Para finalizar el proceso de CoS un algoritmo cíclico irá despachando cada una de las 8 colas. El modelo de servicios diferenciados permite que MPLS proporcione QoS como una de sus ventajas principales y hoy en día es un punto clave en el entorno de la tecnología de conmutación de paquetes multiprotocolo. 63 2.3.12 Ruteo en los bordes y switcheo en el centro La estructura general MPLS se basa en que los enrutadores de los extremos de la nube son los que realizan el mayor trabajo. Los Enrutadores de Etiquetas Frontera (LER) que realizan los labores de ruteo de paquetes con funciones de decisión de rutas manejan muchísima información, extremadamente complicada, que puede estar basada en la interfaz de entrada, en los valores del encabezado de red, en la red a la que pertenece, en el tipo de tráfico, etc. Después tenemos los dispositivos internos LSR que hacen conmutación de paquetes a velocidades impresionantes y con eficacia incomparable, ya que solo es necesario leer la etiqueta del encabezado MPLS que define hacia donde va y de donde viene. Como se muestra en la Figura 2.15 los LER de los extremos añaden y quitan etiquetas y asignan FEC, los conmutadores trabajan basándose en las etiquetas MPLS. Figura 2. 15 Dominio MPLS 64 2.3.13 Funcionamiento de un LER y un LSR Los routers MPLS dividen su operación en dos partes: una de control y otra de datos. En el siguiente esquema se puede ver claramente la complejidad de la carga en los LER, es aquí donde se lleva a cabo el ruteo en la tabla de direcciones IP y quien se encarga de clasificar los paquetes a diferentes clases FEC. En la tabla de los LSR no se lee más que la tabla de etiquetas. Los protocolos de ruteo pueden ser cualquiera de los mencionados anteriormente como el Protocolo de Información de Ruteo (RIP), OSPF, Sistema Integrado a Sistema Integrado (IS-IS), etc. Para los protocolos de distribución están RSVP-TE, CR-LDP, BGP, etc. Tabla 2. 2 Tabla de Control y Datos 65 2.3.13.1 Plano de control El plano de control esta compuesto por los protocolos y procedimientos que actúan de forma transparente y que mantienen las tablas de ruteo y las asociaciones de etiquetas y FECs como se muestra en la Tabla 2.2. 2.3.13.2 Plano de datos El plano de datos esta formado por todo lo relacionado con procedimiento de asignaciones y modificaciones de las etiquetas y asignación de flujos a FEC como se muestra en la Tabla 2.2. Cuando llegan a un LSR más de un FEC con el mismo destino y procedencia dentro de la nube MPLS (esto se da cuando los FEC fueron creados por el mismo LER), se pueden juntar todos como si fueran una misma clase, con el fin de ahorrar tiempo en el intercambio y almacenamiento de etiquetas. En si, la agrupación es la capacidad de unir varios FEC en uno sólo. Otro tipo de optimización se puede hacer mezclando etiquetas, esto se puede hacer cuando llegan diferentes tráficos por el mismo FEC. En este caso se ahorra espacio de almacenamiento y se ahorra tiempo en el plano de control al no tener muchas asociaciones de etiquetas. En este tipo de optimización existen algunas restricciones, por ejemplo, los flujos deben entrar y salir por la 66 misma interfaz, no se puede realizar si van dirigidos al mismo LSP pero por diferentes interfaces de salida. A manera de resumen los componentes principales del plano de datos de un LER o LSR son: • Etiqueta de entrada • Una o más subentradas: • Etiqueta de salida • Interfaz de salida • Dirección del siguiente salto 67 3. MPLS VPNs Para entender el funcionamiento de una red MPLS VPN, es necesario conocer los términos P (router interno del proveedor), PE (router frontera del proveedor) y CE (router frontera de cliente que solicita el servicio). Se entiende como sitio a las intranets de los clientes que están separados físicamente pero lógicamente unidos vía una VPN. A continuación la descripción completa del servicio. Figura 3. 1 VPN con MPLS habilitado 3.1 Introducción En los capítulos anteriores se vio a grandes rasgos lo que es una red privada y sus ventajas, en este capitulo veremos como una VPN en conjunto con tecnología MPLS crean servicios de eje troncal VPN IPv4 de capa 3. Una VPN IP es la base que las compañías utilizan para crear y administrar servicios de valor agregado como servicios de telefonía y de transmisión de datos para así ofrecerlos a sus clientes. 68 3.1.2 Funcionamiento Cada VPN esta asociada con una o más instancias de Ruteo/Reenvío Virtual llamadas (VRF). Una VRF determina la membresía que tiene el cliente conectado al router PE de la compañía proveedora del servicio. Cada VRF esta compuesta por una tabla de ruteo IP, una tabla de Reenvío Express de Cisco (CEF), un grupo de interfaces que utilizan dicha tabla y un conjunto de reglas y parámetros del protocolo de ruteo que controlan la información que se incluye en la tabla de ruteo. Las VRF contienen las rutas disponibles en la VPN que pueden ser accesadas por los sitios de los clientes, cada sitio puede estar suscrito a varias VPN, pero solo a un VRF. Para prevenir que no salga ni entre trafico fuera de la VPN, cada VRF tiene guardada información de reenvío de paquetes en las tablas IP y CEF. 3.1.2.1 Comunidades Ruta Objetivo VPN La distribución de información de la Red de Paquetes Cognoscitiva (CPN) se controla mediante el uso de comunidades ruta objetivo VPN. Las comunidades BGP extendidas se encargan de dicha distribución, mediante el siguiente procedimiento. • Cuando una nueva ruta VPN entra por un router CE, esta ingresa al protocolo BGP y añade sus atributos a la lista de comunidades extendidas 69 ruta objetivo. Los valores de esta lista se obtienen de la lista de exportación de rutas objetivo relacionadas con la VRF de donde se obtuvo la nueva ruta. • Adicionalmente, cada VRF incluye también una lista de importación de comunidades extendidas ruta objetivo, esta lista define los atributos que una comunidad extendida ruta objetivo debe tener para que la ruta pueda ser importada al VRF. 3.1.2.2 Distribución BGP de Información de Ruteo VPN En una red VPN MPLS, los routers PE pueden obtener el prefijo IP (IPv4) de los routers CE por configuración estática. Esto mediante una sesión BGP con el router CE o mediante RIP. Después de esta operación el router PE lo convierte en un prefijo VPN-IPv4 al añadirle 8 bits de Distintivo de Ruta (RD) que como su nombre lo dice, sirve para distinguir la ruta. Este nuevo prefijo sirve para identificar la dirección del cliente sin importar donde este y si su dirección es global o local, única o común. El RD se obtiene del VRF del router PE en cuestión. BGP es el encargado de distribuir la información de capacidad de alcance (reachability) a los prefijos VPN-IPv4. Cuando la distribución se lleva acabo dentro del dominio IP tenemos BGP interno (iBGP) por medio de sesiones 70 PE-PE, cuando se lleva acabo entre los dominios IP tenemos BGP externo (eBGP) por medio sesiones PE-CE. Adicionalmente, BGP lleva acabo la propagación de la información de capacidad de alcance mediante las extensiones multiprotocolo BGP [11] en donde se extiende BGP para proveer soporte para direcciones multiprotocolo como IPv6 y IPX. Esta última acción asegura que todos los miembros de la VPN reciban todas las rutas de las demás VPNs para que pueda haber comunicación entre todas. 3.1.2.3 Reenvío MPLS en VPNs El reenvío de paquetes en una red VPN con tecnología MPLS se basa en la información de ruteo almacenada en las tablas VRF (ruteo y CEF). Los routers PE añaden una etiqueta a cada prefijo que obtienen de los routers CE, el prefijo incluye información de capacidad de alcance de los demás routers PE. Es un proceso de etiquetado como el que se lleva acabo con los LER y LSR: 1. Entra el paquete que proviene de un router CE al router PE, este le añade una etiqueta y lo envía. 2. Cuando el mensaje etiquetado llega al PE destino, este lee y quita la etiqueta para mandar el paquete al CE descrito en la etiqueta. 71 El reenvío de etiquetas a través del eje troncal del proveedor se puede basar en conmutación dinámica de etiquetas o en Caminos de Ingeniería de Tráfico. En todo momento los paquetes que viajan por el backbone llevan dos etiquetas, la primera tiene la dirección del router PE y la segunda indica cómo el router PE debe de reenviar el paquete al router CE. Cuando el router PE recibe el paquete, lo que hace es leer la etiqueta, quitarla y reenviarla al destino marcado en la segunda etiqueta. 3.1.3 Servicio sin conexión (Conectionless) Una de las principales ventajas técnicas de las VPNs MPLS no necesitan conexión previa para establecer comunicación entre equipos, lo que facilita enormemente el tráfico entre dispositivos de red. La base de Internet es la tecnología TCP/IP basada en transferencia de paquetes, aquí el ambiente también es sin conexión, sin embargo la privacidad no siempre es una garantía. Las tendencias actuales de redes VPN imponen un ambiente punto a punto orientado a conexión con el objetivo de garantizar privacidad a sus usuarios. tr Las redes VPN (ya sea orientadas a conexión o no) son privadas tanto internamente como externamente, es decir, no pueden ser penetradas por paquetes ajenos a la red pero tampoco pueden aprovecharse de la facilidad de 72 conexión y de los servicios disponibles en las redes sin conexión. Cuando se crea una VPN sin conexión (Lo que MPLS-VPN provee) no son necesarios los túneles punto a punto y el cifrado para el aislamiento de la red, lo que elimina complejidad significativa. 3.1.4 Servicio Centralizado Gracias a que las VPNs MPLS residen en la Capa 3 del modelo OSI (Nivel de Red) se pueden proveer servicios diferentes a distintos grupos de usuarios dentro de una VPN. Una VPN debe de proveer mecanismos efectivos para que los ISP puedan garantizar a sus clientes conexiones privadas a los servicios de sus intranets, también debe ser flexibles al momento de proveer servicios agregados a grupos de usuarios en particular. Un aspecto muy importante es la escalabilidad (Capitulo 3.1.5) porque que los clientes siempre querrán servicios privados en sus intranets y extranets. Hoy en día es tan seguro el uso de VPNs que comúnmente se les conoce como “intranets privadas” con servicios como: • Multicast (Ej. videoconferencias multipunto). • Calidad de Servicio (QoS) (Ej. Servicios diferenciados para usuarios) • Soporte de Telefonía mediante VPNs. • Servicios Centralizados (web hosting y web content a VPNs). 73 Cualquiera de estos servicios se puede combinar para otorgar servicios especializados a clientes individuales. Servicios de videoconferencia, de telefonía y de web hosting, todos con el respaldo QoS. 3.1.5 Escalabilidad Las redes VPN tradicionales que son, ya sea orientadas a conexión, aisladas punto a punto, Frame Relay, o ATM con conexiones virtuales (VC) son difícilmente escalables. Otro inconveniente se presenta en las VPN que no tienen conexiones completamente fijas entre los sitios de los usuarios. Es aquí donde las VPN MPLS entran a relucir ya que utilizan el modelo de Puerto a Puerto (P2P) en conjunto con la arquitectura sin conexión de Capa 3 para garantizar la escalabilidad. El modelo P2P requiere únicamente que el sitio del cliente se empareje con un solo router PE a diferencia de los demás routers CE de la VPN. En resumen la ventaja principal es que ya no son necesarios los túneles ni los circuitos virtuales. Para asegurar que la escalabilidad de las redes VPN MPLS no se conviertan en un problema de cuello de botella, se deben de cumplir dos características: 1. Los routers PE deben de mantener las rutas VPN de todos las VPNs suscritas. 74 2. Los routers P no deben mantener ninguna ruta VPN. Esto es porque en cualquier momento se pueden añadir nuevas VPNs que pueden segmentar las rutas existentes entre routers PE y routers P del núcleo de la red. Lo que en un momento dado puede generar congestión. 3.1.6 Seguridad Las VPN MPLS ofrecen la misma seguridad que las VPN orientadas a conexión, se garantiza la seguridad de que ningún paquete saldrá o entrará de las rutas permitidas. Es decir, si existen varias VPNs que comparten los mismos medios físicos o lógicos pero no llevan el mismo tipo de tráfico y/o son de diferentes clientes nunca se invadirán. [3] Se garantiza que los paquetes del cliente recibidos en la frontera de la red del proveedor siempre serán enviados a la VPN correspondiente y que en el backbone el tráfico de cada VPN viaja aislado de los demás. Si un intruso tratara de entrar ilegalmente (spoofing) a un router PE para ver los paquetes de información que envían los clientes, no podría ya que los paquetes IP van dirigidos a interfaces o sub-interfaces en los PE que a su vez están asignados a diferentes VPN por lo que es casi imposible que tenga éxito. 75 3.1.7 Facilidad de creación Para ocupar al máximo las ventajas de una VPN, es necesario que los clientes puedan crear nuevas VPNs y comunidades de usuarios con facilidad, esto sería muy difícil en redes virtuales orientadas a conexión ya que seria necesario saber la topología de la red, las conexiones punto a punto, etc. Esto no sucede en las VPNs MPLS, gracias a que no están orientadas a conexión se pueden añadir sitios nuevos a las intranets y/o extranets para formar grupos privados. Cuando se manejar VPNs de esta forma se pueden extender las suscripciones de cualquier sitio a otras VPNs para maximizar la flexibilidad al crear nuevas intranets y extranets. [22] Figura 3. 2 Facilidad de creación con soporte para diferentes servicios 76 En la figura 3.2 se muestra un escenario en donde se transmiten Voz, Video y Datos entre oficinas centrales y sucursales así como a otros sitios remotos. Además se provee almacenamiento accesible desde sitios remotos. 3.1.8 Direccionamiento Sencillo En el mundo de las VPNs tradicionales (no MPLS) lo clientes de los proveedores del servicio no pueden o al menos no es nada fácil crear sus propias direcciones para el manejo de sus sitios. En VPNs MPLS los clientes pueden crear sus propias tablas de direcciones, independientemente de otros clientes con el mismo proveedor de servicios. En algunos casos los clientes utilizan direcciones privadas y no les interesa gastar tiempo y dinero para convertirlas en públicas para proporcionar conectividad al intranet. En VPNs MPLS no es necesario el servicio de “Network Address Translation” ya que la VPN proporciona una vista pública y privada de la dirección. En circunstancias no muy comunes se puede dar el caso en que dos VPNs con alguna dirección similares quieran intercambiar información, aquí si se tendría que utilizar el servicio de Traducción de Direcciones de Red (NAT). La ventaja primordial del direccionamiento sencillo que proveen las VPN con MPLS es los clientes pueden utilizar sus direcciones privadas (que no están registradas) para navegar gratuitamente en redes IP publicas. (Ej. Internet) 77 3.1.8.1 Traducción de Direcciones de Red - Transversal (NAT-T) NAT-T es un mecanismo para la traducción de direcciones utilizado por IPSec que al igual que las VPN-MPLS soluciona el problema de las direcciones privadas. Es un mecanismo para que el Protocolo de Datagramas de Usuario encapsule lo paquetes de Encapsulado de la Carga de Seguridad (ESP) [33]. Este mecanismo funciona en el Intercambio de Llaves de Internet (IKE) de IPSec, es un protocolo que brinda Asociaciones de Seguridad (SA). [3] 3.1.9 Soporte CoS Una de las principales demandas de los usuarios que utilizan VPNs, es que cuenten con Clase de Servicio (CoS) ya que provee tres características básicas para el funcionamiento óptimo de la VPN. 1. Desempeño predecible 2. Manejo de políticas de usuario. 3. Soporte para diferentes niveles de servicios en una VPN MPLS. (Ver capitulo 2.3.11.1) Todo tráfico que va a entrar por las fronteras de la VPN MPLS es clasificado y etiquetado dependiendo de las políticas definidas por los suscriptores que fueron puestas en ejecución por el proveedor. Posteriormente 78 el tráfico ya etiquetado es transportado a través del núcleo del proveedor, es así como el tráfico que viene entrando y el que esta dentro del núcleo del proveedor puede ser clasificado en diversas clases. 3.1.10 Beneficios Las VPNs MPLS están creadas en la capa 3 del modelo OSI por lo que no requieren de conexión, lo que las hace más fáciles de crear, manipular y son más escalables. Algunas de las características que ofrecen son: • Proveen una plataforma que soporta el despliegue rápido de nuevas servicios IP de valor agregado como intranets, extranets, multimedia y voz. • Privacidad y seguridad, limitan la distribución de rutas VPN únicamente a los routers miembros a dicha comunidad VPN. • Integración transparente a las intranets de los clientes. • Escalabilidad mayor, miles de sitios por VPN y cientos de miles e inclusive millones de VPNs por cada proveedor de servicios. 79 • CoS, que soportan diversas clases de servicios y prioridades dentro de la VPN y entre otras VPNs. • Escalabilidad de conexión a extranets e intranets extendidas que abarcan negocios múltiples. [3] Figura 3. 3 Beneficios MPLS-VPN 80 3.2 VPNs de banda ancha (broadband) El servicio de redes privadas virtuales es uno de los servicios más importantes disponibles en el mundo de las telecomunicaciones de banda ancha. Es un servicio no muy común, esta enfocado a clientes individuales, a empresas y a operadores que deseen conectar las redes de sus clientes. Son escasos los servicios que pueden cortar a través de diversas poblaciones como este. Lo más reciente en el mundo de las VPNs es la integración del servicio IP, las VPN de Capa 3 donde se ofrece una red privada que es operacionalmente más simple ya que funciona sobre una infraestructura compartida basada en paquetes. Esto elimina la necesidad de tener circuitos dedicados para cada conexión como los utilizados por sus antecesores: Frame Relay, X.25 y ATM. [3] Las VPN basadas en IP y en MPLS abarcan el 50% del mercado de venta de nuevas VPN y es una de las áreas de mayor crecimiento en el mercado de las telecomunicaciones. En el mundo de banda ancha actual, los usos que están conduciendo al uso de VPN a través de enlaces de alta velocidad no solo incluyen aplicaciones sencillas como el respaldo de archivos (file backup), sino que también incluyen usos más sofisticados como VoIP para extender las comunicaciones internas entre empresas grandes con oficinas remotas. En la Figura 3.4 se puede apreciar una aplicación de lo descrito anteriormente, en donde se conectan oficinas en diferentes lugares en donde además de contar 81 con transmisión de datos, voz y video tienen acceso a Internet con el mismo proveedor. Figura 3. 4 Conexión entre VPNs mediante MPLS y con acceso a Internet 3.2.1 Taxonomía VPN Las VPN se pueden construir de diferentes maneras, enfocadas a diferentes grupos: VPN sitio a sitio (site-to-site) – Este es el tipo más común y se utiliza par conectar sitios diferentes cada un con uno o más enrutadores CPE en su puerta de salida (Figura 3.4) que puede ser administrado por un proveedor de servicios o por el persona de la misma empresa. Este tipo de VPN se puede construir en Capa 2 para implementar ATM y Frame Relay, o en Capa 3 para VPN MPLS. Otro ejemplo de red sitio a sitio se puede ver en la Figura 3.5 82 VPN tipo teletrabajador (Telecommuter) – Este tipo se utiliza en redes muy pequeñas o para suscriptores individuales que se conectan mediante una red ajena a una red más grande, como se da en el caso de las universidades grandes que proveen servicio de Internet a sus estudiantes. Este servicio VPN se puede compara con el servicio de roaming en la telefonía celular, en donde el cliente no siempre esta en su ciudad origen, pero necesita transmitir información (voz) desde cualquier parte. VPN Intermediaria (Wholesale) - Un caso especial de VPN usado por un proveedor al por mayor para transportar el tráfico del suscriptor al proveedor de servicio de su elección. En este tipo de VPN el intermediario es transparente para el suscriptor. [34] Figura 3. 5 VPN Sitio a Sitio 83 Existe otro tipo clasificación para las VPN, esto depende del lugar en donde empiece la red, puede empezar en las instalaciones del cliente (Figura 3.4) o en la red del proveedor (Figura 3.5), las características de cada caso son: • VPN basada en el PE del cliente (CPE-based VPN): En este caso la VPN comienza y termina en los enrutadores CPE (Figura 3.4), en este caso el túnel se crea entre estos dos dispositivos por lo que la red del proveedor solo se utiliza para transportar paquetes IP. Este tipo de VPN puede ser construida y operada por la empresa o por el proveedor de servicios. [3] • VPN basada en Red (Network-based VPN): Aquí la VPN comienza en el PE del proveedor y puede terminar ya sea en otro PE o en el CPE del cliente. Un ejemplo de este tipo de redes son las VPN creadas con tecnología L2TP. La seguridad y privacidad de la información es un requisito básico en cualquier servicio VPN por lo que se asume que la conexión entre el cliente y la VPN es segura. Esto es muy importante por que la información de ruteo será enviada de cada uno de los CE al PE. El router PE construye las tablas de ruteo basándose en dicha información, como se puede ver el a Figura 3.6 En el caso de ATM cada suscriptor esta relacionando con un PVC diferente. Este tipo de VPN es operada exclusivamente por el proveedor de servicios. [3] 84 Figura 3. 6 VPN basada en red 3.3 Alternativas de Capa 2 y de Capa 3 Las VPN pueden ser creadas en redes de Capa 2 y de Capa 3. En la Figura 3.7 se puede observar la jerarquía de las variantes para construir ambos tipos de redes. Figura 3. 7 Jerarquía VPN 85 Para el objeto de este estudio es necesario explicar las secciones Capa 2 sobre Capa 3 (L2oL3), Basado en PE (PE-based) y Basado en CE (CE-based) Figura 3.7, de la siguiente manera: Capa 2 sobre Capa 3 Una VPN de Capa 2 (L2VPN) sobre un núcleo de red de Capa 3. Existen diferentes tipos de servicios de Capa 2: (Las primeras dos tecnologías se encuentran en etapa de desarrollo temprano) 1. Servicio Privado Virtual por Cable (VPWS): servicio punto a punto 2. Servicio Privado Virtual por Red (VPLS): servicio punto a multipunto 3. Servicio de Red Exclusivo IP (IPLS): es un servicio VPN de tipo VPLS Basado en PE: Este es el caso de las VPN basadas en red. El mejor ejemplo para esta categoría son las VPN MPLS que veremos en al Sección 3.7. 1. RFC 2547 (MPLS):.VPN sujetas a RF 2547. [36] 86 2. Enrutador virtual: La VPN utiliza enlaces punto a punto entre instancias de enrutadores virtuales que se ejecutan el enrutadores físicos. Basado en CE: Las VPNs basadas en CPE utilizan túneles sobrepuestos al núcleo de Capa 3. 1. IPSec: VPN construida mediante túneles IPSec. 2. GRE: VPN construida con túneles GRE. [36] En la Figura 3.7 se puede observar que hay dos arquitecturas para VPNs de capa 3. Primero tenemos el modelo de VPNs sobrepuestas (Overlay VPNs) que utilizan túneles punto a punto entre dispositivos CPE y después tenemos el modelo de puertos en donde los CPE mantienen una relación de puertos. El modelo de VPNs sobrepuestas se refiere a que la red del consumidor esta sobrepuesta a la red del proveedor. El tema a desarrollar en la próxima sección es el modelo de puertos ya que las VPN MPLS entran en esta categoría, no se profundizará en el modelo de VPNs sobrepuestas ya que no forma parte de los objetivos de esta investigación, sin embargo cabe recalcar que en este modelo entran las siguientes tecnologías: GRE, IPSec y L2TP. 87 3.4 El modelo de puertos Las VPN MPLS permiten construir VPNs en redes de paquetes sin tener que utilizar túneles punto a punto, es decir, utilizan un modelo de puertos. En el modelo de puertos los enrutadores CE envían sus rutas a lo enrutadores PE del proveedor del servicio. Después de mandar esta información el protocolo BGP trabaja en los enrutadores PE adjunto a la VPN, para intercambiar las rutas de cada VPN. Esto se lleva a cabo de forma que se asegure que las rutas de cada VPN sean diferentes y estén separadas, aún cuando dos VPNs puedan tener direcciones traslapadas. Los enrutadores PE distribuyen las rutas a cada uno de los enrutadores CE dentro de la VPN. Una característica que tienen los enrutadores CE es que estos no se conectan entre sí, con el fin de evitar sobreponerse y afectar al algoritmo de ruteo de la VPN. En el modelo de VPNs sobrepuestas los enrutadores CE si se conectan entre si, pero no con los enrutadores PE del proveedor, es el caso contrario al modelo de puertos. Ejemplo de modelo de puertos como se muestra en la Figura 3.8. 88 Figura 3. 8 Modelo de puertos 3.5 Aspectos importantes en servicios VPN Los aspectos descritos a continuación son puntos clave para que las diversas tecnologías VPN se adapten eficazmente al acceso de banda ancha. 3.5.1 Autenticación, Autorización y Auditoria (AAA) El esquema general de conexión a una VPN se divide en tres partes: en la primera el usuario pide entrada a la red, a esto se le conoce como autenticación; posteriormente pide permiso para realizar acciones especificas en diferentes secciones de la red, a esto se le conoce como autorización en donde diferentes usuarios tienen permisos distintos; por último tenemos la parte de la cobranza en donde se proveen los costosa cobrar. 89 3.5.1.1 Autenticación (Authentication) Las conexiones a sitios VPN carecen de autenticación dinámica por lo que están establecidas entre puntos finales confiables. Algunos autores ven esto como una simplificación, sin embargo si el sitio VPN es seguro, no es necesario pedir autenticación cada usuario antes de que pueda conectarse. Existen otros tipos de autenticación como certificados y secretos para los enrutadores. Hoy en día cualquier persona que tenga una laptop con una tarjeta inalámbrica que soporte el estándar 802.11 se puede conectar a un punto de acceso de una red corporativa o universitaria y tener acceso a la información dentro de la red física. En este caso protocolos como LEAP proveen autenticación y autorización para este tipo de redes. 3.5.1.2 Autorización (Authorization) La red debe de distinguir a cada usuario, a donde puede entrar y que operaciones puede realizar, una manera sencilla de atacar este aspecto es mediante el uso de políticas, principalmente en la Capa de Aplicación, donde cada aplicación puede requerir contraseñas. Es sumamente importante que las aplicaciones importantes dentro de las VPNs estén controladas con contraseñas para evitar problemas de spoofing y sniffing o simplemente usuarios maliciosos. 90 3.5.1.3 Auditoria (Accounting) El servicio VPN no es gratuito, por lo que es importante que tanto el cliente como el proveedor intercambien información de costos. Si esto no fuera suficiente se pueden utilizar aplicaciones como NetFlow. [37] 3.5.2 Fragmentación El depurado de las Unidades Máximas de Transmisión (MTU) puede llegar a ser una pesadilla para el operador de la VPN ya que la encapsulación genera encabezamientos (overhead) de paquetes, esto añadido a la carga que generan los protocolos VPN por si solos. Es considerablemente importante poner atención a los menajes ICMP y a los caminos MTU, los mensajes ICMP se generan cuando in paquete es descartado por que excedió una MTU. Para evitar la fragmentación de paquetes se deben de configurar los servidores para que desechen, mas no fragmenten paquetes que excedan cierto tamaño, por lo general cada paquete debe tener un tamaño máximo de 1500 bytes. [3] En la Figura 3.9 podemos observar como la fragmentación de paquetes afecta al tiempo de envió, esto sin contar el tiempo extra que utiliza el router al fragmentar el paquete. Cuando el paquete es fragmentado es reenviado a los enrutadores estos deben de procesar el cuádruple de información (Para este ejemplo en concreto) 91 Figura 3. 9 Fragmentación de paquetes 3.5.3 Selección de Servicios La selección de servicios no es una característica propia de una VPN porque las VPNs son en si servicios, sin embargo en dado momento un cliente puede estar suscrito a varias VPNs con un mismo proveedor por lo que debe de poder cambiarse entre servicios. Para esto es necesario mantener vínculos dinámicos de los clientes a las VPNs. Existen dos panoramas para la selección de servicios: Basados en Web: Un ejemplo de este tipo de selección de servicios es el que se maneja en páginas dinámicas como en la página http://mi.udlap.mx de la red universitaria 92 en donde cada estudiante puede configurar su página, cambiando el formato, los colores, las ligas, etc. Esto permite, a grandes rasgos, que cada suscriptor administre su espacio, lo que de otra forma tendría que realizar el proveedor del servicio. Basados en el Cliente. Este tipo de selección trabaja como el protocolo PPP sobre Ethernet (PPPoE) en donde los usuarios conectan sus equipos a diferentes dominios, cada dominio representa un servicio. 3.6 MPLS-TE La Ingeniería de Tráfico es uno de los artes más antiguos en el modelo de redes y funciona mediante el cálculo y configuración de caminos a través de la red, con el fin de utilizar al ancho de banda efectivamente. Esta estrategia tuvo su origen años atrás en redes de voz cuando los ingenieros de tráfico se dieron cuenta que la carga de tráfico variaba a lo largo del día. Esta visión de los ingenieros coincide con la realidad en donde los costos en redes son muy altos y se debe utilizar el ancho de banda de forma económicamente efectiva. La Ingeniería de Tráfico se lleva acabo con herramientas fuera de línea que envían los resultados obtenidos a los conmutadores con el fin de proveer caminos determinísticos a diferentes destinos. A continuación una lista de razones por las que es necesaria una buena TE en redes IP. [3] 93 3.6.1 Congestión de Enlaces Un factor común en este problema se da cuando en redes IP el protocolo IGP utiliza sus mejores rutas (best paths) excesivamente, pasando por alto las rutas alternativas y por ende generando congestión en la red. Un ejemplo claro de este tipo de problemas se puede observar en la Figura 3.10. Figura 3. 10 Congestión de Rutas En la Figura 3.10 el tráfico viaja de A hasta F a través de la ruta A – B – E, siendo la ruta más efectiva pero no la única, el camino alternativo A – C – D – E no se utiliza, si hubiera carga pesada de tráfico se daría congestión ya que no se utiliza la ruta alternativa. MPLS-TE resuelve este problema mediante reserva de recursos como se describe en la Figura 3.10 en donde los administradores de la red pueden construir túneles a lo largo de las rutas alternativas para poder 94 dirigir el tráfico ahí. Con este enfoque se puede atacar el problema de congestión de rutas. Figura 3. 11 Solución de congestión de rutas mediante RSVP 3.6.2 Balanceo de Carga Este tipo de problema se da en enlaces de larga distancia con diferentes capacidades, en IP la solución propuesta es demasiado sencilla, se balancea el tráfico de la misma forma en cada ruta. No se puede balancear el tráfico si las rutas son distintas, IGP solo toma en cuenta el enlace más corto. En la Figura 3.12 el tráfico entre A y E puede ser balanceado en ambos caminos, pero no se toman en cuenta las diferencias de velocidades entre los enlaces B y D y los 95 enlaces C y D. La nomenclatura {x, y} significa que hay dos caminos, el primero con un ancho de banda x y el segundo con un ancho de banda y. Figura 3. 12 Balanceo de Cargas En MPLS-TE este problema se resuelve gracias a los 16 contendedores de direcciones (hash buckets) para cada camino, dichos contenedores son colocados dependiendo del ancho de banda, lo que provee un ambiente proporcional de balanceo de cargas como se puede observar en la Figura 3.12. En la Figura 3.13 se puede observar que existe conectividad entre A y E, en donde cada camino tiene un ancho de banda y balanceo de carga distinto. Para el camino A – B – D tenemos un ancho de banda combinado de 20 y 50 Mbps que nos da un balanceo de carga del 67.5% del tráfico y para el camino A – C – D tenemos un balanceo de carga de 37.5% del tráfico. 96 Figura 3. 13 Balanceo de cargas MPLS-TE 3.6.3 Protección de Enlaces En un esquema tradicional de caminos pude llegar a fallar uno de los enrutadores principales de un LSP, cuando esto sucede el protocolo de ruteo tiene que recalcular toda la especificación del Primer Camino Más Cercano (SPF) para que el tráfico pueda ser reenviado de nuevo. Esto puede tomar varios segundos. En la Figura 3.14 se muestra un escenario en donde el enlace principal falla. Figura 3. 14 Protección de Enlaces 97 En la Figura 3.14 se pierde el enlace principal entre A y B por lo que el protocolo de ruteo debe reorganizar las tablas de ruteo para tener una convergencia entre enlaces activos y así poder reenviar la información a través de C. Esto no pasa en MPLS-TE gracias a las palancas (knobs) que se han añadido recientemente para poder definir enlaces de respaldo. Se pueden preconfigurar LSPs de respaldo en cualquier punto del camino del túnel, que se utilizaran si ocurre algún problema en los enlaces principales. El truco esta en que el LSR de respaldo impone una nueva etiqueta que corresponde al LSP de respaldo, cuando el paquete llega al destino original (viajando por el camino de respaldo), este quita la etiqueta de respaldo para mostrar la etiqueta original para que esta pueda ser referenciada al router en el camino principal y consecuentemente al router destino original. Figura 3. 15 Protección de Enlaces MPLS-TE En la Figura 3.15 se puede apreciar como A añade la etiqueta 34 al paquete para que vaya a C, C le añade la etiqueta 86, cuando el paquete llega a B este quita la etiqueta provisional, dejando así la etiqueta 32 original a la vista (referenciada a A) para enviarla al destino original D. 98 3.6.4 Visión General MPLS-TE Las VPN con MPLS y TE resuelven los problemas vistos en las secciones pasadas (3.6.1 – 3.6.3). Para implementar TE es necesario construir túneles (LSP) a través del núcleo MPLS. Todo paquete introducido al principio de estos túneles se reenviara a lo largo del mismo camino hasta que llegar al extremo en donde se les quita la etiqueta MPLS y siguen su destino establecido en el encabezado original. La Ingeniería de Tráfico reserva ancho de banda para cada túnel en cada LSR. Los túneles MPLS-TE son muy fáciles de configurar, el siguiente escenario en la Figura 3.16 muestra la configuración global que se necesita realizar en cada interfaz de los conmutadores a lo largo del camino: [36] Figura 3. 16 Configuración Túneles MPLS-TE 99 En la Figura 3.17 se muestra la configuración necesaria al principio de cada túnel (headend). El comando tunnel mpls traffic-eng autorute le dice al router que actualice la tabla de ruteo y añada el túnel. [36] Figura 3. 17 Configuración para el primer enrutador del túnel 3.7 Servicio VPN de Capa 3 Servicio VPN de Capa 3, es decir adiós a las conexiones punto a punto y bienvenida la arquitectura de puerto a puerto, que a diferencia del los servicios VPN de FR y ATM no es orientada a conexión. En esta arquitectura lo enrutadores CE de los clientes conectan a los enrutadores PE del proveedor de servicios, las sitios de una VPN solo se pueden conectar a sitios dentro de la misma VPN. Un PE se puede conectar con un solo puerto a enrutadores CE de diferentes clientes, para las rutas alternativas los enrutadores CE se pueden emparejar con otros PE, inclusive de diferentes proveedores con el fin de que las rutas alternativas siempre estén disponibles. El tráfico entre enrutadores CE y PE esta basado en IP por lo que es privado, no hay ningún intercambio de paquetes etiquetados entre estos dispositivos, lo que representa una gran ventaja de escalabilidad (No es necesario cambiar la infraestructura del cliente). 100 En la Figura 3.18 se muestra una arquitectura MPLS-VPN ejemplo. Gracias a esta arquitectura existen enlaces optimizados (full-mesh) en el sitio, a pesar de que cada sitio tiene un solo enlace al la nube del proveedor del servicio. [36] Figura 3. 18 Arquitectura MPLS-VPN En la Figura 3.18 Los routers PU (1,2 y 3) solo pueden mandar tráfico a otros routers PU, el enlace CE-PE es optimizado. MPLS provee una solución que soporta espacios de direcciones independientes, esto mediante un mecanismo de reenvío que utiliza una jerarquía de dos niveles, en donde la etiqueta interna define la VPN y la externa 101 el enrutador PE destino. El protocolo que se encarga del intercambio de prefijos y etiquetas entre dispositivos es BGP. El uso de dicho protocolo es obligatorio en redes MPLS-VPN según lo descrito en RFC 2547. En la Figura 3.19 se puede observar la secuencia de operación, el intercambio de rutas y los protocolos utilizados en un escenario MPLS-VPN. Figura 3. 19 Enrutamiento y Flujo de paquetes en una VPN-MPLS Secuencia descriptiva de la Figura 3.19: 1. El CE MX1 envía el prefijo 192.168.4.0 al PE A. (El intercambio de rutas se puede hacer estáticamente o dinámicamente con protocolos como RIP, eBGP y OSPF). 102 2. Posteriormente el enrutador PE A añade los prefijos obtenidos a la tabla de ruteo de dicha VPN, si otras interfaces en PE A estuvieran conectadas a la VPN, se les avisa de las rutas a los puertos locales. 3. En el siguiente paso PE A utiliza iBGP para anunciar la capacidad de alcance a cada uno de los sitios de la VPN. El enrutador PE A mantiene una sesión iBGP con el enrutador PE B para la VPN MX, a su vez PE A mantiene otra sesión con PE D para la VPN PU. Ambos dispositivos PE B y PE D importan las tablas de ruteo correspondientes a sus VPNs. 4. El enrutador PE B anuncia la ruta 192.168.4.0 (CE MX1) al enrutador CE MX2. El siguiente salto de CE MX1 es 192.168.2.1 (interfaz de salida de PE B), el siguiente salto de CE MX2 es 192.168.1.2 (interfaz de salida de PE A). 3.7.1 Flujo de Paquetes (Figura 3.19) Cuando el paquete IP (que viene de Sitio 1 de la VPN PU) entra por el router PE A, este le añade la etiqueta 32 que identifica la VPN y la etiqueta 34 que identifica un LSP al LSR X. Posteriormente el enrutador LSR X (penúltimo salto) quita la etiqueta 34 (Que es en si la etiqueta MPLS) y envía el paquete al enrutador PE D. Finalmente el enrutador PE D quita la etiqueta 32 (Es que es en si la etiqueta VPN) y envía el paquete IP original al la Sitio 2 de la VPN PU. 103 3.8 Atributos MPLS-VPN Todos los routers que soportan MPLS-VPN cuentan con los siguientes atributos: • Interfaces dedicadas (lógicas o físicas) • Tablas de ruteo dedicadas • Nombre local e identificador numérico (ID) • Reglas para la distribución de rutas VPN a lo enrutadores de puertos. Atributos BGP: Ruta Objetivo (route-target) Cada enrutador PE define un valor numérico llamado Ruta Objetivo asociado con las rutas que exporta a los puertos BGP. Para que una nueva ruta sea aceptada el valor de su ruta objetivo de salida (exportación) debe de coincidir con el valor de entrada (importación) del dispositivo de entrada. Los objetivos de ruta son distribuidos por las actualizaciones BGP. Para información adicional consultar el Capitulo 3.1.2.1 104 Distintivo de Ruta (route-distinguisher) Es un atributo BGP que sirve para hacer que las rutas privadas sean globalmente únicas. Esto es muy útil cuando dos clientes tienen el mismo prefijo de red y se conectan a un mismo PE, esto no causa conflicto porque cada PE utiliza tablas virtuales de ruteo diferentes, una para cada cliente. Es aquí donde se soluciona el problema de traslapado de direcciones. Para información adicional consultar el capítulo 3.1.2.2 En el capitulo 3.1.2 se hizo referencia al termino VRF que son en si tablas de ruteo privadas, la estructura de estas tablas se puede ver en la Tabla 3.1. La PU VRF es la tabla privada de enrutamiento para la VPN PU, las rutas se pueden traslapar con otras VPNs (MX VRF). Tabla 3. 1 Tablas VRF 105 3.9 Tipos de LSPs Existen varios modelos que difieren en el lugar en donde las etiquetas son eliminadas (popped), estos modelos están basados en el soporte de servicios diferenciados que forma parte de MPLS. [38] • E-LSP: Es un tipo de LSP en donde el PHB esta definido únicamente en el campo EXP. Ver Figura 2.14 • L-LSP En este caso el PHB esta definido tanto en el campo EXP como en el campo de Valor de la Etiqueta. Ver Figura 2.3. La diferencia principal de este modelo es que puede proveer más de 8 tipos de PHB, que son el límite en el modelo anterior. • Modo de Túneles Uniformes: Cualquier cambio al DSCP (Ver Capitulo 2.3.2) del paquete es permanente como se puede observar en la Figura 3.20. Figura 3. 20 Modelo de Túneles Uniformes 106 Descripción de los 5 pasos de la Figura 3.20 1. Llega un paquete al LSR A con un valor DSCP de 5, las políticas de conmutación determinan que el valor EXP apropiado también es 5. 2. El paquete es reenviado hacia su destino por del núcleo MPLS. 3. El LSR B reclasifica el paquete a otro tipo de clase de servicio y le pone el valor EXP 6. 4. En este caso el LSR C es el penúltimo salto por lo que quita la etiqueta MPLS y agrega el valor de Tipo de Servicio (TOS) 6 para que coincida con el valor establecido el núcleo MPLS. Si hubiera una pila de etiquetas (Ver Capítulo 2.3.6), los cambios se le hacen al campo interior EXP por lo que el valor de la próxima etiqueta será 6. 5. Por último el LSR D recibe el paquete con el valor DSCP de 6. 6. El paquete sale de la red MPLS con valor TOS 6. • Modelo de Túneles Tipo Tubería: A diferencia del modelo de túneles uniformes los cambios al DSCP no son permanentes como se puede observar en la Figura 3.21. 107 Figura 3. 21 Modelo de Túneles Tipo Tubería Descripción de los 5 pasos de la Figura 3.21 1. Llega un paquete al LSR A con un valor DSCP de 5, las políticas de conmutación determinan que el valor EXP apropiado también es 5. 2. El paquete es reenviado hacia su destino por del núcleo MPLS. 3. El LSR B reclasifica el paquete a otro tipo de clase de servicio y le pone el valor EXP 6. 4. Cuando el LSR D transmite el paquete, el valor del DSCP es 5. Si hubiera una pila de etiquetas (Ver Capítulo 2.3.6), los cambios se le hacen al campo interior EXP por lo que el valor de la próxima etiqueta será 5. 5. El paquete sale de la red MPLS con valor TOS 5. 108 • Modelos de Túneles Cortos Tipo Tubería: El LSR de salida utiliza el valor TOS del encabezado IP para aplicar el PHB. 3.10 Ingeniería de Tráfico y DiffServ (DS-TE) Con el simple uso de Ingeniería de Tráfico se puede garantizar ancho de banda suficiente para cada enlace, por lo que algunos autores consideran que la calidad de servicio no siempre es necesaria. Sin embargo, en redes complejas en las que se transmite voz e información sobre el mismo canal, la calidad de servicio siempre es necesaria. Con los protocolos tradicionales no hay manera de construir túneles que asignen ancho de banda basándose en clases de tráfico (Como vimos en el Capitulo 3.6.2). Esto es porque los LSR mantienen una sola colección (pool) en una interfaz común para los paquetes que viajan por los túneles. El enfoque DS-TE implementa el concepto de clases de Ingeniería de Tráfico en donde los LSR tienen varias colecciones de ancho de banda agrupadas por tipo de clase. El funcionamiento del protocolo RSVP se modifica para que revise que cuando se añaden nuevos túneles, estos no interfieran con los túneles de otras clases. DS-SE TE basa en el mecanismo común de reserva de recursos del plano de control. Para el plano de datos es necesario mantener mecanismos de cola de procesos (queuing) y desechado de paquetes para asegurar clases de tráfico. [10] 109 3.11 MPLS QoS Una de las principales virtudes de MPLS (además de TE) en ambientes VPN de banda ancha es el sopote de calidad de servicio. Los modelos de QoS IP son diferentes a los de MPLS, pero se pueden mapear de IP a MPLS y viceversa. En MPLS el encabezado de los paquetes tiene un campo EXP de 3 bits, el cual define la clase de tráfico a la que el paquete pertenece, en términos de QoS esto es el PHB y se va adaptando a lo largo de cada salto. Esa adaptación le permite al PHB manejar diferentes clases en cada salto. El antecesor del campo EXP de MPLS es el campo de Precedencia (PREC) de IP, el cual por “suerte” tiene el mismo tamaño: 3 bits. Esta “suerte” tiene sus consecuencias ya que el modelo DiffServ utiliza los 6 bits del TOS de IP para definir el DSCP, lo que distingue su PHB. Hay dos tipos principales de PHB: [9] • En el modelo por defecto (Default) el valor del DSCP es 000000, este modelo sirve para los paquetes sin un DSCP definido. Cuando esto pasa el modelo por defecto les asigna el mejor servicio disponible. • El modelo de Selección de Clases (Class Selector) trabaja con clases de servicio de tipo PREC de 3 bits, este define un DSCP XXX000 (Ver Capítulo 2.3.11.1) en donde las XXX definen el PHB. 110 Hay dos tipos principales de PHB para este modelo se selección de clases: El primero es el de Reenvío Asegurado (AF) que cuenta con cuatro clases de servicio, cada una con tres niveles de probabilidad de desechado. Esto nos da un total de 12 valores DSCP diferentes (el campo TOS de IP maneja 63 valores). El formato de las clases es el siguiente: AFny en donde n es la clase y y es la probabilidad de desechado. Si tenemos AF13 tenemos una clase de servicio de tipo 1 con la más alta probabilidad de desechado: 3, de esta manera AF11 es un mejor servicio que AF13. [10] El segundo es el de Reenvío Apresurado (EF) que ofrece un servicio de línea privada con garantías estrictas de latencia, interrupciones y de entrega de paquetes. [10] Otra consecuencia que tiene el mapeo PHB de IP a MPLS es en ATM. El encabezado ATM MPLS no tiene espacio para los 3 bits del campo EXP, como se muestra en la Tabla 3.2. Los campos VPI y VCI abarcan los espacios necesarios para los bits EXP. En este caso la solución es utilizar un LSP diferente para cada clase de servicio. 111 Tabla 3. 2 Encabezados MPLS 112 4. Conclusiones y Trabajo Futuro Hoy en día existen muchas tecnologías que soportan Calidad sobre Servicio, para poder proporcionar anchos de banda distintos, privilegios, etc., en resumen tecnologías para crear redes modernas adaptadas a las necesidades de tráfico, MPLS es una solución que satisface todas las necesidades implicadas en el mundo de las telecomunicaciones hoy en día. MPLS es un protocolo que tiene como principio la compatibilidad con otras tecnologías existentes en el mercado como ATM y Frame Relay, con la flexibilidad de trabajar con estas infraestructuras en el presente y la escalabilidad de de sustituirlas en el futuro. Es una tecnología abierta que permite una buena gestión de tráfico y es relativamente más fácil de implementar que sus adversarios. Algunas de las ventajas principales son la QoS desde el LER de entrada hasta el de salida, diferenciación de tráfico DiffServ y CoS, balanceo de cargas de la red y optimización de recursos, entre otras. Las características que las VPN-MPLS tienen y que son indispensables para manejar VPNs modernas son: • Confidencialidad de Información • Operación Eficiente • Ruteo Eficiente • Alta Disponibilidad 113 • Tráfico Multicast • Calidad de Servicio • Evitar Fragmentación • Autenticación • Autorización • Auditoria • Selección de Servicios • Soporte para Direccionamiento IP • Manejo Efectivo de Direcciones • Servicios de Capa 3 Adicionales Estos conceptos se discutieron a lo largo de la investigación y son puntos clave en el desarrollo de redes privadas virtuales contemporáneas. Es muy importante mencionar que MPLS no es una tecnología “mágica” que hace que todos los problemas presentes en otras tecnologías desparezcan. Algunos problemas lo resuelve elegantemente, otros parcialmente y algunos no los resuelve para nada. Ventajas de VPN-MPLS con respecto a otras tecnologías: • MPLS es un esquema de reenvío que es independiente tanto de la tecnología de Capa 3 de red que esté sobre él, como de la de Capa 2 de 114 Enlace que esta por debajo. Esto posibilita que se puedan aprovechar las tecnologías existentes mientras se migra a otras más modernas. • El modelo de puertos es un gran avance tecnológico que pone a MPLSVPN una categoría diferente a las de sus predecesores. • Es una tecnología escalable gracias a la estructura de pila de etiquetas que maneja, es fácil construir jerarquías de dominios globales de forma transparente. • Permite aplicar tendencias de ingeniería de Tráfico con lo que la red deja de se un simple elemento de transporte de paquetes y se vuelve mucho mas versátil. • Soporte el modelo DiffServ del IETF • Permite usar cualquier protocolo de distribución de etiquetas tradicional. • Permite usar cualquier protocolo de enrutamiento tradicional. • Ofrece caminos virtuales con QoS y ancho de banda asegurados. • No encapsula las tramas de red, les coloca una etiqueta que no afecta sus propiedades. • Proporciona conmutación en base a etiquetas. (Rápida y Eficiente) • Proporciona mecanismos eficientes para el establecimiento de túneles. Como conclusión es posible afirmar que MPLS en conjunto con los servicios de capa 3 de sus VPNs conforman una tecnología muy adaptable y con mucho futuro gracias a sus cualidades. Hoy en día las grandes empresas que la usan invierten en su desarrollo y apuestan por sus ventajas. MPLS es una 115 solución transparente para el usuario, ya que nunca operará en el ámbito local sino en a partir de los nodos de salida de las redes locales, teniendo así la posibilidad de conectar redes privadas virtuales (VPNs) a lo largo de todo el mundo. Es una tecnología que permite a redes IP de gran escala ofrecer servicios VPN a millones de clientes, con servicios de valor agregado y con el mejor aprovechamiento de la infraestructura existente. Como trabajo futuro se pretende extender la investigación para llevar acabo la implementación de un red VPN de capa 3 con tecnología MPLS, con el fin de mostrar físicamente las ventajas y desventajas que tiene la tecnología en comparación con su adversario más cercano: ATM MPLS es una tecnología que aún no esta estandarizada por la IETF y apenas esta entrando en el mercado de la banda ancha, otro desarrollo a futuro sería realizar una investigación profunda de la ruta empresarial que esta siguiendo la tecnología. Es decir, si algún día las redes privadas virtuales con tecnología MPLS llegarán a ser un estándar y un punto de desarrollo para nuevas tecnologías. 116 5. Bibliografía [1] CCNA Cisco Certified Network Associate Study Guide, 4th Edition (640-801) by Todd Lammle, Sybex. [2] Rosen, E., “Multiprotocol Label Switching Arquitecture,” RFC 3031, Enero de 2001. [3] Building MPLS-Based BroadBand Access VPNs, Kumar Reddy, Cisco Press [4] MPLS: Technology and Applications by Bruce S. Davie, Yakov Rekhter. [5] Rosen, E., “MPLS Label Stack Encoding,” RFC 3032, Enero de 2001. [6] Awduche, D,. “Requirements for Traffic Engineering over MPLS,” RFC 2702, Septiembre de 1999. [7] Apostolopoulos, G., “QoS Routing Mechanisms and OSPF Extensions” RFC 2676, Agosto de 1999. [8] Braden, R., “Integrated Services in the Internet Arquitecture: an Overview” RFC 1633, Junio de 1994. [9] Blake, S., “An Arquitecture for Differentiated Services” RFC 2475, Diciembre de 1998. [10] Nichols, K., “Definition of the Differentiated Services Field (DS Field) in the IPv4 and IPv6 headers” RFC 2474, Diciembre de 1998. [11] Bates, T., “Multiprotocol extensions for BGP-4” RFC 2283, Febrero de 1998. [12] http://www.auditmypc.com/acronym/MPLS.asp [13]http://www.cisco.com/en/US/products/ps6557/products_ios_technology_hom e.html 117 [14] http://www.mplsforum.org [15]http://www.cisco.com/global/ES/solutions/sp/techsols/mpls_vpn_home.shtml [16]http://www.ciscoredaccionvirtual.com/redaccion/comunicados/ver_comunicad os.asp?Id=359 [17]http://www.microsoft.com/windows2000/techinfo/howitworks/communications/ trafficmgmt/qos.asp [18] http://neutron.ing.ucv.ve/revista-e/No4/ATM%20vs%20FR.htm [19] http://www.cinit.org.mx/articulo.php?idArticulo=14 [20] http://en.wikipedia.org/wiki/MPLS [21] http://www.ietf.org/rfc/rfc3031.txt [22]http://www.cisco.com/univercd/cc/td/doc/product/software/ios120/120newft/1 20t/120t5/vpn.htm [23] http://www.mplsrc.com/faq1.shtml [24]http://www.cisco.com/en/US/products/ps6604/products_white_paper09186a0 0800b3d25.shtml [25] http://www.jacco2.dds.nl/networking/freeswan-l2tp.html [26] http://www.cisco.com/warp/public/cc/so/neso/vpn/unvpnst/atomf_ov.htm [27]http://www.cisco.com/web/about/ac123/ac147/ac174/ac180/about_cisco_ipj_ archive_article09186a00800c83a3.html [28] http://www.faqs.org/rfcs/rfc3212.html [29] http://www.ietf.org/rfc/rfc3209.txt [30] http://www.networksorcery.com/enp/rfc/rfc3036.txt [31] http://www.ietf.org/rfc/rfc1633.txt 118 [32] http://eia.udg.es/~atm/bcds/pdf/ydonoso_clei2002.pdf [33] http://www.ietf.org/rfc/rfc3947.txt [34] http://www.cisco.com/warp/public/cc/cisco/mkt/security/vpnsols/index.shtml [35] http://tools.ietf.org/html/draft-ietf-l3vpn-applicability-guidelines-00.txt [36] http://tools.ietf.org/html?rfc=2547 [37] http://www.ietf.org/html.charters/aaa-charter.html [38] http://www.faqs.org/rfcs/rfc3270.html [39] http://tools.ietf.org/html/3260 119