艾銻知識(shí)——三層交換機(jī)的轉(zhuǎn)發(fā)原理及流程分析
2020-04-14 17:20 作者:艾銻無(wú)限 瀏覽量:
三層交換機(jī)的轉(zhuǎn)發(fā)原理及流程分析
計(jì)算機(jī)網(wǎng)絡(luò)往往由許多種不同類型的網(wǎng)絡(luò)互連連接而成。如果幾個(gè)計(jì)算機(jī)網(wǎng)絡(luò)只是在物理上連接在一起,它們之間并不能進(jìn)行通信,那么這種“互連”并沒(méi)有什么實(shí)際意義。因此通常在談到“互連”時(shí),就已經(jīng)暗示這
些相互連接的計(jì)算機(jī)是可以進(jìn)行通信的,也就是說(shuō),從功能上和邏輯上看,這些計(jì)算機(jī)網(wǎng)絡(luò)已經(jīng)組成了一個(gè)大型的計(jì)算機(jī)網(wǎng)絡(luò),或稱為互聯(lián)網(wǎng)絡(luò),也可簡(jiǎn)稱為互聯(lián)網(wǎng)、互連網(wǎng)。下面將從互聯(lián)網(wǎng)的漸進(jìn)歷程逐一闡
述各種設(shè)備的工作原理:
HUB的中文名稱叫做以太網(wǎng)集線器,其基本工作原理是廣播技術(shù)(broadcast),也就是HUB從任何一個(gè)端口收到一個(gè)以太網(wǎng)數(shù)據(jù)幀后,它都將此以太網(wǎng)數(shù)據(jù)幀廣播到其它所有端口,HUB不記憶哪一個(gè)MAC地址
掛在哪一個(gè)端口——這里所說(shuō)的廣播是指HUB將該以太網(wǎng)數(shù)據(jù)幀發(fā)送到所有其它端口,并不是指HUB將該報(bào)文改變?yōu)閺V播報(bào)文。
以太網(wǎng)數(shù)據(jù)幀中含有源MAC地址和目的MAC地址,對(duì)于與數(shù)據(jù)幀中目的MAC地址相同的計(jì)算機(jī)執(zhí)行該報(bào)文中所要求的動(dòng)作;對(duì)于目的MAC地址不存在或沒(méi)有響應(yīng)等情況,HUB既不知道也不處理,只負(fù)責(zé)轉(zhuǎn)發(fā)。
HUB工作原理:
① HUB從某一端口A收到的報(bào)文將發(fā)送到所有端口;
② 報(bào)文為非廣播報(bào)文時(shí),僅與報(bào)文的目的MAC地址相同的端口響應(yīng)用戶A;
③ 報(bào)文為廣播報(bào)文時(shí),所有用戶都響應(yīng)用戶A。
隨著網(wǎng)絡(luò)應(yīng)用不斷豐富,網(wǎng)絡(luò)結(jié)構(gòu)日漸復(fù)雜,導(dǎo)致傳統(tǒng)的以太網(wǎng)連接設(shè)備HUB已經(jīng)越來(lái)越不能滿足網(wǎng)絡(luò)規(guī)劃和系統(tǒng)集成的需要,它的缺陷主要表現(xiàn)在以下兩個(gè)方面:
① 沖突嚴(yán)重——HUB對(duì)所連接的局域網(wǎng)只作信號(hào)的中繼,所有物理設(shè)備構(gòu)成了一個(gè)沖突域;
② 廣播泛濫。
三層交換機(jī)流程
用VLAN分段,隔離了VLAN間的通信,用支持VLAN的路由器(三層設(shè)備)可以建立VLAN間通信。但使用路由器來(lái)互聯(lián)企業(yè)園區(qū)網(wǎng)中不同的VLAN顯然不合時(shí)代的潮流。因?yàn)槲覀兛梢允褂萌龑咏粨Q來(lái)實(shí)現(xiàn)。
差別1(性能):傳統(tǒng)的路由器基于微處理器轉(zhuǎn)發(fā)報(bào)文,靠軟件處理,而三層交換機(jī)通過(guò)ASIC硬件來(lái)進(jìn)行報(bào)文轉(zhuǎn)發(fā),性能差別很大;
差別2(接口類型):三層交換機(jī)的接口基本都是以太網(wǎng)接口,沒(méi)有路由器接口類型豐富;差別3:三層交換機(jī),還可以工作在二層模式,對(duì)某些不需路由的包文直接交換,而路由器不具有二層的功能。
首先讓我們看一下設(shè)備互通的過(guò)程:
如圖所示:交換機(jī)上劃分了兩個(gè)VLAN,在VLAN1,VLAN 2上配置了路由接口用來(lái)實(shí)現(xiàn)vlan1 和vlan 2之間的互通。

A和B之間的互通(以A向B發(fā)起ping請(qǐng)求為例):
1)A檢查報(bào)文的目的IP地址,發(fā)現(xiàn)和自己在同一個(gè)網(wǎng)段;
2)A----》B ARP請(qǐng)求報(bào)文,該報(bào)文在VLAN1 內(nèi)廣播;
3)B----》A ARP回應(yīng)報(bào)文;
4)A----》B icmp request;
5)B----》A icmp reply; A和C之間的互通(以A向C發(fā)起ping請(qǐng)求為例):
1)A檢查報(bào)文的目的IP地址,發(fā)現(xiàn)和自己不在同一個(gè)網(wǎng)段;
2)A----》switch(int vlan 1)ARP請(qǐng)求報(bào)文,該報(bào)文在VLAN1 內(nèi)廣播
3)網(wǎng)關(guān)----》A ARP回應(yīng)報(bào)文;
4)A----》switch icmp request(目的MAC是int vlan 1的MAC,源MAC是A的MAC,目的IP是C,源IP是A);
5)switch收到報(bào)文后判斷出是三層的報(bào)文。檢查報(bào)文的目的IP地址,發(fā)現(xiàn)是在自己的直連網(wǎng)段;
6)switch(int vlan 2)----》C ARP請(qǐng)求報(bào)文,該報(bào)文在VLAN2 內(nèi)廣播;
7)C---》switch(int vlan 2)ARP回應(yīng)報(bào)文;
8)switch(int vlan 2)----》C icmp request (目的MAC是C 的MAC,源MAC是int vlan 2的MAC,目的IP是C,源IP是A)同步驟4)相比報(bào)文的MAC頭進(jìn)行了重新的封裝,而IP層以上的字段基本上不變;
9)C----》A icmp reply,這以后的處理同前面icmp request的過(guò)程基本相同。
以上的各步處理中,如果ARP表中已經(jīng)有了相應(yīng)的表項(xiàng),則不會(huì)給對(duì)方發(fā)ARP請(qǐng)求報(bào)文。
有關(guān)更多IT知識(shí)請(qǐng)關(guān)注北京艾銻無(wú)限http://www.bjitwx.com/