【学习笔记】数据链路层——随机访问介质访问控制(ALOHA、CSMA、CSMA/CD、CSMA/CA),截断二进制指数规避算法
生活随笔
收集整理的這篇文章主要介紹了
【学习笔记】数据链路层——随机访问介质访问控制(ALOHA、CSMA、CSMA/CD、CSMA/CA),截断二进制指数规避算法
小編覺得挺不錯的,現在分享給大家,幫大家做個參考.
文章目錄
- 小前言
- 一. ALOHA協議
- 純ALOHA協議
- 時隙ALOHA協議
- ALOHA對比
- CSMA協議
- 定義與分類
- ① 1-堅持CSMA
- ② 非堅持CSMA
- ③ p-堅持CSMA
- 總結
- CSMA/CD協議
- 傳播時延對載波監聽的影響
- 確定重傳時機:截斷二進制指數規避算法
- 最小幀長問題
- CSMA/CA協議
- 工作原理
- CSMA/CD 與 CSMA/CA的對比
PPT截自王道考研B站教程
小前言
為什么要有這ALOHA等幾個協議?
因為隨機介質訪問控制,有隨機發送、發送時占用全部帶寬的特點。
而這一特點,可能會導致不協調,從而造成沖突。
這個就是我們的協議要解決的問題。
一. ALOHA協議
ALOHA是夏威夷的打招呼方式
純ALOHA協議
思想:不監聽信道,不按時間槽發送,隨機重發。想發就發。
這個T0就是時間槽,代表成功發送一個幀所需的時間。
沖突檢測:發生沖突的情況,接收方會檢測出差錯,而后不發送確認。發送方在一段時間收不到確認就判斷發生沖突。(感覺類似超時計時器)
沖突解決:超時后等一隨機時間再重傳。
容易發現,這個協議還是挺粗糙任性的,因此經過改進后,我們有下面的改進版ALOHA協議
時隙ALOHA協議
簡單說一下改進的地方:相當于一個隨機出去蹦迪的人,現在都是整點出去蹦迪。
改進目的:控制“想發就發”的隨意性
ALOHA對比
純ALOHA吞吐量和效率更低是可預見的:因為過于隨意,很容易導致沖突。
CSMA協議
定義與分類
- 圖中灰底字可以不看,這就是CS的檢測原理。
- MA:形成一個總線型結構
① 1-堅持CSMA
- 堅持:在CSMA的監聽基礎上,加上對信道忙后的堅持繼續監聽。
- 缺點:如果多個站點都在堅持監聽,那么空閑后將會導致多個站點同時馬上傳輸,由此導致沖突
② 非堅持CSMA
- 非堅持:與上文的堅持相反。
- 由其特點,將不會出現①的必定沖突情況,但是這也導致了媒體(信道)空閑狀態的可能,降低了媒體利用率。
③ p-堅持CSMA
- p是一個概率。
- 注意:這里PPT可能錯了,信道忙的情況應該是和①一樣繼續等待。
- 結合了①、②的優點。
總結
- 實際上,這三種協議還有弊端:發生沖突后還是會堅持把數據幀發完,造成浪費。
可以參考一個例子:到奶茶店買奶茶
(當然,這里第三個人可能要改成:到我按概率買,沒到我就排隊等)
CSMA/CD協議
- 這里的內容很重要。
- 總線型 && 半雙工
- 加入CD:碰撞的時候,咱就停止發送幀,防止浪費!
- 還會沖突原因:物理原因,實際上的發送還是需要時間的,而非一發就到了。
(可見接下來的內容講解)
傳播時延對載波監聽的影響
- 看成A傳河水,B傳沙子。碰撞后變成混水,繼續發送(出錯數據)
- 為啥碰撞:傳播時延,導致A發送后,B檢測還是信道空閑,因此B也發送。
- 最遲2τ可以知道是否碰撞。
確定重傳時機:截斷二進制指數規避算法
定義:
例子1:
算法優點:
例子2:
- 見定義2,k = min[11,10] = 10.
- 見定義3,集合{0,1,…,2^10 - 1},即0 ~ 1023
最小幀長問題
問題來源:
CSMA/CD是建立在幀碰撞后及時停止發送,達到不浪費的效果。但有這種情況:由于幀太短了,還沒停止發送,就發完了。
為了避免這種情況,有這一要求:
CSMA/CA協議
- 與CD不同,CA旨在避免碰撞
工作原理
- RTS,CTS(可以沒有)
- 預約信道
- 概況來說,就是依靠RTS,CTS及預約信道,達到發送時其他站點不能發送的效果,來避免沖突。
CSMA/CD 與 CSMA/CA的對比
- 重傳:CD是16次,CA此處不延展學習
- CD不用于無線:做不到全面檢測碰撞
總結
以上是生活随笔為你收集整理的【学习笔记】数据链路层——随机访问介质访问控制(ALOHA、CSMA、CSMA/CD、CSMA/CA),截断二进制指数规避算法的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: c语言入门经典18个程序
- 下一篇: java代码中 作用_Java利用开发中