由於目前現有網路的各個核心部分隨著業務量的提高,訪問量和資料流量的快速增長,其處理能力和計算強度也相應地增大,使得單一的伺服器裝置根本無法承擔。在此情況下,如果扔掉現有裝置去做大量的硬體升級,這樣將造成現有資源的浪費,而且如果再面臨下一次業務量的提升時,這又將導致再一次硬體升級的高額成本投入,甚至效能再卓越的裝置也不能滿足當前業務量增長的需求。
針對此情況而衍生出來的一種廉價有效透明的方法以擴充現有網路裝置和伺服器的頻寬、增加輸送量、加強網路資料處理能力、提高網路的來實現的,在DNS中為多個地址配置同一個名字,因而查詢這個名字的客戶機將得到其中一個地址,從而使得不同的客戶訪問不同的伺服器,達到負載平衡的目的。DNS負載平衡是一種簡單而有效方法,但是它不能區分伺服器的差異,也不能反映伺服器的當前運行狀態。
2、Proxy 伺服器負載平衡 使用Proxy 伺服器,可以將請求轉寄給內部的伺服器,使用這種加速模式顯然可以提升靜態網頁的訪問速度。然而,也可以考慮這樣一種技術,使用Proxy 伺服器將請求均勻轉寄給多台伺服器,從而達到負載平衡的目的。
3、地址轉換網關負載平衡 支援負載平衡的地址轉換網關,可以將一個外部IP地址映射為多個內部IP地址,對每次TCP串連請求動態使用其中一個內部地址,達到負載平衡的目的。
4、協議內部支援負載平衡 除了這三種負載平衡方式之外,有的協議內部支援與負載平衡相關的功能,例如HTTP協議中的重新導向能力等,HTTP運行於TCP串連的最高層。
5、NAT負載平衡 NAT(Network Address Translation 網路位址轉譯)簡單地說就是將一個IP地址轉換為另一個IP地址,一般用於未經註冊的內部地址與合法的、已獲註冊的Internet
IP地址間進行轉換。適用於解決Internet IP地址緊張、不想讓網路外部知道內部網路結構等的場合下。
此種負載平衡是當前多WAN口路由器的頻寬匯聚技術基礎,以欣向路由器為例:
欣向的多WAN路由器實現的是業界先進的動態Server Load Balancer機制,我們獨立研發的多WAN口動態Server Load Balancer技術,使得在使用多條線路的情況下動態分配內網的資料流量,動態實現頻寬匯聚的功能,採用特有的三種Server Load Balancer機制:
a.Session:所有啟用的WAN口,採用均分session的方式工作。
如第一個串連session通過WAN1口流出,則下一個session自動選擇WAN2流出,第三個session選擇WAN3口流出(假設所有WAN口都啟用)
這種方式適用於多條相同頻寬的線路捆綁時使用。
b.Round
robin:同樣是根據session數目調整負載,但比例可調。
如將比例設為1:2:3:4,則按如下規則處理:
第1個session選擇WAN1口(session數=1);
第2,3個 session選擇WAN2口(session數=2);
第4 ~ 6個 session 選擇WAN3口(session數=3);
第7 ~ 10個session選擇WAN4口(session數=4);
這種方式適用於多條不同頻寬的線路能夠更好的協同工作。例如:WAN1口接一條512K的ADSL,WAN2口接2M的光纖,這種情況下我們就可以把比例設為1:4,這樣能夠充分利用兩條線路的頻寬。
c.Traffic:按資料流量分配負載,系統自動選擇流量最小的WAN口作為出口。
此種方式適用於線路不穩定時的多條線路混用的情況。在某一條線路暫時不通或者線路不穩定的情況下會把流量自動分配到另一條穩定的線路上。但在多條線路穩定的情況下不建議使用這種方式。
有了這三種Server Load Balancer使得路由器可以靈活的應對多種線路混用的複雜情況,支援多種線路混接,支援多種協議,能夠滿足多種複雜應用。
6、反向 Proxy負載平衡 普通代理方式是代理內部網路使用者訪問internet上伺服器的串連請求,用戶端必須指定Proxy 伺服器,並將本來要直接發送到internet上伺服器的串連請求發送給Proxy 伺服器處理。反向 Proxy(Reverse
Proxy)方式是指以Proxy 伺服器來接受internet上的串連請求,然後將請求轉寄給內部網路上的伺服器,並將從伺服器上得到的結果返回給internet上請求串連的用戶端,此時Proxy 伺服器對外就表現為一個伺服器。反向 Proxy負載平衡技術是把將來自internet上的串連請求以反向 Proxy的方式動態地轉寄給內部網路上的多台伺服器進行處理,從而達到負載平衡的目的。
7、混合型負載平衡 在有些大型網路,由於多個伺服器群內硬體裝置、各自的規模、提供的服務等的差異,我們可以考慮給每個伺服器群採用最合適的負載平衡方式,然後又在這多個伺服器群間再一次負載平衡或群集起來以一個整體向外界提供服務(即把這多個伺服器群當做一個新的伺服器群),從而達到最佳的效能。我們將這種方式稱之為混合型負載平衡。此種方式有時也用於單台均衡裝置的效能不能滿足大量串連請求的情況下。
轉帖:http://www.blogjava.net/daniel-tu/archive/2008/12/29/248885.html