摘要:局域網(wǎng)技術(shù)是“計(jì)算機(jī)網(wǎng)絡(luò)原理”課程的重要內(nèi)容,而介質(zhì)訪問控制協(xié)議則又是這門課程的重中之重。以典型的局域網(wǎng)介質(zhì)訪問控制協(xié)議CSMA/CD為例,進(jìn)行了詳細(xì)的課堂設(shè)計(jì),整個(gè)設(shè)計(jì)突出培養(yǎng)學(xué)生分析問題和多角度思考問題的能力,教學(xué)效果良好。
關(guān)鍵詞:CSMA/CD;課堂設(shè)計(jì);局域網(wǎng)
作者簡介:馮坤(1978-),女,黑龍江友誼人,海軍工程大學(xué)電子工程學(xué)院,講師;段立(1979-),男,江西吉安人,海軍工程大學(xué)電子工程學(xué)院,副教授。(湖北武漢430033)
基金項(xiàng)目:本文系湖北省自然科學(xué)基金“面向復(fù)雜網(wǎng)絡(luò)的廣域目標(biāo)協(xié)同跟蹤算法研究”(項(xiàng)目編號(hào):2010CDB01501)的研究成果。
中圖分類號(hào):G642#8195;#8195;#8195;#8195;#8195;文獻(xiàn)標(biāo)識(shí)碼:A#8195;#8195;#8195;#8195;#8195;文章編號(hào):1007-0079(2012)11-0061-02
CSMA/CD是使用共享介質(zhì)的傳統(tǒng)以太網(wǎng)所采用的介質(zhì)訪問控制協(xié)議?,F(xiàn)今,高性能以太網(wǎng)的主干鏈路幾乎全部是獨(dú)享的全雙工鏈路,CSMA/CD已經(jīng)不再發(fā)揮以太網(wǎng)的核心作用,然而CSMA/CD是十分精致的協(xié)議,仍然是局域網(wǎng)領(lǐng)域眾多協(xié)議效仿的典范,是計(jì)算機(jī)網(wǎng)絡(luò)原理課程的重要內(nèi)容。本文針對(duì)CSMA/CD的基本內(nèi)容進(jìn)行了課堂設(shè)計(jì)。
一、CSMA/CD課程內(nèi)容介紹
CSMA/CD的主要內(nèi)容包括CSMA/CD的基本思想、使用的算法、工作流程和特點(diǎn)及適用范圍。
1.CSMA/CD的基本思想
CSMA/CD是Carrier Sense Multiple Access with Collision Detection的英文縮寫,翻譯成中文就是“帶有碰撞檢測的載波監(jiān)聽多點(diǎn)接入”協(xié)議。載波監(jiān)聽是指用電子技術(shù)檢測總線上有沒有其他計(jì)算機(jī)發(fā)送的數(shù)據(jù)信號(hào);多點(diǎn)接入,表明CSMA/CD協(xié)議適用于計(jì)算機(jī)以多點(diǎn)接入的方式所構(gòu)成的總線型網(wǎng)絡(luò);碰撞檢測是指計(jì)算機(jī)邊發(fā)送數(shù)據(jù)邊檢測總線上是否發(fā)生了碰撞,如果有碰撞發(fā)生就要停止數(shù)據(jù)幀的發(fā)送,然后等待一段隨機(jī)時(shí)間再次發(fā)送。協(xié)議的基本思想就是如何分布式地協(xié)調(diào)多個(gè)站點(diǎn)對(duì)介質(zhì)的訪問控制。
2.CSMA/CD使用的算法
CSMA/CD協(xié)議采用截?cái)喽M(jìn)制指數(shù)類型退避算法。算法規(guī)則主要有以下四點(diǎn):
確定一個(gè)基本的退避時(shí)間即等待時(shí)間T,并定義重傳次數(shù)為k;當(dāng)重傳k次,系統(tǒng)將在{0,1,…2k-1}的整數(shù)集合中選擇一個(gè)隨機(jī)數(shù)r,發(fā)送站點(diǎn)等待r倍的基本退避時(shí)間;當(dāng)重傳次數(shù)大于10次后,可供系統(tǒng)選擇的隨機(jī)整數(shù)集合定格在{0,1,…,1023};如果重傳16次仍不能成功,則將該幀丟棄。
3.CSMA/CD的工作流程
當(dāng)總線上有站點(diǎn)要發(fā)送數(shù)據(jù)時(shí),其工作流程如圖1所示。首先站點(diǎn)檢測總線是否為“忙”,如果總線“忙”,站點(diǎn)繼續(xù)等待,否則站點(diǎn)發(fā)送數(shù)據(jù)幀,并在發(fā)送數(shù)據(jù)幀的同時(shí)檢測總線上是否有碰撞產(chǎn)生,如果發(fā)送數(shù)據(jù)幀過程中,沒有碰撞發(fā)生則數(shù)據(jù)發(fā)送成功,否則碰撞計(jì)數(shù)器加1;接著檢查重傳次數(shù)是否大于16,若大于16,停止數(shù)據(jù)幀的發(fā)送,并宣布失敗,否則繼續(xù)延遲隨機(jī)時(shí)間后重新啟動(dòng)數(shù)據(jù)發(fā)送過程。
4.CSMA/CD的特點(diǎn)及適用范圍
(1)CSMA/CD的特點(diǎn)。CSMA/CD是運(yùn)行于半雙工模式的協(xié)議,其控制原理簡單,結(jié)點(diǎn)之間的約束較少,控制流程易于實(shí)現(xiàn)。但是采用CSMA/CD的網(wǎng)絡(luò)在輕負(fù)載時(shí)效率較高,而在重負(fù)載時(shí)由于站點(diǎn)間發(fā)生碰撞次數(shù)增加,效率較低。
(2)適用范圍。CSMA/CD適用于對(duì)實(shí)時(shí)性要求不高的、負(fù)載相對(duì)較少的小型網(wǎng)絡(luò)。隨著高性能以太網(wǎng)的產(chǎn)生,CSMA/CD在以太網(wǎng)中已經(jīng)不再發(fā)揮核心作用,但是改進(jìn)后的CSMA/CD在其他使用共享介質(zhì)的領(lǐng)域仍占有重要地位,如,無線局域網(wǎng)、無線傳感器網(wǎng)絡(luò)等。
二、CSMA/CD課堂設(shè)計(jì)
由CSMA/CD的主要知識(shí)點(diǎn),進(jìn)行以下課程設(shè)計(jì)。
1.問題的引入
好的開始是成功的一半,一個(gè)精心設(shè)計(jì)的問題導(dǎo)入會(huì)吸引學(xué)生的眼球,使得學(xué)生對(duì)后續(xù)的內(nèi)容介紹充滿期待。而在問題引入環(huán)節(jié),最奏效的往往是一個(gè)有趣的或者與事實(shí)相符的案例故事。由于以太網(wǎng)產(chǎn)生的歷史背景正是Bob Metcalfe在Xeroc PARC工作時(shí)的一個(gè)研究任務(wù)需求。所以問題的引入就設(shè)置在以太網(wǎng)產(chǎn)生的歷史環(huán)境下進(jìn)行分析,以滿足學(xué)生用所學(xué)知識(shí)解決實(shí)際問題的期望。具體引入思路如下:
先講在1972年,麥特卡夫接收到Xeroc PARC的一個(gè)任務(wù),要求其用簡單的方法設(shè)計(jì)并建立一個(gè)計(jì)算機(jī)網(wǎng)絡(luò),把多臺(tái)相距較近的計(jì)算機(jī)連接起來,并可以方便、可靠地進(jìn)行較高速率的數(shù)據(jù)通信。在那個(gè)年代,人們普遍認(rèn)為無源的電纜線比有源的器件更可靠,于是麥特卡夫就設(shè)計(jì)了一個(gè)用粗同軸電纜把多臺(tái)相距較近的計(jì)算機(jī)連接起來的總線型局域網(wǎng),并命名為以太網(wǎng)。接下來介紹具體的案例解決過程,為了讓學(xué)生對(duì)協(xié)議有個(gè)很好的理解,教師將人們比較熟悉的城市交通規(guī)則和介質(zhì)訪問控制協(xié)議來進(jìn)行類比,把“通信網(wǎng)絡(luò)”比作“交通網(wǎng)絡(luò)”,網(wǎng)絡(luò)中傳輸?shù)摹靶盘?hào)”比作行駛的“車輛”,進(jìn)而把“介質(zhì)訪問控制協(xié)議”比喻為城市的“交通規(guī)則”。每個(gè)城市既有“快車道、慢車道”又有“單行線、雙行線”,不同的道路對(duì)車輛的行駛速度、方向以及載重都有不同的規(guī)定。同樣局域網(wǎng)針對(duì)不同的傳輸介質(zhì)、網(wǎng)絡(luò)拓?fù)浣Y(jié)構(gòu)也需要不同的介質(zhì)訪問控制協(xié)議。麥特卡夫設(shè)計(jì)的以太網(wǎng)是使用粗同軸電纜的總線型局域網(wǎng),它需要怎樣的交通規(guī)則呢?至此問題導(dǎo)入階段完成。
2.主體的設(shè)計(jì)
對(duì)于CSMA/CD教學(xué)內(nèi)容的整體設(shè)計(jì)采用先介紹其基本思想,接著將“生活中兩個(gè)人打電話頻繁遇到同時(shí)說、同時(shí)停的尷尬狀態(tài)”類比“總線局域網(wǎng)中兩個(gè)站點(diǎn)同時(shí)等待總線空閑,同時(shí)發(fā)現(xiàn)空閑而導(dǎo)致的多次碰撞”,從而引出CSMA/CD所使用的截?cái)喽M(jìn)制指數(shù)退避算法,并介紹其基本規(guī)則。在規(guī)則介紹過程中,著重介紹三個(gè)重要的系統(tǒng)參數(shù)。第一個(gè),基本退避時(shí)間,通過分析兩個(gè)站點(diǎn)發(fā)生碰撞的分解過程(動(dòng)畫演示),總結(jié)得出,把碰撞窗口作為基本退避時(shí)間比較合適;第二個(gè),后退其間的限制,當(dāng)數(shù)據(jù)幀重傳10次后,站點(diǎn)就在整數(shù)集合{0,1,2,…,210-1}中隨機(jī)選擇一個(gè)數(shù),并等待相應(yīng)的退避時(shí)間;第三個(gè),最大重傳次數(shù),算法定義最大重傳次數(shù)為16。
算法介紹完畢,則給出CSMA/CD的工作流程,從而讓學(xué)生對(duì)學(xué)習(xí)內(nèi)容有了大致的認(rèn)識(shí),并引導(dǎo)學(xué)生得出四句話的工作機(jī)制總結(jié):發(fā)前先監(jiān)聽、空閑即發(fā)送,邊發(fā)邊檢測、碰撞則退避。CSMA/CD的基本知識(shí)講授完畢后,為了使學(xué)生獲得其對(duì)協(xié)調(diào)總線上各站點(diǎn)工作的效能,教師可以通過一道例題來分析。采用CSMA/CD的網(wǎng)絡(luò)可以有效降低總線上各站點(diǎn)發(fā)生碰撞的概率,但是隨著總線上站點(diǎn)的增多,發(fā)生碰撞的概率將大大增加。
由例題的結(jié)論進(jìn)而分析CSMA/CD的特點(diǎn),根據(jù)技術(shù)特點(diǎn)決定適用范圍的原理以及現(xiàn)今網(wǎng)絡(luò)環(huán)境、用戶需求的變化等等分析得到CSMA/CD目前的適用范圍。在適用范圍環(huán)節(jié),一定要對(duì)CSMA/CD在其他領(lǐng)域的應(yīng)用融入到課堂,以擴(kuò)大學(xué)生視野、激發(fā)學(xué)生的學(xué)習(xí)興趣。
3.例題的選擇
CSMA/CD這一授課內(nèi)容的重點(diǎn)是退避算法及其工作流程,而若能利用數(shù)學(xué)知識(shí)來解答實(shí)際的應(yīng)用問題則更能提高學(xué)生解決問題的能力,因此選擇計(jì)算平均重傳次數(shù)的例題。具體如下:
假定1km長的CSMA/CD網(wǎng)絡(luò)上只有兩個(gè)站點(diǎn),它們同時(shí)發(fā)送數(shù)據(jù),產(chǎn)生了碰撞。于是按二進(jìn)制指數(shù)類型退避算法進(jìn)行重傳。重傳次數(shù)記為i,i=1,2,3,…。試計(jì)算第1次重傳失敗的概率、第2次重傳失敗的概率、第3次重傳失敗的概率,以及一個(gè)站成功發(fā)送數(shù)據(jù)之前的平均重傳次數(shù)。
通過分析CSMA/CD所使用的算法、工作流程和學(xué)生所學(xué)的基本的概率知識(shí)可以求得答案。
4.言簡意賅的小結(jié)
課程的小結(jié)是教師帶領(lǐng)學(xué)生進(jìn)行總結(jié)、回顧并進(jìn)一步理清思路的重要環(huán)節(jié)。由于采用了麥特卡夫的案例進(jìn)行問題的導(dǎo)入,課程的主體設(shè)計(jì)也是沿著網(wǎng)絡(luò)設(shè)計(jì)者不斷分析、解決問題的思路,因此,小結(jié)部分可以與導(dǎo)入部分呼應(yīng)。參考內(nèi)容如下:
本次課是沿著麥特卡夫設(shè)計(jì)以太網(wǎng)的足跡進(jìn)行學(xué)習(xí),首先根據(jù)施樂研究中心建設(shè)簡單方便網(wǎng)絡(luò)的需求,選擇了總線型局域網(wǎng);接著通過分析總線局域網(wǎng)多個(gè)站點(diǎn)共享同一介質(zhì)所遇到的問題,介紹CSMA/CD的基本思想,使用的算法;最后根據(jù)CSMA/CD的工作機(jī)制分析其適用范圍。其中退避算法為重點(diǎn)也是難點(diǎn)問題,CSMA/CD的工作機(jī)制和適用范圍均是在分析退避算法后得出的,它們也是需要重點(diǎn)掌握的內(nèi)容。
5.思考題的設(shè)置
大學(xué)教師的授課目的并不是手把手地傳授所有的知識(shí)給學(xué)生,而是在傳授知識(shí)的同時(shí)教會(huì)其學(xué)習(xí)新知識(shí)的方法,培養(yǎng)學(xué)生自我學(xué)習(xí)的能力,要為學(xué)生留有更多思考的空間,因此思考題設(shè)置環(huán)節(jié)也不可缺少。好的思考題可以加深學(xué)生對(duì)所學(xué)知識(shí)的理解以及舊知識(shí)的回顧,還可以開闊學(xué)生的視野,對(duì)培養(yǎng)多角度的思維有很重要的作用。
鑒于以上考慮選擇思考題:以太網(wǎng)使用的CSMA/CD是以爭用方式接入到共享信道。這與傳統(tǒng)的時(shí)分復(fù)用TDM相比優(yōu)缺點(diǎn)如何?CSMA/CD通過使用退避算法可以保證對(duì)所有站點(diǎn)都公平嗎?
思考題的第一問在學(xué)生充分理解CSMA/CD工作機(jī)制并掌握TDM原理后可得到答案;而第二個(gè)問題,經(jīng)過分析學(xué)生可以得到CSMA/CD的“捕獲效應(yīng)”,分析得出其存在的不公平性。通過這道題的解答學(xué)生既可以加深所學(xué)內(nèi)容的理解,進(jìn)行深層次的分析,還對(duì)前面所學(xué)知識(shí)進(jìn)行了回顧與比較,從而達(dá)到思考題選擇的預(yù)期效果。
三、總結(jié)
協(xié)議是計(jì)算機(jī)網(wǎng)絡(luò)原理課程學(xué)習(xí)的重點(diǎn),也是難點(diǎn)。傳統(tǒng)以太網(wǎng)所采用的協(xié)議CSMA/CD是一個(gè)比較完整而精致的協(xié)議,很多學(xué)生經(jīng)過該協(xié)議的學(xué)習(xí)后對(duì)網(wǎng)絡(luò)協(xié)議有了更深刻的認(rèn)識(shí)。由于CSMA/CD一般作為局域網(wǎng)介質(zhì)訪問控制的第一個(gè)協(xié)議來介紹,因此本文只是針對(duì)CSMA/CD的基本內(nèi)容進(jìn)行介紹,并沒有和其他的局域網(wǎng)協(xié)議進(jìn)行比較分析。
參考文獻(xiàn):
[1]謝希仁.計(jì)算機(jī)網(wǎng)絡(luò)(第4版)[M].北京:電子工業(yè)出版社,2003.
[2]雷維禮,馬立香,彭美娥.局域網(wǎng)與城域網(wǎng)[M].北京:人民郵電出版社,2008.
[3]楊玫.C語言循環(huán)結(jié)構(gòu)四步教學(xué)法[J].福建電腦,2009,(7).
[4]Andrew S.Tanenbaum.計(jì)算機(jī)網(wǎng)絡(luò)(第3版)[M].熊貴喜,王小虎,譯.北京:清華大學(xué)出版社,2002.
[5]羅桂蘭,趙海,等.論CSMA/ CD 協(xié)議的數(shù)學(xué)原理[J].自動(dòng)化學(xué)報(bào),2007,33(5).
[6]李鳳保,李凌,潘澤友.三種控制網(wǎng)絡(luò)的性能比較[J].儀器儀表學(xué)報(bào),2004,25(4).
[7]胡建軍.以太網(wǎng)CSMA/CD工作原理研究[J].科學(xué)技術(shù)與工程,2008,8(24).
(責(zé)任編輯:宋秀麗)