專利名稱:構建高性價比機群網絡負載均衡轉發器的方法
技術領域:
本發明涉及計算機應用技術領域,具體地說是一種高可用高可擴展高性價比的機群網絡轉發器技術,主要是適用于機群轉發器系統。
2、技術背景由于互聯網絡的飛速發展,現有的服務器機群和數據中心難以滿足日益增長的性能要求。除了升級帶寬,機群轉發器系統是解決機群系統和數據中心性能問題很好的解決方案,但是傳統的機群轉發器系統難以動態擴展,而且往往成為系統的瓶頸和單一故障點。因此,必須通過高可擴展,高可用機制,對原有技術進行改進。
3、發明內容本發明的目的是提供一種構建高可擴展性、高可用性和高性價比的機群網絡轉發器的方法。
高可擴展性是指通過增加資源以滿足不斷增長的對性能和功能的要求,或者是通過縮減資源,以降低成本,從涵蓋硬件和軟件的角度上講,我們可以把符合這種特性的計算機系統稱作是可擴展的提供更好的性能、更多的功能。系統的總體計算能力應該隨著資源的增加而按照比例增展。理想的情況是,增長的速度是線性的。成本的增加應該小于N或者NlogN的一個線性系數。
可兼容性包括硬件、系統軟件和應用軟件在內的組成部分。
高可用性是指當系統中出現軟件或硬件故障時應用還能持續可用的系統,通常通過系統部件的復制來實現。如果一些部件不可用,其備份部件會代替其繼續工作。高可用系統通常由兩個或多個節點組成,這些節點通過互聯網絡直接或間接相連。
高性價比是指和同類產品相比,使用相對低廉的成本而達到相似的性能或者使用相同的成本而具有更高的性能。達到高性價比的途徑之一就是完全采用普通商業組件來構造轉發器系統,達到同類產品的相似的性能。
附圖1為轉發器的工作原理示意圖;1)轉發器設備將收到的報文通過Trunking技術選擇一條物理鏈路發送給轉發器;2)轉發器將收到的報文根據其源IP地址和IP地址劃分規則轉發給負載均衡器;
3)負載均衡器根據負載均衡算法將請求轉發給后端真實服務器;附圖2為轉發器在100M環境下可擴展性測試結果圖標;1)測試網絡環境為100M;2)測試工具為Webbench5.0;3)測試客戶端配置為PIII CPU,256M內存;4)測試服務器配置均為浪潮NF260。
附圖3為轉發器在1000M環境下可擴展性曲線圖。
1)測試網絡環境為1000M;2)采用壓力測試,模擬客戶端的數目為16384;3)測試用的服務器均采用浪潮NF260;4)如附圖所示,隨著轉發器機數目增加,其性能越來越好,甚至超過線性;其原因在于單臺轉發器機的性能隨著模擬客戶端數目的增加其性能也相應變壞。單臺轉發器機執行負載均衡的主要開銷在于接收報文,建立、查找、維護連接紀錄表和轉發報文,這樣在相同客戶端數目的情況下,如果單臺轉發器機的連接表大小為N,那么2臺轉發器機時每臺轉發器機連接表大小為N/2,相應M臺轉發器機時每臺連接表的大小為N/M,這樣隨著轉發器機數目的增加,每臺轉發器機接收和轉發報文的能力不變,而維護連接表的數目大大減少,其查找連接記錄的效率也大大提高,負載均衡能力也明顯相應提高,從而表現出性能的非線性較線性還好的改善。
5、實施方式本發明的目的是按以下方式實現的,利用網絡第二層交換機的鏈路聚集功能,將多個符合IEEE802.3ad標準的物理鏈路捆綁成一條邏輯鏈路,實現多個物理鏈路同時具有高可用性和負載均衡特性,并采用分層拓撲結構和層次級聯的連接方式,構建成多層高性價比機群網絡負載均衡轉發器。
一條邏輯鏈路所捆綁物理鏈路數目的最大值等于交換機所支持的一組最大物理鏈路的條數,一條邏輯鏈路所聚集的多個物理鏈路中,如果某條物理鏈路失效,交換機將自動將該條物理鏈路的負載切換到其他可用的物理鏈路上,實現鏈路的高可用性。
鏈路聚集的負載均衡特性是對應于一條邏輯鏈路的多條物理鏈路之間根據輪循計算法實現流量均衡。
分層拓撲結構是根據網絡OSI模型,將該轉發器劃分為層次獨立的功能組件,下層組件為上層組件提供服務。
層級級聯的連接方式是將轉發器的分層組件通過層次級聯的方式互聯起來,如附圖1所示。
四層以下的轉發器的配置數量可以通過修改第三層轉發器的轉發表而動態的增加,實現可擴展性。
第三層轉發器接收第二層鏈路聚集的報文,然后根據接收報文的源IP地址,實現負載均衡轉發功能。
第三層轉發器的負載均衡功能是根據鏈路聚集報文的源IP地址,將報文按照源IP進行劃分,然后轉發到不同的后端轉發器上。
同組的轉發器之間互為備份,互相監視健康狀態,如果某轉發器失效,將由其他轉發器接管該失效的轉發器。
互為備份技術為同組轉發器根據各自的標志ID來實現互相備份數據。
同組轉發器是將共同執行同一虛擬目的IP地址的多個轉發器劃分為一組,同組內的轉發器通過唯一的標志ID來互相區分和互相監視健康狀態。
互相監視健康狀態是同組的轉發器根據各自的標志ID來定期交換心跳信息,在設定的時間間隔內沒有收到對方的心跳信息,則認為對方已經失效,同時進行失效接管。
失效接管是在某臺轉發器失效時,將由備份其數據的轉發器來接管其負載,從而實現服務不中斷。
在本發明的方法中,第四層轉發器是利用網絡傳輸層特性、IP地址和服務端口號以及第四層負載均衡算法,在后端真實服務器之間進行負載均衡。
第四層負載均衡算法是根據服務器負載狀況,給接收的報文選擇具體真實服務器的負載均衡算法,負載均衡算法包括輪循算法、最小連接算法、加權輪循算法、加權最小連接算法和持續性連接算法。
第四層轉發器根據所選擇的具體負載均衡算法,將用戶請求報文的目的地址或者MAC修改為根據算法選擇出的后端真實服務器的地址或者MAC,然后將請求報文轉發出去,從而實現負載均衡。
四層以下的轉發器是利用各層的網絡特性和根據各層的負載均衡算法,基于協議內容進行負載均衡。
末層第七層負載均衡算法是根據服務內容特性,給接收到的連接請求選擇具體真實服務器來處理的算法,并根據用戶請求服務內容分發給由具體負載均衡算法選擇出的后端真實服務器,具體負載均衡算法包括URL調度算法,HTTP報頭調度算法和Cookie調度算法。
本發明的方法具有以下特點1)機群網絡負載均衡轉發器的功能、性能和可擴展性利用二層交換機的Trunking功能,通過增加鏈路聚集的鏈路數目,實現第二層的動態擴展,實現網絡二至七層的可擴展性;其帶寬的擴展是線性的;利用網絡第二層交換機的鏈路聚集功能,將多個符合IEEE802.3ad標準的物理鏈路捆綁成一條邏輯鏈路,實現多個物理鏈路同時具有高可用性和負載均衡特性,并采用分層拓撲結構和層次級聯的連接方式,構建第三層高性價比機群網絡負載均衡轉發器。第三層機群網絡負載均衡轉發器的數目可以隨著Trunking鏈路的數量動態的擴展;通過增加其轉發表,可以實現網絡第三層的動態擴展性;構建四到七層機群網絡負載均衡轉發器,可以隨著第三層負載均衡轉發器支持的轉發表動態的擴展;通過修改負載均衡規則,可以實現四至七層的可擴展性,后臺真實服務器可以隨著高層負載均衡器數目動態的擴展,理論上可以無限擴展;二至七層相互獨立,可以根據需要進行組合使用,具有擴展的靈活性;可擴展性測試結果如附圖2、3所示。
2)機群網絡負載均衡轉發器的高可用性利用二層交換機Trunking特性,實現網絡第二層的高可用性;當某條聚集鏈路失效時,該條鏈路的流量將自動擴展分配到其他的鏈路上;利用負載均衡轉發器高可用軟件,實現網絡第三層的高可用性,當對應某條聚集鏈路的轉發器失效后,將由高可用軟件檢測到,并將該負載均衡轉發器的負載動態切換到其他正常的負載均衡轉發器上;同樣,利用四至七層負載均衡器的高可用特性,實現網絡四至七層的高可用性;3)機群網絡負載均衡轉發器性價比得到提升通過性能的擴展性,該系統完全采用普通商業組件構成,因而成本低;用浪潮服務器和具有Trunking功能的交換機集成,可比同性能的其他轉發器機設備性價比提升1-2倍;對于典型配置,用Trunking功能交換機(具有4Trunking端口)和4臺浪潮服務器取代8端口內容交換機,性能提升高而成本低廉。
性價比比較如下表所示設備名稱端口數 性能價格Nortel Alteon 184 9 10/100/1000M 14000Http connections/s 200K RMB本發明的產品 8 10/100/1000M 44000Http connections/s 150K RMB4)可兼容性本發明的產品采用完全的分層設計,第二層的Trunking交換機,第三層負載均衡轉發器以及四到七層負載均衡轉發器之間層次獨立,可以各自獨立升級,具有很好的兼容性。
5)延遲問題由于廣域網的延遲一般較大,約為10~70毫秒,所以本發明的轉發器設備雖然增加了轉發的次數,但是導致延遲增加僅僅大約10~70微秒,對于廣域網應用幾乎沒有影響。
本發明的方法與現有同類技術相比,完全采用普通商業組件就能構建具有性價比高、擴展性好、可用率高的計算機網絡負載均衡轉發器,可完全采用普通和相對低廉的商業組件就能構建具有性價比高、擴展性好、可用率高的計算機網絡負載均衡轉發器,因此具有很好的推廣應用價值和市場前景。
權利要求
1.構建高性價比機群網絡負載均衡轉發器的方法,其特征在于利用網絡第二層交換機的鏈路聚集功能,將多個符合IEEE802.3ad標準的物理鏈路捆綁成一條邏輯鏈路,實現多個物理鏈路同時具有高可用性和負載均衡特性,并采用分層拓撲結構和層次級聯的連接方式,構建成多層高性價比機群網絡負載均衡轉發器。
2.根據權利要求1所述的方法,其特征在于一條邏輯鏈路所捆綁物理鏈路數目的最大值等于交換機所支持的一個鏈路聚集組最大物理鏈路的條數,一條邏輯鏈路所聚集的多個物理鏈路中,如果某條物理鏈路失效,交換機將自動將該條物理鏈路的負載切換到其他可用的物理鏈路上,實現鏈路的高可用性;鏈路聚集的負載均衡特性是對應于一條邏輯鏈路的多條物理鏈路之間根據輪循計算法實現流量均衡;分層拓撲結構是根據網絡OSI模型,將該機群網絡負載均衡轉發器劃分為層次獨立的功能組件,下層組件為上層組件提供服務;層級級聯的連接方式是將轉發器的分層組件通過層次級聯的方式相互聯接。
3.根據權利要求1所述的方法,其特征在于四層以下以上的轉發器的配置數量可以通過修改第三層轉發器的轉發表而動態的增加,實現可擴展性;第三層轉發器接收第二層鏈路聚集的報文,然后根據接收報文的源IP地址,實現負載均衡轉發功能。
4.根據權利要求3所述的方法,其特征為第三層轉發器的負載均衡功能是根據鏈路聚集報文的源IP地址,將報文按照源IP進行劃分,然后轉發到不同的后端轉發器上,同組的轉發器之間互為備份,互相監視健康狀態,如果某轉發器失效,將由其他轉發器接管該失效的轉發器,互為備份技術為同組轉發器根據各自的標志ID來實現互相備份數據,
5.根據權利要求3、4所述的方法,其特征為同組轉發器是將共同執行同一虛擬目的IP地址同一層上的多個轉發器劃分為一組,同組內的轉發器通過唯一的標志ID來互相區分和互相監視健康狀態,互相監視健康狀態是同組的轉發器根據各自的標志ID來定期交換心跳信息,在設定的時間間隔內沒有收到對方的心跳信息,則認為對方已經失效,同時進行失效接管,失效接管是在某臺轉發器失效時,將由備份其數據的轉發器來接管其負載,從而實現服務不中斷。
6.根據權利要求1所述的方法,其特征為第四層轉發器是利用網絡傳輸層特性、IP地址和服務端口號以及第四層負載均衡算法,在后端真實服務器之間進行負載均衡,第四層負載均衡算法是根據服務器負載狀況,給接收的報文選擇具體真實服務器的負載均衡算法,負載均衡算法包括輪循算法,最小連接算法,加權輪循算法,加權最小連接算法,持續性連接算法,第四層以上轉發器根據所選擇的具體負載均衡算法,是將用戶請求報文的目的地址或者MAC修改為根據算法選擇出的后端真實服務器的地址或者MAC,然后將請求報文轉發出去,從而實現負載均衡,四層以下的轉發器是利用各層的網絡特性和根據各層的負載均衡算法,基于協議內容進行負載均衡。
7.根據權利要求1所述的方法,其特征為末層第七層負載均衡算法是根據服務內容特性,給接收到的連接請求選擇具體真實服務器來處理的算法,并將用戶請求分發給根據服務內容由具體的負載均衡算法選擇出的后端真實服務器,上述算法包括URL調度算法,HTTP報頭調度算法和Cookie調度算法。
全文摘要
本發明提供一種構建高性價比機群網絡負載均衡轉發器的方法,該方法是利用網絡第二層交換機的鏈路聚集功能,將多個符合IEEE802.3ad標準的物理鏈路捆綁成一條邏輯鏈路,實現多個物理鏈路同時具有高可用性和負載均衡特性,并采用分層拓撲結構和層次級聯的連接方式,構建成多層高性價比機群網絡負載均衡轉發器。本發明的方法與現有同類技術相比,可完全采用普通和相對低廉的商業組件就能構建具有性價比高、擴展性好、可用率高的計算機網絡負載均衡轉發器,因此具有很好的推廣應用價值和市場前景。
文檔編號H04L12/54GK1599351SQ20031011461
公開日2005年3月23日 申請日期2003年12月17日 優先權日2003年12月17日
發明者董小社, 劉愛華, 王恩東, 錢德沛, 張露, 伍衛國 申請人:浪潮電子信息產業股份有限公司