摘 要 本文介紹了第四層交換技術的概念,技術原理以及如何使用第四層交換技術實現遠程教育系統中的應用服務器負載均衡。
1 引言
當今世界已經步入信息時代,隨著社會的迅速發展以及人們對網絡應用需求的不斷提高,對網絡速度及帶寬的要求不斷上升。正是在這樣的發展形勢下,許多高速交換的新技術不斷湧現。第二層交換實現局域網內主機間的快速信息交流,第三層交換可以說是交換技術與路由技術的完美結合,而下文要詳細介紹的第四層交換技術則可以為網絡應用資源提供最優分配,實現應用服務的負載均衡。
2 第四層交換技術
2.1 簡述
第四層交換的一個簡單定義是:它是一種功能,它決定傳輸不僅僅依據MAC地址(第二層網橋)或源/目標IP地址(第三層路由),而且依據TCP/UDP(第四層)應用端口號。第四層交換功能就像是虛擬IP,指向物理服務器。它傳輸的業務服從的協議多種多樣,有HTTP、FTP、NFS、Telnet或其他協議。這些業務在物理服務器基礎上,需要復雜的載量平衡算法。在IP世界,業務類型由終端TCP或UDP端口地址來決定,在第四層交換中的應用區間則由源端和終端IP地址、TCP和UDP端口共同決定。
在第四層交換中為每個供搜尋使用的服務器組設立虛擬IP地址(VIP),每組服務器支持某種應用。在域名服務器(DNS)中存儲的每個應用服務器地址是VIP,而不是真實的服務器地址。
當某用戶申請應用時,一個帶有目標服務器組的VIP連接請求(例如一個TCP SYN包)發給服務器交換機。服務器交換機在組中選取最好的服務器,將終端地址中的VIP用實際服務器的IP取代,並將連接請求傳給服務器。這樣,同一區間所有的包由服務器交換機進行映射,在用戶和同一服務器間進行傳輸。
2.2 技術原理
OSI模型的第四層是傳輸層。傳輸層負責端對端通信,即在網絡源和目標系統之間協調通信。在IP協議棧中這是TCP(傳輸控制協議)和UDP(用戶數據報協議)所在的協議層。
在第四層中,TCP和UDP標題包含端口號(port number),它們可以唯一區分每個數據包包含哪些應用協議(例如HTTP、FTP等)。端點系統利用這種信息來區分包中的數據,尤其是端口號使一個接收端計算機系統能夠確定它所收到的IP包類型,並把它交給合適的高層軟件。端口號和設備IP地址的組合通常稱作“插口(socket)”。分配端口號的最近清單可以在RFC 1700“Assigned Numbers”上找到。
TCP/UDP端口號提供的附加信息可以為網絡交換機所利用,這是第四層交換的基礎。具有第四層功能的交換機能夠起到與服務器相連接的“虛擬IP”(VIP)前端的作用。每台服務器和支持單一或通用應用的服務器組都配置一個VIP地址。這個VIP地址被發送出去並在域名系統上注冊。
在發出一個服務請求時,第四層交換機通過判定TCP開始,來識別一次會話的開始。然後它利用復雜的算法來確定處理這個請求的最佳服務器。一旦做出這種決定,交換機就將會話與一個具體的IP地址聯系在一起,並用該服務器真正的IP地址來代替服務器上的VIP地址。
每台第四層交換機都保存一個與被選擇的服務器相配的源IP地址以及源TCP 端口相關聯的連接表。然後第四層交換機向這台服務器轉發連接請求。所有後續包在客戶機與服務器之間重新影射和轉發,直到交換機發現會話為止。
在使用第四層交換的情況下,接入可以與真正的服務器連接在一起來滿足用戶制定的規則,諸如使每台服務器上有相等數量的接入或根據不同服務器的容量來分配傳輸流。
2.3 具有第四層交換能力的產品
目前Berkeley Networks公司、Alteon Networks公司等公司都有比較成熟的第四層交換產品和模塊推出。Berkeley Networks公司的exponeNT e4和Alteon Networks公司的ACEswith 180兩款第四層交換產品具有突出的性能和靈活性,能夠比第二層和第三層交換機做出更智能的轉發決定。由於把包頭查詢的代碼嵌入到交換機中的專用集成電路(ASIC)中去實現上述功能,幾乎不會造成任何延時。這兩家廠商的交換機都能實現10M、100M和吉比特以太網功能,但是Berkeley的交換機是設計用於企業應用的,而Alteon交換機則是用於擁有大量Web或FTP服務器的機構的。Alteon的第四層交換技術能通過對服務器的性能和運行狀況的實時監測,根據不同服務器的健康狀況,將來訪的數據流量以經濟高效的方式分配到合適的服務器上。同時,Alteon的第四層交換技術具有Web高速緩存重定向功能,能把指定發往遠程Internet主機的HTTP通信攔截,並將這些通信重新定向到本地的高速緩存服務器上,從而大大加快了訪問Internet的速度,並節省了大量寶貴的廣域網帶寬。而且這對於用戶和信息提供者來說是完全透明的,不需要用戶和信息提供者做任何的設置。
Cabletron 公司的SmartSwitch Router和Torrent Networking Technologies公司推出的IP9000 吉比特 Router 也是具有第四層交換功能的產品。其中SmartSwitch Router可以實現骨干網從常規第三層交換向全面的第三層、第四層交換功能的升級轉換,其獨特的廣域網集成能力以及基於第四層交換的訪問控制能力對於網絡數據傳輸安全、有序地進行發揮了關鍵作用。此外,Cabletron SmartSwitch Router基於第四層交換的QoS功能為特定業務應用數據交換提供了不同級別的優先處理能力。
3 使用第四層交換技術實現服務器負載均衡
以下設計來源於某高校網絡教育學院網絡中心的實際應用。通過Alteon的第四層交換機為遠程教學提供各種應用服務的負載均衡,提高網絡的整體性能。
學生通過互聯網進行遠程交互學習。網絡學院的網絡中心配制了三組服務器,每組服務器包括若干台具備相同內容的服務器。其中有Web服務器組,教學服務器組,DATA(數據庫)服務器組。其中每組服務器組都配制一個虛擬IP。學生通過互聯網訪問這些應用服務器。每一組服務器都連接到Alteon的第四層交換機上,在交換機上實現應用服務的負載均衡。
Alteon的第四層交換機監測服務器的可用性,包括物理連接、服務器主機、服務應用本身的健康狀況,當發現某台服務器不能提供相應的服務時,交換機自動把該應用請求分配到好的其他服務器。Alteon第四層交換機還可以通過設置每台服務器能承受的最大會話數,設置溢出服務器、備份服務器等方法來進一步保證服務器系統的可靠性。服務器在同一局域網內實現負載均衡時采用多種負載均衡算法,包括Least Connection、Round Robin、MinMiss和散列算法,以及對算法的加權等等。當服務器不在同一局域網內時,利用Alteon交換機的GlobalLoad Balance技術來實現負載分擔的合理性問題。
假設Web服務器組有三台內容相同的Web服務器S1、S2、S3。其中S1的真實IP是10.1.1.1,S2的真實IP是10.1.1.2,S3的真實IP是10.1.1.3。這個Web服務器組的虛擬IP為61.134.38.5。
當同時有多個學生訪問我們的Web服務,Alteon第四層交換機接受到多個並發請求訪問61.134.38.5上的Web服務。此時,Alteon第四層交換機將會根據一定的算法將這些請求合理地分配給S1、S2、S3實現動態的負載均衡。
以上簡單介紹了第四層交換技術在服務器負載均衡方面的應用。然而第四層交換除了負載均衡功能外還支持其他功能,如基於應用類型和用戶ID的傳輸流控制功能。采用多級排隊技術,第四層交換機可以根據應用來標記傳輸流以及為傳輸流分配優先級。此外,第四層交換機直接安放在服務器前端,它了解應用會話內容和用戶權限,因而使它成為了防止非授權訪問服務器的理想平台。
4 總結
隨著網絡信息系統由小型到中型到大型的發展趨勢,交換技術也由原來最初的基於MAC地址的交換,發展到基於IP地址的交換,進一步發展到基於IP+端口的交換,如今也提出了第七層交換(基於內容的交換)。本文對第四層交換技術作了一個比較全面的介紹,並將該技術應用到教育系統上實現了服務器的負載均衡。可見,網絡交換技術的不斷發展使得原來由基於數據的交換變成了基於應用的交換,不僅提高了網絡的訪問速度,而且不斷地優化了網絡的整體性能。