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