具有可預(yù)測性能的云數(shù)據(jù)中心兩層帶寬分配方法及系統(tǒng)的制作方法
【技術(shù)領(lǐng)域】
[0001] 本發(fā)明設(shè)及計(jì)算機(jī)技術(shù)領(lǐng)域,具體設(shè)及一種具有可預(yù)測性能的云數(shù)據(jù)中屯、兩層帶 寬分配方法及系統(tǒng)。
【背景技術(shù)】
[0002] 隨著云計(jì)算技術(shù)的不斷發(fā)展,由于其簡單的按需付費(fèi)模式和廉價(jià)的部署與維護(hù)成 本,越來越多的企業(yè)選擇將他們的應(yīng)用遷移部署到云平臺(tái)上。成本和性能是云租戶最關(guān)屯、 的問題。然而,現(xiàn)有商用云平臺(tái)的網(wǎng)絡(luò)資源是在租戶間W盡力而為的方式所共享。如Amazon EC2保證了租戶對于CPU,內(nèi)存和硬盤的需求,卻不能提供網(wǎng)絡(luò)帶寬的保證。運(yùn)使得云服務(wù)提 供商所提供服務(wù)的性能和成本具有較高的不確定性。所W缺乏帶寬保證會(huì)產(chǎn)生一系列問 題,阻礙企業(yè)應(yīng)用遷移到公有云。同時(shí),也會(huì)使得租戶申請的虛擬機(jī)上跑的應(yīng)用的不可預(yù)測 性:由于運(yùn)行期間網(wǎng)絡(luò)帶寬的不一致,同一個(gè)云應(yīng)用的運(yùn)行時(shí)間是不同的,相應(yīng)的,根據(jù)現(xiàn) 有的定價(jià)模型,虛擬機(jī)的使用費(fèi)用也將是不同的。運(yùn)些影響因素主要是由云租戶間不同的 期望性能與獲得性能的不一致而造成的。
[0003] 盡管在共享的網(wǎng)絡(luò)基礎(chǔ)設(shè)施上實(shí)現(xiàn)有帶寬保證的網(wǎng)際資源管理是固有的難題,但 學(xué)術(shù)上和行業(yè)中已經(jīng)提出了有很多工作來解決運(yùn)個(gè)難題。但目前的方案存在很大的局限 性:1)現(xiàn)有的粗粒度網(wǎng)絡(luò)抽象模型不能完整地表達(dá)租戶的網(wǎng)絡(luò)需求,并且在需求層面浪費(fèi) 了部分帶寬資源;2)虛擬機(jī)放置算法沒有充分考慮租戶角度的需求;3)當(dāng)前的運(yùn)行時(shí)機(jī)制 不能實(shí)現(xiàn)未使用帶寬在有保證租戶和無保證租戶間的公平分配。
【發(fā)明內(nèi)容】
[0004] 針對現(xiàn)有技術(shù)中的缺陷,本發(fā)明提供了一種具有可預(yù)測性能的云數(shù)據(jù)中屯、兩層帶 寬分配方法及系統(tǒng),解決了現(xiàn)有的帶寬分配方法存在的不能完整地表達(dá)租戶的網(wǎng)絡(luò)需求、 在需求層面浪費(fèi)帶寬資源、無法充分考慮租戶的需求、W及不能實(shí)現(xiàn)未使用的帶寬資源在 有保證租戶和無保證租戶間公平分配的問題。
[0005] 為解決上述問題,第一方面,本發(fā)明提供了一種具有可預(yù)測性能的云數(shù)據(jù)中屯、兩 層帶寬分配方法,包括:
[0006] 在云租戶層面,根據(jù)細(xì)粒度虛擬集群FGVC網(wǎng)絡(luò)抽象模型對租戶發(fā)送的包含網(wǎng)絡(luò)需 求的虛擬機(jī)請求進(jìn)行帶寬保證優(yōu)化;
[0007] W及,根據(jù)預(yù)設(shè)分配算法對優(yōu)化后的虛擬機(jī)請求進(jìn)行物理機(jī)及相應(yīng)的帶寬資源分 配;
[0008] 在應(yīng)用層面,采用E-F運(yùn)行時(shí)機(jī)制將物理機(jī)及相應(yīng)的帶寬資源公平地分配給有保 證租戶和無保證租戶。
[0009] 進(jìn)一步地,所述根據(jù)細(xì)粒度虛擬集群FGVC網(wǎng)絡(luò)抽象模型對租戶發(fā)送的包含網(wǎng)絡(luò)需 求的虛擬機(jī)請求進(jìn)行帶寬保證優(yōu)化,包括:根據(jù)所述虛擬機(jī)請求確定虛擬機(jī)的剩余帶寬,將 所述虛擬機(jī)的剩余帶寬平均分給與所述虛擬機(jī)連接的未分配的鏈路,W及將虛擬機(jī)兩端帶 寬保證中的最小值作為虛擬機(jī)間帶寬保證。
[0010] 進(jìn)一步地,所述根據(jù)預(yù)設(shè)分配算法對優(yōu)化后的虛擬機(jī)請求進(jìn)行物理機(jī)及相應(yīng)的帶 寬資源分配,包括:
[0011] 根據(jù)下述=種預(yù)設(shè)分配算法中的任意一種對優(yōu)化后的虛擬機(jī)請求進(jìn)行物理機(jī)及 相應(yīng)的帶寬資源分配:
[0012] 第一預(yù)設(shè)分配算法:從物理機(jī)層至根路由層尋找第一個(gè)可W滿足兩個(gè)條件的子 樹,包括一臺(tái)物理機(jī)、一個(gè)ToR交換機(jī)、一個(gè)匯聚層交換機(jī)或一個(gè)核屯、層交換機(jī);第一個(gè)條件 是子樹中空閑的虛擬機(jī)槽大于等于租戶請求的虛擬機(jī)數(shù);第二個(gè)條件是該子樹下的帶寬滿 足虛擬機(jī)請求的帶寬需求;
[0013] 第二預(yù)設(shè)分配算法:物理機(jī)層至根路由層尋找第一個(gè)可W滿足兩個(gè)條件的子樹, 包括一臺(tái)物理機(jī)、一個(gè)ToR交換機(jī)、一個(gè)匯聚層交換機(jī)或一個(gè)核屯、層交換機(jī);第一個(gè)條件是 子樹中空閑的虛擬機(jī)槽大于等于租戶請求的虛擬機(jī)數(shù);第二個(gè)條件是該子樹下的剩余帶寬 是最小的,且可滿足租戶的帶寬需求;
[0014] 第=預(yù)設(shè)分配算法:物理機(jī)層至根路由層尋找第一個(gè)可W滿足兩個(gè)條件的子樹, 包括一臺(tái)物理機(jī)、一個(gè)ToR交換機(jī)、一個(gè)匯聚層交換機(jī)或一個(gè)核屯、層交換機(jī);第一個(gè)條件是 子樹中空閑的虛擬機(jī)槽大于等于租戶請求的虛擬機(jī)數(shù);第二個(gè)條件是子樹中剩余帶寬的總 數(shù)最大,且可滿足虛擬機(jī)請求中的帶寬需求。
[0015] 進(jìn)一步地,在所述根據(jù)預(yù)設(shè)分配算法對優(yōu)化后的虛擬機(jī)請求進(jìn)行物理機(jī)及相應(yīng)的 帶寬資源分配之前,所述方法還包括:根據(jù)預(yù)設(shè)排序算法對優(yōu)化后的虛擬機(jī)請求進(jìn)行排序。
[0016] 進(jìn)一步地,所述根據(jù)預(yù)設(shè)排序算法對優(yōu)化后的虛擬機(jī)請求進(jìn)行排序,包括:
[0017] 根據(jù)下述五種預(yù)設(shè)排序算法中的任意一種對優(yōu)化后的虛擬機(jī)請求進(jìn)行排序:
[0018] 先來先服務(wù)FCFS:按到來順序執(zhí)行;
[0019] 最小利潤率優(yōu)先SRRF:擁有最小利潤率的任務(wù)先執(zhí)行;
[0020] 最大利潤率優(yōu)先LRRF:擁有最大利潤率的任務(wù)先執(zhí)行;
[0021] 最大權(quán)重優(yōu)先:在排隊(duì)調(diào)度機(jī)制中引入了權(quán)重,每個(gè)虛擬機(jī)請求的權(quán)重是該虛擬 機(jī)請求的利潤率乘W等待時(shí)間或除W等待時(shí)間。
[0022] 進(jìn)一步地,所述采用E-F運(yùn)行時(shí)機(jī)制將物理機(jī)及相應(yīng)的帶寬資源公平地分配給有 保證租戶和無保證租戶包括:當(dāng)存在未被分配的帶寬資源時(shí),按服務(wù)器粒度為無保證租戶 設(shè)定帶寬保證。
[0023] 第二方面,本發(fā)明還提供了一種具有可預(yù)測性能的云數(shù)據(jù)中屯、兩層帶寬分配系 統(tǒng),包括:云租戶層面處理模塊和應(yīng)用層面處理模塊;
[0024] 所述云租戶層面處理模塊,用于根據(jù)細(xì)粒度虛擬集群FGVC網(wǎng)絡(luò)抽象模型對租戶發(fā) 送的包含網(wǎng)絡(luò)需求的虛擬機(jī)請求進(jìn)行帶寬保證優(yōu)化;
[0025] W及,用于根據(jù)預(yù)設(shè)分配算法對優(yōu)化后的虛擬機(jī)請求進(jìn)行物理機(jī)及相應(yīng)的帶寬資 源分配;
[0026] 應(yīng)用層面處理模塊,用于采用E-F運(yùn)行時(shí)機(jī)制將物理機(jī)及相應(yīng)的帶寬資源公平地 分配給有保證租戶和無保證租戶。
[0027] 進(jìn)一步地,所述云租戶層面處理模塊具體用于:根據(jù)所述虛擬機(jī)請求確定虛擬機(jī) 的剩余帶寬,將所述虛擬機(jī)的剩余帶寬平均分給與所述虛擬機(jī)連接的未分配的鏈路,W及 將虛擬機(jī)兩端帶寬保證中的最小值作為虛擬機(jī)間帶寬保證。
[00%]進(jìn)一步地,所述云租戶層面處理模塊具體用于:
[0029] 根據(jù)下述=種預(yù)設(shè)分配算法中的任意一種對優(yōu)化后的虛擬機(jī)請求進(jìn)行物理機(jī)及 相應(yīng)的帶寬資源分配:
[0030] 第一預(yù)設(shè)分配算法:從物理機(jī)層至根路由層尋找第一個(gè)可W滿足兩個(gè)條件的子 樹,包括一臺(tái)物理機(jī)、一個(gè)ToR交換機(jī)、一個(gè)匯聚層交換機(jī)或一個(gè)核屯、層交換機(jī);第一個(gè)條件 是子樹中空閑的虛擬機(jī)槽大于等于租戶請求的虛擬機(jī)數(shù);第二個(gè)條件是該子樹下的帶寬滿 足虛擬機(jī)請求的帶寬需求;
[0031] 第二預(yù)設(shè)分配算法:物理機(jī)層至根路由層尋找第一個(gè)可W滿足兩個(gè)條件的子樹, 包括一臺(tái)物理機(jī)、一個(gè)ToR交換機(jī)、一個(gè)匯聚層交換機(jī)或一個(gè)核屯、層交換機(jī);第一個(gè)條件是 子樹中空閑的虛擬機(jī)槽大于等于租戶請求的虛擬機(jī)數(shù);第二個(gè)條件是該子樹下的剩余帶寬 是最小的,且可滿足租戶的帶寬需求;
[0032] 第=預(yù)設(shè)分配算法:物理機(jī)層至根路由層尋找第一個(gè)可W滿足兩個(gè)條件的子樹, 包括一臺(tái)物理機(jī)、一個(gè)ToR交換機(jī)、一個(gè)匯聚層交換機(jī)或一個(gè)核屯、層交換機(jī);第一個(gè)條件是 子樹中空閑的虛擬機(jī)槽大于等于租戶請求的虛擬機(jī)數(shù);第二個(gè)條件是子樹中剩余帶寬的總 數(shù)最大,且可滿足虛擬機(jī)請求中的帶寬需求。
[0033] 進(jìn)一步地,所述應(yīng)用層面處理模塊具體用于:當(dāng)存在未被分配的帶寬資源時(shí),按服 務(wù)器粒度為無保證租戶設(shè)定帶寬保證。
[0034] 由上述技術(shù)方案可知,本發(fā)明所述的具有可預(yù)測性能的云數(shù)據(jù)中屯、兩層帶寬分配 方法及系統(tǒng),在云租戶層面采用了細(xì)粒度虛擬集群FGVC網(wǎng)絡(luò)抽象模型對租戶發(fā)送的包含網(wǎng) 絡(luò)需求的虛擬機(jī)請求進(jìn)行了帶寬保證優(yōu)化,并根據(jù)預(yù)設(shè)分配算法對優(yōu)化后的虛擬機(jī)請求進(jìn) 行物理機(jī)及相應(yīng)的帶寬資源分配;在應(yīng)用層面,采用了 E-F運(yùn)行時(shí)機(jī)制將物理機(jī)及相應(yīng)的帶 寬資源公平地分配給有保證租戶和無保證租戶,從而解決了現(xiàn)有的帶寬分配方法存在的不 能完整地表達(dá)租戶的網(wǎng)絡(luò)需求、在需求層面浪費(fèi)帶寬資源、無法充分考慮租戶的需求、W及 不能實(shí)現(xiàn)未使用的帶寬資源在有保證租戶和無保證租戶間公平分配的問題。
【附圖說明】
[0035] 為了更清楚地說明本發(fā)明實(shí)施例或現(xiàn)有技術(shù)中的技術(shù)方案,下面將對實(shí)施例或現(xiàn) 有技術(shù)描述中所需要使用的附圖作簡單地介紹,顯而易見地,下面描述中的附圖是本發(fā)明 的一些實(shí)施例,對于本領(lǐng)域普通技術(shù)人員來講,在不付出創(chuàng)造性勞動(dòng)的前提下,還可W根據(jù) 運(yùn)些附圖獲得其他的附圖。
[0036] 圖1是本發(fā)明第一個(gè)實(shí)施例提供的具有可預(yù)測性能的云數(shù)據(jù)中屯、兩層帶寬分配方 法的流程圖;
[0037] 圖2是本發(fā)明第二個(gè)實(shí)施例提供的具有可預(yù)測性能的云數(shù)據(jù)中屯、兩層帶寬分配方 法的流程圖;
[0038] 圖3是Sponge化t系統(tǒng)實(shí)現(xiàn)步驟的示意圖;
[0039] 圖4a是一個(gè)軟管模型示意圖;
[0040] 圖4b是一個(gè)虛擬機(jī)連接圖(VCG)的示意圖;
[0041 ] 圖5a是一個(gè)MapReduce虛擬機(jī)群的VCG圖;
[0042] 圖化是是一個(gè)典型的S層網(wǎng)絡(luò)應(yīng)用的VCG圖;
[0043] 圖6a是一個(gè)FGV村青求示意圖;
[0044] 圖化是FGV對莫型優(yōu)化過程示意圖;
[0045] 圖7是兩階段虛擬機(jī)放置示意圖;
[0046] 圖8a是一條物理鏈路上的一種E-F運(yùn)行時(shí)機(jī)制示意圖;
[0047] 圖8b是一條物理鏈路上的另一種E-F運(yùn)行時(shí)機(jī)制示意圖;
[004引圖9是樹狀拓?fù)渲蠩-F運(yùn)行時(shí)機(jī)制示意圖;
[0049] 圖10是不同應(yīng)用的帶寬節(jié)省量示意圖;
[0050] 圖11是不同組合的完成時(shí)間示意圖;
[0051 ]圖是利潤率示意圖;
[0052] 圖12b是虛擬機(jī)利用率(每秒)示意圖;
[0053] 圖13a是不同平均帶寬大小的完成時(shí)間示意圖;
[0054] 圖13b是不同平臺(tái)負(fù)載下的完成時(shí)間示意圖;
[0055] 圖14a和圖14b是不同組合的等待時(shí)間和隊(duì)列長度不意圖;
[0056] 圖15a和圖15b是每個(gè)請求的等待時(shí)間和隊(duì)列長度隨時(shí)間的變化示意圖;
[0057] 圖16a和圖16b是不同平均帶寬大小和平臺(tái)負(fù)載下的平均等待時(shí)間示意圖;
[0058] 圖17是實(shí)驗(yàn)平臺(tái)拓?fù)浣Y(jié)構(gòu)示意圖;
[0059] 圖18a和圖18b是多對一的實(shí)驗(yàn)場景不意圖;
[0060] 圖19a和圖19b是多對一的兩種情景;
[0061 ] 圖20是MapReduce實(shí)驗(yàn)的CDF示意圖;
[0062] 圖21是本發(fā)明第=個(gè)實(shí)施例提供的具有可預(yù)測性能的云數(shù)據(jù)中屯、兩層帶寬分配 系統(tǒng)的結(jié)構(gòu)示意圖。
【具體實(shí)施方式】
[0063] 為使本發(fā)明實(shí)施例的目的、技術(shù)方案和優(yōu)點(diǎn)更加清楚,下面將結(jié)合本發(fā)明實(shí)施例 中的附圖,對本發(fā)明實(shí)施例中的技術(shù)方案進(jìn)行清楚、完整的描述,顯然,所描述的實(shí)施例是 本發(fā)明一部分實(shí)施例,而不是全部的實(shí)施例?;诒景l(fā)明中的實(shí)施例,本領(lǐng)域普通技術(shù)人員 在沒有作出創(chuàng)造性勞動(dòng)前提下所獲得的所有其他發(fā)明,都屬于本發(fā)明保護(hù)的范圍。
[0064] 圖1示出了本發(fā)明第一個(gè)實(shí)施例提供的具有可預(yù)測性能的云數(shù)據(jù)中屯、兩層帶寬分 配方法的流程圖,如圖1所示,本實(shí)施例的具有可預(yù)測性能的云數(shù)據(jù)中屯、兩層帶寬分配方法 包括如下步驟:
[0065] 步驟101:在云租戶層面,根據(jù)細(xì)粒度虛擬集群FGVC網(wǎng)絡(luò)抽象模型對租戶發(fā)送的包 含網(wǎng)絡(luò)需求的虛擬機(jī)請求進(jìn)行帶寬保證優(yōu)化;
[0066] W及,根據(jù)預(yù)設(shè)分配算法對優(yōu)化后的虛擬機(jī)請求進(jìn)行物理機(jī)及相應(yīng)的帶寬資源分 配。
[006