多信道的信道接入?yún)f(xié)議 DCA-PC
(1) 主機A要向B傳送數(shù)據(jù)報文時,首先檢查下列兩個條件
條件一:B節(jié)點的主機應(yīng)滿足條件:CUL[i].rel-time≤Tcurr+(TDIFS+TRTS+TSIFS+TCTS)。否則在RTS,CTS報文交互之后,對應(yīng)的數(shù)據(jù)信道CUL[i].ch仍處于忙態(tài)。
條件二:對所有數(shù)據(jù)信道CUL[i].ch,至少有一條Dj滿足:
(CUL[i].ch=)→{CUL[i].rel-time≤Tcurr+(TDIFS+TRTS+TSIFS+TCTS)}∨{(CUL[i].int=0)∧(Power[CUL[i].host]> Power[B])}
兩條件滿足時,A將所有滿足條件二的Dj加入到自己的空閑信道列表FCL中;否則A將退避等待。
(2). A向B發(fā)送RTS(含有FCL,Ld的信息)。
(3). B收到RTS(FCL,Ld)后,檢查FCL中是否有這樣的數(shù)據(jù)信道Dj,對所有的i,均滿足
(CUL[i].ch=Dj)→{CUL[i].rel-time≤Tcurr+(TSIFS+TCTS)}∨{(CUL[i].int=0)∧(Power[CUL[i].host]> Power[A])}
若有,從所有滿足條件的信道中選擇出第一條Dj,向A回復(fù)CTS(含有Dj,NAVCTS,PCTS)。這里,
NAVCTS= Ld/Bd+TACK+2τ
PCTS= Power[A]
同時B將數(shù)據(jù)收發(fā)器調(diào)整到Dj,等待接收來自A的數(shù)據(jù)報文。
若沒有找到滿足條件的Dj,B將向A回復(fù)CTS(Test)信號,Test=min{i, CUL[i].rel-time }- Tcurr-TSIFS-TCTS (Test是正在使用的數(shù)據(jù)信道的最早釋放時間減去CTS報文交換時間)
(4).除B以外的其他主機收到A的RTS(FCL,Ld)時,要計算一個退避時間,此時間內(nèi)不使用控制信道:NAVCTS= 2TSIFS+TCTS+TRES+2τ,以避免沖突。
A發(fā)送RTS后,要經(jīng)過TSIFS+TCTS+ TRES+2τ時期,等待B的CTS的到來。若未收到CTS,則退避重發(fā)。
(5) A收到B的CTS(Dj,NAVCTS,PCTS)后,執(zhí)行以下步驟:
步驟1:添加CUL[k]到CUL信道使用列表中:
CUL[k].host=B
CUL[k].ch=Dj
CUL[k].rel-time=Tcurr+ NAVCTS
CUL[k].int=1
步驟2:用最大功率在控制信道上廣播RES(Dj,NAVRES,PRES)報文,
NAVRES= NAVCTS-TSIFS-TRES
PRES= Power[B]
步驟3:用Power[B]在數(shù)據(jù)信道Dj上傳送數(shù)據(jù)報文(步驟2與步驟3同步進行)。
若A收到的是B的CTS(Test)信號,則A回到步驟1退避等待,或者重新選擇新釋放的數(shù)據(jù)信道。
(6).除A以外的其他主機收到B的CTS(Dj,NAVCTS,PCTS)時,將更新自己的CUL,與(6)的步驟1類似。但應(yīng)注意:
CUL[k].rel-time=Tcurr+ NAVCTS +τ
CUL[k].int=
若收到的是B的CTS(Test)信號,則忽略該報文。
(7) 若除A以外的其他主機收到RES(Dj,NAVRES,PRES)報文,則添加CUL[k]到CUL信道使用列表中:
CUL[k].host=A
CUL[k].ch=Dj
CUL[k].rel-time=Tcurr+ NAVRES
CUL[k].int=
(8) B收到A的完整數(shù)據(jù)報文后,用Power[A]在數(shù)據(jù)信道Dj上回送ACK報文。
結(jié)語
通過以上分析,能看出DCA-PC協(xié)議具有以下特點:首先,能按需為節(jié)點分配信道 。當節(jié)點有信號需要傳送時,協(xié)議通過RTS/CTS/RES握手控制報文取得一個信道,傳送任務(wù)完成后釋放該信道。其次,在這種按需分配傳送的機制下,網(wǎng)絡(luò)信道數(shù)目的分配與網(wǎng)絡(luò)的規(guī)模,拓撲和復(fù)雜度無關(guān)。另外,不需要在全網(wǎng)范圍內(nèi)提供時鐘同步。具有基于CSMA和FAMAC的多信道協(xié)議不具備的優(yōu)勢?,F(xiàn)有的其他多信道協(xié)議往往只是單獨考慮信道接入和功率控制的問題,而DCA-PC獨創(chuàng)性地將二者結(jié)合起來。研究結(jié)果表明,使用多信道和動態(tài)信道分配技術(shù),可以顯著提高網(wǎng)絡(luò)的吞吐量。通過在數(shù)據(jù)信道上使用功率控制技術(shù),增加了頻率的空間復(fù)用度,在提高網(wǎng)絡(luò)吞吐量的同時,也降低了網(wǎng)絡(luò)的能耗,對改善WSNs的性能具有重要意義。
評論