混合虛擬化網絡,網絡性能優化之辯
網絡設備在虛擬化后是否依舊可以快速提供良好的性能?這是目前大家最為關注的問題之一。下面就討論一下傳統網絡設備和虛擬化后面臨的問題以及怎樣使用網絡設備才能提供實時管理監控,保護SDN/NFV網絡的安全。
虛擬化的性能瓶頸
虛擬化進程中,服務器虛擬化和存儲虛擬化因為大部分屬于軟件技術,發展較為迅速,并快速商用。網絡虛擬化,是對網絡資源如端口、帶寬、IP地址等進行抽象,并支持按照租戶和應用進行動態分配和管理。網絡虛擬化因為網絡標準、網絡處理芯片更新周期長而發展較為滯后,成為數據中心虛擬化過程中的難點和關鍵點。網絡虛擬化技術走過了一條由軟件到硬件、由服務器內部到物理網絡的發展道路。
從很多方面來看,現在對網絡設備虛擬化已經做的比較完善了,可以基于標準的x86架構的服務器硬件設備運行與之匹配的應用,但是性能卻一直不盡如人意。不過,即使是物理網絡設備,高速運行時性能也不太理想。這就是為什么大多數高性能設備使用分析加速硬件。盡管分析加速硬件釋放CPU進行分析處理,但大多數網絡設備依舊會將所有CPU處理能力用來執行任務。
從虛擬化角度來看,設備的虛擬化只能實現到一定程度。如果待處理的數據速率和數據數量比較低,那么就可以使用虛擬化設備。一旦數據速率和數量上升,對虛擬設備的處理需求就會提高。首先,這就意味著虛擬化設備需要單獨訪問所有可用的CPU資源。即使那樣,使用標準NIC接口的虛擬化設備還是會遇到與物理設備一樣的問題,例如丟包率、時間戳精確性、跨多個可用的CPU內核的有效負載均衡等方面的問題。
虛擬化性能優化的努力
服務器虛擬化通過嵌入在基礎物理服務器和操作系統之間的中間軟件層Hypervisor實現,其接管操作系統對CPU、內存、I/O資源的控制,為每個VM(Virtual Machine,虛擬機)分配一定的資源,并實現VM之間的隔離和通信。Hypervisor提供一個或多個模擬物理交換機的軟件虛擬交換機vSwitch(Virtual Switch)來進行VM之間的通信,并為每個VM分配一個虛擬網口和一定的帶寬。vSwitch除了具備物理交換機基本的MAC學習和轉發、VLAN功能外,還具有配置靈活和成本低廉的優點。由于vSwitch通過軟件實現,其分配的網絡資源實際還是由服務器CPU資源來保證。
軟件虛擬化交換機(包括I/O加速的vSwtich)雖然有部署靈活和便宜的優點,但也存在著一些缺點:第一,性能提升受限于CPU以及網卡的I/O架構;第二,軟件交換機實現的網絡功能相對簡單,只實現了轉發功能,被稱為VEB(虛擬網絡橋),缺少交換控制、網絡監視、QoS、安全等功能;第三,管理界限模糊,軟件交換機運行在服務器內部,而服務器管理團隊對于網絡理解不深;第四,VM和vSwitch數量激增帶來的管理難題。為進一步優化性能、簡化管理并繼承傳統交換機特性,網絡設備商和相關標準組織提出邊緣交換機虛擬化技術,把VM交換功能再進一步由網卡卸載到物理交換機上來。涉及到的關鍵技術有VEPA(Virtual Ethernet Port Aggregator)/Multi-Channel和PE(Port Extender)兩種,分別由IEEE 802.1Qbg和IEEE 802.1Qbh(現由IEEE802.1BR替代)兩個標準定義和推動。
物理和虛擬的融合
事實上,物理設備即使虛擬化也無法擺脫曾經面臨的那些問題,需要將這些問題一一解決。解決方法之一就是考慮采用物理設備監控、保護虛擬網絡。虛擬化感知網絡設備可以作為“服務鏈”的環節同虛擬客戶端一起充當服務定義的一部分。這就要求網絡設備能夠識別虛擬網絡,目前這個工作由大部分高性能設備和分析加速硬件所支持的VLAN封裝技術完成,確保設備提供與具體VLAN、虛擬網絡相關的分析功能。
在向SDN、NFV階段性轉移的過程中這個方法顯得尤為實用。人們廣泛的認為目前高性能的功能很難在實現虛擬化的同時保證性能幾乎不損耗。因此,務實的解決方案所倡導的SDN和NFV管理、編排方法既考慮了物理網絡元素又考慮了虛擬網絡元素。這樣一來,策略和配置無需考慮資源是否虛擬化了,只需要使用相同的機制即可。
因此我們應該想到的是,引進SDN和NFV需要一個通用的架構以及通用的接口和拓撲機制,將傳統的網絡管理、網絡安全解決方案和新的解決方案結合起來。只有這樣,才能隨時、隨地虛擬化網絡功能并且不影響整個網絡架構和進程。