曲 藝,趙榮陽
(北部灣大學電子與信息工程學院,廣西 欽州 535000)
物聯網屬于一種具有動態性、全球性的網絡基礎結構,物聯網實體包含子系統、單個或虛擬物體等物體。物聯網實體間可以互相通信,實體和環境間以交換感知的形式實現物聯網數據信息交互[1]。物聯網數據資源具備十分豐富的信息,在物聯網環境下,實體目標生成與存儲的大量數據必須具備一種合理的轉儲方法,以此合理管理物聯網數據。針對物聯網數據的轉儲問題,目前還不存在較多的研究資料,相關研究人員大多以數據存儲為研究核心,如文獻[2]、文獻[3]提出的分布式計算環境下的柵格數據存儲方法、基于HBase的QAR數據存儲方法,雖對數據存儲問題存在各自的獨特見解,且具有較好的存儲性能,但在數據轉儲方面的應用,還有待深究。
本文提出基于改進阻塞判別算法的物聯網數據轉儲方法,通過高效率、較為穩定的轉儲模式,優化物聯網數據轉儲的效果。
如果用戶在轉儲物聯網數據時,沒有充分顧及物聯網數據的彈性、數據應用概率、數據粒度等因素,將在轉儲過程里發生資源調度受阻的情況,此時便不能實現物聯網數據快速轉儲[4,5]。所以本文將物聯網數據應用彈性、數據粒度實施全面分析,提出基于改進阻塞判別的物聯網數據轉儲狀態判斷方法,以此判斷物聯網數據轉儲節點是否存在阻塞。
針對隨機1個轉儲節點來講,需要對目前傳輸的物聯網數據應用概率、數據粒度實施預估處理,以此完成物聯網數據的轉儲[6]。此過程分為數據調度控制、服務質量控制兩步。
1)根據物聯網數據彈性H(x)與數據應用概率Q(x)實施數據調度控制
物聯網數據在轉儲節點中的操作,與物聯網數據彈性H(x)與數據應用概率Q(x)存在直接聯系。轉儲點在時刻t0接收物聯網數據的過程里,物聯網數據流的分布指數是泊松指數α,物聯網數據應用概率Q(x)符合統一泊松指數的分布,先后存入某轉儲節點的物聯網數據資源間均屬于獨立模式。所以物聯網數據彈性H(x)的期望F[H(x)]如式(1)所示

(1)
式中,H(x)的一階矩與二階矩依次是F|H(x)|、F|H(x)2|。
物聯網數據應用概率Q(x)的期望FQ(x)和F[H(x)]存在導數關系,則

(2)
式(2)和式(1)的參數含義一致。如果式(1)運算的期望為非正值,表示轉儲時物聯網數據轉存流暢度和阻塞度存在反比例關系,阻塞度較高,則流暢度較低,物聯網數據轉儲不能夠持續。如果式(1)的期望為非負值,那么必須實施服務質量控制,調節物聯網數據粒度完成物聯網轉儲的持續進行[7-9]。
2)根據粒度率q′實施服務質量控制
因為物聯網數據轉儲的堵塞度和式(1)運算的期望值存在負相關關系,尤其是粒度較小時,式(1)運算的期望值會變成正值,所以通過粒度率q′控制物聯網數據彈性H(x),保證整個物聯網數據轉儲過程可以持續進行。
H(x)和q′存在負相關關系,所以能夠通過此關系保證q′數值不出現變動。則H(x)和q′的關系描述為
H(x)?q′
(3)
式中,H(x)?q′的期望是F[H(x)?q′],此期望值符合時間函數關系,數學表達式是
F[H(x)?q′]=F[H(x)]
(4)
設置目前物聯網數據轉儲點接收的粒度率是q′,那么后續時間段中,H(x)符合式(5)關系
H(x)=F[H(x)]+F[H(x)?q′]
(5)
因為轉儲點的帶寬存在一定約束,H(x)被轉儲梯度有效覆蓋,所以針對隨機時間段Δt而言,對應的覆蓋關系ΔH(x)是

(6)
其中,Δ是轉儲梯度。所獲取的物聯網數據轉儲強度指數Δα符合式(7)條件

(7)
對應的轉儲梯度Δ和H(x)必須符合式(8)條件,才可以實施轉儲。

(8)
綜上所述,物聯網數據轉儲流程是:
第一步:在物聯網數據開始轉儲時,只有準確提取物聯網數據的彈性、數據應用概率、數據粒度后才能夠實施后續操作;
第二步:轉儲點獲取物聯網數據轉儲請求后,便可進入第三步;
第三步:如果物聯網數據轉儲的請求狀態為持續性,便可進入第四步;
第四步:運算轉儲梯度、轉儲強度指數,若結果符合式(8)條件,則轉儲節點不存在阻塞,物聯網數據便可持續轉儲。
通過2.1小節判斷物聯網數據在轉儲節點可持續轉儲后,因物聯網數據在轉儲時,鏈路穩定性、傳輸性能有待優化,本文使用基于超寬帶集中管控機制的物聯網數據轉儲效果優化算法,優化物聯網數據轉儲節點在接收物聯網數據時的接收鏈路穩定性與傳輸性能。該算法的步驟分為轉儲區域分割、轉儲區域固定、轉儲鏈路穩定。
2.2.1 轉儲區域分割
物聯網數據轉儲時,不是一次性存入轉儲節點里,也不是通過簡單的鏈路選擇機制便可以選取一個合理的鏈路[10]。基于超寬帶集中管控機制的物聯網數據轉儲效果優化算法需要對轉儲節點實施區域分割,區域分割的具體步驟如下;
1)先將物聯網網絡里功率最為顯著的轉儲節點實施篩選,之后在數據傳輸周期中提取分割的轉儲節點(下文簡稱分割節點)能量閾值F(n)

(9)
式中,分割節點持續接受物聯網數據存儲的概率是Q(H);數據傳輸的批次是s;分割節點在轉儲區域分割時額外耗損的能量是F(cost);mod函數是一個求余函數。
2)提取分割節點的冗余能量

(10)
式中,第s-2、s-1輪轉儲后分割節點的冗余能量是Fks-2、Fks-1;物聯網網絡中轉儲節點數目是g-num。
3)各個物聯網數據轉儲周期中都執行第1)步驟,如果分割節點的冗余能量大于式(9)的能量閾值,表示此轉儲節點能夠繼續接受物聯網數據;反之依次遞補,轉儲區域分割停止。
2.2.2 轉儲區域固定
轉儲區域分割后,必須對分割節點和區域中剩下節點間關系實施梳理,以此建立固定的轉儲區域[11]。具體流程是:
1)轉儲節點的閾值設置
為了保證轉儲節點可以實施更新狀態,必須在區域分割流程停止后,根據冗余能量最大的準則篩選轉儲節點。針對隨機一個轉儲節點來講,在第s批次物聯網數據轉儲前,仍舊接收物聯網數據轉儲的閾值Qs是

(11)
2)映射距離因子的設置
顧及隨機1個物聯網節點h和轉儲節點的物理距離e顯著,耗損強度也顯著,為此,設置一種映射距離因子β(h)

(12)
式中,j2代表轉儲區域中轉儲節點間的距離。
另外,針對隨意一個轉儲節點h來講,被剔除轉儲節點身份的概率Q(kill)是
Q(kill)=φQs+φβ(h)
(13)
式中,φ、φ表示概率因子,兩者之和是1。
3)轉儲節點更新。如果某個節點被納入轉儲區域,便立即通知轉儲區域中所有節點,通過反向代理模式實施區域結構維護。
2.2.3 鏈路穩定
因為物聯網節點間數據轉儲均通過轉儲節點實現,如果轉儲節點間數據傳輸鏈路存在抖動情況,會致使數據轉儲異常[12]。為此,將當下轉儲節點設成h,其需要通過其余轉儲節點r和中央轉儲節點構建通信鏈路,此時連續穩定開銷Fh-r是
Fh-r=Fte(e1,e2)+Fta(e1)+Fte(e2)
(14)
式中,Fte、Fta依次是節點的單位數據傳輸保障能值、單位帶寬傳輸功率;e1、e2分別是轉儲節點h和其余轉儲節點r的拓撲距離、其余轉儲節點r至中央轉儲節點的拓撲距離。
各次轉儲過程中,都使用每個轉儲節點里鏈路穩定值最顯著的節點設成數據轉儲中繼節點,本文算法停止。
在NS2仿真環境里,測試本文方法對物聯網數據轉儲的效果。仿真參數如表1所示。

表1 仿真參數
仿真里,主要測試本文方法、文獻[2]方法、文獻[3]方法在轉儲物聯網數據時的轉儲性能。
三種方法在轉儲物聯網數據時,將物聯網數據的轉儲節點數目依次設成100個、200個、300個、400個、500個,三種方法的轉儲率測試結果如圖1所示。

圖1 三種方法的轉儲率測試結果
分析圖1可知,物聯網數據節點數目逐漸增多時,本文方法對物聯網數據轉儲時的轉儲率始終大于文獻[2]方法、文獻[3]方法,本文方法轉儲率始終大于95%;文獻[2]、文獻[3]方法的轉儲率隨著物聯網數據節點數目的增多而變小。對比之下,本文方法的轉儲率最高。
三種方法在轉儲物聯網數據時,將物聯網數據的轉儲節點數目依次設成100個、200個、300個、400個、500個,三種方法在轉儲物聯網數據時的轉儲節點轉儲時延如圖2所示。

圖2 三種方法轉儲的節點時延測試結果
分析圖2可知,伴隨節點數目增多,本文方法和文獻[2]方法、文獻[3]方法在轉儲物聯網數據時的轉儲節點轉儲時延均有所變多,但是,對比之下,本文方法的轉儲節點轉儲時延最短,最大值是300ms,和文獻[2]方法、文獻[3]方法相比,本文方法使用下,轉儲節點轉儲時延最低減少100ms。原因是本文方法中使用了數據彈性等指標,在節點數目逐漸增多的條件下可以充分保護轉儲節點的轉儲性能,所以縮短轉儲節點的轉儲時延。
三種方法在轉儲物聯網數據時,將物聯網數據的傳輸速率依次設成1000kbps、2000 kbps、3000 kbps、4000 kbps、5000 kbps,三種方法在轉儲物聯網數據時的傳輸抖動率測試結果如圖3所示。

圖3 三種方法傳輸抖動率測試結果
分析圖3可知,本文方法的傳輸抖動率一直低于文獻[2]方法、文獻[3]方法,表示本文方法在轉儲物聯網數據時,數據傳輸鏈路質量和抗流量攻擊性比對比方法好。因為本文方法使用了鏈路穩定機制,每次所用的傳輸中繼節點都屬于性能最優秀的傳輸節點,可以較好的抑制流量動態變化與鏈路抖動情況。本文方法的傳輸抖動率最大值為17%,文獻[2]方法、文獻[3]方法的傳輸抖動率均大于20%。
三種方法在轉儲物聯網數據時,將物聯網數據的傳輸速率依次設成1000kbps、2000 kbps、3000 kbps、4000 kbps、5000 kbps,三種方法在轉儲物聯網數據時的信道容量測試結果如圖4所示。

圖4 三種方法信道容量測試結果
分析圖4可知,伴隨傳輸速率的變大,本文方法的信道容量逐漸變大,且本文方法的信道容量一直大于文獻[2]方法、文獻[3]方法。本文方法的信道容量高達45000kpbs,原因是本文方法使用了區域固定機制,可以把傳輸信道分割成差異區域的子信道實施信道傳輸,且因為使用了區域分割機制,區域里用于實施數據轉儲的節點都可以實施動態更新,以此能夠克服由于鏈路抖動而出現的信道容量變小的問題。
三種方法在轉儲物聯網數據時,將物聯網數據的數據量依次設成1000個、2000個、3000個、4000個、5000個,測試三種方法在轉儲物聯網數據時的丟包率,結果如表2所示。

表2 三種方法丟包率測試結果
分析表2可知,在物聯網數據量增多的條件下,本文方法在轉儲物聯網數據時的丟包率均值是0.03,比文獻[2]方法、文獻[3]方法少0.16、0.36,差異顯著,由此可知,本文方法在轉儲物聯網數據時,對物聯網數據的損耗較小,轉儲效果優于對比方法。
將物聯網數據的數據量依次設成1000個、2000個、3000個、4000個、5000個,測試本文方法在轉儲物聯網數據時,對物聯網數據轉儲節點狀態的判斷效果,主要以物聯網數據轉儲節點阻塞狀態的誤判率為測試指標,測試結果如圖5所示。

圖5 本文方法誤判率測試結果
分析圖5可知,物聯網數據的數據量依次是1000個、2000個、3000個、4000個、5000個時,本文方法在轉儲物聯網數據時,對物聯網數據轉儲節點狀態的誤判率很小,均為2%,在可接受范圍內。由此可證,本文方法能夠準確判斷物聯網數據轉儲節點是否阻塞,合理轉儲物聯網數據。
本文為了優化物聯網轉儲效果,研究一種基于改進阻塞判別算法的物聯網數據轉儲方法。并在NS2仿真環境里,測試本文方法對物聯網數據轉儲的效果。測試結果如下:
1)物聯網數據節點數目逐漸增多時,本文方法轉儲率始終大于95%,轉儲率大于對比方法;
2)伴隨節點數目增多,本文方法在轉儲物聯網數據時的節點時延有所變多,但是,與對比方法對比之下,本文方法的節點時延最短,最大值是300ms;
3)本文方法的傳輸抖動率低于對比方法,表示本文方法在轉儲物聯網數據時,數據傳輸鏈路質量和抗流量攻擊性比對比方法好;
4)伴隨傳輸速率的變大,本文方法的信道容量逐漸變大,且本文方法的信道容量一直大于對比方法;
5)在物聯網數據量增多的條件下,本文方法在轉儲物聯網數據時的丟包率均值是0.03,比對比方法少0.16、0.36;
6)本文方法在轉儲物聯網數據時,對物聯網數據轉儲節點狀態的誤判率很小,均為2%,在可接受范圍內。