摘要:文中提出了一種新穎的異構(gòu)服務(wù)器負(fù)載均衡方法,在傳統(tǒng)的均衡系統(tǒng)吞吐量的基礎(chǔ)上,考慮到各服務(wù)器的處理能力,通過(guò)加入服務(wù)器處理能力權(quán)重和概率選擇向量,對(duì)每一個(gè)到來(lái)的請(qǐng)求計(jì)算其概率向量進(jìn)行任務(wù)分配。這種方法從理論上分析應(yīng)能解決系統(tǒng)調(diào)度方面資源的耗費(fèi)最小的問(wèn)題,對(duì)不同性能的服務(wù)器最大可能的保持負(fù)載平衡,并且使客戶請(qǐng)求在最短時(shí)間內(nèi)得到回復(fù)。而實(shí)驗(yàn)也表明,該方法是有效的。
關(guān)鍵詞:異構(gòu)服務(wù)器;負(fù)載均衡;服務(wù)器處理能力權(quán)重;概率選擇向量;系統(tǒng)調(diào)度
中圖分類號(hào):TP301 文獻(xiàn)標(biāo)識(shí)碼:A 文章編號(hào):1009-3044(2013)10-2367-04
1 概述
在網(wǎng)絡(luò)迅速發(fā)展的過(guò)程中,每年網(wǎng)絡(luò)的用戶不斷遞增,造成一些網(wǎng)絡(luò)業(yè)務(wù)的要求也隨之提高,數(shù)據(jù)庫(kù)日訪問(wèn)量的不斷遞增,給服務(wù)器的處理能力要求也帶來(lái)了同步的增長(zhǎng)需求。在這樣的情況下,如果按照傳統(tǒng)的硬件升級(jí)方法是不能滿足不斷增長(zhǎng)的需求的,而且面對(duì)業(yè)務(wù)量的不斷提升,硬件的升級(jí)會(huì)造成資源的浪費(fèi)和高額的成本投入。因此需要用軟件的方法來(lái)均衡網(wǎng)絡(luò)的信息流量,這就是目前比較流行的負(fù)載均衡方法。
負(fù)載均衡 [1](Outbound Load Balancing)是通過(guò)人為的方法來(lái)簡(jiǎn)單有效的擴(kuò)大服務(wù)群體,增加服務(wù)器吞吐量和數(shù)據(jù)處理能力,或者通過(guò)擴(kuò)展設(shè)備來(lái)達(dá)到滿足數(shù)據(jù)量不斷增長(zhǎng)的需求,它的實(shí)現(xiàn)簡(jiǎn)單,是建立在現(xiàn)有的網(wǎng)絡(luò)之上,效果比較明顯。負(fù)載均衡的含義有兩個(gè)方面 [2]:首先是集群(clustering)技術(shù),它是將到來(lái)的處理比較復(fù)雜耗時(shí)的負(fù)載分散到多臺(tái)處理器上進(jìn)行處理,然后匯總各處理器的處理結(jié)果,對(duì)外來(lái)說(shuō)整個(gè)系統(tǒng)的處理能力都得到了一個(gè)質(zhì)的提升。第二層含義就是;為了加快服務(wù)器對(duì)用戶的響應(yīng)速度,減少用戶等待時(shí)間,把到來(lái)的訪問(wèn)請(qǐng)求按照一定的算法分配到不同的節(jié)點(diǎn)上來(lái)處理,用以提高處理響應(yīng)速度的目的,這主要針對(duì)一些用戶響應(yīng)類的應(yīng)用服務(wù)器。
2 負(fù)載均衡算法
負(fù)載均衡算法是負(fù)載技術(shù)的調(diào)度算法,通過(guò)負(fù)載均衡算法將客戶端的請(qǐng)求分配給不同的服務(wù)器以達(dá)到網(wǎng)絡(luò)信息均衡的目的。
3 改進(jìn)后的算法及仿真環(huán)境搭建
常用的負(fù)載均衡算法適用于服務(wù)器同構(gòu)情況下的網(wǎng)絡(luò)負(fù)載均衡,對(duì)于異構(gòu)系統(tǒng)來(lái)說(shuō)其使用性能在實(shí)際應(yīng)用中并不是很好,因此為了提高異構(gòu)系統(tǒng)服務(wù)器的性能,對(duì)常用的算法進(jìn)行改進(jìn)使之適應(yīng)在異構(gòu)情況下的應(yīng)用,提高服務(wù)器系統(tǒng)數(shù)據(jù)負(fù)載性能。
3.1 改進(jìn)后的負(fù)載均衡算法
對(duì)于改進(jìn)后的算法,從理論上分析應(yīng)能滿足在系統(tǒng)調(diào)度方面達(dá)到資源耗費(fèi)最小,不同性能的異構(gòu)服務(wù)器最大可能的保持負(fù)載平衡,并且使客戶請(qǐng)求盡量在最短時(shí)間內(nèi)得到回復(fù)。對(duì)于改進(jìn)后的算法可以利用仿真軟件進(jìn)行算法之間的對(duì)比來(lái)確認(rèn)改進(jìn)后的算法的有效性。
3.2 OPNET負(fù)載均衡算法仿真環(huán)境搭建
優(yōu)化網(wǎng)絡(luò)工程工具 [5](optimized network engineering tool,OPNET)是目前最常用的商用網(wǎng)絡(luò)仿真軟件之一。該軟件對(duì)于進(jìn)行通信網(wǎng)絡(luò)和分發(fā)系統(tǒng)的模擬與仿真實(shí)驗(yàn)有良好的效果,它可通過(guò)離散事件的仿真,分析模型或者算法來(lái)優(yōu)化系統(tǒng)行為和性能,幫助客戶進(jìn)行網(wǎng)絡(luò)結(jié)構(gòu)的設(shè)計(jì),網(wǎng)絡(luò)性能的分析,網(wǎng)絡(luò)模型的構(gòu)建和網(wǎng)絡(luò)行為的管理。它涉及到網(wǎng)絡(luò)仿真的各個(gè)階段,如模型設(shè)計(jì)、仿真、數(shù)據(jù)搜集以及數(shù)據(jù)分析。
在仿真實(shí)驗(yàn)程序的整個(gè)調(diào)度流程中,把數(shù)據(jù)包重新修改地址分配給后臺(tái)服務(wù)器有一定的策略算法,這些算法用來(lái)保證請(qǐng)求數(shù)據(jù)包均衡分配給后臺(tái)服務(wù)器,其中我們的仿真實(shí)驗(yàn)中就加入了兩種分配算法,也就是常說(shuō)的負(fù)載均衡算法,通過(guò)對(duì)比pick-kx算法和pick-kw算法,來(lái)顯示修改算法的實(shí)用效果。
4VqP1w5GXxBnd554hM8oVvnCP5xml3cmU8RgX5rn9lvo= 實(shí)驗(yàn)與分析
針對(duì)以上搭建的仿真環(huán)境,本試驗(yàn)選擇仿真中的三臺(tái)服務(wù)器的負(fù)荷作為仿真統(tǒng)計(jì)量,同時(shí)利用OPNET Modeler特有組件對(duì)仿真結(jié)果可以比較的特點(diǎn),將三臺(tái)服務(wù)器的仿真數(shù)據(jù)的仿真結(jié)果進(jìn)行了統(tǒng)一比較。因在構(gòu)建網(wǎng)絡(luò)拓?fù)鋾r(shí)配置的服務(wù)器處理能力不同,因此很方便看到算法比較的結(jié)果。
參考文獻(xiàn):
[1] 黃欣,楊帆.網(wǎng)絡(luò)負(fù)載平衡技術(shù)應(yīng)用[J].遼陽(yáng)石油化工高等專科學(xué)校學(xué)報(bào),2002(4).
[2] 郭成城,晏蒲柳.一種異構(gòu)Web服務(wù)器集群動(dòng)態(tài)負(fù)載均衡算法[J].計(jì)算機(jī)學(xué)報(bào),2005,28(2):179-184.
[3] 陳志剛,許偉,曾志文.一種基于預(yù)測(cè)的動(dòng)態(tài)負(fù)載均衡模型及算法研究[J].計(jì)算機(jī)工程,2004(23).
[4] 王霜,修保新,肖衛(wèi)東.Web服務(wù)器集群的負(fù)載均衡算法研究[J].計(jì)算機(jī)工程,2004(25).
[5] 王文博,張金文.OPNET Modeler與網(wǎng)絡(luò)仿真[M].北京:人民郵電出版社,2003:68-138.
[6] 廖艷達(dá).基于OPNET的Web集群負(fù)載均衡仿真研究[D].桂林:廣西師范大學(xué),2007:25-28.
[7] Takenaka T,Kato S.Adaptive load balancing content address hashing routing for reverse proxy servers, Communications[C].2004 IEEE International Conference on,2004:1522-1526.
[8] Zheng Shiyuan,Liu Jun.A global strategy for controlling document distribution in confidential document management system[C].Communication Software and Networks (ICCSN),2011 IEEE 3rd International Conference on, 2011:410-415.
[9] 趙成貴.互聯(lián)網(wǎng)絡(luò)負(fù)載平衡理論與算法[M].北京:科學(xué)出版社,2002:12-15.
[10] Cheriton D D. Multicast Routing in DatagramInternetworks And Extended LANs[C].In ACM Transactions on Computer Systems May 2010,2010:122-125.