交換機(jī)基本原理及轉(zhuǎn)發(fā)流程_第1頁
交換機(jī)基本原理及轉(zhuǎn)發(fā)流程_第2頁
已閱讀5頁,還剩6頁未讀, 繼續(xù)免費(fèi)閱讀

下載本文檔

版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)

文檔簡介

1、三層以太網(wǎng)交換機(jī)基本原理及轉(zhuǎn)發(fā)流程本文簡要介紹了三層以太網(wǎng)交換機(jī)的二三層轉(zhuǎn)發(fā)機(jī)制,主要目的是幫助讀者進(jìn)一步了解交換機(jī)的基本原理及轉(zhuǎn)發(fā)流程,以期有利于更好的從事設(shè)備維護(hù)工作和建立于進(jìn)一步學(xué)習(xí)的索引。三層以太網(wǎng)交換機(jī)的轉(zhuǎn)發(fā)機(jī)制主要分為兩個(gè)部分:二層轉(zhuǎn)發(fā)和三層交換。1. 二層轉(zhuǎn)發(fā)流程11MAC地址介紹MAC地址是48bit二進(jìn)制的地址,如:OOeO-fcOOOO-06。可以分為單播地址、多播地址和廣播地址.單播地址:第一字節(jié)最低位為0,如:OO-eOfcOOOO06多播地址:第一字節(jié)最低位為1,如:01e0-fc-0000-06(問題1:以03開頭的MAC地址是單播MAC地址還是多播MAC地址廣播地

2、址:48位全1,如:ffff-ff-ff-ff-ff注意:1)普通設(shè)備網(wǎng)卡或者路由器設(shè)備路由接口的MAC地址一定是單播的MAC地址才能保證其與其它設(shè)備的互通。2)MAC地址是一個(gè)以太網(wǎng)絡(luò)設(shè)備在網(wǎng)絡(luò)上運(yùn)行的基礎(chǔ),也是鏈路層功能實(shí)現(xiàn)的立足點(diǎn)。12二層轉(zhuǎn)發(fā)介紹交換機(jī)二層的轉(zhuǎn)發(fā)特性,符合802.1D網(wǎng)橋協(xié)議標(biāo)準(zhǔn)。交換機(jī)的二層轉(zhuǎn)發(fā)涉及到兩個(gè)關(guān)鍵的線程:地址學(xué)習(xí)線程和報(bào)文轉(zhuǎn)發(fā)線程。學(xué)習(xí)線程如下:1)交換機(jī)接收網(wǎng)段上的所有數(shù)據(jù)幀,利用接收數(shù)據(jù)幀中的源MAC地址來建立MAC地址表;2)端口移動(dòng)機(jī)制:交換機(jī)如果發(fā)現(xiàn)一個(gè)包文的入端口和報(bào)文中源MAC地址的所在端口(在交換機(jī)的MAC地址表中對(duì)應(yīng)的端口)不同,就產(chǎn)生端

3、口移動(dòng),將MAC地址重新學(xué)習(xí)到新的端口;3)地址老化機(jī)制:如果交換機(jī)在很長一段時(shí)間之內(nèi)沒有收到某臺(tái)主機(jī)發(fā)出的報(bào)文,在該主機(jī)對(duì)應(yīng)的MAC地址就會(huì)被刪除,等下次報(bào)文來的時(shí)候會(huì)重新學(xué)習(xí).注意:老化也是根據(jù)源MAC地址進(jìn)行老化。報(bào)文轉(zhuǎn)發(fā)線程:1)交換機(jī)在MAC地址表中查找數(shù)據(jù)幀中的目的MAC地址,如果找到,就將該數(shù)據(jù)幀發(fā)送到相應(yīng)的端口,如果找不到,就向所有的端口發(fā)送;2)如果交換機(jī)收到的報(bào)文中源MAC地址和目的MAC地址所在的端口相同,則丟棄該報(bào)文;3)交換機(jī)向入端口以外的其它所有端口轉(zhuǎn)發(fā)廣播報(bào)文。1.3.VLAN二層轉(zhuǎn)發(fā)介紹報(bào)文轉(zhuǎn)發(fā)線程:引入了VLAN以后對(duì)二層交換機(jī)的報(bào)文轉(zhuǎn)發(fā)線程產(chǎn)生了如下的影響:

4、1)交換機(jī)在MAC地址表中查找數(shù)據(jù)幀中的目的MAC地址,如果找到(同時(shí)還要確保報(bào)文的入VLAN和出VLAN是一致的,就將該數(shù)據(jù)幀發(fā)送到相應(yīng)的端口,如果找不到,就向(VLAN內(nèi))所有的端口發(fā)送;2)如果交換機(jī)收到的報(bào)文中源MAC地址和目的MAC地址所在的端口相同,則丟棄該報(bào)文;3)交換機(jī)向(VLAN內(nèi))入端口以外的其它所有端口轉(zhuǎn)發(fā)廣播報(bào)文.以太網(wǎng)交換機(jī)上通過引入VLAN,帶來了如下的好處:1)限制了局部的網(wǎng)絡(luò)流量,在一定程度上可以提高整個(gè)網(wǎng)絡(luò)的處理能力.2)虛擬的工作組,通過靈活的VLAN設(shè)置,把不同的用戶劃分到工作組內(nèi);3)安全性,一個(gè)VLAN內(nèi)的用戶和其它VLAN內(nèi)的用戶不能互訪,提高了安全

5、性。另外,還有常見的兩個(gè)概念VLAN的終結(jié)和透?jìng)?,從字面意思上就可以很好的了解這兩個(gè)概念.所謂VLAN的透?jìng)骶褪悄硞€(gè)VLAN不僅在一臺(tái)交換機(jī)上有效,它還要通過某種方法延伸到別的以太網(wǎng)交換機(jī)上,在別的設(shè)備上照樣有效;終結(jié)的意思及相對(duì),某個(gè)VLAN的有效域不能再延伸到別的設(shè)備,或者不能通過某條鏈路延伸到別的設(shè)備。VLAN透?jìng)骺梢允褂?02.1Q技術(shù),VLAN終結(jié)可以使用PVLAN技術(shù)。IEEE802.1Q協(xié)議是VLAN的技術(shù)標(biāo)準(zhǔn),主要是修改了標(biāo)準(zhǔn)的幀頭,添加了一個(gè)tag字段,其中包含了VLANID等VLAN信息,具體實(shí)現(xiàn)這里不談,如果有興趣可以看相關(guān)的標(biāo)準(zhǔn)和資料。注意:在Trunk端口轉(zhuǎn)發(fā)報(bào)文的時(shí)

6、候,如果報(bào)文的VLANTag等于端口上配置的默認(rèn)VLANID,則該報(bào)文的Tag應(yīng)該去掉,對(duì)端收到這個(gè)不帶Tag信息的報(bào)文后,從端口的PVID獲得報(bào)文的所屬VLAN信息,因此配置的時(shí)候必須保證連接兩臺(tái)交換機(jī)之間的一條Trunk鏈路兩端的PVID設(shè)置相同。為什么要去Tag呢?這樣做是為了保證一般的用戶插到Trunk上以后,仍舊可以正常通信,因?yàn)槠胀ㄓ脩魺o法識(shí)別帶有802。1QVlan信息的報(bào)文。使用802。1Q技術(shù)可以很好的實(shí)現(xiàn)VLAN的透?jìng)?,可是有的時(shí)候需要把VLAN終結(jié)掉,也就是說這個(gè)VLAN的邊界在哪里終止,PVLAN技術(shù)可以很好的實(shí)現(xiàn)這個(gè)功能,同時(shí)達(dá)到節(jié)省VLAN的目的.cisco的PVL

7、AN意思是privatevian,而我們的PVLAN意思是primaryvlan。這里的VLAN有兩類:Primaryvlan和secondaryvian(子VLAN)。實(shí)現(xiàn)了接入用戶二層報(bào)文的隔離,同時(shí)上層交換機(jī)下發(fā)的報(bào)文可以被每一個(gè)用戶接收到,簡化了配置,節(jié)省了VLAN資源具體實(shí)現(xiàn)這里不談,如果有興趣可以相關(guān)資料.2. 三層交換流程用VLAN分段,隔離了VLAN間的通信,用支持VLAN的路由器(三層設(shè)備)可以建立VLAN間通信。但使用路由器來互聯(lián)企業(yè)園區(qū)網(wǎng)中不同的VLAN顯然不合時(shí)代的潮流。因?yàn)槲覀兛梢允褂萌龑咏粨Q來實(shí)現(xiàn)。差別1(性能):傳統(tǒng)的路由器基于微處理器轉(zhuǎn)發(fā)報(bào)文,靠軟件處理,而三層

8、交換機(jī)通過ASIC硬件來進(jìn)行報(bào)文轉(zhuǎn)發(fā),性能差別很大;差別2(接口類型):三層交換機(jī)的接口基本都是以太網(wǎng)接口,沒有路由器接口類型豐富;差別3:三層交換機(jī),還可以工作在二層模式,對(duì)某些不需路由的包文直接交換而路由器不具有二層的功能.首先讓我們看一下設(shè)備互通的過程:'B人如圖所示:交換機(jī)上劃分了兩個(gè)VLAN,在VLAN1,VLAN2上配置了路由接口用來實(shí)現(xiàn)vian1和vian2之間的互通.A和B之間的互通(以A向B發(fā)起ping請(qǐng)求為例):1) A檢查報(bào)文的目的IP地址,

9、發(fā)現(xiàn)和自己在同一個(gè)網(wǎng)段;2) A>BARP請(qǐng)求報(bào)文,該報(bào)文在VLAN1內(nèi)廣播;3) BAARP回應(yīng)報(bào)文;4) A->Bicmprequest;5) B->Aicmprepiy;A和C之間的互通(以A向C發(fā)起ping請(qǐng)求為例):1) A檢查報(bào)文的目的IP地址,發(fā)現(xiàn)和自己不在同一個(gè)網(wǎng)段;2) A>switch(intvlan1)ARP請(qǐng)求報(bào)文,該報(bào)文在VLAN1內(nèi)廣播;3) 網(wǎng)關(guān)AARP回應(yīng)報(bào)文;4) A>switchicmprequest(目的MAC是intvlan1的MAC,源MAC是A的MAC,目的IP是C,源IP是A);5) switch收到報(bào)文后判斷出是三層

10、的報(bào)文。檢查報(bào)文的目的IP地址,發(fā)現(xiàn)是在自己的直連網(wǎng)段;6) switch(intvlan2)->CARP請(qǐng)求報(bào)文,該報(bào)文在VLAN2內(nèi)廣播;7) C>switch(intvlan2)ARP回應(yīng)報(bào)文;8) switch(intvlan2)>Cicmprequest(目的MAC是C的MAC,源MAC是intvlan2的MAC,目的IP是C,源IP是A)同步驟4)相比報(bào)文的MAC頭進(jìn)行了重新的封裝,而IP層以上的字段基本上不變;9) CAicmpreply,這以后的處理同前面icmprequest的過程基本相同.以上的各步處理中,如果ARP表中已經(jīng)有了相應(yīng)的表項(xiàng),則不會(huì)給對(duì)方發(fā)A

11、RP請(qǐng)求報(bào)文。怎么樣來區(qū)分二和三層的數(shù)據(jù)流?3526產(chǎn)品是三層以太網(wǎng)交換機(jī),在其處理流程中既包括了二層的處理功能,又包括了三層的處理功能。區(qū)別二三層轉(zhuǎn)發(fā)的基本模型:V丄dll丄V丄dll乙如圖所示:三層交換機(jī)劃分了2個(gè)VLAN,A和B之間的通信是在一個(gè)VLAN內(nèi)完成,對(duì)與交換機(jī)而言是二層數(shù)據(jù)流,A和C之間的通信需要跨越VLAN,是三層的數(shù)據(jù)流。上面提到的是宏觀的方法,具體到微觀的角度,一個(gè)報(bào)文從端口進(jìn)入后,Swtich設(shè)備是怎么來區(qū)分二層包文,還是三層報(bào)文的呢?從A到B的報(bào)文由于在同一個(gè)VLAN內(nèi)部,報(bào)文的目的MAC地址將是主機(jī)

12、B的MAC地址,而從A到C的報(bào)文,要跨越VLAN,報(bào)文的目的MAC地址是設(shè)備虛接口VLAN1上的MAC地址。因此交換機(jī)區(qū)分二三層報(bào)文的標(biāo)準(zhǔn)就是看報(bào)文的目的MAC地址是否等于交換機(jī)虛接口上的MAC地址。以S3526交換機(jī)為例,三層交換機(jī)整個(gè)處理流程中分成了三個(gè)大的部分:1)平臺(tái)軟件協(xié)議棧部分這部分中關(guān)鍵功能有:運(yùn)行路由協(xié)議,維護(hù)路由信息表;IP協(xié)議棧功能,在整個(gè)系統(tǒng)的處理流程中,這部分擔(dān)負(fù)著重要的功能,當(dāng)硬件不能完成報(bào)文轉(zhuǎn)發(fā)的時(shí)候,這部分可以代替硬件來完成報(bào)文的三層轉(zhuǎn)發(fā)。另外對(duì)交換機(jī)進(jìn)行telnet,ping,ftp,snmp的數(shù)據(jù)流都是在這部分來處理。舉例:showiproute:Routin

13、gTables:Destination/MaskProtoPreMetricNexthopInterface0。0。0.0/0Static60010.110。255。9VLANInterface210。110.48.0/21Direct0010.110。48。1VLANInterface110。110。48.1/32Direct00127.0.0。1InLoopBack010。110。255。8/30Direct0010.110。255.10VLANInterface0/32Direct00127。0。0。1InLoopBack0127.0.0。0/8Direct00

14、127。0.0.1InLoopBack0/32Direct00127.0。0。1InLoopBack0維護(hù)ARP表showarp:IpAddressMac_AddressVLANIDPortNameType10。110.255。900e0。fc00。55182GigabitEthernet2/1Dynamic10.110。51。750010。b555.f0391Ethernet0/9Dynamic10。110。54.300800.20aa.f41d1Ethernet0/10Dynamic10.110.51。1370010。a4aa。fce61Ethernet0/127Dyna

15、mic10。110.50.900010。b555。e04f1Ethernet0/8Dynamic2)硬件處理流程主要的表項(xiàng)是:二層MAC地址表,和三層的ipfdb表,這兩個(gè)表中用于保存轉(zhuǎn)發(fā)信息,在轉(zhuǎn)發(fā)信息比較全的情況下,報(bào)文的轉(zhuǎn)發(fā)和處理全部由硬件來完成處理,不需要軟件的干預(yù).這兩個(gè)表的功能是獨(dú)立的,沒有相互的關(guān)系,因?yàn)橐粋€(gè)報(bào)文只要一進(jìn)入交換機(jī),硬件就會(huì)區(qū)分出這個(gè)包是二層還是三層。非此即彼。例如:showmacall:MACADDRVLANIDSTATEPORTINDEXAGINGTIME(s)0000。21cf。73f41LearnedEthernet0/192660002.557c.5a79

16、1LearnedEthernet0/122250004。7673.0b381LearnedEthernet0/92620005。5d04。96481LearnedEthernet0/162320005.5df5.9f641LearnedEthernet0/16300MAC地址表是精確匹配的IVL方式,其中關(guān)鍵的參數(shù)是:VianID,Portindex。例如:showipfdball:IpAddressRtIfVtagVTVaiid10。11.83.772200e0fc00-55-18110.11。198.282200-e0-fc00551810:System1:Learned2:10.63。3

17、2.22UsrCfgAge3:UsrCfgnoAgeOther:ErrorPortMacStatusInvalidGigabitEthernet2/1InvalidGigabitEthernet2/110。72。255。1002InvalidGigabitEthernet2/100-e0-fc00-55182InvalidGigabitEthernet2/110.75.35。103210.75.35。10600-e0fc00-551822InvalidGigabitEthernet2/100e0-fc-00-55-182InvalidGigabitEthernet2/100e0-fc-0055

18、-18路由接口索引(Rtlf):該索引用來確定該轉(zhuǎn)發(fā)表項(xiàng)位于哪個(gè)路由接口下面,對(duì)3526產(chǎn)品來講,支持的路由接口數(shù)目是32;Viantag:該值用來表明所處的VLAN,該VLAN和路由接口是對(duì)應(yīng)的;Viantag有效位(VTValid)用來標(biāo)識(shí)轉(zhuǎn)發(fā)出去的報(bào)文中是否需要插入Viantag標(biāo)記。端口索引(Port):用來說明該轉(zhuǎn)發(fā)表項(xiàng)的出端口;下一跳MAC:三層設(shè)備每完成一跳的轉(zhuǎn)發(fā),會(huì)重新封裝報(bào)文中的MAC頭,硬件ASIC芯片一般依據(jù)這個(gè)域里面的數(shù)值來封裝報(bào)文頭。兩個(gè)重要的概念:解析,未解析,每次收到報(bào)文,ASIC都會(huì)從其中提取出源和目的地址在MACTable或者IPFdbTable中進(jìn)行查找,如

19、果地址在轉(zhuǎn)發(fā)表中可以找到,則認(rèn)為該地址是解析的,如果找不到,則認(rèn)為該地址是未解析的。根據(jù)這個(gè)地址是源,還是目的,還可以有源解析,目的未解析等等的組合。對(duì)于二層未解析,硬件本身可以將該報(bào)文在VLAN內(nèi)廣播,但是對(duì)于三層報(bào)文地址的未解析報(bào)文硬件本身則不對(duì)該報(bào)文進(jìn)行任何的處理,而產(chǎn)生CPU中斷,靠軟件來處理.硬件部分的處理可以用這句話來描述:收到報(bào)文后,判斷該報(bào)文是二或是三層報(bào)文,然后判斷其中的源,目的地址是否已經(jīng)解析,如果已經(jīng)解析,則硬件完成該報(bào)文的轉(zhuǎn)發(fā),如果是未解析的情況,則產(chǎn)生CPU中斷,靠軟件來學(xué)習(xí)該未解析的地址.3)驅(qū)動(dòng)代碼部分其中關(guān)鍵的核心有:地址解析任務(wù):在該任務(wù)中對(duì)已經(jīng)報(bào)上來的未解析

20、的地址進(jìn)行學(xué)習(xí),以便硬件完成后續(xù)的報(bào)文的轉(zhuǎn)發(fā)而不需軟件干預(yù)。地址管理任務(wù):為了便于軟件管理和維護(hù),軟件部分保存了一份同硬件中轉(zhuǎn)發(fā)表相同的地址表copy。fib(forwardinginformationbase)表:這個(gè)表的信息來源于iproutetable中的路由信息,之所以把它放在了driver部分,是為了地址解析任務(wù)在學(xué)IP地址時(shí)查找的方便。舉例:showfib:Destination/MaskNexthopFlagInterface0.0.0。0/010.110.255。9IVLANInterface210.110.48。0/2DVLAN-Interface110.110。48.1/32127.0.0。1DInLoopBack010。110。255.8/30

溫馨提示

  • 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
  • 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
  • 5. 人人文庫網(wǎng)僅提供信息存儲(chǔ)空間,僅對(duì)用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對(duì)用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對(duì)任何下載內(nèi)容負(fù)責(zé)。
  • 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請(qǐng)與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶因使用這些下載資源對(duì)自己和他人造成任何形式的傷害或損失。

最新文檔

評(píng)論

0/150

提交評(píng)論