四層交換
第四層交換的一個簡單定義是:它是一種功能,它決定傳輸不僅僅依據(jù)MAC地址(第二層網(wǎng)橋)或源/目標IP地址(第三層路由),而且依據(jù)TCP/UDP(第四層) 應用端口號。第四層交換功能就象是虛IP,指向物理服務器。它傳輸?shù)臉I(yè)務服從的協(xié)議多種多樣,有HTTP、FTP、NFS、Telnet或其他協(xié)議。這些業(yè)務在物理服務器基礎上,需要復雜的載量平衡算法。在IP世界,業(yè)務類型由終端TCP或UDP端口地址來決定,在第四層交換中的應用區(qū)間則由源端和終端IP地址、TCP和UDP端口共同決定。
在第四層交換中為每個供搜尋使用的服務器組設立虛IP地址(VIP),每組服務器支持某種應用。在域名服務器(DNS)中存儲的每個應用服務器地址是VIP,而不是真實的服務器地址。
當某用戶申請應用時,一個帶有目標服務器組的VIP連接請求(例如一個TCP SYN包)發(fā)給服務器交換機。服務器交換機在組中選取最好的服務器,將終端地址中的VIP用實際服務器的IP取代,并將連接請求傳給服務器。這樣,同一區(qū)間所有的包由服務器交換機進行映射,在用戶和同一服務器間進行傳輸。
二,第四層交換的原理
OSI模型的第四層是傳輸層。傳輸層負責端對端通信,即在網(wǎng)絡源和目標系統(tǒng)之間協(xié)調(diào)通信。在IP協(xié)議棧中這是TCP(一種傳輸協(xié)議)和UDP(用戶數(shù)據(jù)包協(xié)議)所在的協(xié)議層。
在第四層中,TCP和UDP標題包含端口號(portnumber),它們可以唯一區(qū)分每個數(shù)據(jù)包包含哪些應用協(xié)議(例如HTTP、FTP等)。端點系統(tǒng)利用這種信息來區(qū)分包中的數(shù)據(jù),尤其是端口號使一個接收端計算機系統(tǒng)能夠確定它所收到的IP包類型,并把它交給合適的高層軟件。端口號和設備IP地址的組合通常稱作“插口(socket)”。
1和255之間的端口號被保留,他們稱為“熟知”端口,也就是說,在所有主機TCP/I
P協(xié)議棧實現(xiàn)中,這些端口號是相同的。除了“熟知”端口外,標準UNIX服務分配在256到1024端口范圍,定制的應用一般在1024以上分配端口號.
分配端口號的最近清單可以在RFc1700”Assigned Numbers”上找到。TCP/UDP端
口號提供的附加信息可以為網(wǎng)絡交換機所利用,這是第4層交換的基礎。
"熟知"端口號舉例:
應用協(xié)議 端口號
FTP 20(數(shù)據(jù))
21(控制)
TELNET 23
SMTP 25
HTTP 80
NNTP 119
NNMP 16
162(SNMP traps)
TCP/UDP端口號提供的附加信息可以為網(wǎng)絡交換機所利用,這是第四層交換的基礎。
具有第四層功能的交換機能夠起到與服務器相連接的“虛擬IP”(VIP)前端的作用。
每臺服務器和支持單一或通用應用的服務器組都配置一個VIP地址。這個VIP地址被發(fā)送出去并在域名系統(tǒng)上注冊。
在發(fā)出一個服務請求時,第四層交換機通過判定TCP開始,來識別一次會話的開始。然后它利用復雜的算法來確定處理這個請求的最佳服務器。一旦做出這種決定,交換機就將會話與一個具體的IP地址聯(lián)系在一起,并用該服務器真正的IP地址來代替服務器上的VIP地址。
每臺第四層交換機都保存一個與被選擇的服務器相配的源IP地址以及源TCP 端口相
關(guān)聯(lián)的連接表。然后第四層交換機向這臺服務器轉(zhuǎn)發(fā)連接請求。所有后續(xù)包在客戶機與服務器之間重新影射和轉(zhuǎn)發(fā),直到交換機發(fā)現(xiàn)會話為止。
在使用第四層交換的情況下,接入可以與真正的服務器連接在一起來滿足用戶制定的規(guī)則,諸如使每臺服務器上有相等數(shù)量的接入或根據(jù)不同服務器的容量來分配傳輸流。
三,第四層交換的作用
第四層交換的主要作用是提高服務器和服務器群的可靠性和可擴性。
如果服務器速度跟不上,即使是具有最快速交換的網(wǎng)絡也不能完全確保端到端的性能。可以想見高優(yōu)先權(quán)的業(yè)務在這種QoS使能的網(wǎng)絡中會因服務器中低優(yōu)先權(quán)的業(yè)務隊列而阻塞。在更糟的情況下,服務器甚至會喪失循環(huán)處理業(yè)務的能力。
設計在服務器上的第四層交換的目的就是擴展過去服務器和應用中第二層和第三層交換的性能和業(yè)務流的管理功能。
四,第四層交換的優(yōu)勢
第四層交換使用第三層和第四層信息包的報頭信息,根據(jù)應用區(qū)間識別業(yè)務流,將整個區(qū)間段的業(yè)務流分配到合適的應用服務器進行處理。
每個開放的區(qū)間與特定的服務器相關(guān),為跟蹤服務器,第四層交換使多個服務器支持的特殊應用,隨服務器的增加而線性增強整體性能。同時,第四層交換通過減少對任何特定服務器的依賴性而提高應用的可靠性。
第四層交換也要求端到端QoS,提高第二層和第三層交換一包接一包QoS傳輸?shù)哪芰Α@纾瑥募墑e高的用戶來的業(yè)務或重要應用的網(wǎng)絡業(yè)務流,可以分配給最快的I/O系統(tǒng)和CPU,而普通的業(yè)務就分配給性能較差的機器。
五,第四層交換與第二層、第三層交換
如果第二層交換是網(wǎng)橋的再現(xiàn),第三層交換是路由,那么,什么是第四層交換?第四層交換可以根據(jù)專門的應用進行流量排隊,這為基于規(guī)則的服務質(zhì)量機制提供了一條更可操作的途徑。我們可以把第四層交換叫作“會話交換機”。
a,第二層交換
局域網(wǎng)交換技術(shù)是作為對共享式局域網(wǎng)提供有效的網(wǎng)段劃分的解決方案而出現(xiàn)的,他可以使每個用戶盡可能地分享到最大帶寬。前文已經(jīng)提到,交換技術(shù)是在OSI七層網(wǎng)絡模型中的第二層,即數(shù)據(jù)鏈路層進行操作的,因此交換機對數(shù)據(jù)包的轉(zhuǎn)發(fā)是建立在MAC地址--物理地址基礎之上的,對于IP網(wǎng)絡協(xié)議來說,它是透明的,即交換機在轉(zhuǎn)發(fā)數(shù)據(jù)包時,不知道也無須知道信源機和信宿機的IP地址,只須其物理地址即MAC地址。交換機在操作過程當中會不斷的收集資料去建立它本身的一個地址表,這個表相當簡單,它說明了某個MAC地址是在哪個端口上被發(fā)現(xiàn)的,所以當交換機收到一個TCP/IP封包時,他便會看一下該數(shù)據(jù)包的標簽部分的目的MAC地址,核對一下自己的地址表以確認該從哪個端口把數(shù)據(jù)包發(fā)出去,由于這個過程比較簡單,加
上今天這功能由ASIC硬件進行,因此速度相當高,一般只需幾十微秒,交換機便可決定一個IP封包該往那里送。值得一提的是:萬一交換機收到一個不認識的封包,就是說如果目的地MAC地址不能在地址表中找到時,交換機會把IP封包"擴散"出去,即把它從每一個端口中送出去,就好象交換機在收到一個廣播封包時一樣處理。二層交換機的弱點正是它處理廣播封包的手法太不有效,比方說,當一個交換機收到一個從TCP/IP工作站上發(fā)出來的廣播封包時,他便會把該封包傳到所有其他端口去,哪怕有些端口上連的是IPX或DECnet工作站!這樣一來,非TCP/IP接點的帶寬便會受到負面的
影響,就算同樣的TCP/IP接點,除非他們的子網(wǎng)跟發(fā)送那個廣播封包的工作站的子網(wǎng)相同,否則他們也會無原無故地收到一些與他們毫不相干的網(wǎng)絡廣播,整個網(wǎng)絡的效率因此會大打折扣。
b,第三層交換
假設主機A跟主機B以前曾通過交換機通信,中間的交換機如支持第三層交換的話,他便會把A和B的IP地址及他們的MAC地址記錄下來,當其它主機如C要和A或B通信時,針對C所發(fā)出的尋址封包,第三層交換機會不假思索的送C一個回覆封包告訴他A或B的MAC地址,以后C當然就會用A或B的MAC地址"直接"和他通信。因為通信雙方完全沒有通過路由器這樣的第三者,所以那怕A、B和C屬不同的子網(wǎng),他們間均可直接知道對方的MAC地址來通信,更重要的是,第三層交換機并沒有像其他交換器般把廣播封包擴散,第三層交換機之所以叫三層交換器便是因為他們能看懂三層信息,
如IP地址、ARP等。因此,三層交換器便能洞悉某廣播封包目的何在,而在沒有把他擴散出去的情形下,滿足了發(fā)出該廣播封包的人的需要,(不管他們在任何子網(wǎng)里)。如果認為第三層交換機就是路由器,那也應稱作超高速反傳統(tǒng)路由器,因為第三層交換器沒做任何"拆打"數(shù)據(jù)封包的工作,所有路過他的封包都不會被修改并以交換的速度傳到目的地。
相比之下,路由器是在OSI七層網(wǎng)絡模型中的第三層--網(wǎng)絡層操作的,它在網(wǎng)絡中,
收到任何一個數(shù)據(jù)包(包括廣播包在內(nèi)),都要將該數(shù)據(jù)包第二層(數(shù)據(jù)鏈路層)的信息去掉(稱為"拆包"),查看第三層信息(IP地址)。然后,根據(jù)路由表確定數(shù)據(jù)包的路由,再檢查安全訪問表;若被通過,則再進行第二層信息的封裝(稱為"打包"),最后將該數(shù)據(jù)包轉(zhuǎn)發(fā)。如果在路由表中查不到對應MAC地址的網(wǎng)絡地址,則路由器將向源地址的站點返回一個信息,并把這個數(shù)據(jù)包丟掉。
與交換機相比,路由器顯然能夠提供構(gòu)成企業(yè)網(wǎng)安全控制策略的一系列存取控制機制。由于路由器對任何數(shù)據(jù)包都要有一個"拆打"過程,即使是同一源地址向同一目的地址發(fā)出的所有數(shù)據(jù)包,也要重復相同的過程。這導致路由器不可能具有很高的吞吐量,也是路由器成為網(wǎng)絡瓶頸的原因之一. 端到端性能和服務質(zhì)量要求對所有聯(lián)網(wǎng)設備的負載進行細致的均衡,以保證客戶機與服務器之間數(shù)據(jù)平滑地流動。第二層與第三層交換產(chǎn)品在解決局域網(wǎng)和互聯(lián)網(wǎng)絡的帶寬及容量問題上發(fā)揮了很好的作用,但是,這可能還不夠,還需要更多的性能,而這正是第四層交換的用武之地。
第二層交換連接用戶和網(wǎng)絡,在子網(wǎng)中指引業(yè)務流,第三層交換或路由器將包從一個子網(wǎng)傳到另一個子網(wǎng),第四層交換將包傳到終端服務器。第四層交換是網(wǎng)絡基礎結(jié)構(gòu)中的重要因素,它使得服務器容量隨網(wǎng)絡帶寬增加而增加。
從操作方面來看,第四層交換是穩(wěn)固的,因為它將包控制在從源端到宿端的區(qū)間中。另一方面,路由器或第三層交換,只針對單一的包進行處理,不清楚上一個包從哪來、也不知道下一個包的情況。它們只是檢測包報頭中的TCP端口數(shù)字,根據(jù)應用建立優(yōu)先級隊列。路由器根據(jù)鏈路和網(wǎng)絡可用的節(jié)點決定包的路由。第四層則是在可用的服務器和性能基礎上先確定區(qū)間。
六,第四層交換與服務器集群
在第四層交換和服務器集群技術(shù)(如Microsoft的Wolfpack)之間有一些共同的
功能。它們都能提供服務品負載平衡和故障防護功能,盡管許多集群技術(shù)的實現(xiàn)支持橫跨多個服務器的應用程序的負載平衡。這二種技術(shù)的不同之處在于:集群功能經(jīng)常被密地集成在服務器操作系統(tǒng)中,因此是廠家專有的。被嵌入到操作系統(tǒng)中意味著集群技術(shù)能支持文件系統(tǒng)共享和緊密的服務器資源濫測,并允許更快的服務器容錯。另一方面,第四層交換是建立在標準IP協(xié)議族之上的。因此,它使不同廠商,不同操作系統(tǒng)的服務器為負載平衡和增強可靠性而組成一個“松散耦合”服務器集群,這兩種技術(shù)產(chǎn)不是彼盯對立的。服務器集群能利用第四層交換來同時提高應用程序擴展性和服務器可用性。
在服務器集群中使用第四層交換可以在交換機上利用第四層交換的功能來保證服務器集群中各服務器的負載平衡。第四層交換可以使人們對許多備份服務器進行毫無顧忌的選擇,同時,還會有一系列服務器在提供同樣的服務,這樣就可以使各服務器上的通信量負載達到平衡。
到目前為止,能使負載達到平衡的唯一方法是輪換主機地址,但問題在于預測或控制每一服務器將要獲得的負載是一件很不容易的事情,這簡直太原始了,并不能滿足用戶對第四層交換的要求。應用第四層交換,采用先進的應用分配算法,能更好,更智能實現(xiàn)負載平衡。根據(jù)所需負載均衡的顆粒度,第四層交換機可以利用多種方法將應用會話分配到服務器上。這些方法包括求權(quán)數(shù)最小接入的簡單加權(quán)循環(huán)、測量往返時延和服務器自身的閉合環(huán)路反饋等等。
閉合環(huán)路反饋是最先進的方法,它利用可用內(nèi)存、I/O中斷和CPU利用率等特定的系
統(tǒng)信息,這些信息可以為適配器驅(qū)動器和第四層交換機自動獲取。目前的閉合環(huán)路反饋機制要求在每臺服務器上安裝軟件代理。
七,如何選用合適的第四層交換
a,速度
為了在企業(yè)網(wǎng)中行之有效,第四層交換必須提供與第三層線速路由器可比擬的性能。也就是說,第四層交換必須在所有端口以全介質(zhì)速度操作,即使在多個千兆以太網(wǎng)連接上亦如此。千兆以太網(wǎng)速度等于以每秒1488000 個數(shù)據(jù)包的最大速度路由(假定最壞的情形,即所有包為以及網(wǎng)定義的最小尺寸,長64字節(jié))。
b,服務器容量平衡算法
依據(jù)所希望的容量平衡間隔尺寸,第四層交換機將應用分配給服務器的算法有很多種,有簡單的檢測環(huán)路最近的連接、檢測環(huán)路時延或檢測服務器本身的閉環(huán)反饋。在所有的預測中,閉環(huán)反饋提供反映服務器現(xiàn)有業(yè)務量的最精確的檢測。
c,表容量
應注意的是,進行第四層交換的交換機需要有區(qū)分和存貯大量發(fā)送表項的能力。交換機在一個企業(yè)網(wǎng)的核心時尤其如此。許多第二/ 三層交換機傾向發(fā)送表的大小與網(wǎng)絡設備的數(shù)量成正比。對第四層交換機,這個數(shù)量必須乘以網(wǎng)絡中使用的不同應用協(xié)議和會話的數(shù)量。因而發(fā)送表的大小隨端點設備和應用類型數(shù)量的增長而迅速增長。第四層交換機設計者在設計其產(chǎn)品時需要考慮表的這種增長。大的表容量對制造支持線速發(fā)送第四層流量的高性能交換機至關(guān)重要.
d,冗余
第四層交換機內(nèi)部有支持冗余拓撲結(jié)構(gòu)的功能。在具有雙鏈路的網(wǎng)卡容錯連接時,就可能建立從一個服務器到網(wǎng)卡,鏈路和服務器交換器的完全冗余系統(tǒng)。
八,介紹幾種第四層交換產(chǎn)品
Berkeley Networks公司的exponeNT e4和Alteon Networks公司的ACEswith 180兩款
第四層交換產(chǎn)品具有突出的性能和靈活性,能夠比第二層和第三層交換機做出更智能的轉(zhuǎn)發(fā)決定。由于把包頭查詢的代碼嵌入到交換機中的專用集成電路(ASIC)中去實現(xiàn)上述功能,幾乎不會造成任何延時。這兩家廠商的交換機都能實現(xiàn)10M、100M和千兆以太網(wǎng)功能,但是Berkeley的交換機是設計用于企業(yè)應用的,而Alteon交換機則是用于擁有大量Web或FTP服務器的機構(gòu)的。
Alteon的第四層交換技術(shù)能通過對服務器的性能和運行狀況的實時監(jiān)測,根據(jù)不同
服務器的健康狀況,將來訪的數(shù)據(jù)流以經(jīng)濟高效的方式分配到合適的服務器上。同時,Alteon的第四層交換技術(shù)具有Web高速緩存重定向功能,能把指定發(fā)往遠程Internet主機的HTTP通信攔截,并將這些通信重新定向到本地的高速緩存服務器上,從而大大加快了訪問Internet的速度,并節(jié)省了大量寶貴的廣域網(wǎng)帶寬。而且這對于用戶和信息提供者來說是完全透明的,不需要用戶和信息提供者做任何的設置。
Cabletron公司的SmartSwitch Router和Torrent NetworkingTechnologies公司推出
的IP9000 Gigabit Router 也是具有第四層交換功能的產(chǎn)品。其中SmartSwitch Router可以實現(xiàn)骨干網(wǎng)從常規(guī)第三層交換向全面的第三、第四層交換功能的升級轉(zhuǎn)換,其獨特的廣域網(wǎng)集成能力以及基于第四層交換的訪問控制能力對于網(wǎng)絡數(shù)據(jù)傳輸安全、有序地進行發(fā)揮了關(guān)鍵作用。此外,Cabletron Smart SwitchRouter基于第四層交換的QoS功能為特定業(yè)務應用數(shù)據(jù)交換提供了不同級別的優(yōu)先處理能力。
九,第四層交換與單功能負載均衡產(chǎn)品
目前一般的單功能負載均衡產(chǎn)品可以每秒連接400到800個接入。而同時具有第二層和第四層功能的新一代產(chǎn)品(使用定制的專用集成電路的基于硬件的負載均衡功能)的連接速度則超過了每秒10萬次接入。
第四層交換機在形式和功能上與專用負載均衡器完全不同。傳統(tǒng)基于硬件的負載均衡器是速度為45Mbps的優(yōu)化的兩端口設備。而第四層交換機是設計用于高速Intranet應用的,它支持100Mbps或千兆位接口。
第四層交換除了負載均衡功能外還支持其它功能,如基于應用類型和用戶ID的傳輸流控制功能。采用多級排隊技術(shù),第四層交換機可以根據(jù)應用來標記傳輸流以及為傳輸流分配優(yōu)先級。此外,第四層交換機直接安放在服務器前端,它了解應用會話內(nèi)容和用戶權(quán)限,因而使它成為了防止非授權(quán)訪問服務器的理想平臺。
十,第四層交換方案
在本方案中,通過采用Alteon的第四層交換機來實現(xiàn)Web Server的負載均衡。
HTTP是Internet中最重要的一種應用,目前Internet上廣泛使用的Web Server,采
用的是多進程技術(shù),占用系統(tǒng)資源多,效率較低,一般一臺Web Server只能承受幾百個并發(fā)用戶。采用第四層交換機可以很好地解決Web Server的擴展性問題,提高Web Server系統(tǒng)的可靠性,并在WebServer之間合理分配負載。
Alteon的第四層交換機監(jiān)測Web Server的可用性,包括物理連接、Web Server主機
、HTTP Server本身的健康狀況,當發(fā)現(xiàn)某臺Web Server不能提供Web 服務時,交換機自動把Web 請求分配到好的兩臺Web Server。Alteon第四層交換機還可以通過設置每臺Web Server能承受的最大會話數(shù)、設置溢出Web Server、備份Web Server等方法來進一步保證Web系統(tǒng)的可靠性。
Web Server在同一局域網(wǎng)內(nèi)實現(xiàn)負載均衡時采用多種負載均衡算法,包括Least
Connection、Round Robin、MinMiss和Hash算法,以及對算法的加權(quán)等等。
當Web Server不在同一局域網(wǎng)內(nèi)時,利用Alteon交換機的GlobalLoad Balance技術(shù)
來實現(xiàn)負載分擔的合理性問題。
評論