劉樹剛 劉培華 張雯


摘要:《計算機網絡》課程的實驗教學是整個教學環節的重要組成部分。目前課堂實驗以交換機和路由器的配置為主,而課外實驗以應用層的協議驗證、網絡編程為主。以院系教務管理日常工作為實際應用背景,進行有的放矢的課外應用層驗證、網絡編程訓練并保持可持續性,能收到較好的實驗教學效果。
關鍵詞:計算機網絡;課外實驗;教務管理;應用層
中圖分類號:G642.0 文獻標志碼:A 文章編號:1674-9324(2016)11-0262-02
目前我校的計算機網絡課程主要分為課堂教學、實驗教學和課程設計三個部分,課堂實驗教學的內容以配置交換機、路由器為重點。從協議分層的角度來看,應用層的實驗訓練較少。為了提高學生的網絡編程能力,本著學以致用的原則,以學院的日常教務管理工作為實際應用背景進行課外實驗嘗試,屬于課程綜合型實驗并兼有部分基礎驗證性實驗性質。
一、背景與目標
1.背景。軟件服務外包專業的學生具有自己的特點,他們更喜歡學習實用型的知識,或者說能立竿見影的看到效果的知識。針對這些學生的特點和實驗室設備的情況,提出了充分利用服務器、以服務器為核心加強應用層知識教學的方針,提高學生的學習興趣,豐富實驗教學的內容。
教務管理是在校學生比較熟悉的應用,以其為實例既有代表性又有實用性。目前大多數資料的收集仍然以Word或Excel等文檔甚至打印文本為主,工作量大、信息冗余甚至不一致。以數據庫為中心、以網站為入口的管理模式是必然選擇。結合院系的教務管理實際應用,可以使學生的學習體會能達到“立竿見影”的效果。
2.課外實驗目標。加深學生對應用層知識的理解與運用。應用層是直接與用戶接口的一層,協議眾多且面向日常使用。在服務器上安裝Debian 8,圖形界面可選。盡量使用apt-get安裝軟件包,這樣做的目的是升級比較方便且兼容性好。
基本的服務器軟件為Apache與ProFTPD等,這兩個軟件供學生體驗HTTP與FTP協議。在此基礎上可以建立教務管理網站并開發應用程序,進行網絡編程與維護。使學生可通過校園網訪問實驗室的服務器,用各實驗小組的賬號登錄系統,提交程序與數據,修改程序并上傳更新等。經過一個學期的開發與維護,評價各小組的程序功能完備情況與可靠性等并給出評分。
二、系統框架結構
1.系統軟件配置?;痉哲浖跋鄳獏f議與功能如表1所示。
為了驗證應用層常用協議,要借助數據包捕獲工具如Wireshark等,Wireshark是世界上流行的網絡協議分析器,可以從微觀層次上觀察網絡協議的執行情況,便于學生獲得感性認識,方便學習各網絡協議的格式等。限于篇幅本文不做詳細討論。
2.系統功能。教務管理功能框圖如圖1所示。日常工作主要可概括為四大部分共16個模塊的功能。
學生可利用課外時間設計自己的數據庫并進行優化,網頁與代碼可隨時上傳更新并看到效果,通過累積一學期的工作得到較實用的程序功能。教師瀏覽設計文檔和程序功能,并有權察看源代碼和數據庫結構,兼顧可靠性等因素給予平時成績。避免了一卷定成績的缺點。
三、實驗內容與步驟
1.實驗內容。推薦學生使用的操作系統為Debian GNU Linux,它是一個世界上流行的有著豐富軟件包的Linux發行版,大部分基本工具來自于GNU工程,適合用于服務器或桌面系統且非常穩定,有著數量眾多的用戶群體。針對應用層的常用協議,建議學生使用的軟件包如表1所示??梢允褂胊pt-get安裝需要的幾個軟件:
apt-get install apache2 proftpd
按提示進行即可。若需要更新版本,可以執行apt-get update和apt-get upgrade命令。
編輯/etc/apache2/apache2.conf文件修改Web服務器的配置,本實驗中使用基于名稱的虛擬主機,配置重點是端口號、服務器名稱、根目錄、日志等。
文件服務器ProFTPD的配置文件為/etc/proftpd/proftpd.conf,常用選項如ServerType、DefaultRoot、AllowRetrieveRestart等。
數據庫的表結構與網頁布局、網絡程序設計。表的設計原則是簡潔、實用,涵蓋需要的基本信息并考慮表間的字段關聯。網頁以動態網頁為主,以數據為核心,體現“信息收集”與“信息發布”兩大功能。建議學生使用的網頁腳本語言為PHP,一是它與C/C++語法接近,二是也比較流行且通用。使用如下命令即可安裝常用的MySQL數據庫服務器和PHP:
apt-get install mysql-server php5 php-pear php5-mysql
其中MySQL的PHP支持需要安裝php5-mysql。數據庫配置文件是/etc/mysql/my.cnf,PHP的配置文件為/etc/php5/apache2/php.ini,可在默認配置的基礎上根據需要調整配置選項。推薦學生在自己的機器上試運行上述軟件。
2.實驗組織。共分為12小組,每小組4人,每人一臺臺式機。服務器一臺,每個小組有一個賬號并分配有足夠的存儲空間,學生畢業后資料仍然保存。本實驗花一個學期,計入平時成績。學期初布置任務,期末由任課教師根據情況評估打分。學生的問題可以在課間、實驗課上及學院論壇問答,亦可通過電郵等其他方式進行溝通。
四、實驗效果評估
1.加深了學生對應用層知識的理解。計算機網絡教材中大量的篇幅用于描述各種報頭格式如IP數據包的頭格式等。由于太抽象,學生沒有耐心仔細研究每一個字段的作用。通過使用Wireshark工具,可以非常直觀地考察每個字段的含義、字段間的關系以及從十六進制轉換為十進制的數值。
2.提高了學生的動手實踐能力,變一次性實驗為可持續實驗。本實驗最大的特點是其綜合性,涉及的知識面非常廣。本實驗以實驗室的服務器為核心,工作成果長期存儲并供后來的同學參考,降低了學習難度,可重用上屆同學的實驗成果。
3.改善了教務管理工作,提高了效率、減輕了工作量。做得較好的小組,其成果經過評估測試可以實際運用起來。建立以網站為門戶、數據庫為核心的應用系統具有減少冗余、提高效率及保證數據一致性的重要意義。
五、結語
客觀講,這個課外實驗對大三的學生而言要求還是比較高的,所以分工顯得非常重要,四個學生分在一個小組,應根據各自的特長進行分工協作。主要的工作是設計數據庫、網頁特別是網絡程序的編寫與調試等。服務器軟件方面由教師進行主要的基礎配置。由于實驗成果可以長期保留,即使學生課程結束及畢業離校,低年級的學生仍然可以參考他們的作品并以之為藍本進行修改、擴充,所以當可靠性及功能等方面沒有問題時,完全可以實用化。學生感覺到自己的作品起到了實際的作用,學習興趣亦會有較大提高。
參考文獻:
[1]郭文生,傅彥,周瑞.計算機網絡實驗教學研究[J].計算機教育,2012,(9):63-65.
[2]徐明偉,崔勇,徐恪.計算機網絡原理實驗教程[M].北京:機械工業出版社,2008.
[3]林沛滿.Wireshark網絡分析就這么簡單[M].人民郵電出版社,2014.