摘要:本文針對當前大學計算機網絡課程教學中實驗設備更新跟不上技術發展和理論講解抽象的問題,提出了利用Sniffer、OPNET、Netsim軟件構建虛擬實驗室輔助教學和實驗的方案,并介紹了三個教學實例。實踐證明,虛擬實驗室具有克服時空限制、緊跟技術前沿等優點,教學效果明顯改善。
關鍵詞:虛擬實驗室;Sniffer;OPNET;Netsim;計算機網絡
中圖分類號:G642文獻標識碼:A
文章編號:1672-5913(2007)08-0072-05
Design of the Virtual Laboratory of Computer Network in Teaching
LIU Waixi GAO Ying HU Xiao
(College of Information and electromechanical Engineering,
Guangzhou university,Guangdong Guangzhou 510006)
Abstract: To solve this problem of computer network in teaching, such as slow updating of experiment instrument, abstract teaching, the solution based on virtual lab consisting of Sniffer, OPNET, Netsim is proposed. Three examples are introduced. The propose has been proved to be effective in teaching, and show some virtues such as overcoming the impediment of time and space, fast technology updating.
Keywords: Virtual Laboratory;Sniffer;OPNET;Netsim;computer network
1 引言
目前在大學中,計算機網絡課程已經成為大部分理工科專業的必修課以及其他專業的選修課。同時,這門課程也是大學中最受歡迎的課程之一。
計算機網絡既是一門理論抽象又是一門實踐性強的課程,理論抽象主要體現在課程中概念繁多,并且都是建立在抽象的理論模型基礎上。實踐性強主要體現在課程學習的對象是不斷更新的實際設備。
為了提高教學效果,教師們采用了很多方法,加強實驗環節就是方法之一。這一方法有助于學生理解、驗證和鞏固所學的理論知識,把抽象的內容形象化,作用巨大。計算機網絡是一種高速發展的技術,要取得好的實驗效果,就需要為學生提供充分的新技術實驗機會,當前網絡實驗室普遍是利用路由器、交換機、PC機組成實際的網絡實驗室。這種方法由于經費的限制,只能提供有限數量和型號的設備,種類較少,設備更新慢,學生實驗機會少,并無法掌握最新技術,實驗效果無法保證。
Sniffer、OPNET、Netsim分別是網絡數據包分析、網絡仿真、網絡設備模擬軟件,日益成為世界上越來越多的科研和工程技術人員進行科學研究的必備工具。在擔當我?!坝嬎銠C網絡”課程的教學中,經過探索與實踐,使用Sniffer、OPNET、Netsim軟件構建虛擬網絡實驗室,可充分拓展實際網絡實驗室的內涵和外延,虛擬實驗室與實際實驗室相比主要有以下優勢:
(1)充分發揮軟件強大的分析、模擬、仿真功能,使學生深刻理解抽象的理論知識。
(2)克服時間和空間的限制,學生在任何有計算機的地方隨時都可以做實驗,并且可以構建任何規模和類型的網絡來滿足實驗的需要。
(3)設備選擇多,軟件中幾乎包括所有型號的設備。
(4)節省投資,升級方便,使學生能夠跟上網絡設備更新換代的速度,掌握最新的技術。
(5)讓學生真正體會工具軟件的熟練掌握在科研和實際工作中的重要作用。
經過實踐探索發現,在教學過程的各階段分別使用不同的軟件平臺輔助教學和實驗會取得較好的效果[1,2]。
2 虛擬實驗室的構建
實驗平臺要求:一個內部聯網的計算機機房,PC機使用Windows XP操作系統,在PC中安裝Sniffer、OPNET、Netsim軟件,其中OPNET只需安裝modeler模塊,并安裝為客戶端/服務器(C/S)模式。在教學的不同階段使用不同的軟件平臺進行輔助教學和實驗,下面分別以一個實例介紹三個平臺。
3 課程教學實驗設計
3.1協議分析平臺
Sniffer是一個獲取網絡包、分析包、產生包的軟件,Sniffer可以在全部7層協議上進行解碼。Sniffer采用類似剝洋蔥的方式從最低層開始,一直到第7層,每一層使用不同的顏色加以區別[3]。
在計算機網絡課程中,分層和協議簇是兩個非常重要的概念,同時也非常抽象,傳統的方法是利用實際的事例進行類比再配合使用多媒體的動畫演示幫助學生理解,如分析郵寄包裹的過程,但實際效果不是特別好。我們在教學過程中充分利用Sniffer對數據包的分析解碼功能,來幫助學生理解。如圖1所示,通過設置抓取一個訪問www.sina.com網站的HTTP數據報文,從中可以清楚地看到一個應用報文是如何從應用層到傳輸層再到網絡層接著到鏈路層逐層進行封裝,并且可以看到各層中相應協議規定結構的具體內容,通過這樣的演示和實驗,使學生可以建立清晰的分層結構模型以及理解各層是如何協同工作的。同時利用Sniffer軟件構建用戶自定義結構和內容的數據報文將加深理解這兩個概念。

3.2 網絡仿真平臺
近年來發展的網絡仿真是一種利用數學建模和統計分析的方法模擬網絡行為,從而獲取支持特定的網絡特性參數的技術,能夠迅速地建立起網絡的模型,為網絡的規劃設計提供可靠的定量依據,非常適合于預測網絡的性能,同時可以方便地修改模型并進行仿真,比較各種網絡設計方案的優劣。
在計算機網絡課程中需要講解和比較分析大量的設備和協議,在實際的教學中不可能為學生提供所有種類的設備,在比較講解同一類型協議性能的優劣時,通過多媒體很難使學生完全理解它們的本質區別。我們在教學和實驗中結合使用OPNET網絡仿真軟件,使學生不僅可以做各種類型設備在各種網絡環境下的實驗,同時可親自比較相關協議、設備、網絡設計方案的性能區別,取得較好的效果。
OPNET是一種優秀的通信協議建模和仿真工具,具有先進的建模機制、完備的模型庫、完善的外部接口等優點。OPNET將通信網絡仿真的各個階段集成在一起,包括模型的設計、仿真、數據的收集和分析等階段,采用基于離散事件驅動的仿真機制,仿真中各個模塊之間通過事件中斷方式傳遞事件信息;基于包的通信機制,通過仿真包在仿真模型中的傳遞來模擬實際物理網絡中數據包的流動和節點設備內部的處理過程;采用三層建模機制,最低層為進程層模型,以有限狀態機來描述協議,其上是節點模型,由相應的協議模型構成,反應設備特性,最上面為網絡拓撲模型,三層模型和實際的網絡、設備、協議層次完全對應,具有很好的繼承性和可重用性[4]。
在本課程的教學過程中,在講到介質訪問控制子層時需要介紹幾種多路訪問協議的性能區別,傳統的教學方法只能通過多媒體做一點結論性的介紹。我們利用OPNET軟件的仿真功能實現各協議多參數、多層面的比較。下面以ALOHA與CSMA/CD協議的比較為例進行介紹。
(1)建立模型
OPNET采用的是三層建模機制,分別是進程、節點、網絡模型。在進程模型中是通過有限狀態機來描述協議,其中ALOHA通用收信機的數據處理機進程模型如圖2所示。

同時需要編寫收信機進程模塊的函數塊,如下所示:
void proc_pkt ()
{Packet* in_pkt;
in_pkt = op_pk_get (IN_STRM);
op_pk_destroy (in_pkt);
++rcvd_pkts;}
void record_stats ()
{op_stat_scalar_write (\"Channel Traffic G\",
(double) subm_pkts/op_sim_time ());
op_stat_scalar_write (\"ChannelThroughput S\",
(double) rcvd_pkts/op_sim_time ()); }
建立好進程模型后再建立節點模型。如圖3所示。建立好節點模型后再建立網絡模型,如圖4所示。

以上介紹了ALOHA協議的三種模型,CSMA/CD協議是在ALOHA隨機信道訪問的基礎上增加了載波監聽的功能,在CSMA/CD協議中,源節點在發送數據包之前先監聽信道,只有當信道空閑時才發送,否則采取一定的策略延遲發送數據包。所以需要對ALOHA協議模型稍做修改。CSMA/CD的發送進程模型如圖5所示。

(2)建立仿真
我們的教學目的是為了比較兩種協議的性能,我們選取信道吞吐量這一網絡中典型反映性能的參數作為比較的對象。
(3)分析仿真結果
最后我們得到如圖6所示的信道吞吐量隨信道流量變化的情況,從圖中可以清楚地看到,在任意信道流量下,CSMA/CD協議都表現出比ALOHA協議更加優越的性能,這一結論也是與理論分析結果完全吻合,仿真結果也可以通過動畫來演示。通過這樣的演示和實驗,使學生可更加清晰地理解各協議的性能差別[5,6]。

3.3網絡設備模擬平臺
本課程的教學目標不僅要掌握原理,更加需要掌握實際設備的配置使用方法,能夠管理使用網絡設備。在當前的教學中,不僅實際設備數量和型號有限,而且有些需要大型網絡環境支持的實驗無法完成,如多區域的OSPF、BGP協議實驗等。在實驗中充分利用Netsim軟件的網絡模擬功能,不僅增加學生的實驗機會,而且可以提供所有教學內容相對應的實驗。
Netsim是Boson公司推出的一款Cisco路由器、交換機模擬軟件,軟件中內置了一些定制的實驗包,同時也支持自定義網絡拓撲結構及連接。通過Netsim,我們可以隨意構建網絡,為路由器、交換機等設備的教學提供了很大的靈活性。下面以配置多區域OSPF的實驗為例進行介紹[7]。
(1)構建網絡拓撲
如圖7所示,通過Netsim自帶的另一個組件Network Designer按照要求繪制網絡拓撲圖,也可以通過Netsim的Lab Navigator導入定制的拓撲圖。
(2)配置數據
Netsim軟件最大的優點是可以非常逼真地模擬實際路由器、交換機的配置環境。圖8是區域1和區域0交界的路由器1(P1R1)的部分配置數據。

(3)顯示結果
經過一系列的數據配置后,如圖9所示,在R2路由器上通過show ip route命令可以看到匯聚后的OSPF路由表。
這種基于復雜網絡拓撲結構并需要大量路由器、交換機的實驗在實際的網絡實驗室是無法完成的,利用Netsim的網絡模擬功能,我們為學生開設了所有與教學內容相對應的實驗。

4 結束語
使用Sniffer、OPNET、Netsim軟件構建虛擬網絡實驗室,可充分拓展實際網絡實驗室的內涵和外延。在計算機網絡課程教學的不同階段分別使用Sniffer、OPNET、Netsim軟件輔助教學和實驗,不僅可以加深對理論知識的理解和對設備的熟練使用,而且也使學生掌握了當前的主流網絡應用工具,為其今后的科研和實際工作打下良好的基礎。本文只是分別介紹了三個平臺中的三個典型應用,實踐證明,在教學中通過虛擬實驗平臺針對不同的專業設置不同的教學和實驗內容,教學效果有較大的改善。
參考文獻:
[1] (美) Andrew S.Tanenbaum著, 潘愛民譯.計算機網絡.第四版[M].北京:清華大學出版社.2004.
[2] (美) W.Richard Stevens著, 范建華等譯.TCP/IP詳解卷1:實現[M].北京:機械工業出版社,2000.
[3] 李朝海, 習友寶.基于Sniffer的”計算機網絡”課程的實驗設計[J].實驗室研究與探索.2006, 25(6): 642-644.
[4] 李笑歌,宇偉,高尚偉.基于OPNET 軟件的數據網絡建模與仿真研究[J].系統仿真學報.2006,18(9):2653-2656.
[5] 王文博, 張金文等. OPNET Modeler與網絡仿真[M].北京: 人民郵電出版社,2003.
[6] OPNET Technologies, Inc.[EB/OL].http://www.opnet.com/.
[7] Boson Netsim6.0 online documentation.http://www.boson.com/.
基金項目:廣東省自然科學基金項目(04300015)。
作者簡介:劉外喜,(1976-),男,碩士,講師,研究方向:寬帶網絡技術,計算機網絡協議。E_mail:liuwaixi@sina.com。手機:13642634204。
高鷹(1963- ), 男, 教授, 碩導, 副院長, 研究方向為通信網絡。
胡曉,(1969-),男,博士,講師。
通信地址:廣州市大學城外環西路230號廣州大學信息與機電學院,郵編:510006。