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