廣播信道--CSMA/CD協議


有關數據鏈路層的學習,看了謝希仁的計算機網絡,感覺就是很雜,腦子里面沒有頭緒,所以總結一下。

數據鏈路層主要兩種協議,一種是點對點的PPP協議,另外一種是一對多的CSMA/CD協議。

點對點的PPP協議前面已經總結過了,今天抽時間再總結一下CSMA/CD協議:

需要注意的是:在局域網中,由於集線器的出現,星型網在局域網中得到了廣泛的應用。

在網絡剛開始的時候,主要使用的是總線型網絡結構,因此,CSMA/CD協議是在總線型網絡的基礎上發展起來的,但是隨着技術的發展和集線器的出現,在現在的大多數局域網中已經不再進行CSMA/CD協議了。

CSMA/CD協議:

這個協議所要解決的核心問題就是多點接入時,只能有一個主機占用總線,所以協議的實質就是“載波監聽”和“碰撞檢測”

我們先來解釋一下,什么叫“載波監聽”和“碰撞檢測”???

載波監聽:就是在多點接入時,由於網絡時總線型的,所以同一時刻只能有一台主機發送,其他主機只能接受,其他主機想要發送數據,只能等到該主機發送完畢后才能進行。所以我們需要監聽總線,是不是能夠發送數據,這稱之為:“載波監聽”。

碰撞檢測:就是在同時又兩台主機在總線發送數據時,我們需要知道總線上的數據發生了沖突,這種行為稱之為“碰撞檢測”;

有些同學就會問,既然我們不允許同時發,那么為什么還會發生碰撞呢???

這是因為當總線閑下來之后,可能會被幾台主機同時檢測到,那么此時就會發生碰撞,這時,我們要能夠檢測到總線數據發生了數據碰撞,發生數據碰撞的主機都要停止發送數據,那么我們怎么樣來確定數據發送沒有發生碰撞呢,那就是等待,假設數據從主機A發送到B的所用的時間為T,我們可以發現,當等待時間大於2T時還沒有檢測到數據碰撞,那么此次數據發送沒有發生碰撞。這段時間稱為爭用期。

協議中規定,爭用期為51.2us,這個時間是怎么來的呢???

協議規定,每一幀發送數據的最短字節為64,也就是512bit,假設是10Mbps,那么時間就是51.2us,當然,如果速率提高的話,時間也就相應變短。

停止之后,我們使用截斷二進制指數退避算法來確定重新傳的數據,也就是等待一段時間,這段時間是爭用期時間的整數倍,具體是多少倍是隨機的,還和已經重新傳數據的次數有關,比如已經傳了5次,那么這次的整數是0-5中隨機的一個整數,如果是6次,就是0-6的隨機整數。

如此,這就是CSMA/CD協議。

這就是我對CSMA/CD協議的理解,歡迎大家批評指正


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM