引言
積跬步以至千里,積怠情以至深淵。
在POX SDN控制器包括將網絡拓撲的數據發送到數據Gephi可視化平臺,可顯示節點和表示網絡拓撲結構鏈接的曲線圖。
具體操作步驟
啓動POX
關於POX的安裝可以參考作者的前一篇博客。
首先打開第一個Terminal,開始運行POX SDN控制器。終端切換到pox目錄下,執行如下命令啓動POX:
sudo ./pox.py forwarding.l2_learning openflow.discovery misc.gephi_topo openflow.spanning_tree --no-flood --hold-down host_tracker info.packet_dump samples.pretty_log log.level --DEBUG
其中每個組件的功能如下:
1.forwarding.l2_learning
在l2_learning組件使OpenFlow交換機的作用類似於以太網學習交換機。它學習以太網MAC地址,並匹配包頭中的所有字段,因此可以爲每對MAC地址在網絡中安裝多個流。例如,不同的TCP連接將導致安裝不同的流。
2.openflow.discovery
該組件使用發送到OpenFlow交換機和從OpenFlow交換機接收到的LLDP消息來發現網絡拓撲。它還可以檢測網絡鏈接何時上升或下降。
3.misc.gephi_topo
當POX檢測到網絡拓撲結構的變化時,Gephi_Topo組件將從POX流更新到Gephi圖形可視化平臺。該組件有效地創建了一個到Gephi圖形可視化平臺的北向接口。它將實時數據流到Gephi將偵聽的IP地址和端口,格式是Gephi可以解釋的。
4.openflow.spanning_tree ‐‐no-flood ‐‐hold-down
在網絡拓撲包含循環的情況下,需要生成樹組件。它與OpenFlow Discovery組件一起構建網絡拓撲視圖,並通過禁用不在樹中的交換機端口上的泛洪來構建一個生成樹。選項no-flood和hold-down用於確保在組件創建生成樹之前網絡中沒有數據包被淹沒。生成樹組件將響應網絡拓撲結構中的更改。如果一個鏈接斷開,並且存在一個備用鏈接,那麼它可以通過創建一個新樹來維護網絡中的連接性,該樹支持對連接到備用鏈接的端口進行洪泛。
5.host_tracker
主機跟蹤器組件試圖跟蹤網絡中的主機。主機跟蹤器檢查POX接收到的消息,並學習網絡中主機的MAC和IP。主機跟蹤器將在我們的例子中工作,但它依賴於數據包到達控制器。網絡中的包轉發必須是反應性的,因此我們需要使用forward .l2_learning這樣的轉發組件。
6.info.packet_dump
包轉儲組件將在日誌控制檯顯示POX從交換機接收到的數據包的信息。這將幫助我們瞭解交換機如何在不運行tcpdump的情況下與POX控制器交互。
7.log.level ‐‐DEBUG
該組件允許POX用戶指定他們將在POX生成的日誌信息中看到的詳細信息的數量,最詳細的級別是DEGUG。
8.samples.pretty_log
Pretty Log組件將日誌消息格式化爲自定義日誌格式,以便在POX控制檯上提供有吸引力且可讀的日誌輸出。
Gephi的啓動
打開一個新的Terminal,啓動Gephi:
cd ~/gephi/bin
sudo ./gephi
在Gephi中安裝好Graph Streaming插件,安裝好後,配置流媒體服務器設置。該Gephi.Topo組件使用TCP端口8282。點擊設置按鈕,並設置端口爲8282和清除SSL複選框。
啓動Mininet-WiFi網絡拓撲
啓動腳本 即可。。。詳情可參考作者即將發佈的博客。