本發(fā)明屬于無源感知網(wǎng)絡(luò)領(lǐng)域,尤其涉及一種射頻供能無線傳感器網(wǎng)絡(luò)點(diǎn)對點(diǎn)鏈路數(shù)據(jù)傳輸機(jī)制切換方法,可用于捕獲射頻能量進(jìn)行通信的無線傳感器網(wǎng)絡(luò)。
背景技術(shù):
無源感知網(wǎng)絡(luò)(batteryfreewirelesssensornetwork,bf-wsn)的節(jié)點(diǎn)通過環(huán)境中泛在的射頻(radiofrequency,rf)信號(hào)捕獲能量,為解決傳統(tǒng)無線傳感器網(wǎng)絡(luò)(wirelesssensornetworks,wsn)節(jié)點(diǎn)的能源供給提供了一種新的途徑。bf-wsn節(jié)點(diǎn)運(yùn)行所需的能量來自于rf供能點(diǎn)(如電視塔、蜂窩基站或wi-fi等通信設(shè)施)所發(fā)射的rf信號(hào),能量捕獲功率極低,通常只有mw甚至μw級(jí)。在能量捕獲功率如此之極的情況下,節(jié)點(diǎn)用于數(shù)據(jù)傳輸?shù)墓β室搽S之降低,這會(huì)導(dǎo)致通信鏈路的誤碼率增加。而且,由于通信鏈路時(shí)常會(huì)受到周圍電磁信號(hào)的干擾,無線鏈路的質(zhì)量時(shí)好時(shí)壞,極不穩(wěn)定。
在基于ieee802.11標(biāo)準(zhǔn)的無線域局網(wǎng)(wirelesslocalareanetwork,wlan)和基于ieee802.15.4標(biāo)準(zhǔn)的無線個(gè)域網(wǎng)(wirelesspersonalareanetwork,wpan)中,自動(dòng)請求重傳(automaticrepeatrequest,arq)機(jī)制被廣泛采用,arq的主要特點(diǎn)在于只要接收方接收到的數(shù)據(jù)包出現(xiàn)比特錯(cuò),發(fā)送方就需要在重傳計(jì)時(shí)器超時(shí)之后重傳整個(gè)數(shù)據(jù)包,直到接收方正確接收到數(shù)據(jù)包或重傳次數(shù)達(dá)到上限為止。誠然,在鏈路質(zhì)量較好(即數(shù)據(jù)包傳輸成功率較高,重傳次數(shù)較少)時(shí),arq能很好地工作。但是,在鏈路質(zhì)量較差的情況下,頻繁的比特錯(cuò)會(huì)觸發(fā)頻繁的數(shù)據(jù)包重傳,這不僅會(huì)浪費(fèi)帶寬,而且會(huì)增加收發(fā)雙方的傳輸能耗和傳輸時(shí)延,降低網(wǎng)絡(luò)吞吐率。為了克服arq的不足,公開號(hào)為cn102340391的專利文獻(xiàn)提供一種分段arq自動(dòng)重傳方法,該方法將源節(jié)點(diǎn)到目的節(jié)點(diǎn)的傳輸路徑分為若干arq段,每個(gè)arq段的端節(jié)點(diǎn)為arq節(jié)點(diǎn),傳輸路徑中除arq節(jié)點(diǎn)之外的節(jié)點(diǎn)為普通節(jié)點(diǎn),在傳輸數(shù)據(jù)時(shí),普通節(jié)點(diǎn)僅轉(zhuǎn)發(fā)數(shù)據(jù)包,而arq節(jié)點(diǎn)除了轉(zhuǎn)發(fā)數(shù)據(jù)包之外還負(fù)責(zé)發(fā)送確認(rèn)和重傳數(shù)據(jù)包等操作;公開號(hào)為cn102684854的專利文獻(xiàn)提供了一種mac(mediumaccesscontrol)層arq參數(shù)的自適應(yīng)調(diào)整方法,該方法根據(jù)發(fā)送方接收到的nack(negativeacknowledgement,負(fù)確認(rèn))與ack(acknowledgement,確認(rèn))的比值將網(wǎng)絡(luò)狀況分為好、中和差三種情況,并根據(jù)網(wǎng)絡(luò)的不同狀況對arq參數(shù)(arq塊大小、超時(shí)重傳時(shí)間、滑動(dòng)窗口大小等)進(jìn)行調(diào)整。
以上方案并沒有充分考慮無線鏈路質(zhì)量呈動(dòng)態(tài)變化的特性,且節(jié)點(diǎn)所采用的數(shù)據(jù)傳輸機(jī)制固定不變,不能很好地適用于bf-wsn。
技術(shù)實(shí)現(xiàn)要素:
為了克服無源感知網(wǎng)絡(luò)中節(jié)點(diǎn)采用固定數(shù)據(jù)傳輸機(jī)制導(dǎo)致通信鏈路吞吐率較低的不足,本發(fā)明提供一種鏈路吞吐量較高的無源感知網(wǎng)絡(luò)點(diǎn)對點(diǎn)鏈路數(shù)據(jù)傳輸機(jī)制切換方法,該方法能根據(jù)當(dāng)前的鏈路質(zhì)量進(jìn)行數(shù)據(jù)傳輸機(jī)制自動(dòng)切換:當(dāng)鏈路質(zhì)量較好時(shí),節(jié)點(diǎn)采用arqm(automaticrepeatrequestmechanism,自動(dòng)請求重傳機(jī)制);當(dāng)鏈路質(zhì)量較差時(shí),節(jié)點(diǎn)自動(dòng)切換為brm(blockingretransmissionmechanism,分塊重傳機(jī)制),提高鏈路的吞吐率。
本發(fā)明解決其技術(shù)問題所采用的技術(shù)方案是:
一種無源感知網(wǎng)絡(luò)點(diǎn)對點(diǎn)鏈路數(shù)據(jù)傳輸機(jī)制切換方法,包括以下步驟:
發(fā)送方s的操作流程:
步驟11.從rf信號(hào)中捕獲能量,持續(xù)時(shí)間為th;
步驟12.求解優(yōu)化問題op_n得到數(shù)據(jù)包中有效載荷的最優(yōu)分塊個(gè)數(shù)n*;
步驟13.判斷n*是否等于1,若n*等于1,將數(shù)據(jù)包首部中的tm字段置為0,生成數(shù)據(jù)包并采用arqm傳輸數(shù)據(jù);若n*不等于1,則將tm字段置為1,生成數(shù)據(jù)包并采用brm傳輸數(shù)據(jù);
步驟14.結(jié)束;
接收方r的操作流程:
步驟21.從rf信號(hào)中捕獲能量,持續(xù)時(shí)間為th;
步驟22.接收來自s的數(shù)據(jù)包,檢查數(shù)據(jù)包首部中tm字段的值,若tm=0,采用arqm接收并處理數(shù)據(jù)包;若tm=1,則按brm接收并處理數(shù)據(jù)包;
步驟23.結(jié)束。
進(jìn)一步,所述arqm的過程如下:發(fā)送方s發(fā)送數(shù)據(jù)包給接收方r,發(fā)送結(jié)束后啟動(dòng)重傳計(jì)時(shí)器;若r正確接收到數(shù)據(jù)包,立即向s回復(fù)一個(gè)ack以確認(rèn)數(shù)據(jù)包收到。若數(shù)據(jù)包出現(xiàn)比特錯(cuò),則r什么也不做;那么,s會(huì)在重傳計(jì)時(shí)器超時(shí)之后立即重傳數(shù)據(jù)包,若重傳次數(shù)達(dá)到事先所設(shè)定的最大重傳次數(shù),s停止發(fā)送當(dāng)前數(shù)據(jù)包。
所述brm的過程如下:發(fā)送方s先將數(shù)據(jù)包的有效載荷劃分為n個(gè)數(shù)據(jù)塊,每個(gè)數(shù)據(jù)塊中包含有效數(shù)據(jù)和塊校驗(yàn)序列(blockchecksequence,bcs)兩個(gè)部分,塊校驗(yàn)序列用于校驗(yàn)數(shù)據(jù)塊是否出錯(cuò),此外,有效載荷中還包含頭部校驗(yàn)序列(headerchecksequence,hcs),用于校驗(yàn)數(shù)據(jù)包首部是否出錯(cuò);數(shù)據(jù)包劃分為n塊之后,其有效載荷中包含hcs,n個(gè)有效數(shù)據(jù)d1,d2,…,dn和n個(gè)塊校驗(yàn)序列c1,c2,…,cn;接著,發(fā)送方s將數(shù)據(jù)包發(fā)送給接收方r,r接收到數(shù)據(jù)包之后,采用尾部中的fcs對數(shù)據(jù)包進(jìn)行校驗(yàn),若正確,則向s回復(fù)一個(gè)ack;若存在比特錯(cuò),則先采用hcs對首部進(jìn)行校驗(yàn),若首部出錯(cuò),則什么也不做,等待s重傳原數(shù)據(jù)包;若首部正確,則依次采用c1,c2,…,cn對數(shù)據(jù)塊1,數(shù)據(jù)塊2,...,數(shù)據(jù)塊n進(jìn)行校驗(yàn),然后,把正確的數(shù)據(jù)塊存入緩沖區(qū)中對應(yīng)的存儲(chǔ)區(qū)域并丟棄發(fā)生錯(cuò)誤的數(shù)據(jù)塊,然后向s回復(fù)一個(gè)負(fù)確認(rèn)nack以告知s哪些數(shù)據(jù)塊出錯(cuò);隨后,s向r重傳一個(gè)其有效載荷中僅包含出錯(cuò)數(shù)據(jù)塊的數(shù)據(jù)包,如此反復(fù),直到r成功收到n個(gè)數(shù)據(jù)塊或重傳次數(shù)達(dá)到上限為止。
更進(jìn)一步,所述步驟1.1和2.1中,節(jié)點(diǎn)能量捕獲時(shí)間th的確定:以ph表示節(jié)點(diǎn)的能量捕獲功率,由friss傳輸方程可知:
其中,gs和gr分別表示供能點(diǎn)和節(jié)點(diǎn)的天線增益,λ是電磁波的波長,plost是路徑功率損耗,d是節(jié)點(diǎn)與供能點(diǎn)之間的距離,ps是供能點(diǎn)的發(fā)送功率,μ是rf信號(hào)轉(zhuǎn)換為電能的效率系數(shù);
以e0表示節(jié)點(diǎn)的初始能量,以eth表示節(jié)點(diǎn)運(yùn)行的能量閾值,即只有當(dāng)s和r這兩個(gè)節(jié)點(diǎn)的剩余能量均大于或等于eth時(shí),s才開始傳輸數(shù)據(jù);以τ表示節(jié)點(diǎn)從初始能量e0開始捕獲能量直至其剩余能量達(dá)到eth所持續(xù)的時(shí)間,利用式(1)可得:
τ=(eth-e0)/ph(2)
以τs和τr分別表示s和r的能量捕獲時(shí)間,那么,從s和r開始捕獲能量的時(shí)刻起直至它們的剩余能量均大于或等于eth所持續(xù)的時(shí)間為:
th=max{τs,τr}(3)。
再進(jìn)一步,數(shù)據(jù)包中的數(shù)據(jù)塊長度的確定:以l表示每個(gè)數(shù)據(jù)塊的長度:
其中,lpacket表示數(shù)據(jù)包的總長度,lhead表示首部的長度,lhcs表示頭部校驗(yàn)序列hcs的長度,lfcs表示尾部的長度;
首部和數(shù)據(jù)塊傳輸成功的概率:以<s,r>表示s和r之間的通信鏈路,以b表示鏈路<s,r>的誤碼率,那么,s傳輸一個(gè)數(shù)據(jù)包給r時(shí),首部傳輸成功的概率q以及每個(gè)數(shù)據(jù)塊傳輸成功的概率p分別為:
p=(1-b)l(6)
數(shù)據(jù)包第k次傳輸成功的概率:以pk(x)表示包含x個(gè)數(shù)據(jù)塊的數(shù)據(jù)包第k次傳輸成功的概率,x=1,2,...,n;k=1,2,...,k,其中,k表示同一個(gè)數(shù)據(jù)包的最大傳輸次數(shù),結(jié)合式(5)和式(6)可得到求解pk(x)的遞歸式如下:
節(jié)點(diǎn)傳輸一個(gè)數(shù)據(jù)包成功的概率為:
以lk表示節(jié)點(diǎn)第k次傳輸平均發(fā)送的比特?cái)?shù),有:
其中,
節(jié)點(diǎn)傳輸一個(gè)數(shù)據(jù)包的平均時(shí)延:以r表示節(jié)點(diǎn)傳輸數(shù)據(jù)的速率,以la和ln分別表示ack和nack的長度,以tr表示重傳計(jì)時(shí)器,以t表示節(jié)點(diǎn)傳輸一個(gè)數(shù)據(jù)包的平均時(shí)延,有:
以m表示s向r傳輸數(shù)據(jù)包的總個(gè)數(shù),則鏈路<s,r>中的吞吐率為:
其中,lbcs表示bcs的長度;
使得鏈路<s,r>中的吞吐率最大化的優(yōu)化問題op_n如下:
上式中,nmin和nmax分別表示數(shù)據(jù)包分塊個(gè)數(shù)的下界和上界;
通過求解式(13)可得到數(shù)據(jù)包分塊個(gè)數(shù)的最優(yōu)值n*,當(dāng)n*=1時(shí),說明在當(dāng)前鏈路環(huán)境下,數(shù)據(jù)包的有效載荷分為1塊吞吐率最大,因此,可設(shè)置數(shù)據(jù)包頭部中tm字段為0,采用arqm進(jìn)行傳輸;當(dāng)n*>1時(shí),說明在當(dāng)前鏈路環(huán)境下,需要將數(shù)據(jù)包的有效載荷分為2塊及以上才能使吞吐率最大,那么,可設(shè)置tm字段為1,采用brm進(jìn)行傳輸。
優(yōu)選的,nmin和nmax的確定:在式(13)中,取nmin=1,表示數(shù)據(jù)包的分塊個(gè)數(shù)至少為1塊;同時(shí),為了保證數(shù)據(jù)包的傳輸效率,令每個(gè)數(shù)據(jù)塊的長度不小于數(shù)據(jù)包首部lhead加上首部校驗(yàn)序列l(wèi)hcs,可得到nmax的計(jì)算公式如下:
本發(fā)明的有益效果主要表現(xiàn)在:該方法能根據(jù)當(dāng)前的鏈路質(zhì)量在自動(dòng)請求重傳和分塊重傳這兩種數(shù)據(jù)傳輸機(jī)制之間自動(dòng)切換,適應(yīng)了通信鏈路質(zhì)量動(dòng)態(tài)變化的特性,提高通信鏈路的吞吐率。
附圖說明
圖1是arqm的數(shù)據(jù)包格式。
圖2是brm的數(shù)據(jù)包格式。
圖3是緩沖區(qū)分塊編號(hào)。
圖4是nack的格式。
圖5是tm字段示意圖。
圖6是發(fā)送方操作流程圖。
圖7是接收方操作流程圖。
具體實(shí)施方式
下面結(jié)合附圖對本發(fā)明作進(jìn)一步描述。
參照圖1~圖7,一種無源感知網(wǎng)絡(luò)點(diǎn)對點(diǎn)鏈路數(shù)據(jù)傳輸機(jī)制切換方法,包括arqm和brm兩種數(shù)據(jù)傳輸機(jī)制可供選擇。
arqm的過程如下:s(表示發(fā)送方)發(fā)送數(shù)據(jù)包給r(表示接收方),發(fā)送結(jié)束后啟動(dòng)重傳計(jì)時(shí)器。若r正確接收到數(shù)據(jù)包,立即向s回復(fù)一個(gè)ack以確認(rèn)數(shù)據(jù)包收到。若數(shù)據(jù)包出現(xiàn)比特錯(cuò),則r什么也不做。那么,s會(huì)在重傳計(jì)時(shí)器超時(shí)之后立即重傳數(shù)據(jù)包,若重傳次數(shù)達(dá)到事先所設(shè)定的最大重傳次數(shù),s停止發(fā)送當(dāng)前數(shù)據(jù)包。arqm的數(shù)據(jù)包格式如圖1所示。
brm的過程如下:s先將數(shù)據(jù)包的有效載荷劃分為n個(gè)數(shù)據(jù)塊,每個(gè)數(shù)據(jù)塊中包含有效數(shù)據(jù)和塊校驗(yàn)序列(blockchecksequence,bcs)兩個(gè)部分,塊校驗(yàn)序列用于校驗(yàn)數(shù)據(jù)塊是否出錯(cuò),此外,有效載荷中還包含頭部校驗(yàn)序列(headerchecksequence,hcs),用于校驗(yàn)數(shù)據(jù)包首部是否出錯(cuò)。數(shù)據(jù)包劃分為n塊之后,其有效載荷中包含hcs,n個(gè)有效數(shù)據(jù)d1,d2,…,dn和n個(gè)塊校驗(yàn)序列c1,c2,…,cn。接著,s將數(shù)據(jù)包發(fā)送給r,r接收到數(shù)據(jù)包之后,采用尾部中的fcs對數(shù)據(jù)包進(jìn)行校驗(yàn),若正確,則向s回復(fù)一個(gè)ack;若存在比特錯(cuò),則先采用hcs對首部進(jìn)行校驗(yàn),若首部出錯(cuò),則什么也不做,等待s重傳原數(shù)據(jù)包;若首部正確,則依次采用c1,c2,…,cn對數(shù)據(jù)塊1,數(shù)據(jù)塊2,...,數(shù)據(jù)塊n進(jìn)行校驗(yàn),然后,把正確的數(shù)據(jù)塊存入緩沖區(qū)中對應(yīng)的存儲(chǔ)區(qū)域(見圖3)并丟棄發(fā)生錯(cuò)誤的數(shù)據(jù)塊,然后向s回復(fù)一個(gè)nack(negativeacknowledgement,負(fù)確認(rèn))以告知s哪些數(shù)據(jù)塊出錯(cuò)。隨后,s向r重傳一個(gè)其有效載荷中僅包含出錯(cuò)數(shù)據(jù)塊的數(shù)據(jù)包。如此反復(fù),直到r成功收到n個(gè)數(shù)據(jù)塊或重傳次數(shù)達(dá)到上限為止。brm的數(shù)據(jù)包格式如圖2所示。
如上所述,在每次傳輸中,r把正確的數(shù)據(jù)塊存入緩沖區(qū)中對應(yīng)的存儲(chǔ)區(qū)域并丟棄發(fā)生錯(cuò)誤的數(shù)據(jù)塊,同時(shí)必須找出錯(cuò)誤數(shù)據(jù)塊的序號(hào)。為此,我們對brm所采用的緩沖區(qū)做了特別的設(shè)計(jì),它除了用于暫存數(shù)據(jù)包(或數(shù)據(jù)塊)之外,另一個(gè)作用就是通過對緩沖區(qū)進(jìn)行分塊編號(hào)來記錄每個(gè)數(shù)據(jù)塊在數(shù)據(jù)包中的相對位置,如圖3所示。在圖3中,1號(hào)緩沖區(qū)塊存儲(chǔ)數(shù)據(jù)塊1,2號(hào)緩沖區(qū)塊存儲(chǔ)數(shù)據(jù)塊2,以此類推,n號(hào)緩沖區(qū)塊存儲(chǔ)數(shù)據(jù)塊n。此外,0號(hào)緩沖區(qū)塊存儲(chǔ)首部和首部校驗(yàn)序列,而n+1號(hào)緩沖區(qū)塊存儲(chǔ)尾部。收發(fā)雙方在數(shù)據(jù)傳輸過程中維護(hù)相同格式的緩沖區(qū),接收方通過檢查緩沖區(qū)中尚未存入正確數(shù)據(jù)塊的存儲(chǔ)區(qū)域的編號(hào),即可知道哪些數(shù)據(jù)塊發(fā)生錯(cuò)誤,隨后,生成nack并回復(fù)給發(fā)送方。nack的格式如圖4所示,其中,b1,b2,…,bn是一串二進(jìn)制數(shù),當(dāng)bx=0時(shí),表示第x塊正確;當(dāng)bx=1時(shí),表示第x塊錯(cuò)誤,x∈{1,2,…,n}。當(dāng)發(fā)送方收到nack之后,檢查b1,b2,…,bn的值即可知道哪些數(shù)據(jù)塊出錯(cuò)需要重傳。
一種無源感知網(wǎng)絡(luò)點(diǎn)對點(diǎn)鏈路數(shù)據(jù)傳輸機(jī)制切換方法,包括以下步驟:
發(fā)送方s的操作流程:
步驟11.從rf信號(hào)中捕獲能量,持續(xù)時(shí)間為th;
步驟12.求解優(yōu)化問題op_n得到數(shù)據(jù)包中有效載荷的最優(yōu)分塊個(gè)數(shù)n*;
步驟13.判斷n*是否等于1,若n*等于1,將數(shù)據(jù)包首部中的tm字段置為0,按圖1的格式生成數(shù)據(jù)包,采用arqm傳輸數(shù)據(jù);若n*不等于1,則將tm字段置為1,按圖2的格式生成數(shù)據(jù)包,采用brm傳輸數(shù)據(jù);
步驟14.結(jié)束。
接收方r的操作流程:
步驟21.從rf信號(hào)中捕獲能量,持續(xù)時(shí)間為th;
步驟22.接收來自s的數(shù)據(jù)包,檢查數(shù)據(jù)包首部中tm字段的值,若tm=0,采用arqm接收并處理數(shù)據(jù)包;若tm=1,則按brm接收并處理數(shù)據(jù)包。
步驟23.結(jié)束。
數(shù)據(jù)包首部中的framecontrol字段中有3個(gè)位是保留位,可將這3個(gè)保留位中的1位定義為transmissionmechanism(tm)字段,tm字段用于指明本次傳輸采用何種數(shù)據(jù)傳輸機(jī)制。如圖5所示。
節(jié)點(diǎn)能量捕獲時(shí)間th的確定:以ph表示節(jié)點(diǎn)的能量捕獲功率,由friss傳輸方程可知:
其中,gs和gr分別表示供能點(diǎn)和節(jié)點(diǎn)的天線增益,λ是電磁波的波長,plost是路徑功率損耗,d是節(jié)點(diǎn)與供能點(diǎn)(蜂窩基站、wi-fi接入點(diǎn)或電視塔等)之間的距離,ps是供能點(diǎn)的發(fā)送功率,μ是rf信號(hào)轉(zhuǎn)換為電能的效率系數(shù)。
以e0表示節(jié)點(diǎn)的初始能量,以eth表示節(jié)點(diǎn)運(yùn)行的能量閾值,即只有當(dāng)s和r這兩個(gè)節(jié)點(diǎn)的剩余能量均大于或等于eth時(shí),s才開始傳輸數(shù)據(jù)。以τ表示節(jié)點(diǎn)從初始能量e0開始捕獲能量直至其剩余能量達(dá)到eth所持續(xù)的時(shí)間,利用式(1)可得:
τ=(eth-e0)/ph(2)
以τs和τr分別表示s和r的能量捕獲時(shí)間,那么,從s和r開始捕獲能量的時(shí)刻起直至它們的剩余能量均大于或等于eth所持續(xù)的時(shí)間為:
th=max{τs,τr}(3)
數(shù)據(jù)包中的數(shù)據(jù)塊長度的確定:以l表示每個(gè)數(shù)據(jù)塊的長度(單位
為比特),由圖2可知:
其中,lpacket表示數(shù)據(jù)包的總長度,lhead表示首部的長度,lhcs表示頭部校驗(yàn)序列hcs的長度,lfcs表示尾部的長度。
首部和數(shù)據(jù)塊傳輸成功的概率:以<s,r>表示s和r之間的通信鏈路,以b表示鏈路<s,r>的誤碼率,那么,s傳輸一個(gè)數(shù)據(jù)包給r時(shí),首部傳輸成功的概率q以及每個(gè)數(shù)據(jù)塊傳輸成功的概率p分別為:
p=(1-b)l(6)
數(shù)據(jù)包第k次傳輸成功的概率:以pk(x)表示包含x個(gè)數(shù)據(jù)塊的數(shù)據(jù)包第k次傳輸成功的概率,x=1,2,...,n;k=1,2,...,k,其中,k表示同一個(gè)數(shù)據(jù)包的最大傳輸次數(shù),結(jié)合式(5)和式(6)可得到求解pk(x)的遞歸式如下:
節(jié)點(diǎn)傳輸一個(gè)數(shù)據(jù)包成功的概率為:
以lk表示節(jié)點(diǎn)第k次傳輸平均發(fā)送的比特?cái)?shù),有:
其中,
節(jié)點(diǎn)傳輸一個(gè)數(shù)據(jù)包的平均時(shí)延:以r表示節(jié)點(diǎn)傳輸數(shù)據(jù)的速率,以la和ln分別表示ack和nack的長度,以tr表示重傳計(jì)時(shí)器,以t表示節(jié)點(diǎn)傳輸一個(gè)數(shù)據(jù)包的平均時(shí)延,有:
以m表示s向r傳輸數(shù)據(jù)包的總個(gè)數(shù),則鏈路<s,r>中的吞吐率為:
其中,lbcs表示bcs的長度。
使得鏈路<s,r>中的吞吐率最大化的優(yōu)化問題op_n如下:
上式中,nmin和nmax分別表示數(shù)據(jù)包分塊個(gè)數(shù)的下界和上界。
通過求解式(13)可得到數(shù)據(jù)包分塊個(gè)數(shù)的最優(yōu)值n*,當(dāng)n*=1時(shí),說明在當(dāng)前鏈路環(huán)境下,數(shù)據(jù)包的有效載荷分為1塊吞吐率最大,因此,可設(shè)置數(shù)據(jù)包頭部中tm字段為0,采用arqm進(jìn)行傳輸;當(dāng)n*>1時(shí),說明在當(dāng)前鏈路環(huán)境下,需要將數(shù)據(jù)包的有效載荷分為2塊及以上才能使吞吐率最大,那么,可設(shè)置tm字段為1,采用brm進(jìn)行傳輸。
nmin和nmax的確定:此外,在式(13)中,取nmin=1,表示數(shù)據(jù)包的分塊個(gè)數(shù)至少為1塊;同時(shí),為了保證數(shù)據(jù)包的傳輸效率,令每個(gè)數(shù)據(jù)塊的長度不小于數(shù)據(jù)包首部lhead加上首部校驗(yàn)序列l(wèi)hcs,可得到nmax的計(jì)算公式如下:
本實(shí)施例中,參數(shù)設(shè)置如表1所示。
表1
根據(jù)表1的參數(shù)值和式(14),可求得nmax=11。即在優(yōu)化問題op_n中,n∈[1,11],可通過枚舉法求解最優(yōu)分塊個(gè)數(shù)n*。
此外,分別設(shè)置鏈路<s,r>的誤碼率b=1000-1,2000-1,3000-1,4000-1,5000-1。s和r與供能點(diǎn)之間的距離在5至15米之間隨機(jī)選取,s向r傳輸?shù)臄?shù)據(jù)包個(gè)數(shù)m=5000,節(jié)點(diǎn)接收或發(fā)送1比特?cái)?shù)據(jù)的能耗為10nj。