• 
    

    
    

      99热精品在线国产_美女午夜性视频免费_国产精品国产高清国产av_av欧美777_自拍偷自拍亚洲精品老妇_亚洲熟女精品中文字幕_www日本黄色视频网_国产精品野战在线观看

      ?

      6LoWPAN中的路由選擇策略的改進

      2019-01-30 02:11:20
      計算機測量與控制 2019年1期
      關(guān)鍵詞:包率分片字節(jié)

      ,

      (三明學(xué)院 現(xiàn)代教育技術(shù)中心,福建 三明 365004)

      0 引言

      近年來在低功耗無線傳感器網(wǎng)絡(luò)中物聯(lián)網(wǎng)逐步成為一個非常熱門的研究課題。6LoWPAN成為IPv6可以應(yīng)用于低功耗有損網(wǎng)絡(luò)的一個標(biāo)準(zhǔn)[1-2]。IETF的6LoWPAN工作組在2007年發(fā)布了第一個6LoWPAN文檔,其技術(shù)底層采用IEEE 802.15.4規(guī)定的物理層和數(shù)據(jù)鏈路層,其中提出了數(shù)據(jù)的報頭壓縮、數(shù)據(jù)包的分片重組、6LoWPAN網(wǎng)絡(luò)的路由協(xié)議、IPv6地址自動配置、網(wǎng)絡(luò)管理等幾個重點研究的目標(biāo)。IEEE 802.15.4是一個代價低、能耗小、傳輸速率低的無線個人局域網(wǎng),支持星型和對等網(wǎng)絡(luò)拓?fù)鋄3]。對等網(wǎng)絡(luò)拓?fù)湫枰?jīng)過多跳傳輸,這種類型的網(wǎng)絡(luò)通常應(yīng)用于工業(yè)監(jiān)測環(huán)境、健康看護等。在這些應(yīng)用中,無線感知節(jié)點需要通過路由協(xié)議建立多跳連接來從普通節(jié)點向匯聚節(jié)點傳輸數(shù)據(jù)。IETF工作組為了解決這個問題定義了RPL(The IPv6 Routing Protocol for Low-power and lossy Networks)。

      在本文中,我們用Contiki測試臺來研究在不同的RSSI和負(fù)載數(shù)量時,IPv6 UDP數(shù)據(jù)包在IEEE 802.15.4標(biāo)準(zhǔn)下的表現(xiàn)。通過不同長度的IPv6 UDP數(shù)據(jù)包在6LoWPAN下的傳輸來分析IPv6數(shù)據(jù)包的丟包率和吞吐量[4]。實驗表明,不同的IPv6幀長會影響6LoWPAN的表現(xiàn)。實驗結(jié)果強調(diào)了IPv6 UDP數(shù)據(jù)幀長和6LoWPAN鏈路質(zhì)量之間的平衡。最后基于實驗本文提出在低功耗有損網(wǎng)絡(luò)中的基于RSSI的IPv6路由協(xié)議,提高了網(wǎng)絡(luò)的傳輸效率。

      1 相關(guān)研究工作

      (1)6LoWPAN:

      6LoWPAN是基于IPv6通信協(xié)議,采用低功耗無線個人局域網(wǎng)來傳輸IPv6數(shù)據(jù)包的[5]。相比于傳統(tǒng)的TCP/IP網(wǎng)絡(luò),要使WSN直接連接到互聯(lián)網(wǎng),6LoWPAN將面臨許多難題,例如:在數(shù)據(jù)鏈路層上IPv6的MTU(Maximum Transmission Unit)比IEEE 802.15.4的最大幀長要大很多[6]。為此IETF的6LoWPAN工作組建議在網(wǎng)絡(luò)層和MAC之間增加網(wǎng)絡(luò)適配層。表1是6LoWPAN的協(xié)議棧,分別為應(yīng)用層、傳輸層、網(wǎng)絡(luò)層、網(wǎng)絡(luò)適配層(6LoWPAN)、IEEE 802.15.4 的MAC層和PHY層,它提供報頭壓縮以減少報文傳輸開銷,同時還提供IPv6數(shù)據(jù)包的分片和重組。

      表1 6LoWPAN 協(xié)議棧

      (2)RPL路由協(xié)議:

      RPL協(xié)議是目前被廣泛應(yīng)用于低功耗、低計算復(fù)雜度和內(nèi)存受限網(wǎng)絡(luò)中的IPv6路由機制。該協(xié)議呈現(xiàn)樹狀性質(zhì),并為每個節(jié)點估算等級值。等級值用來估計表示鏈接質(zhì)量的期望連接數(shù)(Expected Transmission Count,ETX)ETX作為動態(tài)鏈接機制來構(gòu)建一個有向無環(huán)圖。通常對RPL路由協(xié)議鏈路質(zhì)量的估計可以使得節(jié)點之間建立準(zhǔn)確而穩(wěn)定的通信連接[7]。但是在本文的實驗中可以看出,不同IPv6幀長將會影響6LoWPAN的表現(xiàn)。

      在路由過程中網(wǎng)格節(jié)點之間的RSSI信息的提取、融合成ETX信息。該過程中網(wǎng)格節(jié)點間低質(zhì)量的鏈接將會導(dǎo)致過度重傳和路由錯誤。在基于RSSI的適應(yīng)性路由協(xié)議中,路由發(fā)現(xiàn)協(xié)議根據(jù)接收信號強度策略優(yōu)先選擇更穩(wěn)定的鏈路連接。當(dāng)IPv6數(shù)據(jù)包是最小的1280 bytes 的MTU時,將會分解為13個125 bytes的IEEE 802.15.4的幀結(jié)構(gòu),這些幀就稱之為數(shù)據(jù)包分片。因此穩(wěn)定的鏈路路徑更適合傳輸長的IPv6數(shù)據(jù)包,分片通過這類路徑成功到達目的地的概率更高。所以在RPL協(xié)議中的鏈路連接度量機制應(yīng)該引入IPv6包的長度和不同RSSI情況下的丟包率。

      (3)6LoWPAN測試平臺:

      6LoWPAN測試平臺是在Contiki 開源系統(tǒng)和Zigduino設(shè)備的基礎(chǔ)上開發(fā)用來評估6LoWPAN在室內(nèi)的性能[8]。其系統(tǒng)圖如圖1所示。每個鏈接的RSSI的值用來估計IPv6在RPL路由機制中的丟包率。在這個測試平臺中,我們在傳感器節(jié)點的通信過程中放置包嗅探器,嗅探包含分片的IPv6 UDP數(shù)據(jù)包來評估6LoWPAN在實際無線信道條件下的性能。其中的ATmega128RFA1是新一代的集成微控制芯片,能很好與Contiki操作系統(tǒng)兼容,在Zigduino設(shè)備上執(zhí)行6LoWPAN協(xié)議。

      圖1 Contiki 6LoWPAN測試平臺

      Contiki是一個開源系統(tǒng),其設(shè)計初衷就是為了在內(nèi)存受限的條件下部署網(wǎng)絡(luò)系統(tǒng)。Contiki支持多種平臺,僅需幾比特的內(nèi)存就能支持多任務(wù)運行環(huán)境,同時它還為6LoWPAN提供RPL路由協(xié)議。實時時鐘(Real Time Clock,RTC),用于源節(jié)點和目的節(jié)點之間的時鐘同步。它提供微妙級精度測量IPv6數(shù)據(jù)包的端到端傳輸時延并計算6LoWPAN的傳輸性能[9-10]。圖中的包嗅探器采用的是CC2531。通過嗅探器我們可以截獲傳輸?shù)臄?shù)據(jù)包,分析由ATmega128RFA1傳輸?shù)臄?shù)據(jù)包的內(nèi)容,并比較不同長度的IPv6數(shù)據(jù)包的長度來其對6LoWPAN性能的影響。

      為了在IEEE 802.15.4中發(fā)送長的IPv6幀,源節(jié)點會分割將數(shù)據(jù)包分成多個分片,并獨立發(fā)送這些分片。這些分片通過不同的多跳路徑傳送到目的節(jié)點,并重新組合。這里我們在不同的RSSI環(huán)境中測試1 000個UDP數(shù)據(jù)包的傳輸,分析在目的節(jié)點端的數(shù)據(jù)包計算出IPv6的丟包率。RPL路由協(xié)議可以成功在本測試平臺中運行。傳感器節(jié)點也能傳輸最多1280 bytes的IPv6 UDP數(shù)據(jù)包,并將它們分為14個分片通過多跳傳輸。

      2 IPv6丟包率與分片數(shù)量和RSSI值之間的關(guān)系評估

      對于IPv6數(shù)據(jù)包在無線個人局域網(wǎng)中的表現(xiàn),已經(jīng)有一些文章對此做過研究,其中文章[11]中提出了可信IPv6數(shù)據(jù)包傳輸策略(RIPDS),該策略是在無線個人局域網(wǎng)中通過對數(shù)據(jù)包分片來編碼來保證數(shù)據(jù)包傳輸效率。文章[12]中介紹了通過內(nèi)置的IPv6移動代理來減少數(shù)據(jù)包移交時延。下面我們通過實驗研究來分析IPv6 UDP數(shù)據(jù)包在6LoWPAN適配層的性能,同時對與本文提出的在低功耗有損網(wǎng)絡(luò)中的基于RSSI的IPv6多跳路由選擇機制也給出了性能分析[13]。

      6LoWPAN作為一種全新的網(wǎng)絡(luò)傳輸方式,充分應(yīng)用在許多通信領(lǐng)域上:如物聯(lián)網(wǎng)和工業(yè)化操作上,其體系結(jié)構(gòu)使用鏈路層地址來實現(xiàn)網(wǎng)內(nèi)的路由查找和報文轉(zhuǎn)發(fā)。使用IPv6丟包率與分片數(shù)量和對RSSI測距的值的對應(yīng),只需要較低的實現(xiàn)復(fù)雜度和較少的通信開銷,對于在傳輸有限制的網(wǎng)絡(luò)節(jié)點中是相當(dāng)重要的。為了驗證無線傳感網(wǎng)中IPv6丟包率與分片數(shù)量和RSSI之間的關(guān)系,我們做了如下實驗。在源節(jié)點處發(fā)送1000個IPv6 UDP數(shù)據(jù)包直接到目的節(jié)點,并不斷調(diào)節(jié)這2個節(jié)點之間的距離,重復(fù)實驗數(shù)次。在目的節(jié)點處觀察接收到的IPv6 UDP數(shù)據(jù)包和收到的包的RSSI值。數(shù)據(jù)包分片數(shù)的計算是由嗅探器計算得出。為了測試不同長度的IPv6數(shù)據(jù)包幀的長度與IEEE 802.15.4的適應(yīng)程度,源節(jié)點將IPv6包分成單幀到最多13個幀。該過程重復(fù)10次,取平均值作為實驗結(jié)果。

      圖2展示了IPv6數(shù)據(jù)包在不同RSSI值時的丟包率。圖中可以看出隨著分片數(shù)量的增加,數(shù)據(jù)的丟包率也是成倍增長。而且隨著RSSI的值從-80到-91,數(shù)據(jù)包的丟包率也增長明顯。同時,如圖中所示,穩(wěn)定的鏈接路徑也適合傳輸長的IPv6包。在不同的RSSI值時,RPL中標(biāo)志鏈路質(zhì)量的ETX也和IPv6包的長度和丟包率有關(guān)。

      圖2 IPv6在不同RSSI下的丟包率

      3 RPL路由協(xié)議的改進

      3.1 在RPL的鏈路度量中引入RSSI

      在DODAG建立的過程中,RPL路由協(xié)議的開銷主要來自于通告信息(Destination Advertisement Object,DAO)消息,首先在6LoPAN路由環(huán)境中,每一個路由節(jié)點在收到一個DIO(DODAG information)請求信息后,會反向發(fā)送一個DAO消息,并根據(jù)需要被轉(zhuǎn)發(fā)到對應(yīng)的父節(jié)點上,再由父節(jié)點統(tǒng)一對整張DOGAG的路由表進行調(diào)節(jié),因而信息量龐大,由于DIO消息只在單跳距離內(nèi)進行傳輸,DIO消息是一種在建立DODAG過程中,為了讓附近節(jié)點發(fā)現(xiàn)而產(chǎn)生的少量信息,且傳輸距離小短。由于DIS消息開銷很小,開銷可以忽略不計。同時在大量DAO消息在被轉(zhuǎn)發(fā)至父節(jié)點的過程中,會造成對父節(jié)點周圍的節(jié)點巨大的通信壓力,且會引發(fā)網(wǎng)絡(luò)堵塞、中斷的情況發(fā)生,導(dǎo)致DAO消息重新傳送,破壞網(wǎng)絡(luò)傳輸。

      根據(jù)以上分析,在RPL路由協(xié)議中,鏈路度量是路徑選擇的一個重要考量。通過上述實驗的觀察,本文設(shè)計了一個基于改進RSSI的RPL路由協(xié)議,其具體實施如下所示:

      1)Initially;

      2)Root broadcast the DIO message;

      3)While node receive DIO message && node joining DODAG;

      4)Node update ETX_RSSI value;

      5)Node broadcast the new DIO message;

      6)Return the DAO message to Root;

      7)End while

      8)If node receive the DIS message;

      9)Node broadcast the DIO message;

      10)While node receive DIO message && node want to join DODAG

      11)Node update ETX_RSSI value;

      12)Node broadcast the new DIO message;

      13)Return the DAO message to root;

      14)End while;

      15)End if;

      16)Done;

      在路由發(fā)現(xiàn)過程中,每個節(jié)點接受DIO信息系并將RSS值轉(zhuǎn)化為ETX_RSSI。每條鏈接分片數(shù)的適當(dāng)估計用來計算鏈接的ETX值。將每條路徑上的ETX值在重播前寫入到 DIO中,然后目標(biāo)節(jié)點將攜帶平均ETX值的目的地DAO通過路由路徑發(fā)送到ROOT上。在本文中的RPL算法經(jīng)過改進,該存儲模式中Root作為匯聚節(jié)點,實現(xiàn)信息存儲轉(zhuǎn)發(fā),在有向無環(huán)圖中的其他節(jié)點不設(shè)存儲模式。

      3.2 IPv6 UDP數(shù)據(jù)包在6LoWPAN下的傳輸分析

      在表2的6LoWPAN中的IPv6 UDP數(shù)據(jù)包分片長度中,展示了在提出的基于RSSI的RPL路由機制下節(jié)點單跳和兩跳情況下網(wǎng)絡(luò)的性能。在發(fā)送節(jié)點處,IPv6的負(fù)載長度分別被設(shè)置成:1,81,90,91,176,272,464,656,848,1040和1232 字節(jié)。一個比特的負(fù)載也是IPv6傳輸中的最小負(fù)載長度。IPv6中的81字節(jié)正好可以分解成IEEE 802.15.4的一個幀結(jié)構(gòu)。90字節(jié)的IPv6負(fù)載長度是IEEE 802.15.4單跳傳輸時的最大單個幀的負(fù)載長度。91字節(jié)則可以分解成一個最大負(fù)載幀和一個最小負(fù)載幀。1232字節(jié)是Contiki 測試平臺下能夠傳輸?shù)淖畲驣Pv6數(shù)據(jù)包負(fù)載的長度。

      3.3 端對端傳輸時延分析

      這里的傳輸時延是指IPv6 UDP數(shù)據(jù)包從源節(jié)點傳輸?shù)侥康墓?jié)點的傳輸時間。傳輸時延是由處理時延、排隊時延和傳播時延組成的。所以6LoWPAN傳輸時延必須精確到毫秒。圖3展示了在IPv6 UDP數(shù)據(jù)包傳輸中單跳和兩跳端到端傳輸時延。結(jié)果顯示傳輸時延和IPv6 UDP數(shù)據(jù)包負(fù)載有線性相關(guān)。由于長的IPv6數(shù)據(jù)包會增加分片數(shù)量,這回造成傳輸時延和更多的分片開銷。同時圖中可以看出兩跳傳輸?shù)臅r延大概是單跳傳輸時延的兩倍,這是因為在6LoWPAN中的包轉(zhuǎn)發(fā)會在每一跳中進行包分片和重組,因此傳輸時延和跳數(shù)也是線性相關(guān)的。跳數(shù)會很大程度上影響6LoWPAN的傳輸性能。

      表2 在6LoWPAN中的IPv6 UDP數(shù)據(jù)包分片長度

      圖3 6LoWPAN中單跳和兩跳的傳輸時延

      3.4 6LowPAN的性能分析

      圖4展示了IPv6 UDP數(shù)據(jù)包在6LoWPAN中的實際吞吐量。在UDP的客戶端/服務(wù)器模式下,從客戶端發(fā)送不同長度的IPv6數(shù)據(jù)包負(fù)載到服務(wù)器端來估計6LoWPAN的實際吞吐量。從圖4中可以看出實際吞吐量與IPv6負(fù)載長度密切相關(guān)。在IPv6負(fù)載為一個字節(jié)的情況下,性能非常低。這是因為分片開銷大大高于IPv6負(fù)載。當(dāng)IPv6 UDP數(shù)據(jù)包負(fù)載達到最大負(fù)載81時,此時的實際吞吐量最高。當(dāng)傳輸負(fù)載達到91字節(jié)是,實際吞吐量會突然下降,這是因為分片只是為了傳輸額外1字節(jié)的負(fù)載,使得分片開銷過大。由于6LoWPAN是嚴(yán)格分層的,IPv6數(shù)據(jù)包在每一跳處都被重組,所以傳輸開銷和跳數(shù)信息是直接相關(guān)的。

      圖4 6LoWPAN中單跳和兩跳傳輸?shù)膶嶋H吞吐量

      3.5 基于RSSI的路由協(xié)議的性能分析

      我們使用Contiki平臺COOJA仿真工具中來做實驗,圖 5是在COOJA仿真器下的網(wǎng)絡(luò)拓?fù)鋱D。為了測試基于RSSI的RPL路由協(xié)議的性能,實驗中使用500個1032字節(jié)的IPv6 UDP數(shù)據(jù)包從節(jié)點5傳輸?shù)焦?jié)點1。RSSI_ETX在路徑1-4-2-5的數(shù)值為1.148,在路徑1-3-6-7-5中的數(shù)值為1.121。因此路徑1-3-6-7-5將被基于RSSI的IPv6路由協(xié)議選中。基于路徑1-3-6-7-5中最小的RSSI值得出合適的包長度應(yīng)為264字節(jié)。

      圖5 COOJA仿真工具中的RPL拓?fù)鋱D

      圖6中展示了本文提出的RSSI的路由協(xié)議的性能估計。我們分別在MTU(最小傳輸單元)為246字節(jié)和1032字節(jié)兩種環(huán)境進行測試,在原始的RPL選擇最小的ETX路徑和最長的IPv6數(shù)據(jù)包長。原始的RPL路由對數(shù)據(jù)包總的傳輸時間是39分29秒。而基于RSSI的路由協(xié)議則用時16分24秒,兩者總傳輸時延竟相差了13分鐘左右,測試結(jié)果表明,RSSI路由協(xié)議的性能遠(yuǎn)高于原始的RPL協(xié)議。

      圖6 基于RSSI的路由協(xié)議在COOJA中的性能分析

      圖7為我們選取示例中的拓?fù)浣Y(jié)構(gòu),將改進的基于RSSI的RPL路由協(xié)議寫入程序中。通過在6LoWPAN網(wǎng)絡(luò)中,部署30個節(jié)點,仿真的時間為設(shè)置為1個小時,觀察節(jié)點的拓?fù)浣⑦^程。包括路由負(fù)載、端到端平均時延等。對比RPL路由協(xié)議,基于RSSI的更加高效、快速。這是因為在好的鏈路上,數(shù)據(jù)包選擇傳輸?shù)膸茁矢?,所以鏈路更能夠做到?fù)載均衡。拓?fù)浣⑦^程如圖7所示。

      圖7 RSSI-RPL在COOJA工具下的拓?fù)浣⑦^程

      4 結(jié)束語

      本文針對6LoWPAN中RSSI路由協(xié)議向下傳輸?shù)慕⑦^程,通過實驗分析了IPv6數(shù)據(jù)包長度對MAC層分片數(shù)量的影響。并運用Contiki 6LoWPAN工具,分析了在6LoWPAN網(wǎng)絡(luò)中實際的IPv6 UDP數(shù)據(jù)包的傳輸性能,傳輸延遲等。通過實驗結(jié)果,我們提出了一個改進的6LoWPAN網(wǎng)絡(luò)下基于RSSI的IPv6路由協(xié)議。從實驗中發(fā)現(xiàn)6LoWPAN性能與IPv6負(fù)載長度線性相關(guān),分析發(fā)現(xiàn)在大負(fù)載的IPv6網(wǎng)絡(luò)中,該方案數(shù)據(jù)傳輸效率高于原來的方案。下一步我們將逐步探索基于RSSI的路由機制在信道條件差的情況下的性能。同時下一步可以考慮將改進的6LoWPAN地址壓縮方案考慮進來,探索IPv6 UDP數(shù)據(jù)包長度對兩者的影響。同時希望加入更多的參考指標(biāo),例如6LoWPAN地址壓縮方案的復(fù)雜度分析,設(shè)備能量消耗分析等,進行綜合的評估,得出更為實用和高效的路由尋址策略和地址壓縮方法。

      猜你喜歡
      包率分片字節(jié)
      上下分片與詞的時空佈局
      詞學(xué)(2022年1期)2022-10-27 08:06:12
      支持向量機的船舶網(wǎng)絡(luò)丟包率預(yù)測數(shù)學(xué)模型
      一種基于噴泉碼的異構(gòu)網(wǎng)絡(luò)發(fā)包算法*
      No.8 字節(jié)跳動將推出獨立出口電商APP
      分片光滑邊值問題的再生核方法
      CDN存量MP4視頻播放優(yōu)化方法
      No.10 “字節(jié)跳動手機”要來了?
      基于模糊二分查找的幀分片算法設(shè)計與實現(xiàn)
      一種新的VANET網(wǎng)絡(luò)鏈路丟包率估計算法
      簡談MC7字節(jié)碼
      九寨沟县| 额济纳旗| 罗定市| 淮安市| 涞源县| 方正县| 新蔡县| 健康| 富顺县| 策勒县| 英山县| 岳阳县| 灵宝市| 荆州市| 凤山县| 西和县| 海兴县| 曲麻莱县| 玛沁县| 宁化县| 合肥市| 阿巴嘎旗| 涟水县| 新绛县| 阳泉市| 永修县| 桐梓县| 延边| 顺义区| 本溪| 柏乡县| 东平县| 宁阳县| 寿宁县| 桂平市| 金寨县| 大渡口区| 西乌珠穆沁旗| 永新县| 东辽县| 美姑县|