負載均衡技術概覽

當前,無論在企業網、園區網還是在廣域網如Internet上,業務量的發展都超出了過去最樂觀的估計,上網熱潮風起雲涌,新的應用層出不窮,即使按照當時最優配置建設的網絡,也很快會感到吃不消。尤其是各個網絡的核心部分,其數據流量和計算強度之大,使得單一設備根本無法承擔,而如何在完成同樣功能的多個網絡設備之間實現合理的業務量分配,使之不致於出現一臺設備過忙、而別的設備卻未充分發揮處理能力的情況,就成了一個問題,負載均衡機制也因此應運而生。
負載均衡建立在現有網絡結構之上,它提供了一種廉價有效的方法擴展服務器帶寬和增加吞吐量,加強網絡數據處理能力,提高網絡的靈活性和可用性。它主要完成以下任務:解決網絡擁塞問題,服務就近提供,實現地理位置無關性;爲用戶提供更好的訪問質量;提高服務器響應速度;提高服務器及其他資源的利用效率;避免了網絡關鍵部位出現單點失效。
對一個網絡的負載均衡應用,可以從網絡的不同層次入手,具體情況要看對網絡瓶頸所在之處的具體分析,大體上不外乎從傳輸鏈路聚合、採用更高層網絡交換技術和設置服務器集羣策略三個角度實現。
傳輸鏈路聚合
爲了支持與日俱增的高帶寬應用,越來越多的PC機使用更加快速的鏈路連入網絡。而網絡中的業務量分佈是不平衡的,核心高、邊緣低,關鍵部門高、一般部門低。伴隨計算機處理能力的大幅度提高,人們對多工作組局域網的處理能力有了更高的要求。當企業內部對高帶寬應用需求不斷增大時(例如Web訪問、文檔傳輸及內部網連接),局域網核心部位的數據接口將產生瓶頸問題,瓶頸延長了客戶應用請求的響應時間。並且局域網具有分散特性,網絡本身並沒有針對服務器的保護措施,一個無意的動作(像一腳踢掉網線的插頭)就會讓服務器與網絡斷開。
通常,解決瓶頸問題採用的對策是提高服務器鏈路的容量,使其超出目前的需求。例如可以由快速以太網升級到千兆以太網。對於大型企業來說,採用升級技術是一種長遠的、有前景的解決方案。然而對於許多企業,當需求還沒有大到非得花費大量的金錢和時間進行升級時,使用升級技術就顯得大材小用了。在這種情況下,鏈路聚合技術爲消除傳輸鏈路上的瓶頸與不安全因素提供了成本低廉的解決方案,
鏈路聚合技術,將多個線路的傳輸容量融合成一個單一的邏輯連接。當原有的線路滿足不了需求,而單一線路的升級又太昂貴或難以實現時,就要採用多線路的解決方案了。目前有4種鏈路聚合技術可以將多條線路“捆綁”起來。同步IMUX系統工作在T1/E1的比特層,利用多個同步的DS1信道傳輸數據,來實現負載均衡。IMA是另外一種多線路的反向多路複用技術,工作在信元級,能夠運行在使用ATM路由器的平臺上。用路由器來實現多線路是一種流行的鏈路聚合技術,路由器可以根據已知的目的地址的緩衝(cache)大小,將分組分配給各個平行的鏈路,也可以採用循環分配的方法來向線路分發分組。多重鏈路PPP,又稱MP或MLP,是應用於使用PPP封裝數據鏈路的路由器負載平衡技術。MP可以將大的PPP數據包分解成小的數據段,再將其分發給平行的多個線路,還可以根據當前的鏈路利用率來動態地分配撥號線路。這樣做盡管速度很慢,因爲數據包分段和附加的緩衝都增加時延,但可以在低速的線路上運行得很好。
鏈路聚合系統增加了網絡的複雜性,但也提高了網絡的可靠性,使人們可以在服務器等關鍵LAN段的線路上採用冗餘路由。對於IP系統,可以考慮採用VRRP(虛擬路由冗餘協議)。VRRP可以生成一個虛擬缺省的網關地址,當主路由器無法接通時,備用路由器就會採用這個地址,使LAN通信得以繼續。總之,當主要線路的性能必需提高而單條線路的升級又不可行時,可以採用鏈路聚合技術。
更高層交換
大型的網絡一般都是由大量專用技術設備組成的,如包括防火牆、路由器、第2層/3層交換機、負載均衡設備、緩衝服務器和Web服務器等。如何將這些技術設備有機地組合在一起,是一個直接影響到網絡性能的關鍵性問題。現在許多交換機提供第四層交換功能,可以將一個外部IP地址映射爲多個內部IP地址,對每次TCP連接請求動態使用其中一個內部地址,達到負載均衡的目的。有的協議內部支持與負載均衡相關的功能,例如HTTP協議中的重定向能力。
Web內容交換技術,即URL交換或七層交換技術,提供了一種對訪問流量的高層控制方式。Web內容交換技術檢查所有的HTTP報頭,根據報頭內的信息來執行負載均衡的決策,並可以根據這些信息來確定如何爲個人主頁和圖像數據等內容提供服務。它不是根據TCP端口號來進行控制的,所以不會造成訪問流量的滯留。如果Web服務器已經爲圖像服務、SSL對話、數據庫事務服務之類的特殊功能進行了優化,那麼,採用這個層次的流量控制將可以提高網絡的性能。目前,採用第七層交換技術的產品與方案,有黎明網絡的iSwitch、交換機,Cisco的CDN(內容交換網絡系統)等。

服務器羣集解決方案
在某些情況下,例如,某網站內部職員和外部客戶同時使用網站,而公司要將內部職員的服務請求連接到一個較慢的服務器來爲外部客戶提供更多的資源,這時就可以使用Web內容交換技術。Web主機訪問控制設備也可以使用這種技術來降低硬件成本,因爲它可以輕易地將訪問多個主機的用戶流量轉移給同一個Web服務器。如果用戶訪問量增加到一定程度,這些流量還可以被轉移到專用的Web服務器設備,雖然這種專用設備的成本較高,但是由於使用的是相同的Web內容交換技術來控制流量,所以網絡的結構框架就不用再進行改變了。
但是,使用Web內容交換技術的負載均衡設備所能支持的標準和規則的數目有限,其採用的標準和規則的靈活性也有限。另外,負載均衡設備所能監測到HTTP報頭的深度也是限制內容交換能力的一個因素。如果所要找的信息在負載均衡設備所不能監測的字段內,那內容交換的作用就無法發揮。而且,內容交換還受到能夠同時開啓的TCP連接數量以及TCP連接的建立和斷開比率的限制。另外,Web內容交換技術還會佔用大量的系統資源(包括內存佔用和處理器佔用)。對Web內容交換技術進行的測試表明,操縱Web內容的吞吐量是很費力的,有時只能得到很小的性能改進。所以,網絡管理員必須認真考慮投入與回報的問題。
帶均衡策略的服務器羣集
如今,服務器必須具備提供大量併發訪問服務的能力,其處理能力和I/O能力已經成爲提供服務的瓶頸。如果客戶的增多導致通信量超出了服務器能承受的範圍,那麼其結果必然是——宕機。顯然,單臺服務器有限的性能不可能解決這個問題,一臺普通服務器的處理能力只能達到每秒幾萬個到幾十萬個請求,無法在一秒鐘內處理上百萬個甚至更多的請求。但若能將10臺這樣的服務器組成一個系統,並通過軟件技術將所有請求平均分配給所有服務器,那麼這個系統就完全擁有每秒鐘處理幾百萬個甚至更多請求的能力。這就是利用服務器羣集實現負載均衡的最初基本設計思想。
早期的服務器羣集通常以光纖鏡像卡進行主從方式備份。令服務運營商頭疼的是關鍵性服務器或應用較多、數據流量較大的服務器一般檔次不會太低,而服務運營商花了兩臺服務器的錢卻常常只得到一臺服務器的性能。新的解決方案見圖,通過LSANT(Load Sharing Network Address Transfer)將多臺服務器網卡的不同IP地址翻譯成一個VIP(Virtual IP)地址,使得每臺服務器均時時處於工作狀態。原來需要用小型機來完成的工作改由多臺PC服務器完成,這種彈性解決方案對投資保護的作用是相當明顯的——既避免了小型機剛性升級所帶來的巨大設備投資,又避免了人員培訓的重複投資。同時,服務運營商可以依據業務的需要隨時調整服務器的數量。
網絡負載均衡提高了諸如Web服務器、FTP服務器和其他關鍵任務服務器上的因特網服務器程序的可用性和可伸縮性。單一計算機可以提供有限級別的服務器可靠性和可伸縮性。但是,通過將兩個或兩個以上高級服務器的主機連成羣集,網絡負載均衡就能夠提供關鍵任務服務器所需的可靠性和性能。
爲了建立一個高負載的Web站點,必須使用多服務器的分佈式結構。上面提到的使用代理服務器和Web服務器相結合,或者兩臺Web服務器相互協作的方式也屬於多服務器的結構,但在這些多服務器的結構中,每臺服務器所起到的作用是不同的,屬於非對稱的體系結構。非對稱的服務器結構中每個服務器起到的作用是不同的,例如一臺服務器用於提供靜態網頁,而另一臺用於提供動態網頁等等。這樣就使得網頁設計時就需要考慮不同服務器之間的關係,一旦要改變服務器之間的關係,就會使得某些網頁出現連接錯誤,不利於維護,可擴展性也較差。
能進行負載均衡的網絡設計結構爲對稱結構,在對稱結構中每臺服務器都具備等價的地位,都可以單獨對外提供服務而無須其他服務器的輔助。然後,可以通過某種技術,將外部發送來的請求均勻分配到對稱結構中的每臺服務器上,接收到連接請求的服務器都獨立迴應客戶的請求。在這種結構中,由於建立內容完全一致的Web服務器並不困難,因此負載均衡技術就成爲建立一個高負載Web站點的關鍵性技術。
總之,負載均衡是一種策略,它能讓多臺服務器或多條鏈路共同承擔一些繁重的計算或I/O任務,從而以較低成本消除網絡瓶頸,提高網絡的靈活性和可靠性。

0

收藏

fengyeweilan

22篇文章,4W+人氣,0粉絲

Ctrl+Enter 發佈

發佈

取消

掃一掃,領取大禮包

0

分享
fengyeweilan
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章