目錄

簡介

OpenFlow SDN目標

功能摘要

Cisco實施（Cat9k上的OpenFlow模式）

故障排除/調試

Show命令 — IOS®

簡介

本檔案將介紹軟體定義網路(SDN)，作為補充傳統網路架構的新網路方法。SDN的原始定義與OpenFlow關聯。

OpenFlow SDN目標

以下是OpenFlow SDN的主要目標。

- 提高網路可擴充性。

- 降低網路複雜性。

- 允許更好的應用控制。

- 啟用功能獨立性。

- 通過將控制平面和資料平面分離以及資料平面標準化來實現。該控制平面被實現為運行在高效能多核伺服器上的全知、完善和分散式軟體。

- OpenFlow是來自開放式網路基礎(ONF)的一項規範，它定義了一個基於流量的轉送基礎架構（交換機型號）和一個標準化的應用程式程式設計介面(協定定義)。

- OpenFlow允許控制器通過安全通道來指揮交換器的轉送功能。本地裝置配置不在OpenFlow協定的範圍內。

功能摘要

這是水龍頭OpenFlow控制器：

- OpenFlow 1.3交換機（包括TFM表功能消息）

- 第2層交換、VLAN、ACL、第3層IPv4和IPv6路由（靜態和通過BGP）

- 作為網路中第2/第3層交換機的外掛替代進行部署，以啟用額外的基於SDN的功能。

- OpenFlow是一種完全不同的轉發模式，它使用相同的Catalyst 9000硬體和軟體。

- 模式可在OPENFLOW和NORMAL之間切換，需要重新引導。

OpenFlow是控制器（控制平面）和乙太網路交換器（資料平面）之間的通訊協定。交換機具有排列成管道的流表，流是檢查資料包的規則。

流指定：

- 匹配條件

- 優先順序機制

- 要對資料包執行的操作

- 逾時

示例管道：

註：雖然沒有功能依賴性，但需要在OpenFlow模式下啟動交換機。OpenFlow模式下的可用平台，Catalyst 9000系列交換機 — 9300/9400/9500/9500-H

Cisco實施（Cat9k上的OpenFlow模式）

正常操作和OpenFlow操作使用相同的影象。

交換機應處於OpenFlow模式。

ott-of-c9k-210#show boot mode

System initialized in openflow forwarding mode

System configured to boot in openflow forwarding mode

All the front panel ports are openflow ports (no hybrid mode)

Changing the boot mode (reload mandatory)

ott-of-c9k-210(config)#boot mode openflow

重新載入交換器。

檢驗交換機是否處於Openflow模式。

of-switch# show boot mode

System initialized in openflow forwarding mode

System configured to boot in openflow forwarding mode

“no boot mode openflow” followed by reboot reverts to normal mode.

CAT9300#show run openflow

feature openflow

openflow

switch 1 pipeline 1

controller ipv4 10.104.99.42 port 6653 vrf Mgmt-vrf security none

controller ipv4 10.104.99.42 port 6633 vrf Mgmt-vrf security tls

controller ipv4 10.104.99.42 port 6637 vrf Mgmt-vrf security tls local-trustpoint tp-blue

目前共支援8個控制器！

還支援IPV6控制器配置和操作。

OpenFlow下的命令選項

目的

交換機1管道1

交換機1和管道1是C9ks的唯一選擇

控制器ipv4 10.104.99.42端口6653 vrf Mgmt-vrf安全無

沒有安全性的控制器

控制器ipv4 10.104.99.42端口6633 vrf管理 — vrf安全tls

使用tls的控制器，使用全域性tls信任點配置

控制器ipv4 10.104.99.42端口6637 vrf Mgmt-vrf安全tls local-trustpoint tp-blue

採用tls的控制器，使用本地tlstrustpoint配置，但可從全域性tlstrustpoint進行遠端

最大回退10

控制器連線關閉時重試OpenFlow連線的最長時間，預設值為8秒

probe-interval 10

使用連線探測OpenFlow連線的時間間隔變為空閒，預設值為5秒。

速率限制封包_in 2000 burst 3000

封包速率限製為控制器，預設值為0

statistics collection-interval 6

收集流量統計資訊的頻率，預設值為5秒

datapath-id 0x1

switch datapath unique-id(如果未配置的預設值為(1<<48)) | system-mac-addr)

default-miss controller

不匹配任何流的資料包可被傳送到控制器。預設值為drop

logging flow — 修改

將流模式資訊轉儲為日誌show logging，預設情況下未啟用

tls trustpoint local tp-local remote tp-remote

安全控制器連線的全域性tls信任點#

故障排除/調試

控制器端偵錯不在本文檔的討論範圍之內。

Openflow交換機並非支援所有常規平台CLI。為您的調試方案選擇並僅使用允許的CLI。

有關任何其他命令和參考資訊，請參閱此配置指南：https://www.cisco.com/c/en/us/td/docs/ios-xml/ios/prog/configuration/174/b_174_programmability_cg/openflow.html#id_76495

Show命令 — IOS®

指令

目的

show running-設定  openflow

顯示OpenFlow運行配置資訊。

show openflow switch number controllers

顯示有關OpenFlow代理與控制器的連線的資訊。

顯示 openflow 交換器 編號 流清單

顯示有關安裝的OpenFlow流的資訊。

顯示 openflow 交換器 編號 連接埠

顯示有關OpenFlow代理埠狀態的資訊。

顯示 openflow 硬體 功能

顯示硬體功能，如表數、表大小、支援的匹配/操作/未命中。

顯示 openflow 交換器 編號 組

顯示有關Openflow組的資訊。

顯示 openflow 交換器 編號 統計資訊

顯示OpenFlow介面(rx/tx)統計資訊、OpenFlow表統計資訊（每個表的最大流數、每個表的活動流數、查詢和匹配數）。

顯示 openflow 交換器 編號 控制器統計資訊

顯示openflow控制器狀態資訊。

Show commands - hardware:

指令

目的

show platform software fed switch active openflow 狀態

顯示有關安裝/成功/刪除的消息數量的統計資訊。

show platform software fed switch active openflow 流動 id

顯示特定流中的資訊。

show platform software fed switch active openflow 群組

顯示有關流組的硬體資訊。

show platform hardware fed switch active fwd-asic 資源 tcam 利用率

顯示有關TCAM用法的硬體資訊。

show platform software fed <switch> active openflow error [brief |事件 |詳細資訊]

列出所有OpenFlow錯誤（如果有）。

show platform software fed <switch> active openflow table [<table-id> |對映]

此命令可以提供表ID來顯示功能/匹配功能以及表的大小。

show platform software fed switch active openflow event

顯示每個表上的事件清單以及執行任何與流相關的操作（新增、刪除、更新）所用的時間。