◆邵 華
?
基于SDN的光網(wǎng)絡(luò)虛擬化技術(shù)研究
◆邵 華
(南京郵電大學(xué)電子與光學(xué)工程學(xué)院 江蘇 210023)
由于技術(shù)的發(fā)展和業(yè)務(wù)類(lèi)型的不斷豐富,光網(wǎng)絡(luò)得到了飛速發(fā)展。新興應(yīng)用和未來(lái)互聯(lián)網(wǎng)業(yè)務(wù)(如超高清視頻流)的特點(diǎn)是基于網(wǎng)絡(luò)的高性能應(yīng)用在高容量動(dòng)態(tài)光網(wǎng)絡(luò)上進(jìn)行全球性的交付。光網(wǎng)絡(luò)虛擬化使網(wǎng)絡(luò)運(yùn)營(yíng)商能夠根據(jù)用戶(hù)/應(yīng)用的需求,將其物理基礎(chǔ)設(shè)施劃分為虛擬網(wǎng)絡(luò),并將其作為基礎(chǔ)設(shè)施服務(wù)提供給用戶(hù)。隨著軟件定義網(wǎng)絡(luò)(SDN)的出現(xiàn),在動(dòng)態(tài)異構(gòu)底層網(wǎng)絡(luò)上實(shí)現(xiàn)網(wǎng)絡(luò)虛擬化更為容易,也讓網(wǎng)絡(luò)虛擬化具備更高的靈活性與高效性。本文首先對(duì)SDN技術(shù)和光網(wǎng)絡(luò)虛擬化進(jìn)行了概述,介紹了基于SDN技術(shù)的光網(wǎng)絡(luò)虛擬化的實(shí)現(xiàn),然后對(duì)主流的基于SDN的虛擬化平臺(tái)進(jìn)行了簡(jiǎn)單的介紹。
SDN;光網(wǎng)絡(luò);網(wǎng)絡(luò)虛擬化;虛擬化平臺(tái)
光網(wǎng)絡(luò)虛擬化使網(wǎng)絡(luò)運(yùn)營(yíng)商可以依據(jù)用戶(hù)的需求,將其物理基礎(chǔ)設(shè)施劃分為虛擬網(wǎng)絡(luò),并將其作為基礎(chǔ)設(shè)施服務(wù)提供給用戶(hù)。網(wǎng)絡(luò)虛擬化與網(wǎng)絡(luò)可編程性相結(jié)合,提供了一個(gè)共享的核心基礎(chǔ)設(shè)施,可用于多種目的,具有簡(jiǎn)單且可預(yù)測(cè)的運(yùn)營(yíng)模式。
隨著SDN的出現(xiàn),在動(dòng)態(tài)異構(gòu)底層網(wǎng)絡(luò)上實(shí)現(xiàn)網(wǎng)絡(luò)虛擬化更為容易。SDN將控制平面從數(shù)據(jù)平面中分離出來(lái),并將控制平面合并,以便單個(gè)控制程序可以控制多個(gè)數(shù)據(jù)平面元素。SDN的能力使其成為網(wǎng)絡(luò)虛擬化的一種支持技術(shù)。
利用光網(wǎng)絡(luò)虛擬化技術(shù)和軟件定義網(wǎng)絡(luò),網(wǎng)絡(luò)運(yùn)營(yíng)商能夠以最少量的人工干預(yù)、硬件部署和工程復(fù)雜性,高效、動(dòng)態(tài)地重新配置網(wǎng)絡(luò),部署更多容量并支持新服務(wù)。
SDN(Software Defined Networking,軟件定義網(wǎng)絡(luò))是一種新型網(wǎng)絡(luò)模式,它通過(guò)將網(wǎng)絡(luò)的控制邏輯(控制平面)與轉(zhuǎn)發(fā)流量(數(shù)據(jù)平面)的下層路由器和交換機(jī)分開(kāi)來(lái)打破垂直整合。其次,網(wǎng)絡(luò)交換機(jī)通過(guò)控制平面與數(shù)據(jù)平面的分離,成為簡(jiǎn)單的轉(zhuǎn)發(fā)設(shè)備,控制邏輯在邏輯集中的控制器中實(shí)現(xiàn),簡(jiǎn)化策略執(zhí)行和網(wǎng)絡(luò)配置,并提供靈活的可編程能力。
圖1 SDN基本架構(gòu)
SDN的基本架構(gòu)分為三層——基礎(chǔ)設(shè)施層、控制層和業(yè)務(wù)層,如圖1所示?;A(chǔ)設(shè)施層包括以太網(wǎng)交換機(jī)、路由器、光交換機(jī)、虛擬交換機(jī)和無(wú)線(xiàn)接入點(diǎn)等物理網(wǎng)元,它構(gòu)成了數(shù)據(jù)平面,沒(méi)有控制能力,僅僅是用來(lái)對(duì)數(shù)據(jù)進(jìn)行轉(zhuǎn)發(fā)和處理的??刂茖觿t處于中間位置,由負(fù)責(zé)建立和拆除網(wǎng)絡(luò)中的流和路徑的控制器組成,是基礎(chǔ)設(shè)施層和業(yè)務(wù)層的橋梁,向上層開(kāi)放設(shè)備,數(shù)據(jù)和事件,向底層解釋需求。業(yè)務(wù)層包括各種SDN 應(yīng)用,經(jīng)過(guò)北向接口與SDN控制器進(jìn)行交互,即這些應(yīng)用可以通過(guò)可編程的形式把需要請(qǐng)求的網(wǎng)絡(luò)行為提交給控制器。
虛擬光網(wǎng)絡(luò)是一組相互連接的虛擬光節(jié)點(diǎn)組成,這些虛擬光節(jié)點(diǎn)共享一個(gè)共同的管理框架。光學(xué)節(jié)點(diǎn)虛擬化通常通過(guò)分離或聚合實(shí)現(xiàn)的抽象模型來(lái)創(chuàng)建光學(xué)網(wǎng)絡(luò)節(jié)點(diǎn)的虛擬表示。在虛擬光網(wǎng)絡(luò)中,虛擬連接被定義為虛擬網(wǎng)絡(luò)元件的一個(gè)端口到另一個(gè)虛擬網(wǎng)絡(luò)元件的端口之間的連接。其中,抽象使物理基礎(chǔ)設(shè)施提供商(物理基礎(chǔ)設(shè)施提供商指的是光網(wǎng)絡(luò)基礎(chǔ)設(shè)施的所有者或運(yùn)營(yíng)商)隱藏其物理網(wǎng)絡(luò)資源技術(shù)的特定細(xì)節(jié),同時(shí)將其表示為一組必要的統(tǒng)一屬性、特性和功能。抽象是為資源虛擬化機(jī)制提供通用性的關(guān)鍵機(jī)制。分離使物理基礎(chǔ)設(shè)施提供商能夠?qū)⑵湮锢碣Y源劃分為多個(gè)獨(dú)立的片(虛擬資源),每個(gè)虛擬資源完全模仿真實(shí)物理資源片的功能和性能。應(yīng)該注意的是,在這個(gè)虛擬化范例中,分片之間的隔離是特別關(guān)鍵的。聚合是指將多個(gè)互相連接的實(shí)際物理資源聚合成一個(gè)虛擬資源。
虛擬化過(guò)程的基本要素是在真實(shí)物理網(wǎng)絡(luò)和虛擬物理網(wǎng)絡(luò)之間映射標(biāo)識(shí)符的轉(zhuǎn)換單元,類(lèi)似于計(jì)算機(jī)中的內(nèi)存管理單元或虛擬主機(jī)上使用的多種管理程序中的一種。與這些管理程序一樣,在轉(zhuǎn)換單元的實(shí)現(xiàn)方式和位置上有許多不同的選項(xiàng),但必須位于應(yīng)用程序邏輯和物理硬件之間。圖2展示了五種SDN虛擬化的設(shè)計(jì)思路。
圖2 幾種SDN虛擬化的設(shè)計(jì)思想
(1)轉(zhuǎn)換單元部署在交換機(jī)和控制器之間的一個(gè)獨(dú)立硬件設(shè)備上,作為二者的協(xié)議代理,在多個(gè)交換機(jī)和多個(gè)控制器之間共享,根據(jù)配置信息把不同網(wǎng)絡(luò)流交付給相應(yīng)的控制器和交換機(jī)處理。
(2)轉(zhuǎn)換單元放置在交換機(jī)中,每個(gè)物理交換機(jī)連接到多個(gè)控制器,根據(jù)配置信息把相應(yīng)的流交付給對(duì)應(yīng)的控制器處理。
(3)與方案2相同,轉(zhuǎn)換單元放置在交換機(jī)中,每一個(gè)交換機(jī)運(yùn)行多個(gè)OpenFlow實(shí)例,每一個(gè)實(shí)例與一個(gè)控制器相連接,并且在每個(gè)OpenFlow實(shí)例和快速路徑轉(zhuǎn)發(fā)硬件之間執(zhí)行轉(zhuǎn)換。
(4)與上一步不同在于,每臺(tái)交換機(jī)運(yùn)行多個(gè)OpenFlow實(shí)例,并將交換機(jī)的數(shù)據(jù)路徑分區(qū)為幾個(gè)并行數(shù)據(jù)路徑,每個(gè)實(shí)例一個(gè)。通過(guò)影響端口如何連接到不同的并行數(shù)據(jù)路徑來(lái)執(zhí)行轉(zhuǎn)換。
(5)一個(gè)具有多個(gè)轉(zhuǎn)換單元的模型,一個(gè)負(fù)責(zé)在交換機(jī)級(jí)別進(jìn)行虛擬化,另一個(gè)負(fù)責(zé)連接多個(gè)虛擬交換機(jī)并創(chuàng)建虛擬網(wǎng)絡(luò)??梢酝ㄟ^(guò)由虛擬拓?fù)滢D(zhuǎn)換單元管理的隧道來(lái)創(chuàng)建虛擬鏈路,并且以物理鏈路的形式呈現(xiàn)。
近年來(lái),國(guó)內(nèi)外學(xué)者通過(guò)不斷的研究探索,先后提出了多種SDN 網(wǎng)絡(luò)虛擬化平臺(tái)。這里將簡(jiǎn)單介紹幾種主流的虛擬化平臺(tái)。
(1)FlowVisor
就像管理程序駐留在PC上的軟件和硬件之間一樣,F(xiàn)lowVisor使用OpenFlow作為硬件抽象層,在邏輯上位于網(wǎng)絡(luò)設(shè)備上的控制和轉(zhuǎn)發(fā)路徑之間。我們可以把FlowVisor看作是一個(gè)OpenFlow控制器,被實(shí)現(xiàn)為OpenFlow代理,部署在OpenFlow控制器和交換機(jī)之間,用于攔截啟用OpenFlow的交換機(jī)和OpenFlow控制器之間的消息。通過(guò)OpenFlow協(xié)議,F(xiàn)lowVisor在控制器和交換機(jī)之間進(jìn)行通信,F(xiàn)lowVisor能夠根據(jù)虛擬網(wǎng)規(guī)則進(jìn)行消息的攔截、修改、轉(zhuǎn)發(fā)等操作,而實(shí)現(xiàn)普通OpenFlow控制器只能接受其控制的虛網(wǎng)的流,并不知道這些流被FlowVisor進(jìn)行了過(guò)濾操作。
FlowVisor的設(shè)計(jì)過(guò)程中遵循如下幾個(gè)原則:
①FlowVisor對(duì)網(wǎng)絡(luò)控制器和交換機(jī)應(yīng)該是透明的;
②網(wǎng)絡(luò)片之間應(yīng)該有強(qiáng)大的隔離;
③FlowVisor的虛網(wǎng)劃分策略應(yīng)該是豐富和可擴(kuò)展的。
(2)OpenVirteX
與FlowVisor一樣,OpenVirteX (后面簡(jiǎn)稱(chēng)OVX)在控制通道內(nèi)扮演著代理角色,向租戶(hù)呈現(xiàn)OpenFlow網(wǎng)絡(luò),同時(shí)通過(guò)南向OpenFlow接口控制底層物理基礎(chǔ)設(shè)施。通過(guò)公開(kāi)OpenFlow網(wǎng)絡(luò),允許租戶(hù)使用自己的網(wǎng)絡(luò)操作系統(tǒng)(NOS)來(lái)控制與其虛擬網(wǎng)絡(luò)相對(duì)應(yīng)的網(wǎng)絡(luò)資源。換句話(huà)說(shuō),OVX創(chuàng)建了多個(gè)虛擬軟件定義的網(wǎng)絡(luò)。與FlowVisor不同,F(xiàn)lowVisor通過(guò)流空間為網(wǎng)絡(luò)劃分切片,使租戶(hù)使用網(wǎng)絡(luò)的一部分,OVX為每個(gè)租戶(hù)提供了一個(gè)完全虛擬化的網(wǎng)絡(luò),該網(wǎng)絡(luò)具有租戶(hù)指定的拓?fù)浣Y(jié)構(gòu)和完整的header space。
同時(shí),OVX允許租戶(hù)為其終端主機(jī)選擇地址分配,允許多個(gè)可能重疊的IP地址塊存在于相同的物理網(wǎng)絡(luò)中。為了分配主機(jī),OVX為每個(gè)租戶(hù)生成全局唯一的租戶(hù)ID,并為每個(gè)主機(jī)生成一個(gè)使用租戶(hù)ID對(duì)主機(jī)成員進(jìn)行編碼的物理地址。通過(guò)安裝流規(guī)則來(lái)重寫(xiě)網(wǎng)絡(luò)邊緣交換機(jī)處的地址,從入口邊緣處的租戶(hù)分配地址到物理IP地址,以及出口邊緣處的物理IP地址,避免地址沖突。
(3)VeRTIGO
VeRTIGO是一款基于OpenFlow 的網(wǎng)絡(luò)虛擬化平臺(tái),是對(duì)FlowVisor的功能擴(kuò)展,它可以將不同的視圖暴露給不同的控制器,以滿(mǎn)足客戶(hù)的特定需求。它支持由虛擬鏈路和任意拓?fù)涔?jié)點(diǎn)組成的虛擬網(wǎng)絡(luò),將整個(gè)虛擬網(wǎng)絡(luò)折疊成單個(gè)路由器或交換機(jī)實(shí)例的抽象節(jié)點(diǎn)。VeRTIGO提供物理網(wǎng)絡(luò)抽象實(shí)例(即虛擬網(wǎng)絡(luò)或抽象節(jié)點(diǎn))的能力是基于兩個(gè)基本的虛擬元素:虛擬鏈接和虛擬端口。這兩個(gè)元素既用于實(shí)例化任意網(wǎng)絡(luò)拓?fù)?,包括不相鄰交換機(jī)之間的虛擬鏈路,也用于互連抽象節(jié)點(diǎn)的遠(yuǎn)程訪(fǎng)問(wèn)端口。 在第一種情況下,虛擬鏈路和端口作為網(wǎng)絡(luò)的一部分暴露給OpenFlow控制器。 在后者中, OpenFlow控制器只能看到這個(gè)虛擬交換機(jī)的虛擬端口,而不知道底層是如何映射的。虛擬鏈路在邏輯上集合了物理鏈路和OpenFlow節(jié)點(diǎn),而虛擬端口只是具有虛擬端口號(hào)的物理端口。
鑒于新興應(yīng)用和未來(lái)互聯(lián)網(wǎng)服務(wù),網(wǎng)絡(luò)運(yùn)營(yíng)商正在尋求網(wǎng)絡(luò)虛擬化方法,以有效共享其網(wǎng)絡(luò)基礎(chǔ)設(shè)施。軟件定義網(wǎng)絡(luò)和OpenFlow協(xié)議提供了形成分組和光電路交換域的虛擬化機(jī)制和統(tǒng)一控制平面所需的機(jī)制。由于OpenFlow協(xié)議最初設(shè)計(jì)是為IP網(wǎng)絡(luò)服務(wù)的,沒(méi)有考慮到光網(wǎng)絡(luò)的一些特殊性質(zhì),所以想要控制由光節(jié)點(diǎn)組成的虛擬網(wǎng)絡(luò),需要對(duì)OpenFlow協(xié)議進(jìn)行一定的擴(kuò)展,這是下一步的工作。
[1] Nick Feamster, Jennifer Rexford, and Ellen Zeg-ura. 2014. The road to SDN: an intellectual history of programmable networks[J].SIGCOMM Comput. Commun. Rev.44, 2 (April 2014).
[2]Juliano Araujo Wickboldt; Wanderson Paim De Jesus; Pedro Heleno Isolani; Cristiano Bonato Both; Juergen Rochol; Lisandro Zambenedetti Granville. 2015. Software-defined net-working: Management requirements and challenges[J]. I-EEE Communications Magazine 53, 1 (2015).
[3]耿永強(qiáng).光網(wǎng)絡(luò)虛擬化技術(shù)[J]. Silicon Va11ey,2012.
[4]Pontus Sk?ldstr?m,Kiran Yedavalli. Network virtualization and resource allocation in OpenFlow-based wide area networks. 2012 IEEE International Conference on Communications (ICC), Ottawa, ON,2012.
[5]Rob Sherwood, Glen Gibb, Kok-Kiong Yap,et al.Flowvisor:A Network Virtualization Layer[R].Open Flow Switch Consortium,2009.
[6]Victor T. Costa, Luís Henrique M. K. Costa. Vulnerabilities and solutions for isolation in FlowVisor-based virtual network environments[J]. Journal of Internet Services and Applications,2015.
[7] Ali Al-Shabibi, Marc De Leenheer, Matteo Gerola, et al.Open Virte X:Make Your Virtual SDN Programmable[C].The Third Workshop on Hot Topics in Software Defi-ned Networking ACM,2014.
[8]Doriguzzi Corin R, GerolaM, Riggio R, et al, VeRTIGO:Network Virtualization and Beyond[C], Software Defined Networking (EWSDN), 2012 European Workshop on. IEEE,2012.
網(wǎng)絡(luò)安全技術(shù)與應(yīng)用2018年6期