国产日韩欧美一区二区三区三州_亚洲少妇熟女av_久久久久亚洲av国产精品_波多野结衣网站一区二区_亚洲欧美色片在线91_国产亚洲精品精品国产优播av_日本一区二区三区波多野结衣 _久久国产av不卡

?

計算機網(wǎng)絡數(shù)據(jù)鏈路層教學研究

2016-12-21 00:51:43畢坤殷俊劉廣鐘韓德志
計算機教育 2016年9期
關鍵詞:案例教學計算機網(wǎng)絡

畢坤+殷俊+劉廣鐘+韓德志

摘要:針對學生普遍反映的計算機專業(yè)課程偏重理論、內(nèi)容抽象、難以理解和運用的問題,以計算機網(wǎng)絡數(shù)據(jù)鏈路層3個基本問題的解決方案為例,討論、分析和擴展相關理論的內(nèi)涵與外延,以聊天軟件消息傳輸和軟件數(shù)字簽名的程序設計為典型案例,分析上述基礎理論與實際軟件開發(fā)之間的共同點和內(nèi)在聯(lián)系,運用基礎理論解決實際軟件開發(fā)問題,交流計算機教學中理論與實踐結(jié)合教學法的優(yōu)點、體會和教學案例。

關鍵詞:計算機網(wǎng)絡;數(shù)據(jù)鏈路層;幀定界;透明傳輸;差錯檢測;案例教學

計算機網(wǎng)絡課程配套實驗通常都是實戰(zhàn)型實驗。通過實驗,一方面,能夠幫助學生掌握一些具體的網(wǎng)絡配置和維護技能,比如,制作網(wǎng)線,配置交換機,配置路由器,配置應用層Web、FTP、DHCP服務等;另一方面,也能夠幫助學生更好地理解課本上相關的網(wǎng)絡原理和知識點。因此,計算機網(wǎng)絡課程受到學生的普遍歡迎。

學生在學習過程中,很容易將計算機網(wǎng)絡課程與網(wǎng)絡管理和維護聯(lián)系起來,對計算機網(wǎng)絡課程的認識,還存在以下幾個誤區(qū):

(1)認為學習計算機網(wǎng)絡課程只是為今后從事網(wǎng)絡管理和網(wǎng)絡維護工作打下基礎;

(2)對計算機網(wǎng)絡課理論內(nèi)容興趣不大,只對直觀的、實戰(zhàn)性強的內(nèi)容有興趣;

(3)認為計算機網(wǎng)絡技術已經(jīng)比較成熟,無須再去認真學習,只要使用當前已有的網(wǎng)絡設備和網(wǎng)絡技術即可。

在計算機網(wǎng)絡教學中,對于直觀上實戰(zhàn)性較強的內(nèi)容,學生普遍表現(xiàn)出較高的學習興趣,但對于比較抽象化或理論化的內(nèi)容,學生通常會質(zhì)疑學習這些內(nèi)容的意義和價值,該現(xiàn)象在高校教學中普遍存在。解決該問題的一種有效方法就是將理論與實際應用相結(jié)合,通過分析和舉例,講解抽象理論背后的思想與實際工程項目之間的內(nèi)在聯(lián)系并加以擴展,給學生較大的啟發(fā),并引起學生的注意和興趣。

筆者所在的網(wǎng)絡教研小組使用的計算機網(wǎng)絡教材是謝希仁教授編著的《計算機網(wǎng)絡(第6版)》,本文以該教材中數(shù)據(jù)鏈路層要解決的3個基本問題(封裝成幀、透明傳輸和差錯檢測)為例,介紹相關知識點的內(nèi)涵和外延,對知識點內(nèi)容進行擴展,并舉例說明相關理論如何與具體應用相結(jié)合,解決實際問題。

1.幀定界的原理與實踐

對于封裝成幀的原理,教材已經(jīng)給出了清晰的論述。封裝成幀的主要功能包括幀定界、定義和填充數(shù)據(jù)鏈路層使用的各控制字段等,本節(jié)主要論述幀定界的相關原理與具體應用。

1.1幀定界的原理

對于幀定界的功能,主要從以下兩個方面進行理解。一方面是自頂向下分析,來自網(wǎng)絡層的、獨立的IP數(shù)據(jù)報,在數(shù)據(jù)鏈路層需要封裝成幀,從而形成各自獨立的傳輸單元通過物理層發(fā)送出去;另一方面是自底向上分析,數(shù)據(jù)鏈路層需要處理來自物理層的比特流,需要從比特流中區(qū)分出每一幀的開始比特和結(jié)束比特,因此也需要有一種封裝成幀的機制,能夠從比特流中提取出各個數(shù)據(jù)幀。

如果數(shù)據(jù)幀之間的發(fā)送存在時間間隔(如以太網(wǎng)),幀定界則能夠自然實現(xiàn);但如果數(shù)據(jù)幀的發(fā)送是連續(xù)的,則需要幀定界機制。幀定界的主要思想是使用幀定界符標識數(shù)據(jù)幀的起始和結(jié)束,幀定界符添加在數(shù)據(jù)幀的首部和尾部。幀定界符的本質(zhì)是一串事先定義的0-1比特序列。

1.2幀定界原理的具體實踐

幀定界原理解決了數(shù)據(jù)鏈路層的數(shù)據(jù)幀定界和數(shù)據(jù)幀提取問題,其實現(xiàn)思路并不難理解。為了讓學生對該原理進行更深入的思考、理解和靈活運用,在講解TCP協(xié)議面向流的傳輸機制時,可以將TCP流的特點與幀定界原理相結(jié)合,討論如何解決基于TCP協(xié)議的聊天消息發(fā)送和接收問題。

TCP協(xié)議面向流的傳輸特點比較抽象,含義豐富,對于初學者,難以理解這些機制背后的含義。與面向報文的UDP協(xié)議不同,TCP傳輸是面向流的,提示學生去思考“若基于TCP協(xié)議實現(xiàn)聊天消息發(fā)送和接收,該方案是否可行,是否存在待解決的問題”。根據(jù)筆者的教學經(jīng)驗,對于初學者,很難想到直接使用TCP傳輸聊天消息存在接收者無法從TCP數(shù)據(jù)流中自動提取出每個消息的問題。因為TCP是面向流的,消息和消息之間在TCP流中無間隔。當給學生提示該問題時,很多學生表露出恍然大悟的表情,對于TCP面向流的重要特性也自然能夠理解(本文對TCP面向流的其他含義不做介紹)。然后,引導學生再次回顧數(shù)據(jù)鏈路層幀定界要解決的問題和解決原理,分析該問題與幀定界問題的共同點,引導學生去思考如何利用幀定界原理去解決基于TCP協(xié)議的聊天消息發(fā)送和接收問題。學生平日使用OO等通信工具比較多,對如何實現(xiàn)聊天消息傳輸比較有興趣,通過分析該實際軟件的需求與解決方案,讓學生既理解了TCP面向流的重要含義,同時也對幀定界問題的內(nèi)涵有更多的理解,借鑒幀定界的解決思路,解決TCP數(shù)據(jù)流中用戶消息間的定界問題。

筆者講授相關內(nèi)容時,與學生討論如何實現(xiàn)基于TCP協(xié)議的聊天消息的發(fā)送和接收問題,調(diào)動了學生的興趣和積極性,加深了對知識點的理解,同時也啟發(fā)學生去思考如何靈活運用相關知識點解決實際問題,取得了較好的教學效果。

2.透明傳輸?shù)脑砼c實踐

2.1透明傳輸?shù)脑?/p>

透明傳輸問題是從幀定界問題引入的,解決數(shù)據(jù)幀的數(shù)據(jù)部分若出現(xiàn)幀定界符則會破壞幀邊界的問題。透明傳輸?shù)膶崿F(xiàn)原理包括字符填充法和零比特填充法等。其本質(zhì)都是對數(shù)據(jù)部分出現(xiàn)的幀定界符進行轉(zhuǎn)義或修改,也包括對轉(zhuǎn)義字符的轉(zhuǎn)義等,實現(xiàn)機理不難理解。

2.2透明傳輸原理的具體實踐

對于透明傳輸原理的具體實踐,仍以“如何實現(xiàn)基于TCP協(xié)議的聊天消息的發(fā)送和接收”為例,同樣,需要在學習了TCP傳輸?shù)奶攸c后進行討論。在1.2小節(jié)論述內(nèi)容的基礎上,繼續(xù)探討“若將幀定界機制引入基于TCP協(xié)議的消息傳輸中,是否同樣會存在消息透明傳輸?shù)膯栴}和需求”,即在消息的內(nèi)容部分是否會出現(xiàn)消息定界符比特序列的問題。若存在該問題,如何在消息傳輸時解決。然后,提示學生思考,若直接借鑒數(shù)據(jù)鏈路層幀的透明傳輸方案,該如何解決消息透明傳輸?shù)膯栴};接著討論若不采用透明傳輸?shù)姆桨福欠翊嬖谄渌鉀Q途徑。

筆者講授相關內(nèi)容時,與學生討論該問題,啟發(fā)學生從多角度思考解決問題的方法,以透明傳輸為例,思考提出的解決方案是否會引入新的問題,并將透明傳輸?shù)脑砼c基于TCP的消息傳輸解決方案相結(jié)合,將多個知識點綜合運用,解決聊天消息傳輸?shù)木唧w軟件開發(fā)問題,提高了學生分析和解決問題的能力,學生表現(xiàn)出較大的興趣和參與度,教學效果良好。

3.差錯檢測的原理與實踐

3.1差錯檢測的原理

差錯檢測用于判斷接收的數(shù)據(jù)幀是否存在傳輸錯誤,在講解具體實現(xiàn)機制之前,首先向?qū)W生介紹該問題的難點在于接收者事前并不知道發(fā)送者要發(fā)送的數(shù)據(jù)內(nèi)容,在該情況下去判斷接收的內(nèi)容是否正確,看起來像是一個悖論;接下來留給學生一定的時間去思考該問題,然后介紹差錯檢測的原理。

用于數(shù)據(jù)鏈路層的典型差錯檢測方法是以CRC算法為代表的檢錯方法,該方法在教材上有詳細描述。以CRC算法為代表的檢錯方法的核心思想是對要發(fā)送的數(shù)據(jù)進行計算,生成校驗碼,然后把數(shù)據(jù)與校驗碼同時傳輸給接收者,接收者對收到的數(shù)據(jù)和校驗碼再次進行相同的校驗計算,判斷在傳輸過程中是否存在傳輸錯誤。

3.2差錯檢測方法的擴展

在介紹完CRC算法的原理與計算細節(jié)之后,對差錯檢測章節(jié)的內(nèi)容進行如下擴展。用于數(shù)據(jù)鏈路層的校驗方法都屬于檢錯方法類別,除CRC算法外,典型的檢錯算法還包括消息摘要算法(如MD5算法)、安全散列算法(如SHA算法族)等。除檢錯技術外,糾錯技術的應用也十分廣泛。在糾錯技術方面,存在奇偶校驗、海明校驗等典型的糾錯算法,CRC算法本身也具有一定的糾錯能力,但對CRC生成多項式和校驗數(shù)據(jù)的長度有要求。檢錯和糾錯的能力與碼距有關。除了上述典型的糾錯算法外,還存在多種基于復雜數(shù)學運算的糾刪碼(erasure code)技術。由于課時量有限.上述技術只能給學生簡要的介紹,讓學生對差錯的檢測和糾正有更加全面的認識,拓展學生的知識面,感興趣的學生可以課后自行學習相關內(nèi)容。

學生通常會產(chǎn)生兩個疑問:第一個是為什么數(shù)據(jù)鏈路層的檢錯方法選擇了CRC算法,而不是其他的檢錯算法;第二個是為什么數(shù)據(jù)鏈路層選擇了檢錯機制而不采用糾錯機制。第一個問題可以從以下方面分析:①CRC-32算法的檢錯能力本身已經(jīng)比較強大,檢錯率很高,達到了數(shù)據(jù)鏈路層差錯檢測的要求;②CRC算法能夠?qū)斎氲臄?shù)據(jù)進行流式計算,網(wǎng)絡適配器接收比特流的同時可以通過硬件即時完成CRC校驗。第二個問題可以從以下方面分析:一方面物理通信鏈路比特流傳輸錯誤通常是受某種影響而產(chǎn)生的突發(fā)性錯誤,出錯的位置可能包含多個連續(xù)或非連續(xù)比特,若選用糾錯碼,需要使用糾錯能力非常強的糾錯算法,這些算法計算量比較大,而且在出錯比特數(shù)量比較多的情況下,甚至無法糾正全部錯誤;另一方面,當前物理鏈路的可靠性非常高,誤碼率很低,使用檢錯算法既能檢測比特錯誤,又因為其計算量相對較小,因此對數(shù)據(jù)流的處理速度影響較小,若檢測到錯誤,可以采用重傳或者交給高層協(xié)議處理等方式解決。

3.3差錯檢測的具體應用

差錯檢測技術的本質(zhì)是檢測給定的數(shù)據(jù)是否存在比特錯誤,該技術不僅適用于數(shù)據(jù)鏈路層的差錯檢測,也適用于其他需要進行數(shù)據(jù)錯誤檢測的場景。典型的檢錯算法包括CRC-32、MD5和SHA-1等。差錯檢測技術的另一個典型應用是軟件的數(shù)字簽名。軟件供應商發(fā)布一款軟件后,用戶可以通過各種途徑獲取到該軟件,典型的來源包括官方網(wǎng)站下載、第三方網(wǎng)站分發(fā)、u盤拷貝、光盤傳播等,提示學生思考如果軟件是從第三方網(wǎng)站上下載的或者是從其他同學的計算機里拷貝的,如何保證該軟件在傳播過程中沒有被修改、沒有中病毒或者木馬呢?學生對該問題都很有興趣,這也是學生經(jīng)常面臨的實際問題。通過對該問題進行討論,分析差錯檢測技術的具體應用非常有代表性。首先,為了使學生對該解決方案有直觀的感性認識,可以打開一款帶有數(shù)字簽名的軟件,例如官方下載的QQ軟件,然后右鍵點擊軟件,選擇“屬性”,可以看到屬性中的數(shù)字簽名頁面的信息,如圖1所示;接下來點擊“詳細信息”按鈕,則會彈出新的對話框,出現(xiàn)“此數(shù)字簽名正?!钡奶崾?,如圖2所示。

關于數(shù)字簽名的詳細信息可以點擊“高級”標簽頁查看,關于數(shù)字證書自身的信息可以點擊“查看證書”按鈕查看。為加強演示效果,可以使用二進制編輯器把QQ軟件中的部分字節(jié)修改或者刪除,然后再次點擊軟件的屬性,會發(fā)現(xiàn)數(shù)字簽名的頁面消失了,如圖3所示。需要說明的是,把軟件的某些字節(jié)修改后,數(shù)字簽名頁面可能仍然存在,但是點擊“查看證書”按鈕,則會出現(xiàn)“此數(shù)字簽名錯誤”的相關提示。

演示至此,學生都很感興趣,也對差錯檢測有了更深刻的認識。然后提示學生思考數(shù)字簽名技術應該如何實現(xiàn),思考該技術與差錯檢測之間的關聯(lián)。數(shù)字簽名算法本身由多種摘要算法和非對稱加密算法等組合而成,其關鍵功能之一就是如何鑒別軟件在發(fā)行后是否被惡意修改過。至此,將差錯檢測算法與具體的軟件數(shù)字簽名技術結(jié)合起來,其解決思路是相通的,軟件數(shù)字簽名中的完整性檢測的本質(zhì)就是差錯檢測,軟件發(fā)行方首先會對軟件運行一種摘要算法,生成一段固定長度的摘要,其本質(zhì)等同于對數(shù)據(jù)包進行cRc校驗,生成一段冗余碼,然后把軟件與軟件摘要共同發(fā)布,接收者下載軟件后,使用相同的摘要算法對下載的軟件再次進行摘要計算,并與發(fā)布者公布的摘要做比對,如果一致,則說明軟件沒有被修改,反之,提示用戶此數(shù)字簽名錯誤。數(shù)字簽名要解決的另一個關鍵問題是如何防止摘要本身被修改,這涉及密碼學的相關內(nèi)容,可以稍做提點和介紹即可,在此不再詳細展開。

靈活使用差錯檢測技術的具體應用還有很多,比如當前流行的網(wǎng)盤、云盤中的“秒傳”技術的實現(xiàn),衛(wèi)星數(shù)字電視信號數(shù)據(jù)的下發(fā)等,都需要使用不同類型的差錯檢測和糾錯技術??筛鶕?jù)具體課程進度進行有選擇的講解。

筆者采用上述案例向?qū)W生講授差錯檢測相關內(nèi)容,不僅讓學生掌握了差錯檢測的原理與計算,而且通過擴展和舉例,拓寬了學生的思路,使其掌握了差錯檢測算法的本質(zhì),能夠靈活應用,解決實際軟件開發(fā)中的問題。

4.教學效果評價與探討

在教學過程中,筆者及所在的網(wǎng)絡教研小組采用原理與實踐相結(jié)合教學方法,沒計典型案例,將計算機網(wǎng)絡原理運用到實際軟件開發(fā)中。多年教學實踐表明,該方法受到學生的普遍歡迎,加深了學生對課本原理的理解,擴展了學生的知識面,將課本上看似枯燥的原理轉(zhuǎn)化成能解決實際問題的方法,以點帶面,啟發(fā)學生深入思考網(wǎng)絡教材中的各個原理,把各門課程的知識點聯(lián)系成一個有機整體,而不要零散地、孤立地、片面地去理解知識點,提高了學生的學習興趣,調(diào)動了學生學習的積極性。

學生受限于自身的年齡和知識面,經(jīng)常會憑直覺判斷某個知識點是否有用或無用。改變學生這種錯誤學習觀念和錯誤學習方法的一種有效途徑就是,舉出典型的應用案例使其信服,從而漸漸改變學生的學習觀念,培養(yǎng)學生的學習興趣和耐心,形成系統(tǒng)性的知識結(jié)構(gòu)和思維方式。

教師可以根據(jù)學生的實際情況,因材施教,在講解的深度和廣度上自行把握。作為一名大學專業(yè)教師,除需要講明白課本上的內(nèi)容外,更需要引導學生端正學習態(tài)度,培養(yǎng)學習興趣,改進學習習慣和學習方法,在教學中鍛煉學生的邏輯思維能力、綜合解決問題的能力和創(chuàng)新能力,為國家的人才培養(yǎng)貢獻一份微薄之力。

猜你喜歡
案例教學計算機網(wǎng)絡
基于模式匹配的計算機網(wǎng)絡入侵防御系統(tǒng)
電子制作(2019年13期)2020-01-14 03:15:32
關于計算機網(wǎng)絡存儲技術分析
電子制作(2018年16期)2018-09-26 03:27:08
計算機網(wǎng)絡信息安全及防護策略
電子制作(2018年12期)2018-08-01 00:47:58
鋼琴對環(huán)境污染的探討
科技視界(2016年21期)2016-10-17 18:48:38
淺議課堂教學與管理的體會
科技視界(2016年21期)2016-10-17 18:33:32
案例教學在機械創(chuàng)新設計課程中的應用
考試周刊(2016年77期)2016-10-09 12:16:11
馬克思主義基本原理概論課案例教學的幾點思考
大學教育(2016年9期)2016-10-09 08:13:04
EXCEL在《投入產(chǎn)出法》案例教學中的應用
科技視界(2016年20期)2016-09-29 12:10:02
《運籌學》教學模式探討
科技視界(2016年20期)2016-09-29 11:38:37
計算機網(wǎng)絡技術的應用探討
定州市| 陆河县| 东港市| 永嘉县| 哈尔滨市| 铁力市| 怀柔区| 太谷县| 尼木县| 桂东县| 台中市| 临沭县| 新竹县| 吉林省| 永顺县| 安康市| 永新县| 开江县| 南投市| 建宁县| 白朗县| 山阳县| 林芝县| 永宁县| 伊金霍洛旗| 项城市| 丹东市| 都兰县| 建水县| 瓮安县| 道孚县| 连云港市| 大同县| 榆林市| 石台县| 罗平县| 丰城市| 象州县| 麟游县| 东光县| 沈丘县|