鄭文慶,金 虎,郭建蓬,馮 輝
(國(guó)防科技大學(xué) 電子對(duì)抗學(xué)院,安徽 合肥 230037)
Ad Hoc網(wǎng)絡(luò)的重要技術(shù)之一是對(duì)其介質(zhì)訪問控制(Media Access Control,MAC)層協(xié)議的設(shè)計(jì)[1]。它決定了眾多節(jié)點(diǎn)如何公平、有效地共享無線信道資源。為保證通信網(wǎng)絡(luò)中高優(yōu)先級(jí)分組的高吞吐量、低延時(shí)以及服務(wù)質(zhì)量(Quality of Service,QoS),基于優(yōu)先級(jí)概率統(tǒng)計(jì)的多址接入模式(Statistic Prioritybased Multiple Access,SPMA)協(xié)議應(yīng)運(yùn)而生[2]。
SPMA協(xié)議不同于傳統(tǒng)的信道接入模式協(xié)議。它通過協(xié)議棧各層之間的信息傳輸,可以極低時(shí)延完成各節(jié)點(diǎn)間的信息交互。SPMA協(xié)議不需事先為網(wǎng)絡(luò)中各節(jié)點(diǎn)預(yù)約或分配時(shí)隙,只需在網(wǎng)絡(luò)層數(shù)據(jù)包到達(dá)時(shí)統(tǒng)計(jì)信道占用率,通過將信道占用率與數(shù)據(jù)包閾值進(jìn)行比較來決定業(yè)務(wù)分組是否接入信道[3]。如果此時(shí)信道占用率低于數(shù)據(jù)包閾值,則發(fā)送該數(shù)據(jù)包;如果信道占用率高于數(shù)據(jù)包閾值,則根據(jù)退避算法設(shè)定退避時(shí)間進(jìn)行回退等待,到達(dá)退避時(shí)間后再次檢測(cè)信道占用率,并與閾值比較,判斷是否接入信道。
SPMA協(xié)議對(duì)信道的接入控制主要取決于各優(yōu)先級(jí)設(shè)定的閾值大小。閾值越大,接入信道的概率越大;反之,越小。本文主要研究SPMA協(xié)議的接入閾值問題。首先,闡述SPMA協(xié)議的運(yùn)行機(jī)制和特點(diǎn);其次,根據(jù)碰撞模型提出各優(yōu)先級(jí)的閾值設(shè)置方法;最后,對(duì)在該閾值方法下的SPMA協(xié)議進(jìn)行系統(tǒng)仿真,得到系統(tǒng)性能隨系統(tǒng)負(fù)載變化的變化曲線。
SPMA協(xié)議主要為擴(kuò)頻系統(tǒng)設(shè)計(jì)。該協(xié)議下,系統(tǒng)持續(xù)監(jiān)測(cè)信道占用情況,并定時(shí)持續(xù)更新偵聽到的收發(fā)脈沖數(shù)目,根據(jù)信道中監(jiān)測(cè)到的收發(fā)脈沖的數(shù)量和特性,判斷信道可能存在的多種狀態(tài)[4]。SPMA協(xié)議信道判斷與CSMA協(xié)議判斷機(jī)制不同。CSMA協(xié)議只要偵聽到有一個(gè)節(jié)點(diǎn)在發(fā)送,此時(shí)就判定信道為忙。而SPMA協(xié)議是偵聽監(jiān)測(cè)信道中的脈沖數(shù)目,通過數(shù)值計(jì)算得到一個(gè)有關(guān)于信道占用情況的信道占用統(tǒng)計(jì)值。當(dāng)有數(shù)據(jù)包需要發(fā)送時(shí),根據(jù)偵聽統(tǒng)計(jì)得到的脈沖數(shù)據(jù),計(jì)算當(dāng)前信道的占用情況,并將計(jì)算得到的信道占用統(tǒng)計(jì)值與數(shù)據(jù)包閾值大小進(jìn)行比較,從而判斷是否允許該包發(fā)送[5]。
SPMA協(xié)議的特點(diǎn)是采用了多種優(yōu)先級(jí)的QoS服務(wù)機(jī)制[6]。當(dāng)網(wǎng)絡(luò)層的數(shù)據(jù)包到達(dá)MAC層時(shí),首先根據(jù)其優(yōu)先級(jí)分別插入到相對(duì)應(yīng)的隊(duì)列中;然后,取出隊(duì)列中最高優(yōu)先級(jí)的數(shù)據(jù)包,將當(dāng)前統(tǒng)計(jì)得到的信道占用率與此數(shù)據(jù)包優(yōu)先級(jí)對(duì)應(yīng)的閾值進(jìn)行比較,如果信道占用率小于閾值,則發(fā)送該數(shù)據(jù)包,如果信道占用率大于閾值,數(shù)據(jù)包將根據(jù)其優(yōu)先級(jí)及信道占用情況退避一段時(shí)間,到達(dá)時(shí)間后再次檢測(cè)信道占用情況判斷是否發(fā)送。其中,高優(yōu)先級(jí)對(duì)應(yīng)的閾值在數(shù)值上大于低優(yōu)先級(jí)對(duì)應(yīng)的閾值,從而保證高優(yōu)先級(jí)有更大的概率接入信道[7]。
此外,在數(shù)據(jù)包退避時(shí)間內(nèi),如果有更低優(yōu)先級(jí)的數(shù)據(jù)包到達(dá),它將在隊(duì)列中排隊(duì)等待傳輸,直到更高優(yōu)先級(jí)的數(shù)據(jù)包發(fā)送完畢;如果有更高優(yōu)先級(jí)的數(shù)據(jù)包到達(dá),則退避取消,并立即統(tǒng)計(jì)信道占用率,同時(shí)與該數(shù)據(jù)包閾值進(jìn)行比較,以判斷是否能夠發(fā)送該數(shù)據(jù)包。
SPMA協(xié)議的接入控制流程,如圖1所示。協(xié)議中,數(shù)據(jù)包優(yōu)先級(jí)的分類是在應(yīng)用層確定,而實(shí)際應(yīng)用中是人為決定的。當(dāng)應(yīng)用層產(chǎn)生的數(shù)據(jù)包經(jīng)過網(wǎng)絡(luò)層到達(dá)MAC層時(shí),首先根據(jù)優(yōu)先級(jí)將數(shù)據(jù)包插入對(duì)應(yīng)的隊(duì)列,判斷高優(yōu)先級(jí)隊(duì)列中是否有包,并將較高優(yōu)先級(jí)數(shù)據(jù)包轉(zhuǎn)為待發(fā)送狀態(tài),然后將當(dāng)前統(tǒng)計(jì)得到的信道占用率與待發(fā)送數(shù)據(jù)包的閾值進(jìn)行比較。如果此時(shí)信道占用率低于閾值,則允許發(fā)送的數(shù)據(jù)包從隊(duì)列中移除并發(fā)送;如果信道占用率高于閾值,節(jié)點(diǎn)將根據(jù)數(shù)據(jù)包的優(yōu)先級(jí)與信道占用率的值設(shè)定退避時(shí)間進(jìn)行回退等待,到達(dá)退避時(shí)間后,再次檢測(cè)信道占用率,循環(huán)以上流程[8]。SPMA協(xié)議的工作狀態(tài)轉(zhuǎn)移,如圖2所示。
圖1 SPMA協(xié)議接入控制流程
圖2 SPMA協(xié)議工作狀態(tài)轉(zhuǎn)移
如圖3所示,如果網(wǎng)絡(luò)流量始終很高,當(dāng)信道負(fù)載超過最大信道負(fù)載時(shí),系統(tǒng)會(huì)首先執(zhí)行低優(yōu)先級(jí)回退操作,甚至丟棄低優(yōu)先級(jí)的包。如果網(wǎng)絡(luò)流量居高不下,系統(tǒng)將嚴(yán)重超載。此時(shí),系統(tǒng)將相繼退避更高優(yōu)先級(jí)的數(shù)據(jù)包甚至棄包,直到信道負(fù)載下降,退避的數(shù)據(jù)包才可以接入信道,這叫做“削峰填谷”。這樣做的效果是在系統(tǒng)超載時(shí),SPMA協(xié)議首先會(huì)延遲或抑制低優(yōu)先級(jí)數(shù)據(jù)包的接入,控制低優(yōu)先級(jí)的流量。隨著系統(tǒng)負(fù)載的增加,可控制信道負(fù)載,保持信道流量在一個(gè)比較穩(wěn)定的水平,以保證系統(tǒng)高優(yōu)先級(jí)業(yè)務(wù)的QoS質(zhì)量,且使得整個(gè)網(wǎng)絡(luò)不至于在超載的情況下產(chǎn)生擁塞。
圖3 SPMA協(xié)議流量控制
下面簡(jiǎn)要分析信道中數(shù)據(jù)包在時(shí)頻點(diǎn)上的碰撞原理[9]。如果不考慮分組超出隊(duì)列緩沖容量而導(dǎo)致的丟包,此時(shí)網(wǎng)絡(luò)節(jié)點(diǎn)分組的發(fā)送成功概率主要取決于分組的碰撞情況。如果在接收端接收到不同節(jié)點(diǎn)發(fā)送的脈沖在時(shí)間和頻率上出現(xiàn)重疊,則認(rèn)為發(fā)生了脈沖碰撞[10]。
系統(tǒng)業(yè)務(wù)分組的發(fā)送特點(diǎn)是,將分組拆分為時(shí)長(zhǎng)t的脈沖并以周期Th發(fā)送,其中發(fā)送占空比為Tδ=t/Th。由于傳播延時(shí)不確定,因此假定接收到的信號(hào)到達(dá)時(shí)刻在0~Th內(nèi)是均勻分布的。假設(shè)每分組拆分的脈沖數(shù)量為n,且節(jié)點(diǎn)數(shù)為n個(gè)節(jié)點(diǎn)(cj,j=1,2,…,n)發(fā)送的數(shù)據(jù)到達(dá)接收節(jié)點(diǎn)cn+1的時(shí)間分別為tj,j=1,2,…,n,則節(jié)點(diǎn)cj(j=2,…,n)與另外目標(biāo)節(jié)點(diǎn)c1發(fā)生碰撞的條件為|tj-t1|<Th/Tδ。此時(shí),目標(biāo)節(jié)點(diǎn)c1同不超過k個(gè)節(jié)點(diǎn)發(fā)生碰撞的概率為:
式中,Vl為l個(gè)節(jié)點(diǎn)同目標(biāo)節(jié)點(diǎn)發(fā)生時(shí)間碰撞的概率,是一個(gè)l+1維時(shí)間約束區(qū)域;m為跳頻頻點(diǎn)數(shù)。
考慮到在物理層發(fā)送與接收數(shù)據(jù)時(shí)會(huì)采用編碼糾錯(cuò)技術(shù),當(dāng)接收節(jié)點(diǎn)接收到的脈沖數(shù)量在編碼糾錯(cuò)能力范圍內(nèi)時(shí),該數(shù)據(jù)分組可被成功恢復(fù)。假設(shè)數(shù)據(jù)分組拆分為Np個(gè)跳頻脈沖進(jìn)行發(fā)送,采用編碼技術(shù)后,當(dāng)接收到不少于Nm個(gè)脈沖時(shí),可認(rèn)為數(shù)據(jù)分組被成功接收,則數(shù)據(jù)分組成功概率為:
門限閾值需要與信道占用率進(jìn)行比較,因此在研究門限閾值前需要研究信道占用情況。信道占用是基于統(tǒng)計(jì)收發(fā)數(shù)據(jù)包的數(shù)量得到的,并根據(jù)收發(fā)數(shù)據(jù)包的數(shù)量之和作一定數(shù)學(xué)運(yùn)算,以科學(xué)合理地評(píng)價(jià)信道占用狀態(tài)。因?yàn)楸疚难芯康男诺勒加脿顟B(tài)是根據(jù)收發(fā)數(shù)據(jù)包數(shù)量之和乘以脈沖時(shí)長(zhǎng)并除以統(tǒng)計(jì)時(shí)間窗的時(shí)間長(zhǎng)度得到的,所以計(jì)算信道占用率η(T )如式(3)所示,得到的信道占用率為[0,1]范圍內(nèi)的數(shù)。因此,門限閾值的取值設(shè)置為[0,1]內(nèi)的小數(shù)。
式中,nr為此節(jié)點(diǎn)接收到的數(shù)據(jù)包數(shù)量;nt為此節(jié)點(diǎn)發(fā)送的數(shù)據(jù)包數(shù)量;t0為數(shù)據(jù)脈沖時(shí)長(zhǎng);T為統(tǒng)計(jì)窗口時(shí)長(zhǎng)。
SPMA協(xié)議中,數(shù)據(jù)包能否立即發(fā)送,取決于當(dāng)前信道占用是否大于數(shù)據(jù)包對(duì)應(yīng)優(yōu)先級(jí)閾值。優(yōu)先級(jí)閾值設(shè)置得過高,允許發(fā)送的優(yōu)先級(jí)分組越多,信道負(fù)載越大,高優(yōu)先級(jí)分組的傳輸質(zhì)量將會(huì)降低;優(yōu)先級(jí)閾值設(shè)置得過低,更多的低優(yōu)先級(jí)分組將退避,造成不必要的信道資源浪費(fèi)[11]。因此,需要合理設(shè)置優(yōu)先級(jí)閾值,將信道負(fù)載控制在良好狀態(tài)。
假設(shè)網(wǎng)絡(luò)存在優(yōu)先級(jí)0到優(yōu)先級(jí)N-1共N個(gè)優(yōu)先級(jí)業(yè)務(wù),其中優(yōu)先級(jí)0為最高優(yōu)先級(jí),各優(yōu)先級(jí)業(yè)務(wù)所占的比例為ri,優(yōu)先級(jí)對(duì)應(yīng)的閾值為Thresholdi。閾值是由節(jié)點(diǎn)所處的電磁環(huán)境、物理層協(xié)議以及碰撞原理共同決定的。因此,無法給出確定公式。下面首先研究最低優(yōu)先級(jí)閾值如何設(shè)置。
在網(wǎng)絡(luò)系統(tǒng)信道負(fù)載不大于最低優(yōu)先級(jí)閾值ThresholdN-1對(duì)應(yīng)的信道業(yè)務(wù)量時(shí),所有優(yōu)先級(jí)分組均不需要退避且隨到隨發(fā)。此時(shí),可保證各優(yōu)先級(jí)分組傳輸成功率不低于99%。因此,最低優(yōu)先級(jí)閾值ThresholdN-1可采用ALOHA工作方式獲得。測(cè)試場(chǎng)景中,節(jié)點(diǎn)均采用ALOHA方式?;谛诺琅鲎苍恚鞴?jié)點(diǎn)無優(yōu)先級(jí)控制,分組隨到隨發(fā)。逐漸增大網(wǎng)絡(luò)業(yè)務(wù)量,當(dāng)分組傳輸成功率降低至接近99%時(shí),獲取此時(shí)統(tǒng)計(jì)時(shí)間窗內(nèi)信道上發(fā)送和接收的脈沖數(shù)量之和,經(jīng)式(3)的數(shù)學(xué)運(yùn)算得到ThresholdN-1。
本文的優(yōu)先級(jí)閾值設(shè)置綜合考慮了碰撞原理、物理層誤包率性能和各優(yōu)先級(jí)業(yè)務(wù)在總業(yè)務(wù)量中的所占比例,可得到相鄰優(yōu)先級(jí)閾值的關(guān)系不等式:
可得,各優(yōu)先級(jí)閾值范圍可通過最低優(yōu)先級(jí)閾值ThresholdN-1計(jì)算得到,如式(5)所示:
通過采用上述方法設(shè)置優(yōu)先級(jí)閾值,可以將信道占用控制在最低優(yōu)先級(jí)閾值范圍內(nèi),保證高優(yōu)先級(jí)分組的傳輸可靠性。例如,當(dāng)信道占用剛大于ThresholdN-1時(shí),優(yōu)先級(jí)N-1分組進(jìn)行退避。由于該業(yè)務(wù)量場(chǎng)景下信道占用不大于ThresholdN-2,此時(shí)系統(tǒng)能夠發(fā)送優(yōu)先級(jí)N-2分組。為確保高優(yōu)先級(jí)分組的傳輸成功率不低于99%,且可更大程度地利用信道資源,優(yōu)先級(jí)N-2閾值ThresholdN-2可通過式(6)求得:
綜上所述,為提高高優(yōu)先級(jí)業(yè)務(wù)的傳輸成功概率,并更大程度地提高信道利用率,其余各優(yōu)先級(jí)閾值計(jì)算方法為:
本文采用OPNET仿真工具進(jìn)行以下仿真實(shí)驗(yàn)。為驗(yàn)證系統(tǒng)性能,采用簡(jiǎn)化的仿真場(chǎng)景。有100個(gè)節(jié)點(diǎn)分布在100 km×100 km的區(qū)域中靜止不動(dòng),且認(rèn)為節(jié)點(diǎn)與節(jié)點(diǎn)間為單跳傳輸,信道傳輸速率為2 Mb/s。業(yè)務(wù)分為優(yōu)先級(jí)0到優(yōu)先級(jí)7共8個(gè)優(yōu)先級(jí),且各優(yōu)先級(jí)所占比例如表1所示。每種優(yōu)先級(jí)業(yè)務(wù)的包到達(dá)時(shí)間間隔服從泊松分布,包長(zhǎng)為1 024 bit,目的地址選取為隨機(jī)發(fā)送地址。網(wǎng)絡(luò)系統(tǒng)負(fù)載范圍為1~10 Mb/s。假設(shè)時(shí)延僅考慮包接入等待時(shí)產(chǎn)生的時(shí)延和傳輸時(shí)延,其余時(shí)延均不考慮。
表1 各優(yōu)先級(jí)所占比例及閾值取值
為得到各優(yōu)先級(jí)對(duì)應(yīng)的門限閾值,首先采用ALOHA工作方式進(jìn)行仿真測(cè)試,且測(cè)試場(chǎng)景與上述SPMA協(xié)議場(chǎng)景相同。經(jīng)過實(shí)驗(yàn)研究,得到ALOHA協(xié)議下分組成功概率如圖4所示??梢姡趥鬏敵晒Ω怕式禐?9%時(shí),統(tǒng)計(jì)得到的信道占用率為4%,因此Threshold7選取為4%。根據(jù)以上閾值設(shè)定方法可設(shè)置其余優(yōu)先級(jí)閾值如表1所示,并基于以上參數(shù)進(jìn)行仿真實(shí)驗(yàn)。
圖4 ALOHA協(xié)議分組成功概率
本仿真通過對(duì)各個(gè)優(yōu)先級(jí)分組成功概率和時(shí)延采樣取值,得到成功率和時(shí)延隨系統(tǒng)業(yè)務(wù)量的變化曲線如圖5、圖6所示。
圖5 各優(yōu)先級(jí)成功率隨系統(tǒng)業(yè)務(wù)量變化曲線
圖6 各優(yōu)先級(jí)時(shí)延隨系統(tǒng)業(yè)務(wù)量變化曲線
圖5 為各個(gè)優(yōu)先級(jí)分組的成功發(fā)送概率隨系統(tǒng)業(yè)務(wù)量的變化曲線。由圖5可知,當(dāng)系統(tǒng)業(yè)務(wù)量超過一定數(shù)值后,最低優(yōu)先級(jí)數(shù)據(jù)包開始回退產(chǎn)生時(shí)延甚至棄包,成功發(fā)送概率開始降低,說明此時(shí)信道占用已經(jīng)超過最低優(yōu)先級(jí)對(duì)應(yīng)的閾值。隨著系統(tǒng)業(yè)務(wù)量的逐漸增大,信道負(fù)載逐漸增大,較高優(yōu)先級(jí)數(shù)據(jù)包對(duì)應(yīng)的閾值相繼開始小于信道占用,此時(shí)開始回退甚至棄包,成功發(fā)送概率也開始下降。由于本協(xié)議可通過抑制低優(yōu)先級(jí)的接入達(dá)到控制信道負(fù)載的目的,因此可始終為最高優(yōu)先級(jí)業(yè)務(wù)提供高QoS保證,其成功發(fā)送概率可保持在99%以上。
圖6為各優(yōu)先級(jí)端到端時(shí)延隨系統(tǒng)業(yè)務(wù)量的變化曲線。由圖6可知,當(dāng)系統(tǒng)業(yè)務(wù)量超過一定數(shù)值后,信道占用開始超過最低優(yōu)先級(jí)閾值,最低優(yōu)先級(jí)進(jìn)行回退。隨著系統(tǒng)業(yè)務(wù)量的增大,之后較高優(yōu)先級(jí)也依次開始回退,退避的包分組端到端時(shí)延急劇增大。圖6中,當(dāng)系統(tǒng)業(yè)務(wù)量達(dá)到一定界限后,低優(yōu)先級(jí)數(shù)據(jù)包的端到端時(shí)延會(huì)急劇增大,可使信道負(fù)載保持在穩(wěn)定水平,進(jìn)而保證系統(tǒng)中高優(yōu)先級(jí)業(yè)務(wù)的高通信質(zhì)量。此外,高優(yōu)先級(jí)業(yè)務(wù)接入信道時(shí)優(yōu)先接入無需等待,因此其端到端時(shí)延僅有通信距離產(chǎn)生的很小的傳輸時(shí)延。
為滿足系統(tǒng)通信時(shí)對(duì)多優(yōu)先級(jí)業(yè)務(wù)的服務(wù)質(zhì)量要求,保證高優(yōu)先級(jí)業(yè)務(wù)的高QoS質(zhì)量,本文對(duì)SPMA協(xié)議接入閾值進(jìn)行研究。首先闡述了SPMA協(xié)議的運(yùn)行機(jī)制,其次根據(jù)碰撞原理和ALOHA協(xié)議仿真得到SPMA協(xié)議的閾值設(shè)置方法,最后通過仿真實(shí)驗(yàn)驗(yàn)證了本閾值計(jì)算方法的可行性。通過以上過程可發(fā)現(xiàn),SPMA協(xié)議通過給各個(gè)數(shù)據(jù)包設(shè)置不同優(yōu)先級(jí),同時(shí)設(shè)置優(yōu)先級(jí)對(duì)應(yīng)的閾值,再通過偵聽信道占用狀態(tài)與預(yù)先設(shè)置的閾值進(jìn)行比較來判斷是否接入信道,實(shí)現(xiàn)了系統(tǒng)對(duì)多優(yōu)先級(jí)業(yè)務(wù)的QoS服務(wù)機(jī)制,滿足了系統(tǒng)對(duì)高優(yōu)先級(jí)業(yè)務(wù)高成功概率、低時(shí)延、高服務(wù)質(zhì)量的要求。