與傳統(tǒng)的二層交換機相比,三層交換機增加了路由功能,可以理解為具有路由功能的交換機。
三層交換機可以根據(jù)其處理數(shù)據(jù)的不同而分為純硬件和純軟件兩大類。
(1)純硬件的三層技術相對來說技術復雜,成本高,但是速度快,性能好,帶負載能力強。其原理是,采用ASIC芯片,采用硬件的方式進行路由表的查找和刷新。
當數(shù)據(jù)由端口接口芯片接收進來以后,首先在二層交換芯片中查找相應的目的MAC地址,如果查到,就進行二層轉發(fā),否則將數(shù)據(jù)送至三層引擎。在三層引擎中,ASIC芯片查找相應的路由表信息,與數(shù)據(jù)的目的IP地址相比對,然后發(fā)送ARP數(shù)據(jù)包到目的主機,得到該主機的MAC地址,將MAC地址發(fā)到二層芯片,由二層芯片轉發(fā)該數(shù)據(jù)包。
(2)基于軟件的三層交換機技術較簡單,但速度較慢,不適合作為主干。其原理是,采用CPU用軟件的方式查找路由表。
當數(shù)據(jù)由端口接口芯片接收進來以后,首先在二層交換芯片中查找相應的目的MAC地址,如果查到,就進行二層轉發(fā)否則將數(shù)據(jù)送至CPU。CPU查找相應的路由表信息,與數(shù)據(jù)的目的IP地址相比對,然后發(fā)送ARP數(shù)據(jù)包到目的主機得到該主機的MAC地址,將MAC地址發(fā)到二層芯片,由二層芯片轉發(fā)該數(shù)據(jù)包。因為低價CPU處理速度較慢,因此這種三層交換機處理速度較慢。
二層交換機的二層數(shù)據(jù)交換一般都是使用ASIC(專用集成電路)的硬件芯片中的Mac表來實現(xiàn)的,因為是硬件轉發(fā),所以轉發(fā)性能非常高。而三層交換機,但其中除了二層交換用的Mac表外,還保存有專門用于三層轉發(fā)的三層硬件轉發(fā)表。
如下圖所示的為三層交換機的基本工作流程,其主要步驟解釋如下:
(1)源主機在發(fā)起通信之前,將自己的IP地址與目的主機的IP地址進行比較,如果源主機判斷目的主機與自己位于不同網(wǎng)段時,它需要通過網(wǎng)關來遞交報文的,所以它首先需要通過一個ARP請求報文獲取網(wǎng)關的MAC地址(在源主機不知道網(wǎng)關MAC地址的情形下),即源主機先發(fā)送ARP請求幀以獲取網(wǎng)關IP地址對應的MAC地址。
(2)網(wǎng)關在收到源主機發(fā)來的ARP請求報文后以一個ARP應答報文進行回應,在應答報文中的“源MAC地址”就包含了網(wǎng)關的MAC地址。
(3)在得到網(wǎng)關的ARP應答后,源主機再用網(wǎng)關MAC地址作為報文的“目的MAC地址”,以源主機的IP地址作為報文的“源IP地址”,以目的主機的IP地址作為“目的IP地址”,先把發(fā)送給目的主機的數(shù)據(jù)發(fā)給網(wǎng)關。
三層交換基本流程圖解

(4)網(wǎng)關在收到源主機發(fā)送給目的主機的數(shù)據(jù)后,由于查看得知源主機和目的主機的IP地址不在同一網(wǎng)段,于是把數(shù)據(jù)報上傳到三層交換引擎(ASIC芯片),在里面查看有無目的主機的三層轉發(fā)表。
(5)如果在三層硬件轉發(fā)表中沒有找到目的主機的對應表項,則向CPU請求查看軟件路由表,如果有目的主機所在網(wǎng)段的路由表項,則還需要得到目的主機的MAC地址,因為數(shù)據(jù)包在鏈路層是要經(jīng)過幀封裝的。于是三層交換機CPU向目的主機所在網(wǎng)段發(fā)送一個ARP廣播請求包,以獲得目的主機MAC地址。
(6)交換機獲得目的主機MAC地址后,向ARP表中添加對應的表項,并轉發(fā)由源主機到達目的主機的包。同時三層交換機三層引擎會結合路由表生成目的主機的三層硬件轉發(fā)表。
以后到達目的主機的數(shù)據(jù)包就可以直接利用三層硬件轉發(fā)表中的轉發(fā)表項進行數(shù)據(jù)交換,不用再查看CPU中的路由表了。這就是“一次路由,多次交換”的原理。
北京炫億時代科技有限公司主營思科、華為、華三
網(wǎng)絡設備。三層交換機產(chǎn)品型號多,價格優(yōu),歡迎咨詢4000806056。