Integrantes:
- Herman Schenck
- Andrés Burel
Tutores:
- Álvaro Sánchez
- Felipe Rivera
Descripción
El surgimiento de las Redes Definidas por Software (SDN) presenta nuevas oportunidades para rediseñar los esquemas actuales de manejo de las redes de datos.
Se presenta en este trabajo Vlanator 3000!, una aplicación construida con software libre que se basa en este paradigma y utiliza el protocolo OpenFlow para proveer funcionalidades de control y optimización de tráfico de capa de enlace en redes de datacenter.
El sistema desarrollado permite la gestión de VLANs e implementa un sistema de métricas configurables independiente para cada una de ellas, que resulta en una optimización del flujo del tráfico gracias al uso de los caminos óptimos calculados utilizando el algoritmo de Dijkstra.
Esta aplicación tiene soporte para cualquier topología de red, siendo capaz de reconocerla automáticamente y aprovechar al máximo sus recursos, sin necesidad de bloquear ninguno como sí se hace en redes de switches que implementan Spanning Tree.
La solución utiliza la presencia de caminos de igual métrica para su beneficio, implementando un balanceo de carga automático entre ellos que resulta en una mejor distribución del tráfico en la red. Vlanator 3000! maneja la red con un enfoque proactivo, permitiendo incluso su funcionamiento en casos de falla del controlador.
Se programaron dos módulos en Python, uno para ser ejecutado con el controlador Ryu encargado de interactuar con los switches y otro en el cual se programó una consola de administrador.
También se integran al sistema una base de datos MySQL como sistema de almacenamiento de información, una aplicación distribuida con Ryu que permite el descubrimiento y visualización gráfica de la topología y un servidor HTTP Apache donde reside una interfaz gráfica programada en lenguaje PHP.
Se probó el funcionamiento de Vlanator 3000! virtualizando con Mininet topologías de interés como son fat-tree o interconexión toroide 2D.
El sistema mostró un buen funcionamiento a grandes escalas, requiriendo menos de 8 segundos para reconocer y configurar una topología con 125 switches y 750 enlaces entre ellos. Además, de estas pruebas de performance, se realizaron pruebas de estrés utilizando para ello un simulador de tráfico IXIA.
Tanto en pruebas con HTTP como con TFTP y RSTP se pudo comprobar que la respuesta de la aplicación a estos escenarios es satisfactoria, no registrándose errores en ninguna de las tres.
A partir de las pruebas realizadas se concluye que el resultado del proyecto fue exitoso, lográndose un cumplimiento total de las metas planteadas originalmente y dando como resultado una aplicación funcional que simplifica la gestión de una red de datos.