• 产品与解决方案
  • 行业解决方案
  • 服务
  • 支持
  • 合作伙伴
  • 关于我们

13-OpenFlow命令参考

目录

01-OpenFlow命令

本章节下载 01-OpenFlow命令  (430.86 KB)

01-OpenFlow命令


1 OpenFlow

1.1  OpenFlow配置命令

1.1.1  active instance

active instance命令用来激活OpenFlow实例。

undo active instance命令用来取消激活OpenFlow实例。

【命令】

active instance

undo active instance

【缺省情况】

未激活OpenFlow实例。

【视图】

OpenFlow实例视图

【缺省用户角色】

network-admin

【使用指导】

新配置或修改OpenFlow实例后,需要激活实例使配置生效。重新激活实例时,交换机会断开与所有控制器的连接,清除已下发的流表,更新能力集,重新与控制器建立连接。

【举例】

# 激活OpenFlow实例1。

<Sysname> system-view

[Sysname] openflow instance 1

[Sysname-of-inst-1] active instance

1.1.2  classification

classification命令用来配置OpenFlow实例的类型。

undo classification命令用来恢复缺省情况。

【命令】

classification { global | vlan vlan-id [ mask vlan-mask ] [ loosen ] }

undo classification

【缺省情况】

未配置OpenFlow实例的类型。

【视图】

OpenFlow实例视图

【缺省用户角色】

network-admin

【参数】

global:全局类型OpenFlow实例。

vlan:VLAN类型OpenFlow实例,实例按VLAN划分。

vlan-id:VLAN ID,取值范围为1~4094。

vlan-mask:VLAN掩码,取值范围为0~4095,缺省值为4095。

loosen:loosen模式。配置loosen模式后,如果接口所在VLAN与实例配置VLAN存在交集,则接口就属于OpenFlow实例。未配置loosen模式时,只有当实例配置的VLAN是接口所在VLAN的子集,该接口才属于OpenFlow实例。

【使用指导】

多次执行本命令,最后一次执行的命令生效。

VLAN & mask为实际生效VLAN区间。mask比特位为1表示符合,可以不连续;比特位为0表示忽略。生效VLAN区间,可通过display openflow instance查看。

【举例】

# 配置OpenFlow VLAN实例1对应的VLAN为255,掩码为7。

<Sysname> system-view

[Sysname] openflow instance 1

[Sysname-of-inst-1] classification vlan 255 mask 7

【相关命令】

·     display openflow instance

1.1.3  controller address

controller address命令用来配置主连接。

undo controller address命令用来删除指定的主连接。

【命令】

controller controller-id address { ip ipv4-address | ipv6 ipv6-address } [ port port-number ] [ local address { ip local-ipv4-address | ipv6 local-ipv6-address } [ port local-port-number ] ] [ ssl ssl-policy-name [ access-control-policy acp-policy-name ] ] [ vrf vrf-name ]

undo controller controller-id address

【缺省情况】

不存在主连接。

【视图】

OpenFlow实例视图

【缺省用户角色】

network-admin

【参数】

controller-id:控制器的ID号,取值范围为0~63。

ip ipv4-address:控制器的IPv4地址。

ipv6 ipv6-address:控制器的IPv6地址。

port port-number:控制器建立连接使用的端口号,取值范围为1~65535,缺省值为6633。

local address:交换机与控制器连接的源IP地址。如果交换机与控制器之间存在多条路由可达,当交换机进行主备倒换时或者重启后,希望通过原来的路由重新建立连接,而不是新选择的路由,此时可以通过本参数进行配置。

ip local-ipv4-address:源IPv4地址。

ipv6 local-ipv6-address:源IPv6地址。

port local-port-number:源端口号,取值范围为1~65535,缺省值为随机分配的值。

ssl ssl-policy-name:安全连接的SSL客户端策略。需要通过ssl client-policy命令创建该策略并通过本参数引用。每个控制器连接可配置独立的安全策略。ssl-policy-name为1~31个字符的字符串,不区分大小写。如果未指定本参数,则交换机与控制器不建立SSL连接。

access-control-policy acp-policy-name:安全连接的证书访问控制策略,用于进一步检测控制器(SSL服务器)的证书。需要通过pki certificate access-control-policy命令创建该策略并通过本参数引用。acp-policy-name为1~31个字符的字符串,不区分大小写。关于证书访问控制策略的介绍,请参见“安全配置指导”中的“PKI”。

vrf vrf-name:指定控制器所在的VRF,vrf-name表示MPLS L3VPN的VPN实例名称,为1~31个字符的字符串,区分大小写。如果未指定本参数,则表示控制器位于公网中。

【使用指导】

多次执行该命令可以添加多个控制器,与每个控制器仅允许建立一个主连接。

主连接一般用于控制消息的处理(下发流表项、获取数据、信息上报等),使用TCP/SSL保持可靠的连接。

【举例】

# 配置实例1的控制器1的IP地址为1.1.1.1,端口号为6666。

<Sysname> system-view

[Sysname] openflow instance 1

[Sysname-of-inst-1] controller 1 address ip 1.1.1.1 port 6666

# 配置实例1的控制器1的IP地址为1.1.1.1,控制器对本实例使用名为p1的SSL策略以及名为myacp的证书访问控制策略进行认证。

<Sysname> system-view

[Sysname] pki certificate attribute-group mygroup

[Sysname-pki-cert-attribute-group-mygroup] attribute 1 subject-name dn ctn abc

[Sysname-pki-cert-attribute-group-mygroup] quit

[Sysname] pki certificate access-control-policy myacp

[Sysname-pki-cert-acp-myacp] rule 1 deny mygroup

[Sysname-pki-cert-acp-myacp] quit

[Sysname] openflow instance 1

[Sysname-of-inst-1] controller 1 address ip 1.1.1.1 ssl p1 access-control-policy myacp

以上配置中,PKI相关命令的含义为:

·     配置证书属性组mygroup,创建属性规则1:证书主题名的DN包含字符串abc。

·     创建访问控制策略myacp,定义访问控制规则1:当证书的属性与属性组mygroup1里定义的属性匹配时,认为该证书无效。

【相关命令】

·     pki certificate access-control-policy(安全命令参考/PKI)

·     ssl client-policy(安全命令参考/SSL)

1.1.4  controller auxiliary

controller auxiliary命令用来配置辅助连接。

undo controller auxiliary命令用来删除指定的辅助连接。

【命令】

controller controller-id auxiliary auxiliary-id transport { tcp | udp | ssl ssl-policy-name } [ address { ip ipv4-address | ipv6 ipv6-address } ] [ port port-number ]

undo controller id auxiliary auxiliary-id

【缺省情况】

不存在辅助连接。

【视图】

OpenFlow实例视图

【缺省用户角色】

network-admin

【参数】

controller-id:控制器的ID号,取值范围为0~63。

auxiliary auxiliary-id:辅助连接编号,取值范围为1~255。

transport:传输类型。

tcp:TCP连接。

udp:UDP连接。

ssl ssl-policy-name:SSL策略的名称,为1~31字符的字符串,不区分大小写。

ip ipv4-address:控制器的IPv4地址。

ipv6 ipv6-address:控制器的IPv6地址。

port port-number:控制器的端口号,取值范围为1~65535,缺省值为6633。

【使用指导】

辅助连接用于提高控制器和OpenFlow交换机的通信能力。

辅助连接配置和主连接配置不做配置冲突检查,如果辅助连接与主连接配置冲突,则无法建立辅助连接。

辅助连接的目的地址和端口号可以和主连接不一致。目的地址和端口号未配置时,和主连接一致。

【举例】

# 为实例1下编号为10控制器配置编号为1的辅助连接。

<Sysname> system-view

[Sysname] openflow instance 1

[Sysname-of-inst-1] controller 10 auxiliary 1 transport tcp

1.1.5  controller connect interval

controller connect interval命令用来配置重连定时器的值。

undo controller connect interval命令用来恢复缺省情况。

【命令】

controller connect interval interval

undo controller connect interval

【缺省情况】

重连定时器的值为60秒。

【视图】

OpenFlow实例视图

【缺省用户角色】

network-admin

【参数】

interval:重连定时器的值,取值范围为1~120,单位为秒。

【举例】

# 配置实例1重连定时器的值为10秒。

<Sysname> system-view

[Sysname] openflow instance 1

[Sysname-of-inst-1] controller connect interval 10

1.1.6  controller echo-request interval

controller echo-request interval命令用来配置连接检测定时器的值。

undo controller echo-request interval命令用来恢复缺省情况。

【命令】

controller echo-request interval interval

undo controller echo-request interval

【缺省情况】

连接检测定时器的值为5秒。

【视图】

OpenFlow实例视图

【缺省用户角色】

network-admin

【参数】

interval:连接检测定时器的值,取值范围为1~10,单位为秒。

【举例】

# 配置实例1连接检测定时器的值为10秒。

<Sysname> system-view

[Sysname] openflow instance 1

[Sysname-of-inst-1] controller echo-request interval 10

1.1.7  controller mode

controller mode命令用来配置控制器连接模式。

undo controller mode命令用来恢复缺省情况。

【命令】

controller mode { multiple | single }

undo controller mode

【缺省情况】

控制器连接模式为Multiple。

【视图】

OpenFlow实例视图

【缺省用户角色】

network-admin

【参数】

multiple:同一时刻可以与多个控制器建立连接。配置该模式后,交换机会同时连接实例内所有的控制器,在与某个控制器连接失败或者断开连接时,在重连定时器超时后重新进行连接,直到连接成功。

single:同一时刻仅与一个控制器建立连接,其他控制器作为备份。配置该模式后,当且仅当当前的连接断开后,交换机会连接下一个控制器,直到连接成功。

【举例】

# 配置实例1的控制器连接模式为Single。

<Sysname> system-view

[Sysname] openflow instance 1

[Sysname-of-inst-1] controller mode single

1.1.8  datapath-id

datapath-id命令用来配置OpenFlow实例的Datapath ID。

undo datapath-id命令用来恢复缺省情况。

【命令】

datapath-id id

undo datapath-id

【缺省情况】

OpenFlow实例的Datapath ID是由实例ID和设备桥MAC组成,前16个比特为实例ID,后48个比特为设备桥MAC。

【视图】

OpenFlow实例视图

【缺省用户角色】

network-admin

【参数】

id:OpenFlow实例的Datapath ID,取值范围为十六进制数1~ffffffffffffffff。

【使用指导】

Datapath ID用来在唯一标识OpenFlow实例,不同OpenFlow实例的Datapath ID不能相同。

【举例】

# 配置实例1的Datapath ID为123456。

<Sysname> system-view

[Sysname] openflow instance 1

[Sysname-of-inst-1] datapath-id 123456

1.1.9  default table-miss permit

default table-miss permit命令用来配置Table Miss流表项的缺省动作为正常转发。

undo default table-miss permit命令用来恢复缺省情况。

【命令】

default table-miss permit

undo default table-miss permit

【缺省情况】

Table Miss流表项的缺省动作为丢弃。

【视图】

OpenFlow实例视图

【缺省用户角色】

network-admin

【举例】

# 配置Table Miss流表项的缺省动作为正常转发。

<Sysname> system-view

[Sysname] openflow instance 1

[Sysname-of-inst-1] default table-miss permit

1.1.10  description

description命令用来配置OpenFlow实例的描述信息。

undo description命令用来恢复缺省情况。

【命令】

description text

undo description

【缺省情况】

未配置OpenFlow实例的描述信息。

【视图】

OpenFlow实例视图

【缺省用户角色】

network-admin

【参数】

text:OpenFlow实例的描述信息,为1~255个字符的字符串,区分大小写。

【举例】

# 配置实例1的描述信息为test-desc。

<Sysname> system-view

[Sysname] openflow instance 1

[Sysname-of-inst-1] description test-desc

1.1.11  display openflow

display openflow命令用来显示OpenFlow实例的控制器信息。

【命令】

display openflow instance instance-id { controller [ controller-id ] | listened }

【视图】

任意视图

【缺省用户角色】

network-admin

network-operator

【参数】

instance-id:OpenFlow实例号,取值范围为1~4094。

controller-id:控制器的ID号,取值范围为0~63。如果未指定本参数,将显示实例下所有控制器的信息。

listened:OpenFlow实例作为SSL服务器连接的控制器(SSL客户端)。

【举例】

# 显示OpenFlow实例100的控制器信息。

<Sysname> display openflow instance 100 controller

Instance 1 controller information:

 Reconnect interval : 60 (s)

 Echo interval      : 5  (s)

 

 Controller ID           : 1

 Controller IP address   : 192.168.49.49

 Controller port         : 6633

 Local IP address        : 192.0.0.1

 Local port              : 5566

 Controller role         : Equal

 Connect type            : TCP

 Connect state           : Established

 Packets sent            : 9

 Packets received        : 9

 SSL policy              : --

 VRF name                : --

表1-1 display openflow controller命令显示信息描述表

字段

描述

Instance x controller information

OpenFlow实例号

Reconnect interval

实例内所有控制器的断开重连时间间隔,单位为秒

Echo interval

实例内所有控制器发送保活报文的时间间隔,单位为秒

Controller ID

控制器的ID号

Controller IP address

OpenFlow实例对应的控制器的IP地址

Controller port

当前连接控制器的TCP端口号

Local IP address

OpenFlow实例对应的控制器的源IP地址

Local port

当前连接控制器的源TCP端口号

Controller role

控制器的角色:

·     --:未连接,未配置角色

·     Equal:控制器的角色是Equal

·     Master:控制器的角色是Master

·     Slave:控制器的角色是Slave

Connect type

连接类型,

·     TCP:使用TCP连接控制器

·     SSL:使用SSL连接控制器

Connect state

连接状态:

·     Idle:未建立连接

·     Established:成功建立连接

Packets sent

已经向控制器发送的报文的计数

Packets received

已经接收控制器的报文的计数

SSL policy

用于SSL连接的SSL策略的名称,--表示未配置

VRF name

控制器所在的VRF名称,--表示未配置

 

1.1.12  display openflow auxiliary

display openflow auxiliary命令用来显示OpenFlow实例的辅助连接信息。

【命令】

display openflow instance instance-id auxiliary [ controller-id [ auxiliary auxiliary-id ] ]

【视图】

任意视图

【缺省用户角色】

network-admin

network-operator

【参数】

instance instance-id:OpenFlow实例号,取值范围为1~4094。

controller-id:控制器编号,取值范围为0~63。

auxiliary auxiliary-id:辅助连接编号,取值范围为1~255。

【举例】

# 显示OpenFlow实例100的控制器辅助连接信息。

<Sysname> display openflow instance 100 auxiliary

Controller ID: 1    Auxiliary connection number: 2

 Auxiliary connection ID : 1

  Controller IP address  : 192.168.49.48

  Controller port        : 6633

  Connect type           : TCP

  Connect state          : Established

  Packets sent           : 9

  Packets received       : 9

  SSL policy             : --

 

 Auxiliary connection ID : 2

  Controller IP address  : 192.168.49.49

   Controller port       : 6633

   Connect type          : TCP

   Connect state         : Established

   Packets sent          : 9

   Packets received      : 9

   SSL policy            : --

表1-2 display openflow auxiliary命令显示信息描述表

字段

描述

Controller ID

控制器ID

Auxiliary connection number

辅助连接总数量

Auxiliary connection ID

辅助连接的ID

Controller IP address

已经配置在实例下的Controller的IP地址

Controller port

当前连接Controller的TCP端口号

Connect type

连接类型,

·     TCP:使用TCP连接Controller

·     SSL:使用SSL连接Controller

·     UDP:使用UDP连接Controller

Connect state

连接状态:

·     Idle:未建立连接

·     Established:成功建立连接

Packets sent

已经向控制器发送的报文的计数

Packets received

已经接收控制器的报文的计数

SSL policy

用于SSL连接的SSL客户端策略的名称,--表示未配置

 

1.1.13  display openflow flow-table

display openflow flow-table命令用来显示OpenFlow实例的流表信息。

【命令】

display openflow instance instance-id flow-table [ table-id ]

【视图】

任意视图

【缺省用户角色】

network-admin

network-operator

【参数】

instance-id:OpenFlow实例号,取值范围为1~4094。

table-id:流表ID,取值范围为0~254。如果未指定本参数,将显示所有流表的信息。

【举例】

# 显示OpenFlow实例100的所有流表信息。

<Sysname> display openflow instance 100 flow-table

Instance 100 flow table information:

 

Table 0 information:

 Table type: MAC-IP, flow entry count: 1, total flow entry count: 2

 

MissRule (default) flow entry information:

 cookie: 0x0, priority: 0, hard time: 0, idle time: 0, flags: reset_counts

 |no_pkt_counts|no_byte_counts, byte count: --, packet count: --

 Create time: 09:39:42 10/24/2017, Last modified time: 09:39:42 10/24/2017

 Flow-monitor:Disabled

Match information: any

Instruction information:

 Write actions:

  Drop

 

Flow entry 1 information:

 cookie: 0x0, priority: 1, hard time: 0, idle time: 0, flags: none,

 byte count: --, packet count: --

 Create time: 09:39:42 10/24/2017, Last modified time: 09:39:42 10/24/2017

 Flow-monitor:Disabled

Match information:

 Ethernet destination MAC address: 0000-0000-0001

 Ethernet destination MAC address mask: ffff-ffff-ffff

 VLAN ID: 100, mask: 0xfff

Instruction information:

 Write actions:

  Output interface: XGE1/0/4

 Write metadata/mask: 0x0000000000000001/0xffffffffffffffff

 Goto table: 1

...

表1-3 display openflow flow-table命令显示信息描述表

字段

描述

Table information

流表信息

Table type

流表类型

flow entry count

控制器下发的流表项个数

total flow entry count

流表中流表项总个数

Flow entry information

流表项信息,Not effective表示该流表项未生效

MissRule (default)指Table Miss流表项

cookie

流表项cookie

priority

流表项的优先级,数值越大,优先级越高

hard time

流表项的hard time超时时间,单位为秒,0代表永不超时。当定时器超时后就清除该流表项,无论该流表项是否匹配到数据流

idle time

流表项的idle time超时时间,单位为秒,0代表永不超时。如果idle time超时时间内没有数据流匹配到该流表项,该流表项被清除

flags

流表项的标志位:

·     flow_send_rem:发送流表项删除消息

·     check_overlap:检查流表项重复

·     reset_counts:重置流表项统计信息

·     no_pkt_counts:不统计报文计数

·     no_byte_counts:不统计字节计数

·     none:无标志位

byte count

匹配当前流表项的字节计数

packet count

匹配当前流表项的报文计数

Create time

流表项创建时间

Last modified time

流表项最后修改时间

Flow-monitor

匹配流表项的流量的监测功能:

·     Disabled:关闭

·     Enabled:开启

Match information

匹配规则信息(表1-4

Instruction information

动作指令集信息:

·     Set meter:应用指定的Meter表

·     Goto table:进入下一级流表

·     Clear actions:清除动作集中的所有动作

·     Apply actions:立即执行动作序列中的动作

·     Write actions:更改动作集中的所有动作

更多信息,请参见表1-5

 

表1-4 流表项匹配规则信息

匹配字段名称

匹配掩码字段名称

描述

Input interface

入端口(表1-6

Physical input interface

入物理端口

Ethernet destination MAC address

Ethernet destination MAC address mask

以太网目的MAC地址/掩码

Ethernet source MAC address

Ethernet source MAC address mask

以太网源MAC地址/掩码

Ethernet type

以太网类型

VLAN ID

mask

VLAN ID/掩码

VLAN PCP

VLAN优先级

IP DSCP

DSCP(Differentiated Services Code Point,区分服务编码点)值

IP ECN

IP头的ECN(Explicit Congestion Notification,显式拥塞通知)值

IP protocol

IPv4或IPv6协议号

IPv4 source address

mask

IPv4源地址/掩码

IPv4 destination address

mask

IPv4目的地址/掩码

TCP source port

mask

TCP源端口/掩码

TCP destination port

mask

TCP目的端口/掩码

UDP source port

mask

UDP源端口/掩码

UDP destination port

mask

UDP目的端口/掩码

ICMPv4 type

ICMPv4类型

ICMPv4 code

ICMPv4代号

ARP source IPv4 address

mask

ARP源IP地址/掩码

ARP source MAC address

ARP source MAC address mask

ARP源MAC地址/掩码

IPv6 source address

IPv6 source address mask

IPv6源地址/掩码

IPv6 destination address

IPv6 destination address mask

IPv6目的地址/掩码

IPv6 flow label

mask

IPv6流标签/掩码

ICMPv6 type

ICMPv6类型

ICMPv6 code

ICMPv6代号

 

表1-5 流表项动作类型

动作名称

描述

Drop

丢弃报文(非协议Action)

Output interface

从指定端口发送报文(表1-6

send length

当output类型为Controller时,指定上送报文的字节长度

Group

根据指定Group表处理报文

Set queue

将流表项映射到指定队列ID

Set field

修改报文指定的域

 

表1-6 流表项端口类型

端口名称

入端口

出端口

说明

Normal

不支持

支持

报文正常转发

Controller

支持

支持

报文上送控制器

Local

支持

支持

报文上送本地CPU

(端口名称)

支持

支持

实例有效端口,包含物理接口和逻辑接口

 

1.1.14  display openflow group

display openflow group命令用来显示OpenFlow实例的Group表信息。

【命令】

display openflow instance instance-id group [ group-id ]

【视图】

任意视图

【缺省用户角色】

network-admin

network-operator

【参数】

instance-id:OpenFlow实例号,取值范围为1~4094。

group-id:Group ID,取值范围为0~4294967040。如果未指定本参数,将显示实例所有Group表项的信息。

【举例】

# 显示OpenFlow实例100的Group表项信息。

<Sysname> display openflow instance 100 group

Instance 100 group table information:

 Group count: 2

 

Group entry 103:

 Type: All, byte count: 55116, packet count: 401

 Bucket 1 information:

  Action count 1, watch port: any, watch group: any

  Byte count 55116, packet count 401

  Output interface: BAGG100

 Bucket 2 information:

 Action count 1, watch port: any, watch group: any

  Byte count 0, packet count 0

  Output interface: Controller, send length: 128 bytes

 Referenced information:

  Count: 3

  Flow table 0

  Flow entry: 1, 2, 3

 

Group entry 104:

 Some buckets are invalid.

 Type: All, byte count: 0, packet count: 0

 Bucket 1 information:

  Action count 2, watch port: any, watch group: any

  Byte count 0, packet count 0

  Set field:

   Ethernet destination MAC address: 0000-0000-0013

   Ethernet source MAC address: 0000-0000-0012

   IPv4 destination address: 100.0.0.21

   UDP destination port: 1001

  Output interface: Controller, send length: 128 bytes

 Referenced information:

  Count: 0

表1-7 display openflow group命令显示信息描述表

字段

描述

Group count

当前实例包含的Group表项的总个数

Some buckets are invalid.

由于硬件资源不足或设备异常,Group表项中的某些bucket无效

Type

当前Group表项的类型:

·     All:执行所有动作桶,用于组播或者广播

·     Indirect:始终执行固定的动作桶

·     Fast failover:始终执行第一个活跃的动作桶

Bucket

Group表项包含的bucket

Action count

当前bucket包含的action的个数

Byte count

group/bucket的字节统计计数,如果显示为“--”则表示不支持该统计项

packet count

group/bucket的报文统计计数,如果显示为“--”则表示不支持该统计项

watch port

影响bucket的live状态的端口

watch group

影响bucket的live状态的group ID

Set field

修改报文的字段,例如目的/源MAC地址、IPv4目的地址、UDP目的端口

Output interface

转发报文到特定的OpenFlow接口

Referenced information

Group表项被流表项引用的信息

Count

引用Group表项的流表项的总个数

Flow table

引用Group表项的流表项所在的流表ID

Flow entry

引用Group表项的流表项ID列表

 

1.1.15  display openflow instance

display openflow instance命令用来显示OpenFlow实例的详细信息。

【命令】

display openflow instance [ instance-id ]

【视图】

任意视图

【缺省用户角色】

network-admin

network-operator

【参数】

instance-id:OpenFlow实例号,取值范围为1~4094。如果未指定本参数,将显示所有实例的详细信息。

【举例】

# 显示所有OpenFlow实例的详细信息。

<Sysname> display openflow instance

Instance 100 information:

 

Configuration information:

 Description   : test-desc

 Active status : Active

 Inactive configuration:

  None

 Active configuration:

  Classification: VLAN, loosen mode, total VLANs(1)

   2

  In-band management VLAN, total VLANs(0)

   Empty VLAN

  Connect mode: Multiple

  MAC address learning: Disabled

  TCP DSCP value: 10

  Flow table:

   Table ID(type): 0(MAC-IP), count: 0

  Flow-entry max-limit: 65535

  Datapath ID: 0x0000001234567891

  Default table-miss: Drop

  Forbidden port: None

  Qinq Network: Disabled

  TCP connection backup: Enabled

  Data-plane:Disabled

  Smart-group: Disabled

  TTP: Disabled

  Flow-monitor interval: --

  Flow-monitor threshold: 2

Port information:

 Ten-GigabitEthernet1/0/3

Active channel information:

 Controller 1 IP address: 192.168.49.49  port: 6633

 Controller 2 IP address: 192.168.43.49  port: 6633

...

表1-8 display openflow instance命令显示信息描述表

字段

描述

Configuration information

配置信息

Description

实例的描述信息

Active status

实例状态:

·     Active:激活

·     Inactive:未激活

Inactive configuration

未生效的实例配置

Active configuration

已生效的实例配置

Classification: VLAN, total VLANs

实例VLAN信息及VLAN总个数

loose mode

处于loosen模式

In-band management VLAN, total VLANs

带内管理VLAN列表及VLAN个数

Connect mode

控制器连接模式:

·     Single:串行

·     Multiple:并行

MAC address learning

MAC地址学习:

·     Enabled:允许

·     Disabled:禁止

TCP DSCP value

OpenFlow报文的DSCP值

Flow table

实例的流表信息

Table ID(type)

流表ID(流表类型)

count

对应流表的流表项总个数

Flow-entry max-limit

当前实例Extensibility表的流表项最大个数

Datapath ID

实例的Datapath ID

Default table-miss

缺省table miss动作:

·     Permit:允许

·     Drop:丢弃

Forbidden port

禁止上送Controller的端口类型:

·     L3 Physical Interface:三层以太网接口和三层聚合接口

·     VLAN interface:VLAN接口

·     Virtual Switch Interface:VXLAN中的VSI(Virtual Switch Instance,虚拟交换实例)虚接口

Qinq Network

是否配置QINQ模式:

·     Disabled:未配置

·     Enabled:配置

TCP connection backup

OpenFlow连接备份功能:

·     Disabled:关闭

·     Enabled:开启

Data-plane

‌OpenFlow数据转发平面功能:

·     Disabled:关闭

·     Enabled:开启

Smart-group

(暂不支持)OpenFlow Smart Group表项下发功能:

·     Disabled:关闭

·     Enabled:开启

TTP

OpenFlow实例的TTP模式:

·     Disabled:关闭

·     Enabled:开启

Flow-monitor interval

匹配流表项的流量监测间隔,单位为秒

--表示没有配置流量监测间隔

Flow-monitor threshold

流量中断的连续监测次数阈值

Port information

已加入实例的端口的名称列表

Active channel information

生效的控制通道信息

IP address

已经配置在实例下的控制器的IP地址

Port

当前连接Controller的TCP端口号

Failopen mode

连接中断时的运行模式:

·     Standalone:Standalone模式

·     Smart:Smart模式

·     Secure:Secure模式

 

1.1.16  display openflow meter

display openflow meter命令用来显示OpenFlow实例的Meter表信息。

【命令】

display openflow instance instance-id meter [ meter-id ]

【视图】

任意视图

【缺省用户角色】

network-admin

network-operator

【参数】

instance-id:OpenFlow实例号,取值范围为1~4094。

meter-id:Meter ID,取值范围为1~4294901760。如果未指定本参数,将显示实例所有Meter表项的信息。

【举例】

# 显示OpenFlow实例100的Meter表信息。

<Sysname> display openflow instance 100 meter

Meter flags: KBPS  -- Rate value in kb/s, PKTPS -- Rate value in packet/sec

             BURST -- Do burst size,      STATS -- Collect statistics

 

Instance 100 meter table information:

 meter entry count: 2

 

Meter entry 100 information:

 Meter flags: KBPS

 Band 1 information

 Type: drop, rate: 1024, burst size: 65536

 Byte count: 0, packet count: 0

 Referenced information:

  Count: 3

  Flow table: 0

  Flow entry: 1, 2, 3

 

Meter entry 200 information:

 Meter flags: KBPS

 Band 1 information

 Type: drop, rate: 10240, burst size: 655360

 Byte count: 0, packet count: 0

 Referenced information:

  Count: 0

表1-9 display openflow meter命令显示信息描述表

字段

描述

Meter entry count

当前实例包含的Meter表项的总个数

Meter flags

当前Meter表项的所携带的flags:

·     KBPS:速率值以kbps为单位

·     PKTPS:速率值以packet/sec(包/秒)为单位

·     BURST:帧大小

·     STATS:收集统计信息

Band

Meter表项包含的band

Type

band类型:

·     drop:丢弃数据包

·     dscp_remark:修改数据包IP头部的dscp

rate

速率

burst size

帧大小

Byte count

band的字节统计计数,如果显示为“--”则表示不支持该统计项

packet count

band的报文统计计数,如果显示为“--”则表示不支持该统计项

Reference information

Meter表项被流表项引用的信息

Count

引用Meter表项的流表项的总个数

Flow table

引用Meter表项的流表项所在的流表ID

Flow entry

引用Meter表项的流表项ID列表

 

1.1.17  display openflow summary

display openflow summary命令用来显示OpenFlow实例的概要信息。

【命令】

display openflow summary

【视图】

任意视图

【缺省用户角色】

network-admin

network-operator

【举例】

# 显示OpenFlow概要信息。

<Sysname> display openflow summary

Fail-open mode: Se - Secure mode, Sa - Standalone mode, Sm - Smart mode

 

ID    Status    Datapath-ID         Channel    Table-num  Port-num  Reactivate

1     Active    0x0000000100001221  Connected  2          8         N

10    Inactive  -                   -          -          -         -

4094  Active    0x00000ffe00001221  Failed(Sa) 2          0         N

表1-10 display openflow summary命令显示信息描述表

字段

描述

ID

实例ID

Status

实例的激活状态:

·     Active:实例已经激活

·     Inactive:实例尚未激活

Datapath-ID

实例的Datapath ID。未激活该OpenFlow实例时,显示为“-”

Channel

实例与控制器建立的安全通道的状态:

·     Connected:与控制器已经建立安全通道

·     Failed(Se):安全通道断开,连接中断模式为Secure模式

·     Failed(Sm):安全通道断开,连接中断模式为Smart模式

·     Failed(Sa):安全通道断开,连接中断模式为Standalone模式

·     未激活该OpenFlow实例时,显示为“-”

Table-num

实例中流表数目。未激活该OpenFlow实例时,显示为“-”

Port-num

属于该实例的接口数目。未激活该OpenFlow实例时,显示为“-”

Reactivate

是否需要重新激活该OpenFlow实例:

·     N:配置未改变,不需要重新激活

·     未激活该OpenFlow实例时,显示为“-”

 

1.1.18  fail-open mode

fail-open mode命令用来配置连接中断模式。

undo fail-open mode命令用来恢复缺省情况。

【命令】

fail-open mode { secure | smart | standalone }

undo fail-open mode

【缺省情况】

连接中断模式为Secure。

【视图】

OpenFlow实例视图

【缺省用户角色】

network-admin

【参数】

secure:Secure模式,连接断开后,交换机根据流表项转发。不主动删除控制器下发的表项,而是等待表项超时后进行删除,一旦连接建立成功,未超时的表项依然存在。

smart:Smart模式,连接断开后,交换机根据流表项转发。匹配的流表项中执行output controller动作转发的流量,会进行正常转发。

standalone:Standalone模式,连接断开后,交换机正常转发。

【举例】

# 配置连接中断模式为Standalone模式。

<Sysname> system-view

[Sysname] openflow instance 1

[Sysname-of-inst-1] fail-open mode standalone

1.1.19  flow-entry max-limit

flow-entry max-limit命令用来配置Extensibility的流表项的最大值。

undo flow-entry max-limit命令用来恢复缺省情况。

【命令】

flow-entry max-limit limit-value

undo flow-entry max-limit

【缺省情况】

Extensibility表的流表项的最大个数为65535。

【视图】

OpenFlow实例视图

【缺省用户角色】

network-admin

【参数】

limit-value:Extensibility的流表项的最大值。取值范围为1~65535。

【使用指导】

控制器下发的流表表项数量超过最大值时,向控制器返回失败。

【举例】

# 配置Extensibility的流表项的最大值为256。

<Sysname> system-view

[Sysname] openflow instance 1

[Sysname-of-inst-1] flow-entry max-limit 256

1.1.20  flow-log disable

flow-log disable命令用来关闭流表项变化成功后打印日志的开关。

undo flow-log disable命令用来恢复缺省情况。

【命令】

flow-log disable

undo flow-log disable

【缺省情况】

流表项变化成功后打印日志的开关处于开启状态。

【视图】

OpenFlow实例视图

【缺省用户角色】

network-admin

【举例】

# 关闭OpenFlow实例1流表项变化成功后打印日志的开关。

<Sysname> system-view

[Sysname] openflow instance 1

[Sysname-of-inst-1] flow-log disable

1.1.21  flow-monitor

flow-monitor命令用来配置OpenFlow流量监测功能的参数。

undo flow-monitor命令用来恢复缺省情况。

【命令】

flow-monitor { interval interval | threshold threshold }

undo flow-monitor { interval | threshold }

【缺省情况】

未配置流量监测间隔,流量中断的连续监测次数阈值为2。

【视图】

Openflow实例视图

【缺省用户角色】

network-admin

【参数】

interval interval:流量监测间隔,取值范围为1~120,单位为秒。

threshold threshold:流量中断的连续监测次数阈值,取值范围为1~5。

【使用指导】

应用场景

对于开启了OpenFlow流量监测功能的流表项,设备每隔interval秒监测匹配该流表项的字节和报文计数的变化。如果这些计数连续threshold次被监测到没有变化,则设备通过NETCONF将该流表项的流量无增长事件发送给控制器。之后,如果这些计数被监测到增长,则设备通过NETCONF将该流表项的流量增长事件发送给控制器。

说明

通过display openflow flow-table命令可以查看流表项信息。显示结果中,Flow entry字段下的byte count、packet count字段分别表示匹配该流表项的字节计数、报文计数。

 

注意事项

如果不配置流量监测间隔,OpenFlow流量监测功能不会生效。

大量流表项开启OpenFlow流量监测功能的情况下,如果配置的流量监测间隔较小,可能导致设备CPU负担过重。

OpenFlow流量监测功能仅监测由控制器下发给Openflow实例的流表项的相关流量,属性为default和local的流表项不参加监测。

流表项开启OpenFlow流量监测功能后,控制器下发给该流表项的idle time属性(数据流匹配流表项的超时时间)不生效。

【举例】

# 在OpenFlow实例1中,配置流量监测间隔为10秒。

<Sysname> system-view

[Sysname] openflow instance 1

[Sysname-of-inst-1] flow-monitor interval 10

【相关命令】

·     display openflow flow-table

1.1.22  flow-table

flow-table命令用来配置流表类型和流表ID。

undo flow-table命令用来恢复缺省情况。

【命令】

flow-table {  extensibility extensibility-table-id | mac-ip mac-ip-table-id }*

undo flow-table

【缺省情况】

流表类型为Extensibility,流表ID为0。

【视图】

OpenFlow实例视图

【缺省用户角色】

network-admin

【参数】

mac-ip mac-ip-table-id:MAC-IP流表ID,取值范围为0~254。

extensibility extensibility-table-id:Extensibility流表ID,取值范围为0~254。

【使用指导】

多次执行本命令,最后一次执行的命令生效。

Extensibility流表ID必须大于MAC-IP流表ID。

【举例】

# 配置实例1流表类型为MAC-IP表ID为0,Extensibility表ID为1。

<Sysname> system-view

[Sysname] openflow instance 1

[Sysname-of-inst-1] flow-table mac-ip 0 extensibility 1

1.1.23  forbidden packet-in arp controller

forbidden packet-in arp controller命令用来配置禁止ARP报文上送的控制器。

undo forbidden packet-in arp controller命令用来恢复缺省情况。

【命令】

forbidden packet-in arp controller controller-id-list

undo forbidden packet-in arp controller [ controller-id-list ]

【缺省情况】

未配置禁止ARP报文上送的控制器。

【视图】

OpenFlow实例视图

【缺省用户角色】

network-admin

【参数】

controller-id-list:控制器的ID号列表,表示方式为controller-id-list = { controller-id1 [ to controller-id2 ] }&<1-10>,其中controller-id1controller-id2为控制器的ID号,取值范围为0~63。controller-id2的值要大于或等于controller-id1的值,&<1-10>表示前面的参数最多可以输入10次。执行undo命令时,如果未指定该参数,则所有该功能配置都恢复为缺省情况。

【举例】

# 配置禁止ARP报文上送到控制器0。

<Sysname> system-view

[Sysname] openflow instance 1

[Sysname-of-inst-1] forbidden packet-in arp controller 0

1.1.24  forbidden port

forbidden port命令用来配置禁止上送控制器的端口类型。

undo forbidden port命令用来恢复缺省情况。

【命令】

forbidden port { l3-physical-interface | vlan-interface | vsi-interface } *

undo forbidden port

【缺省情况】

未配置禁止上送控制器的端口类型,即所有接口类型都上送控制器。

【视图】

OpenFlow实例视图

【缺省用户角色】

network-admin

【参数】

l3-physical-interface:三层以太网接口和三层聚合接口。

vlan-interface:VLAN接口。

vsi-interface:VXLAN中的VSI虚接口。

【举例】

# 配置OpenFlow实例1禁止上送VLAN接口。

<Sysname> system-view

[Sysname] openflow instance 1

[Sysname-of-inst-1] forbidden port vlan-interface

1.1.25  in-band management vlan

in-band management vlan命令用来配置带内管理VLAN。

undo in-band management vlan命令用来恢复缺省情况。

【命令】

in-band management vlan vlan-id-list

undo in-band management vlan

【缺省情况】

未配置带内管理VLAN。

【视图】

OpenFlow实例视图

【缺省用户角色】

network-admin

【参数】

vlan-id-list:VLAN列表,表示一个或多个VLAN的编号。表示方式为vlan-id-list = { vlan-id [ to vlan-id ] }&<1-10>。其中,vlan-id为指定VLAN的编号,取值范围为1~4094。&<1-10>表示前面的参数最多可以输入10次。

【使用指导】

带内管理VLAN内的流量进行正常转发,用于OpenFlow设备与控制器建立安全通道。

【举例】

# 在实例1中配置VLAN 10为带内管理VLAN。

<Sysname> system-view

[Sysname] openflow instance 1

[Sysname-of-inst-1] in-band management vlan 10

1.1.26  loop-protection enable

loop-protection enable命令用来使能环路保护功能。

undo loop-protection enable命令用来恢复缺省情况。

【命令】

loop-protection enable

undo loop-protection enable

【缺省情况】

环路保护功能处于关闭状态。

【视图】

OpenFlow实例视图

【缺省用户角色】

network-admin

【使用指导】

用户将OpenFlow实例去激活之后,OpenFlow下发一条流表项,用于丢弃实例所属VLAN范围内的所有流量,从而避免环路。

【举例】

# 配置实例1使能环路保护功能。

<Sysname> system-view

[Sysname] openflow instance 1

[Sysname-of-inst-1] loop-protection enable

1.1.27  mac-ip dynamic-mac aware

mac-ip dynamic-mac aware命令用来配置匹配控制器查询或删除流表项指令中的动态MAC地址。

undo mac-ip dynamic-mac aware命令用来恢复缺省情况。

【命令】

mac-ip dynamic-mac aware

undo mac-ip dynamic-mac aware

【缺省情况】

忽略控制器查询或删除流表项指令中的动态MAC地址。

【视图】

OpenFlow实例视图

【缺省用户角色】

network-admin

【使用指导】

仅MAC-IP流表支持该命令。

【举例】

# 配置实例1匹配控制器查询或删除流表项指令中的动态MAC地址。

<Sysname> system-view

[Sysname] openflow instance 1

[Sysname-of-inst-1] mac-ip dynamic-mac aware

1.1.28  mac-learning forbidden

mac-learning forbidden命令用来配置OpenFlow实例对应的VLAN禁止MAC地址学习。

undo mac-learning forbidden命令用来恢复缺省情况。

【命令】

mac-learning forbidden

undo mac-learning forbidden

【缺省情况】

OpenFlow实例对应的VLAN允许MAC地址学习。

【视图】

OpenFlow实例视图

【缺省用户角色】

network-admin

【举例】

# 配置实例1对应的VLAN禁止MAC地址学习。

<Sysname> system-view

[Sysname] openflow instance 1

[Sysname-of-inst-1] mac-learning forbidden

1.1.29  openflow instance

openflow instance命令用来创建OpenFlow实例,并进入OpenFlow实例视图。如果指定的OpenFlow实例已经存在,则直接进入OpenFlow实例视图。

undo openflow instance命令用来删除OpenFlow实例。

【命令】

openflow instance instance-id

undo openflow instance instance-id

【缺省情况】

不存在OpenFlow实例。

【视图】

系统视图

【缺省用户角色】

network-admin

【参数】

instance-id:OpenFlow实例号,取值范围为1~4094。

【举例】

# 创建OpenFlow实例1,并进入OpenFlow实例视图。

<Sysname> system-view

[Sysname] openflow instance 1

[Sysname-of-inst-1]

1.1.30  openflow shutdown

openflow shutdown命令用来关闭接口。

undo openflow shutdown命令用来恢复缺省情况。

【命令】

openflow shutdown

undo openflow shutdown

【缺省情况】

OpenFlow的关闭接口功能处于关闭状态。

【视图】

接口视图

【缺省用户角色】

network-admin

【使用指导】

开启本功能后,可以通过display interface命令查看到接口显示信息中Current state为OFP DOWN。

使用OpenFlow关闭接口后,可以通过如下方式打开接口:

·     undo openflow shutdown命令打开接口。

·     通过控制器下发PORT_MOD消息打开接口。

【举例】

# 在接口Ten-GigabitEthernet1/0/1下使用OpenFlow关闭接口。

<Sysname> system-view

[Sysname] interface ten-gigabitethernet 1/0/1

[Sysname-Ten-GigabitEthernet1/0/1] openflow shutdown

1.1.31  permit-port-type member-port

permit-port-type member-port命令用来允许控制器下发的流表中包含聚合接口的成员端口。

undo permit-port-type命令用来恢复缺省情况。

【命令】

permit-port-type member-port

undo permit-port-type

【缺省情况】

禁止控制器下发的流表中包含聚合接口的成员端口。

【视图】

OpenFlow实例视图

【缺省用户角色】

network-admin

【举例】

# 允许控制器下发的流表中包含聚合接口的成员端口。

<Sysname> system-view

[Sysname] openflow instance 1

[Sysname-of-inst-1] permit-port-type member-port

1.1.32  precedence dynamic arp

precedence dynamic arp命令用来配置允许动态ARP表项覆盖OpenFlow ARP表项。

undo precedence dynamic命令用来恢复缺省情况。

【命令】

precedence dynamic arp

undo precedence dynamic arp

【缺省情况】

禁止动态ARP表项覆盖OpenFlow ARP表项。

【视图】

OpenFlow实例视图

【缺省用户角色】

network-admin

【使用指导】

仅MAC-IP流表支持本功能。

【举例】

# 配置OpenFlow实例1允许动态ARP表项覆盖OpenFlow ARP表项。

<Sysname> system-view

[Sysname] openflow instance 1

[Sysname-of-inst-1] precedence dynamic arp

1.1.33  protocol-packet filter slow

protocol-packet filter slow命令用来配置丢弃慢速协议报文。

undo protocol-packet filter命令用来恢复缺省情况。

【命令】

protocol-packet filter slow

undo protocol-packet filter

【缺省情况】

未配置丢弃慢速协议报文。

【视图】

OpenFlow实例视图

【缺省用户角色】

network-admin

【使用指导】

慢速协议目前支持LACP和OAM协议。

【举例】

# 配置丢弃慢速协议报文。

<Sysname> system-view

[Sysname] openflow instance 1

[Sysname-of-inst-1] protocol-packet filter slow

1.1.34  refresh ip-flow

refresh ip-flow命令用来刷新MAC-IP流表的三层表项。

【命令】

refresh ip-flow

【视图】

OpenFlow实例视图

【缺省用户角色】

network-admin

【使用指导】

某些情况下,MAC-IP流表的三层表项会被覆盖,此时需要手工执行本命令刷新MAC-IP流表,重新从控制器获取新的三层表项。

【举例】

# 刷新OpenFlow实例1下MAC-IP流表的三层表项。

<Sysname> system-view

[Sysname] openflow instance 1

[Sysname-of-inst-1] refresh ip-flow

1.1.35  reset openflow instance statistics

reset openflow instance statistics命令用来清除控制器发送和接收报文的统计计数。

【命令】

reset openflow instance instance-id { controller [ controller-id ] | listened } statistics

【视图】

用户视图

【缺省用户角色】

network-admin

【参数】

instance-id:OpenFlow实例号,取值范围为1~4094。

controller-id:控制器的ID号,取值范围为0~63。如果未指定本参数,则清除实例下所有控制器发送和接收报文的统计计数。

listened:实例启动的服务端连接的客户端。

【举例】

# 清除OpenFlow实例1对应的所有控制器发送和接收报文的统计计数。

<Sysname> reset openflow instance 1 controller statistics

1.1.36  tcp dscp

tcp dscp命令用来配置OpenFlow报文的DSCP值。

undo tcp dscp命令用来恢复缺省情况。

【命令】

tcp dscp dscp-value

undo tcp dscp

【缺省情况】

未配置OpenFlow报文的DSCP值。

【视图】

OpenFlow实例视图

【缺省用户角色】

network-admin

【参数】

dscp-value:OpenFlow报文的DSCP值,取值范围为0~63。

【举例】

# 配置OpenFlow报文的DSCP值为63。

<Sysname> system-view

[Sysname] openflow instance 1

[Sysname-of-inst-1] tcp dscp 63

1.1.37  snmp-agent trap enable openflow

snmp-agent trap enable openflow命令用来开启OpenFlow的告警功能。

undo snmp-agent trap enable openflow命令用来关闭OpenFlow的告警功能。

【命令】

snmp-agent trap enable openflow [ connect-state ]

undo snmp-agent trap enable openflow [ connect-state ]

【缺省情况】

OpenFlow的告警功能处于开启状态。

【视图】

系统视图

【缺省用户角色】

network-admin

【参数】

connect-state:打开OpenFlow模块的OpenFlow交换机与控制器连接状态的告警功能。如果未指定该参数,则表示打开OpenFlow模块所有的告警功能。

【使用指导】

开启OpenFlow模块的告警功能后,该模块会生成告警信息,用于报告该模块的重要事件。生成的告警信息将发送到设备的SNMP模块,通过设置SNMP中告警信息的发送参数,来决定告警信息输出的相关属性。有关告警信息的详细介绍,请参见“网络管理和监控配置指导”中的“SNMP”。

【举例】

# 开启OpenFlow模块的告警功能。

<Sysname> system-view

[Sysname] snmp-agent trap enable openflow

1.1.38  tcp-connection backup

tcp-connection backup命令用来开启OpenFlow连接备份功能。

undo tcp-connection backup命令用来关闭OpenFlow连接备份功能。

【命令】

tcp-connection backup

undo tcp-connection backup

【缺省情况】

OpenFlow连接备份功能处于开启状态。

【视图】

OpenFlow实例视图

【缺省用户角色】

network-admin

【使用指导】

配置本功能后,设备在发生主备倒换时,OpenFlow实例仍然保持与控制器的连接。

本功能仅支持IRF只有两台成员设备进行主备倒换的场景。

仅基于TCP的OpenFlow连接支持本功能。

【举例】

# 关闭OpenFlow实例1的OpenFlow连接备份功能。

<Sysname> system-view

[Sysname] openflow instance 1

[Sysname-of-inst-1] undo tcp-connection backup

 

不同款型规格的资料略有差异, 详细信息请向具体销售和400咨询。H3C保留在没有任何通知或提示的情况下对资料内容进行修改的权利!

新华三官网
联系我们