fbpx

CSMA/CD 與 CSMA/CA 之間的差異

CSMA/CD 與 CSMA/CA 應該是我們目前接觸最多且使用最普及的網路通訊協定,CSMA/CD 應用在有線網路,CSMA/CA 則應用在無線網路。

一般來說乙太網路 (Ethernet) 的標準 IEEE 802.3 使用的就是 CSMA/CD (Carrier Sense Multiple Access with Collision Detection) ,然而無線乙太網路 (Wireless Ethernet) 的標準 IEEE 802.11 使用的為 CSMA/CA (Carrier Sense Multiple Access with Collision Avoidance)。從字面上來看差異在 CD 與 CA 不同,一個是碰撞偵測處理 Collision Detection,另一個則是避免碰撞 Collision Avoidance,由於不同訊號傳遞媒體的物理限制,進而使用了不同的方式來實作網路封包傳遞的功能。CSMA/CA 並不是只能用在無線網路,在低成本的 LocalTalk 也是使用 CSMA/CA 進行封包傳送。以下大致說明一下兩種標準的運作要點。

CSMA/CD(載波偵測多重存取/碰撞偵測)運作過程如下:

  • 訊號採用廣播的方式傳送(所以才會發生碰撞)
  • 當節點要發送訊號時,會先偵測通道是否有其他節點正在使用(carrier sense)
  • 當通道沒有被其他節點使用時,就傳送封包
  • 封包傳送之後立即檢查是否發生碰撞(carrier detection),若是發生碰撞則對通道發出高頻訊號高知其他節點已經發生碰撞
  • 碰撞後隨機等待一段時間重新發送封包
  • 嘗試 15 次都失敗的話則告知上層 Timeout

CSMA/CA(載波偵測多重存取/碰撞避免)運作過程如下:

  • 訊號採用廣播的方式傳送(非常容易受到無線電波干擾)
  • 當節點要發送訊號時偵測頻道是否空閒
  • 若是空閒則等待 IFS, Interval Frame Space 時間後再次偵測頻道是否空閒
  • 若是空閒則發送封包,反之重新進入等待頻道空閒(隨機等待時間)
  • 發送 RTS 之後必須在限定時間內收到來至目的端的 CTS 訊號
  • 當失敗 32 次之後通知上層 Timeout

此外 CSMA/CA 又可分為以下兩種類型

  • 分散式協調功能 (Distributed Coordination Function, DCF):競爭式服務 (Contention Service)
  • 集中式協調功能 (Point Coordination Function, PCF):無競爭式服務 (Contention-Free Service)

發佈留言