¿Te resulta más fácil leer con fondo crema, un tono de color, más contraste o un texto más grande? Elige tus colores y tu texto una sola vez, para todas las páginas.

Lección gratuita

Plano de control y plano de datos

Después de esta lección: Puedo decir qué decide un controlador y qué hace un switch.

Lección de 45 min4 comandosLaboratorio de redes definidas por software: Open vSwitch, Mininet y un controlador OpenFlow en una VM

Qué es una red definida por software

Una red definida por software (SDN, por sus siglas en inglés) separa quien decide el camino del tráfico de quien lo mueve. Así puedes cambiar una regla en toda la red desde un solo programa.

Un campus tiene 200 switches y llega una orden: la wifi de invitados no puede ver los equipos de administración. Hacerlo a mano obliga a entrar en los 200 aparatos, uno por uno.

Al final de esta lección

Nota

Puedo decir qué decide un controlador y qué hace un switch.

Palabras clave

PalabraQué significaEjemplo
Plano de datosel trabajo que se hace con cada paquete
Plano de controlel trabajo de decidir qué reglas hay
Switchun aparato que pasa tramas de un puerto a otro
Controladorun programa que escribe las reglas de los switches
Flujouna regla de un switch: qué paquetes y qué hacerpriority=10,actions=drop
OpenFlowel idioma que hablan un switch y su controlador

Las celdas que rellenan los estudiantes quedan en blanco en esta vista previa.

El switch mueve cada paquete mirando una tabla

El plano de datos es el trabajo que se repite con cada paquete: mirar una tabla y enviarlo por un puerto. Es rápido y no piensa.

El plano de control decide qué reglas debe tener la tabla. Calcula caminos, aplica las políticas y escribe las reglas en los switches.

Ejemplo: seis trabajos de una red

Trabajo¿Se hace con cada paquete?Plano
Enviar un paquete por el puerto 2SíDatos
Descartar un paquete bloqueadoSíDatos
Calcular el mejor camino entre dos aulasNo, una vez por cambioControl
Decidir que los invitados no ven administraciónNo, una vez por políticaControl
Escribir una regla en un switchNo, solo cuando cambia algoControl

Las celdas que rellenan los estudiantes quedan en blanco en esta vista previa.

Un controlador cambia toda la red

En una red clásica cada switch lleva su propio control. Para cambiar una política hay que entrar en cada aparato.

En una red definida por software el control sale de los switches y vive en un controlador. El controlador habla con cada switch en OpenFlow. Cada regla se escribe una vez y llega a todos.

Ejemplo: cambiar una política en 200 switches

Forma de hacerloCuentasResultado
A mano en cada switch200 switches x 3 minutos600 minutos, o 10 horas
Con un controlador1 regla escrita una vezEl controlador la envía a los 200
Un switch nuevo se añadeAntes: copiar su configuraciónAhora: conectarlo al controlador

Las celdas que rellenan los estudiantes quedan en blanco en esta vista previa.

Un switch sin reglas no reenvía nada

Vamos a mirar un switch de Open vSwitch, un switch de software real. Lo llamarás sw1 y es solo tuyo: no toca el switch br0 de la práctica.

Lo creamos en modo secure. Ese modo dice: haz solo lo que digan las reglas. Todavía no tiene ninguna.

Crea tu propio switch sw1

Comando
sudo ovs-vsctl --may-exist add-br sw1 -- set bridge sw1 datapath_type=system protocols=OpenFlow13 fail-mode=secure

Se muestra aquí y no se ejecuta. Crea una cuenta gratuita para pulsar Ejecutar y escribirlo en el terminal de tu propio laboratorio.

Mira su modo de fallo

Comando
sudo ovs-vsctl get-fail-mode sw1

Se muestra aquí y no se ejecuta. Crea una cuenta gratuita para pulsar Ejecutar y escribirlo en el terminal de tu propio laboratorio.

Pregunta si tiene controlador

Comando
sudo ovs-vsctl get-controller sw1

Se muestra aquí y no se ejecuta. Crea una cuenta gratuita para pulsar Ejecutar y escribirlo en el terminal de tu propio laboratorio.

Lee su tabla de flujos

Comando
sudo ovs-ofctl -O OpenFlow13 dump-flows sw1

Se muestra aquí y no se ejecuta. Crea una cuenta gratuita para pulsar Ejecutar y escribirlo en el terminal de tu propio laboratorio.

Qué enseñaron esas cuatro órdenes

El switch existe, está en modo secure, no tiene controlador y su tabla de flujos está vacía. Con ese estado descartaría cualquier paquete que le llegara.

Cuando le des un controlador o escribas flujos a mano, el plano de control tendrá algo que decir. El switch seguirá haciendo solo plano de datos.

Un error frecuente

Advertencia

Mucha gente cree que el controlador reenvía cada paquete de la red. No lo hace: escribe reglas, y el switch las aplica por su cuenta. Solo los paquetes sin regla suben al controlador. Si todos subieran, el controlador sería el cuello de botella.

Sobre este laboratorio y su código: Laboratorio de redes definidas por software: Open vSwitch, Mininet y un controlador OpenFlow en una VM

¿Enseñas a una clase? Asigna este módulo a tus alumnos con guía del profesor, tareas con corrección automática y un laboratorio para cada alumno.