- 相關推薦
Partov仿真引擎在《計算機網絡》課程教學中的應用論文
在《計算機網絡》課程教學中,讓學生理解基本理論的重要性以及如何應用到現實中是一項難題。當前有兩種方法可以緩解這個問題,并幫助學生更進一步的了解網絡概念。一種極端情況即純硬件方案:給學生提供實際的網絡設備(例如,路由器,交換機等)并要求他們在不同的網絡布局中運用這些設備做實驗。這種情況下,每個學生或每組學生必須有專門的設備,這就需要裝載硬件的實驗室。雖然這對于絡管理課程的學生是一個理想的方案,但它并沒有為學生提供所需的更深入的網絡概念知識。例如,在實驗室中學生可以學習如何在網絡中的交換機之間配置生成樹協議(STP),或是由硬件廠商接口偏向交換機之間部署STP協議,但他們對STP的操作知識將保持抽象且只在一個算法的水平。
另一種極端情況是純軟件模擬:學生用仿真軟件來模擬不同的場景[1-3],不同于基于硬件的方法,它不要求專用的網絡設備,并且允許學生在課余時間在他們的個人計算機上通過運行模擬器來做他們的任務。仿真軟件能促進對協議的分析,并且它對網絡研究者在推進實驗之前驗證提出的想法的正確性也是很有用的。但是,這種方法不能讓學生超越仿真軟件預測的場景和功能,限制他們獲得從編程到現實世界的設備體驗,缺乏一種固有的真實性。
可見,在《計算機網絡》課程實踐教學中,純硬件和純軟件方式均有其弊端和優勢,本文提供了將虛擬化工具Partov的作為一種新的混合型教育工具的應用在《計算機網絡》課程教學中,以改善教學效果。引入Partov后,仿真器連接到物理網絡的拓撲結構中,允許學生在一個虛擬節點上設計,實施和執行他們的代碼,同時允許該節點在真實的網絡拓撲結構中進行交互。例如,學生可以實現一個虛擬節點上的路由器,然后觀察他們的路由器是怎樣和與它直接指向的互聯網進行交互的。
1 Partov簡介
Partov提供了一組仿真模型和建立模擬拓撲的 語 言。Partov系 統 是 由 網 絡 仿 真 服 務 器(NSS)和 客 戶 端 框 架 (CF)兩 個 主 要 部 分 組成[4-7].NSS是Partov系統的中心組成部分,它包含創建虛擬拓撲結構及進行仿真的Partov內核,以及擴展內核功能的插件基礎設施。NSS負責通過libpcap[4]與外網進行所有的互動,并與CF合作。NSS依次由三部分組成:模擬服務器,虛擬化引擎以及插件基礎設施。這些組件及它們之間的關系如圖1所示。模擬服務器組件負責將虛擬化框架連接到由CF所提供的分布式框架。每當CF實例請求與Partov服務器進行連接時,模擬服務器組件將通過用戶名/密碼進行身份驗證,然后列舉一個新的拓撲圖或找到先前實例拓撲圖,并將其分配給CF.CF允許學生在他們的個人計算機上執行程序來連接到Partov中央服務器并參與計劃模擬。
CF可以在連接的虛擬節點上發送/接收數據包。每當連接的虛擬節點接收到數據包,它會通過模擬服務器決定該數據包是否要被轉發到另一個NSS組件或轉發到CF,進而對學生的程序進行檢查。例如,學生可以實現網橋,路由器或網絡地址轉化(NAT)功能。這個邏輯可以檢查數據包,并決定是應該忽略他們,還是發送回復或發送另一組所需的數據包到網絡。這讓學生實現了與真實的網絡環境進行交互的算法。Partov拓撲語言 (PTL)是基于XML的語言,它對Partov拓撲結構進行聲明。每種拓撲是以“MAP”為后綴定義的單獨的文件,由三部分組成,用于定義節點,列表(用于資源分配到節點)和鏈接。
插件基礎設施提供了實現插件的基礎設施。每個插件可以使用所有由Partov提供的用于處理數據包的實用程序,并且可進行配置。目前,已有四種插件。模擬節點是一個重要的插件,通過它的數據包被轉發到CF(即學生的程序),數據包從CF恢復被重新注入了虛擬環境。IPv4路由器接受靜態路由表。它可使拓撲可擴展(通過創建分離的網絡的廣播域)和可擴展(通過分層的網絡拓撲)。因特網網關節點是用于將虛擬映射連接到可以用來無縫集成虛擬映射和互聯網的真實網絡的專用路由器。通用的傳輸控制協議(TCP)反向代理服務器通過提供所有的TCP數據包及其響應給/從網絡中運行的真實服務器,來模擬虛擬網絡中沒有服務器時的一種手段。
2 課程任務和所含知識點
《計算機網絡》課程的教學內容具有概念繁多、原理復雜、協議與技術交疊的特點。它涉及眾多的概念、原理、協議和技術,這些內容以錯綜復雜的形式交織在一起,既有原理的復雜性,又有技術的時效性。所以,在該課程的教學過程中,學生普遍反映無法深入理解網絡的原理與技術,知識點的銜接也無法形成整體。在實驗過程中,知識的應用又具有盲目性。現有的課堂教學模式無法很好地實現理論與實踐相結合、提升學生網絡技術能力的教學目的。
Partov的出現為在《計算機網絡》課程教學中開展任務驅動模式教學提供了很好的條件,一方面便于理論和實踐相結合,一方面便于實施和考核。在任務設計方面,本文以綜合性強,TCP/IP為主線,同時兼顧適用性、緊扣網絡技術發展為輔。目前已開展的任務和其覆蓋的ISO層次關系如表1所示。《計算機網絡》課程中,移動IP是重點教學內容。本文以“基于以太網的移動IP(MIPoE)”課程教學任務進行詳細討論。
移動IP協議的作用是在保留它們的IP地址的同時讓節點在不同的網絡中移動,并因此與這些地址相連接。學生必須實現節點能從無線接入點(AP)獲得一個IP地址,并在加入/離開每個無線領域時告知它們,同時實現節點移動,即無線移動節點在從一個AP區域移動到另一個時可以保持自己的IP地址。
在分配中,每個學生被分給一個由圖2所示的三個局域網組成的虛擬拓撲結構。每個拓撲結構包括若干節點及三個無線接入點。每個無線接入點有一個覆蓋區域并可以接收其節點發送的數據包。由AP發送的數據包可到達其覆蓋區域內的所有節點。不同無線接入點的覆蓋區域可重疊。這種重疊區域發送的數據包將被所有相關的AP接收。
使用有限狀態機可能改變一個節點的位置(從鏈路斷開它,并將其連接到另一鏈路)。另一方面,每個AP連接到網關節點,并因此通過第二個網絡接口連接到因特網[8].學生被要求使用CF準備兩種方案。節點程序應該以從一個無線接入點申請一個IP地址開始。然后節點將會移動到另一個無線接入點,在這一過程中,它可能會從一個AP的覆蓋區域進入另一個AP的覆蓋區域。它也可以是進入到多個AP之間的重疊區域。節點程序期望與相應地AP程序進行通信來找到其當前位置。
AP程序期望檢測節點位置并通過IP隧道將家庭網絡的數據包重定向到訪問網絡。學生們也被要求為在節點程序中收到的IP地址設計它們的協議以及無線接入節點通信的協議,使AP可以在任何時候通過跟蹤節點來訪問網絡。在完成這個任務后,學生會對覆蓋及基于IP隧道和移動性IP這樣概念的網絡協議的設計有一個詳細深入的了解。除了任務MIPoE,還有大量其他任務:下面做簡要說明。
帶寬節流器:這個任務要求要善于洞察第三和第四個網絡層,要求學生完成一個工作在第四層的帶寬節流器調節TCP和UDP流量。在這個任務中,學生可以學習如何通過檢查IP,TCP和UDP的報頭來檢測不同的TCP/UDP流量,如何確定流量的速率,以及如何限制流量的速率。
通過UDP簡化的FTP:在此任務中,學生們被要求使用傳輸層的UDP協議來完成一個簡化的文件傳輸協議[9].這種任務可以幫助學生了解終端到終端的可靠性,分組的重新排序,分組錯誤及分組丟失/超時。在這個任務中要避免使 用TFTP,因為TFTP包括的細節和要求與它的關鍵的網絡概念無關。
DHCP和ARP:在這個任務中,學生要同時實現服務器和客戶端的動態主機配置協議(DH-CP)[10],及地址解析協議(ARP),主要是在數據鏈路層,網絡層及應用層。這教會學生通過ARP解析地址,通過DHCP獲取IP和其他網絡的信息(如網關地址),以及更多的網絡分層的概念。
簡化的STP:在這里,首先要求學生們實現一個學習的橋梁來連接拓撲結構中的節點。然后,要求他們加強自己的學習橋梁來完成STP協議的簡化版本。這教導學生了解網絡節點是怎樣通過本地決策和互動來參與分布式算法的。
網絡地址轉換:這個任務遠遠超過了NAT的需求。它要求學生實現一個基于UDP協議的客戶端,并從定位服務器查詢文件的位置,他們完成這些要求必須是在位于NAT服務器后面的服務器的邊緣。根據查詢,本地服務器應設置適當的NAT規則,使客戶端可以連接到正確的服務器并下載所需的文件。這使學生了解有關公共的和私有的IP地址,UDP和TCP端口,以及在實踐中動態NAT和靜態NAT的工作機制。
傳輸控制協議:它是在現今計算機網絡中最重要的協議之一,要求學生實現一個最小的TCP并用它從一個插座式的Web服務器下載文件。
通過讓學生只實現連接TCP的一側,并用完整的和標準的實現另一端(即,插座式Web服務器)證明了用實際的TCP堆棧實現兼容性是正確的。
這個任務使學生了解了TCP的內部結構包括TCP窗口管理,流量控制,內碼,序列號和確認號,以及TCP標志。
內容分發網絡(CDN):CDN[11]是一個可以快速響應大量內容請求的網絡。學生被分配了一個由幾個在地理上分散的服務器群組成的拓撲,并要求在服務器群上建立一個覆蓋網絡,根據它們的負載和路徑延遲重定向到適當的服務器群,完成這個任務之后,學生應了解了覆蓋網絡和負載均衡,并有能力為特殊用途設計一個通信協議,如在CDN服務器群之間。
分布式哈希表與和弦協議:分布式哈希表(DHT)允許信息在對等體之間被分發和存儲。
在這個任務中,學生的方案將被部署在不同的虛擬節點上。這些節點必須建立一個DHT來存儲一些檔案托管服務器位置的信息,并回復位置查詢。
DHT應該抵制隨機節點通過在其他節點上適當地存儲信息來離開。并且它應該使用新加入的節點并在它們之間高效地分配信息。通過這個任務,學生會了解分布式協議,分布式哈希表以及和弦協議的有關知識。
Partov系統在2011年秋季開始用于黃岡師范學院《計算機網絡》課程教學。任務被設計為加強課堂上所教的ISO的OSI模型各層的概念。
對三屆共115名學生就行問卷調查的結果表明:84%的學生認為Partov任務在學習協議和概念方面比在課堂上分發的Socket編程任務更有幫助。82%的學生認為基于Partov任務驅動的學習方法能夠有效的激發學習興趣。93%的學生認為盡管編程作業一般都較為困難而且比用紙筆回答理論問題更耗費時間,但這個任務幫助他們比在課堂上講授的更深入的理解網絡概念。同時,筆者在與完成任務的學生討論問題時看出這些學生對概念有了更深刻的理解。
【Partov仿真引擎在《計算機網絡》課程教學中的應用論文】相關文章:
仿真軟件在計算機網絡教學中的應用論文10-09
計算機仿真技術課程教學中的應用論文10-09
數控仿真軟件在教學中的應用論文10-12
數控加工仿真系統在數控教學中的應用論文10-12
計算機網絡技術課程仿真教學的論文10-10
高仿真情景模擬教學中護理教育的應用論文10-09
項目教學法在計算機網絡課程的應用論文10-09
虛擬仿真技術在數控加工中的應用論文10-12
計算機仿真技術在物流中的應用論文10-11