概念
它起源於美國夏威夷大學開發的ALOHA網所採用的爭用型協定,並進行了改進,使之具有比ALOHA協定更高的介質利用率。CSMA/CD是一種分散式介質訪問控制協定,網中的各個站(節點)都能獨立地決定數據幀的傳送與接收。每個站在傳送數據幀之前,首先要進行載波監聽,只有介質空閒時,才允許傳送幀。這時,如果兩個以上的站同時監聽到介質空閒並傳送幀,則會產生衝突現象,這使傳送的幀都成為無效幀,傳送隨即宣告失敗。每個站必須有能力隨時檢測衝突是否發生,一旦發生衝突,則應停止傳送,以免介質頻寬因傳送無效幀而被白白浪費,然後隨機延時一段時間後,再重新爭用介質,重傳送幀。CSMA/CD協定簡單、可靠,其網路系統(如Ethernet)被廣泛使用。CSMA/CD控制方式的優點是:原理比較簡單,技術上易實現,網路中各工作站處於平等地位 ,不需集中控制,不提供優先權控制。但在網路負載增大時,傳送時間增長,傳送效率急劇下降。CSMA/CD套用在OSI7層里的數據鏈路層,它的工作原理是:傳送數據前先監聽信道是否空閒,若空閒則立即傳送數據.在傳送數據時,邊傳送邊繼續監聽.若監聽到衝突,則立即停止傳送數據.等待一段隨機時間,再重新嘗試.
實現過程
採用分散式控制方法,附接匯流排的各個結點通過競爭的方式,獲得匯流排的使用權。只
有獲得使用權的結點才可以向匯流排傳送信息幀,該信息幀將被附接匯流排的所有結點感知。包括以下三個要點:載波偵聽——傳送結點在傳送信息幀之前,必須偵聽媒體是否處於空閒狀態;多路訪問——具有兩種含義,既表示多個結點可以同時訪問媒體,也表示一個結點傳送的信息幀可以被多個結點所接收;衝突檢測——傳送結點在發出信息幀的同時,還必須監聽媒體,判斷是否發生衝突(同一時刻,有無其他結點也在傳送信息幀)。IEEE 802.3或者OSI 8802/3定義了CSMA/CD的標準。
實現的分類
CSMA是載波檢測(偵聽)多路訪問.它檢測其他站的活動情況,據此調整自己的行為.分為以下幾類:
1-持續CSMA(1-persistent CSMA):當信道忙或發生衝突時,要傳送幀的站,不斷持續偵聽,一有空閒,便可傳送. 其中,長的傳播延遲和同時傳送幀,會導致多次衝突,降低系統性能.
非持續CSMA:它並不持續偵聽信道,而是在衝突時,等待隨機的一段時間.它有更好的信道利用率,但導致更長延遲.
p-持續CSMA:它套用於分槽信道,按照P機率傳送幀.即信道空閒時,這個時槽,欲傳送的站P機率傳送,Q=1-P機率不傳送.若不傳送,下一時槽仍空閒,同理進行傳送.若信道忙,則等待下一時槽,若衝突,則等待隨機的一段時間,重新開始.
以上都是對ALOHA的改進.當信道忙時,所有站都不傳輸幀.
帶衝突檢測的CSMA(CSMA/CD:CSMA with Collision Detection):它一旦檢測到衝突,立即終止當前傳輸中的幀,節省時間和頻寬,並等待一段時間,重新嘗試.它廣泛用於LAN中MAC子層,是當前乙太網LAN的基礎.
概念時間模型
其概念時間模型分為三個時期:傳輸周期,競爭周期和空閒周期.
值得一提的是,監聽的機制:傳輸數據時,他的硬體進行監聽電纜,如果讀回來的信息與傳送的不一致,便知傳送衝突了.這裡,當然需要一種特殊的信號編碼方案,能夠檢測出兩個OV信號衝突.(或者在此衝突下,故意不檢測,因信號沒有損壞)
有線網中,衝突檢測的最核心內容是 幀碎片(即檢測到網路中有小於這個大小的幀就認為是幀碎片,因為傳輸2端都在傳輸造成衝突,2端數據在網路中都只有1部分,即不完整,產生碎片)。
在無線網中由於有隱藏結點(即每個結點不知道也不可能知道整個網路的實時情況),因此無法“檢測”所以CSMA/CA(CSMA with Collision Avoidance)載波偵聽多路訪問衝突避免 就應運而生了,它是利用RTS/CTS(即類似TCP的握手協定)的應答策略來保證在傳輸中結點不會再接受請求,從而解決了無線網中的衝突。
總之:先聽後發,邊聽邊發,衝突不發,稍後再發