vSwitch:虛擬和物理網絡的紐帶

雲計算意味着可以更便捷的使用計算、網絡、存儲資源,每一個元素都可根據用戶業務靈活組合配置,其中網絡環境直接關係到雲中的信息流通,如何構建控制、可靠、效率俱佳的網絡環境,是雲計算在IaaS層面必須面對的挑戰,而虛擬交換機作爲IaaS體系中連接虛擬網絡、物理網絡的橋樑的地位已經無可撼動。

vSwitch:虛擬和物理網絡的紐帶

SDN是數通行業大約每十年一次變革的最新版本,不同於以往的ISO與TCP/IP之爭,也不同於ATM與IP之爭,SDN從一開始就不打算作現有網絡的顛覆者,而是在現有網絡基礎上,提供極致的面向應用的控制方式,虛擬交換機在這輪變革中充當了急先鋒,作爲第一個Openflow交換機,Openvswitch已經廣爲業界所熟悉並採用。

同時在兩波浪潮中扮演重要角色,虛擬交換機地位不言而喻,他將可控的網絡邊緣延伸到服務器中,除了在服務器內高效地轉發,還可將統一的控制策略和安全策略無縫地從物理網絡過度到虛擬網絡。

  虛擬交換機的問題和對策

虛擬化服務器中,如何將虛擬機的流量以更優的方式接入到物理網絡中經歷了一系列技術變動,包括VNTag(802.1Qbh)、VEPA(802.1Qbg),做法不一而同,但到目前爲止,使用虛擬交換機作爲支撐服務器網絡的基石已經基本成爲共識,因爲更方便部署、對物理網絡要求更低、擴展和控制更簡便。

圖1 虛擬交換機運行環境

如圖1所示虛擬交換機運行在虛擬服務器Hypervisor內部,VM之間的流量、VM到物理網絡之間的流量均通過vSwitch轉發,vSwitch 的轉發行爲完全由SDN Controller控制。

基於虛擬交換機的主機Overlay方案更易於虛擬網絡的管理,進一步減少了對Overlay物理承載網絡的額外要求,使虛擬網絡最大限度擺脫了物理網絡的限制,可以說主機Overlay是對虛擬交換機地位的強化

爲了交付高品質的虛擬交換機產品,需要在性能、開放性、安全性、多平臺、適應性方面下一番功夫。

怎樣纔算是開放的虛擬交換機?提供開放的API控制接口,控制器與虛擬交換機之間的會話基於開放的標準,承載網絡的封裝基於開放的協議,比如Openstack網絡組件兼容的REST API,Openflow控制協議,VxLAN/VLAN封裝,這些關鍵技術都是開放的標誌,但還不僅於此,能夠在開放技術基礎上進一步發展、交付豐富的特性,並與開源雲平臺系統、第三方雲平臺系統和第三方SDN網絡深度融合,而又不失上述開放性,也許纔是更有價值的開放,這樣的虛擬交換機帶給客戶的將不僅是透明的技術方案,還有抓住未來發展趨勢的可能。

如何提高虛擬交換機的轉發性能?從石頭中擠水是從實現級別進行優化的形象比喻。 對網絡和SDN內涵的深入理解,可以幫助我們從局部優化的深井中爬出,看到DVR技術、DFW技術如何促成虛擬機間的流量如何避開繞行網關,高效、安全的轉發。

圖2 DVR原理示意

如圖2所示紅色VM屬於同租戶的不同虛機,並且分屬不同網段,按照某些系統的設計,跨主機的VM通信必須經過L3 Gateway做集中的三層轉發,DVR(Distribute Vritual Routing,分佈式虛擬路由)技術是指在控制器控制下,這些VM之間的流量無需繞行L3 Gataway,直接在服務器內部或通過二層交換機即可實現跨三層轉發,較繞行L3 Gateway性能提高,同租戶內虛機從邏輯上好像擁有了一臺邏輯上存在的路由器,也就是DVR所代表的含義。

系統級的性能提升技術也是從根本上解決問題的手段之一,比如基於服務器主流的硬件X86平臺的性能提升技術Intel DPDK(Data Plane Development Kit),甚至連基於DPDK的實驗性質的OVDK(Openvswitch的DPDK版本)項目也備受關注,業界的期待程度可見一斑,各廠商都在積極研究,並以可靠可用的方式逐步落地爲工業級數通產品。

DPDK的技術思路有別於傳統的數據平面,他試圖拋棄已有系統的負擔,通過無鎖化、去掉中斷干擾、高效使用內存、充分利用多核CPU並行等手段創造一個全新的數據平面運行環境,在這個全新的環境中,超高效的轉發成爲可能,已知的業界數據表明可以在Intel CPU和網卡上得到十Gbps、甚至百Gbps的吞吐量性能,雖然DPDK在某些場景還存在一定限制,但是必將成爲未來提高基於軟件轉發的虛擬交換機性能的方向之一。

安全性方面,支持主流的VLAN、VxLAN網絡虛擬化技術,實現對租戶內、租戶間網絡的底層隔離,同時支持多種安全策略,基於ACL的包過濾防火牆和分佈式狀態防火牆,這些技術將服務器網絡的安全控制粒度和處理性能提升高到了新的高度,核心技術思路是控制和處理貼近流量來源,將安全的管理和處理真正延伸的到服務器。

圖3 vSwitch內嵌防火牆

當VM2向VM1發起訪問時,控制器根據訪問策略感知訪問是否受限,若策略允許轉發,則在兩個服務器上同時下發正向和反向流表,確保雙向流量暢通。

相對於將所有VM間流量引入集中式的`防火牆統一處理,分佈式防火牆在安全策略處理位置上都更加貼近流量的源頭或目標,所以他的優勢不僅在於利用分佈式的vSwitch提高整體轉發性能,規避集中式防火牆可能成爲性能瓶頸和可能的單點故障,更在於第一時間將非法流量從網絡中清除,不讓它影響網絡的,這也是未來vSwitch的業務能力在多個維度增強的現實依據,值得包括用戶和廠商在內的生態系統各方展開想象,充分研究和利用。

如果說DFW解決了虛擬網絡側的安全性能和第一時間安全處理問題,那麼vSwitch結合豐富的服務鏈(Service Chain),則是爲整個雲網絡提供了終極的安全、業務綜合能力:

圖4 vSwitch與服務鏈綜合組網

通過對vLB、vFW等類型服務節點的編排和組合,可以在流量的轉發路徑中根據控制其的統一策略完成一些列預定的安全、業務處理,達到整體網絡安全性的目標,流量的方向包括虛擬機之間、虛擬機到外部網絡,而虛擬交換機作爲虛擬機流量的接入設備,需要首先對報文進行標識,這樣,所經過服務鏈節點才得以瞭解所需處理的業務。

多虛擬化平臺方面,目前可商用的雖然種類繁多,但是主流不外乎VMware vSphere、H3C VCK(CAS)、KVM和XEN等一系列基於Linux的Hypervisor,每種虛擬化平臺均可看到成熟的虛擬交換機產品,比如VMware vSphere平臺上既可以運行VMware自有的NSX,也可以運行Cisco的F1000V,而KVM、XEN上則是開源的Openvswitch,控制和運行機制也有所不同,在一些需要互操作、兼容性的場合,往往讓用戶的管理方式、運維方式難以統一,造成一定的困擾,如何將適用於多種虛擬化平臺的虛擬交換機統一管理也是未來雲環境中網絡發展的重要課題。

適應性方面,可以把虛擬交換機的運行環境按照控制方式的“輕”、“重”分爲兩種,一種是在高度智能、可靠的SDN控制器控制下的“重”控制網絡;一種是在雲計算系統中或第三方雲系統中,僅通過VSM(Virtual Supervisor Module)響應少量的關鍵事件即可完成對虛擬交換機的信息下發的“輕”控制網絡。“重”控制方式下,虛擬交換機側重於對控制器的響應,“輕”控制方式下,則側重於自身的功能和靈活性,和與第三方系統的融合程度,表面上看更“輕”了,其實要求更“重”了,這種適應性往往也是衡量虛擬交換機是否具有彈性和擴展性的重要標誌。