劉彪 趙鵬 張麗娜
摘要:針對(duì)非計(jì)算機(jī)專業(yè)中計(jì)算機(jī)網(wǎng)絡(luò)實(shí)驗(yàn)教學(xué)的現(xiàn)狀,提出將虛擬的網(wǎng)絡(luò)仿真技術(shù)引入實(shí)驗(yàn)教學(xué)中來,結(jié)合OPNET軟件,介紹具體實(shí)驗(yàn)過程。
關(guān)鍵詞:實(shí)驗(yàn)教學(xué);網(wǎng)絡(luò)仿真;OPNET
0、 引言
網(wǎng)絡(luò)通信的需求日益提高,規(guī)模越來越龐大,網(wǎng)絡(luò)健壯性和可靠性等指標(biāo)也很難進(jìn)行準(zhǔn)確評(píng)估。不論是構(gòu)建新網(wǎng)絡(luò),還是對(duì)原有網(wǎng)絡(luò)升級(jí)改造,或者開發(fā)測試新協(xié)議,都需要對(duì)整個(gè)網(wǎng)絡(luò)的傳輸指標(biāo)(例如數(shù)據(jù)傳輸最大速度、平均速度、網(wǎng)絡(luò)延遲和數(shù)據(jù)吞吐率等)、健壯性和可靠性進(jìn)行客觀評(píng)估,以使網(wǎng)絡(luò)具有較高的性價(jià)比,最大程度地保護(hù)已有投資,提高軟硬件資源利用率,提供最好的服務(wù)質(zhì)量。網(wǎng)絡(luò)技術(shù)應(yīng)用已經(jīng)越來越多地進(jìn)入各個(gè)行業(yè),對(duì)該方面人才的培養(yǎng)也提出了更高的要求,所教授的內(nèi)容在不少非計(jì)算機(jī)專業(yè)學(xué)生的工作、學(xué)習(xí)、生活中得到應(yīng)用。
1、非計(jì)算機(jī)專業(yè)網(wǎng)絡(luò)實(shí)驗(yàn)教學(xué)現(xiàn)狀分析
對(duì)于非計(jì)算機(jī)類專業(yè)學(xué)生(如電氣專業(yè)),學(xué)習(xí)計(jì)算機(jī)網(wǎng)絡(luò)與通信技術(shù)這門課程的積極性并不是很高。以筆者所在的電氣專業(yè)為例,開設(shè)的計(jì)算機(jī)網(wǎng)絡(luò)與通信技術(shù)課程課時(shí)少,內(nèi)容較淺但很全面,涵蓋了全部計(jì)算機(jī)網(wǎng)絡(luò)的協(xié)議層內(nèi)容和概念抽象,教學(xué)方法傳統(tǒng),學(xué)生一般為了拿到學(xué)分而參與學(xué)習(xí),主觀能動(dòng)性較差。同時(shí)由于實(shí)驗(yàn)條件有限,實(shí)驗(yàn)內(nèi)容均按照實(shí)驗(yàn)教案設(shè)計(jì)好的流程,讓學(xué)生一步步機(jī)械執(zhí)行,最后記錄結(jié)果,該方式對(duì)學(xué)生學(xué)習(xí)知識(shí)、開闊思維并未起到預(yù)期的作用,結(jié)果導(dǎo)致學(xué)生興趣下降,學(xué)習(xí)效果不太理想。
筆者所在的計(jì)算機(jī)網(wǎng)絡(luò)課程組結(jié)合多年的教學(xué)經(jīng)驗(yàn),發(fā)現(xiàn)造成上述問題的具體原因有以下幾點(diǎn):一是課堂講授理論性太強(qiáng),過于抽象,教學(xué)過程缺乏趣味性,難以吸引學(xué)生進(jìn)一步自主學(xué)習(xí);二是大部分學(xué)生覺得實(shí)驗(yàn)項(xiàng)目較少、缺乏連貫性且模式固定,不能很好地將理論與實(shí)踐相結(jié)合,無法保證學(xué)生動(dòng)手能力得到鍛煉和提高;三是計(jì)算機(jī)網(wǎng)絡(luò)實(shí)驗(yàn)教學(xué)投入的經(jīng)費(fèi)有限,實(shí)驗(yàn)設(shè)備更新?lián)Q代難以跟上網(wǎng)絡(luò)技術(shù)的發(fā)展。仍以筆者所在的電氣專業(yè)為例,之前計(jì)算機(jī)網(wǎng)絡(luò)與通信技術(shù)這門課程的教學(xué)實(shí)驗(yàn)包括四大類,共計(jì)6個(gè)實(shí)驗(yàn),其中第1個(gè)實(shí)驗(yàn)認(rèn)識(shí)網(wǎng)絡(luò)配置為認(rèn)知類實(shí)驗(yàn),第2個(gè)實(shí)驗(yàn)學(xué)習(xí)制作網(wǎng)線為簡單動(dòng)手驗(yàn)證實(shí)驗(yàn),第3個(gè)實(shí)驗(yàn)IIS配置和第4個(gè)實(shí)驗(yàn)CRC校驗(yàn)驗(yàn)證均為驗(yàn)證類實(shí)驗(yàn),第5個(gè)實(shí)驗(yàn)網(wǎng)絡(luò)協(xié)議分析為協(xié)議驗(yàn)證實(shí)驗(yàn),第6個(gè)實(shí)驗(yàn)轉(zhuǎn)發(fā)表與路由器實(shí)驗(yàn)是在現(xiàn)有模擬軟件的基礎(chǔ)上進(jìn)行的驗(yàn)證類實(shí)驗(yàn)。上述實(shí)驗(yàn)偏向于按照固定的步驟操作后進(jìn)行知識(shí)點(diǎn)驗(yàn)證,而且各知識(shí)點(diǎn)相互獨(dú)立,實(shí)驗(yàn)過程中很多學(xué)生局限于按照提示步驟得到實(shí)驗(yàn)結(jié)果,缺乏綜合性、設(shè)計(jì)性,不利于學(xué)生動(dòng)手能力和綜合素質(zhì)的提高。然而,如果在實(shí)驗(yàn)教學(xué)中設(shè)計(jì)需要硬件設(shè)備支持的綜合性實(shí)驗(yàn),還受到經(jīng)費(fèi)和實(shí)驗(yàn)環(huán)境的限制,可操作性不大。
網(wǎng)絡(luò)仿真技術(shù)是通過建模和統(tǒng)計(jì)分析的方法模擬網(wǎng)絡(luò)行為,從而獲得特定網(wǎng)絡(luò)特性和參數(shù)的技術(shù),其中建模分為網(wǎng)絡(luò)建模(網(wǎng)絡(luò)設(shè)備、通信鏈路等)和流量建模兩部分。模擬網(wǎng)絡(luò)行為是模擬網(wǎng)絡(luò)數(shù)據(jù)在實(shí)際網(wǎng)絡(luò)中傳輸、交換和復(fù)用的過程。通過網(wǎng)絡(luò)仿真,可以獲取多種網(wǎng)絡(luò)特性參數(shù),常用的有網(wǎng)絡(luò)節(jié)點(diǎn)性能統(tǒng)計(jì)量、網(wǎng)絡(luò)流量、網(wǎng)絡(luò)延遲、全局性能統(tǒng)計(jì)量等,既能夠得到業(yè)務(wù)層數(shù)據(jù)統(tǒng)計(jì)量,也能夠得到指定協(xié)議內(nèi)部特殊參數(shù)的統(tǒng)計(jì)結(jié)果。利用這種虛擬實(shí)驗(yàn)形式,將計(jì)算機(jī)硬件和專用軟件組合,在計(jì)算機(jī)上完成多種實(shí)驗(yàn)項(xiàng)目而不需要傳統(tǒng)的實(shí)驗(yàn)硬件器材,可以低成本、高效率地提高實(shí)驗(yàn)教學(xué)效果,從而使學(xué)生的素質(zhì)和能力得到進(jìn)一步的提升。
目前在教學(xué)和科研活動(dòng)中使用較多的網(wǎng)絡(luò)仿真軟件很多,包括Berkeley NS、OMNeT++、SSFNET、OPNET等,其中OPNET Modeler的功能最強(qiáng)大,提供了大部分通信網(wǎng)絡(luò)和分布式系統(tǒng)建模的模擬仿真開發(fā)環(huán)境,是當(dāng)前應(yīng)用最普遍的一種網(wǎng)絡(luò)仿真軟件。筆者選擇以O(shè)PNET為仿真載體進(jìn)行探討。
2、OPNET介紹
OPNET是美國OPNET Technologies Ins公司的產(chǎn)品,是一款功能強(qiáng)大的網(wǎng)絡(luò)仿真和建模工具軟件。它支持面向?qū)ο蠼#⑻峁┯押玫膱D形化編輯界面,能夠完全模擬研究通信協(xié)議和路由算法的真實(shí)網(wǎng)絡(luò)環(huán)境,利用詳細(xì)完備的結(jié)果分析器可以對(duì)網(wǎng)絡(luò)性能進(jìn)行快速高效、形象直觀的分析并輸出為用戶需要的多種圖表。
OPNET是一個(gè)網(wǎng)絡(luò)仿真軟件包集合,能夠分析較復(fù)雜網(wǎng)絡(luò)的行為與性能,利用其建立網(wǎng)絡(luò)模型后,可以在任意位置插入探頭,用于信息量采集及數(shù)據(jù)統(tǒng)計(jì)。仿真輸出能夠以數(shù)字方式、圖形化界面方式進(jìn)行觀察,也可以輸出到第三方的軟件包進(jìn)行進(jìn)一步的分析。同時(shí)OPNET的模型庫提供了多種系列仿真模型,利用這些仿真模型可實(shí)現(xiàn)對(duì)網(wǎng)絡(luò)不同層次的獨(dú)立仿真或者交叉仿真。
在實(shí)驗(yàn)教學(xué)方面,OPNET可實(shí)現(xiàn)多種類型的仿真實(shí)驗(yàn),包括認(rèn)知性、驗(yàn)證性、設(shè)計(jì)性、創(chuàng)新性以及綜合性的實(shí)驗(yàn),主要具有以下特色:(1)通過建立綜合性仿真實(shí)驗(yàn)平臺(tái),使學(xué)生能夠全面、立體地對(duì)課堂內(nèi)容進(jìn)行設(shè)計(jì)、操作與驗(yàn)證,相對(duì)于原有各自分立的幾個(gè)實(shí)驗(yàn),在提高學(xué)生素質(zhì)和專業(yè)知識(shí)方面有較大幅度的提高;②提高學(xué)生參與實(shí)驗(yàn)設(shè)計(jì)的比重,使學(xué)生直觀地感知各種網(wǎng)絡(luò)設(shè)備,自行完成網(wǎng)絡(luò)的設(shè)計(jì)、配置、驗(yàn)證過程,加強(qiáng)學(xué)生多維思路的開拓;③讓學(xué)生動(dòng)態(tài)地、有機(jī)地感受計(jì)算機(jī)網(wǎng)絡(luò)通信中關(guān)鍵協(xié)議與算法的執(zhí)行流程,可以提高學(xué)生學(xué)習(xí)和參與實(shí)驗(yàn)的興趣,更加綜合性地理解、掌握與靈活運(yùn)用課堂知識(shí);④在增加較少硬件成本的情況下實(shí)現(xiàn)綜合性實(shí)驗(yàn)。
3、實(shí)驗(yàn)樣例
3.1實(shí)驗(yàn)流程介紹
提供實(shí)驗(yàn)樣例的目的是為了讓學(xué)生盡快掌握實(shí)驗(yàn)的流程,參照此流程可以按照自己的思路設(shè)計(jì)網(wǎng)絡(luò)拓?fù)?,加入各類設(shè)備,調(diào)整網(wǎng)絡(luò)范圍,在不同情況下對(duì)網(wǎng)絡(luò)性能參數(shù)進(jìn)行仿真分析,從而提高學(xué)生參與實(shí)驗(yàn)設(shè)計(jì)的比重,直觀地感知各種網(wǎng)絡(luò)設(shè)備,自行完成網(wǎng)絡(luò)的設(shè)計(jì)、配置、驗(yàn)證過程,加強(qiáng)學(xué)生多維思路的開拓。
考慮到非計(jì)算機(jī)專業(yè)實(shí)驗(yàn)課時(shí)和專業(yè)深度問題,教師讓學(xué)生通過自己構(gòu)思,針對(duì)自己感興趣的網(wǎng)絡(luò)性能指標(biāo),選擇不同網(wǎng)絡(luò)拓?fù)浣宇^、網(wǎng)絡(luò)設(shè)備、網(wǎng)絡(luò)范圍,通過仿真的手段觀察、分析、對(duì)比網(wǎng)絡(luò)參數(shù)的變化。實(shí)驗(yàn)設(shè)計(jì)占用4個(gè)學(xué)時(shí)(含1個(gè)課外學(xué)時(shí)),包括教師對(duì)仿真軟件的概述、實(shí)驗(yàn)流程講解及仿真軟件中常用設(shè)備介紹l學(xué)時(shí),學(xué)生利用課外時(shí)間構(gòu)思自己的實(shí)驗(yàn)架構(gòu)與參數(shù)指標(biāo)1學(xué)時(shí),利用OPNET網(wǎng)絡(luò)實(shí)現(xiàn)自己的思路并進(jìn)行仿真及分析2學(xué)時(shí)。
實(shí)驗(yàn)指導(dǎo)書以介紹OPNET用法的書籍、論文上給出的初級(jí)應(yīng)用為例,對(duì)具體試驗(yàn)流程簡要介紹如下。
(1)建立工程,設(shè)置環(huán)境,給出網(wǎng)絡(luò)絡(luò)覆蓋的范圍、性質(zhì)、模型家族種類等內(nèi)容。
(2)為網(wǎng)絡(luò)指定網(wǎng)絡(luò)拓?fù)?、?jié)點(diǎn)模型和鏈路模型??勺寣W(xué)生選擇一種拓?fù)浣Y(jié)構(gòu),包括星型(star)、總線型(bus)、環(huán)型(ring)、樹型(tree)等多種連接方式;按照自己的構(gòu)想設(shè)定網(wǎng)絡(luò)中結(jié)點(diǎn)設(shè)備的類型及數(shù)量,可選擇不同廠商的設(shè)備模型,選擇結(jié)點(diǎn)設(shè)備模型及數(shù)量;選擇所連接的鏈路模型;在上一步給出的網(wǎng)絡(luò)覆蓋范圍中給出中心結(jié)點(diǎn)的坐標(biāo)及半徑,這一步僅是一個(gè)初始設(shè)定,后期可根據(jù)需要任意拖動(dòng)各設(shè)備的物理位置;添加服務(wù)器并連接到網(wǎng)絡(luò)中;添加業(yè)務(wù)配置模型,可選定后拖動(dòng)到場景中。
(3)設(shè)定待觀察的網(wǎng)絡(luò)性能參數(shù),比如選擇服務(wù)器的吞吐量或者整個(gè)網(wǎng)絡(luò)的延時(shí)、沖突次數(shù)等內(nèi)容。
(4)設(shè)定仿真參數(shù),運(yùn)行仿真,顯示待觀察的網(wǎng)絡(luò)性能參數(shù)并進(jìn)行分析。
(5)設(shè)計(jì)或者擴(kuò)展用于對(duì)比的網(wǎng)絡(luò)拓?fù)?,再次運(yùn)行仿真并對(duì)結(jié)果進(jìn)行對(duì)比分析。
3.2具體實(shí)驗(yàn)樣例
以計(jì)算機(jī)網(wǎng)絡(luò)實(shí)驗(yàn)室為背景,該實(shí)驗(yàn)室包括70臺(tái)電腦,場地范圍為80m2,分別通過兩種方式進(jìn)行組網(wǎng):第一種方式采用一臺(tái)交換機(jī),第二種方式采用兩臺(tái)交換機(jī),均采用星型拓?fù)浞绞?。兩個(gè)實(shí)驗(yàn)場景占用9m×9m的空間按照上述流程設(shè)計(jì):第一種方式包含1個(gè)服務(wù)器、1個(gè)交換機(jī)和連接在該交換機(jī)上的70個(gè)網(wǎng)絡(luò)設(shè)備結(jié)點(diǎn);第二種方式包含1個(gè)服務(wù)器、2個(gè)交換機(jī)和等量連接在這2個(gè)交換機(jī)上的70個(gè)結(jié)點(diǎn),交換機(jī)結(jié)點(diǎn)35通過交換機(jī)結(jié)點(diǎn)71連接到服務(wù)器結(jié)點(diǎn)73。
設(shè)定要觀察的網(wǎng)絡(luò)性能參數(shù),包括服務(wù)器的網(wǎng)絡(luò)時(shí)延以及整個(gè)網(wǎng)絡(luò)的時(shí)延、負(fù)載率( Bit/sec)、吞吐量(Packages/sec)。運(yùn)行0.5h的仿真,分別觀察上述性能參數(shù)對(duì)比情況。
兩種方式整個(gè)網(wǎng)絡(luò)的時(shí)延結(jié)果分別如圖l和圖2所示,可以看出采用兩個(gè)交換機(jī)的方式網(wǎng)絡(luò)時(shí)延也有明顯的增加。
兩種方式服務(wù)器時(shí)延結(jié)果分別如圖3和圖4所示,可以看出采用兩個(gè)交換機(jī)的方式服務(wù)器時(shí)延明顯增加了30%左右。
兩種方式服務(wù)器的負(fù)載率和吞吐量結(jié)果并沒有太大的差異,分別平均在6000bits/sec和2.5packages/sec附近,這說明負(fù)載率和吞吐量與網(wǎng)絡(luò)總體容量(包括信息和設(shè)備)關(guān)系較大。
另外對(duì)比了第二種方式中兩個(gè)交換機(jī)的時(shí)延,按照與服務(wù)器的距離,遠(yuǎn)端交換機(jī)結(jié)點(diǎn)35和近端交換機(jī)結(jié)點(diǎn)71的時(shí)延分別如圖5和圖6所示,可以看出時(shí)延與物理連接的關(guān)系,并通過課堂教學(xué)中所學(xué)的網(wǎng)絡(luò)實(shí)驗(yàn)構(gòu)成進(jìn)一步分析。
4、結(jié)語
將OPNET引入網(wǎng)絡(luò)實(shí)驗(yàn)教學(xué),可以迅速建立網(wǎng)絡(luò)模型并且方便模型的變化,對(duì)網(wǎng)絡(luò)的規(guī)劃設(shè)計(jì)提供可靠的定量依據(jù),實(shí)現(xiàn)對(duì)網(wǎng)絡(luò)性能的預(yù)測。同時(shí)在幾乎不增加硬件成本的情況下完成教學(xué)實(shí)驗(yàn)。尤其是面向非計(jì)算機(jī)專業(yè)學(xué)生,可以針對(duì)一些課堂教學(xué)中基礎(chǔ)的性能指標(biāo)進(jìn)行驗(yàn)證,讓學(xué)生根據(jù)自己的興趣點(diǎn)自行設(shè)計(jì)網(wǎng)絡(luò)模型,提高學(xué)生參與實(shí)驗(yàn)的比重,使學(xué)生直觀地感知各種網(wǎng)絡(luò)設(shè)備,自行完成網(wǎng)絡(luò)的設(shè)計(jì)、配置、驗(yàn)證過程,加強(qiáng)學(xué)生多維思路的開拓,使學(xué)生能夠個(gè)面、立體地對(duì)課堂內(nèi)容進(jìn)行設(shè)計(jì)、操作與驗(yàn)證,相對(duì)于原有各自分立的幾個(gè)實(shí)驗(yàn),在提高學(xué)生素質(zhì)和專業(yè)知識(shí)方面能夠有較大幅度的提高。