㈠ 什麼是網路虛擬化和SDN
SDN與網路虛擬化
由於早期成功的的SDN方案中網路虛擬化案例較多,有的讀者可能會認為SDN和網路虛擬化是同一個層面的,然而這是一個錯誤的說法。SDN不是網路虛擬化,網路虛擬化也不是SDN。SDN是一種集中控制的網路架構,可將網路劃分為數據層面和控制層面。而網路虛擬化是一種網路技術,可以在物理拓撲上創建虛擬網路。傳統的網路虛擬化部署需要手動逐跳部署,其效率低下,人力成本很高。而在數據中心等場景中,為實現快速部署和動態調整,必須使用自動化的業務部署。SDN的出現給網路虛擬化業務部署提供了新的解決方案。通過集中控制的方式,網路管理員可以通過控制器的API來編寫程序,從而實現自動化的業務部署,大大縮短業務部署周期,同時也實現隨需動態調整。
隨著IaaS的發展,數據中心網路對網路虛擬化技術的需求將會越來越強烈。SDN出現不久後,SDN初創公司Nicira就開發了網路虛擬化產品NVP(Network Virtualization Platform)。Nicira被VMware收購之後,VMware結合NVP和自己的產品vCloud Networking and Security (vCNS),推出了VMware的網路虛擬化和安全產品NSX。NSX可以為數據中心提供軟體定義化的網路虛擬化服務。由於網路虛擬化是SDN早期少數幾個可以落地的應用,所以大眾很容易將網路虛擬化和SDN弄混淆。正如前面所說,網路虛擬化只是一種網路技術,而基於SDN的網路架構可以更容易地實現網路虛擬化。
SDN實現網路虛擬化
通過SDN實現網路虛擬化需要完成物理網路管理,網路資源虛擬化和網路隔離三部分工作。而這三部分內容往往通過專門的中間層軟體完成,我們稱之為網路虛擬化平台。虛擬化平台需要完成物理網路的管理和抽象虛擬化,並分別提供給不同的租戶。此外,虛擬化平台還應該實現不同租戶之間的相互隔離,保證不同租戶互不影響。虛擬化平台的存在使得租戶無法感知到網路虛擬化的存在,也即虛擬化平台可實現用戶透明的網路虛擬化。
虛擬化平台
虛擬化平台是介於數據網路拓撲和租戶控制器之間的中間層。面向數據平面,虛擬化平面就是控制器,而面向租戶控制器,虛擬化平台就是數據平面。所以虛擬化平台本質上具有數據平面和控制層面兩種屬性。在虛擬化的核心層,虛擬化平台需要完成物理網路資源到虛擬資源的虛擬化映射過程。面向租戶控制器,虛擬化平台充當數據平面角色,將模擬出來的虛擬網路呈現給租戶控制器。從租戶控制器上往下看,只能看到屬於自己的虛擬網路,而並不了解真實的物理網路。而在數據層面的角度看,虛擬化平台就是控制器,而交換機並不知道虛擬平面的存在。所以虛擬化平台的存在實現了面向租戶和面向底層網路的透明虛擬化,其管理全部的物理網路拓撲,並向租戶提供隔離的虛擬網路。
㈡ 如何理解網路的虛擬化 免費碩士博士論文
網路虛擬化作為一種時下熱門的網路技術,大有掀起新一輪IT基礎架構革命之勢。為了更好的了解現今流行的網路虛擬化技術和理念,就必須先介紹一下SDN,即軟體定義網路。
如今SDN已經席捲了各種規模的數據中心,影響力日漸深遠,但我們似乎依然無法准確的定義什麼是SDN。其實SDN並不是一種技術,也不是一種協議,它只是一種體系框架和設計理念。在SDN的理念下,網路系統的控制平面和轉發平面是必須分離的。在轉發平面,它期望脫離與協議的關聯,使得管理員的意志成為核心要素。管理員藉助軟體來執行自己意志,從而控制轉發行為,並驅動整個網路。此外,在SDN的理念中,控制器和轉發平面的介面是標准化的,這種介面通常稱為南向介面。這是為了盡可能讓軟體作為轉發行為的絕對主導,盡可能少的依賴專門的硬體。而控制器除了能控制硬體設備,也應該可以對網路中的應用程序進行集中控制,通常這是通過硬體提供的可編程特性來實現。這種控制應用程序的介面稱為北向介面。
下面總結一下目前公認的SDN特性:
控制平面與轉發平面分離;
開放的可編程介面;
集中化的網路控制;
網路業務的自動化應用過程。
順帶一提,OpenFlow作為當前主流的南向介面協議經常被誤認為就是SDN本身,或者說是SDN中的一種技術,這種理解是不正確的。OpenFlow僅僅是實現SDN框架理念的一種協議。限於篇幅,關於SDN的介紹就到此為止,詳細資料和專業敘述可以在專業書籍中找到,本文最後會有推薦。
話題回歸網路虛擬化。網路虛擬化是雲計算和SDN發展到一定階段的產物,也可以把網路虛擬化理解為SDN理念新一代的技術實現。大家都知道伺服器虛擬化技術發展的較早,也趨於成熟。在這一拔虛擬化浪潮中,主要的目的直指:抽象化、池化和自動化三個目標。首先發展的是伺服器虛擬化,其結果是用戶無須關注虛擬化位於哪台物理Host,當該Host故障時,虛機會自動在其他有效的Host上重啟,或可以不中斷業務的模式遷移到其他Host,甚至可以遷移到千里之外的其他位置。當虛機位置發生改變時,仍然需要訪問網關,這使得網路需要配合虛機的變化,提供位於另一位置的網關。這導致了對網路虛擬化的需求。
當資源池越多越大時,已經超越了傳統的二層網路范圍,需要在更大的范圍內建設資源池,這也需要在三層上層疊出邏輯的二層來成為剛性需求。
網路做為共享資源,當其中一部分用戶需要對網路做出改變時,會影響到其他用戶的使用,因為需要有一種方式,只對該用戶的網路做出改變,而不影響剩餘用戶。這在傳統的網路架構中難以實現,而虛擬化網路則很好的匹配了這一需求。
當實現雲計算時,自動化部署成為關鍵技術。虛擬化網路以其軟體實現、可編程、容器化等特點,被雲管理平台方便調用,用戶可以同時申請虛擬機和網路、安全等資源。
因此在實際建設投入生產中發現,當伺服器虛擬化運用的如火如荼時,網路環境並沒有發生革命性的變化,這使得用戶對於構建一個快速部署的、靈活擴展的、穩健可靠的數據中心的需求依然不能得到完全的滿足。針對這樣的問題,借鑒了伺服器虛擬化的理念,當前的網路虛擬化技術隨之誕生,它是一種基於Overlay(疊加平面)的技術。
圖1 Overlay的網路模型
Overlay以服務的形式,運行在底層物理網路上,設備到設備間的訪問無需關心物理路徑。這就使得數據中心中建立了大范圍的一套二層鏈路。這種工作機制是通過物理網路設備完成的隧道封裝來實現的。
經過幾年的發展,網路虛擬化經歷了從基於主機虛擬化的Overlay技術到現在的網路虛擬化平台(NVP)的演進。逐漸從基於硬體或者特定的虛擬交換機變為了內部消除五元組的TCP/IP協議,打通大二層網路,發展出真正的控制與轉發分離的新一代SDN實現技術。
在新一代的網路虛擬化技術中,基本分為純軟體方案與軟硬體結合的解決方案,下面首先介紹下軟體方案的代表,由VMware公司提出的NSX解決方案。
NSX方案概述
NSX解決方案分為三個平面,分別是數據平面、控制平面、管理平面。
數據平面主要由NSX虛擬交換機組成,通過將內核模塊安裝在Hypervisor上實現VxLAN、分布式路由、分布式防火牆等服務,還包含了邊界網關設備,在虛擬網路與外界通信時都由其處理。
控制平面中的主要組件是NSX Controller,以虛擬機的形式安裝並與NSX Manager進行集成,只發布信令給數據平面,再由數據平面進行工作。
管理平面的主要組件是NSX Manager,通過NSX Manager提供WEB界面配置和管理整個NSX網路虛擬化環境的所有組件。NSX Manager還提供REST API為VMware雲管平台或第三方雲管平台(如OpenStack)提供介面。
憑借這幾大組件,NSX實現了交換、路由、防火牆、邏輯負載均衡、VPN服務、物理網路連接。
ACI方案概述
ACI是Cisco提出的SDN和網路虛擬化解決方案,主要組件包含有應用策略基礎設施控制器(APIC)和ACI交換矩陣。
APIC在解決方案中負責實現交換矩陣、策略實施、健康狀態監控、自動化和進行中央管理的統一平面。APIC需要以軟體形式安裝在Cisco UCS伺服器上。
Cisco推出Nexus 9000系列交換機實現ACI環境下的底層物理網路。該交換機混用了商用晶元和自主研發的晶元。商用晶元處理普通流量,自主研發晶元處理ACI流量,即SDN和網路虛擬化中的流量。APIC控制器直接將指令發布給交換機的自主晶元,再由晶元分布式地處理數據流量。
對於傳統SDN集中網路復雜性的問題,ACI引入了一個完全與IP無關的策略模型用來解決。