cambiar a curso:   2015-16   2017-18


Grado en Ingeniería Informática


TRABAJOS FIN DE GRADO
curso: 2016-17

Prototipo de interfaz gráfico para la gestión de una red definida por software (SDN)


Tecnologías Específicas

Ingeniería de Computadores
Tecnologías de la Información
 


Descripcion y Objetivos

El concepto SDN (Software Defining Networking) permite la gestión de una red de computadores de manera dinámica y estable, sin acceder directamente a los dispositivos que se están gestionando. Las técnicas SDN se basan en el principio de que los dispositivos de red en un principio no tienen ningún conocimiento de lo que deben de hacer con las tramas de datos que atraviesan por ellos. Siendo un controlador central, el encargado de programar las reglas que los routers y/o switches deben de usar para manejar las tramas de datos.

De esta forma para cada trama que llega a un switch o router, este mira en su “tabla de manejo de tramas”, llamada tabla de flujos, si hay alguna entrada para ese tipo de trama. Si la hay, hace la acción que en la tabla se especifica para dicha trama (o grupo de tramas). En caso de no existir la entrada, la trama a tratar es dirigida al controlador para que la analice, y en función de dicho análisis, determine lo que hacer con ella. El controlador puede programar, una vez analizada la trama, los dispositivos de red para que tramas sucesivas relacionadas con la tratada, sean automáticamente procesadas por los dispositivos de red. Esta programación se hace simplemente incluyendo nuevas entradas en la tabla de flujos de cada uno de los dispositivos de la red.

Toda la comunicación entre el controlador central y los dispositivos de red se hace utilizando un canal separado del de los datos, y se emplea el protocolo OpenFlow.

En la actualidad existen una gran variedad de controladores SDN, que permiten al usuario el programar en los dispositivos de red reglas en las tablas de flujos, así como saber: los dispositivos que componen la red, como están conectados dichos dispositivos, el contenido de las tablas de cada dispositivo, así como el obtener información sobre la utilización del ancho de banda y de los recursos de cada dispositivo de red.

El acceso a dicho controlador se realiza mediante lo que se denomina una REST API, que no es más que un API que utiliza el protocolo HTTP para el envío y recepción de información, habitualmente en formato JSON.

El objeto de este trabajo será el implementar una capa de abstracción software, para que el usuario no tenga que interactuar directamente con la REST API del controlador, sino que interactúe de manera gráfica con una representación gráfica de la topología. Pudiendo seleccionar dispositivos de la red, y seleccionar la información que de dicho dispositivo quiere obtener.

Objetivos:

El objetivo general será la implementación de una interfaz gráfica que representa la topología de red de una red de dispositivos construida bajo el paradigma SDN. Mediante dicha interfaz, el usuario podrá obtener información sobre el contenido de las tablas de cada dispositivo de red, así como de las estadísticas de utilización del mismo.

Este objetivo general se puede dividir en los siguientes sub-objetivos:

  1. Entender y en su caso extender la REST API implementada en el controlador SDN Ryu.

  2. Implementar una interfaz gráfica basada Node.js, jQuery y jQuery-ui, que permita:

    1. La representación gráfica de la topología de red

    2. La interacción con los elementos que representan la topología, para:

    • La modificación de su posición

    • La selección de alguna acción a realizar: solicitar información sobre el mismo, enviar algún tipo de parámetro para la configuración de él, etc.

 


Metodología y Competencias

Las fases de trabajo ques se definen en un principio son:

  1. Estudio de los fundamentos de SDN.

    1. Estudio del controlador Ryu,

    2. Estudio de la herramienta de simulación de redes SDN mininet.

  2. Implementación de la parte del cliente que interactúa con la REST API de Ryu utilizando Node.js®.

  3. Implementación de la parte de cliente que se encarga de la representación gráfica de la topología y la interacción con el usuario, utilizando jQuery y Node.js®.

  4. Fusión de los módulos desarrollados en la fase 2 y 3 del plan de trabajo.

 


Medios a utilizar

Un PC.

 


Bibliografía

 


Tutores


DELICADO MARTÍNEZ, FRANCISCO MANUEL
LÓPEZ CAMACHO, VICENTE
 

Alumno