1 Desarrollo de un Nodo Encaminador para Filtrado y Simulación de Tráfico en Subredes IP ESCUELA TÉCNICA SUPERIOR DE INGENIERÍA DE TELECOMUNICACIÓN UNIVERSIDAD DE MÁLAGA Autor: D. Miguel Ángel Ruiz Lozano Director: D. Eduardo Casilari Pérez INGENIERÍA DE TELECOMUNICACIÓN Departamento de Tecnología Electrónica TE Proyecto Fin de Carrera
2 2 Índice 1. Introducción 2. Modelo de Servicios Diferenciados 3. Desarrollo de Encaminador DS 4. Interfaz de Usuario 5. Pruebas de funcionamiento 6. Conclusiones y líneas futuras
3 3 Necesidad de Calidad de Servicio Internet Valorada por la gran cantidad de contenidosValorada por la gran cantidad de contenidos Servicio de transporte de datos: Best EffortServicio de transporte de datos: Best Effort Infraestructura comercial Nuevos Servicios VoIP, Videoconferencia, Telecontrol, comercio-eVoIP, Videoconferencia, Telecontrol, comercio-e Garantías de Ancho de Banda, retardo máximo, jitterGarantías de Ancho de Banda, retardo máximo, jitter Servicio Best Effort No ofrece garantíasNo ofrece garantías No se adapta a los nuevos servicios IPNo se adapta a los nuevos servicios IP Solución: Dotar a IP de Mecanismos de Calidad de Servicio Mejoran el Servicio de transporte de datos IPMejoran el Servicio de transporte de datos IP
4 4 Calidad de Servicio ¿Qué es Calidad de Servicio? Capacidad de la red de proporcionar un mejor servicio a un determinado tráficoCapacidad de la red de proporcionar un mejor servicio a un determinado tráfico ¿Cómo conseguir Calidad de Servicio? Trato preferente a determinados tráficos a nivel IPTrato preferente a determinados tráficos a nivel IP No crea ancho de banda Uso más eficienteNo crea ancho de banda Uso más eficiente Estrategias de diferenciación ReservaReserva Asignación de prioridadesAsignación de prioridades
5 5 Estrategias de diferenciación Reserva Reserva recursos para uso exclusivo de un determinado flujoReserva recursos para uso exclusivo de un determinado flujo Garantía totalGarantía total Poco escalablePoco escalable Asignación de prioridades Asigna distintas prioridades a determinados agregados de tráficoAsigna distintas prioridades a determinados agregados de tráfico Garantía estadísticaGarantía estadística Control en nodos de acceso Garantía TotalControl en nodos de acceso Garantía Total EscalableEscalable
6 6 Modelos de Calidad de Servicio IPv4 e IPv6 soportan asignación de prioridades Tipo de Servicio (ToS) para IPv4Tipo de Servicio (ToS) para IPv4 Clase de Tráfico en IPv6Clase de Tráfico en IPv6 No pueden ofrecer calidad de servicio extremo a extremo No poseen mecanismos de control y vigilancia propiosNo poseen mecanismos de control y vigilancia propios Solución: Modelos de Calidad de Servicio Servicios Integrados (IntServ) y RSVPServicios Integrados (IntServ) y RSVP MPLS (MultiProtocol Label Switching)MPLS (MultiProtocol Label Switching) Servicios Diferenciados (DiffServ)Servicios Diferenciados (DiffServ)
7 7 Índice 1. Introducción 2. Modelo de Servicios Diferenciados 3. Desarrollo de Encaminador DS 4. Interfaz de Usuario 5. Pruebas de funcionamiento 6. Conclusiones y líneas futuras
8 8 Modelo de Servicios Diferenciados Alternativa al Modelo de Servicios Integrados Solución a dificultad de implementación y escalabilidadSolución a dificultad de implementación y escalabilidad Idea Básica Clasificar el tráfico en grupos de tráfico con distintas prioridadesClasificar el tráfico en grupos de tráfico con distintas prioridades Mejor servicio a paquetes de grupo de mayor prioridadMejor servicio a paquetes de grupo de mayor prioridad Escalable Asigna recursos a un conjunto limitado de clases de tráficoAsigna recursos a un conjunto limitado de clases de tráfico Complejidad crece en función del número de clasesComplejidad crece en función del número de clases Diseño basado en Paradigma IP Complejidad de gestión de recursos en los extremosComplejidad de gestión de recursos en los extremos Núcleo de red simple y rápidoNúcleo de red simple y rápido
9 9 Arquitectura de Servicios Diferenciados Dominio de Servicios Diferenciados (RFC 2475) Conjunto de nodos contiguos con soporte de DS y mismos PHBConjunto de nodos contiguos con soporte de DS y mismos PHB Nodos Frontera y Nodos InterioresNodos Frontera y Nodos Interiores Agregado ó BA Conjunto de paquetes que recibirán el mismo tratamiento dentro del dominio DSConjunto de paquetes que recibirán el mismo tratamiento dentro del dominio DS DSCP (RFC 2474) Código de la cabecera IP que identifica el agregado del paqueteCódigo de la cabecera IP que identifica el agregado del paquete 6 bits más significativos de ToS de IPv4 64 agregados diferentes6 bits más significativos de ToS de IPv4 64 agregados diferentes PHB ó Tratamiento nodo a nodo Tratamiento que cada nodo aplica a un determinado agregadoTratamiento que cada nodo aplica a un determinado agregado Acondicionamiento, Gestión de entrada de cola y planificación de salidaAcondicionamiento, Gestión de entrada de cola y planificación de salida PHB de la IETF Servicio Premium/PHB EF(Expedited Forwarding) (RFC 3246)Servicio Premium/PHB EF(Expedited Forwarding) (RFC 3246) Servicio Asegurado/PHB AF(Assured Forwarding) (RFC 2597)Servicio Asegurado/PHB AF(Assured Forwarding) (RFC 2597) Servicio Best Effort/PHB Best EffortServicio Best Effort/PHB Best Effort
10 10 Expedited Forwarding (EF) Mayor nivel de Prioridad Mínimas pérdidas, bajo retardo y bajo jitterMínimas pérdidas, bajo retardo y bajo jitter Estrategias de implementación Limitar tasa máxima de tráfico EFLimitar tasa máxima de tráfico EF Conformado / EliminaciónConformado / Eliminación Modelo de colas con Cola EF prioritariaModelo de colas con Cola EF prioritaria Apropiado para Aplicaciones de Tiempo Real VoIPVoIP VideoconferenciaVideoconferencia DSCP Recomendado: 101110
11 11 Assured Forwarding (AF) Prioridad Media Garantías menos estrictas que EFGarantías menos estrictas que EF Apropiadas para tráfico a ráfagasApropiadas para tráfico a ráfagas Grupo de PHB AFxy 1 < x < 4 4 grupos AFx1 < x < 4 4 grupos AFx 1 < y < 3 3 prioridades de descarte1 < y < 3 3 prioridades de descarte Implementación Medidor de conformadoMedidor de conformado Marcador de prioridad de descarteMarcador de prioridad de descarte WRED en Sistema de Colas de SalidaWRED en Sistema de Colas de Salida Apropiado para tráfico a ráfagas Aplicaciones que funcionan sobre TCPAplicaciones que funcionan sobre TCP Prioridad de Descarte Clase 1Clase 2Clase 3Clase 4 Baja (AF11) 001010 (AF21) 010010 (AF31) 011010 (AF41) 100010 Media (AF12) 001100 (AF22) 010100 (AF32) 011100 (AF42) 100100 Alta (AF13) 001110 (AF23) 010110 (AF33) 011110 (AF43) 100110
12 12 Best Effort Servicio Básico Tratará de encaminar lo mejor posibleTratará de encaminar lo mejor posible Sin ninguna garantíaSin ninguna garantía Tráfico sin contrato AF ó EF Tráfico que no desea calidades superioresTráfico que no desea calidades superiores Tráfico EF y AF no conforme a perfil de tráfico Si la política así lo estimaSi la política así lo estima DSCP recomendado 000000
13 13 Modelo de Servicios Diferenciados Dominio DiffServ Proveedor de Servicios de Internet (ISP) Nodo DiffServ Frontera Nodo DiffServ Interior Usuario Clase 1 Clase 2 Clase 1 Clase 2 Nodo DiffServ Interior SLA TCA
14 14 TCA TCA o Acuerdo de Acondicionamiento de Tráfico Define el Perfil de clienteDefine el Perfil de cliente Perfil de Cliente Perfil de tráficoPerfil de tráfico Parámetros de clasificaciónParámetros de clasificación Perfil de tráfico Especifica las propiedades del tráfico contratadoEspecifica las propiedades del tráfico contratado En forma de parámetros Token BucketEn forma de parámetros Token Bucket Parámetros de clasificación Permite al clasificador distinguir tráfico del clientePermite al clasificador distinguir tráfico del cliente Localización: IP origen/destino, Aplicación: Puerto origen/destinoLocalización: IP origen/destino, Aplicación: Puerto origen/destino
15 15 Modelo de Servicios Diferenciados Dominio DiffServ Proveedor de Servicios de Internet (ISP) Nodo DiffServ Frontera Nodo DiffServ Interior Usuario Clase 1 Clase 2 Clase 1 Clase 2 Nodo DiffServ Interior SLA TCA Clasifica Perfil Cliente Acondiciona (TCA) Clasifica BA Aplica PHB Clasifica BA Aplica PHB ( Ajusta tráfico al perfil de tráfico contratado ) ( Asocia BA del Dominio Marca DSCP ) ( Asocia BA del Dominio Marca DSCP )
16 16 Índice 1. Introducción 2. Modelo de Servicios Diferenciados 3. Desarrollo de Encaminador DS 4. Interfaz de Usuario 5. Pruebas de funcionamiento 6. Conclusiones y líneas futuras
17 17 Elección del Entorno de Trabajo Sistema Operativo Windows S.O. más extendidoS.O. más extendido Ninguna versión libre de encaminador DS para WindowsNinguna versión libre de encaminador DS para Windows Lenguaje de programación C++ Códigos ejecutables rápidosCódigos ejecutables rápidos Orientado a objetos Reutilización del códigoOrientado a objetos Reutilización del código Estilo de programación Multithread Aplicación eficienteAplicación eficiente Arquitectura WinPcap Captura de paquetesCaptura de paquetes Más eficiente y robusta que Interfaz SocketMás eficiente y robusta que Interfaz Socket
18 18 Diagrama de bloques
19 19 Módulo de Servicios Diferenciados Implementación de elementos basada en la RFC 3290: “Modelo Informal de Gestión para Routers DiffServ”
20 20 Clasificador Tráfico de entrada Perfil de Cliente Gestor de Tráfico Conjunto de Filtros no solapados Aplica al tráfico de entrada siguiendo un orden de precedenciaAplica al tráfico de entrada siguiendo un orden de precedencia Filtro Condiciones sobre campos del paquete claves para clasificaciónCondiciones sobre campos del paquete claves para clasificación Clasificador MF Filtros MF/MulticampoFiltros MF/Multicampo 6-tuple: IP origen/destino, puertos origen/destino, DSCP, protocolo aplicación Nodos FronteraNodos Frontera Clasificador BA Filtros BAFiltros BA Campo DSCP Nodos InterioresNodos Interiores
21 21 Gestor de Tráfico Acondiciona el tráfico según las políticas y parámetros contratados Tipos de Gestores en función del tratamiento que van a aplicar EF, AF y Best EffortEF, AF y Best Effort Tratamiento Acción combinada de los elementos del GestorTratamiento Acción combinada de los elementos del Gestor Elementos del Gestor Medidor Analiza las propiedades del tráfico vs perfil de tráficoMedidor Analiza las propiedades del tráfico vs perfil de tráfico Marcador Marca los paquetes con el DSCP apropiadoMarcador Marca los paquetes con el DSCP apropiado Conformador / Eliminador Ajustar el tráfico a la salidaConformador / Eliminador Ajustar el tráfico a la salida
22 22 Conformador / Eliminador Conformador Token Bucket Eliminador: Token Bucket con Tamaño de Cola = 0
23 23 Medidor Miden Conformidad del tráfico vs Perfil de tráfico Medidor Token BucketMedidor Token Bucket Tráfico a la salida de un algoritmo Token Bucket sin colaTráfico a la salida de un algoritmo Token Bucket sin cola ConformesSemiConformes No Conformes Medidor de 3 niveles de conformado Medidor de 2 niveles de conformado
24 24 Sistema de Colas de Salida 3 Sesiones: EF, AF y Best Effort Sesión Cola FIFOCola FIFO Mecanismos de gestión y planificaciónMecanismos de gestión y planificación
25 25 Mecanismos de Gestión de Entrada TailDrop Elimina paquetes por final de cola cuando ésta esta llenaElimina paquetes por final de cola cuando ésta esta llena Sincronización global TCPSincronización global TCP Utilización ineficiente de la red RED Descarta estadísticamenteDescarta estadísticamente Evita Sincronización global TCPEvita Sincronización global TCP Mantiene cola con tamaño medioMantiene cola con tamaño medio No precedencias de descarteNo precedencias de descarte WRED RED con prioridades de descarteRED con prioridades de descarte WRED de 3 niveles AFxyWRED de 3 niveles AFxy
26 26 Disciplinas de Planificación de Salida FIFO Sirve en orden de llegadaSirve en orden de llegada PQ ó colas de prioridades Asigna distintas prioridades a las colasAsigna distintas prioridades a las colas WFQ Distribuye el Ancho de Banda de salida de forma justaDistribuye el Ancho de Banda de salida de forma justa SCFQ WFQ menos complejaWFQ menos compleja Mayor retardo en Peor CasoMayor retardo en Peor Caso WF2Q+ WFQ mucho menos complejaWFQ mucho menos compleja Distribuye el Ancho de Banda de salida de forma mas precisaDistribuye el Ancho de Banda de salida de forma mas precisa
27 27 Características del Software Final Dos versiones de Encaminador con y sin Interfaz Gráfico Características comunes Dan soporte de Servicios DiferenciadosDan soporte de Servicios Diferenciados Se autoconfiguran desde ficheros a intervalos programadosSe autoconfiguran desde ficheros a intervalos programados Facilita la Configuración remota a través de FTP Realizan volcado periódico de medidas a ficheroRealizan volcado periódico de medidas a fichero Hace posible llevar un seguimiento remoto del comportamiento Implementan funciones de Proxy ARP para montar una Red Virtual ARPImplementan funciones de Proxy ARP para montar una Red Virtual ARP Con Interfaz Gráfico Muestra estadísticas de tráfico y encaminamiento en tiempo realMuestra estadísticas de tráfico y encaminamiento en tiempo real Facilita la creación de nuevos clientes a través de menús interactivosFacilita la creación de nuevos clientes a través de menús interactivos Permite la modificación de parámetros en tiempo realPermite la modificación de parámetros en tiempo real Lectura y volcado de parámetros de configuración y clientes a través de ficherosLectura y volcado de parámetros de configuración y clientes a través de ficheros Sin Interfaz Gráfico Prevenir problemas de incompatibilidad Interfaz Gráfico – Versión WindowsPrevenir problemas de incompatibilidad Interfaz Gráfico – Versión Windows
28 28 Índice 1. Introducción 2. Modelo de Servicios Diferenciados 3. Desarrollo de Encaminador DS 4. Interfaz de Usuario 5. Pruebas de funcionamiento 6. Conclusiones y líneas futuras
29 29 Panel Configuración
30 30 Panel Cola de Entrada
31 31 Panel Clasificador
32 32 Panel Gestor de Tráfico
33 33 Panel Gestor de Tráfico
34 34 Panel Gestor de Tráfico
35 35 Panel Adaptadores
36 36 Índice 1. Introducción 2. Modelo de Servicios Diferenciados 3. Desarrollo de Encaminador DS 4. Interfaz de Usuario 5. Pruebas de funcionamiento 6. Conclusiones y líneas futuras
37 37 Escenario de Pruebas Equipo A con 3 tarjetas Ethernet Clientes Iperf (Emisores) Equipo B con 2 tarjetas Ethernet Servidores Iperf (Receptor) Encaminador DiffServ con 3 tarjetas Ethernet
38 38 Encaminamiento Best Effort Iperf –s –u –B 192.170.0.1 –p 5001 Iperf –c 192.170.0.1 –u –B 192.169.0.1 –b 2m –t 10 –p 5001 2 Mbps
39 39 Marcado de Paquetes Expedited Forwarding
40 40 Conformado
41 41 Conformado 3 Mbps 1 Mbps 0 Paquetes Perdidos
42 42 Eliminación
43 43 Eliminación 3 Mbps 1 Mbps Paquetes perdidos > 0
44 44 Mecanismos RED
45 45 Planificación de Salida 10 40 50
46 46 Capacidad de Trabajo del Software Funcionalidad Ordenador compatible Pentium o superiorOrdenador compatible Pentium o superior Sistemas Operativos Windows 9x, NT, 2000 y XPSistemas Operativos Windows 9x, NT, 2000 y XP Arquitectura WinPcap versión 2.3 o superiorArquitectura WinPcap versión 2.3 o superior Características del SW sobre Athlon XP 1.8 Ghz Velocidad de conmutación de hasta 40 Mbps de tráfico a la entradaVelocidad de conmutación de hasta 40 Mbps de tráfico a la entrada Jitter menores al microsegundo para baja cargaJitter menores al microsegundo para baja carga Retardos menores al milisegundo para baja cargaRetardos menores al milisegundo para baja carga Precisión de ancho de banda de salida de conformado entorno al 1 % del valor objetivoPrecisión de ancho de banda de salida de conformado entorno al 1 % del valor objetivo Capacidad para soportar mas de 10 agregados de 3 MbpsCapacidad para soportar mas de 10 agregados de 3 Mbps
47 47 Índice 1. Introducción 2. Modelo de Servicios Diferenciados 3. Desarrollo de Encaminador DS 4. Interfaz de Usuario 5. Pruebas de funcionamiento 6. Conclusiones y líneas futuras
48 48 Conclusiones Servicios Diferenciados, QoS más apropiada hoy día Por escalabilidad y sencillez de implementaciónPor escalabilidad y sencillez de implementación MPLS como apuesta de futuroMPLS como apuesta de futuro Magníficas características de conmutación, Ingeniería de Tráfico y VPN C++ y la multitarea para aplicaciones eficientes Aplicación rápida, eficiente y robusta de cara al encaminamientoAplicación rápida, eficiente y robusta de cara al encaminamiento Encaminador DS útil para I+D Facilita la investigación de futuras mejoras del estándar DiffServFacilita la investigación de futuras mejoras del estándar DiffServ Sirve de importante base para el desarrollo de otros productosSirve de importante base para el desarrollo de otros productos Encaminador DS como producto final Permite dar soporte QoS de forma sencillaPermite dar soporte QoS de forma sencilla Totalmente gestionable de forma remotaTotalmente gestionable de forma remota
49 49 Líneas futuras Buscar configuración óptima de parámetros DiffServ del Encaminador Para tráficos determinados: VoIP, videoconferenciaPara tráficos determinados: VoIP, videoconferencia Añadir funcionalidad para que soporte protocolos De configuración remota estándar: SNMP ó COPSDe configuración remota estándar: SNMP ó COPS De intercambio de información de encaminamiento: BGP ó OSPFDe intercambio de información de encaminamiento: BGP ó OSPF Transformar en Agente Local de Mobile IP Partiendo de las Clases y métodos para manejo del protocolo ARP implementadas en el proyectoPartiendo de las Clases y métodos para manejo del protocolo ARP implementadas en el proyecto
50 Desarrollo de un Nodo Encaminador para Filtrado y Simulación de Tráfico en Subredes IP ESCUELA TÉCNICA SUPERIOR DE INGENIERÍA DE TELECOMUNICACIÓN UNIVERSIDAD DE MÁLAGA Autor: D. Miguel Ángel Ruiz Lozano Director: D. Eduardo Casilari Pérez INGENIERÍA DE TELECOMUNICACIÓN Departamento de Tecnología Electrónica TE Proyecto Fin de Carrera