多服務(wù)質(zhì)量約束下基于蜂群優(yōu)化的網(wǎng)絡(luò)流量調(diào)度方法
【技術(shù)領(lǐng)域】
[0001] 本發(fā)明是一種適用于在多QoS(QualityofService,服務(wù)質(zhì)量)約束下,采用基于 多目標(biāo)人工蜂群優(yōu)化算法(Multi-objectiveArtificialBeeColonyAlgorithm)設(shè)計(jì)網(wǎng) 絡(luò)流量調(diào)度方案,實(shí)現(xiàn)多QoS約束下網(wǎng)絡(luò)流量負(fù)載均衡。本技術(shù)屬于計(jì)算機(jī)網(wǎng)絡(luò)領(lǐng)域。
【背景技術(shù)】
[0002] 隨著互聯(lián)網(wǎng)在全球的迅速發(fā)展和各種互聯(lián)網(wǎng)應(yīng)用的快速普及,網(wǎng)絡(luò)用戶日益增 多,用戶對(duì)各種網(wǎng)絡(luò)信息資源的需要及產(chǎn)生的信息越來(lái)越多,現(xiàn)有網(wǎng)絡(luò)的各個(gè)核心部分隨 著業(yè)務(wù)量的提高,訪問(wèn)量和數(shù)據(jù)流量的快速增長(zhǎng),產(chǎn)生的網(wǎng)絡(luò)流量大幅增長(zhǎng)。網(wǎng)絡(luò)中的流量 存在分布不均勻現(xiàn)象,網(wǎng)絡(luò)中有些鏈路因?yàn)檫^(guò)負(fù)荷產(chǎn)生擁塞現(xiàn)象,而另一些鏈路卻處于閑 置狀態(tài),網(wǎng)絡(luò)流量調(diào)度就是針對(duì)當(dāng)前網(wǎng)絡(luò)規(guī)模不斷擴(kuò)大的環(huán)境下,存在的網(wǎng)絡(luò)盲目擴(kuò)張、資 源利用率不高以及流量總體不均衡等問(wèn)題而提出的,同時(shí)流量在調(diào)度過(guò)程中受到多QoS約 束的影響,比如時(shí)延、帶寬、丟包率、時(shí)延抖動(dòng)等,在網(wǎng)絡(luò)中可以通過(guò)保證傳輸?shù)膸?、降?傳送的時(shí)延、降低數(shù)據(jù)的丟包率以及時(shí)延抖動(dòng)等措施來(lái)實(shí)現(xiàn)流量負(fù)載均衡。
[0003] 網(wǎng)絡(luò)流量是網(wǎng)絡(luò)業(yè)務(wù)的最直接載體,網(wǎng)絡(luò)流量的調(diào)度問(wèn)題,能夠直接反映網(wǎng)絡(luò)性 能的好壞,也會(huì)直接影響網(wǎng)絡(luò)性能理想狀態(tài)的網(wǎng)絡(luò)應(yīng)當(dāng)能夠承載任何突發(fā)流量,突發(fā)流量 很容易導(dǎo)致網(wǎng)絡(luò)整體性能的下降,將會(huì)導(dǎo)致網(wǎng)絡(luò)性能嚴(yán)重下降。并且隨著網(wǎng)絡(luò)用戶傳遞的 信息不斷豐富,在網(wǎng)絡(luò)帶寬緊張、成本昂貴的情況下,解決帶寬與網(wǎng)絡(luò)業(yè)務(wù)之間的矛盾,構(gòu) 建快速、穩(wěn)定、高質(zhì)量的網(wǎng)絡(luò),保障關(guān)鍵網(wǎng)絡(luò)業(yè)務(wù)傳輸質(zhì)量,實(shí)現(xiàn)網(wǎng)絡(luò)資源的充分利用,成為 現(xiàn)代化網(wǎng)絡(luò)需要解決方案的重要組成部分?;ヂ?lián)網(wǎng)覆蓋范圍廣、接入用戶多、承載業(yè)務(wù)復(fù) 雜。對(duì)于現(xiàn)代化網(wǎng)絡(luò)覆蓋范圍廣泛,線路資源有限,高速帶寬費(fèi)用昂貴,快速增加的業(yè)務(wù)流 量與有限的帶寬資源之間的矛盾,使得網(wǎng)絡(luò)上的流量很容易產(chǎn)生擁塞,導(dǎo)致業(yè)務(wù)延時(shí)增加、 流量抖動(dòng),用戶網(wǎng)絡(luò)需求無(wú)法滿足。因此,網(wǎng)絡(luò)流量調(diào)度技術(shù)非常重要,分析網(wǎng)絡(luò)流量特性, 優(yōu)化網(wǎng)絡(luò)流量調(diào)度性能,是網(wǎng)絡(luò)流量工程的重要方面。
[0004] 網(wǎng)絡(luò)流量調(diào)度主要研宄在網(wǎng)絡(luò)用戶日益增大,網(wǎng)絡(luò)資源利用率低、流量總體不均 衡等問(wèn)題中,如何通過(guò)流量調(diào)度在多主機(jī)-多服務(wù)器之間進(jìn)行合理的流量負(fù)載分配,并且 在調(diào)度過(guò)程中所受到QoS約束最優(yōu)化。通過(guò)對(duì)網(wǎng)絡(luò)流量的采集和分析,建立流量調(diào)度多目 標(biāo)優(yōu)化函數(shù),將多約束轉(zhuǎn)化成了多目標(biāo)優(yōu)化問(wèn)題,建立流量調(diào)度的數(shù)學(xué)模型,采用基于多目 標(biāo)人工蜂群優(yōu)化算法,實(shí)現(xiàn)對(duì)流量的調(diào)度與調(diào)整,使得流量按需調(diào)度,提升對(duì)用戶的服務(wù)水 平,提高網(wǎng)絡(luò)資源的利用率,使網(wǎng)絡(luò)調(diào)整工作實(shí)現(xiàn)可知、可控,達(dá)到工作集中化、信息化、規(guī) 范化的要求。
【發(fā)明內(nèi)容】
[0005] 技術(shù)問(wèn)題:本發(fā)明的目的是提供一種在多QoS約束下基于蜂群優(yōu)化的網(wǎng)絡(luò)流量調(diào) 度方法,實(shí)現(xiàn)多QoS約束下流量調(diào)度,通過(guò)本方法可以實(shí)現(xiàn)多QoS約束下流量高利用率、低 消耗的流量調(diào)度,流量達(dá)到負(fù)載均衡。
[0006] 技術(shù)方案:本發(fā)明的方法采用基于多目標(biāo)人工蜂群優(yōu)化算法設(shè)計(jì)網(wǎng)絡(luò)流量調(diào)度方 案,實(shí)現(xiàn)多QoS約束下流量調(diào)度。通過(guò)流量的采集和分析,得出多QoS約束對(duì)流量調(diào)度的影 響,建立流量調(diào)度多目標(biāo)優(yōu)化函數(shù),將多約束轉(zhuǎn)化成了多目標(biāo)優(yōu)化問(wèn)題,利用多目標(biāo)優(yōu)化建 立流量調(diào)度的數(shù)學(xué)模型,根據(jù)數(shù)學(xué)模型,采用基于多目標(biāo)人工蜂群優(yōu)化算法通過(guò)不斷迭代, 獲取調(diào)度方案Pareto解集。本發(fā)明結(jié)合Pareto排序機(jī)制、擁擠距離改進(jìn)適應(yīng)度函數(shù),采用 Boltzmann策略進(jìn)行解的選擇,該策略可使算法的全局搜索能力更好,種群的多樣性也能夠 得到提高。利用外部檔案記錄已經(jīng)找到的Pareto解,并利用全局信息指導(dǎo)蜂群的鄰域搜 索,使找到的Pareto最優(yōu)解均勾地分布在真實(shí)Pareto最優(yōu)前端上。根據(jù)實(shí)際情況分析各 目標(biāo)的重要程度,選擇最佳調(diào)度方案,實(shí)現(xiàn)多QoS約束下的流量調(diào)度。
[0007] 本發(fā)明的多服務(wù)質(zhì)量約束下基于蜂群優(yōu)化的網(wǎng)絡(luò)流量調(diào)度方法包含以下的具體 步驟:
[0008] 初始場(chǎng)景設(shè)置:
[0009] 步驟1)設(shè)置網(wǎng)絡(luò)環(huán)境參數(shù):
[0010] 該參數(shù)包括網(wǎng)絡(luò)中主機(jī)的數(shù)量以及每個(gè)主機(jī)需要訪問(wèn)的流量;
[0011] 網(wǎng)絡(luò)中可訪問(wèn)的服務(wù)器數(shù)量,每個(gè)服務(wù)器所承受的負(fù)載流量能力;
[0012] 網(wǎng)絡(luò)中的主機(jī)到達(dá)目的服務(wù)器的時(shí)延、流量比重與帶寬百分比以及跳數(shù);
[0013] 多QoS約束下基于蜂群優(yōu)化的網(wǎng)絡(luò)流量調(diào)度:
[0014] 步驟2)對(duì)網(wǎng)絡(luò)流量采集與分析,分析多QoS約束對(duì)流量調(diào)度的影響,主要考慮的 多QoS約束有主機(jī)到服務(wù)器的時(shí)延、流量比重與帶寬百分比、跳數(shù);建立流量調(diào)度多目標(biāo)優(yōu) 化函數(shù),包括時(shí)延函數(shù)、流量均衡函數(shù)、跳數(shù)函數(shù),將多約束轉(zhuǎn)化成了多目標(biāo)優(yōu)化問(wèn)題,利用 多目標(biāo)優(yōu)化建立流量調(diào)度的數(shù)學(xué)模型;
[0015] 步驟3)根據(jù)所述數(shù)學(xué)模型,初始化多目標(biāo)人工蜂群優(yōu)化算法參數(shù),結(jié)合Pareto排 序機(jī)制、擁擠距離改進(jìn)適應(yīng)度函數(shù),采用Boltzmann策略進(jìn)行解的選擇,利用外部檔案記錄 已經(jīng)找到的Pareto解,并利用全局信息指導(dǎo)蜂群的鄰域搜索,使找到的Pareto最優(yōu)解均勻 地分布在真實(shí)Pareto最優(yōu)前端上;通過(guò)不斷迭代,獲取調(diào)度方案Pareto前端解集;
[0016] 步驟4)根據(jù)實(shí)際情況分析各目標(biāo)的重要程度,選擇最佳調(diào)度方案;
[0017] 步驟5)控制服務(wù)器端將最佳調(diào)度方案結(jié)果發(fā)送給每個(gè)主機(jī);
[0018] 步驟6)各主機(jī)在收到命令后,將根據(jù)最佳調(diào)度方案訪問(wèn)目的網(wǎng)絡(luò)服務(wù)器。
[0019]其中:
[0020] 步驟3)中,使找到的Pareto最優(yōu)解均勾地分布在真實(shí)Pareto最優(yōu)前端上;將其 歸納為以下幾個(gè)必要的步驟:
[0021] 3. 1.)初始化種群,設(shè)定蜜源蜜量參數(shù)limit以及最大迭代次數(shù)maxcycle,設(shè) cycle= 0,外部檔案集合M為空集,按照初始化公式隨機(jī)生成2N個(gè)蜜源,構(gòu)成規(guī)模為2N的 初始種群Pd;
[0022] 3. 2.)對(duì)Pcycle利用快速非支配排序法得到非劣前端集F=(F:,F(xiàn)2,…Fm);
[0023] 3. 3.)將非劣前端依次加入一個(gè)容量為N的空集H,如果加入Fi(0〈i〈m)時(shí),H內(nèi) 個(gè)體超過(guò)N個(gè),則將匕的每個(gè)元素按擁擠密度升序排列,依次加入H內(nèi)直至被填滿;
[0024] 3.4.)將Fi加入外部檔案中,若滿足cycle達(dá)到maxcycle,算法結(jié)束,外部檔案中 的解就是要得到的Pareto解集,否則Peyele+1=H,轉(zhuǎn)3. 5);
[0025] 3.5.)選取外部檔案中擁擠距離最大的個(gè)體作為人工蜂群的全局信息,令Peyc;le+1 中的蜜源為雇傭蜂蜜源,?。7&+1中的每只雇傭蜂在全局信息的指引下對(duì)相應(yīng)蜜源進(jìn)行一次 鄰域搜索,采用貪婪機(jī)制選取蜜源,更新外部檔案;待雇傭蜂搜索完畢通過(guò)搖擺舞傳達(dá)觀 察蜂,觀察蜂通過(guò)蜜源適應(yīng)度值比較當(dāng)前蜜源對(duì)其的吸引度,用Bo1tzmann選擇策略選擇 一個(gè)雇傭蜂蜜源,并在全局信息指引下進(jìn)行鄰域搜索,采用貪婪機(jī)制選取蜜源,更新外部檔 案;
[0026] 3. 6.)所有觀察蜂選擇并搜索完畢后,將當(dāng)代種群中沒(méi)有更新的蜜源蜜量減1,若 蜜源蜜量小于limit并且不在當(dāng)前種群的非支配解集中則放棄該蜜源,該蜜源雇傭蜂變成 偵查蜂,并隨機(jī)產(chǎn)生新的蜜源加入?。 7^+1中;
[0027] 3. 7. )cycle=cycle+1,跳轉(zhuǎn)至 3. 2)。
[0028] 步驟4)中所述的根據(jù)實(shí)際情況分析各目標(biāo)的重要程度選擇最佳調(diào)度方案的方法 將其歸納為以下幾點(diǎn):
[0029] 4. 1.)當(dāng)實(shí)際情況主要考慮流量調(diào)度的實(shí)時(shí)性時(shí),增加時(shí)延函數(shù)的重要程度,選取 時(shí)延函數(shù)值最小的調(diào)度方案,以保證數(shù)據(jù)傳輸?shù)膶?shí)時(shí)性;
[0030] 4. 2.)當(dāng)實(shí)際情況主要考慮流量調(diào)度的流量負(fù)載均衡時(shí),增加流量均衡函數(shù)的重 要程度,選取流量均衡函數(shù)值最小的調(diào)度方案,以保證網(wǎng)絡(luò)每個(gè)服務(wù)器負(fù)載均衡;
[0031] 4. 3.)當(dāng)實(shí)際情況主要考慮流量調(diào)度的距離時(shí),增加跳數(shù)函數(shù)的重要程度,選取跳 數(shù)函數(shù)值最小的調(diào)度方案,以保證數(shù)據(jù)傳輸距離最小;
[0032] 4. 4.)當(dāng)實(shí)際情況同時(shí)考慮多個(gè)目標(biāo)時(shí),綜合增加其函數(shù)的重要程度,綜合選取