• 產品與解決方案
  • 行業解決方案
  • 服務
  • 支持
  • 合作夥伴
  • 關於我們

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保留在沒有任何通知或提示的情況下對資料內容進行修改的權利!

BOB登陆
官網
聯係我們