OpenFlow只是一個協定,就像USB Disk所使用的USB協定一樣,真正有價值的是USB Disk裡的資料,而非這個協定。同樣的,在「以服務驅動的架構」之下,有價值的不是OpenFlow這個協定,而是透過它所建構的服務。
Hop by Hop模式
這是OpenFlow最早期的發展模式,Edge Device(OpenFlow交換器)將未知數據流的第一個數據封包發送給OpenFlow Controller作為路徑演算的條件,如果一條路徑需要經過5個Hop Count,這樣的行為至少重複5次才能畫出一條 Slice Topology,而OpenFlow Controller也就是坐落在Data Panel之上。
在公開網路中,如果透過這種模式進行Topology的學習,OpenFlow Controller將承受極大的流量壓力,成為最主要的瓶頸點。如果要預先載入Flow Table以解決學習的問題,先需要知道完整網路訊息以建立Slice Topology Flow,操作比傳統網路更為複雜。
Overlay模式
這是OpenFlow逐漸發展之後所開發出來的新型運作模式,透過API直接對OpenFlow Controller定義需求網路Topology的型態,並且發送Flow更新至Edge(OpenFlow交換器),Edge便可以根據Flow定義結果,在本地建立IP Tunnel作為數據轉發的橋樑。
|
▲Overlay模式透過API直接對OpenFlow Controller定義需求網路拓撲型態,並發送Flow更新至Edge (OpenFlow交換器),在本地建立IP Tunnel作為數據轉發的橋樑。 |
這個模式,因為OpenFlow Controller不坐落在Data Panel上,所以不會成為瓶頸點,並且透過IP Tunnel的模式,同時間也抽象化了物理網路,讓由Overlay模式所建立的邏輯網路,不受限於傳統L2網路邊界或設備可達範圍,只要是IP連線能到的地方,SDN Overlay Network就能存在。
目前在市場上,硬體架構的OpenFlow交換器的廠商還是以Hop by Hop模式為主。如果是以Overlay的模式運作,Open vSwitch是廣泛被應用的開放式交換器軟體,多半是安裝在服務虛擬化平台(Hypervisor)。
此運作模式是直接在內部連接虛擬伺服器及網路,無須基於OpenFlow的硬體交換器就可達成SDN的需求,尤其對於多租戶的雲端環境來說,節省了特殊硬體成本的開銷,也達成了服務驅動網路架構的目的。
為何使用Tunnel協定
近來市場上也有許多關於Tunnel協定的討論,如VxLAN、NVGRE、GRE或是STT,主要的課題鎖定在如何跨三層網路延伸二層網路,且應用場景幾乎都在高度虛擬化的資訊中心服務內,鎖定的痛點也都說明現今網路的規模不足及簡化網路的架構。這其實呼應了前文所提及規模化服務網路的需求,及根據服務驅動網路的概念。
Tunnel技術解決了L2網路規模化的問題,但並沒有完全命中簡化複雜網路的需求。因為這個概念只涉及L2網路連線的建立,而沒有滿足更細節的網路服務需求,如QoS、MAC Spoofing、ACL或是Layer 3及更高層服務網路的建立。
至於如何利用Tunnel傳遞更多的網路應用需求,便是OpenFlow Overlay架構的目標,而非建立規模很大但功能單純的網路來面對用戶複雜的需求。
往往有人質疑Tunnel的封裝會大量消耗操作系統CPU資源,但很幸運的是,今日許多晶片廠商已開發出x86系統上的卸載(Offload)機制,Tunnel協定本身更可以直接結合於核心(Kernel)之中,事實上在x86系統上,網路傳輸及同時降低CPU耗損的目標已經實現。
SDN方案誰提供
硬體網路技術已經非常成熟,產品差異變得越來越小,但服務需求的差異卻越來越大。如前面所說,網路必須有能力去面對各種不同的動態需求的挑戰,目前大致有幾種類型的廠商能夠提供相關服務:
1.成熟的網路設備商
這一類型的廠商是生產網路硬體設備為主,著重在效能及連接密度,為網路提供非常良好的傳輸媒介。這也是我們天天都在使用的網路設備。
2.SDN元件商
最重要的就是SDN Controller,畢竟Controller這個控制元件是SDN核心技術之所在。至於OpenFlow交換器,因為在功能上為接受者,所以雖然跟SDN的議題有相關,但畢竟不是主導元件,所以地位相對沒有Controller的廠商來得重要,但也還是必要元件之一。
3.網路抽象化(Abstraction)廠商
幾乎都是軟體和晶片廠商的天下,重點在於把現有的IP網路建立成一個背板資源池(Network Fabric Pool),讓用戶的網路可以被任意部署,不需要再為L2網路的邊界而傷腦筋,這也是讓服務網路規模化的新選擇,代表技術就是VxLAN、STT、GRE或NVGRE等等。
4.網路虛擬化(Virtualization)解決方案商
此類型廠商並非提供單一技術產品,而是全面性可以部署於生產環境的解決方案,包括了Controller、Edge Switch、Tunnel在同一方案之內,提供高度的網路效能、擴展性及靈活性。對於真正需要SDN網路的用戶來說,這才是所需要的統合式網路能力,而不再是元件堆疊後的一座危樓網路基礎建設。
一個都不能少
雖然受到業界的高度重視,但畢竟SDN自身無法變成一個獨立有價值的東西,真正有價值的是服務。網路、伺服器、儲存的關係是密不可分的,但是誰來協調這些元件?在雲端資訊中心裡,是由CMS(Cloud Management System)來扮演指揮者的角色,沒有了它,大家只不過是一群「烏合之眾」。
因為服務不可能單獨由網路所提供,伺服器沒有網路也無法傳遞服務,沒有儲存,重要的數據該何去何從?對雲端資訊中心的運轉而言,CMS是非常關鍵的工具,千萬不要忘記這個指揮官。
近期廣受關注的OpenStack就是一個代表性的CMS平台,透過協同運作的力量,擁有包含了8000名以上的個人會員、82個國家的社群、150家以上矽谷及其他地區的IT商業公司共同參與,全球超過600名的共同開發者。當然此外VMware vCloud、CloudStack等平台,也都是這方面出色的CMS平台。
所以當讀者如果開始做SDN的準備,希望不要忘記CMS這個重要指揮官。當然最重要的還是服務, SDN相關的技術則是扮演撐起服務的螺絲釘。
<作者:陳建民,曾任Nicira亞太區技術顧問,2012年VMware收購Nicira之後,現任VMware 網路虛擬化平台工程師,專精於資訊中心基礎建設規劃及內容應用安全。>