第212期 / June 5, 2015

研發新視界

分享到臉書!分享到維特!分享到噗浪!分享到Google+!分享到微博!轉寄友人友善列印

軟體定義網路分析與應用

作者/王 翔

[發表日期:2015/6/6]

前言

軟體定義網路 (SDN, Software-defined networking) 是一種網路虛擬化技術,能讓網路管理員在不更動硬體裝置的前提下,以直接對中央進行控制的方式,用程式重新規劃網路,為控制網路流量提供了新的方法,也成為了網路架構及應用的良好平台。

以SDN為基礎,為使用者構築簡單易操作的服務拓撲,以服務鏈的概念去因應不同狀況進行網路流量傳遞的路線的修正,並透過自動偵測功能,在連線異常或流量爆增時動態調整封包傳遞路線,方便使用者管理。

軟體定義網路

現今的網路架構是建立於擴展樹協定 (STP, Spanning Tree Protocol) 上的三層式架構,透過各種傳輸協定來傳送封包,然而,隨著雲端應用服務及巨量資料需求日益增加,網際網路的路由表越來越複雜,網路管理人員需要客製調整各種網路設定時,必須針對每臺交換器或路由器,逐一登入CLI (command-line interface) 設定,相當麻煩,也不易快速的變動網路架構來因應企業對於新系統、新服務的需求。透過人工維護不但因為設定上過於複雜、分散造成無論是辨識或供裝上的重大麻煩,也容易因錯誤操作造成網路癱瘓的危機。

除此之外,各家網路通訊設備雖然能通過共通的協定進行傳輸,但是各有各的網路管理技術或是網路管理系統軟體,彼此之間難以相容,一旦企業購買某一廠牌的設備,未來更新設備時為了維運上的一致性,通常就只能選擇同家廠商的設備,以減少溝通和管理上的複雜處理,無法選用其他廠牌的設備,造成類似被特定廠商挾持的情形。

SDN網路架構的誕生就是為了要解決傳統網路的這些問題,SDN的特色是修改了傳統網路架構的控制模式,將網路分為控制層 (Control Plane) 與資料層 (Data Plane) ,將網路的管理權限交由控制層的控制器 (Controller) 軟體負責,採用集中控管的方式。




控制器軟體就像是人類的大腦,收集所有指令與資訊並統一下達給各個網路設備,網路設備則只負責根據控制器提出的要求去完成封包的傳遞,就像是人類的四肢只負責完成各項動作的執行。這樣的概念讓網管人員能更靈活也更彈性地配置網路資源,日後網管人員只需在控制器上下達指令就可以進行自動化的設定,不須逐一登入網路設備進行各別的設定,降低了人為部署發生疏失的可能性。

而OpenFlow技術則是一項網路通訊協定,用於控制層和資料層間建立傳輸通道,就像是人體中的神經專門負責大腦與四肢之間的溝通,讓控制器從遠端控制網路交換器的封包轉送表,透過新增、修改與移除封包控制規則與行動,來改變封包轉送的路徑 (Flow)。OpenFlow協定目前也是實現SDN架構最主流的技術。




未來在網路設備的採購中,只要支援OpenFlow技術網路設備,就可以透過支援OpenFlow技術的控制器軟體來統一管理,而不用因應各廠牌的網管系統的不同去分別進行設置,可以減少企業對特定廠牌設備的依賴程度。
透過控制器,我們提供可以對整個網路環境進行監控和修改的系統。當有需要提供新的服務組合時,可以透過簡單的拓撲界面重新產生對應新需求的Flow來串接所需要的服務與網路設備。並且可以持續監控整個網路環境,並設定預定的問題處理方式,在設備或線路發生異常時,能在短時間內繞過異常部份以維持大部份服務依然不受影響。

結論

軟體定義網路解決了不少在網路設備發展過程中產生的,如過於分散複雜難以維護與不同廠牌之間難以並行運用等問題,並提供一個較易輕易且直觀的的網路管理手段,在未來,中小企業運用軟體定義網路可將網路管理行為簡化、穩定,而大型企業或服務提供企業則是能增加網路環境的彈性與應變能力。對於OpenFlow的應用與支援可能為接下來發展的基礎,而透過軟體定義網路的互動行為是未來發展的重點部份。

參考資料

1. OpenFlow協定介紹網站
2. SDN協定介紹網站