近年有很多企業開始關注新型 SDN (Software Defined Network) 網路架構,SDN 與現時傳統網路的分別在於擁有一個中央管理器 (SDN Controller),將流動 (Flow) 分配到支援 OpenFlow 標準協定的交換器之中,因此 SDN Controller 又稱之為 SDN 大腦,負責整個 SDN 網路封包傳送流程。

SDN 總共有三層架構,分別為 Application Tier、Control Tier 和 Data Plan Tier,以下講解每一層是負責什麼功能︰

Application Tier – 主要將應用經由 Northbound API 連接 Control Layer 之中的 SDN Controller,而 Northbound API 分別有 REST API 及 JAVA API 兩種。Flow 分配時會先經由 REST API 再轉發到 SDN Controller,最後才分配到 OpenFlow 交換器。如果企業想開發一套基於 SDN Controller 的網路工具,那就需要於此層開始。

Control Tier – SDN Controller經由 Southbound API 分配 Flow 規則到底層 Data Plan Tier 之中的 OpenFlow 交換器,換言之 Southbound API 其實是 OpenFlow 標準協定。Flow能夠以網絡位置或 MAC 位置控制封包是否能通過,更進階的則可部署負載平衡等等,因此又稱為 Control Plan。

Data Plan Tier – 只要各品牌的交換器支援 OpenFlow 標準協定,上層的SDN Controller 便能夠控制,因此不需要顧及不同品牌相容性問題。因為是以SDN Controller 控制封包傳送,英文稱為 Forwarding Plan,所以OpenFlow 交換器不需要負責 Control Plan 動作,從而可讓 Control Plan 和 Forwarding Plan 分離。

SDN 另一最佳拍檔莫過於是NFV (Network Function Virtualization),拜虛擬化的興起,網路裝置也能夠部署於 x86 伺服器的 Hypervisor 之中,將虛擬機器化為網路裝置,包括有 Firewall、Router、Wireless Controller、Switch 等等。NFV 大家可以想像成一朵雲裝著網路裝置和系統,伺服器只要有足夠網路埠口支持,便可打造出心目中的 NFV 網路裝置。NVF 能夠降低硬體成本之餘,也可減少機房空間。

NFV 搭配 SDN 可創造出新一代網路領域,當網路裝置虛擬化之後,SDN 可跨地域中央控制不同地區的 NFV網路裝置,例如可將 SDN Controller 放置於數據中心,而 NFV 網路裝置則分別在分公司之中,這樣便能夠令整個企業網路更具彈性。

現時網絡上有很多SDN Controller,例如有 RYU、OpenDaylight、Floodlight、ONOS 等等,這次本文章會以 Floodlight SDN Controller 作為 SDN 大腦為例,而OpenFlow 交換器將會使用 Open vSwitch,然而兩者也是開源軟體亦能安裝在 Linux 系統之中,所以可以部署在Hypervisor 之中;其實大家也可將之想像成 NFV 成員之一。

待續……

 

相關文章:

初探 Open vSwitch!按部就班:搭配 Floodlight 打造 SDN 開源方案


 初探 Open vSwitch!按部就班:搭配 Floodlight 打造 SDN 開源方案

 https://www.facebook.com/hkitblog