一種云計算的虛擬網(wǎng)絡(luò)管理系統(tǒng)


時間:2013-12-09





  隨著計算機(jī)技術(shù)的日新月異和互聯(lián)網(wǎng)用戶的不斷增長,數(shù)據(jù)中心和IT 基礎(chǔ)設(shè)施規(guī)模成爆炸性地增長,建設(shè)成本增高、周期變長、集中式的大規(guī)模IT 基礎(chǔ)設(shè)施出現(xiàn)了大量系統(tǒng)資源利用率不足的問題,這些閑置的資源如何被共享和集中控制,成為在降低資金和運(yùn)營成本過程中迫切需要解決的問題。于是,云計算技術(shù)應(yīng)運(yùn)而生。終端用戶(企業(yè))可以通過網(wǎng)絡(luò)獲得自己所需要的計算資源,運(yùn)行自己的業(yè)務(wù)系統(tǒng)。這種方式使用戶不必自己建設(shè)這些基礎(chǔ)設(shè)施,而只是通過對所使用資源付費(fèi)即可,創(chuàng)造出更高水平的效率和經(jīng)濟(jì)性。對于用戶來說,云計算為他們提供了無限的計算能力和存儲空間,同時方便地訪問這些資源:只需要通過網(wǎng)絡(luò)來獲得相應(yīng)的服務(wù),按需使用。不必具有專業(yè)的技術(shù)知識,了解具體的技術(shù)細(xì)節(jié)。云計算使得用戶與計算資源的管理相分離。通過僅在需要資源時獲取資源并僅為所需的資源付費(fèi),可以減少企業(yè)服務(wù)相關(guān)的成本和運(yùn)營成本。

  云計算是一個新出現(xiàn)的分發(fā)和使用資源模型,具有很好的經(jīng)濟(jì)性,吸引了一批中小公司使用。盡管云計算的得到了運(yùn)來越多的使用,但是一些關(guān)鍵性問題還沒有得到很好的解決,例如:缺乏細(xì)粒度的安全、隱私保護(hù)、審計、不可預(yù)知的性能問題和低可靠性等問題。

  云計算通過虛擬機(jī)軟件,可以在一臺物理計算機(jī)上模擬出一臺或多臺虛擬的計算機(jī),這些虛擬的計算機(jī)運(yùn)行在一個完全隔離的環(huán)境中,并具有完整的硬件系統(tǒng)功能。通過虛擬機(jī)及多種虛擬化技術(shù),可以實現(xiàn)異構(gòu)、分布的軟硬件資源(包括計算資源、存儲資源、網(wǎng)絡(luò)資源、服務(wù)資源及數(shù)據(jù)資源)的按需構(gòu)建與重組,形成滿足應(yīng)用需求的資源影響,以服務(wù)享用的方式提供給用戶。

  但是,虛擬化只是云計算的一部分因素,由于用戶需要在各種物理設(shè)備之間遷移數(shù)據(jù)和應(yīng)用,搭建云計算平臺的廠商必須提供按需伸縮容量的能力,讓用戶根據(jù)需要很容易的配置新的服務(wù)器和存儲設(shè)備。因而,在虛擬化的基礎(chǔ)上,需要一個優(yōu)化的體系結(jié)構(gòu)互聯(lián)異構(gòu)的軟硬件資源,高可擴(kuò)展的增加、刪除資源,根據(jù)用戶的需求自動收縮,充分利用虛擬化的好處,方便用戶在虛擬機(jī)上直接部署所定制的網(wǎng)絡(luò)環(huán)境。在云計算的使用中,云計算使用者缺乏對于網(wǎng)絡(luò)的配置能力,這部分目前并沒有開放給用戶所使用。目前在云計算環(huán)境中,云網(wǎng)絡(luò)模型通常只提供基礎(chǔ)的動態(tài)或者靜態(tài)地址分配給用戶所使用的虛擬機(jī),以及基本的防火墻等功能。缺乏網(wǎng)絡(luò)關(guān)鍵的服務(wù),這都極大地限制了用戶的使用、安全和性能問題。

  本文提出了一種基于云計算的虛擬網(wǎng)絡(luò)管理系統(tǒng),本系統(tǒng)能夠以動態(tài)的方式為用戶提供基于云計算的網(wǎng)絡(luò)服務(wù),可以根據(jù)用戶需求實現(xiàn)虛擬網(wǎng)絡(luò)配置,并加以優(yōu)化,以便最大限度地提高虛擬網(wǎng)絡(luò)的性能。

  1、相關(guān)工作

  云計算的虛擬網(wǎng)絡(luò)服務(wù)已經(jīng)受到了更多云計算提供商的關(guān)注,但是目前對這方面的支持還處于不完善的階段。Amazon 公司最近擴(kuò)展了VPN 服務(wù),采用該技術(shù)實現(xiàn)了安全隔離網(wǎng)絡(luò)和網(wǎng)絡(luò)通信,實現(xiàn)了彈性的網(wǎng)絡(luò)訪問控制。微軟的Azure 云提供了面向需求前提的網(wǎng)絡(luò)配置。Amazon 和Azure 都提供了與網(wǎng)絡(luò)相關(guān)的跨虛擬機(jī)群的流量負(fù)載均衡和內(nèi)容分發(fā)服務(wù)。目前也有一些第三方的網(wǎng)絡(luò)提供商提供了其他的有用服務(wù),包括快速數(shù)據(jù)復(fù)制、應(yīng)用加速、入侵防護(hù)等。也有一些學(xué)者和企業(yè)在面向路由控制、分布式網(wǎng)絡(luò)管理、帶寬控制、隱私保護(hù)和網(wǎng)絡(luò)隔離等方面作了一些面向安全領(lǐng)域的研究工作,但是目前都是面向安全領(lǐng)域的研究工作。

  Eucalyptus 是基于研究目的研發(fā)的開源云計算系統(tǒng)。其特點(diǎn)是通過三層架構(gòu)實現(xiàn)云計算平臺功能。三層組織結(jié)構(gòu)的頂層是Cloud Controller,負(fù)責(zé)云計算平臺管理決策;中間層有多個Cluster Controller, 每個Cluster Controller 代表一個集群,控制了多臺虛擬機(jī)節(jié)點(diǎn)。Cluster Controller 主要負(fù)責(zé)分派虛擬機(jī)實例、收集物理資源信息,并且進(jìn)行任務(wù)調(diào)度分派。Cluster Controller的默認(rèn)分派算法將實例分派到首個可以滿足需求的節(jié)點(diǎn)上,并以虛擬機(jī)的不同類型規(guī)劃資源規(guī)模;位于最下層的是Node Controller,Node Controller 位于物理機(jī)節(jié)點(diǎn)上,實際控制該物理機(jī)上的虛擬機(jī)實例。另外, 還有Storage Controller 負(fù)責(zé)存儲鏡像以及用戶數(shù)據(jù)。Eucalyptus 主要模仿了Amazon EC2 的系統(tǒng)架構(gòu),實現(xiàn)的主要功能包括:開啟、控制、接入、終止虛擬機(jī):通過Web 服務(wù)提供控制接口:模擬ECZ 控制接口。但由于并非商業(yè)項目,Eucalyptus 對云計算平臺的管理功能目前并不完善。

  一些文章也提出了網(wǎng)絡(luò)即服務(wù)(Naas,Network as a Service)的概念。網(wǎng)絡(luò)即服務(wù),是指一個基于互聯(lián)網(wǎng)的新模式,通信服務(wù)提供商(CSP)可以按需提供網(wǎng)絡(luò)協(xié)議和基于服務(wù)等級協(xié)議(SLA,Service-Level Agreement)的可靠性。文獻(xiàn)設(shè)計并落實了一個新穎的基于Naas 的云網(wǎng)絡(luò)系統(tǒng),客戶可以利用它增強(qiáng)與豐富的和可擴(kuò)展的網(wǎng)絡(luò)功能,如虛擬網(wǎng)絡(luò)隔離,差異化服務(wù),以及靈活地插入各種中間件的部署應(yīng)用程序等。通過把云計算提供服務(wù)的模型和開放性網(wǎng)絡(luò)協(xié)議的網(wǎng)絡(luò)相結(jié)合,并通過擴(kuò)展OpenFlow 的架構(gòu),提出了一個新的基于Naas 的虛擬網(wǎng)絡(luò)框架。

  2、系統(tǒng)設(shè)計

  2.1 總體設(shè)計

  為了滿足用戶對于網(wǎng)絡(luò)資源自定義配置的需求,系統(tǒng)從功能上主要包括兩個組成部分:云控制器和網(wǎng)絡(luò)控制器,見圖(1)。云控制器負(fù)責(zé)管理虛擬資源和物理主機(jī),并且為用戶提供API接口,以便用戶設(shè)置自己的網(wǎng)絡(luò)策略需求。而網(wǎng)絡(luò)控制器負(fù)責(zé)監(jiān)視和管理網(wǎng)絡(luò)設(shè)備的配置情況,并且根據(jù)用戶的網(wǎng)絡(luò)需求,來決定怎樣在云中配置虛擬機(jī)。





  本系統(tǒng)的基本運(yùn)作流程如下。首先,云客戶或租戶使用一個簡單的策略語言來指定其所要求的配置的網(wǎng)絡(luò)服務(wù);之后,用戶的網(wǎng)絡(luò)配置策略通過云控制器從高層次上的結(jié)構(gòu)被翻譯成所需的網(wǎng)絡(luò)通信模式和網(wǎng)絡(luò)服務(wù)的標(biāo)準(zhǔn)描述,此描述代表了用戶的邏輯上的網(wǎng)絡(luò)資源需求;接下來,網(wǎng)絡(luò)控制器根據(jù)此邏輯需求和當(dāng)前的網(wǎng)絡(luò)資源利用情況和網(wǎng)絡(luò)鏈路狀態(tài),并經(jīng)過相關(guān)優(yōu)化算法,生成網(wǎng)絡(luò)層面上的虛擬機(jī)部署規(guī)則;最后,系統(tǒng)將根據(jù)此規(guī)則為用戶分配虛擬機(jī)資源,并部署到實際的云中。

  下面分別介紹系統(tǒng)的兩個主要模塊。

  2.2 云控制器

  云控制器主要負(fù)責(zé)管理物理資源、監(jiān)視物理機(jī)、放置虛擬機(jī)和分配存儲空間等。一旦用戶有新的部署策略請求,云控制器就會根據(jù)新請求分配和部署物理資源。此外,為了配合網(wǎng)絡(luò)控制器,云控制器需要將用戶的策略經(jīng)過翻譯,傳輸給網(wǎng)絡(luò)控制器,以便網(wǎng)絡(luò)控制器判斷當(dāng)前網(wǎng)絡(luò)配置狀態(tài)并進(jìn)行新的虛擬網(wǎng)絡(luò)部署。

  在一臺物理主機(jī)上配置虛擬機(jī)之前,云控制器提供咨詢,以確定哪些主機(jī)是候選的,之后網(wǎng)絡(luò)控制器采用一些優(yōu)化的布局算法,以達(dá)到用戶的虛擬網(wǎng)絡(luò)配置需求,并且最小化網(wǎng)絡(luò)狀態(tài),并最大限度地提高虛擬網(wǎng)絡(luò)的性能和可配置的虛擬網(wǎng)絡(luò)的數(shù)量。

  2.3 網(wǎng)絡(luò)控制器

  網(wǎng)絡(luò)控制器是虛擬網(wǎng)絡(luò)管理系統(tǒng)核心模塊。云控制器把用戶需求翻譯成虛擬機(jī)映射到物理網(wǎng)絡(luò)上的資源的邏輯要求之后,將此邏輯要求交付給網(wǎng)絡(luò)控制器。網(wǎng)絡(luò)控制器根據(jù)云控制器提供的用戶需求,負(fù)責(zé)在整個云中配置虛擬網(wǎng)絡(luò)。它也控制云的資源,例如當(dāng)云中的資源情況發(fā)生變化時,決定怎樣擺放虛擬機(jī)或改變當(dāng)前虛擬機(jī)拓?fù)淝闆r,來保證以一個高效的方法滿足用戶的虛擬機(jī)配置需求。

  圖2 展現(xiàn)了網(wǎng)絡(luò)控制器的主要模塊。



  網(wǎng)絡(luò)控制器得到兩個輸入數(shù)據(jù):一是云控制器將用戶的需求翻譯之后形成的虛擬機(jī)映射到物理網(wǎng)絡(luò)上的資源的邏輯要求,二是當(dāng)前的所有物理主機(jī)上的可用資源的列表。此外,網(wǎng)絡(luò)控制器還收集當(dāng)前的鏈路和交換的狀態(tài),以及當(dāng)前物理網(wǎng)絡(luò)上配置的虛擬網(wǎng)段映射的情況。網(wǎng)絡(luò)控制器的云監(jiān)控模塊周期地獲取當(dāng)前虛擬網(wǎng)絡(luò)的狀態(tài),以便探測出是否有虛擬機(jī)故障需要遷移等等。

  以上文得到的輸入數(shù)據(jù)為基礎(chǔ),網(wǎng)絡(luò)控制器調(diào)用位置優(yōu)化模塊,以確定最佳的位置來放置虛擬機(jī)。然后,網(wǎng)絡(luò)控制器使用網(wǎng)絡(luò)置備模塊的配置命令來生成每個網(wǎng)絡(luò)中的可編程器件的配置,使它們滿足用戶的虛擬網(wǎng)絡(luò)配置要求。

  系統(tǒng)的一個關(guān)鍵的優(yōu)化問題就是虛擬機(jī)的擺放問題,由位置優(yōu)化模塊來實現(xiàn)優(yōu)化功能。此模塊將虛擬機(jī)擺放抽象成有約束的裝箱優(yōu)化問題。充分考慮到虛擬機(jī)位置和虛擬網(wǎng)絡(luò)約束條件,配置可編程網(wǎng)絡(luò)設(shè)備,對每一個用戶的網(wǎng)絡(luò)進(jìn)行細(xì)粒度的網(wǎng)絡(luò)配置??梢圆捎脝l(fā)式的優(yōu)化算法,滿足租戶的需求虛擬機(jī)需求和網(wǎng)絡(luò)需求的同時,將代價盡可能降低。

  網(wǎng)絡(luò)控制可以利用NOX 和OpenFlow 來實現(xiàn)。

  Openflow 是建立云網(wǎng)絡(luò)的一種較好的方式,它是一個開放標(biāo)準(zhǔn),為科研人員實現(xiàn)新協(xié)議和新算法提供了一個試驗平臺。OpenFlow 交換機(jī)將原來完全由交換機(jī)或路由器控制的報文轉(zhuǎn)發(fā)過程轉(zhuǎn)化為由OpenFlow 交換機(jī)和控制服務(wù)器來共同完成,從而實現(xiàn)了數(shù)據(jù)轉(zhuǎn)發(fā)和路由控制的分離??刂破骺梢酝ㄟ^事先規(guī)定好的接口操作來控制OpenFlow 交換機(jī)中的流表,從而達(dá)到控制數(shù)據(jù)轉(zhuǎn)發(fā)的目的。

  NOX 是一個開源的OpenFlow 控制器,旨在簡化軟件的開發(fā),而軟件負(fù)責(zé)控制或監(jiān)測由OpenFlow 交換機(jī)組成的網(wǎng)絡(luò)。在NOX 中編寫的程序(使用C++ 或Python)可以對網(wǎng)絡(luò)進(jìn)行流級控制。這意味著,他們可以決定在網(wǎng)絡(luò)上哪些流量被允許,哪些路徑被采用。此外,NOX 還提供獲取網(wǎng)絡(luò)狀態(tài)的能力,包括網(wǎng)絡(luò)拓?fù)浜退斜粰z測到的主機(jī)的位置。這些都有助于對網(wǎng)絡(luò)控制器模塊的實現(xiàn)。

  3、總結(jié)

  本文提出了一種基于云計算的虛擬網(wǎng)絡(luò)管理系統(tǒng),其中云控制器負(fù)責(zé)管理虛擬資源和物理主機(jī),并且為用戶提供API接口,以便用戶設(shè)置自己的網(wǎng)絡(luò)策略需求;網(wǎng)絡(luò)控制器負(fù)責(zé)監(jiān)視和管理網(wǎng)絡(luò)設(shè)備的配置情況,并且根據(jù)用戶的網(wǎng)絡(luò)需求,來決定怎樣在云中配置虛擬機(jī)。本系統(tǒng)能夠以動態(tài)的方式為用戶提供基于云計算的網(wǎng)絡(luò)服務(wù),可以根據(jù)用戶需求實現(xiàn)虛擬網(wǎng)絡(luò)配置,并加以優(yōu)化,以便最大限度地提高虛擬網(wǎng)絡(luò)的性能。


來源:CIO時代網(wǎng)



  版權(quán)及免責(zé)聲明:凡本網(wǎng)所屬版權(quán)作品,轉(zhuǎn)載時須獲得授權(quán)并注明來源“中國產(chǎn)業(yè)經(jīng)濟(jì)信息網(wǎng)”,違者本網(wǎng)將保留追究其相關(guān)法律責(zé)任的權(quán)力。凡轉(zhuǎn)載文章,不代表本網(wǎng)觀點(diǎn)和立場。版權(quán)事宜請聯(lián)系:010-65363056。

延伸閱讀

熱點(diǎn)視頻

第六屆中國報業(yè)黨建工作座談會(1) 第六屆中國報業(yè)黨建工作座談會(1)

熱點(diǎn)新聞

熱點(diǎn)輿情

特色小鎮(zhèn)

版權(quán)所有:中國產(chǎn)業(yè)經(jīng)濟(jì)信息網(wǎng)京ICP備11041399號-2京公網(wǎng)安備11010502003583