0
  • 聊天消息
  • 系統(tǒng)消息
  • 評(píng)論與回復(fù)
登錄后你可以
  • 下載海量資料
  • 學(xué)習(xí)在線課程
  • 觀看技術(shù)視頻
  • 寫(xiě)文章/發(fā)帖/加入社區(qū)
會(huì)員中心
創(chuàng)作中心

完善資料讓更多小伙伴認(rèn)識(shí)你,還能領(lǐng)取20積分哦,立即完善>

3天內(nèi)不再提示

一文詳解載波監(jiān)聽(tīng)技術(shù)(CSMA算法分析)

DIri_ALIFPGA ? 2018-02-02 16:09 ? 次閱讀

基本介紹

在CSMA中,由于通道的傳播延遲,當(dāng)兩個(gè)站點(diǎn)監(jiān)聽(tīng)到總線上沒(méi)有存在信號(hào)而發(fā)送幀時(shí),仍會(huì)發(fā)生沖突。由于CSMA算法沒(méi)有沖突檢測(cè)功能,即使沖突己發(fā)生,仍然要將已破壞的幀發(fā)送完,使總線的利用率降低。改進(jìn)方案是使站點(diǎn)在傳輸時(shí)間繼續(xù)監(jiān)聽(tīng)媒體,一旦檢測(cè)到?jīng)_突,就立即停止發(fā)送,并向總線上發(fā)一串短的阻塞報(bào)文(Jam),通知總線上各站沖突己發(fā)生,可以提高總線的利用率。

載波監(jiān)聽(tīng)多路訪問(wèn)CSMA的技術(shù),也稱做先聽(tīng)后說(shuō)LBT(Listen Before Talk)。要傳輸數(shù)據(jù)的站點(diǎn)首先對(duì)媒體上有無(wú)載波進(jìn)行監(jiān)聽(tīng),以確定是否有別的站點(diǎn)在傳輸數(shù)據(jù)。假如媒體空閑,該站點(diǎn)便可傳輸數(shù)據(jù);否則,該站點(diǎn)將避讓一段時(shí)間后再做嘗試。這就需要有一種退避算法來(lái)決定避讓的時(shí)間,常用的退避算法有非堅(jiān)持、1-堅(jiān)持、P-堅(jiān)持三種。

非堅(jiān)持算法

算法規(guī)則為:⑴假如媒本是空閑的,則可以立即發(fā)送。⑵假如媒體是忙的,則等待一個(gè)由概率分布決定的隨機(jī)重發(fā)延遲后,再重復(fù)前一步驟。采用隨機(jī)的重發(fā)延遲時(shí)間可以減少?zèng)_突發(fā)生的可能性。非堅(jiān)持算法的缺點(diǎn)是:即使有幾個(gè)著眼點(diǎn)為都有數(shù)據(jù)要發(fā)送,但由于大家都在延遲等待過(guò)程中,致使媒體仍可能處于空閑狀態(tài),使用率降低。

1-堅(jiān)持算法

算法規(guī)則:⑴假如媒體空閑的,則可以立即發(fā)送。⑵假如媒體是忙的,則繼續(xù)監(jiān)聽(tīng),直至檢測(cè)到媒體是空閑,立即發(fā)送。⑶假如有沖突(在一段時(shí)間內(nèi)未收到肯定的回復(fù)),則等待一隨機(jī)量的時(shí)間,重復(fù)步驟⑴~⑵。

這種算法的優(yōu)點(diǎn)是:只要媒體空閑,站點(diǎn)就立即可發(fā)送,避免了媒體利用率的損失;其缺點(diǎn)是:假若有兩個(gè)或兩個(gè)以上的站點(diǎn)有數(shù)據(jù)要發(fā)送,沖突就不可避免。

P-堅(jiān)持算法

算法規(guī)則:⑴監(jiān)聽(tīng)總線,假如媒體是空閑的,則以P的概率發(fā)送,而以(1-P)的概率延遲一個(gè)時(shí)間單位。一個(gè)時(shí)間單位通常等于最大傳播時(shí)延的2倍。⑵延遲一個(gè)時(shí)間單位后,再重復(fù)步驟⑴。⑶假如媒體是忙的,繼續(xù)監(jiān)聽(tīng)直至媒體空閑并重復(fù)步驟⑴。

P-堅(jiān)持算法是一種既能像非堅(jiān)持算法那樣減少?zèng)_突,又能像1-堅(jiān)持算法那樣減少媒體空閑時(shí)間的折中方案。問(wèn)題在于如何選擇P的有值,這要考慮到避免重負(fù)載下系統(tǒng)處于的不穩(wěn)定狀態(tài)。假如媒體是忙時(shí),有N個(gè)站有數(shù)據(jù)等待發(fā)送,一旦當(dāng)前的發(fā)送完成時(shí),將要試圖傳輸?shù)恼镜目偲谕麛?shù)為NP。假如選擇P過(guò)大,使NP>1,表明有多個(gè)站點(diǎn)試圖發(fā)送,沖突就不可避免。最壞的情況是,隨著沖突概率的不斷增大,而使吞吐量降低到零。所以必須選擇適當(dāng)P值使NP<1。當(dāng)然P值選得過(guò)小,則媒體利用率又會(huì)大大降低。

幀的平均傳輸時(shí)延與吞吐量的關(guān)系曲線

載波監(jiān)聽(tīng)多路訪問(wèn)/沖突檢測(cè)(CSMA/CD):在CSMA中,由于通道的傳播延遲,當(dāng)兩個(gè)站點(diǎn)監(jiān)聽(tīng)到總線上沒(méi)有存在信號(hào)而發(fā)送幀時(shí),仍會(huì)發(fā)生沖突。由于CSMA算法沒(méi)有沖突檢測(cè)功能,即使沖突己發(fā)生,仍然要將已破壞的幀發(fā)送完,使總線的利用率降低。一種CSMA的改進(jìn)方案是使站點(diǎn)在傳輸時(shí)間繼續(xù)監(jiān)聽(tīng)媒體,一旦

網(wǎng)絡(luò)通信原理圖

基本定義

檢測(cè)到?jīng)_突,就立即停止發(fā)送,并向總線上發(fā)一串短的阻塞報(bào)文(Jam),通知總線上各站沖突己發(fā)生,這樣通道容量不致因白白傳送己受損的幀而浪費(fèi),可以提高總線的利用率,這就稱作載波監(jiān)聽(tīng)多路訪問(wèn)/沖突檢測(cè)協(xié)議,簡(jiǎn)寫(xiě)為CSMA/CD,這種協(xié)議己廣泛應(yīng)用于以太網(wǎng)和IEEE802.3標(biāo)準(zhǔn)中。

此時(shí),浪費(fèi)掉的帶寬就減少為用檢測(cè)沖突所花費(fèi)的時(shí)間。那么,怎么來(lái)估算所需的沖突檢測(cè)時(shí)間呢?對(duì)于基帶總線而言,此時(shí)用于檢測(cè)一個(gè)沖突的時(shí)間等于任意兩個(gè)站之間最大的傳播延遲的兩倍,所以對(duì)于基帶CSMA/CD,要求分組長(zhǎng)度應(yīng)該至少兩倍于傳播延遲,否則在檢測(cè)出沖突之前傳輸已經(jīng)完成,但實(shí)際上分組被沖突所破壞。

發(fā)展應(yīng)用

CSMA/CD是用爭(zhēng)用的方法來(lái)決定對(duì)介質(zhì)的訪問(wèn)權(quán)。而這種爭(zhēng)用協(xié)議一般用于總線網(wǎng)。載波監(jiān)聽(tīng)多路訪問(wèn)(CSMA) 發(fā)展情況及存在問(wèn)題:

CSMA/CD總線網(wǎng)絡(luò)中的一個(gè)關(guān)鍵技術(shù)問(wèn)題是沖突控制或沖突分解問(wèn)題,即由于發(fā)送沖突而遭碰撞的報(bào)文要經(jīng)過(guò)一段隨機(jī)延時(shí)后重發(fā),典型的沖突控制算法,亦即后退算法有以下五種:二進(jìn)制指數(shù)后退算法BEB、多項(xiàng)式后退算法PB、線性增值后退算法LIB、固定平均后退算法FMB、順序后退算法OB。

沖突檢測(cè)協(xié)議

在CSMA中,由于信道傳播時(shí)延的存在,即使總線上兩個(gè)站點(diǎn)沒(méi)有監(jiān)聽(tīng)到載波信號(hào)而發(fā)送幀時(shí),仍可能會(huì)發(fā)生沖突。由于CSMA算法沒(méi)有沖突檢測(cè)功能,即使沖突已發(fā)生,仍然將已破壞的幀發(fā)送完,使總線的利用率降低。

一種CSMA的改進(jìn)方案是使發(fā)送站點(diǎn)傳輸過(guò)程中仍繼續(xù)監(jiān)聽(tīng)媒體,以檢測(cè)是否存在沖突。假如發(fā)生沖突,信道上可以檢測(cè)到超過(guò)發(fā)送站點(diǎn)本身發(fā)送的載波信號(hào)的幅度,由此判定出沖突的存在。一于檢測(cè)到?jīng)_突,就立即停止發(fā)送,并向總線上發(fā)一串阻塞信號(hào),用以通知總線上其它各有關(guān)站點(diǎn)。這樣,通道容量就不致因白白傳送已受損的幀而浪費(fèi),可以提高總線的利用率。這種方案稱做載波監(jiān)聽(tīng)多路訪問(wèn)/沖突檢測(cè)協(xié)議,簡(jiǎn)寫(xiě)為CSMA/CD,這種協(xié)議已廣泛應(yīng)用于局域網(wǎng)中。

CSMA/CD的代價(jià)是用于檢測(cè)沖突所花費(fèi)的時(shí)間。對(duì)于基帶總線而言,最壞情況下用于檢測(cè)一個(gè)沖突的時(shí)間等于任意兩個(gè)站之間傳播時(shí)延的兩倍。從一個(gè)站點(diǎn)開(kāi)始發(fā)送數(shù)據(jù)到另一個(gè)站點(diǎn)開(kāi)始接收數(shù)據(jù),也即載波信號(hào)從一端傳播到另一端所需的時(shí)間,稱為信號(hào)傳播時(shí)延。信號(hào)傳播時(shí)延(μs)=兩站點(diǎn)的距離(m)/信號(hào)傳播速度(200m/μs)。假定A、B兩個(gè)站點(diǎn)位于總線兩端,兩站點(diǎn)之間的最大傳播時(shí)延為tp。當(dāng)A站點(diǎn)發(fā)送數(shù)據(jù)后,經(jīng)過(guò)接近于最大傳播時(shí)延tp時(shí),B站點(diǎn)正好也發(fā)送數(shù)據(jù),此時(shí)沖突便發(fā)生。發(fā)生沖突后,B 站點(diǎn)立即可檢測(cè)到該沖突,而A站點(diǎn)需再經(jīng)過(guò)一份最大傳播時(shí)延tp后,才能檢測(cè)出沖突。也即最壞情況下,對(duì)于基帶CSMA/CD來(lái)說(shuō),檢測(cè)出一個(gè)沖突的時(shí)間等于任意兩個(gè)站之間最大傳播時(shí)延的兩倍(2tp)。

數(shù)據(jù)幀從一個(gè)站點(diǎn)開(kāi)始發(fā)送,到該數(shù)據(jù)幀發(fā)送完畢所需的時(shí)間和為數(shù)據(jù)傳輸時(shí)延;同理,數(shù)據(jù)傳輸時(shí)延也表示一個(gè)接收站點(diǎn)開(kāi)始接收數(shù)據(jù)幀,到該數(shù)據(jù)幀接收完畢所需的時(shí)間。數(shù)據(jù)傳輸時(shí)延(s)=數(shù)據(jù)幀長(zhǎng)度(bit)/數(shù)據(jù)傳輸速率(bps)。若不考慮中繼器引入的延遲,數(shù)據(jù)幀從一個(gè)站點(diǎn)開(kāi)始發(fā)送,到該數(shù)據(jù)幀被另一個(gè)站點(diǎn)全部接收所需的總時(shí)間,等于數(shù)據(jù)傳輸時(shí)延與信號(hào)傳播時(shí)延之和。

由上述分析可知,為了確保發(fā)送數(shù)據(jù)站點(diǎn)在傳輸時(shí)能檢測(cè)到可能存在的沖突,數(shù)據(jù)幀的傳輸時(shí)延至少要兩倍于傳播時(shí)延。換句話說(shuō),要求分組的長(zhǎng)度不短于某個(gè)值,否則在檢測(cè)出沖突之前傳輸已經(jīng)結(jié)束,但實(shí)際上分組已被沖突所破壞。

由于單向傳輸?shù)脑?,?duì)于寬帶總線而言,沖突檢測(cè)時(shí)間等于任意兩個(gè)站之間最大傳播時(shí)延的4倍。所以,

對(duì)于寬帶CSMA/CD來(lái)說(shuō),要求數(shù)據(jù)幀的傳輸時(shí)延至少4倍于傳播時(shí)延。

在CSMA/CD算法中,一旦檢測(cè)到?jīng)_突并發(fā)完阻塞信號(hào)后,為了降低再次沖突的概率,需要等待一個(gè)隨機(jī)時(shí)間,然后再使用CSMA方法試圖傳輸。為了保證這種退避操作維持穩(wěn)定采用了一種稱為二進(jìn)制指數(shù)退避和算法,其規(guī)則如下:⑴對(duì)每個(gè)數(shù)據(jù)幀,當(dāng)?shù)谝淮伟l(fā)生沖突時(shí),設(shè)置一個(gè)參量L=2;⑵退避間隔取1到L個(gè)時(shí)間片中的一個(gè)隨機(jī)數(shù),1個(gè)小時(shí)片等于兩站之間的最大傳播時(shí)延的兩倍;⑶當(dāng)數(shù)據(jù)幀再次發(fā)生沖突,由將參量L加倍;⑷設(shè)置一個(gè)最大重傳次數(shù),超過(guò)該次數(shù),則不再重傳,并報(bào)告出錯(cuò)。

二進(jìn)制指數(shù)退避算法是按后進(jìn)先出LIFO(List In First Out)的次序控制的,即未發(fā)生沖突或很少發(fā)生沖突的數(shù)據(jù)幀,具有優(yōu)先發(fā)送的概率;而發(fā)生過(guò)多次沖突的數(shù)據(jù)幀,發(fā)送成功的概率就更少。

IEEE 802.3就是采用二進(jìn)制指數(shù)退避和1-堅(jiān)持算法的CSMA/CD媒體訪問(wèn)控制方法。這種方法在低負(fù)荷時(shí),如媒體空閑時(shí),要發(fā)送數(shù)據(jù)幀的站點(diǎn)能立即發(fā)送;在重負(fù)荷時(shí),仍能保證系統(tǒng)的穩(wěn)定性。由于在媒體上傳播的信號(hào)會(huì)衰減,為確保能檢測(cè)出沖突信號(hào),CSMA/CD總線網(wǎng)限制一段無(wú)分支電纜的最大長(zhǎng)度為500米。

聲明:本文內(nèi)容及配圖由入駐作者撰寫(xiě)或者入駐合作網(wǎng)站授權(quán)轉(zhuǎn)載。文章觀點(diǎn)僅代表作者本人,不代表電子發(fā)燒友網(wǎng)立場(chǎng)。文章及其配圖僅供工程師學(xué)習(xí)之用,如有內(nèi)容侵權(quán)或者其他違規(guī)問(wèn)題,請(qǐng)聯(lián)系本站處理。 舉報(bào)投訴
  • CSMA
    +關(guān)注

    關(guān)注

    0

    文章

    28

    瀏覽量

    12999

原文標(biāo)題:載波監(jiān)聽(tīng)

文章出處:【微信號(hào):ALIFPGA,微信公眾號(hào):FPGA極客空間】歡迎添加關(guān)注!文章轉(zhuǎn)載請(qǐng)注明出處。

收藏 人收藏

    評(píng)論

    相關(guān)推薦

    基于空子載波的信噪比估計(jì)算法

    通信系統(tǒng)會(huì)插入些空子載波進(jìn)行頻譜成型.這些載波不攜帶任何有用信息,能量為0.在經(jīng)過(guò)信道后,空子載波的能量均值即為噪聲方差.本文正是基于上述分析
    發(fā)表于 04-23 11:51

    基于小波包變換多載波調(diào)制通信系統(tǒng)的均衡算法

    :JSJY.0.2010-04-007【正文快照】:0引言基于小波包變換的多載波調(diào)制是采用小波包函數(shù)作為子載波種新型多載波調(diào)制技術(shù),以小
    發(fā)表于 05-06 09:03

    CSMA算法

    親們,有非堅(jiān)持CSMA算法公式的推導(dǎo)過(guò)程嗎?
    發(fā)表于 06-01 11:11

    關(guān)于RFID的載波監(jiān)聽(tīng)問(wèn)題

    使用nRF24LE1制作RFID有源射頻,但是載波監(jiān)聽(tīng)這塊不是很了解,有沒(méi)有高人幫幫我,謝謝了
    發(fā)表于 08-22 08:58

    網(wǎng)絡(luò)監(jiān)聽(tīng)技術(shù)研究與分析

    系統(tǒng)地闡述了網(wǎng)絡(luò)監(jiān)聽(tīng)和包過(guò)濾技術(shù)的實(shí)施方法和步驟,,并對(duì)基于Libpcap/Winpcap 和NDIS 的網(wǎng)絡(luò)監(jiān)聽(tīng)技術(shù)進(jìn)行了深入的剖析,,對(duì)其
    發(fā)表于 08-13 09:45 ?9次下載

    WLAN中OFDM系統(tǒng)載波頻率同步算法研究

    針對(duì)OFDM技術(shù)中的載波頻率同步問(wèn)題,分析載波頻率偏差對(duì)OFDM系統(tǒng)造成的影響,總結(jié)了基于IEEE802.11標(biāo)準(zhǔn)的三種常見(jiàn)的頻偏估計(jì)算法
    發(fā)表于 10-08 16:32 ?18次下載

    什么是CSMA/CD ?

    什么是CSMA/CD ?CSMA/CD是“載波偵聽(tīng)多路訪問(wèn)/沖突檢測(cè)”(Carrier Sense Multiple Access with Collision Detect)的縮寫(xiě)。利用CS
    發(fā)表于 10-27 13:07 ?1.2w次閱讀

    什么是CSMA/CD (CSMA with Collisio

    什么是CSMA/CD (CSMA with Collision Detection)  英文縮寫(xiě): CSMA/CD (CSMA with Collision Detect
    發(fā)表于 02-22 17:27 ?1140次閱讀

    什么是CSMA (Carrier Sense Multipl

    什么是CSMA (Carrier Sense Multiple Access)  英文縮寫(xiě): CSMA (Carrier Sense Multiple Access) 中文譯名: 載波偵聽(tīng)多路訪問(wèn) 分  
    發(fā)表于 02-22 17:28 ?1447次閱讀

    什么是載波偵聽(tīng)多路訪問(wèn)/沖突避免(CSMA/CA)協(xié)議

    什么是載波偵聽(tīng)多路訪問(wèn)/沖突避免(CSMA/CA)協(xié)議 發(fā)展背景(出因): 在總線和環(huán)形拓?fù)渲?,網(wǎng)絡(luò)上的設(shè)備必須共享傳輸線路,為解決同
    發(fā)表于 04-09 11:31 ?1.4w次閱讀

    CSMA/CA工作流程 CSMA/CA與CSMA/CD的區(qū)別

    數(shù)據(jù)傳輸沖突的算法,其特點(diǎn)是發(fā)送包的同時(shí)不能檢測(cè)到信道上有無(wú)沖突,只能盡量“避免”。 CSMA/CA工作流程: CSMA/CA協(xié)議的工作流程分為兩個(gè) 第個(gè)是。送出數(shù)據(jù)前,
    的頭像 發(fā)表于 08-24 10:49 ?1.4w次閱讀

    詳解CSMA/CA協(xié)議

    。如果個(gè)站點(diǎn)沒(méi)有偵聽(tīng)到持續(xù)時(shí)間的信息,例如,當(dāng)監(jiān)聽(tīng)載波時(shí),這幀的持續(xù)時(shí)間字段已經(jīng)傳送過(guò),則站點(diǎn)只能依靠物理層檢測(cè)。
    的頭像 發(fā)表于 09-14 16:03 ?7371次閱讀

    詳解精密封裝技術(shù)

    詳解精密封裝技術(shù)
    的頭像 發(fā)表于 12-30 15:41 ?1667次閱讀

    詳解pcb不良分析

    詳解pcb不良分析
    的頭像 發(fā)表于 11-29 17:12 ?1173次閱讀

    詳解pcb的msl等級(jí)

    詳解pcb的msl等級(jí)
    的頭像 發(fā)表于 12-13 16:52 ?9706次閱讀