摘 要:為了讓學(xué)生更好的理解計算機網(wǎng)絡(luò)知識,提高學(xué)生的學(xué)習(xí)效率,在教學(xué)中引入了網(wǎng)絡(luò)仿真軟件輔助教學(xué)的方法逐漸成熟,通過建立一個仿真的網(wǎng)絡(luò)平臺,學(xué)生能具體認識網(wǎng)絡(luò)知識。本文將介紹NS2網(wǎng)絡(luò)仿真軟件的工作原理與運行流程,舉例說明NS2網(wǎng)絡(luò)仿真軟件應(yīng)用實例,探討其在計算機網(wǎng)絡(luò)教學(xué)中的意義。
關(guān)鍵詞:NS2網(wǎng)絡(luò)仿真軟件;計算機網(wǎng)絡(luò);教學(xué)
中圖分類號:TP391.9
信息技術(shù)在當代發(fā)展迅速,在社會發(fā)展中扮演著重要的角色,熟悉并掌握計算機技術(shù)成為了當代社會對現(xiàn)代人的基本要求,因此,基本上各大高校都開始了相應(yīng)的教學(xué)課程以教授計算機網(wǎng)絡(luò)知識。在教學(xué)過程中,教師利用這個模型可以向?qū)W生們展示所學(xué)知識中有關(guān)的計算機原理與相關(guān)算法,化抽象為具體,生動形象的將網(wǎng)絡(luò)展現(xiàn)在學(xué)生面前,不僅激發(fā)學(xué)生學(xué)習(xí)的積極性,也促進了教學(xué)的進行。
1 NS2網(wǎng)絡(luò)仿真軟件的介紹及應(yīng)用優(yōu)勢
1.1 相關(guān)介紹
NS2是眾多網(wǎng)絡(luò)仿真工具中的一種,其面向的是網(wǎng)絡(luò)協(xié)議方面的性能,同類的OPENT由于運行費用比較高,常應(yīng)用于商業(yè)。NS2網(wǎng)絡(luò)仿真軟件是以開源為基礎(chǔ)的多協(xié)議網(wǎng)絡(luò)模擬,其特點是面向具體對象與驅(qū)動時間離散,模仿的是網(wǎng)絡(luò)的運行情況。經(jīng)過長期的發(fā)展,NS2網(wǎng)絡(luò)仿真軟件得到了不斷地改進,正逐步完善。
1.2 應(yīng)用優(yōu)勢
1.2.1 各種各樣的組件模塊。在NS2網(wǎng)絡(luò)仿真軟件中有各種各樣的組件模塊,即大量的節(jié)點、各種協(xié)議以及鏈路的延遲接點等,不要求拓展NS2,只用稍微的做一點修改或準備好一個腳本即可,在教學(xué)過程中應(yīng)用會比較的方便簡單。
1.2.2 化抽象為具體的動畫。如果只是抽象的講解計算機知識是很空洞的,但是有動畫的輔助,過程會變得簡單很多,教學(xué)過程也會變得生動有趣。
1.2.3 知識的深度與廣度得到了擴展。運用NS2網(wǎng)絡(luò)仿真軟件輔助教學(xué),學(xué)生能自主的安排自己的學(xué)習(xí)時間,不用擔心大課堂的限制,可隨時根據(jù)自身需要重點學(xué)習(xí)自己薄弱的地方,隨心地選擇自己要攻克的實驗內(nèi)容。
2 NS2網(wǎng)絡(luò)仿真軟件的特點
2.1 靈活性
學(xué)生可在NS2提供的平臺上選擇自己的喜歡的網(wǎng)絡(luò)環(huán)境,設(shè)置相應(yīng)的參數(shù),就不用擔心數(shù)據(jù)丟失方面的問題出現(xiàn)了,因為NS2網(wǎng)絡(luò)仿真軟件提供監(jiān)控和跟蹤的功能,可記錄操作過程中重要的步驟,對結(jié)果進行分析和再現(xiàn)結(jié)果都是很簡單,在真實的網(wǎng)絡(luò)壞境中我們很難享受到這種靈活性。
2.2 開放性
由于開發(fā)代碼的公開性,NS2平臺上的源代碼具有開放性的特點,通俗一些說就是大眾化。每一個使用者都有獲取和使用源代碼的權(quán)利,并且可以在使用過程中修改源代碼。NS2的這一特點大大的方便了使用者獲取網(wǎng)絡(luò)教學(xué)資源以及實驗資源。除此之外,NS2網(wǎng)絡(luò)存在的形式是圖書館,在被各大高校引入的時候,其性質(zhì)就是龐大的數(shù)據(jù)庫,其中有很多免費的資源,包括一些教學(xué)案例、經(jīng)典演示方案,教師和學(xué)生可以根據(jù)自己的需要隨時取用。
2.3 擴展性
NS2使用兩種語言編譯的,各自有不同的作用,其內(nèi)容有時候也會發(fā)生變化。有能力的同學(xué)可在使用過程中依不同的需求編程新的協(xié)議以擴展出新的功能為自己服務(wù),因為NS2有很強的擴展性。
3 實現(xiàn)NS2網(wǎng)絡(luò)仿真軟件的原理
NS2軟件將很多經(jīng)常用的網(wǎng)絡(luò)協(xié)議內(nèi)容與鏈路層模型存在C++類庫里,軟件的管理者可以利用這些數(shù)據(jù)建立一個完善的網(wǎng)絡(luò)模型,使用者可以通過建立起來的網(wǎng)絡(luò)模型看到計算機網(wǎng)絡(luò)壞境中每個細節(jié)內(nèi)容。下面是對NS2網(wǎng)絡(luò)仿真軟件進行實際模擬時的工作原理介紹。第一,我們應(yīng)該了解,NS2軟件的編程語言共有兩種,一是OTCI語言,還有是C++語言,其中,字節(jié)的處理主要通過C++語言,因為其對字節(jié)、報頭等的處理速度比較令人滿意,此外,由于模擬協(xié)議不需要短時間運行完成工作,C++語言滿足所需條件的同時,編寫完成后的軟件具有較好的性能。從另一方面來說,組織建立環(huán)境的研究、性能配置參數(shù)的決定、性能優(yōu)化參數(shù)的決定是軟件設(shè)計的關(guān)鍵環(huán)節(jié)。[1] 大多數(shù)的軟件編程員和網(wǎng)絡(luò)研究人員都希望能在最短的時間里完成一個軟件工程,開發(fā)出既實用又方便修改的軟件,這需要花大量的心思考慮計算機環(huán)境的時間設(shè)置上。針對這一問題,OTCL語言就有了更大的優(yōu)勢,OTCL語言能輕松出色的完成這個工作。
4 應(yīng)用案例舉例
在計算機網(wǎng)絡(luò)教學(xué)過程中,NS2具有很強大的作用與價值,一方面使用者可以利用這一款軟件對原本做好了但還不是很滿意的協(xié)議進行修改,開發(fā)出各方面滿足要求的協(xié)議等;另一方面,這款軟件還能對剛完成的協(xié)議進行驗證,測試新協(xié)議是否滿足要求。
場景假設(shè):信息制作者C與信息接受者D正在通過一個具體計算機網(wǎng)絡(luò)軟件(多媒體應(yīng)用程序)傳遞著數(shù)據(jù)。我們規(guī)定,該多媒體技術(shù)通信功能的實現(xiàn)是通過UDP代理器完成的,在一切程序都準備好了以后,C和D之間的協(xié)商自動的進行,與此同時,有五個不一樣編碼與0,1,2,3,4共五個刻度值進行著信息的傳遞,當然,傳遞過程中具體用到的刻度值是根據(jù)所處的環(huán)境與條件決定的,網(wǎng)絡(luò)的延遲程度是其中一個很重要的參考因素。以上提到的網(wǎng)絡(luò)設(shè)定環(huán)境是通過編碼建立起來的,除此之外,想要實現(xiàn)對網(wǎng)絡(luò)環(huán)境的監(jiān)視與檢測,在必要時可建立一個數(shù)據(jù)包專門用來監(jiān)視網(wǎng)絡(luò)環(huán)境。我們設(shè)定一個周期為一個小時,意思就是在一個小時之后,我們建立的數(shù)據(jù)包會將一個監(jiān)視報告提供給我們,也就是說如果在一個周期以后我們建立的用于監(jiān)視的數(shù)據(jù)包丟失了,這時我們可以評定網(wǎng)絡(luò)環(huán)境是擁堵的,最簡單的解決方法就是C和D根據(jù)具體的情況適當?shù)慕档托畔鬟f過程中所采用的刻度值,以緩解網(wǎng)絡(luò)擁堵這個問題。相反的,如果我們建立的用于監(jiān)視的數(shù)據(jù)包在一個周期以后,準時地將相應(yīng)的檢測報告返回給我們,我們就可以評定此時的網(wǎng)絡(luò)環(huán)境是良好的,C和D進行信息傳遞的條件參數(shù)就可以繼續(xù)使用,無需改變。從這個假定的場景中,我們可以很清楚的看到,扮演數(shù)據(jù)流角色的UDP代理在運行過程中必須隨時的準備處理信息傳遞時應(yīng)用層所需的數(shù)據(jù),但是現(xiàn)今存在的并使用的大多數(shù)UDP代理數(shù)據(jù)處理器都是有且只有一個處理頭棧,在實際運行過程中往往難以滿足大流量數(shù)據(jù)處理所需的條件,導(dǎo)致運行中斷無法順利完成任務(wù),由此可見,改進正在使用的UDP代理是極其有必要的,改革勢在必行。原理解釋到這里,基本情況已經(jīng)交代完了,可以開始正式運行試驗內(nèi)容,在上文所提到的種種前提下,在運行過程中,學(xué)生就得親自動手進行實際操作了,考慮怎么運用C++語言編譯一個包括數(shù)據(jù)接收過程和數(shù)據(jù)傳遞過程的軟件,分清二者差別,注意語法的正確使用,另外,積極思考如何改進UDP代理以使其能滿足上文所設(shè)定的場景中的大量數(shù)據(jù)同時處理的要求,進一步完善UDP代理,這是極其有意義的。在最后的實驗中,教師可以給學(xué)生留一份作業(yè),根據(jù)所學(xué)知識設(shè)計出一份拓撲圖,這份作業(yè)的目標是能成功的對計算機程序的各種性能進行運行測試。
5 結(jié)束語
通過前對NS2網(wǎng)絡(luò)仿真軟件各方面知識的相關(guān)介紹,我們可以清楚地看到,NS2網(wǎng)絡(luò)仿真軟件可以針對課本中的計算機網(wǎng)絡(luò)知識建立出一個形象生動且具體網(wǎng)絡(luò)模擬環(huán)境,是抽象的計算機知識具體化,乏味的教學(xué)課堂興趣盎然??偠灾琋S2網(wǎng)絡(luò)仿真軟件被引入到計算機網(wǎng)絡(luò)知識教學(xué)中是勢在必行的趨勢,我們應(yīng)該報以積極的態(tài)度。
參考文獻:
[1]鄧志霞.淺談網(wǎng)絡(luò)仿真軟件在計算機專業(yè)網(wǎng)絡(luò)教學(xué)中的應(yīng)用——以NS2為例[J].電腦知識與技術(shù),2011(16):56-58.
[2]石太彬,童孟軍.NS2網(wǎng)絡(luò)仿真軟件應(yīng)用于教學(xué)中的研究[J].計算機時代,2011(03):23-25.
[3]范蘭云.探討NS2網(wǎng)絡(luò)仿真技術(shù)在計算機網(wǎng)絡(luò)知識教學(xué)中的應(yīng)用[J].教育,2012(01):38-39.
[4]董付國,原達.NS2仿真技術(shù)在計算機網(wǎng)絡(luò)實驗教學(xué)中的應(yīng)用與研究[J].計算機時代,2012(S1):44-45.
作者簡介:李玉霞(1980.01-),女,遼寧昌圖人,講師,副科,研究方向:計算機網(wǎng)絡(luò)、計算機語言編程。
作者單位:包頭職業(yè)技術(shù)學(xué)院,內(nèi)蒙古包頭 014030