當(dāng)前,無論在企業(yè)網(wǎng)、園區(qū)網(wǎng)還是在廣域網(wǎng)如Internet上,業(yè)務(wù)量的發(fā)展都超出了過去最樂觀的估計(jì),上網(wǎng)熱潮風(fēng)起云涌,新的應(yīng)用層出不窮,即使按照當(dāng)
時(shí)最優(yōu)配置建設(shè)的網(wǎng)絡(luò),也很快會(huì)感到吃不消。尤其是各個(gè)網(wǎng)絡(luò)的核心部分,其數(shù)據(jù)流量和計(jì)算強(qiáng)度之大,使得單一設(shè)備根本無法承擔(dān),而如何在完成同樣功能的多
個(gè)網(wǎng)絡(luò)設(shè)備之間實(shí)現(xiàn)合理的業(yè)務(wù)量分配,使之不致于出現(xiàn)一臺(tái)設(shè)備過忙、而別的設(shè)備卻未充分發(fā)揮處理能力的情況,就成了一個(gè)問題,負(fù)載均衡機(jī)制也因此應(yīng)運(yùn)而
生。
負(fù)載均衡建立在現(xiàn)有網(wǎng)絡(luò)結(jié)構(gòu)之上,它提供了一種廉價(jià)有效的方法擴(kuò)展服務(wù)器帶寬和增加吞吐量,加強(qiáng)網(wǎng)絡(luò)數(shù)據(jù)處理能力,提高網(wǎng)絡(luò)的靈活性和
可用性。它主要完成以下任務(wù):解決網(wǎng)絡(luò)擁塞問題,服務(wù)就近提供,實(shí)現(xiàn)地理位置無關(guān)性
;為用戶提供更好的訪問質(zhì)量;提高服務(wù)器響應(yīng)速度;提高服務(wù)器及其他資源的利用效率;避免了網(wǎng)絡(luò)關(guān)鍵部位出現(xiàn)單點(diǎn)失效。
對(duì)一個(gè)網(wǎng)絡(luò)的負(fù)載均衡應(yīng)用,可以從網(wǎng)絡(luò)的不同層次入手,具體情況要看對(duì)網(wǎng)絡(luò)瓶頸所在之處的具體分析,大體上不外乎從傳輸鏈路聚合、采用更高層網(wǎng)絡(luò)交換技術(shù)和設(shè)置服務(wù)器集群策略三個(gè)角度實(shí)現(xiàn)。
■傳輸鏈路聚合
為了支持與日俱增的高帶寬應(yīng)用,越來越多的PC機(jī)使用更加快速的鏈路連入網(wǎng)絡(luò)。而網(wǎng)絡(luò)中的業(yè)務(wù)量分布是不平衡的,核心高、邊緣低,關(guān)鍵部門高、一
般部門低。伴隨計(jì)算機(jī)處理能力的大幅度提高,人們對(duì)多工作組局域網(wǎng)的處理能力有了更高的要求。當(dāng)企業(yè)內(nèi)部對(duì)高帶寬應(yīng)用需求不斷增大時(shí)(例如Web訪問、文
檔傳輸及內(nèi)部網(wǎng)連接),局域網(wǎng)核心部位的數(shù)據(jù)接口將產(chǎn)生瓶頸問題,瓶頸延長了客戶應(yīng)用請(qǐng)求的響應(yīng)時(shí)間。并且局域網(wǎng)具有分散特性,網(wǎng)絡(luò)本身并沒有針對(duì)服務(wù)器
的保護(hù)措施,一個(gè)無意的動(dòng)作(像一腳踢掉網(wǎng)線的插頭)就會(huì)讓服務(wù)器與網(wǎng)絡(luò)斷開。
通常,解決瓶頸問題采用的對(duì)策是提高服務(wù)器鏈路的容量,使其超出目前的需求。例如可以由快速以太網(wǎng)升級(jí)到千兆以太網(wǎng)。對(duì)于大型企業(yè)來
說,采用升級(jí)技術(shù)是一種長遠(yuǎn)的、有前景的解決方案。然而對(duì)于許多企業(yè),當(dāng)需求還沒有大到非得花費(fèi)大量的金錢和時(shí)間進(jìn)行升級(jí)時(shí),使用升級(jí)技術(shù)就顯得大材小用
了。在這種情況下,鏈路聚合技術(shù)為消除傳輸鏈路上的瓶頸與不安全因素提供了成本低廉的解決方案,
鏈路聚合技術(shù),將多個(gè)線路的傳輸容量融合成一個(gè)單一的邏輯連接。當(dāng)原有的線路滿足不了需求,而單一線路的升級(jí)又太昂貴或難以實(shí)現(xiàn)時(shí),就
要采用多線路的解決方案了。目前有4種鏈路聚合技術(shù)可以將多條線路“捆綁”起來。同步IMUX系統(tǒng)工作在T1/E1的比特層,利用多個(gè)同步的DS1信道傳
輸數(shù)據(jù),來實(shí)現(xiàn)負(fù)載均衡。IMA是另外一種多線路的反向多路復(fù)用技術(shù),工作在信元級(jí),能夠運(yùn)行在使用ATM路由器的平臺(tái)上。用路由器來實(shí)現(xiàn)多線路是一種流
行的鏈路聚合技術(shù),路由器可以根據(jù)已知的目的地址的緩沖(cache)大小,將分組分配給各個(gè)平行的鏈路,也可以采用循環(huán)分配的方法來向線路分發(fā)分組。多
重鏈路PPP,又稱MP或MLP,是應(yīng)用于使用PPP封裝數(shù)據(jù)鏈路的路由器負(fù)載平衡技術(shù)。MP可以將大的PPP數(shù)據(jù)包分解成小的數(shù)據(jù)段,再將其分發(fā)給平行
的多個(gè)線路,還可以根據(jù)當(dāng)前的鏈路利用率來動(dòng)態(tài)地分配撥號(hào)線路。這樣做盡管速度很慢,因?yàn)閿?shù)據(jù)包分段和附加的緩沖都增加時(shí)延,但可以在低速的線路上運(yùn)行得
很好。
鏈路聚合系統(tǒng)增加了網(wǎng)絡(luò)的復(fù)雜性,但也提高了網(wǎng)絡(luò)的可靠性,使人們可以在服務(wù)器等關(guān)鍵LAN段的線路上采用冗余路由。對(duì)于IP系統(tǒng),可
以考慮采用VRRP(虛擬路由冗余協(xié)議)。VRRP可以生成一個(gè)虛擬缺省的網(wǎng)關(guān)地址,當(dāng)主路由器無法接通時(shí),備用路由器就會(huì)采用這個(gè)地址,使LAN通信得
以繼續(xù)。總之,當(dāng)主要線路的性能必需提高而單條線路的升級(jí)又不可行時(shí),可以采用鏈路聚合技術(shù)。
■更高層交換
大型的網(wǎng)絡(luò)一般都是由大量專用技術(shù)設(shè)備組成的,如包括防火墻、路由器、第2層/3層交換機(jī)、負(fù)載均衡設(shè)備、緩沖服務(wù)器和Web服務(wù)器等。如何將這
些技術(shù)設(shè)備有機(jī)地組合在一起,是一個(gè)直接影響到網(wǎng)絡(luò)性能的關(guān)鍵性問題。現(xiàn)在許多交換機(jī)提供第四層交換功能,可以將一個(gè)外部IP地址映射為多個(gè)內(nèi)部IP地
址,對(duì)每次TCP連接請(qǐng)求動(dòng)態(tài)使用其中一個(gè)內(nèi)部地址,達(dá)到負(fù)載均衡的目的。有的協(xié)議內(nèi)部支持與負(fù)載均衡相關(guān)的功能,例如HTTP協(xié)議中的重定向能力。
Web內(nèi)容交換技術(shù),即URL交換或七層交換技術(shù),提供了一種對(duì)訪問流量的高層控制方式。Web內(nèi)
容交換技術(shù)檢查所有的HTTP報(bào)頭,根據(jù)報(bào)頭內(nèi)的信息來執(zhí)行負(fù)載均衡的決策,并可以根據(jù)這些信息來確定如何為個(gè)人主頁和圖像數(shù)據(jù)等內(nèi)容提供服務(wù)。它不是根
據(jù)TCP端口號(hào)來進(jìn)行控制的,所以不會(huì)造成訪問流量的滯留。如果Web服務(wù)器已經(jīng)為圖像服務(wù)、SSL對(duì)話、數(shù)據(jù)庫事務(wù)服務(wù)之類的特殊功能進(jìn)行了優(yōu)化,那
么,采用這個(gè)層次的流量控制將可以提高網(wǎng)絡(luò)的性能。目前,采用第七層交換技術(shù)的產(chǎn)品與方案,有黎明網(wǎng)絡(luò)的iSwitch、交換機(jī),Cisco的CDN(內(nèi)
容交換網(wǎng)絡(luò)系統(tǒng))等。
服務(wù)器群集解決方案
在某些情況下,例如,某網(wǎng)站內(nèi)部職員和外部客戶同時(shí)使用網(wǎng)站,而公司要將內(nèi)部職員的服務(wù)請(qǐng)求連接到一個(gè)較慢的服務(wù)器來為外部客戶提供更多的資源,
這時(shí)就可以使用Web內(nèi)容交換技術(shù)。Web主機(jī)訪問控制設(shè)備也可以使用這種技術(shù)來降低硬件成本,因?yàn)樗梢暂p易地將訪問多個(gè)主機(jī)的用戶流量轉(zhuǎn)移給同一個(gè)
Web服務(wù)器。如果用戶訪問量增加到一定程度,這些流量還可以被轉(zhuǎn)移到專用的Web服務(wù)器設(shè)備,雖然這種專用設(shè)備的成本較高,但是由于使用的是相同的
Web內(nèi)容交換技術(shù)來控制流量,所以網(wǎng)絡(luò)的結(jié)構(gòu)框架就不用再進(jìn)行改變了。
但是,使用Web內(nèi)容交換技術(shù)的負(fù)載均衡設(shè)備所能支持的標(biāo)準(zhǔn)和規(guī)則的數(shù)目有限,其采用的標(biāo)準(zhǔn)和規(guī)則的靈活性也有限。另外,負(fù)載均衡設(shè)備
所能監(jiān)測(cè)到HTTP報(bào)頭的深度也是限制內(nèi)容交換能力的一個(gè)因素。如果所要找的信息在負(fù)載均衡設(shè)備所不能監(jiān)測(cè)的字段內(nèi),那內(nèi)容交換的作用就無法發(fā)揮。而且,
內(nèi)容交換還受到能夠同時(shí)開啟的TCP連接數(shù)量以及TCP連接的建立和斷開比率的限制。另外,Web內(nèi)容交換技術(shù)還會(huì)占用大量的系統(tǒng)資源(包括內(nèi)存占用和處
理器占用)。對(duì)Web內(nèi)容交換技術(shù)進(jìn)行的測(cè)試表明,操縱Web內(nèi)容的吞吐量是很費(fèi)力的,有時(shí)只能得到很小的性能改進(jìn)。所以,網(wǎng)絡(luò)管理員必須認(rèn)真考慮投入與
回報(bào)的問題。
■帶均衡策略的服務(wù)器群集
如今,服務(wù)器必須具備提供大量并發(fā)訪問服務(wù)的能力,其處理能力和I/O能力已經(jīng)成為提供服務(wù)的瓶頸。如果客戶的增多導(dǎo)致通信量超出了服務(wù)器能承受
的范圍,那么其結(jié)果必然是——宕機(jī)。顯然,單臺(tái)服務(wù)器有限的性能不可能解決這個(gè)問題,一臺(tái)普通服務(wù)器的處理能力只能達(dá)到每秒幾萬個(gè)到幾十萬個(gè)請(qǐng)求,無法在
一秒鐘內(nèi)處理上百萬個(gè)甚至更多的請(qǐng)求。但若能將10臺(tái)這樣的服務(wù)器組成一個(gè)系統(tǒng),并通過軟件技術(shù)將所有請(qǐng)求平均分配給所有服務(wù)器,那么這個(gè)系統(tǒng)就完全擁有
每秒鐘處理幾百萬個(gè)甚至更多請(qǐng)求的能力。這就是利用服務(wù)器群集實(shí)現(xiàn)負(fù)載均衡的最初基本設(shè)計(jì)思想。
早期的服務(wù)器群集通常以光纖鏡像卡進(jìn)行主從方式備份。令服務(wù)運(yùn)營商頭疼的是關(guān)鍵性服務(wù)器或應(yīng)用較多、數(shù)據(jù)流量較大的服務(wù)器一般檔次不會(huì)
太低,而服務(wù)運(yùn)營商花了兩臺(tái)服務(wù)器的錢卻常常只得到一臺(tái)服務(wù)器的性能。新的解決方案見圖,通過LSANT(Load Sharing Network
Address Transfer)將多臺(tái)服務(wù)器網(wǎng)卡的不同IP地址翻譯成一個(gè)VIP(Virtual
IP)地址,使得每臺(tái)服務(wù)器均時(shí)時(shí)處于工作狀態(tài)。原來需要用小型機(jī)來完成的工作改由多臺(tái)PC服務(wù)器完成,這種彈性解決方案對(duì)投資保護(hù)的作用是相當(dāng)明顯的
——既避免了小型機(jī)剛性升級(jí)所帶來的巨大設(shè)備投資,又避免了人員培訓(xùn)的重復(fù)投資。同時(shí),服務(wù)運(yùn)營商可以依據(jù)業(yè)務(wù)的需要隨時(shí)調(diào)整服務(wù)器的數(shù)量。
網(wǎng)絡(luò)負(fù)載均衡提高了諸如Web服務(wù)器、FTP服務(wù)器和其他關(guān)鍵任務(wù)服務(wù)器上的因特網(wǎng)服務(wù)器程序的可用性和可伸縮性。單一計(jì)算機(jī)可以提供
有限級(jí)別的服務(wù)器可靠性和可伸縮性。但是,通過將兩個(gè)或兩個(gè)以上高級(jí)服務(wù)器的主機(jī)連成群集,網(wǎng)絡(luò)負(fù)載均衡就能夠提供關(guān)鍵任務(wù)服務(wù)器所需的可靠性和性能。
為了建立一個(gè)高負(fù)載的Web站點(diǎn),必須使用多服務(wù)器的分布式結(jié)構(gòu)。上面提到的使用代理服務(wù)器和Web服務(wù)器相結(jié)合,或者兩臺(tái)Web服務(wù)
器相互協(xié)作的方式也屬于多服務(wù)器的結(jié)構(gòu),但在這些多服務(wù)器的結(jié)構(gòu)中,每臺(tái)服務(wù)器所起到的作用是不同的,屬于非對(duì)稱的體系結(jié)構(gòu)。非對(duì)稱的服務(wù)器結(jié)構(gòu)中每個(gè)服
務(wù)器起到的作用是不同的,例如一臺(tái)服務(wù)器用于提供靜態(tài)網(wǎng)頁,而另一臺(tái)用于提供動(dòng)態(tài)網(wǎng)頁等等。這樣就使得網(wǎng)頁設(shè)計(jì)時(shí)就需要考慮不同服務(wù)器之間的關(guān)系,一旦要
改變服務(wù)器之間的關(guān)系,就會(huì)使得某些網(wǎng)頁出現(xiàn)連接錯(cuò)誤,不利于維護(hù),可擴(kuò)展性也較差。
能進(jìn)行負(fù)載均衡的網(wǎng)絡(luò)設(shè)計(jì)結(jié)構(gòu)為對(duì)稱結(jié)構(gòu),在對(duì)稱結(jié)構(gòu)中每臺(tái)服務(wù)器都具備等價(jià)的地位,都可以單獨(dú)對(duì)外提供服務(wù)而無須其他服務(wù)器的輔助。
然后,可以通過某種技術(shù),將外部發(fā)送來的請(qǐng)求均勻分配到對(duì)稱結(jié)構(gòu)中的每臺(tái)服務(wù)器上,接收到連接請(qǐng)求的服務(wù)器都獨(dú)立回應(yīng)客戶的請(qǐng)求。在這種結(jié)構(gòu)中,由于建立
內(nèi)容完全一致的Web服務(wù)器并不困難,因此負(fù)載均衡技術(shù)就成為建立一個(gè)高負(fù)載Web站點(diǎn)的關(guān)鍵性技術(shù)。
總之,負(fù)載均衡是一種策略,它能讓多臺(tái)服務(wù)器或多條鏈路共同承擔(dān)一些繁重的計(jì)算或I/O任務(wù),從而以較低成本消除網(wǎng)絡(luò)瓶頸,提高網(wǎng)絡(luò)的靈活性和可靠性
posted on 2007-03-29 17:59
OMG 閱讀(329)
評(píng)論(0) 編輯 收藏 所屬分類:
<項(xiàng)目>系統(tǒng)集成