王興芳,張金區,曹 陽,李 慧,沈映珊
(華南師范大學 計算機學院,廣東 廣州 510631)
計算機網絡課程的自頂向下教學
王興芳,張金區,曹 陽,李 慧,沈映珊
(華南師范大學 計算機學院,廣東 廣州 510631)
為了更加符合人們的自然思維習慣,打破傳統的學習順序,提出計算機網絡課程不再按照體系結構由下而上進行教學,而是采用自頂向下的教學方式,并從概述到每一層的教學設計都進行具體闡述和說明。
計算機網絡;教材組織順序;自頂向下;任務式驅動教學模式
對于計算機網絡課程的學習,學期過半到網絡層的學習時,有個很明顯的分水嶺,學習認真、領悟力好的學生能進入良好狀態;而大約1/3的學生仍然不得要領,覺得理論性太強,課程內容太枯燥,而產生得過且過的思想。
經過學生的大量反饋及長時間的反思,筆者意識到“為什么不能按照計算機網絡的體系結構由上而下展開呢”,對于最上層的應用層,如上網、電子郵件、上傳下載、多媒體網絡應用等常見應用,絕大部分學生已有基本的應用體驗,這樣從熟知的應用開始,而后逐漸縱深進入網絡理論的學習,學生可以知道如何應用網絡,但現象背后的原理與技術是如何實現的呢?這樣學生就會懷著極大的興趣,自覺地探究網絡上的各種功能實現原理,能很快入門,并保持良好的學習興趣,從而達到良好的學習效果。
在第1章概述中,要透徹分析分層的理念,分層的目的是“將復雜問題簡單化”。當人們在處理、設計和討論一個復雜系統時,總是將復雜系統劃分為多個小的、功能相對獨立的子系統或模塊,這樣可以將注意力集中在這個大而復雜系統的某個特定部分,并有能力把握它,這本是“分而治之、逐步求精”的模塊化思想。計算機網絡是一個非常復雜的系統,人們發現層次式模塊劃分方法特別適合網絡系統,因此目前所有的網絡系統都采用分層的體系結構。目前廣泛應用的是TCP/IP4層核心體系結構,為了能既簡潔、又能將概念闡述清楚,教學常常采用5層協議的原理體系結構[1]。表1為第1章概述的教學設計。

表1 第1章概述的教學設計
經過第1章的學習,學生可以了解計算機網絡的發展歷史、一些性能指標及最為重要的網絡體系結構。為更加有效地展開各層的具體學習,可在第1部分概述后,對一些常用的基本概念如IP地址、分組交換、路由等作一個簡單介紹,為后面課程的開展作適當的鋪墊[2]。
第1章將計算機網絡系統做了分層處理,每一層(每一模塊)都要承擔一部分任務并且層與層間協調工作,共同完成計算機網絡系統的整體運作。后面的學習中,將打破傳統學習順序,不再按照體系結構由下而上,而是顛倒過來,由上而下展開教學,并且在任務分層的大思路下,每層的學習采用任務式驅動教學模式。在此教學模式中,每一層的教學都可以采用如下思路:
(1)該層分到的任務是什么?
(2)如何利用相關的硬件、軟件(協議)及相應的技術協調地解決這些任務?
(3)各層是如何協調運作的(為方便系統學習,在此給出關系圖,如圖1所示)?

圖1 網絡體系結構中各層協議間的關系
(4)每一層的作用范圍?
應用層有很多個應用,每個應用層協議都是為了解決某一類應用問題,而問題的解決又往往是通過位于不同主機中多個應用進程之間的通信和協同工作完成的。應用層的具體內容就是規定應用進程在通信時所遵循的協議[3]235。由于應用層純屬終端用戶所用,因此在本章中沒有涉及硬件,只是一些常用的網絡應用。表2為應用層的教學設計。
學生了解了應用層的一些常用應用,知道一臺計算機上可以同時運行很多個應用,那么進一步思考兩個問題:
(1)甲乙兩臺主機如何從很多個應用中識別對等方哪個應用在通信呢?
(2)由于應用需求不同,如萬維網、電子郵件、電子銀行、文件傳輸等,數據丟失會造成災難性的后果,這類需要可靠的數據傳輸服務;而實時的多媒體應用如實時音/視頻,可以承受一定程度的數據丟失,那么能夠根據具體需求,提供不同的傳輸服務嗎?
這些問題將在運輸層解決,該層的任務就是為運行在不同主機上的應用進程提供直接的通信服務,那么如何完成該任務呢?主要依賴于端口(port)與運輸層的兩個協議。端口是用來識別應用進程的,端口號稱為應用進程的運輸層地址,如圖1中第一行各協議后的數字為其端口號。TCP協議是提供可靠傳輸服務,而UDP提供更及時的傳輸服務,由圖1可見為應用層協議采用的不同傳輸服務。表3為運輸層的教學設計。
上面兩層主要是終端用戶功能,只有主機的協議棧才有應用層與運輸層,那么用戶的應用數據根據不同需求封裝在TCP或UDP協議中,接下來如何使數據傳出去呢?即數據如何在不同網絡之間進行路由選擇及分組轉發呢?
網絡層研究的就是經過多種不同網絡(電話網、局域網和廣域網),分組怎樣從一個主機傳送到另一個主機(經過路由器),這屬于網絡層的范圍。網絡層將要學到的重要概念有虛擬互聯網絡、IP地址及其分配方法;將要用到的硬件是路由器;需要配備的主要協議有IP協議、ICMP協議、ARP協議、IGMP協議及路由協議(BGP、RIP和OSPF)。圖2 所示為任務驅動的網絡層知識結構。表4為網絡層的教學設計。

表2 第2章應用層的教學設計

表3 第3章運輸層的教學設計

圖2 任務驅動的網絡層知識結構
數據鏈路層研究的是在同一個局域網中,分組怎樣從一個主機傳送到另一個主機(不經過路由器),這屬于數據鏈路層的范圍[3]65。數據鏈路層在兩種信道(點對點信道和廣播信道)上要解決的3個共同的基本問題:封裝成幀、透明傳輸、差錯檢測。重點理解的概念是以太網的硬件地址。表5為數據鏈路層的教學設計。按每一層教學的邏輯思路,數據鏈路層4個問題列舉如下。
(1)任務:封裝成幀、透明傳輸、差錯檢測。
(2)利用以下硬件及軟件完成任務:①硬件:適配器、轉發器、網橋、以太網交換機;②兩種信道:點對點信道——PPP協議;廣播信道——分為有線和無線,有線包括802.3的MAC幀、CSMA/CD協議,無線包括802.11的MAC幀、CSMA/CA協議。

表4 第4章網絡層的教學設計

表5 第5章數據鏈路層的教學設計
(3)作用范圍:同一網絡,主要是局域網。
(4)上下層關系:如圖1所示,IP報文封裝在PPP/MAC中,通過物理地址進行分組轉發。
以上列舉問題可以模仿網絡層知識結構圖,繪制成任務驅動的數據鏈路層知識結構圖。
現有計算機網絡中的硬件設備和傳輸媒體種類繁多,并且通信手段也有很多不同方式,物理層的作用就是要盡可能屏蔽這些傳輸媒體和通信手段的差異,使物理層上面的數據鏈路層感覺不到這些差異。表6為物理層的教學設計。按每一層教學的邏輯思路,物理層4個問題列舉如下。

表6 第6章物理層的教學設計
(1)任務:怎樣才能在連接各種計算機的傳輸媒體上傳輸數據比特流,以及如何應用一些技術使數據比特流傳輸得更快。
(2)利用以下技術完成任務:①傳輸媒體;②通信手段:數字傳輸系統、信道復用技術;③寬帶接入技術。
(3)作用范圍:整個網絡的通信基礎。
(4)上下層關系:如圖1所示,通過傳輸媒體進行數據傳輸。
以上列舉問題可以模仿網絡層知識結構圖,繪制成任務驅動的物理層知識結構圖。
我們打破計算機網絡課程的傳統學習順序,按照體系結構自頂向下展開各層教學,從熟知的應用出發,并且每一層的學習都采用任務式驅動教學模式。經過近3年的教學探索,我們發現學生樂于在應用實踐中結合任務驅動,并采用小組方式選擇完成不同任務,討論分享匯報,由易到難,將日常的網絡應用與其實現的理論有機地結合起來,在很大程度上拓寬了視野與知識面,從而提升了綜合素養,也獲得良好的教學效果。
[1] 謝鈞, 謝希仁. 計算機網絡教程[M]. 4版. 北京: 人民郵電出版社, 2014: 21.
[2] 庫羅斯(美). 計算機網絡自頂向下方法[M]. 陳鳴, 譯. 北京: 機械工業出版社, 2009: 34.
[3] 謝希仁. 計算機網絡[M]. 6版. 北京: 電子工業出版社, 2013.
1672-5913(2017)11-0087-04
G642
廣東省教育廳教學改革項目(GDJG20142157)。
王興芳,女,講師,研究方向為計算機教育技術、遙感圖像處理,505676535@qq.com。
(編輯:宋文婷)