張 萍
(廣東工貿(mào)職業(yè)技術學院 計算機與信息工程學院,廣東 廣州 510510)
物聯(lián)網(wǎng)應用技術主要研究信息采集、無線傳輸、信息處理等方面基本知識和技能,進行物聯(lián)網(wǎng)系統(tǒng)設計、項目管理、終端節(jié)點的安裝與調(diào)試、系統(tǒng)集成、施工等,學生未來主要從事物聯(lián)網(wǎng)設備的生產(chǎn)、應用和維護,嵌入式系統(tǒng)的開發(fā)和維護,物聯(lián)網(wǎng)系統(tǒng)產(chǎn)品銷售與推廣等方面的工作。物聯(lián)網(wǎng)應用技術專業(yè)的課程一般是按照物聯(lián)網(wǎng)體系結(jié)構(gòu)感知層、傳輸層、應用層進行設計安排?!坝嬎銠C網(wǎng)絡與通信”屬于傳輸層的基礎課程,為學生理解萬物互聯(lián)互通提供理論依據(jù),為學生在未來工作中調(diào)試系統(tǒng)的通信功能提供技能支持,同時為學生學習“無線傳感網(wǎng)絡”等專業(yè)課程提供知識基礎。針對“計算機網(wǎng)絡與通信”課程原理部分概念抽象、較難理解和實操部分靈活多變等問題,結(jié)合專業(yè)背景,在教學設計和教學模式上做出探索和改進,以期提高學生滿意度。
“計算機網(wǎng)絡與通信”主要包含了TCP/IP屬性配置、路由器基本配置、IP地址規(guī)劃、協(xié)議報文分析、VLAN配置、VLAN間路由和無線局域網(wǎng)等內(nèi)容,既包含了基本的計算機網(wǎng)絡原理,又包含了較多的網(wǎng)絡基本操作技術[1]。在課程教學中,以OSI五層模型為線索串聯(lián)教學內(nèi)容,按照物理層、鏈路層、網(wǎng)絡層、傳輸層、應用層的順序組織教學內(nèi)容,有助于學生從整體掌握網(wǎng)絡通信的原理及網(wǎng)絡的使用。結(jié)合物聯(lián)網(wǎng)應用技術專業(yè)特性及后續(xù)的課程教學需要,對于網(wǎng)絡設備的地址規(guī)劃、尋址、協(xié)議報文分析等內(nèi)容進行重點講解并進行必要拓展。見表1所列,以ZigBee無線傳感網(wǎng)絡為例,比較其和計算機通信網(wǎng)絡的異同,凸顯“計算機網(wǎng)絡與通信”這門課程的基礎性。
表1 ZigBee網(wǎng)絡與計算機通信網(wǎng)絡
“計算機網(wǎng)絡與通信”的教學內(nèi)容可以分為兩大類:一部分內(nèi)容偏理論,包括網(wǎng)絡分層模型,TCP/UDP、IP、ARP、DNS等網(wǎng)絡通信協(xié)議,這部分內(nèi)容概念抽象,原理復雜,較難理解;另一部分偏應用,包括IP地址的規(guī)劃、路由器基本配置、VLAN配置等,這部分內(nèi)容實踐性強,需學生靈活使用。針對不同類型的教學內(nèi)容,采用了不同的教學方法。
對于偏理論的內(nèi)容,將抽象的概念實例化,在模擬網(wǎng)絡通信的過程中去理解原理。下面以網(wǎng)絡分層模型和TCP/UDP協(xié)議為例進行說明。
2.1.1 網(wǎng)絡分層模型
網(wǎng)絡分層模型是理解網(wǎng)絡通信的基石,也是學習的重難點。整個通信過程是分層的,通信協(xié)議是對應層之間的協(xié)議,層與層之間只存在簡單的接口關系,學生對于分層、通信協(xié)議、接口、對等實體等概念難以理解。教材通常以郵政信函的通信過程為例,幫助學生理解分層模型,但是這與實際的網(wǎng)絡通信過程存在差距。下面用具體情境結(jié)合Wireshark網(wǎng)絡[2]抓包工具來闡述分層模型的實現(xiàn)。
本文模擬了服務器和客戶端的通信過程,在Ubuntu虛擬機(192.168.80.128)上運行服務器程序??蛻舳撕头掌魍ㄐ攀疽鈭D如圖1所示,效果如圖2所示。
圖1 客戶端和服務器通信示意圖
圖2 服務器程序運行效果
在另一臺IP是192.168.80.130的電腦上輸入如下命令“telnet 192.168.80.128 2323”;再輸入測試數(shù)據(jù),比如“123456”。效果如圖3所示。圖4是服務端接收到的數(shù)據(jù)截圖。
圖3 客戶端運行效果
圖4 服務端接收數(shù)據(jù)截圖
使用Wireshark工具捕獲的通信過程如圖5所示。
圖5 Wireshark工具捕獲的客戶端和服務端通信過程
通信過程包括了完整的TCP建鏈過程、數(shù)據(jù)傳輸過程、斷鏈過程。選中客戶端往服務端發(fā)送“123456”這一次的數(shù)據(jù)傳輸過程,從分層模型的角度進行詳細分析。
客戶端向服務端發(fā)送的信息僅僅只是“123456”,但是抓包工具抓到的內(nèi)容遠不止這些,那么這些被添加的內(nèi)容及其作用是什么值得思考。日常生活中寄信時需要將信紙裝進信封,信封上寫上發(fā)件人、收件人等額外信息,信件到了郵局,還會進行分揀,蓋上郵戳等信息,最后收件人收到的是帶有中間傳輸信息的信封,但是他關注的僅僅只是信紙寫的內(nèi)容。同樣,在網(wǎng)絡的世界里,如果只發(fā)“123456”,計算機、網(wǎng)絡設備是不知道如何發(fā)送數(shù)據(jù)的,應該有類似于發(fā)件人、收件人、郵戳等信息。從圖6可以看出,“123456”是應用層數(shù)據(jù),服務器程序在調(diào)用Socket 函數(shù)接口時,會添加上端口、IP等信息;在經(jīng)過網(wǎng)卡處理后,會添加上MAC地址等信息,最后變成數(shù)字信號通過網(wǎng)線傳輸。
圖6 客戶端向服務端發(fā)送數(shù)據(jù)的分層解析
從圖7可以看出,用戶提供的只是“123456”應用程序數(shù)據(jù),但是最后傳輸?shù)膬?nèi)容附加了很多信息。表2具體列出了各層增加的關鍵項以及在實際通信過程中負責添加、處理關鍵項的模塊實例。
表2 網(wǎng)絡層次與模塊實例的對應關系
圖7 應用數(shù)據(jù)的封裝過程
2.1.2 TCP/UDP協(xié)議
TCP/UDP是傳輸層的兩個重要協(xié)議。TCP是面向連接的協(xié)議,服務質(zhì)量有保證;UDP是無連接協(xié)議,服務質(zhì)量沒有保證[3]。在進行網(wǎng)絡編程時,協(xié)議類型是重要的函數(shù)參數(shù),體現(xiàn)了不同的傳輸特性。TCP/UDP的不同特性是由其協(xié)議報文決定的,圖8和圖9分別是TCP和UDP協(xié)議的報文格式。
圖8 TCP協(xié)議報文
圖9 UDP協(xié)議報文
從協(xié)議報文可以看出,TCP協(xié)議報文比UDP協(xié)議報文復雜,包含了較多的字段。正是這些字段,支持了TCP的各種特性。而UDP的協(xié)議報文非常簡單,因此它是無連接的、無流量控制機制、不保證可靠傳輸?shù)摹CP協(xié)議報文字段與TCP特性對應關系見表3所列。
表3 TCP協(xié)議報文字段與TCP特性對應關系
偏應用的內(nèi)容重點在于訓練學生能針對不同場景熟練使用所需技能[4]。設計了一系列的實驗,從簡單到復雜,循序漸進,先是針對各個獨立知識點訓練,再是知識的綜合使用,使學生能熟練掌握網(wǎng)絡通信的基本技能并靈活使用。實驗項目與相關技能對應關系見表4所列。
表4 實驗項目與相關技能對應關系
“計算機網(wǎng)絡與通信”是實踐性很強的課程,課堂上教師也需要進行較多的實驗操作,但學生往往看過之后容易忘記,等到自己做實驗時,不知如何動手,或者只能完成部分。針對這種情況,采用線上線下相結(jié)合的教學模式能取得較好的教學效果[5],在優(yōu)慕課上建立網(wǎng)絡課程,提供實驗操作文檔、實驗演示視頻,不同層次的學生按需使用[6]。理解能力好、接受能力強的學生可以按照實驗文檔操作完成實驗;而能力弱一些的學生可以先按實驗文檔操作,遇到困難再去觀看實驗演示視頻,不建議直接跟著實驗演示視頻做實驗,避免失去碰到問題、解決問題的機會,鼓勵學生不要害怕問題、在解決問題的過程中成長。
“計算機網(wǎng)絡與通信”是高職物聯(lián)網(wǎng)應用技術專業(yè)的一門基礎課,有助于學生理解網(wǎng)絡通信原理,理解物物互聯(lián)。本文將教學內(nèi)容分為理論和實踐兩類[7],分別采用了不同的教學設計。對于偏理論的內(nèi)容,從網(wǎng)絡分層模型的角度出發(fā),將抽象的理論實例化[8],在具體的網(wǎng)絡通信場景中解釋理論,降低學習的門檻;對于偏實踐的內(nèi)容,設計了一系列的實驗,學生在反復實踐中掌握技能,學會靈活使用。采用線上和線下相結(jié)合的教學模式[9],突破傳統(tǒng)課堂時間和空間的限制,學生可以根據(jù)自身能力情況選擇合適的學習模式[10],做到因材施教。這些措施在實際教學中起到了較好效果,學生學習效果較好,滿意度得到提高。