SDN – Software Defined Networking

Lo primero va a ser definir una serie de conceptos:

  • SDN (Software Defined Networking): Es el software, realmente una arquitectura, que automatiza de forma centralizada la gestión de los dispositivos de red. Todo se gestiona desde un punto central, y es este punto central el que puede ver todo lo que pasa en la red. También podemos decir que SDN separa el plano de control del plano de datos. SDN se monitoriza a si mismo y puede llegar a tomar decisiones en función de las circunstancias.
  • NFV (Network Functions Virtualization): Virtualización de dispositivos de red. (routers, swiches balanceadores, firewalls). Esto da muchísima rapidez en el despliegue.

Aunque cuando hablamos de SDN normalmente hablamos de SDN + NFV en conjunto

  • SDS (Software Definied Storage): Gestión del almacenamiento físico desde un punto central. Consiste en gestionar el almacenamiento de los servidores de forma unitaria y compartida, pero sin tener compara una SAN. Esta gestión nos va a permitir por ejemplo disponer máquinas virtuales en distintos tipos de almacenamiento en función de sus necesidades (auto tiering)
  • SDDC (Software Defined Data Center): Es la gestión de todo junto SDN (SDN + NFV) + SDS + virtualización (memoria + cpu).

El despliegue de un SDDC es muy rápido pues todos los elementos que lo componen son al final virtuales, son máquinas virtuales, pero la parte física hay que montarla igualmente, aunque será mucho más sencilla.

Por otro lado SDN hablará con todos los dispositivos de red con lo que no será necesario conocer todos los dispositivos de red para hacer configuraciones.

Como SDN conoce el estado de la red si algo no funciona siempre podemos hacer un rollback.

SDN tiene tres planos, gestión, control y datos y es un modelo de referencia.

  • El plano de datos nos permite mover información de un lado a otro (la carretera), donde va el paquete
  • El plano de control nos dice como tomar la decisión de envío del paquete, por donde enviarlo (STP, OSPF, BGP)
  • El plano de gestión es el interfaz con el humano que traduce a cada dispositivo de red

Lo primero es definir que es un controlador SDN, el cual podemos considerarlo como un intermediario entre los dispositivos y el usuario que proporciona control y automatización.

El controlador SDN es un software que hace todo esto y que mantiene el plano de control y de gestión, el plano de datos de mantiene en los equipos de red.

SDN trabaja con flujos, el tráfico de un lugar a otro, el SDN puede afectar a esos flujos para redirigirlos en caso de necesidad, por ejemplo congestión

Los controladores SDN tienen interfaces Northbound y Southbound, los nortbound son aquellos en los que se define el plano de control del controlador SDN, el interfaz con el usuario (management) es el northbound SDN interface, mientras que el interfaz con el equipo de red es el southbound SDN interface y no tiene nada que ver con el movimiento de datos en el plano de datos.

El interfaz Nothbound está todavía sin estándar, pero en southbound tenemos openflow, el cual poco a poco de va extendiendo, en mikrotik empieza, por ejemplo, a haber un incipiente soporte.

NFV lo que hace es ejecutar un dispositivo de red en una maquina virtual, virtualizado.

Cuando hablamos de NFV nos referimos a la forma de aprovisionar máquinas de red en una máquina virtual. NFV normalmente está gestionada por las herramientas de virtualización de los hypervisores,mientras que el controador de SDN gestiona directamente los dispositivos de red, sin herramientas de virtualización