0%

對於 SDN Controller 來說,最基本的功能就是要可以傳輸封包,然而在這種集中式管理的情況下,傳統的 Spanning Tree Protocol 不會運行。因此 Controller 本身要有辦法判斷當前的網路拓墣中是否有迴圈以避免產生廣播風暴。本文會透過觀察原始碼的方式來研究在 NOX Conroller 是如何實現的。

Read more »

記錄一下執行floodlight時,有ㄧ些參數可以使用,都是用來指定設定檔的位置。

Floodlight configuraion:

–configFile ${configuration path}

Log configuraion:

-Dlogback.configurationFile=${FL_LOGBACK}

範例

java -Dlogback.configurationFile=logback.xml floodlight.jar --configFile floodlightdefault.properties

這篇文章主要分享如何於 Wireshark 中安裝額外的模組使得其有能力去解析 OpenFlow 的封包結構,對於研究 Openflow 的人來說這是一個很好使用的工具,能夠觀察 Switch to Controller, Controller to Switch 等各種封包.

Read more »

本文基於 SDN Controller Floodlight 的原始碼進行了一次簡單的分析,藉由分析這些原始碼更可以學習到其內部關於網路拓樸的處理,這些拓樸除了影響 Controller 怎麼看待整個網路之外,也會間接的影響該 Controoler 要如何去正確的轉送封包。相對於文件的更新,程式碼本身的迭代速度更為敏捷,因此常常會發生文件跟不上實際運行功能的案例。藉由學習閱讀原始碼,我們可以更快也更清楚的掌握當前這些開源軟體的發展狀態,甚至也能夠貢獻社群幫忙補齊文件。

Read more »

本文基於 SDN Controller Floodlight 的原始碼進行了一次簡單的分析,藉由分析這些原始碼更可以學習到其內部是如何轉送封包的,藉由 Topology 模組提供的 Global Topology 資訊, Floodlight 可以從該資訊中對於任何一個點到點的之間的連線找到一條傳送路徑。接者針對這傳送路徑上所有的交換機輸入對應的 Openflow 規則來幫忙轉送封包。相對於文件的更新,程式碼本身的迭代速度更為敏捷,因此常常會發生文件跟不上實際運行功能的案例。藉由學習閱讀原始碼,我們可以更快也更清楚的掌握當前這些開源軟體的發展狀態,甚至也能夠貢獻社群幫忙補齊文件。

Read more »

在floodlight這個openflow controller中,對於module之間的執行順序是如何決定的,這部分很重要

如圖為例,假設有四個component,分別是 LLDP、DEVICE、Forwarding、VirtualNetwork這四個module
如果今天switch送了一個封包到controller來,那這四個module誰要先處理這個封包? 順序交換是否會有影響?

Read more »

這次想要研究一下C++中new這個關鍵字,在c++中new總共扮演了三種角色

  • new operator
  • operator new
  • placement new
Read more »