使用三層交換機(jī)進(jìn)行VLAN間路由的通信
其實(shí)三層交換機(jī)的本質(zhì)就是帶有路由功能的二層交換機(jī),路由主要就是具有屬于OSI參照模型中網(wǎng)絡(luò)層的功能,所以三層交換機(jī)也具有路由動(dòng)能?,F(xiàn)在,我們知道只要能提供VLAN間路由,就能夠使分屬不同VLAN的計(jì)算機(jī)互相通信。但是,如果使用路由器進(jìn)行VLAN間路由的話,隨著VLAN之間流量的不斷增加,很可能導(dǎo)致路由器成為整個(gè)網(wǎng)絡(luò)的瓶頸。
交換機(jī)使用被稱為ASIC(Application Specified Integrated Circuit)的專用硬件芯片處理數(shù)據(jù)幀的交換操作,在很多機(jī)型上都能實(shí)現(xiàn)以纜線速度(Wired Speed)交換。而路由器,則基本上是基于軟件處理的。即使以纜線速度接收到數(shù)據(jù)包,也無法在不限速的條件下轉(zhuǎn)發(fā)出去,因此會(huì)成為速度瓶頸。就VLAN間路由而言,流量會(huì)集中到路由器和交換機(jī)互聯(lián)的匯聚鏈路部分,這一部分尤其特別容易成為速度瓶頸。并且從硬件上看,由于需要分別設(shè)置路由器和交換機(jī),在一些空間狹小的環(huán)境里可能連設(shè)置的場(chǎng)所都成問題。
三層交換機(jī)(Layer 3 Switch)
為了解決上述問題,三層交換機(jī)應(yīng)運(yùn)而生。三層交換機(jī),本質(zhì)上就是“帶有路由功能的(二層)交換機(jī)”。路由屬于OSI參照模型中第三層網(wǎng)絡(luò)層的功能,因此帶有第三層路由功能的交換機(jī)才被稱為“三層交換機(jī)”。
在一臺(tái)本體內(nèi),分別設(shè)置了交換機(jī)模塊和路由器模塊;而內(nèi)置的路由模塊與交換模塊相同,使用ASIC硬件處理路由。因此,與傳統(tǒng)的路由器相比,可以實(shí)現(xiàn)高速路由。并且,路由與交換模塊是匯聚鏈接的,由于是內(nèi)部連接,可以確保相當(dāng)大的帶寬。
使用三層交換機(jī)進(jìn)行VLAN間路由(VLAN內(nèi)通信)
在三層交換機(jī)內(nèi)部數(shù)據(jù)究竟是怎樣傳播的呢?基本上,它和使用匯聚鏈路連接路由器與交換機(jī)時(shí)的情形相同。假設(shè)有如下圖所示的4臺(tái)計(jì)算機(jī)與三層交換機(jī)互聯(lián)。當(dāng)使用路由器連接時(shí),一般需要在LAN接口上設(shè)置對(duì)應(yīng)各VLAN的子接口;而三層交換機(jī)則是在內(nèi)部生成“VLAN接口(VLAN Interface)”。VLAN接口,是用于各VLAN收發(fā)數(shù)據(jù)的接口。(注:在Cisco的Catalyst系列交換機(jī)上,VLAN Interface被稱為SVI——Switched Virtual Interface)
為了與使用路由器進(jìn)行VLAN間路由對(duì)比,讓我們同樣來考慮一下計(jì)算機(jī)A與計(jì)算機(jī)B之間通信時(shí)的情況。首先是目標(biāo)地址為B的數(shù)據(jù)幀被發(fā)到交換機(jī);通過檢索同一VLAN的MAC地址列表發(fā)現(xiàn)計(jì)算機(jī)B連在交換機(jī)的端口2上;因此將數(shù)據(jù)幀轉(zhuǎn)發(fā)給端口2。
使用三層交換機(jī)進(jìn)行VLAN間路由(VLAN間通信)
接下來設(shè)想一下計(jì)算機(jī)A與計(jì)算機(jī)C間通信時(shí)的情形。針對(duì)目標(biāo)IP地址,計(jì)算機(jī)A可以判斷出通信對(duì)象不屬于同一個(gè)網(wǎng)絡(luò),因此向默認(rèn)網(wǎng)關(guān)發(fā)送數(shù)據(jù)(Frame 1)。交換機(jī)通過檢索MAC地址列表后,經(jīng)由內(nèi)部匯聚鏈接,將數(shù)據(jù)幀轉(zhuǎn)發(fā)給路由模塊。在通過內(nèi)部匯聚鏈路時(shí),數(shù)據(jù)幀被附加了屬于紅色VLAN的VLAN識(shí)別信息(Frame 2)。
路由模塊在收到數(shù)據(jù)幀時(shí),先由數(shù)據(jù)幀附加的VLAN識(shí)別信息分辨出它屬于紅色VLAN,據(jù)此判斷由紅色VLAN接口負(fù)責(zé)接收并進(jìn)行路由處理。因?yàn)槟繕?biāo)網(wǎng)絡(luò)192.168.2.0/24是直連路由器的網(wǎng)絡(luò)、且對(duì)應(yīng)藍(lán)色VLAN;因此,接下來就會(huì)從藍(lán)色VLAN接口經(jīng)由內(nèi)部匯聚鏈路轉(zhuǎn)發(fā)回交換模塊。在通過匯聚鏈路時(shí),這次數(shù)據(jù)幀被附加上屬于藍(lán)色VLAN的識(shí)別信息(Frame 3)。
交換機(jī)收到這個(gè)幀后,檢索藍(lán)色VLAN的MAC地址列表,確認(rèn)需要將它轉(zhuǎn)發(fā)給端口3。由于端口3是通常的訪問鏈接,因此轉(zhuǎn)發(fā)前會(huì)先將VLAN識(shí)別信息除去(Frame 4)。最終,計(jì)算機(jī)C成功地收到交換機(jī)轉(zhuǎn)發(fā)來的數(shù)據(jù)幀。整體的流程,與使用外部路由器時(shí)的情況十分相似——都需要經(jīng)過發(fā)送方→交換模塊→路由模塊→交換模塊→接收方。