作者: Colin Jao 饒康立 – VMware資深技術顧問,主要負責VMware NSX產品線,目前致力於網路虛擬化暨分散式安全防護技術方案的介紹與推廣。
這幾年我在和客戶與銷售夥伴第一次進行VMware NSX的方案介紹討論時,九成以上都會碰到一個必考題:既然NSX是一個軟體定義網路產品,那可不可以做個競爭分析?為什麼我們一定要買(賣)NSX,而不是市面上其他也講得天花亂墜的軟體定義網路方案?你們可不可以提出一些產業內的顧問報告,說明NSX才是最優秀的SDN (Software Defined Network)產品?
接下來的網誌就是要和大家討論上面這個問題。NSX除了大家熟悉的微分段、網路虛擬化等功能外,當然絕對也是軟體定義網路產品,而且無論在功能、銷售數目、使用用戶上都遠高於其他SDN友商的方案。但是這邊希望試著和大家報告與解釋的是,我們通常比較不和其他友商產品進行競爭分析,並不單純是禮貌問題,而很重要的點是:各SDN方案的產品架構以及使用情境其實不太一樣,拿NSX與其它硬體網路SDN方案進行比較,其實是拿蘋果比菠菜,意義不大。VMware NSX方案有其重要、具備絕對優勢的使用情境;但同樣地,其它硬體網路SDN方案也有其優勢的應用情境,或許是NSX力有未逮的。
所以第一個問題,開宗明義,到底什麼叫SDN,『軟體定義網路』?
我們列出業界一些公開周知的說明。Open Networking Foundation列出了軟體定義網路的條件如下: (https://www.opennetworking.org/sdn-resources/sdn-definition)
- Directly programmable: Network control is directly programmable because it is decoupled from forwarding functions.
- Agile: Abstracting control from forwarding lets administrators dynamically adjust network-wide traffic flow to meet changing needs.
- Centrally managed: Network intelligence is (logically) centralized in software-based SDN controllers that maintain a global view of the network, which appears to applications and policy engines as a single, logical switch.
- Programmatically configured: SDN lets network managers configure, manage, secure, and optimize network resources very quickly via dynamic, automated SDN programs, which they can write themselves because the programs do not depend on proprietary software.
- Open standards-based and vendor-neutral: When implemented through open standards, SDN simplifies network design and operation because instructions are provided by SDN controllers instead of multiple, vendor-specific devices and protocols
好,如果用中文白話文來說,我們可以把上面幾項條件歸納成下面這幾點:
- 網路的控制層與轉發層分離
- 網路控制層集中進行轉發層之網路功能與服務的管理配置,並提供可程序化的對外API
- 轉發層設備及協定基於開放標準,不限制於特定廠商
我們特別把兩個地方畫重點:這個網路方案必須要能夠集中管理配置,而且所有的指令與控制都必須要能夠可以被程序化,一般來說就是必須提供對外的Web-Service API供外部的雲平台或管理系統進行呼叫。可以這樣說,只要任何有符合集中管理與可程序化這兩個條件的網路方案,我們將其當作軟體定義網路的方案都不會有太大問題。
想像一個情境:如果您要建立一個全新的資料中心,需要購買20台資料中心交換器作為底層網路,此時
- 如果可以,大家一定希望這個架構提供集中管理方案。如果應用環境現在需要數個新的VLAN,或需要對多個業務機器進行安全控制,我們一定想要在單一控制層下一次指令即可,而不需要到20台交換器下20次重複的配置
- 這個新網路架構應該要能夠搭配雲平台、IT自動化的整合,或甚至搭配業務開發團隊敏捷式開發需求,直接以API方式以程序化方式由外部呼叫,進行快速、可重複且正確的配置;而無需每一個異動或要求都透過申請單,並且由管理員手動方式進行變更
這樣講或許大家沒feel,舉實際的圖像,讓大家看到VMware NSX是一個符合軟體定義網路的方案。首先,必須要能夠集中管理配置。下圖內,NSX可以由單一管理介面設定在用戶資源池內的所有網路功能,不用到不同介面去進行配置:
而我們可以直接利用API來指揮NSX進行配置
而當然,一個具備了API的軟體定義網路,也當然能透過雲平台 (vRealize Automation) 進行配置
再舉另一個方案為例,如果貴單位買了好幾台Arista交換器,那你們可以考慮直接透過Arista CloudVision方案,同時管理多台交換器
而且,用戶也可以用寫程式或是外部系統,透過Arista CloudVision的API來進行程序化控制
必須要能符合能夠『集中管理』、『程序化』兩個條件才能被稱為軟體定義網路,可以說是業界的共識。但接下來,各家廠商怎麼做出其認知的軟體定義網路方案,方式就南轅北轍了,控制轉發層不見得分離,方案不一定走開放架構。後續的網誌,我們會和大家討論業界幾種不同的SDN方案作法:專屬式硬體SDN架構、開放式硬體SDN架構、以及網路虛擬化SDN方案。
Comments
0 Comments have been added so far