新疆油田公司數據公司 李 磊 成書軍
新疆油田公司采氣一廠 邢 悅
網絡應用日益豐富,一方面,因為企業信息化需求的提高,使得企業內部網絡發展迅速,網絡節點數迅速增加,內部用戶對于出口帶寬的要求越來越高,傳統的策略路由可以在一定程度上解決網絡帶寬不足的問題,但是策略路由配置不方便、不夠靈活,無法動態適應網絡結構變化,多鏈路的負載均衡技術能將用戶的上網流量通過策略在多條鏈路上分擔來提高整體的吞吐量,這種網絡結構創造了更具彈性的網絡和互聯網訪問模型,提高業務網絡的高可靠性、高安全性和高效率性。
所謂多鏈路是指為了確保不中斷的互聯網訪問,通常為企業網絡配置多個互聯網接入鏈路,并且常常是屬于不同的網絡服務提供商(ISP),此種策略對于提高網絡服務的質量,消除單點故障,減少損失在物理上提供了保障。多條ISP接入的方案并不是簡單的多條不同的廣域網絡的路由問題來解決,因為不同的ISP有不同自治域,所以必須考慮到在各種情況下如何來實現多條鏈路的負載均衡,來實現自動線路連接判斷、自動線路帶寬判斷、路由回朔、帶寬負載分攤等問題,來提高網絡適應性和網絡帶寬的利用效率。多鏈路負載均衡在帶寬分攤上支持輪巡、連接數負載均分、流量負載均分等多種模式。在一條鏈路出現中斷的情況下,可以自動切換到另一條鏈路上,從而可以保障線路的不間斷。
(1)能夠避免服務器、區域中心出現網絡鏈路等的單點失效,也能避免由于ISP專線故障引起的單點失效。要求在正常情況下將用戶對外的訪問流量和外部用戶對內部服務器的訪問流量負載均衡到兩條鏈路上,在某鏈路故障時自動將其流量切換到另外的鏈路,自動的透明容錯,當鏈路恢復時自動將其加入到負載均衡中來。
(2)解決網絡擁塞問題,提高服務器響應速度,服務就優提供,達到更好的訪問質量。采用豐富的負載均衡算法對路由器進行負載均衡,使流量得以合理分配,并且需要處理負載均衡所帶來的會話保持問題。某臺路由訪問發生擁塞時由負載均衡自動檢查到,并且將其從POOL群組中排除,透明的容錯,從而保證訪問互聯網的服務整體性能得以大幅度提升。
(3)網絡層次上的負載均衡針對網絡上負載過重的不同瓶頸所在,從網絡的不同層次入手,可以采用相應的負載均衡技術來解決現有問題。
(4)冗余的系統實施方案,任何單點故障不影響系統的正常運行。在接入系統的設計中,對于所有的設備,均采用冗余設計和實施,充分考慮到各種設備和線路的中斷或故障情況,在發生故障時系統能迅速切換,保證系統的正常運行。
多鏈路負載均衡系統訪問互聯網出口有移動、網通、電信等鏈路如圖1。
鏈路負載均衡設備設置在內部網絡和Internet接入電信、網通、移動鏈路之間,它時刻監視鏈路,通過一系列透明的狀態和性能檢測,分析每條鏈路的狀況,然后按照預先設置好的的鏈路負載算法,將流量分別導向到最優的鏈路,一旦某條鏈路出現故障,流量全部安排到另外可用鏈路上,實現鏈路冗余備份。鏈路負載均衡涉及的是在多個鏈路上分配數據流量的能力。鏈路負載均衡是試圖找出一種流量分配方案,以達到讓網絡使用者的訪問體驗最快,并充分利用多鏈路的目的如果每收到一個數據包就運行負載均衡算法選擇最佳鏈路。這樣,就可以使流量在多條鏈路上均衡地分配,有效地提高了鏈路帶寬利用率,而流量總是通過最佳的路由傳輸,也大大地提高了網絡效率。
如圖1所示有3條ISP線路,為了保證內網用戶能夠可靠的對外提供服務,現網分別現網對Outbound和Inbound流量的負載均衡策略,對域名訪問提供了global負載均衡,內部的應用系統和網絡工作站在訪問互聯網絡的服務和網站時如何能夠在多條不同的鏈路中動態分配和負載均衡,這也被稱為OUTBOUND流量的負載均衡,互聯網絡的外部用戶如何在外部訪問內部的網站和應用系統時也能夠動態的在多條鏈路上平衡分配,并在一條鏈路中斷的時候能夠智能地自動切換到另外一條鏈路到達服務器和應用系統,這也被稱作為INBOUND流量的負載均衡。對Outbound流量,F5 Link controller對內部出去的Outbound流量進行分配,采用的輪詢,比重等負載均衡算法分配流量到不同的INTERNET接口,并做源地址的NAT,可以指定某一合法IP地址進行源地址的NAT,也可以用BIG/IP的接口地址自動映射,保證數據包返回時能夠正確接收,還可以根據運用,地址分配來分配ISP資源使用,可以根據需要來調整。對于Inbound訪問內部服務流量,F5 Link controller分別綁定兩個ISP服務商的公網地址,解析來自兩個ISP服務商的DNS解析請求。F5 Link controller不僅可以根據服務器的健康狀況和響應速度回應LDNS相應的IP地址,還可以通過兩條鏈路分別與LDNS建立連接,根據RTT時間判斷鏈路的好壞,并且綜合以上兩個參數回應LDNS相應的IP地址。保證運用的訪問都是通過健康的鏈路進行。另外,F5 Link controller對widip的設置,即一個域名對用多個ISP的公網地址,客戶訪問域名的時候,最終的域名解析需要通過F5 Link controller來完成,有F5 Link controll er返回給客戶某一條鏈路的公網地址,實現兩條接入鏈路的負載均衡。
會話保持在大部分的應用中都會涉及到服務器Session控制。而且這些Session通常不會在服務器之間進行復制的。也就是說一個用戶在訪問服務的時候,如果分配到了某一條鏈路上,則最基本的要求就是這個用戶后續的請求都分配到這臺服務器上。如果分配到其他的服務器上則可能不認識這個用戶的請求,而造成請求失敗。實例中是采用最簡單的會話保持策略是源地址會話保持,也就是負載均衡設備認為同一個源地址過來的所有請求都是發自于同一個客戶端。在源地址會話保持的情況下,一個客戶端的第一個請求會按照負載均衡策略進行分配,一旦分配了一臺服務器之后,后續的請求都會發到這臺服務器。

圖1
負載均衡必須通過健康檢查的方式監控三條鏈路的狀態,必須檢測鏈路是否在正常工作,如果發現某條鏈路出現了故障,負載均衡講不會返回給客戶該鏈路的相應服務器的公網地址,保證用戶的訪問不會中斷。當鏈路恢復服務的時候,再把鏈路重新加入到負載均衡組里進行工作。一個良好 的負載均衡策略應有對網絡故障、服務器系統故障、應用服務故障的檢測方式和能力,現階段鏈路負載均衡所使用的檢測主要是:
(1)Ping偵測:通過ping的方式檢測服務器及網絡系統狀況,此種方式簡單快速,但只能大致檢測出網絡及服務器上的操作系統是否正常,對服務器上的應用服務檢測就無能為力了。
(2)TCP Open偵測:每個服務都會開放某個通過TCP連接,檢測服務器上某個TCP端口(如Telnet的23口,HTTP的80口等)是否開放來判斷服務是否正常。
(3)HTTP URL偵測:比如向HTTP服務器發出一個對main.html文件的訪問請求,如是否開放來判斷服務是否正常。
多鏈路負載均衡系統在現階段網絡提供全冗余、全負載均衡網絡結構,排除網絡單點故障和透明的容錯處理問題,提高網絡服務能力和投資回報率;提供比較少的網絡層次,避免運行維護時面對的大批網絡設備;靈活的擴展空間,用戶可以根據實際的網絡流量和壓力增加鏈路帶寬,保證系統的安全、穩定運行,大幅度提高用戶訪問互聯網體驗。
[1]單康康,江肖強.鄒池佳基于F5多鏈路負載均衡技術在校園網中的應用[J].電腦知識與技術,2011(5).
[2]叢玉華.多鏈路出口負載均衡技術的研究及實現[J].計算機與數字工程,2012(9).