EN ESTA PÁGINA
Ejemplo: habilitación de OpenFlow en enrutadores de la serie MX
OpenFlow es un estándar abierto que le permite controlar las rutas de tráfico en una red mediante la creación, eliminación y modificación de flujos en cada dispositivo a lo largo de una ruta. En este ejemplo, se muestra cómo configurar la compatibilidad con OpenFlow en un enrutador MX240 que ejecuta Junos OS.
Requisitos
En este ejemplo se utilizan los siguientes componentes de hardware y software:
Enrutador MX240 con Junos OS versión 13.3 o una versión posterior
Paquete de software OpenFlow con una versión de paquete de software que coincida con la versión de Junos OS del dispositivo en el que está instalado
Conexión TCP entre el enrutador y un controlador OpenFlow
Conexión entre la interfaz de administración del enrutador y la red de administración, a la que se puede acceder desde la dirección IP del controlador OpenFlow
Visión general
En este ejemplo, configura la compatibilidad con OpenFlow en un enrutador MX240. El enrutador tiene tres interfaces que participan únicamente en OpenFlow: ge-1/0/0.0, ge-1/1/0.0 y xe-0/0/0.0. En primer lugar, configure las interfaces como interfaces de capa 2 utilizando el tipo ethernet-bridge
de encapsulación de capa de vínculo físico y la familia bridge
de protocolos.
Los enrutadores de la serie MX requieren una instancia de enrutamiento de conmutador virtual independiente para aislar el tráfico de OpenFlow del tráfico de red normal. En este ejemplo se configura una instancia de enrutamiento del conmutador virtual, rt-bd-1, utilizando el tipo virtual-switch
de instancia en el nivel de [edit routing-instances]
jerarquía. Dentro de la instancia de enrutamiento, el dominio of-bridge
de puente incluye todas las interfaces lógicas que participan en OpenFlow.
El conmutador virtual OpenFlow y las instrucciones de protocolo OpenFlow se configuran en el nivel de [edit protocols openflow]
jerarquía. En este ejemplo, el conmutador virtual, OFswitch1, se conecta al controlador a través de una conexión TCP en la dirección IP 172.16.1.1. La configuración del conmutador virtual debe incluir todas las interfaces lógicas que participan en OpenFlow, y el tráfico de OpenFlow solo entrará o saldrá de estas interfaces.
Dentro de la configuración de OpenFlow, la instrucción indica la default-action
acción que el conmutador debe realizar para los paquetes que no tienen una entrada de flujo coincidente. Si omite la instrucción, la default-action
acción predeterminada es packet-in
, que indica que los paquetes sin una entrada de flujo coincidente deben enviarse al controlador para su procesamiento. En este ejemplo se configura explícitamente la acción predeterminada para los paquetes que no tienen una entrada de flujo coincidente como packet-in
.
En este ejemplo también se configuran las traceoptions de OpenFlow. En este caso, la flag all
instrucción indica que todos los eventos de seguimiento de OpenFlow deben capturarse y registrarse. Dado que el ejemplo no configura un nombre de archivo específico para el archivo de registro, los mensajes de seguimiento de OpenFlow se registran en el archivo de registro predeterminado de OpenFlow / var/log/ofd.
Configuración
Configuración rápida de CLI
Para configurar rápidamente este ejemplo, copie los siguientes comandos, péguelos en un archivo de texto, elimine los saltos de línea, cambie los detalles necesarios para que coincidan con su configuración de red, copie y pegue los comandos en la CLI en el nivel de jerarquía y, a continuación, ingrese commit
desde el [edit]
modo de configuración.
set interfaces ge-1/0/0 encapsulation ethernet-bridge unit 0 family bridge set interfaces ge-1/1/0 encapsulation ethernet-bridge unit 0 family bridge set interfaces xe-0/0/0 encapsulation ethernet-bridge unit 0 family bridge set routing-instances rt-bd-1 instance-type virtual-switch set routing-instances rt-bd-1 bridge-domains of-bridge vlan-id none set routing-instances rt-bd-1 bridge-domains of-bridge interface ge-1/0/0.0 set routing-instances rt-bd-1 bridge-domains of-bridge interface ge-1/1/0.0 set routing-instances rt-bd-1 bridge-domains of-bridge interface xe-0/0/0.0 set protocols openflow switch OFswitch1 controller address 172.16.1.1 set protocols openflow switch OFswitch1 controller protocol tcp set protocols openflow switch OFswitch1 interfaces ge-1/0/0.0 set protocols openflow switch OFswitch1 interfaces ge-1/1/0.0 set protocols openflow switch OFswitch1 interfaces xe-0/0/0.0 set protocols openflow switch OFswitch1 default-action packet-in set protocols openflow traceoptions flag all
Procedimiento
Procedimiento paso a paso
Para configurar la compatibilidad con OpenFlow:
Configure las interfaces de OpenFlow como interfaces de capa 2.
[edit interfaces] user@host# set ge-1/0/0 encapsulation ethernet-bridge unit 0 family bridge user@host# set ge-1/1/0 encapsulation ethernet-bridge unit 0 family bridge user@host# set xe-0/0/0 encapsulation ethernet-bridge unit 0 family bridge
Configure la instancia de enrutamiento del conmutador virtual.
[edit routing-instances] user@host# set rt-bd-1 instance-type virtual-switch user@host# set rt-bd-1 bridge-domains of-bridge vlan-id none user@host# set rt-bd-1 bridge-domains of-bridge interface ge-1/0/0.0 user@host# set rt-bd-1 bridge-domains of-bridge interface ge-1/1/0.0 user@host# set rt-bd-1 bridge-domains of-bridge interface xe-0/0/0.0
Configure la dirección IP del controlador OpenFlow y el protocolo de conexión.
[edit protocols openflow switch OFswitch1] user@host# set controller address 172.16.1.1 user@host# set controller protocol tcp
Configure las interfaces lógicas que participan en OpenFlow en esta instancia de conmutador virtual.
[edit protocols openflow switch OFswitch1] user@host# set interfaces ge-1/0/0.0 user@host# set interfaces ge-1/1/0.0 user@host# set interfaces xe-0/0/0.0
Configure la acción predeterminada para los paquetes que no tienen una entrada de flujo coincidente.
[edit protocols openflow switch OFswitch1] user@host# set default-action packet-in
Configure las traceoptions de OpenFlow.
[edit protocols openflow] user@host# set traceoptions flag all
Confirme la configuración.
[edit] user@host# commit
Resultados
Desde el modo de configuración, escriba los comandos , y show routing-instances
para confirmar la show interfaces
configuración. show protocols openflow
Si el resultado no muestra la configuración deseada, repita las instrucciones de este ejemplo para corregir la configuración.
user@host# show interfaces ge-1/0/0 { encapsulation ethernet-bridge; unit 0 { family bridge; } } ge-1/1/0 { encapsulation ethernet-bridge; unit 0 { family bridge; } } xe-0/0/0 { encapsulation ethernet-bridge; unit 0 { family bridge; } }
user@host# show protocols openflow switch OFswitch1 { default-action packet-in; interfaces { ge-1/0/0.0; ge-1/1/0.0; xe-0/0/0.0; } controller { address 172.16.1.1; protocol tcp; } } traceoptions { flag all; }
user@host# show routing-instances rt-bd-1 { instance-type virtual-switch; bridge-domains { of-bridge { vlan-id none; interface ge-1/0/0.0; interface ge-1/1/0.0; interface xe-0/0/0.0; } } }
Verificación
Confirme que la configuración funciona correctamente.
- Comprobación de que la conexión del controlador OpenFlow está activa
- Comprobación de que las interfaces de OpenFlow estén activas
Comprobación de que la conexión del controlador OpenFlow está activa
Propósito
Compruebe que la conexión del controlador OpenFlow esté activa.
Acción
Emita el comando de modo operativo y compruebe que el estado de show openflow controller
conexión del controlador es up
. Dado que la configuración del conmutador virtual tiene un solo controlador, el conmutador virtual debe iniciar automáticamente una conexión con el controlador después de confirmar la configuración.
user@host> show openflow controller Openflowd controller information: Controller socket: 11 Controller IP address: 172.16.1.1 Controller protocol: tcp Controller port: 6633 Controller connection state: up Number of connection attempt: 1 Controller role: equal
Significado
El resultado muestra que el estado de conexión del controlador OpenFlow es up
, además de otra información sobre el controlador.
Comprobación de que las interfaces de OpenFlow estén activas
Propósito
Compruebe que las interfaces de OpenFlow estén activas.
Acción
Emita el comando de modo operativo y compruebe que el show openflow interfaces
estado de cada interfaz de OpenFlow es Up
.
user@host> show openflow interfaces Switch name: OFswitch1 Interface Name: ge-1/0/0.0 Interface port number: 41507 Interface Hardware Address: 00:00:5e:00:53:b1 Interface speed: 1Gb Full-duplex Interface Auto-Negotiation: Disabled Interface media type: Fiber Interface state: Up Switch name: OFswitch1 Interface Name: ge-1/1/0.0 Interface port number: 44538 Interface Hardware Address: 00:00:5e:00:53:b2 Interface speed: 1Gb Full-duplex Interface Auto-Negotiation: Disabled Interface media type: Fiber Interface state: Up Switch name: OFswitch1 Interface Name: xe-0/0/0.0 Interface port number: 45549 Interface Hardware Address: 00:00:5e:00:53:b3 Interface speed: 10Gb Full-duplex Interface Auto-Negotiation: Disabled Interface media type: Fiber Interface state: Up
Significado
El resultado muestra que el estado de cada interfaz de OpenFlow es Up
, además de otra información sobre las interfaces.