<meter id="pryje"><nav id="pryje"><delect id="pryje"></delect></nav></meter>
          <label id="pryje"></label>

          新聞中心

          EEPW首頁(yè) > 手機(jī)與無(wú)線通信 > 設(shè)計(jì)應(yīng)用 > 多信道的信道接入?yún)f(xié)議 DCA-PC

          多信道的信道接入?yún)f(xié)議 DCA-PC

          作者: 時(shí)間:2011-04-23 來(lái)源:網(wǎng)絡(luò) 收藏

          對(duì)網(wǎng)絡(luò)的性能起著決定性的作用,是WSNs技術(shù)的研究重點(diǎn)之一。單在節(jié)點(diǎn)規(guī)模增大時(shí),網(wǎng)絡(luò)性能明顯變差。采用多信道機(jī)制,可以提高網(wǎng)絡(luò)吞吐量,減小傳播延時(shí),降低沖突的概率,更易于支持網(wǎng)絡(luò)的QoS(Quality of Service)保障。多信道主要應(yīng)解決兩個(gè)問(wèn)題:信道分配和控制,信道分配是要為不同的通信節(jié)點(diǎn)分配相應(yīng)的信道,接入控制是確定節(jié)點(diǎn)接入信道的時(shí)機(jī),解決好競(jìng)爭(zhēng)和沖突的避免問(wèn)題。本文介紹3種多信道的信道接入?yún)f(xié)議:多信道的CSMA(Carrier Sense Multiple Access),F(xiàn)AMAC(Frequency Assignment based multi-channel Multiple Access Control),,其中是本文的重點(diǎn)。

          本文引用地址:http://www.ex-cimer.com/article/156363.htm

            基于CSMA和FAMAC的多信道MAC層協(xié)議

            ● 多信道CSMA

            是一種基于載波監(jiān)聽(tīng)的信道接入?yún)f(xié)議。其設(shè)計(jì)目標(biāo)是通過(guò)使用多信道來(lái)減少隱終端問(wèn)題的影響,減少數(shù)據(jù)報(bào)文的沖突。它采用準(zhǔn)信道預(yù)留技術(shù),通過(guò)分布式的載波監(jiān)聽(tīng)來(lái)對(duì)多個(gè)信道進(jìn)行分配。

            準(zhǔn)信道預(yù)留技術(shù)的原理是:當(dāng)節(jié)點(diǎn)發(fā)送報(bào)文時(shí),它優(yōu)先選擇上次使用過(guò)的信道;如果該信道忙,就通過(guò)載波監(jiān)聽(tīng)隨機(jī)選擇一個(gè)空閑信道發(fā)送數(shù)據(jù)。

            多信道CSMA將可用信道分為N個(gè)不重疊的信道,一般而言N要小于無(wú)線傳感網(wǎng)網(wǎng)絡(luò)中節(jié)點(diǎn)的數(shù)目。每個(gè)子信道的帶寬是整個(gè)信道帶寬的1/N。

            ● FAMAC協(xié)議

            FAMAC是一種基于頻率分配的多信道接入?yún)f(xié)議,設(shè)置一個(gè)控制信道和多個(gè)數(shù)據(jù)信道。實(shí)現(xiàn)時(shí),所有節(jié)點(diǎn)使用一個(gè)固定的頻率作為控制信道,完成RTS(Request To Send)和CTS(Clear To Send)的交互。處于空閑狀態(tài)的節(jié)點(diǎn)駐留在控制信道上。另外,為每個(gè)節(jié)點(diǎn)分配一個(gè)不同的頻率,作為該節(jié)點(diǎn)的數(shù)據(jù)信道值。信道選擇時(shí),發(fā)送者向接受者發(fā)送的RTS中,攜帶自己的頻率信息。接收者收到RTS后,記錄發(fā)送者的頻率,回送CTS,將電臺(tái)切換到發(fā)送者的頻率上,接收數(shù)據(jù)。

            以上兩種協(xié)議都是針對(duì)多信道設(shè)計(jì)的,較好地解決了接入控制和信道選擇問(wèn)題;隱終端和暴露終端的影響也得到了很好地控制。由于WSNs的節(jié)點(diǎn)通常運(yùn)行在人無(wú)法接近的惡劣甚至危險(xiǎn)的遠(yuǎn)程環(huán)境中,能源無(wú)法代替,難以補(bǔ)充。所以能量受限的約束條件要求其MAC協(xié)議首先要關(guān)注的就是能量效率,要盡可能地節(jié)約能源,而上述兩種協(xié)議對(duì)此未作足夠的考慮。協(xié)議從節(jié)約能耗的觀點(diǎn)出發(fā),在MAC協(xié)議設(shè)計(jì)中探索了集成功率控制和多信道接入兩種機(jī)制的可能性。

            采用功率控制的多信道協(xié)議DCA-PC

            DCA-PC協(xié)議首先在WSNs的MAC層設(shè)計(jì)中將功率控制的概念與多信道接入結(jié)合起來(lái),節(jié)約能耗,減少鄰居節(jié)點(diǎn)共用信道時(shí)的相互干擾,提高信道復(fù)用度。

            ● 信道模型

            帶寬被劃分為一個(gè)控制信道和n個(gè)數(shù)據(jù)信道D1,D2,……,Dn??刂菩诺烙糜诳刂茍?bào)文的傳送,目標(biāo)是為節(jié)點(diǎn)合理分配數(shù)據(jù)信道,避免沖突;數(shù)據(jù)信道用于數(shù)據(jù)報(bào)文和ACK(Acknowledgement)報(bào)文的傳送。

            從避免沖突,提高信道預(yù)約成功率的角度出發(fā),控制報(bào)文發(fā)送采用最大功率;為了降低能耗,提高信道復(fù)用度,將數(shù)據(jù)報(bào)文的發(fā)送功率劃分為大小不同的若干等級(jí),通過(guò)RTS-CTS握手,可計(jì)算出雙方通信必需的最小功率,數(shù)據(jù)報(bào)文發(fā)送采用最接近最小發(fā)送功率的那個(gè)功率等級(jí)。

            為實(shí)現(xiàn)動(dòng)態(tài)信道分配和功率控制,每個(gè)節(jié)點(diǎn)都要保存3個(gè)數(shù)組。以節(jié)點(diǎn)A為例來(lái)說(shuō)明:

            Power[i]功率列表: 節(jié)點(diǎn)A向節(jié)點(diǎn)i發(fā)送數(shù)據(jù)報(bào)文時(shí)應(yīng)采用的功率等級(jí)。(——可利用功率控制的原理計(jì)算得出。)

            CUL(Channel Usage List)[i]信道使用狀況列表: A節(jié)點(diǎn)獲悉的已用信道列表。CUL[i]有4個(gè)域:

            ——CUL[i].host:記錄節(jié)點(diǎn)A的鄰居節(jié)點(diǎn)的主機(jī)。

            ——CUL[i].ch :記錄CUL[i].host占用的數(shù)據(jù)信道。

            ——CUL[i].rel-time :表示釋放CUL[i].ch數(shù)據(jù)信道的時(shí)間。

            ——CUL[i].int記錄CUL[i].host發(fā)送的信號(hào)是否會(huì)被節(jié)點(diǎn)A聽(tīng)到(CUL[i].int值為1或0)。

            FCL空閑信道列表: 節(jié)點(diǎn)發(fā)送數(shù)據(jù)時(shí)的可用信道列表,可根據(jù)CUL計(jì)算得出。


          上一頁(yè) 1 2 下一頁(yè)

          關(guān)鍵詞: 信道 DCA-PC 接入 協(xié)議

          評(píng)論


          相關(guān)推薦

          技術(shù)專區(qū)

          關(guān)閉
          看屁屁www成人影院,亚洲人妻成人图片,亚洲精品成人午夜在线,日韩在线 欧美成人 (function(){ var bp = document.createElement('script'); var curProtocol = window.location.protocol.split(':')[0]; if (curProtocol === 'https') { bp.src = 'https://zz.bdstatic.com/linksubmit/push.js'; } else { bp.src = 'http://push.zhanzhang.baidu.com/push.js'; } var s = document.getElementsByTagName("script")[0]; s.parentNode.insertBefore(bp, s); })();