何通能,任慶鑫,陳德富
(浙江工業(yè)大學(xué)信息工程學(xué)院,杭州 310023)
如圖1所示,LoRaWAN網(wǎng)絡(luò)架構(gòu)中包含了節(jié)點(diǎn)、網(wǎng)關(guān)、服務(wù)站和應(yīng)用者4個(gè)部分。網(wǎng)關(guān)和節(jié)點(diǎn)之間采用單跳星型網(wǎng)絡(luò)拓?fù)?節(jié)點(diǎn)之間交換數(shù)據(jù)必須通過網(wǎng)關(guān)。根據(jù)與網(wǎng)關(guān)之間的通訊方式的不同,LoRaWAN節(jié)點(diǎn)可以分為A、B、C 3種類型。LoRaWAN中的A類節(jié)點(diǎn)使用電池供電,是目前使用最多的節(jié)點(diǎn)類型,因此本文只對A類節(jié)點(diǎn)的網(wǎng)絡(luò)進(jìn)行數(shù)據(jù)發(fā)送功耗和延時(shí)的分析。
圖1 LoRaWAN網(wǎng)絡(luò)架構(gòu)
圖2給出A類的終端節(jié)點(diǎn)設(shè)備每次發(fā)送數(shù)據(jù)的通信時(shí)序。節(jié)點(diǎn)發(fā)送上行數(shù)據(jù)后會打開兩個(gè)持續(xù)時(shí)間很短的接收窗口來接收來自網(wǎng)關(guān)的下行數(shù)據(jù),LoRa節(jié)點(diǎn)通過這種方式實(shí)現(xiàn)雙向通信。由于只有在發(fā)送上行數(shù)據(jù)后的一小段時(shí)間內(nèi)接收服務(wù)器發(fā)送來的下行數(shù)據(jù),所有A類節(jié)點(diǎn)是LoRaWAN網(wǎng)絡(luò)中功耗最低的節(jié)點(diǎn)[16]。
圖2 A類節(jié)點(diǎn)發(fā)送數(shù)據(jù)時(shí)序
LoRaWAN中的數(shù)據(jù)類型可以分為兩種:一種是接受者準(zhǔn)確接收數(shù)據(jù)之后,必須回復(fù)確認(rèn)消息,當(dāng)沒有收到確認(rèn)消息,則發(fā)送者必須進(jìn)行數(shù)據(jù)重傳;另一種是發(fā)送者發(fā)送數(shù)據(jù)之后不需要接受者發(fā)送確認(rèn)回復(fù)。為了保證節(jié)點(diǎn)能夠保證數(shù)據(jù)準(zhǔn)確到達(dá)網(wǎng)關(guān),所有節(jié)點(diǎn)發(fā)送到網(wǎng)關(guān)的數(shù)據(jù),網(wǎng)關(guān)必須發(fā)送數(shù)據(jù)準(zhǔn)確接收回復(fù)。數(shù)據(jù)傳輸過程如圖2所示,第1接收窗口在發(fā)送完成后第RD1秒(±20 ms)開啟,在第1個(gè)接收窗口時(shí)期的下行傳輸使用的頻率、數(shù)據(jù)速率、信道與節(jié)點(diǎn)上行傳輸時(shí)使用的頻率、數(shù)據(jù)速率、信道相同。第2個(gè)接收窗口使用固定的頻率、數(shù)據(jù)速率和信道,該信道不會受到節(jié)點(diǎn)上行數(shù)據(jù)的影響,節(jié)點(diǎn)在第1個(gè)接收窗口沒有收到數(shù)據(jù)接收確認(rèn)回復(fù)的情況下,經(jīng)過第RD2秒(±20 ms)開啟它。這兩個(gè)接收窗口持續(xù)時(shí)間為1s。
在這一部分,首先提出網(wǎng)絡(luò)的相關(guān)的設(shè)定;然后根據(jù)LoRaWAN協(xié)議中A類節(jié)點(diǎn)設(shè)備發(fā)送數(shù)據(jù)的時(shí)序建立性馬爾科夫模型;最后,根據(jù)網(wǎng)絡(luò)中節(jié)點(diǎn)個(gè)數(shù)、信道數(shù)、頻段數(shù)等參數(shù)計(jì)算出馬爾科夫鏈中各狀態(tài)的概率。
網(wǎng)絡(luò)假設(shè)如下:①網(wǎng)絡(luò)中只有一個(gè)網(wǎng)關(guān),并且沒有未入網(wǎng)節(jié)點(diǎn)發(fā)送入網(wǎng)請求的干擾,只研究已入網(wǎng)節(jié)點(diǎn)發(fā)送數(shù)據(jù)的延時(shí)和功耗。②當(dāng)節(jié)點(diǎn)在同時(shí)接收到多個(gè)前導(dǎo)碼的時(shí)候,節(jié)點(diǎn)就認(rèn)為接收信息是錯(cuò)誤信息。③節(jié)點(diǎn)使用的數(shù)據(jù)速率為DR0,這樣可以保證數(shù)據(jù)傳輸距離最遠(yuǎn),鏈路質(zhì)量最好。④節(jié)點(diǎn)只有收到網(wǎng)關(guān)發(fā)送過來的確認(rèn)消息,才停止數(shù)據(jù)重傳。否則節(jié)點(diǎn)會重傳數(shù)據(jù)。
圖3描述了A類設(shè)備節(jié)點(diǎn)進(jìn)行一次成功數(shù)據(jù)發(fā)送的過程。根據(jù)數(shù)據(jù)成功發(fā)送的過程具體描述建立的馬爾科夫鏈。
圖3 LoRaWAN網(wǎng)絡(luò)A類節(jié)點(diǎn)數(shù)據(jù)發(fā)送的馬爾科夫鏈
節(jié)點(diǎn)發(fā)送數(shù)據(jù)之后進(jìn)入接收前導(dǎo)碼1(Recv 1)。在接收前導(dǎo)碼1下,節(jié)點(diǎn)將有可能進(jìn)入兩種狀態(tài):第1種是如果節(jié)點(diǎn)在接收窗口1沒有檢測到前導(dǎo)碼,會在節(jié)點(diǎn)發(fā)送數(shù)據(jù)之后的第RD2秒打開接收前導(dǎo)碼2(Recv 2);如果檢測到前導(dǎo)碼,節(jié)點(diǎn)將進(jìn)入核對前導(dǎo)碼1狀態(tài)(Preamb 1)。節(jié)點(diǎn)進(jìn)入核對前導(dǎo)碼1狀態(tài)(Preamb 1)后,會有可能進(jìn)入3種狀態(tài):第1種情況,當(dāng)節(jié)點(diǎn)檢測前導(dǎo)碼發(fā)現(xiàn)前導(dǎo)碼錯(cuò)誤,會在節(jié)點(diǎn)發(fā)送數(shù)據(jù)之后的第RD2秒打開接收前導(dǎo)碼2(Recv 2);第2種情況,由于前導(dǎo)碼過長,會使得在接收窗口1和接收窗口2的時(shí)間內(nèi)沒有接收完,將會直接進(jìn)入等待狀態(tài),在下一個(gè)數(shù)據(jù)發(fā)送周期開啟數(shù)據(jù)重傳過程;第3種情況,前導(dǎo)接收正確,此時(shí)節(jié)點(diǎn)會進(jìn)入有效數(shù)據(jù)接收核對狀態(tài)1(Check 1)。當(dāng)進(jìn)入有效數(shù)據(jù)接收核對狀態(tài)1(Check 1)后,節(jié)點(diǎn)下一步會有3種可能的狀態(tài):第1種情況,數(shù)據(jù)接收錯(cuò)誤,節(jié)點(diǎn)會在發(fā)送數(shù)據(jù)的第RD2秒進(jìn)入接收前導(dǎo)碼2(Recv 2);第2種情況,有效數(shù)據(jù)包太長,會使得節(jié)點(diǎn)在接收窗口1和接收窗口2的時(shí)間內(nèi)沒有接收完,這是節(jié)點(diǎn)將會直接進(jìn)入等待狀態(tài)(Wait),在下一個(gè)數(shù)據(jù)發(fā)送周期開啟數(shù)據(jù)重傳過程;第3種情況,接收數(shù)據(jù)正確,節(jié)點(diǎn)進(jìn)入發(fā)送成功狀態(tài)(Finish),不需打開接收前導(dǎo)碼2(Recv 2)。
在上面描述符合打開接收前導(dǎo)碼2(Recv 2)的情況下,節(jié)點(diǎn)在發(fā)送數(shù)據(jù)之后的第RD2秒打開接收前導(dǎo)碼2(Recv 2),當(dāng)進(jìn)入接收前導(dǎo)碼2(Recv 2),節(jié)點(diǎn)下一步會有兩種可能狀態(tài):第1種情況是在接收窗口2的期間內(nèi)沒有接收到前導(dǎo)碼,此時(shí)節(jié)點(diǎn)將會進(jìn)入等待狀態(tài)(Wait),在下一個(gè)數(shù)據(jù)發(fā)送周期開啟數(shù)據(jù)重傳過程;第2種情況是檢測到前導(dǎo)碼,此時(shí)節(jié)點(diǎn)將進(jìn)入核對前導(dǎo)碼2狀態(tài)(Preamb 2)。當(dāng)節(jié)點(diǎn)進(jìn)入核對前導(dǎo)碼2狀態(tài)(Preamb 2),節(jié)點(diǎn)下一步會有兩種可能狀態(tài):第1種情況是由于前導(dǎo)碼接收錯(cuò)誤或者前導(dǎo)碼傳輸時(shí)間大于接收窗口2的持續(xù)時(shí)間,節(jié)點(diǎn)進(jìn)入等待狀態(tài)(Wait),在下一個(gè)數(shù)據(jù)發(fā)送周期開啟數(shù)據(jù)重傳過程;第2種情況前導(dǎo)碼正確,節(jié)點(diǎn)將進(jìn)入有效數(shù)據(jù)接收核對狀態(tài)2(Check 2)。當(dāng)進(jìn)入有效數(shù)據(jù)接收核對狀態(tài)2(Check 2)后,節(jié)點(diǎn)下一步會有兩種可能狀態(tài):第1種情況由于有效數(shù)據(jù)接收錯(cuò)誤,或者網(wǎng)關(guān)回復(fù)數(shù)據(jù)包過長導(dǎo)致接收窗口2的持續(xù)時(shí)間沒有接收完成,這樣使得節(jié)點(diǎn)進(jìn)入等待態(tài)(Wait),開啟下一次重傳;第2種情況節(jié)點(diǎn)正確接收網(wǎng)關(guān)的回復(fù),此時(shí)節(jié)點(diǎn)進(jìn)入發(fā)送成功狀態(tài)(Finish),不再開啟重傳。
設(shè)本網(wǎng)絡(luò)的相關(guān)參數(shù)如下:nA表示入網(wǎng)絡(luò)的節(jié)點(diǎn)數(shù)目;nSB表示頻段數(shù)目;nC表示每個(gè)頻段的信道數(shù);α表示鏈路質(zhì)量(α∈[0,1]);γ表示網(wǎng)關(guān)具體在哪個(gè)接收窗口回復(fù)數(shù)據(jù),當(dāng)γ=1表示網(wǎng)關(guān)在節(jié)點(diǎn)第1接收窗口發(fā)送確認(rèn)回復(fù),γ=0表示在網(wǎng)關(guān)在節(jié)點(diǎn)的第二接收窗口發(fā)送確認(rèn)回復(fù);δ表示入網(wǎng)節(jié)點(diǎn)的發(fā)送數(shù)據(jù)占空比(δ=1%),即數(shù)據(jù)發(fā)送所需的時(shí)間與數(shù)據(jù)發(fā)送周期之比,LoRaWAN協(xié)議規(guī)定A類節(jié)點(diǎn)在一個(gè)頻段內(nèi)發(fā)送數(shù)據(jù)的占空比不能超過1%,這樣能夠保證一個(gè)節(jié)點(diǎn)的電池能夠使用10年以上;τAδnSB代表的是網(wǎng)絡(luò)中的數(shù)據(jù)流量,其中τA∈[0,1]代表的是網(wǎng)絡(luò)的飽和度,當(dāng)τA=1時(shí)代表網(wǎng)絡(luò)飽和。由此得到如下概率。
一個(gè)入網(wǎng)節(jié)點(diǎn)在一個(gè)數(shù)據(jù)發(fā)送周期內(nèi)不占用給定信道發(fā)送數(shù)據(jù)的概率qA為:
(1)
則一個(gè)入網(wǎng)節(jié)點(diǎn)在數(shù)據(jù)發(fā)送周期內(nèi)占用給定的信道上發(fā)送數(shù)據(jù)的概率為:
1-qA
(2)
由于節(jié)點(diǎn)發(fā)送完數(shù)據(jù),一定會打開接收窗口,所以從發(fā)送數(shù)據(jù)狀態(tài)(Senddata)到進(jìn)入接收前導(dǎo)碼1(Recv 1)概率ps,r1為:
ps,r1=1
(3)
若網(wǎng)關(guān)和所有入網(wǎng)節(jié)點(diǎn)不占用給定信道發(fā)送數(shù)據(jù),則節(jié)點(diǎn)將檢測不到前導(dǎo)碼(無論網(wǎng)關(guān)還是節(jié)點(diǎn)發(fā)送數(shù)據(jù)時(shí),前導(dǎo)碼是一樣的)。故節(jié)點(diǎn)在第1個(gè)接收窗口沒有檢測到前導(dǎo)碼(即從Recv 2進(jìn)入Recv 2)的概率pr1,r2可以表示為:
pr1,r2=(1-αγqAnA)qAnA
(4)
式中:αγqAnA表示網(wǎng)關(guān)在第1個(gè)接收窗口在給定信道發(fā)送數(shù)據(jù)的概率,qAnA表示入網(wǎng)節(jié)點(diǎn)在給定信道沒有發(fā)送數(shù)據(jù)給網(wǎng)關(guān)的概率。
節(jié)點(diǎn)接收前導(dǎo)碼1到核對前導(dǎo)碼1(從Recv 1到Preamb 1狀態(tài))的概率pr1,p1為:
pr1,p1=1-pr1,r2
(5)
pp1,w代表節(jié)點(diǎn)從核對前導(dǎo)碼1到達(dá)等待狀態(tài)的概率。由于兩個(gè)接收窗口之間的時(shí)間間隔為1 s,即使使用擴(kuò)頻因子SF12的情況下發(fā)送前導(dǎo)碼的消延時(shí)間最長為401.41 ms。因此,節(jié)點(diǎn)不可能因?yàn)榻邮涨皩?dǎo)碼超時(shí)從核對前導(dǎo)碼1狀態(tài)(Preamb 1)進(jìn)入等待狀態(tài)(Wait),所以pp1,w為:
pp1,w=0
(6)
設(shè)P(x=1)代表節(jié)點(diǎn)接收到一個(gè)前導(dǎo)碼的概率。前導(dǎo)碼由兩種情況組成:網(wǎng)關(guān)發(fā)出數(shù)據(jù)確認(rèn)包攜帶的前導(dǎo)碼和入網(wǎng)節(jié)點(diǎn)向網(wǎng)關(guān)發(fā)送數(shù)據(jù)的前導(dǎo)碼。則P(x=1)可以表示為:
P(x=1)=αγqAnAqAnA+
(1-αγqAnA)qAnA-1(1-qA)nA
(7)
式中:αγqAnAqAnA表示網(wǎng)關(guān)發(fā)出數(shù)據(jù)確認(rèn)包的概率;(1-αγqAnA)qAnA-1(1-qA)nA表示入網(wǎng)節(jié)點(diǎn)向網(wǎng)關(guān)發(fā)送數(shù)據(jù)的概率。則節(jié)點(diǎn)接收到一個(gè)正確的前導(dǎo)碼,進(jìn)而進(jìn)入有效數(shù)據(jù)接收核對狀態(tài)1的概率pp1,c1可以表示為:
pp1,c1=P(x=1|x≥1)=P(x=1)/P(x≥1)
=P(x=1)/pr1,p1
(8)
節(jié)點(diǎn)進(jìn)入第2次接收流程的概率pp1,r2可以表示為:
pp1,r2=1-pp1,w-pp1,c1
(9)
pc1,f表示節(jié)點(diǎn)從數(shù)據(jù)核對狀態(tài)1轉(zhuǎn)移到發(fā)送成功的概率為:
pc1,f=αγqAnAqAnAα
(10)
式中:αγqAnAqAnA表示網(wǎng)關(guān)發(fā)送數(shù)據(jù)準(zhǔn)確接收回復(fù),α表示網(wǎng)絡(luò)中的鏈路質(zhì)量。
pc1,r2表示由于網(wǎng)絡(luò)的鏈路質(zhì)量原因節(jié)點(diǎn)接收數(shù)據(jù)確認(rèn)回復(fù)的過程中產(chǎn)生丟包,由此節(jié)點(diǎn)從數(shù)據(jù)核對狀態(tài)1進(jìn)入接收前導(dǎo)碼2狀態(tài)的轉(zhuǎn)移概率。經(jīng)過計(jì)算,當(dāng)設(shè)置采用數(shù)據(jù)傳輸速率為DR0,擴(kuò)頻因子SF12時(shí),數(shù)據(jù)接收確認(rèn)回復(fù)需要的時(shí)間為991.23 ms,持續(xù)時(shí)間沒有超出兩個(gè)窗口之間的接收間隔;而對于本節(jié)點(diǎn)如果接收到其他節(jié)點(diǎn)發(fā)送到網(wǎng)關(guān)的數(shù)據(jù)時(shí),由于設(shè)置每次傳輸?shù)淖止?jié)數(shù)比較大,所以發(fā)送時(shí)間都會超過1 s,使得本節(jié)點(diǎn)沒有時(shí)間打開接收前導(dǎo)碼2,所以得到pc1,r2和pc1,w為:
pc1,r2=αγqAnAqAnA(1-α)
(11)
pc1,w=1-pc1,r2-pc1,f
(12)
pr2,p2表示節(jié)點(diǎn)在接收前導(dǎo)碼2到核對前導(dǎo)碼2(從Recv 2到Preamb 2狀態(tài))的轉(zhuǎn)移概率。根據(jù)LoRaWAN協(xié)議,網(wǎng)關(guān)在第二接收窗口發(fā)送數(shù)據(jù)所使用的信道是固定的且不會有其他節(jié)點(diǎn)不得占用,因此pr2,p2僅僅取決于網(wǎng)關(guān)準(zhǔn)確接收到該節(jié)點(diǎn)發(fā)送過來的數(shù)據(jù)(概率為:αqAnA)且網(wǎng)關(guān)在第二接收進(jìn)行回復(fù)(概率為:1-γ)。所以pr2,p2可以表示為:
pr2,p2=α(1-γ)qAnA
(13)
則前導(dǎo)碼傳輸過程中出錯(cuò)的概率可以表示為:
pr2,w=1-pr2,p2
(14)
pp2,c2表示節(jié)點(diǎn)核對前導(dǎo)碼2狀態(tài)進(jìn)入有效數(shù)據(jù)接收核對狀態(tài)2的概率。由于只允許網(wǎng)關(guān)發(fā)送,因此不可能接收到帶有入網(wǎng)請求或是節(jié)點(diǎn)發(fā)送數(shù)據(jù)的前導(dǎo)碼,可以得到:
pp2,c2=1
(15)
只有網(wǎng)關(guān)在第2個(gè)接收窗口的固定信道上發(fā)送數(shù)據(jù),而且網(wǎng)關(guān)只對準(zhǔn)確接收的數(shù)據(jù)進(jìn)行回復(fù)。由此得到pc2,f(有效數(shù)據(jù)接收核對狀態(tài)2進(jìn)入發(fā)送成功狀態(tài)的概率)和pc2,w(有效數(shù)據(jù)接收核對狀態(tài)2進(jìn)入等待態(tài)的概率)如下:
pp2,w=0
(16)
pc2,f=α
(17)
pc2,w=1-α
(18)
pw,s表示入網(wǎng)節(jié)點(diǎn)因?yàn)闆]有收到網(wǎng)關(guān)回復(fù)從等待態(tài)到發(fā)送數(shù)據(jù)態(tài)的概率:
pw,s=1
(19)
根據(jù)上面的描述可以得到節(jié)點(diǎn)數(shù)據(jù)的發(fā)送是一個(gè)吸收馬爾科夫過程。在這個(gè)模型中含有一個(gè)吸收態(tài)發(fā)送成功態(tài)(Finish);8個(gè)非吸收態(tài),分別是:發(fā)送數(shù)據(jù)(Senddata),接收前導(dǎo)碼1(Recv 1),核對前導(dǎo)碼1(Preamb 1),有效數(shù)據(jù)接收核對狀態(tài)1(Check 1),接收前導(dǎo)碼2(Recv 2),核對前導(dǎo)碼2(Preamb 2),有效數(shù)據(jù)接收核對狀態(tài)2(Check 2),等待態(tài)(Wait)。由此得到吸收馬爾科夫鏈的轉(zhuǎn)移矩陣P和其標(biāo)準(zhǔn)形式P′如下:
(20)
(21)
式中:I是一個(gè)1×1的單位矩陣,0是1×8的零矩陣,R是8×1的非零矩陣,Q是一個(gè)8×8的矩陣。吸收鏈達(dá)到吸收態(tài)的概率為1,也就是最終進(jìn)入發(fā)送成功狀態(tài)(即當(dāng)n→∞時(shí),Qn→0)。在吸收鏈的標(biāo)準(zhǔn)形式P′中,矩陣I-Q具有可逆矩陣N,且N=(I-Q)-1=I+Q+Q2+…。在矩陣N中Ni,j表示從非吸收狀態(tài)i轉(zhuǎn)移到非吸收狀態(tài)j平均轉(zhuǎn)移次數(shù)。由此可以得到從一個(gè)非吸收態(tài)到達(dá)吸收態(tài)過程中所要經(jīng)過各非吸收態(tài)的概率為V=CsN;這里Cs取1s表示一個(gè)行向量,向量的第1項(xiàng)為1,其他項(xiàng)為0,代表初始狀態(tài)為節(jié)點(diǎn)發(fā)送數(shù)據(jù),那么V中的每一項(xiàng)代表從數(shù)據(jù)發(fā)送狀態(tài)(Senddata)到達(dá)數(shù)據(jù)成功發(fā)送狀態(tài)(Finish)經(jīng)過各吸收狀態(tài)的概率。根據(jù)上面描述數(shù)據(jù)發(fā)送過程中的延時(shí)為VD,其中D表示一個(gè)列向量,每一項(xiàng)表示相應(yīng)非吸收狀態(tài)的延時(shí)時(shí)間。Ds表示開始數(shù)據(jù)到第1個(gè)接收窗口打開的時(shí)間;Dr1表示第1個(gè)接收窗口接收前導(dǎo)碼的時(shí)間;第1個(gè)接收窗口核對前導(dǎo)碼的發(fā)送時(shí)間Dp1=0,在這里由于前導(dǎo)碼的核對很短的時(shí)間,可近似為0;Dc1表示接收數(shù)據(jù)幀減去前導(dǎo)碼接收的時(shí)間加上在第2個(gè)接收窗口打開之前的時(shí)間;Dr2表示第2個(gè)接收窗口接收前導(dǎo)碼的時(shí)間;同理第2個(gè)接收窗口核對前導(dǎo)碼時(shí)間Dp2等于0;Dc2表示第2個(gè)接收窗口接收數(shù)據(jù)幀減去前導(dǎo)碼接收的時(shí)間;Dw表示由于占空比的限制的空閑時(shí)間;Df=0,表示數(shù)據(jù)成功發(fā)送,當(dāng)節(jié)點(diǎn)收到網(wǎng)關(guān)回復(fù)的接收數(shù)據(jù)確認(rèn)消息之后,就不在進(jìn)行此數(shù)據(jù)包發(fā)送。數(shù)據(jù)發(fā)送過程中的能耗VE,E的每一項(xiàng)表示相應(yīng)非吸收狀態(tài)的能耗。
本文的驗(yàn)證測試時(shí),節(jié)點(diǎn)采用SX1278芯片的相關(guān)參數(shù)展開的,這個(gè)芯片是Semtech公司專門為LoRaWAN節(jié)點(diǎn)進(jìn)行通信設(shè)計(jì)的射頻芯片。網(wǎng)關(guān)采用的是SX1301芯片,該芯片是Semtech專門為LoRaWAN網(wǎng)關(guān)進(jìn)行通信設(shè)計(jì)的射頻芯片,含有8(IF0~I(xiàn)F7通道)個(gè)可單獨(dú)控的制LoRa調(diào)制解調(diào)信道,每個(gè)信道的帶寬固定為125 kHz,每個(gè)信道可以設(shè)置中心頻率,可以同時(shí)進(jìn)行8個(gè)LoRaWAN節(jié)點(diǎn)數(shù)據(jù),能夠進(jìn)行多信道、多頻段通信。在LoRaWAN協(xié)議中,應(yīng)該將網(wǎng)關(guān)的所有LoRa信道打開,即網(wǎng)絡(luò)中信道總數(shù)不變。通過查詢SX1278數(shù)據(jù)手冊得到:芯片的發(fā)射電流87 mA(+17 dBm),接收電流10.8 mA,空閑電流0.2 μA;電壓為3.3 V[17]。
根據(jù)上面的分析得到兩個(gè)列向量D和E。其中D中的每一項(xiàng)表示節(jié)點(diǎn)發(fā)送數(shù)據(jù)過程經(jīng)過的非吸收態(tài)對應(yīng)的時(shí)間,E中的每一項(xiàng)對應(yīng)在非吸收態(tài)的功耗;非吸收態(tài)依次為:發(fā)送數(shù)據(jù)(Senddata),接收前導(dǎo)碼1(Recv 1),核對前導(dǎo)碼1(Preamb 1),有效數(shù)據(jù)接收核對狀態(tài)1(Check 1),接收前導(dǎo)碼 2(Recv 2),核對前導(dǎo)碼2(Preamb 2),有效數(shù)據(jù)接收核對狀態(tài)2(Check 2),等待態(tài)(Wait)。在這里假設(shè)節(jié)點(diǎn)發(fā)送數(shù)據(jù)負(fù)載為30 byte,即FRMPayload為30 byte;使用隱式報(bào)頭;且不需要傳送MAC命令,即FOpts為0 byte。假設(shè)網(wǎng)關(guān)發(fā)送的數(shù)據(jù)沒有FRMPayload,只是對數(shù)據(jù)接收進(jìn)行一次簡單的確認(rèn)回復(fù)。由此根據(jù)協(xié)議得到上行數(shù)據(jù)為46 byte,下行數(shù)據(jù)為12 byte。在LoRaWAN協(xié)議中,本文設(shè)置第1個(gè)接收窗口打開時(shí)間為發(fā)送數(shù)據(jù)5 s后打開,由此得到各段的延時(shí)如下:
D=(6.873 0.40 0 0.60 0.40 0 0.384 38.016)T
(22)
E=(0.538 0.014 0 0.014 0.014 0 0.014 2.50-5)T
(23)
入網(wǎng)節(jié)點(diǎn)發(fā)送數(shù)據(jù)占空比δ表示在一個(gè)頻段內(nèi),節(jié)點(diǎn)數(shù)據(jù)發(fā)送時(shí)間與數(shù)據(jù)發(fā)送周期之比。LoRaWAN協(xié)議規(guī)定占空比δ不能超過1%。為了增加節(jié)點(diǎn)發(fā)送數(shù)據(jù)的時(shí)間,盡可能的減少網(wǎng)絡(luò)延時(shí),本文所有仿真實(shí)驗(yàn)均采用LoRaWAN協(xié)議中允許占空比的最大。本文討論只含有一個(gè)網(wǎng)關(guān)的LoRaWAN網(wǎng)絡(luò),采用的SX1301芯片能夠提供8個(gè)獨(dú)立控制LoRa信道,為了盡可能降低節(jié)點(diǎn)發(fā)送數(shù)據(jù)的延時(shí)和功耗,將網(wǎng)關(guān)的8個(gè)LoRa信道全部打開。
圖4和圖5顯示了鏈路質(zhì)量α和確認(rèn)回復(fù)γ對節(jié)點(diǎn)成功發(fā)送一組數(shù)據(jù)的延時(shí)和功耗的影響。鏈路質(zhì)量α用數(shù)據(jù)傳輸?shù)膩G包率來衡量,對于城市環(huán)境來說,由于密集建筑物和復(fù)雜的電磁環(huán)境相應(yīng)的鏈路質(zhì)量會差;對于空曠的農(nóng)村或者牧場等環(huán)境,不確定的干擾因素少,鏈路質(zhì)量好。γ表示網(wǎng)關(guān)在第幾個(gè)接收窗口發(fā)送數(shù)據(jù)接收確認(rèn)回復(fù):γ=1表示網(wǎng)關(guān)在第1個(gè)接收窗口發(fā)送數(shù)據(jù)接收確認(rèn)回復(fù);γ=0表示網(wǎng)關(guān)在第2個(gè)接收窗口發(fā)送數(shù)據(jù)接收確認(rèn)回復(fù)。設(shè)置頻段內(nèi)信道數(shù)nC=8,頻段數(shù)nSB=1。
圖4 鏈路質(zhì)量和確認(rèn)回復(fù)時(shí)間對節(jié)點(diǎn)數(shù)據(jù)傳送延時(shí)影響
圖5 鏈路質(zhì)量和確認(rèn)回復(fù)時(shí)間對節(jié)點(diǎn)數(shù)據(jù)傳送能耗影響
從圖4和圖5中可以看出,當(dāng)網(wǎng)絡(luò)中節(jié)點(diǎn)數(shù)目固定時(shí),若γ=0,則網(wǎng)關(guān)在第2個(gè)接收窗口(固定的并且只有網(wǎng)關(guān)使用該信道)發(fā)送數(shù)據(jù)接收確認(rèn)回復(fù),因而確認(rèn)包不會被任何節(jié)點(diǎn)干擾,導(dǎo)致網(wǎng)絡(luò)數(shù)據(jù)傳輸成功率更高,因而節(jié)點(diǎn)延時(shí)和能耗明顯比γ=1時(shí)更小;隨著節(jié)點(diǎn)數(shù)目的增加(20個(gè)、40個(gè)和60個(gè)節(jié)點(diǎn)),γ=1的網(wǎng)絡(luò)延時(shí)和能耗的增幅比γ=0的網(wǎng)絡(luò)更加明顯。這主要是由于網(wǎng)關(guān)在節(jié)點(diǎn)的第1個(gè)接收窗口回復(fù)確認(rèn)消息會受到節(jié)點(diǎn)的干擾,當(dāng)節(jié)點(diǎn)數(shù)量增多干擾越大。還可以發(fā)現(xiàn)鏈路質(zhì)量相對較差(0.9~0.92)時(shí),γ=0 且60個(gè)節(jié)點(diǎn)的網(wǎng)絡(luò)中,節(jié)點(diǎn)發(fā)送數(shù)據(jù)的延時(shí)和功耗比γ=1且20個(gè)節(jié)點(diǎn)的網(wǎng)絡(luò)少。
圖6和圖7表示節(jié)點(diǎn)數(shù)nA和頻段數(shù)nSB對節(jié)點(diǎn)成功發(fā)送數(shù)據(jù)的延時(shí)和功耗的影響。在中國地區(qū)有兩個(gè)頻段可以部署LoRaWAN網(wǎng)絡(luò),網(wǎng)關(guān)的8個(gè)LoRa信道全部打開,則當(dāng)只有一個(gè)頻段(nSB=1)時(shí),則頻段內(nèi)信道數(shù)nC=8;當(dāng)兩個(gè)頻段(nSB=2)時(shí),則每個(gè)頻段信道數(shù)nC=4,這樣的目的是為了處在不同頻段的節(jié)點(diǎn)有相同的信道資源。從前面的分析可知,當(dāng)網(wǎng)關(guān)在第二窗口確認(rèn)回復(fù)時(shí)節(jié)點(diǎn)性能更好,因此這里設(shè)置γ=0。
圖6 節(jié)點(diǎn)數(shù)和頻段數(shù)對節(jié)點(diǎn)數(shù)據(jù)傳送延時(shí)影響
圖7 節(jié)點(diǎn)數(shù)和頻段數(shù)對節(jié)點(diǎn)數(shù)據(jù)傳送能耗影響
從圖6和圖7中可以看出當(dāng)鏈路質(zhì)量相同時(shí),在2個(gè)頻段的網(wǎng)絡(luò)中,節(jié)點(diǎn)發(fā)送數(shù)據(jù)的延時(shí)和功耗要相對較大。這是由于改變頻段數(shù)增加,網(wǎng)關(guān)只能提供8個(gè)信道,每個(gè)頻段的信道數(shù)減少,數(shù)據(jù)發(fā)生沖突的概率增加,因此延時(shí)和功耗就會增加。通過上圖還可以看出,節(jié)點(diǎn)數(shù)量的增加,節(jié)點(diǎn)之間數(shù)據(jù)碰撞的機(jī)會增加,相應(yīng)地延時(shí)和功耗增加。
本文通過馬爾科夫鏈建立模型,然后進(jìn)行MATLAB進(jìn)行仿真,得到網(wǎng)絡(luò)中總節(jié)點(diǎn)數(shù)目、網(wǎng)關(guān)發(fā)送數(shù)據(jù)接收確認(rèn)回復(fù)的時(shí)間、頻段數(shù)等參數(shù)對LoRaWAN網(wǎng)絡(luò)中節(jié)點(diǎn)發(fā)送數(shù)據(jù)延時(shí)與能耗的影響。通過仿真計(jì)算出節(jié)點(diǎn)發(fā)送數(shù)據(jù)的延時(shí)和功耗,這對于衡量網(wǎng)絡(luò)的實(shí)時(shí)性以及節(jié)點(diǎn)電池使用壽命具有很強(qiáng)的參考性;通過圖4和圖5可以看出,在實(shí)際進(jìn)行LoRaWAN網(wǎng)絡(luò)部署時(shí),應(yīng)該設(shè)置將網(wǎng)關(guān)回復(fù)確認(rèn)消息的時(shí)間設(shè)置在節(jié)點(diǎn)的第2個(gè)接收窗口;通過圖6和圖7可以看出,為了減少節(jié)點(diǎn)發(fā)送數(shù)據(jù)的延時(shí)和能耗,盡量將網(wǎng)關(guān)的8個(gè)信道,設(shè)置在一個(gè)頻段內(nèi),這樣可以減少節(jié)點(diǎn)發(fā)送數(shù)據(jù)時(shí)的信道沖突,可以部署在CN470~CN510頻段的80~87或者88~95信道。本文只考慮了網(wǎng)絡(luò)中單個(gè)網(wǎng)關(guān)的情況,并且網(wǎng)絡(luò)中節(jié)點(diǎn)只有A類設(shè)備,然而在實(shí)際應(yīng)用中網(wǎng)絡(luò)中會有多個(gè)網(wǎng)關(guān)并且有多重節(jié)點(diǎn)設(shè)備,針對以上條件對數(shù)據(jù)發(fā)送延時(shí)和功耗的影響將是本文以后研究的重點(diǎn)。