您好,歡迎來(lái)電子發(fā)燒友網(wǎng)! ,新用戶(hù)?[免費(fèi)注冊(cè)]

您的位置:電子發(fā)燒友網(wǎng)>電子百科>通信技術(shù)>傳輸網(wǎng)/接入網(wǎng)/交換網(wǎng)>

負(fù)載平衡,負(fù)載平衡是什么意思

2010年04月06日 16:06 srfitnesspt.com 作者:佚名 用戶(hù)評(píng)論(0
關(guān)鍵字:負(fù)載平衡(5984)

負(fù)載平衡,負(fù)載平衡是什么意思

負(fù)載平衡是為提高性能和克服現(xiàn)有設(shè)備中的缺陷而將某些負(fù)載分配到多個(gè)鏈路、服務(wù)器、處理器或其他設(shè)備的過(guò)程。負(fù)載平衡不但可以有效地解決單服務(wù)器的性能限制,而且可以實(shí)現(xiàn)故障的快速轉(zhuǎn)移,保證服務(wù)的高可用性以及靈活的擴(kuò)展性。服務(wù)器負(fù)載平衡是將客戶(hù)機(jī)的請(qǐng)求分配到服務(wù)器組的過(guò)程。

另一種負(fù)載平衡類(lèi)型應(yīng)用在聚合通信鏈路中,在聚合通信鏈路中,網(wǎng)絡(luò)通信量被分配到兩個(gè)或更多的鏈路中,這些鏈路好像是具有高帶寬(和冗余)的單一鏈路。

還有另一種負(fù)載平衡類(lèi)型應(yīng)用在多處理器系統(tǒng)中,其中正在進(jìn)行處理的負(fù)載被分配到同一計(jì)算機(jī)中的多個(gè)處理器中,或被配置到多重處理集群中的一組計(jì)算機(jī)中。例如,可將一個(gè)單個(gè)復(fù)雜的任務(wù)分成可在不同處理器中同時(shí)被處理的塊?! ∪缟纤?本主題主要討論服務(wù)器負(fù)載平衡,它是當(dāng)考慮到大多數(shù)Web站點(diǎn)過(guò)載并且老式服務(wù)器配置無(wú)法處理負(fù)載這一現(xiàn)狀時(shí)的一個(gè)熱門(mén)話(huà)題。這就需要多個(gè)服務(wù)器,一些執(zhí)行特定任務(wù)的服務(wù)器,這樣服務(wù)器負(fù)載平衡器的工作是接收即將到來(lái)的通信量并將通信量發(fā)送到可用的服務(wù)器或最適合執(zhí)行特定任務(wù)的服務(wù)器中。這些服務(wù)器由虛擬IP地址表示。為IP地址定義的通信量被負(fù)載平衡器攔截并被分配到服務(wù)器場(chǎng)或集群中的服務(wù)器中。

圖L-6闡釋了一個(gè)用于Web站點(diǎn)的典型的負(fù)載平衡解決方案。請(qǐng)求到達(dá)負(fù)載平衡設(shè)備并被分配到服務(wù)器陣列中的服務(wù)器中。除了分配負(fù)載之外,負(fù)載平衡還提供高可用性:如果某個(gè)服務(wù)器故障,則負(fù)載平衡器自動(dòng)將請(qǐng)求發(fā)送到其他服務(wù)器中。另外,可以拆掉某個(gè)用于服務(wù)的服務(wù)器,而不影響用戶(hù)服務(wù),因?yàn)樨?fù)載平衡器可將請(qǐng)求分配到其他仍在運(yùn)行的服務(wù)器中。

?

負(fù)載平衡器可以是自行設(shè)計(jì)的網(wǎng)絡(luò)設(shè)備、具有高級(jí)可編程功能性的交換機(jī)或者是運(yùn)行在標(biāo)準(zhǔn)服務(wù)器平臺(tái)(如Microsoft Windows 2000或UNIX環(huán)境)上的基于軟件的應(yīng)用程序。Microsoft NLB(網(wǎng)絡(luò)負(fù)載平衡),也稱(chēng)為MLBS(Microsoft負(fù)載平衡服務(wù)器)工作在Microsoft Windows 2000集群環(huán)境中以均衡集群中節(jié)點(diǎn)之間的即將到來(lái)的IP通信量。與其他負(fù)載平衡服務(wù)類(lèi)似,NLB為單位范圍的TCP/IP服務(wù),如Web、proxy、VPN、流媒體和其他服務(wù)提供了可伸縮性和高可用性。NLB 使用一種分布算法將負(fù)載均衡分布到多臺(tái)主機(jī)上,從而提高了基于 IP 的任務(wù)關(guān)鍵型服務(wù)(例如 Web、虛擬專(zhuān)用網(wǎng)絡(luò)、流媒體、終端服務(wù)、代理,等等)的可伸縮性和可用性。它同時(shí)可檢測(cè)主機(jī)故障并自動(dòng)將流量重新分配給操作主機(jī),從而提供高可用性。

網(wǎng)絡(luò)負(fù)載均衡的好處包括:伸縮能力、高度可用性、易于使用和可控性。

包含發(fā)送算法的典型的負(fù)載平衡設(shè)備如下所示:

? 將最新請(qǐng)求發(fā)送到最空閑的服務(wù)器。

? 用循環(huán)方式將通信量發(fā)送到每個(gè)服務(wù)器(有時(shí)將其稱(chēng)為“發(fā)牌”方法)。

? 根據(jù)服務(wù)器的處理能力為服務(wù)器分配負(fù)荷并將大多數(shù)請(qǐng)求發(fā)送到最重要的服務(wù)器。

? 發(fā)送基于第4層的信息,如IP的源地址和目標(biāo)地址或端口號(hào)(應(yīng)用程序類(lèi)型)。

? 發(fā)送基于第7層的信息,如包含目錄和文件信息的請(qǐng)求的URL。

? 發(fā)送基于Cookies的信息。

? 根據(jù)服務(wù)器處理請(qǐng)求的功能來(lái)發(fā)送請(qǐng)求。例如將數(shù)據(jù)庫(kù)請(qǐng)求發(fā)送到數(shù)據(jù)庫(kù)服務(wù)器,將Web請(qǐng)求發(fā)送到Web服務(wù)器。

image:bk071912fwh_1.jpg

? 根據(jù)持續(xù)對(duì)話(huà)來(lái)向服務(wù)器轉(zhuǎn)發(fā)請(qǐng)求,也就是說(shuō) 如果服務(wù)器已經(jīng)在為會(huì)話(huà)提供服務(wù),則會(huì)繼續(xù)將 相關(guān)或相似的請(qǐng)求發(fā)送給該服務(wù)器。

注意來(lái)自單個(gè)客戶(hù)機(jī)的多個(gè)請(qǐng)求可由多個(gè)服務(wù)器來(lái)處理。這樣就提高了性能。例如,通常Web頁(yè)包含很多對(duì)象,包括圖片、文本和聲音。集群中的—個(gè)服務(wù)器可能提供文本服務(wù),而另一個(gè)可能提供圖像和聲音服務(wù)。對(duì)于查看Web頁(yè)的個(gè)人來(lái)說(shuō),這些對(duì)象似乎是連接到單個(gè)Web服務(wù)器中。

為進(jìn)行負(fù)載平衡而檢查URL和其他“特定應(yīng)用程序”的信息的設(shè)備稱(chēng)為第7層設(shè)備。URL提供了有關(guān)請(qǐng)求的內(nèi)容的信息,包括目錄名和文件名。這里還使用了Cookies并將在稍后對(duì)其進(jìn)行討論。

持續(xù)性是很重要的,因?yàn)樗_保了客戶(hù)機(jī)在跨越很多TCP連接的交易過(guò)程中始終使用同一服務(wù)器。例如,在某個(gè)電子商務(wù)購(gòu)物站點(diǎn),負(fù)載平衡器將確保客戶(hù)機(jī)的請(qǐng)求持續(xù)送入同一服務(wù)器中,因?yàn)樵摲?wù)器可以高速緩存客戶(hù)機(jī)的購(gòu)物車(chē)信息。持續(xù)性還將最優(yōu)化高速緩存性能。例如URL中的信息(目錄或文件名)可用于將請(qǐng)求發(fā)送到最近被高速緩存已請(qǐng)求的信息的服務(wù)器中。

Cookies作為一種識(shí)別用戶(hù)的方式在負(fù)載平衡環(huán)境中也是很重要的。源IP地址作為用戶(hù)標(biāo)識(shí)符,其準(zhǔn)確性并非始終可靠。代理環(huán)境(如美國(guó)在線(xiàn))另一側(cè)的用戶(hù)在每次通過(guò)代理服務(wù)器進(jìn)行連接時(shí)可能獲得不同的IP地址。當(dāng)用戶(hù)首次連接到Web站點(diǎn)時(shí),處理請(qǐng)求的服務(wù)器創(chuàng)建或修改一個(gè)帶有會(huì)話(huà)信息的Cookie,然后將它返回給用戶(hù)。此Cookie信息隨后用于在會(huì)話(huà)期間維護(hù)持續(xù)性。

Cookies還可提供服務(wù)級(jí)信息。例如,Cookie可能指示用戶(hù)是一個(gè)提供黃金服務(wù)的客戶(hù),因此該用戶(hù)的請(qǐng)求將轉(zhuǎn)到最高性能服務(wù)器。然而,Cookie處理是一個(gè)需要消耗大量處理器資源的過(guò)程。負(fù)載平衡器首先必須與客戶(hù)端建立TCP連接,然后在Cookie到達(dá)時(shí)將其捕獲,接著對(duì)此Cookie進(jìn)行分析以找到所需的信息,最后確定相應(yīng)的請(qǐng)求服務(wù)器。負(fù)載平衡器需要將客戶(hù)端信息緩存起來(lái),直到它確定此Cookie的特性為止。

高端第7層負(fù)載平衡器通常是具有快速交換結(jié)構(gòu)和網(wǎng)絡(luò)處理器(該處理器可處理繁忙Web站點(diǎn)的瞬時(shí)處理負(fù)載)的高性能設(shè)備。Alteon Web系統(tǒng)已設(shè)計(jì)了一系列可實(shí)現(xiàn)高級(jí)網(wǎng)絡(luò)處理器技術(shù)和分布式處理體系結(jié)構(gòu)的Web交換機(jī)。每個(gè)端口都有一個(gè)網(wǎng)絡(luò)處理ASIC,用于將第2層數(shù)據(jù)分組引擎與兩個(gè)RISC處理器組合成一個(gè)單個(gè)芯片。在8Mbit/s的交換機(jī)底板上最多可連接10個(gè)這樣的網(wǎng)絡(luò)處理器。每個(gè)網(wǎng)絡(luò)處理器中的分組引擎通過(guò)硬件交換第2層分組,而網(wǎng)絡(luò)處理器通過(guò)軟件支持第3到第7層交換。從本質(zhì)上而言,交換機(jī)是一個(gè)并行處理系統(tǒng),其中有20個(gè)RISC網(wǎng)絡(luò)處理器同時(shí)處理通信量(無(wú)需考慮會(huì)話(huà)通信量通過(guò)的物理端口)。它是一個(gè)由內(nèi)存和處理器資源(可立刻處理來(lái)自任何端口的通信量)組成的虛擬矩陣。Alteon的700系列以l80Gbit/s的縱橫制交換結(jié)構(gòu)為核心,并包括其他功能(如QoS管理器)。它還包括第7層內(nèi)容交換的硬件處理協(xié)助,該功能對(duì)于維護(hù)所有端口的吉比特速率的線(xiàn)路速度是必不可少的。

目前,特別是在高可用性和負(fù)載均衡方面,有許多先進(jìn)的工具可以利用由應(yīng)用返回給最終用戶(hù)的第七層信息。這類(lèi)工具使用戶(hù)可以容易地確認(rèn)站點(diǎn)內(nèi)容的響應(yīng)性和正確性,或從客戶(hù)的角度來(lái)試測(cè)你的站點(diǎn),看看是否存在正確的應(yīng)用和內(nèi)容。用戶(hù)不僅能驗(yàn)證是否在發(fā)送正確的內(nèi)容,而且還能打開(kāi)網(wǎng)絡(luò)上傳送的數(shù)據(jù)包(不用考慮IP地址或端口),并根據(jù)包中的信息做出負(fù)載均衡決定。第七層交換可以實(shí)現(xiàn)有效的數(shù)據(jù)流優(yōu)化和智能負(fù)載均衡。

F5 Networks是負(fù)載平衡和各種其他優(yōu)化Web站點(diǎn)設(shè)計(jì)(包括內(nèi)容發(fā)布)產(chǎn)品中的主導(dǎo)產(chǎn)品之一。Extreme Networks將F5Networks的服務(wù)器負(fù)載平衡源代碼整合到它自身的線(xiàn)路速度交換設(shè)備中。F5 Networks的負(fù)載平衡和高可用性設(shè)備提供下列功能:

? 根據(jù)源、目標(biāo)和通信量類(lèi)型劃分通信量的優(yōu)先級(jí)并對(duì)其進(jìn)行控制。

? 對(duì)服務(wù)器、設(shè)備和內(nèi)容提供中心位置控制。

? 平衡多個(gè)IP協(xié)議和網(wǎng)絡(luò)設(shè)備(包括防火墻、路由器、緩存服務(wù)器和多媒體服務(wù)器)。

? 管理服務(wù)器和應(yīng)用程序故障,并將通信量引導(dǎo)至正常工作的服務(wù)器和應(yīng)用程序。

? 提供持久性模式以無(wú)縫處理用戶(hù)請(qǐng)求并維護(hù)站點(diǎn)和客戶(hù)間的鏈接。

? 提供基于Cookie的持久性、源、服務(wù)器、SSL持久性、URL、IP、端口和HTTP頭負(fù)載平衡。

Extreme Networks設(shè)計(jì)了一系列高端負(fù)載平衡設(shè)備,這些設(shè)備可提供一體化服務(wù),并降低負(fù)載平衡的硬件要求。圖L-7闡釋了多設(shè)備硬件配置Extreme解決方案。在以前的圖例中,在路由器和負(fù)載平衡器之間以及在負(fù)載平衡器和服務(wù)器之間提供分布式連接需要使用多個(gè)第2層交換機(jī)。在“以后”的方法中,Extreme Networks的線(xiàn)路速度交換機(jī)提供所有交換和負(fù)載平衡功能。

負(fù)載平衡不僅僅局限于單個(gè)地理Web站點(diǎn)。它在整個(gè)Internet上進(jìn)行分布,使多個(gè)站點(diǎn)承載同一內(nèi)容。例如,負(fù)載平衡器可將請(qǐng)求轉(zhuǎn)發(fā)到在地理位置上距離發(fā)出請(qǐng)求的客戶(hù)機(jī)較近的服務(wù)器。這種設(shè)置在站點(diǎn)發(fā)生故障時(shí)提供災(zāi)難恢復(fù),同時(shí)將工作負(fù)載自動(dòng)重定向到備份站點(diǎn)。該設(shè)置還支持內(nèi)容發(fā)布。

早期的基于Internet的負(fù)載平衡技術(shù)使用DNS進(jìn)行負(fù)載平衡。DNS負(fù)載平衡技術(shù)使用循環(huán)方法從同一域的IP地址列表中選擇一個(gè)IP地址。DNS區(qū)域傳輸程序根據(jù)預(yù)先確定的負(fù)載平衡算法定期改變服務(wù)器節(jié)點(diǎn)的資源記錄的順序。但該方法時(shí)間的選擇不符合當(dāng)今的現(xiàn)時(shí)要求。此外,該方法還假設(shè)服務(wù)器池中所有主機(jī)有相同能力提供所有服務(wù),而實(shí)際情況卻并非如此。許多商業(yè)Internet負(fù)載平衡器為在DNS列表中選擇Web站點(diǎn)實(shí)現(xiàn)了更為合理的選擇算法。

RFC 2391 (Load Sharing Using IP Network Address Translation ,August1998)介紹了LSNAT,它對(duì)NAT(網(wǎng)絡(luò)地址轉(zhuǎn)換)進(jìn)行了擴(kuò)充,使其能夠提供負(fù)載共享技術(shù)。RFC 3074(DHC Load Balancing Algorithm, February 2001)介紹了負(fù)載平衡算法,該算法使多個(gè)協(xié)同操作的服務(wù)器不交換初始配置以外的任何信息即可確定哪個(gè)服務(wù)器應(yīng)為客戶(hù)端提供服務(wù)。


?

非常好我支持^.^

(2) 100%

不好我反對(duì)

(0) 0%

( 發(fā)表人:admin )

      發(fā)表評(píng)論

      用戶(hù)評(píng)論
      評(píng)價(jià):好評(píng)中評(píng)差評(píng)

      發(fā)表評(píng)論,獲取積分! 請(qǐng)遵守相關(guān)規(guī)定!

      ?