王莉軍
【摘 要】交換機(jī)是以太網(wǎng)的一種連接設(shè)備,可以擴(kuò)大以太網(wǎng)的覆蓋范圍。交換機(jī)是計(jì)算機(jī)網(wǎng)絡(luò)課程中的一個(gè)非常重要的知識(shí),本論文介紹了基于思科Packet Tracer軟件搭建交換機(jī)網(wǎng)絡(luò),并通過軟件仿真過程使同學(xué)們更容易理解交換機(jī)的工作原理。
【關(guān)鍵詞】交換機(jī);Packet Tracer;MAC地址
中圖分類號(hào): TP393.05 文獻(xiàn)標(biāo)識(shí)碼: A 文章編號(hào): 2095-2457(2018)28-0150-002
DOI:10.19694/j.cnki.issn2095-2457.2018.28.068
【Abstract】Switch is a connecting device of Ethernet,which can expand the coverage of Ethernet.Switch is a very important knowledge in computer network course.This paper introduces the construction of switch network based on Cisco Packet Tracer software,and makes it easier for students to understand the working principle of switch through software simulation process.
【Key words】Switch;Packet Tracer;Mac Address
1 原理說明
按照OSI參考模型,交換機(jī)工作在第二層數(shù)據(jù)鏈路層,數(shù)據(jù)鏈路層的數(shù)據(jù)幀里有兩個(gè)關(guān)鍵字段,目的MAC地址和源MAC地址[1]。目的MAC地址指的是最終數(shù)據(jù)站點(diǎn)的MAC地址,源MAC地址是指起始發(fā)送站點(diǎn)的MAC地址。交換機(jī)的工作過程可以分為兩大部分,一部分是建立轉(zhuǎn)發(fā)表,一部分是轉(zhuǎn)發(fā)數(shù)據(jù)。交換機(jī)里有一個(gè)地址轉(zhuǎn)發(fā)表,記錄的是站點(diǎn)的MAC地址與進(jìn)入交換機(jī)的接口之間的對(duì)應(yīng)關(guān)系,一天新的交換機(jī)里面的轉(zhuǎn)發(fā)表是空的。當(dāng)交換機(jī)接收到數(shù)據(jù)幀,先是判斷轉(zhuǎn)發(fā)表中是否有與源MAC地址匹配的表項(xiàng),如果沒有,就會(huì)將源MAC地址與交換機(jī)接收端口之間的對(duì)應(yīng)關(guān)系添加入交換機(jī)的轉(zhuǎn)發(fā)表中,這個(gè)就是基于源MAC地址的轉(zhuǎn)發(fā)表的建立過程。然后交換機(jī)判斷轉(zhuǎn)發(fā)表中是否有與目的MAC匹配的表項(xiàng),沒有匹配的表項(xiàng),則洪泛轉(zhuǎn)發(fā),即除輸入端口以外的所有端口都轉(zhuǎn)發(fā);如果有匹配的表項(xiàng),找到的轉(zhuǎn)發(fā)口與接收端口不相同,則直接從找到的轉(zhuǎn)發(fā)口發(fā)送數(shù)據(jù);如果有匹配的表項(xiàng),但找到的轉(zhuǎn)發(fā)口與接收端口一樣則將數(shù)據(jù)丟棄;,上面3種情況,就是基于目的MAC地址的查表轉(zhuǎn)發(fā)數(shù)據(jù)過程。交換機(jī)的工作過程流程圖如下圖1所示[2]:
2 案例分析
下面以一個(gè)案例的三種場(chǎng)景來說明交換機(jī)的工作過程。在思科的Packet Tracer模擬仿真器中搭建如下圖2所示的網(wǎng)絡(luò)拓?fù)鋄3]。仿真前先在清除分別清空三臺(tái)交換機(jī)的MAC地址表,在特權(quán)模式下使用clear mac-address-table命令,清除后再用show mac-address-table命令查看確認(rèn)。然后在三臺(tái)PC機(jī)的“Command Prompt”的命令行中輸入ipconfig/all命令查看3臺(tái)PC機(jī)的MAC地址和IP地址在圖2中有顯示[3]。
2.1 PC0向PC2發(fā)送數(shù)據(jù)
2.1.1 PC0發(fā)送請(qǐng)求報(bào)文給PC2
第1個(gè)場(chǎng)景是PC0向PC2發(fā)送數(shù)據(jù),PC0先發(fā)送請(qǐng)求報(bào)文給PC2,SW0交換機(jī)先收到數(shù)據(jù)報(bào)文,查看MAC地址表沒有源MAC地址即PC0的MAC地址,所以將PC0的MAC地址和輸入端口F0/1添加進(jìn)入MAC地址轉(zhuǎn)發(fā)表中,再查看MAC地址表中沒有目標(biāo)MAC地址即PC2的MAC地址,所以從除輸入端口F0/1以外的F0/3端口洪泛轉(zhuǎn)發(fā)數(shù)據(jù)。SW1收到數(shù)據(jù)報(bào)文,查看MAC地址表沒有源MAC地址即PC0的MAC地址,所以將PC0的MAC地址和輸入端口F0/1添加進(jìn)入MAC地址轉(zhuǎn)發(fā)表中,再查看MAC地址表中沒有目標(biāo)MAC地址即PC2的MAC地址,所以從除輸入端口F0/1以外的F0/3端口和F0/2端口洪泛轉(zhuǎn)發(fā)數(shù)據(jù)。PC1收到數(shù)據(jù)檢測(cè)目標(biāo)MAC地址和自己的MAC地址不一樣就將數(shù)據(jù)丟棄。SW2收到數(shù)據(jù)報(bào)文,查看MAC地址表沒有源MAC地址即PC0的MAC地址,所以將PC0的MAC地址和輸入端口F0/1添加進(jìn)入MAC地址轉(zhuǎn)發(fā)表中,再查看MAC地址表中沒有目標(biāo)MAC地址即PC2的MAC地址,所以從除輸入端口F0/1以外的F0/3端口洪泛轉(zhuǎn)發(fā)數(shù)據(jù)。PC2收到數(shù)據(jù)后檢測(cè)目標(biāo)MAC地址與自己的MAC地址一樣所以接收數(shù)據(jù)
2.1.1 PC2發(fā)送響應(yīng)報(bào)文給PC0
接下來PC2發(fā)送一個(gè)響應(yīng)數(shù)據(jù)報(bào)文給PC0,這時(shí)源MAC地址為PC2的MAC地址,目標(biāo)MAC地址為PC0的MAC地址。PC2先將數(shù)據(jù)發(fā)給SW2,SW2查看MAC地址表沒有源MAC地址即PC2的MAC地址,所以將PC2的MAC地址和輸入端口F0/3添加進(jìn)入MAC地址轉(zhuǎn)發(fā)表中,再查看MAC地址表中目標(biāo)MAC地址即PC0的MAC地址對(duì)應(yīng)的端口為F0/1,所以直接從F0/1端口轉(zhuǎn)發(fā)數(shù)據(jù)。SW1查看MAC地址表沒有源MAC地址即PC2的MAC地址,所以將PC2的MAC地址和輸入端口F0/2添加進(jìn)入MAC地址轉(zhuǎn)發(fā)表中,再查看MAC地址表中目標(biāo)MAC地址即PC0的MAC地址對(duì)應(yīng)的端口為F0/1,所以直接從F0/1端口轉(zhuǎn)發(fā)數(shù)據(jù)。SW0查看MAC地址表沒有源MAC地址即PC2的MAC地址,所以將PC2的MAC地址和輸入端口F0/2添加進(jìn)入MAC地址轉(zhuǎn)發(fā)表中,再查看MAC地址表中目標(biāo)MAC地址即PC0的MAC地址對(duì)應(yīng)的端口為F0/1,所以直接從F0/1端口轉(zhuǎn)發(fā)數(shù)據(jù)。PC0收到數(shù)據(jù),檢測(cè)目標(biāo)MAC地址就是自己的MAC地址,所以接收該數(shù)據(jù),則從PC0發(fā)送數(shù)據(jù)給PC2,以及PC2返回響應(yīng)數(shù)據(jù)的整個(gè)過程就結(jié)束了。
2.2 PC1向PC0發(fā)送數(shù)據(jù)
2.2.1 PC1發(fā)送請(qǐng)求報(bào)文給PC0
第2個(gè)場(chǎng)景是PC1向PC0發(fā)送數(shù)據(jù),PC1先發(fā)送請(qǐng)求報(bào)文給PC0,SW1交換機(jī)先收到數(shù)據(jù)報(bào)文,查看MAC地址表沒有源MAC地址即PC1的MAC地址,所以將PC1的MAC地址和輸入端口F0/3添加進(jìn)入MAC地址轉(zhuǎn)發(fā)表中,再查看MAC地址表中目標(biāo)MAC地址即PC0的MAC地址對(duì)應(yīng)的端口為F0/1,所以直接從F0/1端口轉(zhuǎn)發(fā)數(shù)據(jù)。SW0收到數(shù)據(jù)報(bào)文,查看MAC地址表沒有源MAC地址即PC1的MAC地址,所以將PC1的MAC地址和輸入端口F0/3添加進(jìn)入MAC地址轉(zhuǎn)發(fā)表中,再查看MAC地址表中目標(biāo)MAC地址即PC0的MAC地址對(duì)應(yīng)的端口為F0/1,所以直接從F0/1端口轉(zhuǎn)發(fā)數(shù)據(jù)。PC0收到數(shù)據(jù)后檢測(cè)目標(biāo)MAC地址與自己的MAC地址一樣所以接收數(shù)據(jù)
2.2.2 PC0發(fā)送響應(yīng)報(bào)文給PC1
接下來PC0發(fā)送響應(yīng)報(bào)文給PC1,SW0先收到數(shù)據(jù)報(bào)文,查看MAC地址表有源MAC地址即PC0的MAC地址,所以MAC地址轉(zhuǎn)發(fā)表不變,再查看MAC地址表中目標(biāo)MAC地址即PC1的MAC地址對(duì)應(yīng)的端口為F0/3,所以直接從F0/3端口轉(zhuǎn)發(fā)數(shù)據(jù)。SW1收到數(shù)據(jù)報(bào)文,查看MAC地址表有源MAC地址即PC0的MAC地址,所以MAC地址轉(zhuǎn)發(fā)表不變,再查看MAC地址表中目標(biāo)MAC地址即PC1的MAC地址對(duì)應(yīng)的端口為F0/3,所以直接從F0/3端口轉(zhuǎn)發(fā)數(shù)據(jù)。
2.3 刪除SW1的地址轉(zhuǎn)發(fā)表后PC1向PC0發(fā)送數(shù)據(jù)
2.3.1 PC1發(fā)送請(qǐng)求報(bào)文給PC0
第3個(gè)場(chǎng)景是刪除SW1的地址轉(zhuǎn)發(fā)表后PC1向PC0發(fā)送數(shù)據(jù),PC1先發(fā)送請(qǐng)求報(bào)文給PC0,SW1交換機(jī)里的MAC地址轉(zhuǎn)發(fā)表已經(jīng)用clear mac-address-table命令刪除MAC地址轉(zhuǎn)發(fā)表,用show mac-address-table命令查看轉(zhuǎn)發(fā)表內(nèi)容為空。SW1先收到數(shù)據(jù)報(bào)文,查看MAC地址表沒有源MAC地址即PC1的MAC地址,所以將PC1的MAC地址和輸入端口F0/3添加進(jìn)入MAC地址轉(zhuǎn)發(fā)表中,再查看MAC地址表中目標(biāo)MAC地址即PC0的MAC地址,發(fā)現(xiàn)沒有則從除輸入端口F0/3,以外的F0/1和F0/2端口洪泛轉(zhuǎn)發(fā)數(shù)據(jù)。SW2交換機(jī)查看MAC地址表沒有源MAC地址即PC1的MAC地址,所以將PC1的MAC地址和輸入端口F0/1添加進(jìn)入MAC地址轉(zhuǎn)發(fā)表中,再查目標(biāo)MAC地址即PC0的MAC地址對(duì)應(yīng)的端口為F0/1與輸入端口一樣,所以丟棄該數(shù)據(jù)報(bào)文。SW0收到數(shù)據(jù)報(bào)文,查看MAC地址表有源MAC地址即PC1的MAC地址,所以MAC地址轉(zhuǎn)發(fā)表不變,再查看MAC地址表中目標(biāo)MAC地址即PC0的MAC地址對(duì)應(yīng)的端口為F0/1,所以直接從F0/1端口轉(zhuǎn)發(fā)數(shù)據(jù)。PC0收到數(shù)據(jù)后檢測(cè)目標(biāo)MAC地址與自己的MAC地址一樣所以接收數(shù)據(jù)。
2.3.2 PC0發(fā)送響應(yīng)報(bào)文給PC1
接下來PC0發(fā)送響應(yīng)報(bào)文給PC1。SW0收到數(shù)據(jù)報(bào)文,查看MAC地址表有源MAC地址即PC0的MAC地址,所以MAC地址轉(zhuǎn)發(fā)表不變,再查看MAC地址表中目標(biāo)MAC地址即PC1的MAC地址對(duì)應(yīng)的端口為F0/3,所以直接從F0/3端口轉(zhuǎn)發(fā)數(shù)據(jù)。SW1收到數(shù)據(jù)報(bào)文,查看MAC地址表沒有源MAC地址即PC0的MAC地址,所以將PC0的MAC地址和輸入端口F0/1添加進(jìn)入MAC地址轉(zhuǎn)發(fā)表中,再查看MAC地址表中目標(biāo)MAC地址即PC1的MAC地址對(duì)應(yīng)的端口為F0/3,所以直接從F0/3端口轉(zhuǎn)發(fā)數(shù)據(jù)。PC1收到數(shù)據(jù)后檢測(cè)目標(biāo)MAC地址與自己的MAC地址一樣所以接收數(shù)據(jù)。
3 結(jié)語
本文介紹了基于思科Packet Tracer仿真軟件搭建交換機(jī)網(wǎng)絡(luò)說明交換機(jī)工作原理的一種方法[4]。這個(gè)仿真實(shí)驗(yàn)方法讓同學(xué)們?cè)跊]有交換機(jī)硬件設(shè)備的情況下,也可以搭建網(wǎng)絡(luò),從而很好的理解交換機(jī)的工作原理。
【參考文獻(xiàn)】
[1]謝希仁.計(jì)算機(jī)網(wǎng)絡(luò).第6版[M].北京:電子工業(yè)出版社,2013:89-93.
[2]張純?nèi)?,施曉秋,劉?網(wǎng)絡(luò)互連技術(shù)[M].北京:清華大學(xué)出版社,2015:221-222.
[3]葉阿勇,賴會(huì)霞,張楨霞,陳秋玲,許力.計(jì)算機(jī)網(wǎng)絡(luò)實(shí)驗(yàn)與學(xué)習(xí)指導(dǎo)-基于Cisco Packet Tracer模擬器.第2版[M].北京:電子工業(yè)出版社,2017:46-51.
[4]姜恩華,張亞萍,侯俊欽.Packet Tracer軟件在計(jì)算機(jī)網(wǎng)絡(luò)實(shí)驗(yàn)教學(xué)中的應(yīng)用[J].實(shí)驗(yàn)科學(xué)與技術(shù),2011.9:30-33.