陳濱
(川北醫(yī)學(xué)院管理學(xué)院,四川 南充 637100)
計(jì)算機(jī)網(wǎng)絡(luò)是由一些看不見的網(wǎng)絡(luò)協(xié)議和各種可感知的具體網(wǎng)絡(luò)設(shè)備組成的,是一門典型的理論和實(shí)踐并重的學(xué)科[1]。因而針對(duì)計(jì)算機(jī)網(wǎng)絡(luò)的學(xué)習(xí),我們不能只注重網(wǎng)絡(luò)協(xié)議這些理論知識(shí),還應(yīng)該加強(qiáng)實(shí)踐練習(xí)以掌握各種網(wǎng)絡(luò)設(shè)備的原理和操作,這同時(shí)可以鞏固和加深對(duì)理論知識(shí)的理解[2]。交換機(jī)作為目前網(wǎng)絡(luò)中使用最為廣泛的網(wǎng)絡(luò)設(shè)備,理解其基本的原理與功能是計(jì)算機(jī)網(wǎng)絡(luò)主要學(xué)習(xí)的目標(biāo)之一。但是由于受限于現(xiàn)實(shí)的實(shí)驗(yàn)室條件,相應(yīng)的網(wǎng)絡(luò)硬件設(shè)備通常都比較缺乏,即使擁有部分實(shí)驗(yàn)環(huán)境,學(xué)生可以分組進(jìn)行實(shí)驗(yàn),但針對(duì)交換機(jī)原理與配置這種需要實(shí)際操作和驗(yàn)證的實(shí)驗(yàn),往往也難以取得較好的教學(xué)效果。另一方面,在真實(shí)的設(shè)備上進(jìn)行實(shí)驗(yàn),不能很好地查看和分析數(shù)據(jù)幀的傳輸情況,不能形象化地說(shuō)明和驗(yàn)證交換機(jī)的功能。因而,本文基于Packet Tracer進(jìn)行實(shí)驗(yàn)設(shè)計(jì),詳細(xì)闡述了交換機(jī)的原理,通過(guò)Packet Tracer的交換機(jī)IOS命令以及利用Packet Tracer的仿真模式查看具體數(shù)據(jù)幀在網(wǎng)絡(luò)中的傳輸情況[3],逐步分析了交換機(jī)建立和維護(hù)MAC地址表的過(guò)程,同時(shí)也形象地展示和說(shuō)明了交換機(jī)的整個(gè)工作過(guò)程。
Packet Tracer是由思科公司發(fā)布的一個(gè)輔助學(xué)習(xí)工具,為學(xué)習(xí)思科網(wǎng)絡(luò)課程的初學(xué)者提供了一個(gè)設(shè)計(jì)、配置、排除網(wǎng)絡(luò)故障的網(wǎng)絡(luò)模擬環(huán)境。該模擬器可以模擬思科的多種網(wǎng)絡(luò)設(shè)備,學(xué)習(xí)者可以通過(guò)拖拽的方式方便地建立網(wǎng)絡(luò)拓?fù)洌徊⑶宜С种T如HTTP、ARP、DHCP、DNS、RIP、OSPF、VTP、STP、TFTP、Telnet等常用協(xié)議,因此能完成基于ARP、VTP、DHCP等協(xié)議的實(shí)驗(yàn);此外,還可以使用Packet Tracer查看數(shù)據(jù)包(PDU)在網(wǎng)絡(luò)中詳細(xì)的處理過(guò)程,以便分析數(shù)據(jù)包的組成以及觀察網(wǎng)絡(luò)實(shí)時(shí)運(yùn)行情況,可以讓學(xué)習(xí)者更好地理解網(wǎng)絡(luò)協(xié)議的工作原理和過(guò)程[4-5]。
交換機(jī)(Switch)是一種基于MAC地址識(shí)別,能完成封裝轉(zhuǎn)發(fā)數(shù)據(jù)包功能的網(wǎng)絡(luò)設(shè)備。交換機(jī)工作于OSI參考模型的數(shù)據(jù)鏈路層,它可以“學(xué)習(xí)”MAC地址,并把其存放在內(nèi)部地址表中,通過(guò)在數(shù)據(jù)幀的始發(fā)者和目標(biāo)接受者之間建立臨時(shí)的交換路徑,使數(shù)據(jù)幀直接由源地址到達(dá)目的地址,而不是像集線器(Hub)一樣向所有端口廣播[6]。因此,交換機(jī)可用于分割數(shù)據(jù)鏈路層廣播(沖突域),但是不能分割網(wǎng)絡(luò)層廣播(廣播域)。
交換機(jī)為了根據(jù)MAC地址進(jìn)行數(shù)據(jù)幀的轉(zhuǎn)發(fā),需要將這些MAC地址與對(duì)應(yīng)的端口記錄在自己內(nèi)部的一個(gè)MAC地址表中。其具體的工作流程如下[7-9]:
(1)交換機(jī)根據(jù)收到數(shù)據(jù)幀中的源MAC地址建立該地址同交換機(jī)端口的映射,并將其寫入MAC地址表,這是交換機(jī)的學(xué)習(xí)功能。
(2)讀取數(shù)據(jù)幀頭中的目的MAC地址,并在地址表中查找相應(yīng)的端口,如有與該目的MAC地址對(duì)應(yīng)的端口,把數(shù)據(jù)包直接復(fù)制到該端口上,這是交換機(jī)的轉(zhuǎn)發(fā)功能。同時(shí)更新MAC地址表中該記錄的記錄時(shí)間,這是交換機(jī)的更新功能。
(3)如果數(shù)據(jù)幀中的目的MAC地址不在MAC地址表中,則向所有端口轉(zhuǎn)發(fā),這是交換機(jī)的泛洪功能。
(4)如果數(shù)據(jù)幀的目的地址指向的端口與接收數(shù)據(jù)幀的端口是同一個(gè)端口,這說(shuō)明兩臺(tái)計(jì)算機(jī)通過(guò)Hub連接到同一端口,不需要交換機(jī)作轉(zhuǎn)發(fā)處理,這是交換機(jī)的過(guò)濾功能。
為了深入理解交換機(jī)的原理,熟悉交換機(jī)的基本配置命令,本實(shí)驗(yàn)設(shè)計(jì)的學(xué)習(xí)目標(biāo)主要有:
(1)掌握Packet Tracer網(wǎng)絡(luò)拓?fù)鋱D的繪制方法
(2)掌握交換機(jī)的基本配置命令
(3)理解交換機(jī)的原理
(4)理解交換機(jī)和集線器在工作原理上的差別
(5)熟悉Packet Tracer仿真模式的使用方法
為了達(dá)成以上的學(xué)習(xí)目標(biāo),本實(shí)驗(yàn)采用如圖1所示的基于交換機(jī)星型網(wǎng)絡(luò)結(jié)構(gòu)。在該拓?fù)鋱D中,采用了思科2960二層交換機(jī),同時(shí)使用了集線器連接PC3和PC4,用來(lái)驗(yàn)證交換機(jī)和集線器在工作原理上的差異。

圖1 仿真實(shí)驗(yàn)拓?fù)浣Y(jié)構(gòu)圖
為了使得整個(gè)實(shí)驗(yàn)有針對(duì)性和可操作性,實(shí)驗(yàn)步驟之間的關(guān)系應(yīng)該是一個(gè)難易度由低到高的遞增的關(guān)系。具體步驟和要求如下:
(1)根據(jù)實(shí)驗(yàn)要求在Packet Tracer中畫出網(wǎng)絡(luò)拓?fù)鋱D。
(2)為各個(gè)PC設(shè)備配置IP地址、子網(wǎng)掩碼和MAC地址,并驗(yàn)證各設(shè)備的連通性。各PC設(shè)備的詳細(xì)參數(shù)分配如表1所示。

表1 PC設(shè)備參數(shù)分配表
(3)對(duì)各交換機(jī)做基本的配置,比如設(shè)置名字、密碼等。
(4)通過(guò)交換機(jī)命令查看交換機(jī)的MAC地址表。
(5)通過(guò)發(fā)送數(shù)據(jù)幀驗(yàn)證交換機(jī)的學(xué)習(xí)、轉(zhuǎn)發(fā)、泛洪、過(guò)濾功能。
(6)通過(guò)查看數(shù)據(jù)幀的傳輸情況驗(yàn)證交換機(jī)和集線器的工作原理的差異。
下面依據(jù)實(shí)驗(yàn)設(shè)計(jì)好的步驟,詳細(xì)說(shuō)明每一步的操作過(guò)程。
(1)依照?qǐng)D1中的網(wǎng)絡(luò)拓?fù)鋱D,從Packet Tracer的網(wǎng)絡(luò)組件區(qū)中選擇對(duì)應(yīng)的網(wǎng)絡(luò)設(shè)備拖到邏輯工作區(qū)中,并用對(duì)應(yīng)的網(wǎng)絡(luò)線纜進(jìn)行連接。
(2)通過(guò)各PC的配置頁(yè)面來(lái)配置IP地址、掩碼和MAC地址。依照表1中的分配,為PC0配置地址如圖2所示,PC1~PC4依照PC0的配置方式進(jìn)行。

圖2 PC0設(shè)備的參數(shù)配置
(3)對(duì)交換機(jī)進(jìn)行基本的配置,比如禁用DNS查找,配置特權(quán)模式口令為admin,將控制臺(tái)和vty連接口令配置為hello等。具體的配置命令如下:
Switch(config)#no ip domain-lookup//禁用DNS查找
Switch(config)#enable secret admin//配置特權(quán)模式口令
Switch(config)#line console 0//配置控制臺(tái)口令
Switch(config-line)#password admin
Switch(config-line)#login
Switch(config-line)#line vty 015//配置VTY口令
Switch(config-line)#password hello
Switch(config-line)#login
(4)使用ping命令驗(yàn)證各PC之間的連通性,確保所有PC都可以互通之后點(diǎn)擊Power Cycle Devices重啟整個(gè)網(wǎng)絡(luò),這樣可以清空MAC地址表,同時(shí)在交換機(jī)上執(zhí)行show macaddress-table,以查看MAC地址表,確認(rèn)其為空,如圖3所示。

圖3 交換機(jī)初始MAC地址表
(5)切換Packet Tracer到仿真模式,點(diǎn)擊Edit Filter,只選擇其中的ARP,再點(diǎn)擊Capture/Forward啟動(dòng)數(shù)據(jù)幀捕獲。然后在PC0上執(zhí)行ping 192.168.10.12,接著通過(guò)點(diǎn)擊Capture/Forward來(lái)傳遞ARP數(shù)據(jù)幀,如圖4所示。當(dāng)ARP數(shù)據(jù)幀到達(dá)交換機(jī)時(shí),通過(guò)在交換機(jī)上執(zhí)行show mac-address-table,可以查看到交換機(jī)的MAC地址表中有了PC0的MAC地址和對(duì)應(yīng)的端口記錄,說(shuō)明交換機(jī)學(xué)習(xí)了到PC0的MAC和端口記錄。

圖4 交換機(jī)的學(xué)習(xí)功能的驗(yàn)證
(6)繼續(xù)點(diǎn)擊Capture/Forward按鈕,由于交換機(jī)MAC地址表中沒(méi)有PC2的MAC地址的記錄,因而交換機(jī)向所有其它端口廣播該數(shù)據(jù)幀,如圖5所示,這就是交換機(jī)的泛洪功能。這個(gè)時(shí)候可以選擇點(diǎn)擊Reset Simulation終止仿真過(guò)程或者點(diǎn)擊Auto Capture/Play等待整個(gè)仿真過(guò)程結(jié)束。

圖5 交換機(jī)的泛洪功能的驗(yàn)證
(7)在各PC之間相互執(zhí)行ping操作,使得交換機(jī)建立起完整的MAC地址表。這時(shí)點(diǎn)擊Edit Filter,只選擇其中的ICMP,再點(diǎn)擊Auto Capture/Forward開啟數(shù)據(jù)幀的自動(dòng)捕獲,然后在PC0上執(zhí)行ping 192.168.10.12,可以發(fā)現(xiàn)當(dāng)ICMP數(shù)據(jù)幀到達(dá)交換機(jī)之后,交換機(jī)不是向所有端口轉(zhuǎn)發(fā),而是直接傳遞到交換機(jī)的Fa0/3端口,這就是交換機(jī)的轉(zhuǎn)發(fā)功能。
(8)當(dāng)步驟7中的數(shù)據(jù)幀模擬結(jié)束后,在PC3上執(zhí)行ping命令來(lái)向PC4發(fā)送數(shù)據(jù)幀,這時(shí)可以發(fā)現(xiàn)交換機(jī)收到Hub發(fā)送來(lái)的數(shù)據(jù)幀后會(huì)直接將其丟棄,如圖6所示。因?yàn)樵诮粨Q機(jī)的MAC地址表中,PC3和PC4的MAC對(duì)應(yīng)的是同一個(gè)端口,所以就不進(jìn)行轉(zhuǎn)發(fā),這正是交換機(jī)的過(guò)濾功能。同時(shí),注意到在Hub轉(zhuǎn)發(fā)ICMP數(shù)據(jù)幀的時(shí)候,總是向所有端口進(jìn)行廣播,而交換機(jī)在學(xué)習(xí)到了MAC地址和端口的映射關(guān)系之后,只會(huì)采取單播的方式向目標(biāo)端口轉(zhuǎn)發(fā)(如步驟6所示),這正是集線器和交換機(jī)工作原理的差異所在。

圖6 交換機(jī)的過(guò)濾功能的驗(yàn)證
為了對(duì)交換機(jī)原理和功能進(jìn)行深入理解,本文設(shè)計(jì)了比較合理的實(shí)驗(yàn)流程和步驟,并通過(guò)Packet Tracer進(jìn)行模擬仿真,形象地展示了交換機(jī)的工作過(guò)程,但由于受限于模擬器的限制,沒(méi)有能驗(yàn)證交換機(jī)的更新功能。通過(guò)實(shí)際的教學(xué)反饋,基于Packet Tracer的實(shí)驗(yàn)設(shè)計(jì)不僅可以降低硬件設(shè)備的投資成本,還能增強(qiáng)學(xué)生對(duì)理論知識(shí)的理解,提高實(shí)驗(yàn)效率,達(dá)到甚至超過(guò)在真機(jī)上的實(shí)驗(yàn)效果。