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