多信道的信道接入?yún)f(xié)議 DCA-PC
信道接入協(xié)議對網(wǎng)絡(luò)的性能起著決定性的作用,是WSNs技術(shù)的研究重點(diǎn)之一。單信道的信道接入協(xié)議在節(jié)點(diǎn)規(guī)模增大時,網(wǎng)絡(luò)性能明顯變差。采用多信道機(jī)制,可以提高網(wǎng)絡(luò)吞吐量,減小傳播延時,降低沖突的概率,更易于支持網(wǎng)絡(luò)的QoS(Quality of Service)保障。多信道協(xié)議主要應(yīng)解決兩個問題:信道分配和接入控制,信道分配是要為不同的通信節(jié)點(diǎn)分配相應(yīng)的信道,接入控制是確定節(jié)點(diǎn)接入信道的時機(jī),解決好競爭和沖突的避免問題。本文介紹3種多信道的信道接入?yún)f(xié)議:多信道的CSMA(Carrier Sense Multiple Access),F(xiàn)AMAC(Frequency Assignment based multi-channel Multiple Access Control),DCA-PC,其中DCA-PC是本文的重點(diǎn)。
本文引用地址:http://m.butianyuan.cn/article/156363.htm基于CSMA和FAMAC的多信道MAC層協(xié)議
● 多信道CSMA
是一種基于載波監(jiān)聽的信道接入?yún)f(xié)議。其設(shè)計目標(biāo)是通過使用多信道來減少隱終端問題的影響,減少數(shù)據(jù)報文的沖突。它采用準(zhǔn)信道預(yù)留技術(shù),通過分布式的載波監(jiān)聽來對多個信道進(jìn)行分配。
準(zhǔn)信道預(yù)留技術(shù)的原理是:當(dāng)節(jié)點(diǎn)發(fā)送報文時,它優(yōu)先選擇上次使用過的信道;如果該信道忙,就通過載波監(jiān)聽隨機(jī)選擇一個空閑信道發(fā)送數(shù)據(jù)。
多信道CSMA將可用信道分為N個不重疊的信道,一般而言N要小于無線傳感網(wǎng)網(wǎng)絡(luò)中節(jié)點(diǎn)的數(shù)目。每個子信道的帶寬是整個信道帶寬的1/N。
● FAMAC協(xié)議
FAMAC是一種基于頻率分配的多信道接入?yún)f(xié)議,設(shè)置一個控制信道和多個數(shù)據(jù)信道。實(shí)現(xiàn)時,所有節(jié)點(diǎn)使用一個固定的頻率作為控制信道,完成RTS(Request To Send)和CTS(Clear To Send)的交互。處于空閑狀態(tài)的節(jié)點(diǎn)駐留在控制信道上。另外,為每個節(jié)點(diǎn)分配一個不同的頻率,作為該節(jié)點(diǎn)的數(shù)據(jù)信道值。信道選擇時,發(fā)送者向接受者發(fā)送的RTS中,攜帶自己的頻率信息。接收者收到RTS后,記錄發(fā)送者的頻率,回送CTS,將電臺切換到發(fā)送者的頻率上,接收數(shù)據(jù)。
以上兩種協(xié)議都是針對多信道設(shè)計的,較好地解決了接入控制和信道選擇問題;隱終端和暴露終端的影響也得到了很好地控制。由于WSNs的節(jié)點(diǎn)通常運(yùn)行在人無法接近的惡劣甚至危險的遠(yuǎn)程環(huán)境中,能源無法代替,難以補(bǔ)充。所以能量受限的約束條件要求其MAC協(xié)議首先要關(guān)注的就是能量效率,要盡可能地節(jié)約能源,而上述兩種協(xié)議對此未作足夠的考慮。DCA-PC協(xié)議從節(jié)約能耗的觀點(diǎn)出發(fā),在MAC協(xié)議設(shè)計中探索了集成功率控制和多信道接入兩種機(jī)制的可能性。
采用功率控制的多信道協(xié)議DCA-PC
DCA-PC協(xié)議首先在WSNs的MAC層設(shè)計中將功率控制的概念與多信道接入結(jié)合起來,節(jié)約能耗,減少鄰居節(jié)點(diǎn)共用信道時的相互干擾,提高信道復(fù)用度。
● 信道模型
帶寬被劃分為一個控制信道和n個數(shù)據(jù)信道D1,D2,……,Dn??刂菩诺烙糜诳刂茍笪牡膫魉?,目標(biāo)是為節(jié)點(diǎn)合理分配數(shù)據(jù)信道,避免沖突;數(shù)據(jù)信道用于數(shù)據(jù)報文和ACK(Acknowledgement)報文的傳送。
從避免沖突,提高信道預(yù)約成功率的角度出發(fā),控制報文發(fā)送采用最大功率;為了降低能耗,提高信道復(fù)用度,將數(shù)據(jù)報文的發(fā)送功率劃分為大小不同的若干等級,通過RTS-CTS握手,可計算出雙方通信必需的最小功率,數(shù)據(jù)報文發(fā)送采用最接近最小發(fā)送功率的那個功率等級。
為實(shí)現(xiàn)動態(tài)信道分配和功率控制,每個節(jié)點(diǎn)都要保存3個數(shù)組。以節(jié)點(diǎn)A為例來說明:
Power[i]功率列表: 節(jié)點(diǎn)A向節(jié)點(diǎn)i發(fā)送數(shù)據(jù)報文時應(yīng)采用的功率等級。(——可利用功率控制的原理計算得出。)
CUL(Channel Usage List)[i]信道使用狀況列表: A節(jié)點(diǎn)獲悉的已用信道列表。CUL[i]有4個域:
——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ù)信道的時間。
——CUL[i].int記錄CUL[i].host發(fā)送的信號是否會被節(jié)點(diǎn)A聽到(CUL[i].int值為1或0)。
FCL空閑信道列表: 節(jié)點(diǎn)發(fā)送數(shù)據(jù)時的可用信道列表,可根據(jù)CUL計算得出。
評論