因為還需要透過 Ryu SDN Controller 分配 Flow 才能令兩邊溝通,首先如圖 48 所示下達【ovs-vsctl set-controller br0 tcp:192.168.1.226:6633】指令將 Edge-Core AS4610-30T 交換器連接到 Ryu SDN Controller,然後下達【ovs-vsctl show】指令檢查是否已經成功連接,大家看見 Controller “tcp:192.168.1.226:6633” is_connected: ture,這表示成功連接。
圖 48_ 連接 Ryu SDN Controller
如圖 49 所示返回 Ryu SDN Controller 可看到 Edge-Core AS4610-30T 交換器的 192.168.1.24 網路位置已經取得一組 datapath id=2038103370857131393,而這組 datapath id 是用來分配 Flow 規則的。
圖 49_ 檢查 datapath id
現在筆者在 Ryu SDN Controller 分配一條雙向 Flow 規則,如圖 50、51 所示下達以下 Flow 規則。簡單來說利用 HTTP POST 傳遞 Flow 規則,然後配對 dpid 之中的 datapath id 是那台交換器才分配 Flow 規則,而這條 Flow 規則是以 Port1 與 Port2 決定雙方溝通。
curl -X POST -d ‘{“dpid": 2038103370857131393, “name":"laptop01-laptop02″, “cookie": 0, “priority": 32764, “match":{“in_port":1}, “actions":[{“type":"OUTPUT", “port": 2}]}’ http://192.168.1.226:8080/stats/flowentry/add
curl -X POST -d ‘{“dpid": 2038103370857131393, “name":"laptop02-laptop01″, “cookie": 0, “priority": 32765, “match":{“in_port":2}, “actions":[{“type":"OUTPUT", “port": 1}]}’ http://192.168.1.226:8080/stats/flowentry/add
圖 50_ Port1 傳遞 Port2 Flow 規則
圖 51_ Port2 傳遞 Port3 Flow 規則
我們怎樣才能夠知道 Flow 規則是否下達成功?其實可以於 Edge-Core AS4610-30T 交換器如圖 52 所示下達【ovs-ofctl dump-flows br0】指令便可顯示剛才從 Ryu SDN Controller 新增的兩條 Flow 規則。
圖 52_ 顯示兩條 Flow 規則
最後筆者測試 Laptop01 與 Laptop02 是否真的能互相溝通,如圖 53、54 所示兩台電腦互相利用 ping 指令成功測試互相溝通,如此便能知道剛才所新增的雙向 Flow 規則是十分重要。
圖 53_ Laptop01 ping Laptop02
圖 54_ Laptop02 ping Laptop01
如果大家想刪除這兩條 Flow 規則的話,如圖 55 所示下達【ovs-ofctl del-flows br0 in_port=1】及【ovs-ofctl del-flows br0 in_port=2】指令,然後下達【ovs-ofctl dump-flows br0】指令便可看到兩條 Flow 規則已經被刪除。
圖 55_ 刪除 Flow 規則
總結
大家看了這次的 SDN 教學之後,其實您已經學懂了三種方案,分別是 Pica8 的 PicOS 軟體、Edge-Core AS4610-30T 交換器和 Ryu SDN Controller。雖然現在 SDN 方案大多只有網路供應商部署,其他的大型企業還是沒有考慮部署,筆者覺得 SDN 方案會在這幾年爆發,各大型企業會陸續部署 SDN 方案,SDN 相關方案亦會愈來愈多企業使用。
PicOS 授權加 Edge-Core AS4610-30T 交換器與一台 Cisco Layer 2 交換器的售價差不多,但多了 Layer2/Layer3 和 OpenFlow 模式選擇,如果是更高階的交換器作售價比較,大約可便宜 20-30%,因此您學會了 Whitebox 方案也可為公司節省購買成本。
如果大家有興趣測試 Edge-Core AS4610-30T 交換器的話,不妨與我們聯絡,看看能否與 Pica8 或 Edge-Core 廠商借來測試。
更多相關內容:
Whitebox 方案軟硬體任我主宰!不受品牌限制、節省高昂部署成本
輕易部署 Whitebox 方案!SDN 網絡架構詳解
SDN 設定都要使用 Console Port?開始教你 SDN 方案部署
真正走進 SDN!如何下達 git 指令安裝 Ryu SDN Controller?
真正走進 SDN!Ryu SDN Controller 安裝實戰
真正走進 SDN!Ryu SDN Controller 安裝實戰(1)
真正走進 SDN:交換器內安裝 PicOS 映像檔實戰
真正走進 SDN:交換器內安裝 PicOS 映像檔實戰(1)
真正走進 SDN:交換器內安裝 PicOS 映像檔實戰(2)
實體交換器如何與 SDN 控制器進行聯繫?
SDN 實戰最終回:SDN Controller 分配 Flow 話咁易
SDN 實戰最終回:SDN Controller 分配 Flow 話咁易
https://www.facebook.com/hkitblog