隨著計算機技術(shù)的日新月異和互聯(lián)網(wǎng)用戶的不斷增長,數(shù)據(jù)中心和IT 基礎(chǔ)設(shè)施規(guī)模成爆炸性地增長,建設(shè)成本增高、周期變長、集中式的大規(guī)模IT 基礎(chǔ)設(shè)施出現(xiàn)了大量系統(tǒng)資源利用率不足的問題,這些閑置的資源如何被共享和集中控制,成為在降低資金和運營成本過程中迫切需要解決的問題。于是,云計算技術(shù)應運而生。終端用戶(企業(yè))可以通過網(wǎng)絡(luò)獲得自己所需要的計算資源,運行自己的業(yè)務系統(tǒng)。這種方式使用戶不必自己建設(shè)這些基礎(chǔ)設(shè)施,而只是通過對所使用資源付費即可,創(chuàng)造出更高水平的效率和經(jīng)濟性。對于用戶來說,云計算為他們提供了無限的計算能力和存儲空間,同時方便地訪問這些資源:只需要通過網(wǎng)絡(luò)來獲得相應的服務,按需使用。不必具有專業(yè)的技術(shù)知識,了解具體的技術(shù)細節(jié)。云計算使得用戶與計算資源的管理相分離。通過僅在需要資源時獲取資源并僅為所需的資源付費,可以減少企業(yè)服務相關(guān)的成本和運營成本。
云計算是一個新出現(xiàn)的分發(fā)和使用資源模型,具有很好的經(jīng)濟性,吸引了一批中小公司使用。盡管云計算的得到了運來越多的使用,但是一些關(guān)鍵性問題還沒有得到很好的解決,例如:缺乏細粒度的安全、隱私保護、審計、不可預知的性能問題和低可靠性等問題。
云計算通過虛擬機軟件,可以在一臺物理計算機上模擬出一臺或多臺虛擬的計算機,這些虛擬的計算機運行在一個完全隔離的環(huán)境中,并具有完整的硬件系統(tǒng)功能。通過虛擬機及多種虛擬化技術(shù),可以實現(xiàn)異構(gòu)、分布的軟硬件資源(包括計算資源、存儲資源、網(wǎng)絡(luò)資源、服務資源及數(shù)據(jù)資源)的按需構(gòu)建與重組,形成滿足應用需求的資源影響,以服務享用的方式提供給用戶。
但是,虛擬化只是云計算的一部分因素,由于用戶需要在各種物理設(shè)備之間遷移數(shù)據(jù)和應用,搭建云計算平臺的廠商必須提供按需伸縮容量的能力,讓用戶根據(jù)需要很容易的配置新的服務器和存儲設(shè)備。因而,在虛擬化的基礎(chǔ)上,需要一個優(yōu)化的體系結(jié)構(gòu)互聯(lián)異構(gòu)的軟硬件資源,高可擴展的增加、刪除資源,根據(jù)用戶的需求自動收縮,充分利用虛擬化的好處,方便用戶在虛擬機上直接部署所定制的網(wǎng)絡(luò)環(huán)境。在云計算的使用中,云計算使用者缺乏對于網(wǎng)絡(luò)的配置能力,這部分目前并沒有開放給用戶所使用。目前在云計算環(huán)境中,云網(wǎng)絡(luò)模型通常只提供基礎(chǔ)的動態(tài)或者靜態(tài)地址分配給用戶所使用的虛擬機,以及基本的防火墻等功能。缺乏網(wǎng)絡(luò)關(guān)鍵的服務,這都極大地限制了用戶的使用、安全和性能問題。
本文提出了一種基于云計算的虛擬網(wǎng)絡(luò)管理系統(tǒng),本系統(tǒng)能夠以動態(tài)的方式為用戶提供基于云計算的網(wǎng)絡(luò)服務,可以根據(jù)用戶需求實現(xiàn)虛擬網(wǎng)絡(luò)配置,并加以優(yōu)化,以便最大限度地提高虛擬網(wǎng)絡(luò)的性能。
1、相關(guān)工作
云計算的虛擬網(wǎng)絡(luò)服務已經(jīng)受到了更多云計算提供商的關(guān)注,但是目前對這方面的支持還處于不完善的階段。Amazon 公司最近擴展了VPN 服務,采用該技術(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)的跨虛擬機群的流量負載均衡和內(nèi)容分發(fā)服務。目前也有一些第三方的網(wǎng)絡(luò)提供商提供了其他的有用服務,包括快速數(shù)據(jù)復制、應用加速、入侵防護等。也有一些學者和企業(yè)在面向路由控制、分布式網(wǎng)絡(luò)管理、帶寬控制、隱私保護和網(wǎng)絡(luò)隔離等方面作了一些面向安全領(lǐng)域的研究工作,但是目前都是面向安全領(lǐng)域的研究工作。
Eucalyptus 是基于研究目的研發(fā)的開源云計算系統(tǒng)。其特點是通過三層架構(gòu)實現(xiàn)云計算平臺功能。三層組織結(jié)構(gòu)的頂層是Cloud Controller,負責云計算平臺管理決策;中間層有多個Cluster Controller, 每個Cluster Controller 代表一個集群,控制了多臺虛擬機節(jié)點。Cluster Controller 主要負責分派虛擬機實例、收集物理資源信息,并且進行任務調(diào)度分派。Cluster Controller的默認分派算法將實例分派到首個可以滿足需求的節(jié)點上,并以虛擬機的不同類型規(guī)劃資源規(guī)模;位于最下層的是Node Controller,Node Controller 位于物理機節(jié)點上,實際控制該物理機上的虛擬機實例。另外, 還有Storage Controller 負責存儲鏡像以及用戶數(shù)據(jù)。Eucalyptus 主要模仿了Amazon EC2 的系統(tǒng)架構(gòu),實現(xiàn)的主要功能包括:開啟、控制、接入、終止虛擬機:通過Web 服務提供控制接口:模擬ECZ 控制接口。但由于并非商業(yè)項目,Eucalyptus 對云計算平臺的管理功能目前并不完善。
一些文章也提出了網(wǎng)絡(luò)即服務(Naas,Network as a Service)的概念。網(wǎng)絡(luò)即服務,是指一個基于互聯(lián)網(wǎng)的新模式,通信服務提供商(CSP)可以按需提供網(wǎng)絡(luò)協(xié)議和基于服務等級協(xié)議(SLA,Service-Level Agreement)的可靠性。文獻設(shè)計并落實了一個新穎的基于Naas 的云網(wǎng)絡(luò)系統(tǒng),客戶可以利用它增強與豐富的和可擴展的網(wǎng)絡(luò)功能,如虛擬網(wǎng)絡(luò)隔離,差異化服務,以及靈活地插入各種中間件的部署應用程序等。通過把云計算提供服務的模型和開放性網(wǎng)絡(luò)協(xié)議的網(wǎng)絡(luò)相結(jié)合,并通過擴展OpenFlow 的架構(gòu),提出了一個新的基于Naas 的虛擬網(wǎng)絡(luò)框架。
2、系統(tǒng)設(shè)計
2.1 總體設(shè)計
為了滿足用戶對于網(wǎng)絡(luò)資源自定義配置的需求,系統(tǒng)從功能上主要包括兩個組成部分:云控制器和網(wǎng)絡(luò)控制器,見圖(1)。云控制器負責管理虛擬資源和物理主機,并且為用戶提供API接口,以便用戶設(shè)置自己的網(wǎng)絡(luò)策略需求。而網(wǎng)絡(luò)控制器負責監(jiān)視和管理網(wǎng)絡(luò)設(shè)備的配置情況,并且根據(jù)用戶的網(wǎng)絡(luò)需求,來決定怎樣在云中配置虛擬機。
本系統(tǒng)的基本運作流程如下。首先,云客戶或租戶使用一個簡單的策略語言來指定其所要求的配置的網(wǎng)絡(luò)服務;之后,用戶的網(wǎng)絡(luò)配置策略通過云控制器從高層次上的結(jié)構(gòu)被翻譯成所需的網(wǎng)絡(luò)通信模式和網(wǎng)絡(luò)服務的標準描述,此描述代表了用戶的邏輯上的網(wǎng)絡(luò)資源需求;接下來,網(wǎng)絡(luò)控制器根據(jù)此邏輯需求和當前的網(wǎng)絡(luò)資源利用情況和網(wǎng)絡(luò)鏈路狀態(tài),并經(jīng)過相關(guān)優(yōu)化算法,生成網(wǎng)絡(luò)層面上的虛擬機部署規(guī)則;最后,系統(tǒng)將根據(jù)此規(guī)則為用戶分配虛擬機資源,并部署到實際的云中。
下面分別介紹系統(tǒng)的兩個主要模塊。
2.2 云控制器
云控制器主要負責管理物理資源、監(jiān)視物理機、放置虛擬機和分配存儲空間等。一旦用戶有新的部署策略請求,云控制器就會根據(jù)新請求分配和部署物理資源。此外,為了配合網(wǎng)絡(luò)控制器,云控制器需要將用戶的策略經(jīng)過翻譯,傳輸給網(wǎng)絡(luò)控制器,以便網(wǎng)絡(luò)控制器判斷當前網(wǎng)絡(luò)配置狀態(tài)并進行新的虛擬網(wǎng)絡(luò)部署。
在一臺物理主機上配置虛擬機之前,云控制器提供咨詢,以確定哪些主機是候選的,之后網(wǎng)絡(luò)控制器采用一些優(yōu)化的布局算法,以達到用戶的虛擬網(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)核心模塊。云控制器把用戶需求翻譯成虛擬機映射到物理網(wǎng)絡(luò)上的資源的邏輯要求之后,將此邏輯要求交付給網(wǎng)絡(luò)控制器。網(wǎng)絡(luò)控制器根據(jù)云控制器提供的用戶需求,負責在整個云中配置虛擬網(wǎng)絡(luò)。它也控制云的資源,例如當云中的資源情況發(fā)生變化時,決定怎樣擺放虛擬機或改變當前虛擬機拓撲情況,來保證以一個高效的方法滿足用戶的虛擬機配置需求。
圖2 展現(xiàn)了網(wǎng)絡(luò)控制器的主要模塊。
網(wǎng)絡(luò)控制器得到兩個輸入數(shù)據(jù):一是云控制器將用戶的需求翻譯之后形成的虛擬機映射到物理網(wǎng)絡(luò)上的資源的邏輯要求,二是當前的所有物理主機上的可用資源的列表。此外,網(wǎng)絡(luò)控制器還收集當前的鏈路和交換的狀態(tài),以及當前物理網(wǎng)絡(luò)上配置的虛擬網(wǎng)段映射的情況。網(wǎng)絡(luò)控制器的云監(jiān)控模塊周期地獲取當前虛擬網(wǎng)絡(luò)的狀態(tài),以便探測出是否有虛擬機故障需要遷移等等。
以上文得到的輸入數(shù)據(jù)為基礎(chǔ),網(wǎng)絡(luò)控制器調(diào)用位置優(yōu)化模塊,以確定最佳的位置來放置虛擬機。然后,網(wǎng)絡(luò)控制器使用網(wǎng)絡(luò)置備模塊的配置命令來生成每個網(wǎng)絡(luò)中的可編程器件的配置,使它們滿足用戶的虛擬網(wǎng)絡(luò)配置要求。
系統(tǒng)的一個關(guān)鍵的優(yōu)化問題就是虛擬機的擺放問題,由位置優(yōu)化模塊來實現(xiàn)優(yōu)化功能。此模塊將虛擬機擺放抽象成有約束的裝箱優(yōu)化問題。充分考慮到虛擬機位置和虛擬網(wǎng)絡(luò)約束條件,配置可編程網(wǎng)絡(luò)設(shè)備,對每一個用戶的網(wǎng)絡(luò)進行細粒度的網(wǎng)絡(luò)配置。可以采用啟發(fā)式的優(yōu)化算法,滿足租戶的需求虛擬機需求和網(wǎng)絡(luò)需求的同時,將代價盡可能降低。
網(wǎng)絡(luò)控制可以利用NOX 和OpenFlow 來實現(xiàn)。
Openflow 是建立云網(wǎng)絡(luò)的一種較好的方式,它是一個開放標準,為科研人員實現(xiàn)新協(xié)議和新算法提供了一個試驗平臺。OpenFlow 交換機將原來完全由交換機或路由器控制的報文轉(zhuǎn)發(fā)過程轉(zhuǎn)化為由OpenFlow 交換機和控制服務器來共同完成,從而實現(xiàn)了數(shù)據(jù)轉(zhuǎn)發(fā)和路由控制的分離??刂破骺梢酝ㄟ^事先規(guī)定好的接口操作來控制OpenFlow 交換機中的流表,從而達到控制數(shù)據(jù)轉(zhuǎn)發(fā)的目的。
NOX 是一個開源的OpenFlow 控制器,旨在簡化軟件的開發(fā),而軟件負責控制或監(jiān)測由OpenFlow 交換機組成的網(wǎng)絡(luò)。在NOX 中編寫的程序(使用C++ 或Python)可以對網(wǎng)絡(luò)進行流級控制。這意味著,他們可以決定在網(wǎng)絡(luò)上哪些流量被允許,哪些路徑被采用。此外,NOX 還提供獲取網(wǎng)絡(luò)狀態(tài)的能力,包括網(wǎng)絡(luò)拓撲和所有被檢測到的主機的位置。這些都有助于對網(wǎng)絡(luò)控制器模塊的實現(xiàn)。
3、總結(jié)
本文提出了一種基于云計算的虛擬網(wǎng)絡(luò)管理系統(tǒng),其中云控制器負責管理虛擬資源和物理主機,并且為用戶提供API接口,以便用戶設(shè)置自己的網(wǎng)絡(luò)策略需求;網(wǎng)絡(luò)控制器負責監(jiān)視和管理網(wǎng)絡(luò)設(shè)備的配置情況,并且根據(jù)用戶的網(wǎng)絡(luò)需求,來決定怎樣在云中配置虛擬機。本系統(tǒng)能夠以動態(tài)的方式為用戶提供基于云計算的網(wǎng)絡(luò)服務,可以根據(jù)用戶需求實現(xiàn)虛擬網(wǎng)絡(luò)配置,并加以優(yōu)化,以便最大限度地提高虛擬網(wǎng)絡(luò)的性能。
來源:CIO時代網(wǎng)
版權(quán)及免責聲明:凡本網(wǎng)所屬版權(quán)作品,轉(zhuǎn)載時須獲得授權(quán)并注明來源“中國產(chǎn)業(yè)經(jīng)濟信息網(wǎng)”,違者本網(wǎng)將保留追究其相關(guān)法律責任的權(quán)力。凡轉(zhuǎn)載文章,不代表本網(wǎng)觀點和立場。版權(quán)事宜請聯(lián)系:010-65363056。
延伸閱讀
版權(quán)所有:中國產(chǎn)業(yè)經(jīng)濟信息網(wǎng)京ICP備11041399號-2京公網(wǎng)安備11010502003583