二層交換技術是發(fā)展比較成熟,二層交換機屬數(shù)據(jù)鏈路層設備,可以識別數(shù)據(jù)包中的MAC地址信息,根據(jù)MAC地址進行轉發(fā),并將這些MAC地址與對應的端口記錄在自己內部的一個地址表中。具體的工作流程如下:
(1) 當交換機從某個端口收到一個數(shù)據(jù)包,它先讀取包頭中的源MAC地址,這樣它就知道源MAC地址的機器是連在哪個端口上的;
(2) 再去讀取包頭中的目的MAC地址,并在地址表中查找相應的端口;
(3) 如表中有與這目的MAC地址對應的端口,把數(shù)據(jù)包直接復制到這端口上;
(4) 如表中找不到相應的端口則把數(shù)據(jù)包廣播到所有端口上,當目的機器對源機器回應時,交換機又可以學習一目的MAC地址與哪個端口對應,在下次傳送數(shù)據(jù)時就不再需要對所有端口進行廣播了。
不斷的循環(huán)這個過程,對于全網(wǎng)的MAC地址信息都可以學習到,二層交換機就是這樣建立和維護它自己的地址表。
從二層交換機的工作原理可以推知以下三點:
(1) 由于交換機對多數(shù)端口的數(shù)據(jù)進行同時交換,這就要求具有很寬的交換總線帶寬,如果二層交換機有N個端口,每個端口的帶寬是M,交換機總線帶寬超過N×M,那么這交換機就可以實現(xiàn)線速交換;
(2) 學習端口連接的機器的MAC地址,寫入地址表,地址表的大。ㄒ话銉煞N表示方式:一為BEFFER RAM,一為MAC表項數(shù)值),地址表大小影響交換機的接入容量;
(3) 還有一個就是二層交換機一般都含有專門用于處理數(shù)據(jù)包轉發(fā)的ASIC (Application specific Integrated Circuit)芯片,因此轉發(fā)速度可以做到非?臁S捎诟鱾廠家采用ASIC不同,直接影響產(chǎn)品性能。
以上三點也是評判二三層交換機性能優(yōu)劣的主要技術參數(shù),這一點請大家在考慮設備選型時注意比較。
(二)路由技術
路由器工作在OSI模型的第三層---網(wǎng)絡層操作,其工作模式與二層交換相似,但路由器工作在第三層,這個區(qū)別決定了路由和交換在傳遞包時使用不同的控制信息,實現(xiàn)功能的方式就不同。工作原理是在路由器的內部也有一個表,這個表所標示的是如果要去某一個地方,下一步應該向那里走,如果能從路由表中找到數(shù)據(jù)包下一步往那里走,把鏈路層信息加上轉發(fā)出去;如果不能知道下一步走向那里,則將此包丟棄,然后返回一個信息交給源地址。
路由技術實質上來說不過兩種功能:決定最優(yōu)路由和轉發(fā)數(shù)據(jù)包。路由表中寫入各種信息,由路由算法計算出到達目的地址的最佳路徑,然后由相對簡單直接的轉發(fā)機制發(fā)送數(shù)據(jù)包。接受數(shù)據(jù)的下一臺路由器依照相同的工作方式繼續(xù)轉發(fā),依次類推,直到數(shù)據(jù)包到達目的路由器。
而路由表的維護,也有兩種不同的方式。一種是路由信息的更新,將部分或者全部的路由信息公布出去,路由器通過互相學習路由信息,就掌握了全網(wǎng)的拓撲結構,這一類的路由協(xié)議稱為距離矢量路由協(xié)議;另一種是路由器將自己的鏈路狀態(tài)信息進行廣播,通過互相學習掌握全網(wǎng)的路由信息,進而計算出最佳的轉發(fā)路徑,這類路由協(xié)議稱為鏈路狀態(tài)路由協(xié)議。
由于路由器需要做大量的路徑計算工作,一般處理器的工作能力直接決定其性能的優(yōu)劣。當然這一判斷還是對中低端路由器而言,因為高端路由器往往采用分布式處理系統(tǒng)體系設計。
(三)三層交換技術
近年來的對三層技術的宣傳,耳朵都能起繭子,到處都在喊三層技術,有人說這是個非常新的技術,也有人說,三層交換嘛,不就是路由器和二層交換機的堆疊,也沒有什么新的玩意,事實果真如此嗎?下面先來通過一個簡單的網(wǎng)絡來看看三層交換機的工作過程。
組網(wǎng)比較簡單
使用IP的設備A------------------------三層交換機------------------------使用IP的設備B
比如A要給B發(fā)送數(shù)據(jù),已知目的IP,那么A就用子網(wǎng)掩碼取得網(wǎng)絡地址,判斷目的IP是否與自己在同一網(wǎng)段。
如果在同一網(wǎng)段,但不知道轉發(fā)數(shù)據(jù)所需的MAC地址,A就發(fā)送一個ARP請求,B返回其MAC地址,A用此MAC封裝數(shù)據(jù)包并發(fā)送給交換機,交換機起用二層交換模塊,查找MAC地址表,將數(shù)據(jù)包轉發(fā)到相應的端口。
如果目的IP地址顯示不是同一網(wǎng)段的,那么A要實現(xiàn)和B的通訊,在流緩存條目中沒有對應MAC地址條目,就將第一個正常數(shù)據(jù)包發(fā)送向一個缺省網(wǎng)關,這個缺省網(wǎng)關一般在操作系統(tǒng)中已經(jīng)設好,對應第三層路由模塊,所以可見對于不是同一子網(wǎng)的數(shù)據(jù),最先在MAC表中放的是缺省網(wǎng)關的MAC地址;然后就由三層模塊接收到此數(shù)據(jù)包,查詢路由表以確定到達B的路由,將構造一個新的幀頭,其中以缺省網(wǎng)關的MAC地址為源MAC地址,以主機B的MAC地址為目的MAC地址。通過一定的識別觸發(fā)機制,確立主機A與B的MAC地址及轉發(fā)端口的對應關系,并記錄進流緩存條目表,以后的A到B的數(shù)據(jù),就直接交由二層交換模塊完成。這就通常所說的一次路由多次轉發(fā)。
以上就是三層交換機工作過程的簡單概括,可以看出三層交換的特點:
由硬件結合實現(xiàn)數(shù)據(jù)的高速轉發(fā)。
這就不是簡單的二層交換機和路由器的疊加,三層路由模塊直接疊加在二層交換的高速背板總線上,突破了傳統(tǒng)路由器的接口速率限制,速率可達幾十Gbit/s。算上背板帶寬,這些是三層交換機性能的兩個重要參數(shù)。
簡潔的路由軟件使路由過程簡化。
大部分的數(shù)據(jù)轉發(fā),除了必要的路由選擇交由路由軟件處理,都是又二層模塊高速轉發(fā),路由軟件大多都是經(jīng)過處理的高效優(yōu)化軟件,并不是簡單照搬路由器中的軟件。
結論
二層交換機用于小型的局域網(wǎng)絡。這個就不用多言了,在小型局域網(wǎng)中,廣播包影響不大,二層交換機的快速交換功能、多個接入端口和低謙價格為小型網(wǎng)絡用戶提供了很完善的解決方案。
路由器的優(yōu)點在于接口類型豐富,支持的三層功能強大,路由能力強大,適合用于大型的網(wǎng)絡間的路由,它的優(yōu)勢在于選擇最佳路由,負荷分擔,鏈路備份及和其他網(wǎng)絡進行路由信息的交換等等路由器所具有功能。
三層交換機的最重要的功能是加快大型局域網(wǎng)絡內部的數(shù)據(jù)的快速轉發(fā),加入路由功能也是為這個目的服務的。如果把大型網(wǎng)絡按照部門,地域等等因素劃分成一個個小局域網(wǎng),這將導致大量的網(wǎng)際互訪,單純的使用二層交換機不能實現(xiàn)網(wǎng)際互訪;如單純的使用路由器,由于接口數(shù)量有限和路由轉發(fā)速度慢,將限制網(wǎng)絡的速度和網(wǎng)絡規(guī)模,采用具有路由功能的快速轉發(fā)的三層交換機就成為首選。
一般來說,在內網(wǎng)數(shù)據(jù)流量大,要求快速轉發(fā)響應的網(wǎng)絡中,如全部由三層交換機來做這個工作,會造成三層交換機負擔過重,響應速度受影響,將網(wǎng)間的路由交由路由器去完成,充分發(fā)揮不同設備的優(yōu)點,不失為一種好的組網(wǎng)策略,當然,前提是客戶的腰包很鼓,不然就退而求其次,讓三層交換機也兼為網(wǎng)際互連。
第四層交換的一個簡單定義是:它是一種功能,它決定傳輸不僅僅依據(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é)調通信。在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/IP協(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 端口相關聯(lián)的連接表。然后第四層交換機向這臺服務器轉發(fā)連接請求。所有后續(xù)包在客戶機與服務器之間重新影射和轉發(fā),直到交換機發(fā)現(xiàn)會話為止。
在使用第四層交換的情況下,接入可以與真正的服務器連接在一起來滿足用戶制定的規(guī)則,諸如使每臺服務器上有相等數(shù)量的接入或根據(jù)不同服務器的容量來分配傳輸流。
如何選用合適的第四層交換
a,速度
為了在企業(yè)網(wǎng)中行之有效,第四層交換必須提供與第三層線速路由器可比擬的性能。也就是說,第四層交換必須在所有端口以全介質速度操作,即使在多個千兆以太網(wǎng)連接上亦如此。千兆以太網(wǎng)速度等于以每秒488000 個數(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ā)送第四層流量的高性能交換機至關重要.
d,冗余
第四層交換機內部有支持冗余拓撲結構的功能。在具有雙鏈路的網(wǎng)卡容錯連接時,就可能建立從一個服務器到網(wǎng)卡,鏈路和服務器交換器的完全冗余系統(tǒng)。