计算机网络 --- 数据链路层CSMA/CA协议
CSMA/CA全稱
載波監(jiān)聽多點接入/碰撞避免CSMA/CA(carrier sense multiple access with collision avoidence)
CSMA/CA協(xié)議與CSMA/CD協(xié)議的主要區(qū)別在應(yīng)用場景不同。
為什么要有CSMA/CA協(xié)議
CSMA/CA協(xié)議主要應(yīng)用于無線局域網(wǎng),CSMA/CD協(xié)議主要應(yīng)用于總線型。CSMA/CD協(xié)議無法應(yīng)用與無線局域網(wǎng)的原因時其無法做到360度全面檢測沖突。其次是隱蔽站,當(dāng)A和C都檢測不到信號,認(rèn)為信道空閑時,同時向B發(fā)送數(shù)據(jù),就會導(dǎo)致沖突。此時C相對于A來說就是一個隱蔽站。?
CSMA/CA協(xié)議工作原理
發(fā)送數(shù)據(jù)前,先檢測信道是否空閑。空閑則發(fā)出RTS(request to send),RTS包括發(fā)送端的地址,接收端的地址,下一份數(shù)據(jù)將持續(xù)發(fā)送的時間等信息:信道忙則等待。
接收端收到RTS,將響應(yīng)CTS(clear to send)。
發(fā)送端收到CTS后,開始發(fā)送數(shù)據(jù)幀(同時預(yù)約信道:發(fā)送方告知其他站點自己要傳多久數(shù)據(jù))。
接收端收到數(shù)據(jù)幀后,將用CRC來檢驗數(shù)據(jù)是否正確,正確則相應(yīng)ACK幀。
發(fā)送方收到ACK就可以進(jìn)行下一個數(shù)據(jù)幀的發(fā)送,若沒有則一直重傳至規(guī)定重發(fā)次數(shù)為止(采用二進(jìn)制指數(shù)退避算法來確定隨機(jī)的推遲時間)。
CSMA/CA,CSMA/CD的異同
相同點:
CSMA/CA,CSMA/CD機(jī)制都從屬于CSMA的思路,其核心是先聽再說。換言之,兩個在接入信道之前都需要進(jìn)行監(jiān)聽。當(dāng)發(fā)現(xiàn)信道空閑后,才能進(jìn)行接入。
不同點:
- 傳輸介質(zhì)不同:CSMA/CD用于總線式以太網(wǎng)(有線),而CSMA/CA用于無線局域網(wǎng)(無線)。
- 載波檢測方式不同:因傳輸介質(zhì)不同,CSMA/CA,CSMA/CD檢測方式也不同。CSMA/CD通過電纜中電壓的變化來檢測,當(dāng)數(shù)據(jù)發(fā)生碰撞時,電纜中的電壓就會隨著發(fā)生變化;而CSMA/CA采用能量檢測(ED),載波檢測(CS)和能量載波混合檢測三種檢測信道空閑的方式。
- CSMA/CA避免沖突,CSMA/CD檢測沖突,二者出現(xiàn)沖突后都會進(jìn)行有上限的重傳。
總結(jié)
以上是生活随笔為你收集整理的计算机网络 --- 数据链路层CSMA/CA协议的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: python二进制文件 删除尾部数据_在
- 下一篇: resnet50能用cpu跑吗_2020