當前位置:才華齋>計算機>網路技術>

詳析三層交換原理

網路技術 閱讀(1.23W)

三層交換原理一直是許多讀者朋友最難理解的,在日常的讀者交流中也經常見到有讀者提出這方面的問題,特別是三層交換與路由原理方面的區別與聯絡。下面就跟小編一起了解一下三層交換機的原理吧!

詳析三層交換原理

  三層交換原理

二層交換機的二層資料交換一般都是使用ASIC(Application Specific Integrated Circuit ,專用積體電路)的硬體晶片中的CAM表來實現的,因為是硬體轉發,所以轉發效能非常高。而三層交換機的三層轉發也是依靠ASIC晶片完成的(路由器的路由功能主要依靠CPU軟體進行的),但其中除了二層交換用的CAM表外,還儲存有專門用於三層轉發的三層硬體轉發表。

三層交換機的三層交換原理比較複雜,不同網路環境下、不同廠家的三層交換機的三層交換流程都不完全相同。如圖7-55所示的僅一個直接連線在一臺三層交換機上的兩個不同網段主機三層交換的基本流程,各主要步驟解釋如下:

(1)源主機在發起通訊之前,將自己的`IP地址與目的主機的IP地址進行比較,如果源主機判斷目的主機與自己位於不同網段時,它需要通過閘道器來遞交報文的,所以它首先需要通過一個ARP請求報文獲取閘道器的MAC地址(在源主機不知道閘道器MAC地址的情形下),即源主機先發送ARP請求幀以獲取閘道器IP地址對應的MAC地址。

(2)閘道器在收到源主機發來的ARP請求報文後以一個ARP應答報文進行迴應,在應答報文中的“源MAC地址”就包含了閘道器的MAC地址。

(3)在得到閘道器的ARP應答後,源主機再用閘道器MAC地址作為報文的“目的MAC地址”,以源主機的IP地址作為報文的“源IP地址”,以目的主機的IP地址作為“目的IP地址”,先把傳送給目的主機的資料發給閘道器。

  三層交換基本流程

(4)閘道器在收到源主機發送給目的主機的資料後,由於檢視得知源主機和目的主機的IP地址不在同一網段,於是把資料報上傳到三層交換引擎(ASIC晶片),在裡面檢視有無目的主機的三層轉發表。

(5)如果在三層硬體轉發表中沒有找到目的主機的對應表項,則向CPU請求檢視軟體路由表,如果有目的主機所在網段的路由表項,則還需要得到目的主機的MAC地址,因為資料包在鏈路層是要經過幀封裝的。於是三層交換機CPU向目的主機所在網段傳送一個ARP廣播請求包,以獲得目的主機MAC地址。

(6)交換機獲得目的主機MAC地址後,向ARP表中新增對應的表項,並轉發由源主機到達目的主機的靈氣包。同時三層交換機三層引擎會結合路由表生成目的主機的三層硬體轉發表。

以後到達目的主機的資料包就可以直接利用三層硬體轉發表中的轉發表項進行資料交換,不用再檢視CPU中的路由表了。

以上流程適用位於不同VLAN(網段)中的主機互訪時屬於這種情況,這時用於互連的交換機作三層交換轉發。這就是“一次路由,多次交換”的原理。