三層交換技術的原理_三層交換技術的基本原理_三層交換技術的工作原理
第三層交換是在網(wǎng)絡交換機中引入路由模塊而取代傳統(tǒng)路由器實現(xiàn)交換與路由相結合的網(wǎng)絡技術。它根據(jù)實際應用時的情況,靈活地在網(wǎng)絡第二層或者第三層進行網(wǎng)絡分段。具有三層交換功能的設備是一個帶有第三層路由功能的第二層交換機。
第三層交換機的設計基于對IP路由的仔細分析,把IP路由中每個報文都必須經(jīng)過的過程提取出來,這個過程是十分簡化的過程。IP路由中絕大多數(shù)報文是不包含選項的報文,因此在多數(shù)情況下處理報文IP選項的工作是多余的。不同網(wǎng)絡的報文長度是不同的,為了適應不同的網(wǎng)絡,IP要實現(xiàn)報文分片的功能,但是在全以太網(wǎng)的環(huán)境中,網(wǎng)絡的幀長度是固定的,因此報文分片也是一個可以省略的工作。
第三層交換技術沒有采用路由器的最長地址掩碼匹配的方法,而是使用了精確地址匹配的方法處理,這樣,有利于硬件的實現(xiàn)快速查找。它采用了使用高速緩存的方法,經(jīng)常使用的主機路由放到了硬件查找表中,只有在這個高速緩存中無法匹配的項目才會通過軟件去轉(zhuǎn)發(fā)。在存儲轉(zhuǎn)發(fā)過程中使用了流交換方式,在流交換中,分析第一個報文確定其是否表示了一個流或者一組具有相同源地址和目的地址的報文。
如果第一個報文具有了正確的特征,則該標識流中的后續(xù)報文將擁有相同的優(yōu)先權,同一流中的后續(xù)報文被交換到基于第二層的目的地址上,三層交換機為了實現(xiàn)高速交換,都采用流交換方式。其在IP路由的處理上進行了改進,實現(xiàn)了簡化的IP轉(zhuǎn)發(fā)流程,利用專用的ASIC芯片實現(xiàn)硬件的轉(zhuǎn)發(fā),這樣絕大多數(shù)的報文處理都可以在硬件中實現(xiàn)了,只有極少數(shù)報文才需要使用軟件轉(zhuǎn)發(fā),整個系統(tǒng)的轉(zhuǎn)發(fā)性能能夠得以成千倍地增加,相同性能的設備在成本上也得到大幅度下降。
每個VLAN對應一個IP網(wǎng)段。在二層上,VLAN之間是隔離的,這點跟二層交換機中交換引擎的功能是一模一樣的。不同IP網(wǎng)段之間的訪問要跨越VLAN,要使用三層轉(zhuǎn)發(fā)引擎提供的VLAN間路由功能。在使用二層交換機和路由器的組網(wǎng)中,每個需要與其他IP網(wǎng)段通信的IP網(wǎng)段都需要使用一個路由器接口作為網(wǎng)關。而第三層轉(zhuǎn)發(fā)引擎就相當于傳統(tǒng)組網(wǎng)中的路由器,當需要與其他VLAN通信時也要在三層交換引擎上分配一個路由接口,用來做VLAN的網(wǎng)關。三層交換機上的這個路由接口是在三層轉(zhuǎn)發(fā)引擎和二層轉(zhuǎn)發(fā)引擎上的,是通過配置轉(zhuǎn)發(fā)芯片來實現(xiàn)的,與路由器的接口不同,它是不可見的。下面舉個例子來說明通信過程。
假設兩個使用IP協(xié)議的站點A、B通過第三層交換機進行通信,發(fā)送站A在開始發(fā)送時,把自己的IP地址與B站的IP地址比較,判斷B站是否與自己在同一子網(wǎng)內(nèi),若目的站B與發(fā)送站A在同一子網(wǎng)內(nèi),則進行二層的轉(zhuǎn)發(fā),若兩個站點不在同一子網(wǎng)內(nèi),如發(fā)送站A要與目的站B通信,發(fā)送站A要向三層交換機的三層交換模塊發(fā)出ARP(地址解析)封包。三層交換模塊解析發(fā)送站A的目的IP地址,向目的IP地址網(wǎng)段發(fā)送ARP請求。
B站得到此ARP請求后向三層交換模塊回復其MAC地址,三層交換模塊保存此地址并回復給發(fā)送站A,同時將B站的MAC地址發(fā)送到二層交換引擎的MAC地址表中。從這以后,A向B發(fā)送的數(shù)據(jù)包便全部交給二層交換處理,信息得以高速交換。可見由于僅僅在路由過程中才需要三層處理,絕大部分數(shù)據(jù)都通過二層交換轉(zhuǎn)發(fā),三層交換機的速度很快,接近二層交換機的速度。
三層交換技術的工作原理
第三層交換工作在OSI七層網(wǎng)絡模型中的第三層即網(wǎng)絡層,是利用第三層協(xié)議中的IP包的包頭信息來對后續(xù)數(shù)據(jù)業(yè)務流進行標記,具有同一標記的業(yè)務流的后續(xù)報文被交換到第二層數(shù)據(jù)鏈路層。
從而打通源IP地址和目的IP地址之間的一條通路。這條通路經(jīng)過第二層鏈路層。有了這條通路,三層交換機就沒有必要每次將接收到的數(shù)據(jù)包進行拆包來判斷路由,而是直接將數(shù)據(jù)包進行轉(zhuǎn)發(fā),將數(shù)據(jù)流進行交換。