CSMA/CD
CSMA/CD和CSMA/CA詳解
CSMA/CA
無線局域網標準802.11的MAC和802.3協議的MAC非常相似,都是在一個共享媒體之上支持多個用戶共享資源,由發送者在發送數據前先進行網絡的可用性。在802.3協議中,是由一種稱爲CSMA/CD(Carrier Sense Multiple Access with Collision Detection)的協議來完成調節,這個協議解決了在Ethernet上的各個工作站如何在線纜上進行傳輸的問題,利用它檢測和避免當兩個或兩個以上的網絡設備需要進行數據傳送時網絡上的衝突。在802.11無線局域網協議中,衝突的檢測存在一定的問題,這個問題稱爲"Near/Far"現象,這是由於要檢測衝突,設備必須能夠一邊接受數據信號一邊傳送數據信號,而這在無線系統中是無法辦到的。
鑑於這個差異,在802.11中對CSMA/CD進行了一些調整,採用了新的協議CSMA/CA(Carrier Sense Multiple Access with Collision Avoidance)或者DCF(Distributed Coordination Function)。 CSMA/CA利用ACK信號來避免衝突的發生,也就是說,只有當客戶端收到網絡上返回的ACK信號後才確認送出的數據已經正確到達目的。
CSMA/CA協議的工作流程是:一個工作站希望在無線網絡中傳送數據,如果沒有探測到網絡中正在傳送數據,則附加等待一段時間,再隨機選擇一個時間片繼續探測,如果無線網路中仍舊沒有活動的話,就將數據發送出去。接受端的工作站如果受到發送端送出的完整的數據則回發一個ACK數據報,如果這個ACK數據報被接收端收到,則這個數據發送過程完成,如果發送端沒有收到ACK數據報,則或者發送的數據沒有被完整地收到,或者ACK信號的發送失敗,不管是那種現象發生,數據報都在發送端等待一段時間後被重傳。
CSMA/CA通過這種方式來提供無線的共享訪問,這種顯式的ACK機制在處理無線問題時非常有效。然而不管是對於802.11還是802.3來說,這種方式都增加了額外的負擔,所以802.11網絡和類似的Ethernet網比較總是在性能上稍遜一籌。
CSMA/CD和CSMA/CA的主要差別對比如下:
CSMA/CD:即載波監聽多路訪問/衝突檢測方法
CSMA/CA:帶有衝突避免的載波偵聽多路訪問,發送包的同時不能檢測到信道上有無衝突,只能儘量‘避免’;
1.兩者的傳輸介質不同,CSMA/CD用於總線以太,而CSMA/CA則用於無線局域網802.11b;
2.檢測方式不同,CSMA/CD通過電纜中電壓的變化來檢測,當數據發生碰撞時,電纜中的電壓就會隨着發生變化;而CSMA/CA採用能量檢測(ED)、載波檢測(CS)和能量載波混合檢測三種檢測信道空閒的方式;
3.WLAN中,對某個節點來說,其剛剛發出的信號強度要遠高於來自其他節點的信號強度,也就是說它自己的信號會把其他的信號給覆蓋掉;
4.本節點處有衝突並不意味着在接收節點處就有衝突;
綜上,在WLAN中實現CSMA/CD是比較困難的。
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.