Flujo abierto

La versión actual de la página aún no ha sido revisada por colaboradores experimentados y puede diferir significativamente de la versión revisada el 5 de enero de 2019; las comprobaciones requieren 5 ediciones .

OpenFlow  es un protocolo para administrar el proceso de procesamiento de datos transmitidos a través de una red de transmisión de datos por enrutadores y conmutadores que implementa tecnología de red definida por software .

El protocolo se utiliza para administrar conmutadores y enrutadores de red desde un dispositivo central: un controlador de red (por ejemplo, desde un servidor o incluso una computadora personal ). Este control reemplaza o complementa el programa incorporado que se ejecuta en el conmutador (enrutador) que crea una ruta, crea un mapa de conmutación, etc. El controlador se utiliza para administrar las tablas de flujo del conmutador, según las cuales se toma la decisión de transferir el paquete recibido a un puerto específico del conmutador. Por lo tanto, se forman conexiones de red directas en la red con retrasos mínimos en la transferencia de datos y los parámetros necesarios.

Se han desarrollado versiones de firmware compatibles con Openflow para dispositivos de muchos fabricantes, incluidos Extreme Networks , Juniper , Cisco , HP , IBM , NEC , MikroTik . [una]

Arquitectura

La ruta de datos ( ruta de datos ) consiste en una tabla de flujo y acciones asignadas a cada entrada en la tabla. Las propias tablas pueden relacionarse tanto con Ethernet (u otros protocolos de capa de enlace) como con protocolos de capa superior (IP, TCP). La lista exacta de acciones puede variar, pero las principales son: reenvío (reenvío de un fragmento de datos, un paquete, una trama, a un puerto determinado), envío de un fragmento de datos al controlador a través de un canal seguro para una mayor investigación, descartar un fragmento de datos (gota). Para los dispositivos que combinan el procesamiento de paquetes normal y de flujo abierto mediante el firmware del dispositivo, se agrega un cuarto tipo de acción: procesar un fragmento de datos por medios convencionales. El hardware que soporta estas cuatro acciones son los dispositivos Type0 .

Un dispositivo OpenFlow consta de al menos tres componentes:

Cada entrada en la tabla de flujo tiene tres campos: un encabezado de PDU (fragmento de datos), que le permite determinar la correspondencia de la PDU con el flujo, la acción y el campo con estadísticas (el número de bytes y PDU correspondientes al flujo). , el tiempo de tránsito de la última PDU correspondiente al flujo).

El encabezado puede constar de muchos campos de diferentes niveles (por ejemplo, direcciones MAC de origen y destino, campos del encabezado del paquete IP, campos del encabezado del segmento TCP). Cabe señalar que la versión actual del protocolo [2] no admite la verificación, por ejemplo, del indicador SYN en el encabezado del segmento TCP. Cada campo puede tener un valor especial ( asterisco ) que coincida con cualquier valor del campo correspondiente en la PDU. [3]

Los dispositivos Type1 , que proporcionarán traducción de direcciones de red , soporte para clases y prioridades, están planificados, pero aún no se ha determinado su especificación.

Los controladores se encargan de llenar la tabla de flujo, recibiendo paquetes a través de un canal seguro desde el dispositivo. Pueden implementarse como un algoritmo simple que se asemeja al comportamiento de un conmutador que separa paquetes en redes lógicas ( VLAN ), o pueden implementar una lógica dinámica compleja que afecta el flujo de paquetes en función de razones externas (derechos de acceso, carga del servidor, prioridades del servicio). , etc.). ).

Notas

  1. Investigadores muestran tecnología de control de red avanzada. Archivado el 10 de octubre de 2009.
  2. Especificación del interruptor de flujo abierto. Versión 1.3.2 (enlace no disponible) . Consultado el 18 de septiembre de 2013. Archivado desde el original el 19 de septiembre de 2013. 
  3. La especificación del conmutador OpenFlow. 1.1.0 (enlace no disponible) . Fecha de acceso: 13 de enero de 2013. Archivado desde el original el 17 de julio de 2013. 

Enlaces