20世紀(jì)90年代,客戶端/服務(wù)器的計(jì)算模式得到了廣泛應(yīng)用,在這種計(jì)算模式中,數(shù)據(jù)中心用來(lái)存放服務(wù)器并提供服務(wù)。近幾年,互聯(lián)網(wǎng)技術(shù)的蓬勃發(fā)展掀起了建設(shè)數(shù)據(jù)中心的高潮,網(wǎng)上銀行、證券和娛樂(lè)資訊等網(wǎng)絡(luò)服務(wù)逐漸普及,特別是云計(jì)算?技術(shù)的發(fā)展為網(wǎng)絡(luò)服務(wù)形式帶來(lái)重大變革,使數(shù)據(jù)中心的發(fā)展進(jìn)入了鼎盛時(shí)期。
在云計(jì)算環(huán)境下,Internet網(wǎng)絡(luò)由傳送信息數(shù)據(jù)到直接傳送服務(wù)。數(shù)據(jù)中心作為企業(yè)構(gòu)建私有云的硬件平臺(tái)或者公有云的骨干資源,運(yùn)行其上的網(wǎng)絡(luò)服務(wù)更加多樣化、復(fù)雜化,在性能、可靠性和可管理性上的要求越來(lái)越細(xì)化,這就需要新的設(shè)計(jì)理念和運(yùn)行機(jī)制的支持,特別是作為信息傳輸?shù)幕A(chǔ)部分——網(wǎng)絡(luò)層的數(shù)據(jù)轉(zhuǎn)發(fā)和管理機(jī)制需要重新設(shè)計(jì)以滿足越來(lái)越復(fù)雜和多樣的數(shù)據(jù)流傳輸需求。
隨著存儲(chǔ)虛擬化等資源虛擬化技術(shù)的發(fā)展,通常數(shù)據(jù)中心內(nèi)的物理主機(jī)上會(huì)搭載若干獨(dú)立的虛擬主機(jī),并且虛擬主機(jī)可以根據(jù)需要在不同的物理主機(jī)上遷移。在面向云計(jì)算的數(shù)據(jù)中心內(nèi)部,資源虛擬化技術(shù)的出現(xiàn)使得多個(gè)具有獨(dú)立IP地址的虛擬主機(jī)公用同一條物理鏈路。即使目前使用了一些過(guò)渡的方式令網(wǎng)絡(luò)層能夠提供一定的支持,但是傳統(tǒng)的TCP/IP或者UDP等協(xié)議已經(jīng)越來(lái)越無(wú)法為各種服務(wù)應(yīng)用提供足夠的性能保障。這點(diǎn)在虛擬機(jī)遷移及多QoS個(gè)性化需求方面顯得尤為突出,因此需要將數(shù)據(jù)中心的網(wǎng)絡(luò)硬件進(jìn)行虛擬化以形成多個(gè)不同的虛擬網(wǎng)絡(luò)拓?fù)鋸亩鴮?duì)資源虛擬化應(yīng)用提供更好的支持。
為此,本文設(shè)計(jì)了通過(guò)低造價(jià)的可編程交換機(jī)和商業(yè)級(jí)服務(wù)器來(lái)構(gòu)建具有高連通性的數(shù)據(jù)中心網(wǎng)絡(luò)拓?fù)涞姆椒ā2⑶姨岢隽颂摂M網(wǎng)絡(luò)的控制管理機(jī)制,形成了面向云計(jì)算的數(shù)據(jù)中心底層網(wǎng)絡(luò)體系結(jié)構(gòu)。實(shí)驗(yàn)表明,本文提出的網(wǎng)絡(luò)體系相較于傳統(tǒng)樹形網(wǎng)絡(luò)在網(wǎng)絡(luò)吞吐量及容錯(cuò)方面都有較大提升。并且為虛擬機(jī)的遷移提供了更加靈活、高效的支持。
1 相關(guān)研究
在數(shù)據(jù)中心拓?fù)錁?gòu)建上,傳統(tǒng)數(shù)據(jù)中心所采用的樹形分層結(jié)構(gòu)(如圖1所示)通常為包括接入層、匯聚層、核心層的3層結(jié)構(gòu)。在樹形的末端,一個(gè)機(jī)架上通常存放數(shù)10臺(tái)服務(wù)器,這些服務(wù)器通過(guò)接入層的交換機(jī)連接到網(wǎng)絡(luò)上。在匯聚層和核心層,為了提供盡可能高的性能,采用了造價(jià)極高的高端交換機(jī)(10 GE級(jí)別)形成高連通網(wǎng)絡(luò)拓?fù)洹?/P>
圖1傳統(tǒng)數(shù)據(jù)中心樹形網(wǎng)絡(luò)結(jié)構(gòu)
傳統(tǒng)樹形網(wǎng)絡(luò)構(gòu)建方式已經(jīng)難以滿足新一代網(wǎng)絡(luò)服務(wù)的需求。首先,這類結(jié)構(gòu)無(wú)法提供足夠高的對(duì)剖帶寬、吞吐量及實(shí)時(shí)通信等性能要求,也無(wú)法提供高可擴(kuò)展性;其次。樹形結(jié)構(gòu)在上層存在單點(diǎn)故障,一臺(tái)核心層或者匯聚層的交換機(jī)故障將會(huì)導(dǎo)致很大數(shù)量的服務(wù)器無(wú)法進(jìn)行通信;另外由于傳統(tǒng)分層結(jié)構(gòu)在匯聚層與核心層需要部署昂貴的高端高帶寬交換機(jī)。性價(jià)比不高。
關(guān)于云計(jì)算數(shù)據(jù)中心非樹狀網(wǎng)絡(luò)拓?fù)錁?gòu)建方面的研究比較具有代表性的有微軟的研究團(tuán)隊(duì)和美國(guó)加州大學(xué)的研究團(tuán)隊(duì)。加州大學(xué)的Al—Fares等人提出了Clos Networks,Clos Networks是一種基于胖樹(fat tree)的類樹形結(jié)構(gòu)拓?fù)洌渲饕康氖窃诰W(wǎng)絡(luò)端節(jié)點(diǎn)處實(shí)現(xiàn)更高的聚合帶寬。網(wǎng)絡(luò)分3層:核心交換機(jī)、聚合交換機(jī)及端交換機(jī),通過(guò)增加一定的布線復(fù)雜度來(lái)連接成一個(gè)胖樹形網(wǎng)絡(luò),端交換機(jī)用來(lái)連接PC機(jī)。在網(wǎng)絡(luò)層,Clos Networks使用兩層路由表及多路徑的流調(diào)度機(jī)制,在全負(fù)載最壞的情況下可以實(shí)現(xiàn)約87%的聚合帶寬。加州大學(xué)的Guo等人引入了并行計(jì)算的一些思想,提出了DCell。DCell是一種遞歸構(gòu)建方式的數(shù)據(jù)中心,使用的是商業(yè)級(jí)PC和低端交換機(jī),高一級(jí)的DCell由若干低一級(jí)的DCell組成。DCell的擴(kuò)展性相對(duì)于節(jié)點(diǎn)的度具有雙倍指數(shù)增長(zhǎng)關(guān)系,并且大大降低了數(shù)據(jù)中心的成本。微軟亞洲研究所的Dan Li聯(lián)合加州大學(xué)的研究團(tuán)隊(duì)提出了一種使用雙網(wǎng)卡PC機(jī)和低端交換機(jī)來(lái)構(gòu)建數(shù)據(jù)中心的思路,命名為FiConn,F(xiàn)iConn同樣使用遞歸構(gòu)建模式,具有很好的可擴(kuò)展性和連通性。在FiConn的遞歸拓?fù)渲校溌繁环譃槿舾杉?jí)別,在網(wǎng)絡(luò)層中通過(guò)一種低開銷的流量自適應(yīng)路由機(jī)制來(lái)平衡各級(jí)別鏈路中的流量從而達(dá)到平衡負(fù)載和提高網(wǎng)絡(luò)吞吐量的目的。
在上述的3種新型數(shù)據(jù)中心網(wǎng)絡(luò)拓?fù)渲校珻IosNetworks網(wǎng)絡(luò)結(jié)構(gòu)中的主機(jī)在網(wǎng)絡(luò)滿負(fù)荷情況下仍能夠以網(wǎng)卡硬件端口允許的最大帶寬進(jìn)行通信,從而提供了最高的網(wǎng)絡(luò)對(duì)剖帶寬,并且由于ClosNetworks實(shí)際上是一種特殊的樹形結(jié)構(gòu)變體,因此能夠提供最好的兼容性,但是造價(jià)要高于DCell和FiConn。DCell具有最好的可擴(kuò)展性,但是需要在主機(jī)上安裝更多的網(wǎng)卡,F(xiàn)iConn只需在每臺(tái)主機(jī)上安裝兩塊網(wǎng)卡,兩者都增加了布線的復(fù)雜性。在容錯(cuò)性上,F(xiàn)iConn和DCell由于采用了遞歸的拓?fù)浣Y(jié)構(gòu),主機(jī)需要承擔(dān)路由功能并且網(wǎng)絡(luò)內(nèi)的交換機(jī)和主機(jī)存在級(jí)別差異,因此在交換機(jī)及主機(jī)故障的情況下將導(dǎo)致網(wǎng)絡(luò)內(nèi)數(shù)據(jù)流分配不平衡,從而導(dǎo)致網(wǎng)絡(luò)性能的顯著下降。文獻(xiàn)[7]比較了這3者的容錯(cuò)性,F(xiàn)iConn和DCeIl的容錯(cuò)性能明顯低于ClosNetworks網(wǎng)絡(luò)結(jié)構(gòu)。另外,這兩種結(jié)構(gòu)都需要使用全新的路由算法,對(duì)于現(xiàn)有應(yīng)用的支持還有待于進(jìn)一步解決。
在應(yīng)對(duì)資源虛擬化應(yīng)用方面的相關(guān)研究上,微軟研究團(tuán)隊(duì)的Greenberg,Hamilton,Jain等人提出了VL2L8J,VL2主要考慮如何使得虛擬機(jī)在服務(wù)器上進(jìn)行靈活的遷移,力求使得虛擬機(jī)的遷移對(duì)客戶及程序設(shè)計(jì)者透明。VL2使用了Clos Networks的拓?fù)浣Y(jié)構(gòu),并在網(wǎng)絡(luò)層和數(shù)據(jù)鏈路層之間加入了相應(yīng)的路由控制機(jī)制。在VL2所提出的體系結(jié)構(gòu)中,應(yīng)用程序使用服務(wù)地址通信而底層網(wǎng)絡(luò)使用位置信息地址進(jìn)行轉(zhuǎn)發(fā),這就使得虛擬機(jī)能夠在網(wǎng)絡(luò)中任意遷移而不影響服務(wù)質(zhì)量。加州大學(xué)的Mysofe等人提出了PortLandL,PortLand使用的同樣是ClosNetworks的拓?fù)浣Y(jié)構(gòu),通過(guò)在2.5層中使用虛擬MAC地址來(lái)實(shí)現(xiàn)虛擬機(jī)自由遷移。在服務(wù)器上的某個(gè)虛擬機(jī)與端交換機(jī)第1次通信時(shí),端交換機(jī)建立該虛擬機(jī)的實(shí)際MAC地址到虛擬MAC地址并將其發(fā)送給網(wǎng)絡(luò)底層控制程序,虛擬機(jī)進(jìn)行ARP廣播時(shí)端交換機(jī)將廣播攔截。然后查詢底層控制程序并返回相應(yīng)的IP地址,這樣使得虛擬機(jī)可以自由遷移不用考慮尋路問(wèn)題。
文獻(xiàn)[8—9]的解決方法在一定程度上提高了虛擬機(jī)遷移后的再尋址時(shí)間延遲問(wèn)題,目前通過(guò)DNS的實(shí)現(xiàn)方式需要數(shù)分鐘甚至更久,采用新方法后可以縮減到數(shù)十秒。但是前者需要在網(wǎng)絡(luò)內(nèi)部署專門尋址服務(wù)器,并且需要有良好的分布式實(shí)時(shí)通信機(jī)制支持,后者主要在可編程交換機(jī)上實(shí)現(xiàn),對(duì)交換機(jī)性能的要求較高。另外,這兩種方法都無(wú)法將隸屬于不同應(yīng)用的虛擬主機(jī)進(jìn)行有效的隔離,在網(wǎng)絡(luò)通信量較大時(shí),不用服務(wù)的數(shù)據(jù)流由于競(jìng)爭(zhēng)帶寬會(huì)相互影響。
2低成本高連通性的網(wǎng)絡(luò)拓?fù)浣Y(jié)構(gòu)
在數(shù)據(jù)中心網(wǎng)絡(luò)構(gòu)建方案設(shè)計(jì)中,如何在保證足夠高性能的前提下盡量減少造價(jià)是至關(guān)重要的。本文的目的就是利用低造價(jià)且型號(hào)單一的可編程交換機(jī)及商業(yè)級(jí)服務(wù)器來(lái)構(gòu)建數(shù)據(jù)中心網(wǎng)絡(luò)拓?fù)洌碌木W(wǎng)絡(luò)拓?fù)湓趯?duì)剖帶寬及網(wǎng)絡(luò)聚合吞吐量上要高于傳統(tǒng)樹形分層結(jié)構(gòu),并能夠?qū)Y源虛擬化技術(shù)應(yīng)用特別是虛擬主機(jī)在網(wǎng)絡(luò)中的遷移行為提供更加靈活的支持。
2.1 網(wǎng)絡(luò)拓?fù)浣Y(jié)構(gòu)
從降低成本方面考慮,利用低造價(jià)交換機(jī)及商業(yè)級(jí)服務(wù)器來(lái)構(gòu)建數(shù)據(jù)中心可以大大減少成本支出。另外,鑒于現(xiàn)在的PC機(jī)和服務(wù)器都具有至少兩個(gè)網(wǎng)絡(luò)端口,充分利用這些端口可以大大提高拓?fù)鋬?nèi)節(jié)點(diǎn)的連通性以獲得更大的網(wǎng)絡(luò)吞吐量。這樣的構(gòu)建方案具有更好的性價(jià)比。
圖2是本文提出的數(shù)據(jù)中心網(wǎng)絡(luò)拓?fù)錁?gòu)圖,整個(gè)網(wǎng)絡(luò)由同一型號(hào)的可編程交換機(jī)組成,中間的服務(wù)器將網(wǎng)絡(luò)分割成兩個(gè)對(duì)稱的Fat—Tree結(jié)構(gòu)的特殊變體。每個(gè)這樣的Fat—Tree結(jié)構(gòu)包含核心層、匯聚層和接人層3個(gè)層次,使用這樣結(jié)構(gòu)的好處是可以保證每臺(tái)服務(wù)器的任意網(wǎng)絡(luò)端口都可以同時(shí)以網(wǎng)絡(luò)硬件接口所允許的最大帶寬進(jìn)行通信而不受網(wǎng)絡(luò)通信帶寬瓶頸的制約。
網(wǎng)絡(luò)能夠容納的服務(wù)器數(shù)量取決于構(gòu)建網(wǎng)絡(luò)所使用的交換機(jī)的端口數(shù)志(圖2中,k一2)。網(wǎng)絡(luò)中的服務(wù)器被分成走組,每組包含(k/2)2臺(tái)服務(wù)器。網(wǎng)絡(luò)被服務(wù)器分成上下兩個(gè)部分,每部分的接入層和匯聚層對(duì)應(yīng)每組都有k/2臺(tái)交換機(jī),每個(gè)接入層的交換機(jī)分別連接k/2臺(tái)服務(wù)器,剩下的端口分別連接上層的交換機(jī)。核心層有(k/2)2臺(tái)交換機(jī),每臺(tái)交換機(jī)的第i個(gè)網(wǎng)絡(luò)端口連接到第i組的匯聚層的某臺(tái)交換機(jī)。這樣每個(gè)匯聚層的交換機(jī)都有k/2條鏈路與核心層的各個(gè)交換機(jī)相連接。使用具有k個(gè)端口的交換機(jī)組建的網(wǎng)絡(luò)可以容納k3/4臺(tái)服務(wù)器。本文提出的這種結(jié)構(gòu)適用于任意端口數(shù)的交換機(jī),如采用常見的48口交換機(jī)。那么按照本文提出的方法構(gòu)建的數(shù)據(jù)中心網(wǎng)絡(luò)可以包含27 648臺(tái)服務(wù)器,足夠支持企業(yè)構(gòu)建自己的私有云平臺(tái)。
圖2 高連通性低造價(jià)網(wǎng)絡(luò)拓?fù)浣Y(jié)構(gòu)圖
本文提出的這種網(wǎng)絡(luò)拓?fù)錁?gòu)建方式有以下4個(gè)優(yōu)點(diǎn):1)雖然相較于傳統(tǒng)樹形結(jié)構(gòu)使用了更多的交換機(jī)。但是由于無(wú)需在核心層和匯聚層采用造價(jià)昂貴的高端高性能交換機(jī),因此減少了總體構(gòu)建成本;2)對(duì)于網(wǎng)絡(luò)中任意的兩臺(tái)服務(wù)器之間都存在多條等長(zhǎng)度的路徑可供選擇;3)充分利用了服務(wù)器的兩個(gè)網(wǎng)絡(luò)端口,提高了網(wǎng)絡(luò)的連通性和吞吐量;4)在本文提出的網(wǎng)絡(luò)結(jié)構(gòu)中不存在像傳統(tǒng)樹形結(jié)構(gòu)中的單點(diǎn)故障。因此容錯(cuò)性得到了加強(qiáng)。
2.2網(wǎng)絡(luò)地址分配
在地址分配方式上,為了保證兼容性,采用了與IP地址相同的結(jié)構(gòu)。對(duì)稱的上下兩部分網(wǎng)絡(luò)分別采用10.O.O.O/8和20.O.0.0/8兩個(gè)地址段.接入層及匯聚層交換機(jī)地址形式為10.g.s.1及20.g.s.1,其中g(shù)為組號(hào),s為交換機(jī)號(hào)(由O開始,從左至右,從下到上遞增).核心層交換機(jī)的地址分別為10.k.j.i和20.k._j.i,其中志為組號(hào)。_j為匯聚層交換機(jī)編號(hào)(從O開始,由左至右遞增),i為該交換機(jī)與核心層交換機(jī)連接的端口序號(hào)(0一k/2)。
主機(jī)網(wǎng)絡(luò)端口的地址與其連接的接入層交換機(jī)處于同一網(wǎng)段,形式為10.g.s.fd和20.g.s.謝,其中id為服務(wù)器編號(hào),由左至右遞增,范圍為(2,k/2+1)。
這樣的地址結(jié)構(gòu)使得后續(xù)給出的虛擬網(wǎng)絡(luò)構(gòu)建及控制管理機(jī)制都能夠良好地兼容目前廣泛的基于IP協(xié)議的上層應(yīng)用。只要IP地址結(jié)構(gòu)不變,那么對(duì)于網(wǎng)絡(luò)層作出的相應(yīng)改動(dòng)相對(duì)于上層應(yīng)用來(lái)說(shuō)就是透明的,上層應(yīng)用不必理解地址字段的特殊含義。
3虛擬網(wǎng)絡(luò)構(gòu)建及控制管理機(jī)制
云計(jì)算環(huán)境下,數(shù)據(jù)中心內(nèi)服務(wù)器上通常運(yùn)行多個(gè)虛擬機(jī)來(lái)提供不同的服務(wù),這樣能夠便于應(yīng)用服務(wù)的迅速、靈活的部署,在服務(wù)器硬件故障發(fā)生時(shí)。虛擬機(jī)將遷移到另外的服務(wù)器上。目前虛擬機(jī)遷移后的恢復(fù)尋址工作通常由DNS服務(wù)器來(lái)完成,但是由于DNS系統(tǒng)被動(dòng)的工作機(jī)制導(dǎo)致效率不高。從底層網(wǎng)絡(luò)支持情況來(lái)講,運(yùn)行不同應(yīng)用服務(wù)的虛擬機(jī)對(duì)于網(wǎng)絡(luò)的QoS具有不同的個(gè)性化需求,目前情況下,底層網(wǎng)絡(luò)普遍采用的基于盡量交付機(jī)制的IP協(xié)議對(duì)于個(gè)性化的支持顯然不夠。另外,讓隸屬于不同應(yīng)用服務(wù)的眾多虛擬機(jī)同時(shí)運(yùn)行在同一個(gè)物理網(wǎng)絡(luò)上也造成了管理和帶寬分配的混亂。
因此,本文提出了一種底層網(wǎng)絡(luò)控制管理體系結(jié)構(gòu),通過(guò)將硬件網(wǎng)絡(luò)分割成不同的虛擬網(wǎng)絡(luò)來(lái)實(shí)現(xiàn)對(duì)上層應(yīng)用靈活的支持。不同的虛擬網(wǎng)絡(luò)內(nèi)運(yùn)行隸屬于不同應(yīng)用服務(wù)的虛擬機(jī)。這樣可以根據(jù)應(yīng)用服務(wù)的QoS需求來(lái)決定網(wǎng)絡(luò)所運(yùn)行的協(xié)議及參數(shù)也更加有利于虛擬機(jī)的控制和管理。虛擬網(wǎng)絡(luò)的構(gòu)建也將為數(shù)據(jù)中心的多用戶租賃服務(wù)和云計(jì)算環(huán)境下的資源分配提供配套的靈活管理和帶寬控制體系,進(jìn)一步促進(jìn)虛擬化技術(shù)與數(shù)據(jù)中心的融合。
3.1 對(duì)虛擬機(jī)遷移的支持體系
圖3為虛擬網(wǎng)絡(luò)劃分及控制管理系統(tǒng)示意圖.在開源操作系統(tǒng)的2.5層添加一個(gè)代理與交換機(jī)協(xié)同工作是可行的。本文的思路是借鑒應(yīng)用于Internet骨干網(wǎng)絡(luò)交換機(jī)上的網(wǎng)絡(luò)虛擬化技術(shù),并使駐留在主機(jī)上的代理與可編程交換機(jī)的控制軟件實(shí)時(shí)地交換網(wǎng)絡(luò)運(yùn)行時(shí)參數(shù),以達(dá)到動(dòng)態(tài)調(diào)整各虛擬網(wǎng)絡(luò)帶寬的分配及控制管理參數(shù)的目的。這樣的協(xié)同工作機(jī)制使得不同的虛擬網(wǎng)絡(luò)運(yùn)行不同的網(wǎng)絡(luò)層路由協(xié)議成為可能,這將能夠保證運(yùn)行于不同虛擬網(wǎng)絡(luò)上的應(yīng)用服務(wù)對(duì)于QoS的個(gè)性化需求。
圖3 虛擬網(wǎng)絡(luò)管理體系結(jié)構(gòu)示意圖
2.5層代理的另一個(gè)重要功能就是實(shí)現(xiàn)虛擬機(jī)的迅速遷移,文獻(xiàn)[8—9]都設(shè)計(jì)了2.5層代理的映射功能,通過(guò)將虛擬地址和實(shí)際地址進(jìn)行一次映射以隔離上層應(yīng)用使用的網(wǎng)絡(luò)地址和底層網(wǎng)絡(luò)進(jìn)行交換時(shí)使用的物理地址之間的聯(lián)系。不同的是文獻(xiàn)[8]映射的是服務(wù)地址和位置信息地址,而文獻(xiàn)[9]映射的是虛擬MAC地址和實(shí)際MAC地址。
本文提出的辦法是令每臺(tái)主機(jī)上駐留的代理為每個(gè)虛擬網(wǎng)絡(luò)創(chuàng)建一個(gè)映射表(如圖4所示),用來(lái)記錄網(wǎng)絡(luò)內(nèi)的虛擬機(jī)IP地址與物理主機(jī)MAC地址的對(duì)應(yīng)關(guān)系。代理之間可以實(shí)時(shí)通信,通過(guò)類似路由發(fā)現(xiàn)的分布式通信機(jī)制,周期性更新運(yùn)行于各臺(tái)服務(wù)器上的虛擬主機(jī)與硬件網(wǎng)絡(luò)地址的對(duì)應(yīng)關(guān)系。
在某個(gè)服務(wù)器上建立新的虛擬主機(jī)時(shí),代理會(huì)記錄新的虛擬IP地址與物理主機(jī)MAC地址的對(duì)應(yīng)關(guān)系并在該虛擬網(wǎng)絡(luò)內(nèi)進(jìn)行廣播,這樣各個(gè)代理上對(duì)應(yīng)該虛擬網(wǎng)的映射表都將被更新。當(dāng)虛擬機(jī)間通信時(shí),請(qǐng)求通信的主機(jī)發(fā)送的ARP探測(cè)包將直接被代理捕獲,檢索本機(jī)代理上的映射表,如果有匹配項(xiàng)將直接返回對(duì)應(yīng)的MAC地址,如果沒有,代理將負(fù)責(zé)進(jìn)行廣播以獲得正確的MAC地址。當(dāng)出現(xiàn)服務(wù)器故障時(shí),虛擬主機(jī)遷移到其他服務(wù)器上之后,服務(wù)器上的代理將會(huì)在網(wǎng)絡(luò)中主動(dòng)廣播遷移后虛擬主機(jī)地址與服務(wù)器端口的對(duì)應(yīng)關(guān)系從而加快虛擬機(jī)遷移后的恢復(fù)時(shí)間。
圖4 代理負(fù)責(zé)創(chuàng)建和管理的虛擬機(jī)與MAC地址映射表
3.2虛擬網(wǎng)絡(luò)帶寬分配機(jī)制
本文提出的帶寬分配及控制機(jī)制建立在圖3所示的虛擬網(wǎng)絡(luò)管理體系之上,可編程交換機(jī)負(fù)責(zé)分配帶寬,2.5層代理負(fù)責(zé)參數(shù)的協(xié)調(diào)和反饋。帶寬分配機(jī)制示意圖如圖5所示:
圖5帶寬分配機(jī)制結(jié)構(gòu)圖
每臺(tái)可編程交換機(jī)上都部署一個(gè)這樣的帶寬分配邏輯單元,以便對(duì)于虛擬網(wǎng)內(nèi)的各條鏈路都能夠進(jìn)行分配和控制。在圖5中ri是由主機(jī)上的2.5層代理返回的虛擬機(jī)VMim。網(wǎng)絡(luò)端口的發(fā)送速率,以類似于TCP/IP擁塞窗口慢啟動(dòng)機(jī)制的算法進(jìn)行增減,yi是當(dāng)前虛擬鏈路占用的帶寬,λt是通過(guò)ri和yi計(jì)算出的用于帶寬分配決策的輸入?yún)?shù)。
帶寬分配的目的是在保證所有虛擬網(wǎng)絡(luò)帶寬的總和不超過(guò)物理鏈路最大帶寬的前提下,使所有虛擬網(wǎng)絡(luò)的帶寬利用率達(dá)到最優(yōu),這樣就把帶寬分配問(wèn)題抽象成了一個(gè)最優(yōu)化的數(shù)學(xué)問(wèn)題從而根據(jù)經(jīng)典數(shù)學(xué)算法進(jìn)行求解。本文采用了根據(jù)鏈路的擁塞狀態(tài)反饋來(lái)周期性的分配虛擬網(wǎng)絡(luò)帶寬的方法。擁塞狀態(tài)Skt的計(jì)算函數(shù)如下:
其中t代表時(shí)間,T是一個(gè)時(shí)間周期,口是用于平滑結(jié)果的O,1之間的步迸值。由式(1)可見,虛擬網(wǎng)絡(luò)k在鏈路l上的鏈路擁塞狀態(tài)由其得到的帶寬ykl和鏈路負(fù)載rkl決定。通過(guò)式(1),每個(gè)虛擬網(wǎng)絡(luò)可以動(dòng)態(tài)地調(diào)整所占用的虛擬鏈路的網(wǎng)絡(luò)帶寬。
在交換機(jī)端,目的是讓所有的虛擬鏈路能夠協(xié)同工作以獲得最大利益,這是一個(gè)總體最優(yōu)化問(wèn)題,其數(shù)學(xué)模型如下:
本文關(guān)于帶寬分配機(jī)制的設(shè)計(jì)主要目的是給出運(yùn)行于可編程交換機(jī)上的系統(tǒng)邏輯結(jié)構(gòu),在帶寬分配算法上還可以采用其他的數(shù)學(xué)模型進(jìn)行求解。
4實(shí)驗(yàn)與討論
本文的實(shí)驗(yàn)軟件采用了斯坦福大學(xué)研發(fā)的0penFlow VMLl21仿真平臺(tái)。采用這一工具的原因是目前已經(jīng)有一些廠商(如NEC公司)開始生產(chǎn)基于openFlow的可編程交換機(jī),仿真結(jié)果具有較強(qiáng)的實(shí)際價(jià)值。實(shí)驗(yàn)所用硬件平臺(tái)采用的是IBMX3650服務(wù)器,4核Xeon 3.06 GHz處理器×2,16 GB內(nèi)存,操作系統(tǒng)為CentoS 5。
仿真實(shí)驗(yàn)在OpenFlow VM環(huán)境內(nèi)分別構(gòu)建如圖1所示的傳統(tǒng)樹形分層網(wǎng)絡(luò)結(jié)構(gòu)以及本文提出的如圖2所示的網(wǎng)絡(luò)結(jié)構(gòu)。兩種網(wǎng)絡(luò)結(jié)構(gòu)均采用8口交換機(jī)進(jìn)行構(gòu)造,其中樹形結(jié)構(gòu)的匯聚層及核心層的帶寬為10 Gbps,其余鏈路均為1 Gbps,各網(wǎng)絡(luò)結(jié)構(gòu)部署的服務(wù)器數(shù)量均為128臺(tái)。在構(gòu)建的虛擬網(wǎng)絡(luò)結(jié)構(gòu)上,通過(guò)D-ITG模擬出數(shù)據(jù)中心內(nèi)部的all—to—all通信流量,測(cè)試了在交換機(jī)故障下的網(wǎng)絡(luò)聚合瓶頸吞吐量變化趨勢(shì)。聚合瓶頸吞吐量是網(wǎng)絡(luò)內(nèi)各數(shù)據(jù)流獲得的最小帶寬與網(wǎng)絡(luò)內(nèi)總數(shù)據(jù)流數(shù)量的乘積,它可以反映一個(gè)數(shù)據(jù)中心網(wǎng)絡(luò)拓?fù)涞男阅堋?/P>
由圖6可見,本文提出的體系結(jié)構(gòu)在無(wú)故障情況聚合瓶頸吞吐量3倍于傳統(tǒng)的樹形結(jié)構(gòu),并且隨著交換機(jī)故障率的上升,呈現(xiàn)出更加平滑的下降趨勢(shì)。導(dǎo)致這樣結(jié)果的原因主要是由于傳統(tǒng)樹形結(jié)構(gòu)在高層存在不可避免的對(duì)剖帶寬限制,尤其是當(dāng)某臺(tái)交換機(jī)出現(xiàn)故障時(shí)將給網(wǎng)絡(luò)其他交換機(jī)帶來(lái)很大的負(fù)載,而本文的結(jié)構(gòu)由于采用了更多的交換設(shè)備并充分利用了服務(wù)器的兩塊網(wǎng)卡構(gòu)建網(wǎng)絡(luò),因而網(wǎng)絡(luò)容量和容錯(cuò)性都得到了很大提升。
圖6 聚合瓶頸吞吐量相對(duì)于交換機(jī)故障的變化率
圖7虛擬網(wǎng)絡(luò)吐量變化曲線
從圖7可以看出,兩個(gè)虛擬網(wǎng)絡(luò)的吞吐量收斂迅速(大概經(jīng)過(guò)5個(gè)周期)由于優(yōu)先級(jí)相等,兩個(gè)虛擬網(wǎng)絡(luò)最終占用的帶寬也相等(基本等于實(shí)際物理鏈路帶寬的一半)。該實(shí)驗(yàn)結(jié)果反映了本文提出的虛擬網(wǎng)絡(luò)帶寬分配管理機(jī)制對(duì)于虛擬網(wǎng)絡(luò)帶寬的分配是符合預(yù)先設(shè)計(jì)目標(biāo)的。
5結(jié)論和進(jìn)一步工作
隨著數(shù)據(jù)中心的不斷發(fā)展,特別是云計(jì)算技術(shù)應(yīng)用熱潮的到來(lái),傳統(tǒng)數(shù)據(jù)中心的拓?fù)浣Y(jié)構(gòu)和網(wǎng)絡(luò)體系結(jié)構(gòu)必將面臨變革。為此,本文提出了一種新型的面向云計(jì)算的高性價(jià)比數(shù)據(jù)中心網(wǎng)絡(luò)體系結(jié)構(gòu),給出了網(wǎng)絡(luò)拓?fù)涞臉?gòu)建方式和虛擬網(wǎng)絡(luò)的劃分管理及帶寬分配機(jī)制,為上層的應(yīng)用服務(wù)及資源虛擬化應(yīng)用提供了更靈活的支持。
在構(gòu)建方式上,本文提出的拓?fù)浣Y(jié)構(gòu)雖然采用了兩倍于Clos Network結(jié)構(gòu)的交換機(jī)數(shù)量。但是無(wú)需使用造價(jià)昂貴的高端高性能交換機(jī)并充分利用了服務(wù)器的兩個(gè)網(wǎng)絡(luò)端口。因此在提高數(shù)據(jù)中心構(gòu)建性價(jià)比的同時(shí)大幅提高了網(wǎng)絡(luò)的吞吐量。實(shí)驗(yàn)表明,本文提出的新型低成本網(wǎng)絡(luò)拓?fù)淇梢詫?shí)現(xiàn)更大的網(wǎng)絡(luò)聚合瓶頸吞吐量和更強(qiáng)的容錯(cuò)性能。另外,本文提出的虛擬網(wǎng)絡(luò)帶寬分配機(jī)制工作良好,在網(wǎng)絡(luò)流量變化的情況下能夠迅速收斂,這將為云計(jì)算環(huán)境下資源虛擬化技術(shù)提供支持,并為網(wǎng)絡(luò)虛擬化的發(fā)展提供一定的技術(shù)儲(chǔ)備。
為了應(yīng)對(duì)目前虛擬機(jī)遷移遇到的困難,解決通過(guò)被動(dòng)更新DNS來(lái)實(shí)現(xiàn)遷移的不足,本文提出的基于2.5層代理的方法還需要進(jìn)一步的研究和實(shí)驗(yàn)。下一步主要工作將論證2.5層嵌入程序?qū)τ诓僮飨到y(tǒng)帶來(lái)的開銷以及代理間通信所造成的網(wǎng)絡(luò)開銷的大小及合理性。另外,由于新型拓?fù)浞抡胬щy,所需工作量巨大,而相關(guān)研究中介紹的部分網(wǎng)絡(luò)結(jié)構(gòu)在openFlow VM環(huán)境下的實(shí)現(xiàn)存在一些技術(shù)問(wèn)題,下一步將考慮采用合適的仿真工具對(duì)這些新提出的技術(shù)方案進(jìn)行比較。
核心關(guān)注:拓步ERP系統(tǒng)平臺(tái)是覆蓋了眾多的業(yè)務(wù)領(lǐng)域、行業(yè)應(yīng)用,蘊(yùn)涵了豐富的ERP管理思想,集成了ERP軟件業(yè)務(wù)管理理念,功能涉及供應(yīng)鏈、成本、制造、CRM、HR等眾多業(yè)務(wù)領(lǐng)域的管理,全面涵蓋了企業(yè)關(guān)注ERP管理系統(tǒng)的核心領(lǐng)域,是眾多中小企業(yè)信息化建設(shè)首選的ERP管理軟件信賴品牌。
轉(zhuǎn)載請(qǐng)注明出處:拓步ERP資訊網(wǎng)http://www.hanmeixuan.com/
本文標(biāo)題:面向云計(jì)算的數(shù)據(jù)中心網(wǎng)絡(luò)體系結(jié)構(gòu)設(shè)計(jì)
本文網(wǎng)址:http://www.hanmeixuan.com/html/consultation/1083972047.html