Help us improve your experience.

Let us know what you think.

Do you have time for a two-minute survey?

 
 

Descripción de las acciones de reenvío y operación de OpenFlow en dispositivos que ejecutan Junos OS

En este tema se explica cómo los dispositivos de Juniper Networks aíslan y controlan el tráfico de OpenFlow. También resume las características de OpenFlow y las acciones de reenvío admitidas, que son acciones que OpenFlow puede realizar cuando un paquete coincide con los términos de una entrada de flujo. Para obtener información detallada sobre la compatibilidad con mensajes y campos específicos de OpenFlow v1.0, condiciones de coincidencia, comodines, acciones de flujo, estadísticas y características, consulte Matriz de cumplimiento de OpenFlow v1.0 para dispositivos que ejecutan Junos OS.  Para obtener una lista detallada de los mensajes y campos de OpenFlow v1.3.1 compatibles, los indicadores y la numeración de la estructura de puertos, las condiciones de coincidencia, las acciones de flujo, los mensajes multiparte, las instrucciones de flujo y los tipos de grupo, consulte Matriz de cumplimiento de OpenFlow v1.3.1 para dispositivos que ejecutan Junos OS.

Operación y soporte de OpenFlow

Para aislar y controlar el tráfico de OpenFlow en dispositivos que ejecutan Junos OS, configure conmutadores virtuales. Puede configurar un conmutador virtual OpenFlow y un controlador OpenFlow activo en cada dispositivo que ejecute Junos OS compatible con OpenFlow. Puede configurar el protocolo OpenFlow, el conmutador virtual y la información de conexión del controlador en el nivel jerárquico [edit protocols openflow] .

El tráfico de OpenFlow solo puede entrar o salir de puertos habilitados para OpenFlow. Si se envía un mensaje de modificación de flujo a un puerto de entrada que no está habilitado para OpenFlow, el dispositivo envía un ofp_error_msg con un tipo de error de OFPET_FLOW_MOD_FAILED y un código de OFPFMFC_UNKNOWN al controlador. Si se solicita una acción de modificación de flujo para un puerto que no está habilitado para OpenFlow, el dispositivo envía un ofp_error_msg con un tipo de error de OFPET_BAD_ACTION y un código de OFPBAC_BAD_OUT_PORT al controlador.

En la tabla 1 se resume la compatibilidad con las funciones generales en dispositivos que ejecutan Junos OS y admiten OpenFlow v1.0. Para obtener información sobre la compatibilidad en plataformas específicas, consulte Compatibilidad de OpenFlow en dispositivos de Juniper Networks.

Tabla 1: Compatibilidad con OpenFlow v1.0 en dispositivos que ejecutan Junos OS

Característica

Apoyo

OpenFlow v1.0

Apoyado.

Conmutador virtual OpenFlow

Un conmutador virtual OpenFlow.

Controlador

Un controlador OpenFlow activo por conmutador virtual. Los controladores probados incluyen Floodlight y OESS.

Conexión del controlador

Conexión TCP/IP. Solo se aceptan conexiones pasivas. El controlador no puede conectarse activamente al conmutador OpenFlow.

No se admiten conexiones SSL.

Modo de emergencia

No se admite como se define en OpenFlow Switch Specification v1.0. Si la conexión del controlador se pierde y no se puede restablecer, el conmutador mantiene todos los estados de flujo en los planos de control y datos.

Clasificación y mapeo de flujo como una ruta de capa 2 o capa 3

No es compatible.

Prioridad de flujo

Compatible según la especificación del conmutador OpenFlow v1.3, en la que no hay priorización de entradas de coincidencia exacta sobre entradas comodín.

Tabla de flujo

Tabla de flujo única.

Acciones de reenvío

  • Reenviar a un puerto físico habilitado para OpenFlow

  • ALL, CONTROLLER, NORMAL e FLOOD para acciones de flujo normal

  • ALL e FLOOD para las acciones de flujo de envío de paquetes

Nota:

Los conmutadores QFX5100 y EX4600 no admiten NORMAL para acciones de flujo normal.

Interfaces híbridas

Compatible con algunos dispositivos. Los dispositivos habilitados para OpenFlow que admiten interfaces híbridas permiten que una interfaz física admita simultáneamente interfaces lógicas para el tráfico normal e interfaces lógicas para el tráfico de OpenFlow.

Interfaces

Puede configurar interfaces Ethernet solo como interfaces OpenFlow.

Acciones de varias VLAN

Compatible con algunos dispositivos. Los dispositivos habilitados para OpenFlow que admiten acciones de varias VLAN tienen la capacidad de asociar una VLAN diferente y una acción VLAN diferente con cada puerto de salida.

Modificación del puerto

No es compatible. Los dispositivos habilitados para OpenFlow ignoran todas las solicitudes de OFPT_PORT_MOD del controlador OpenFlow.

Colas, mensajes de cola o acciones en cola

No es compatible.

En la tabla 2 se resume la compatibilidad con funciones generales en dispositivos que ejecutan Junos OS y admiten OpenFlow v1.3.1. Para obtener información sobre la compatibilidad en plataformas específicas, consulte Compatibilidad de OpenFlow en dispositivos de Juniper Networks.

Tabla 2: Compatibilidad con OpenFlow v1.3.1 en dispositivos que ejecutan Junos OS

Característica

Apoyo

OpenFlow v1.3.1

Apoyado.

Conmutador virtual OpenFlow

Un conmutador virtual OpenFlow.

Controlador

Un controlador OpenFlow activo por conmutador virtual. Los controladores probados incluyen NEC e Ixia.

Conexión del controlador

Conexión TCP/IP. Solo se aceptan conexiones pasivas. El controlador no puede conectarse activamente al conmutador OpenFlow.

No se admiten conexiones SSL.

Clasificación y mapeo de flujo como una ruta de capa 2 o capa 3

No es compatible.

Prioridad de flujo

Compatible según la especificación del conmutador OpenFlow v1.3, en la que no hay priorización de entradas de coincidencia exacta sobre entradas comodín.

Instrucciones de flujo

Para cada entrada de flujo, se admite una instrucción de flujo. Una instrucción de flujo puede ser una de las siguientes:

  • OFPIT_APPLY_ACTIONS

  • OFPIT_WRITE_ACTIONS

Tabla de flujo

Tabla de flujo única.

Acciones de reenvío

  • Reenvíe a un puerto físico habilitado para OpenFlow.

  • ALL, CONTROLLER, NORMAL e FLOOD para acciones de flujo normal

  • ALL e FLOOD para las acciones de flujo de envío de paquetes

Nota:

Los conmutadores QFX5100 y EX4600 no admiten NORMAL para acciones de flujo normal.

Acción de grupo

Apoyado. Un grupo puede incluir de 1 a 32 buckets, y un bucket puede tener un conjunto de acciones (set, pop o output).

Se admiten los tipos de grupo OFPGT_ALL y OFPGT_INDIRECT.

Interfaces

Puede configurar interfaces Ethernet solo como interfaces OpenFlow.

Condiciones de coincidencia relacionadas con IPv6

Compatible con algunos dispositivos. A partir de Junos OS versión 14.2R3, las direcciones de origen y destino IPv6 y las máscaras de subred se pueden utilizar como condiciones de coincidencia.

Nota:

La implementación de OpenFlow v1.3.1 en Junos OS no admite máscaras de bits arbitrarias para direcciones IPv6. La implementación de Junos OS solo admite máscaras continuas para direcciones de origen y destino IPv6.

Acciones de varias VLAN

Compatible con algunos dispositivos. Los dispositivos habilitados para OpenFlow que admiten acciones de varias VLAN tienen la capacidad de asociar una VLAN diferente y una acción VLAN diferente con cada puerto de salida.

Mensajes de varias partes

Apoyado para solicitar y devolver la siguiente información:

  • Descripciones de conmutadores, grupos o puertos

  • Estadísticas de flujo único, flujo agregado, tabla de flujo, puerto o grupo

  • Características de grupo o mesa

Negociación de versiones de OpenFlow

Se admite para la negociación de versiones de OpenFlow entre un controlador de OpenFlow y un dispositivo que ejecuta Junos OS.

Modificación del puerto

No es compatible. Los dispositivos habilitados para OpenFlow ignoran todas las solicitudes de OFPT_PORT_MOD del controlador OpenFlow.

Colas, mensajes de cola o acciones en cola

No es compatible.

Acciones de reenvío de OpenFlow

Nota:

La información de esta sección se aplica tanto a OpenFlow v1.0 como a OpenFlow v1.3.1, excepto donde se indique lo contrario.

Los dispositivos habilitados para OpenFlow que ejecutan Junos OS admiten varias acciones de flujo para reenviar paquetes de OpenFlow. Para las acciones de flujo normal, se admiten las siguientes acciones de reenvío:

  • puerto físico: reenvíe paquetes de unidifusión o multidifusión por las interfaces habilitadas para OpenFlow especificadas.

  • ALL: inunde el paquete de todas las interfaces de OpenFlow configuradas para esa instancia de conmutador virtual, excepto la interfaz de entrada.

  • CONTROLLER: envía el paquete al controlador OpenFlow para su procesamiento.

  • FLOOD: inunde el paquete a lo largo del árbol de expansión mínimo, que incluye todas las interfaces de OpenFlow configuradas para esa instancia de conmutador virtual, excepto la interfaz de entrada y cualquier interfaz deshabilitada por el protocolo de árbol de expansión (STP). Dado que los dispositivos que ejecutan Junos OS no admiten las capacidades de STP 802.1D para OpenFlow, la acción de reenvío FLOOD se comporta como la acción de reenvío ALL.

  • NORMAL: procese el paquete utilizando el procesamiento tradicional de capa 2 o capa 3.

Nota:

Los conmutadores QFX5100 y EX4600 no admiten NORMAL para acciones de flujo normal.

El controlador OpenFlow también puede utilizar un mensaje de envío de paquete (OFPT_PACKET_OUT) para indicar al conmutador virtual de OpenFlow que envíe un paquete desde un puerto especificado. El mensaje Enviar paquete incluye el paquete que se va a reenviar y la acción de reenvío que indica la interfaz desde la cual se debe reenviar el paquete. Las acciones de reenvío admitidas para el mensaje Enviar paquete incluyen ALL e FLOOD.

Cada conmutador virtual OpenFlow es un dominio de inundación lógicamente separado. Por lo tanto, las acciones OpenFlow ALL y FLOOD inundan paquetes solo las interfaces OpenFlow configuradas en ese conmutador virtual específico, excluyendo la interfaz OpenFlow de entrada.

Tabla de historial de versiones
Lanzamiento
Descripción
14.2R3
A partir de Junos OS versión 14.2R3, las direcciones de origen y destino IPv6 y las máscaras de subred se pueden utilizar como condiciones de coincidencia.