基于6LoWPAN的物聯(lián)網(wǎng)尋址策略研究
第34卷第4期 電 子 與 信 息 學(xué) 報(bào) Vol.34No.4 201
第34卷第4期 電 子 與 信 息 學(xué) 報(bào) Vol.34No.4 2012年4月 Journal of Electronics & Information Technology Apr. 2012
基于6LoWPAN 的物聯(lián)網(wǎng)尋址策略研究
王義君 錢志鴻 王 雪 孫大洋
(吉林大學(xué)通信工程學(xué)院 長(zhǎng)春 130012)
摘 要:在6LoWPAN (IPv6 over Low-power Wireless Personal Area Network)的基礎(chǔ)上,該文提出應(yīng)用于物聯(lián)網(wǎng)
的尋址策略,實(shí)現(xiàn)基于IEEE 802.15.4協(xié)議的底層異構(gòu)網(wǎng)絡(luò)與互聯(lián)網(wǎng)的實(shí)時(shí)通信。尋址策略包括IPv6地址自動(dòng)配
置和報(bào)頭壓縮。采用的分層地址自動(dòng)配置策略,首先在底層網(wǎng)絡(luò)內(nèi)部允許節(jié)點(diǎn)使用16位短地址導(dǎo)出的鏈路本地地
址進(jìn)行數(shù)據(jù)分組傳輸,該鏈路本地地址需通過(guò)執(zhí)行基于分簇的重復(fù)地址檢測(cè)機(jī)制保證唯一性;其次,每個(gè)底層網(wǎng)絡(luò)
中的Sink 節(jié)點(diǎn)通過(guò)上層IP 路由器獲取全球路由前綴,并與接口標(biāo)識(shí)符相結(jié)合,形成Sink 節(jié)點(diǎn)的全球地址,實(shí)現(xiàn)
底層網(wǎng)絡(luò)與互聯(lián)網(wǎng)的數(shù)據(jù)交換。同時(shí),通過(guò)在報(bào)頭壓縮編碼中植入鏈路本地地址和全球地址控制位,提出了一種適
用于物聯(lián)網(wǎng)應(yīng)用的報(bào)頭壓縮方案IIPHC (IoTs IPv6 Header Compression)。如果地址類型為鏈路本地地址,則采用
簡(jiǎn)單靈活的IIPHC1方案,如果地址類型為全球地址,則采用相對(duì)復(fù)雜但有效的IIPHC2方案。仿真及測(cè)試結(jié)果表
明,基于6LoWPAN 的物聯(lián)網(wǎng)尋址策略在網(wǎng)絡(luò)開(kāi)銷、時(shí)延、吞吐量、能耗等性能方面存在一定的優(yōu)越性。
關(guān)鍵詞:物聯(lián)網(wǎng);底層網(wǎng)絡(luò);6LoWPAN (IPv6 over Low-power Wireless Personal Area Network);地址自動(dòng)配置;報(bào)頭壓縮
中圖分類號(hào):TN915 文獻(xiàn)標(biāo)識(shí)碼: A 文章編號(hào):1009-5896(2012)04-0763-07 DOI : 10.3724/SP.J.1146.2011.01368 *
Addressing Scheme for Internet of Things Based on IPv6 over
Low-power Wireless Personal Area Network (6LoWPAN)
Wang Yi-jun Qian Zhi-hong Wang Xue Sun Da-yang
(College of Communication Engineering, Jilin University, Changchun 130012, China)
Abstract : Addressing scheme for Internet of Things (IoTs) is proposed based on IPv6 over Low-power Wireless Personal Area Networks (6LoWPAN), for the real-time communication between Internet and underlying heterogeneous networks based on IEEE 802.15.4. Addressing scheme includes IPv6 address autoconfiguration and head compression. Hierarchical address autoconfiguration firstly allow nodes use link local address, which is derived by 16-bit short address, for transmitting data packets within WPAN, meanwhile, this link local address needs to ensure the uniqueness of 16-bit short address by performing duplicate address detection based on clustering. Secondly, all the sink nodes in underlying networks form global address by obtaining global address prefix, which combine with interface identifier, and achieve data exchange between Internet and the underlying networks. Simultaneity, IoTs IPv6 Header Compression (IIPHC) is proposed by embedding G/L bit in head compression encoding. For the link local address, simple IIPHC1 program is used. For the global address, IIPHC2 that is relatively complex but effective program is used. The simulation result indicates that addressing scheme have an improvement in networks overhead, latency, throughput and energy consumption.
Key words: Internet of Things (IoTs); Underlying heterogeneous networks; IPv6 over Low-power Wireless Personal Area Network (6LoWPAN); Address autoconfiguration; Head compression
1 引言
物聯(lián)網(wǎng)(Internet of Things, IoTs)包含如下兩層
涵義:(1)互聯(lián)網(wǎng)是物聯(lián)網(wǎng)的核心和基礎(chǔ),物聯(lián)網(wǎng)必2011-12-23收到,2012-02-01改回
國(guó)家自然科學(xué)基金(61071073)和教育部高等學(xué)校博士學(xué)科點(diǎn)專項(xiàng)科
研基金(20090061110043)資助課題
*通信作者:錢志鴻 dr.qzh@163.com 須在互聯(lián)網(wǎng)的基礎(chǔ)上進(jìn)行延伸和擴(kuò)展;(2)終端用戶延伸和擴(kuò)展到了所有物品與物品之間,可以使它們之間進(jìn)行信息交換和通信。國(guó)際電信聯(lián)盟將射頻識(shí)別技術(shù)(Radio Frequency IDentification, RFID)[1,2]、傳感器技術(shù)、納米技術(shù)、智能嵌入式技術(shù)列為物聯(lián)網(wǎng)的關(guān)鍵技術(shù)。當(dāng)前階段,物聯(lián)網(wǎng)所要解決的關(guān)鍵問(wèn)題之一是底層異構(gòu)網(wǎng)絡(luò)與互聯(lián)網(wǎng)的相互融合[3]。IEEE 802.15.4通信協(xié)議是短距離無(wú)線通信標(biāo)準(zhǔn),相
,764 電 子 與 信 息 學(xué) 報(bào) 第34卷
對(duì)于藍(lán)牙技術(shù)[4]而言,更適用于物聯(lián)網(wǎng)底層異構(gòu)網(wǎng)絡(luò)設(shè)備間的通信。IPv6是下一代互聯(lián)網(wǎng)網(wǎng)絡(luò)層的主導(dǎo)技術(shù),在地址空間、報(bào)文格式、安全性方面具有較大的優(yōu)勢(shì)。6LoWPAN(IPv6 over Low-power 時(shí),當(dāng)網(wǎng)內(nèi)傳感器節(jié)點(diǎn)數(shù)量增加時(shí),傳遞DAD 消息的范圍隨之增大,網(wǎng)絡(luò)開(kāi)銷也會(huì)大幅度增加。其次,每一種鏈路層協(xié)議都會(huì)規(guī)定幀的數(shù)據(jù)部分的長(zhǎng)
最大傳送單元MTU(Maximum Transfer 度上限
Wireless Personal Area Networks)技術(shù)通過(guò)在網(wǎng)絡(luò)層和數(shù)據(jù)鏈路層之間引入適配層[5],實(shí)現(xiàn)基于IEEE 802.15.4通信協(xié)議的底層網(wǎng)絡(luò)與基于IPv6協(xié)議的互聯(lián)網(wǎng)的相互融合,適配層主要完成接入過(guò)程中的以下功能:(1)為了高效傳輸對(duì)IPv6數(shù)據(jù)包進(jìn)行分片與重組;(2)網(wǎng)絡(luò)地址自動(dòng)配置;(3)為了降低IPv6開(kāi)銷對(duì)IPv6分組進(jìn)行報(bào)頭壓縮;(4)有效路由算法。其中,網(wǎng)絡(luò)地址自動(dòng)配置以及IPv6報(bào)頭壓縮兩類功能,對(duì)于識(shí)別接入物聯(lián)網(wǎng)的每個(gè)終端節(jié)點(diǎn),使節(jié)點(diǎn)間能夠相互進(jìn)行資源共享和信息交換具有最為重要的意義,因此本文圍繞以上兩個(gè)方面,在6LoWPAN 適配層的基礎(chǔ)上,實(shí)現(xiàn)了物聯(lián)網(wǎng)中基于IEEE 802.15.4通信協(xié)議的底層異構(gòu)網(wǎng)絡(luò)與基于IPv6協(xié)議的互聯(lián)網(wǎng)的統(tǒng)一尋址,保證了物聯(lián)網(wǎng)時(shí)代網(wǎng)絡(luò)層向傳輸層提供靈活簡(jiǎn)單、無(wú)連接、滿足QoS 需求的數(shù)據(jù)報(bào)服務(wù)[6,7]。
2 研究背景
6LoWPAN 協(xié)議基本功能是實(shí)現(xiàn)基于IEEE 802.15.4通信協(xié)議的底層網(wǎng)絡(luò)與基于IPv6協(xié)議的互
聯(lián)網(wǎng)相互無(wú)縫鏈接[8],
從而為物聯(lián)網(wǎng)大規(guī)模應(yīng)用提供實(shí)時(shí)可靠的網(wǎng)絡(luò)協(xié)議保證[9],
但相關(guān)技術(shù)存在諸多挑戰(zhàn)。
首先,傳統(tǒng)的地址自動(dòng)配置方案不適合于物聯(lián)網(wǎng),主要有兩方面原因:(1)對(duì)于有線網(wǎng)絡(luò)來(lái)說(shuō),一個(gè)廣播消息可以達(dá)到鏈路中的所有節(jié)點(diǎn),而物聯(lián)網(wǎng)中底層網(wǎng)絡(luò)通常采用無(wú)線傳輸方式,具有多跳路由的特點(diǎn),而物聯(lián)網(wǎng)的底層網(wǎng)絡(luò)一般不存在帶有整個(gè)網(wǎng)絡(luò)信息的中心服務(wù)器,因此像DHCP(Dynamic Host Configuration Protocol)這樣的配置方案不適用于物聯(lián)網(wǎng);(2)物聯(lián)網(wǎng)的底層網(wǎng)絡(luò)一般會(huì)受到能量的限制,而傳統(tǒng)的地址自動(dòng)配置方案會(huì)給整個(gè)物聯(lián)網(wǎng)絡(luò)帶來(lái)較高的能量和帶寬消耗、通信延遲以及存儲(chǔ)空間的占用。所以,需要研究適用于物聯(lián)網(wǎng)的新的地址自動(dòng)配置方案。文獻(xiàn)[10]提出利用三原色坐標(biāo)和節(jié)點(diǎn)位置信息實(shí)現(xiàn)IPv6地址自動(dòng)配置(IPv6 lightweight stateless Address Autoconfiguration for 6LoWPAN using Color Coordinators, CCAA)。相對(duì)于傳統(tǒng)方案而言,該方法的重復(fù)地址檢測(cè)(Duplicate Address Detection, DAD)開(kāi)銷較小,但由于其需要通過(guò)協(xié)調(diào)器節(jié)點(diǎn)獲取地理位置信息,使其在硬件實(shí)現(xiàn)及擴(kuò)展性上存在一定的限制,與此同
Unit) 。IEEE 802.15.4協(xié)議定義的MTU 為127 byte,除去必要的幀開(kāi)銷外,留給MAC 幀載荷的長(zhǎng)度約為81 byte,而IPv6分組最少為1280 byte,因此IEEE 802.15.4 MAC幀不能封裝完整的IPv6分組。而通過(guò)報(bào)頭壓縮技術(shù)可以提高數(shù)據(jù)傳輸效率和網(wǎng)絡(luò)資源利用率。RFC4944[11]中提出的HC1(Head Compression 1)報(bào)頭壓縮方案對(duì)于鏈路本地單播通信是十分有效的。但是,由于鏈路本地地址通常適用于局部協(xié)議交互,一般不用于應(yīng)用層數(shù)據(jù)流,因此HC1的實(shí)際應(yīng)用價(jià)值非常有限。IPHC [12](IPv6 Head Compression)方案選擇性的采用有狀態(tài)壓縮方式,并且利用上下文標(biāo)識(shí)擴(kuò)展位來(lái)增加后續(xù)編碼的策略,對(duì)于物聯(lián)網(wǎng)的底層網(wǎng)絡(luò)來(lái)說(shuō),系統(tǒng)開(kāi)銷和軟件復(fù)雜度都會(huì)大幅度提升。
本文在6LoWPAN 基礎(chǔ)上提出一種適用于物聯(lián)網(wǎng)應(yīng)用的尋址方案。尋址策略包括IPv6地址自動(dòng)配置和報(bào)頭壓縮兩部分。分層地址自動(dòng)配置策略,首先在底層網(wǎng)絡(luò)內(nèi)部允許節(jié)點(diǎn)使用16 bit短地址導(dǎo)出的鏈路本地地址進(jìn)行數(shù)據(jù)分組傳輸,并將該鏈路本地地址經(jīng)過(guò)基于分簇的重復(fù)地址檢測(cè)保證唯一性;其次,每個(gè)底層網(wǎng)絡(luò)中的Sink 節(jié)點(diǎn)通過(guò)上層IP 路由器獲取全球地址路由前綴,并與自身的接口標(biāo)識(shí)符相結(jié)合,形成Sink 節(jié)點(diǎn)的全球地址。同時(shí),本文提出一種適用于物聯(lián)網(wǎng)應(yīng)用的報(bào)頭壓縮方案IIPHC (IoTs IPv6 Header Compression),通過(guò)在編碼中植入鏈路本地地址和全球地址控制位決定采用報(bào)頭壓縮方案的類型。
本文組織結(jié)構(gòu)如下:本節(jié)介紹了在網(wǎng)絡(luò)尋址方面,基于6LoWPAN 的底層異絡(luò)與互聯(lián)網(wǎng)融合的相關(guān)研究背景及技術(shù)挑戰(zhàn);第3節(jié)從地址自動(dòng)配置和報(bào)頭壓縮兩個(gè)方面提出了基于6LoWPAN 的物聯(lián)網(wǎng)尋址策略;第4節(jié)對(duì)物聯(lián)網(wǎng)尋址策略進(jìn)行了仿真及分析;第5節(jié)對(duì)本文的研究作出結(jié)論,總結(jié)全文。
3 物聯(lián)網(wǎng)尋址策略
3.1 地址自動(dòng)配置
每個(gè)802.15.4設(shè)備都可以通過(guò)一個(gè)IEEE EUI- 64長(zhǎng)地址或一個(gè)可分配的16 bit短地址作為該設(shè)備的鏈路層地址完成通信鏈接。為了使IPv6地址在物聯(lián)網(wǎng)絡(luò)中能夠保證唯一性以及降低底層網(wǎng)絡(luò)的通信開(kāi)銷,本文采用分層地址自動(dòng)配置策略:首先,在底層網(wǎng)絡(luò)內(nèi)部允許節(jié)點(diǎn)使用16 bit短地址導(dǎo)出的鏈
,第4期 王義君等: 基于6LoWPAN 的物聯(lián)網(wǎng)尋址策略研究 765
路本地地址進(jìn)行數(shù)據(jù)分組傳輸,該鏈路本地地址需經(jīng)過(guò)基于分簇的DAD 保證唯一性;其次,每個(gè)底層網(wǎng)絡(luò)中的Sink 節(jié)點(diǎn)通過(guò)上層IP 路由器獲取全球單播路由前綴,并與IEEE EUI-64地址計(jì)算出的接口標(biāo)識(shí)符(ID)相結(jié)合,形成Sink 節(jié)點(diǎn)的全球單播地址,實(shí)現(xiàn)底層網(wǎng)絡(luò)與互聯(lián)網(wǎng)的數(shù)據(jù)交換。
(1)基于16 bit短地址的鏈路本地地址 通過(guò)在
物聯(lián)網(wǎng)底層網(wǎng)絡(luò)建立邏輯樹(shù)結(jié)構(gòu)實(shí)現(xiàn)
16 bit短地址分配。當(dāng)?shù)讓泳W(wǎng)絡(luò)中的某一節(jié)點(diǎn)允許一個(gè)有需求的新節(jié)點(diǎn)加入網(wǎng)絡(luò)時(shí),它們之間形成父子關(guān)系,每個(gè)加入網(wǎng)絡(luò)的節(jié)點(diǎn)都會(huì)得到父節(jié)點(diǎn)為其分配的用于路由和數(shù)據(jù)傳輸?shù)?6 bit短地址。
Sink 節(jié)點(diǎn)首先根據(jù)需要規(guī)定3個(gè)參數(shù):每個(gè)父
節(jié)點(diǎn)最多可以連接的子節(jié)點(diǎn)個(gè)數(shù)C m ,
子節(jié)點(diǎn)中最多可以連接的路由節(jié)點(diǎn)個(gè)數(shù)R m ,網(wǎng)絡(luò)的最大深度L m ,其中C m ≥R m 。Cskip(d ) 是網(wǎng)絡(luò)深度為d 的父節(jié)點(diǎn)為其子節(jié)點(diǎn)分配的地址之間的偏移量如式(1)所示。
???Cskip(d ) =?
1 C m (L m ?d ?1), =1R m ???L m ??1 C d ?1?m ?R m ?C m ?R m
(1) ??
1?R , 其它m 一個(gè)父節(jié)點(diǎn)的Cskip(d ) 為0時(shí),不具備為其子節(jié)點(diǎn)分配地址的能力,Cskip(d ) 大于 0 時(shí),則可以接受其它節(jié)點(diǎn)成為它的子節(jié)點(diǎn),并且向子節(jié)點(diǎn)分配不同的地址。利用Cskip(d ) 作為偏移量,向網(wǎng)內(nèi)子節(jié)點(diǎn)分配網(wǎng)絡(luò)地址。父節(jié)點(diǎn)為第1個(gè)與它連接的路由節(jié)點(diǎn)分配比自己大1的地址,后續(xù)與之連接的節(jié)點(diǎn)的地址之間都相隔偏移量Cskip(d ) ,以此類推為所有的節(jié)點(diǎn)分配16 bit短地址。假設(shè)父節(jié)點(diǎn)的地址為A parent ,對(duì)于它的第n 個(gè)子節(jié)點(diǎn),地址分配公式如式(2)所示:
A n =A parent Cskip(d ) ?(n ?1) 1, 1≤n ≤R m (2) 為了避免分配的16 bit短地址在網(wǎng)絡(luò)中的重復(fù)使用,需要利用DAD 確定地址的唯一性。本文通過(guò)分簇方式執(zhí)行DAD ,確定地址的唯一性。在網(wǎng)絡(luò)建立過(guò)程中,以Sink 節(jié)點(diǎn)為根節(jié)點(diǎn)建立虛擬邏輯樹(shù)結(jié)構(gòu),其深度L =0。從根節(jié)點(diǎn)開(kāi)始,已經(jīng)存在的網(wǎng)絡(luò)節(jié)點(diǎn)作為后續(xù)加入節(jié)點(diǎn)的父節(jié)點(diǎn)建立分簇,使邏輯樹(shù)結(jié)構(gòu)不斷壯大,虛擬邏輯樹(shù)結(jié)構(gòu)如圖1所示。通過(guò)虛擬邏輯樹(shù)結(jié)構(gòu),待分配節(jié)點(diǎn)只需與本簇內(nèi)的節(jié)點(diǎn)交換信息,減少了DAD 過(guò)程中信息交換次數(shù)及網(wǎng)絡(luò)通信范圍。
當(dāng)節(jié)點(diǎn)獲取16 bit短地址并確定唯一性后,通過(guò)步驟(a)將其轉(zhuǎn)換為48 bit的標(biāo)準(zhǔn)MAC 地址,然后利用該48 bit標(biāo)準(zhǔn)MAC 地址再通過(guò)步驟(b)得到自動(dòng)配置的IPv6地址的接口ID :
圖1 DAD虛擬邏輯樹(shù)結(jié)構(gòu)
(a)首先最左邊的32 bit利用源節(jié)點(diǎn)的PAN ID和后加入的16 bit零形成,其次該32 bit域與源節(jié)點(diǎn)的16 bit短地址相結(jié)合,形成一個(gè)48 bit的標(biāo)準(zhǔn)MAC 地址,結(jié)構(gòu)如圖2所示。
圖2 48 bit標(biāo)準(zhǔn)MAC 地址
(b)在上述48 bit MAC地址的中間插入一段16 bit 的編碼FFFE ,轉(zhuǎn)換成IPv6地址的64 bit接口ID ,結(jié)構(gòu)如圖3所示。
圖3 16 bit短地址轉(zhuǎn)換格式
當(dāng)一個(gè)新節(jié)點(diǎn)需要加入網(wǎng)絡(luò)時(shí),該節(jié)點(diǎn)需要接口標(biāo)識(shí)符以及鏈路本地地址前綴創(chuàng)建一個(gè)鏈路本地地址。如圖4所示,假設(shè)節(jié)點(diǎn)K 的16 bit短地址為ABCD, PAN標(biāo)識(shí)為0014,那么當(dāng)其與網(wǎng)絡(luò)節(jié)點(diǎn)H 建立連接后,通過(guò)16 bit短地址得到標(biāo)準(zhǔn)的48 bit MAC 地址0014:0000:ABCD ,通過(guò)插入編碼FFFE 可得到節(jié)點(diǎn)K 的EUI-64地址0214:00FF :FE00:
圖4 鏈路本地地址形成過(guò)程
,766 電 子 與 信 息 學(xué) 報(bào) 第34卷
ABCD ,即為該節(jié)點(diǎn)的接口標(biāo)識(shí)符。同時(shí),將節(jié)點(diǎn)K 的16 bit短地址通過(guò)節(jié)點(diǎn)H 報(bào)告給信標(biāo)節(jié)點(diǎn)S ,信標(biāo)節(jié)點(diǎn)S 將該16 bit短地址加入到路由表中,然后在接口標(biāo)識(shí)符前加上鏈路本地地址前綴FE80::/64,即得到一個(gè)完整的鏈路本地地址FE80::0214:00FF :FE00:ABCD 。
(2)基于IEEE EUI-64地址的全球地址 對(duì)于64 bit長(zhǎng)地址來(lái)說(shuō),其64 bit的擴(kuò)展標(biāo)識(shí)符構(gòu)成了IPv6地址的接口標(biāo)識(shí)符。所以定義64 bit長(zhǎng)地址轉(zhuǎn)換為IPv6地址的結(jié)構(gòu)如圖5所示。下面通過(guò)Sink 節(jié)點(diǎn)接收路由通告的全球地址前綴,結(jié)合IEEE EUI-64地址轉(zhuǎn)換為接口標(biāo)識(shí)符形成一個(gè)全球地址的方式說(shuō)明整個(gè)全球地址自動(dòng)配置過(guò)程。
圖5 64 bit長(zhǎng)地址轉(zhuǎn)換格式
如圖6所示,為了生成全球地址,必須要獲取全球路由前綴。Sink 節(jié)點(diǎn)S 為獲取全球路由前綴,需要向與其相鄰的IP 路由節(jié)點(diǎn)P 發(fā)出路由請(qǐng)求RS (Router Solicitation),該RS 消息的源地址是Sink 節(jié)點(diǎn)S 的鏈路本地地址,目的地址是IP 路由節(jié)點(diǎn)P 的組播地址。IP 路由節(jié)點(diǎn)P 接收到RS 消息后,會(huì)向S 返回一個(gè)路由通告RA(Router Advertisement),該RA 消息的源地址是IP 路由節(jié)點(diǎn)P 的IPv6地址,目的地址是Sink 節(jié)點(diǎn)S 的鏈路本地地址,同時(shí)該RA 消息的選項(xiàng)字段會(huì)給出全球路由前綴。Sink 節(jié)點(diǎn)S 獲取全球路由前綴后,與接口標(biāo)識(shí)符結(jié)合形成全球IPv6地址。當(dāng)Sink 節(jié)點(diǎn)獲取全球路由前綴后,網(wǎng)內(nèi)節(jié)點(diǎn)可以通過(guò)上述方式向Sink 節(jié)點(diǎn)發(fā)出請(qǐng)求,Sink 節(jié)點(diǎn)再將前綴信息傳遞給網(wǎng)內(nèi)節(jié)點(diǎn),使網(wǎng)內(nèi)節(jié)點(diǎn)獲取全球地址并接入互聯(lián)網(wǎng)。至此,整個(gè)物聯(lián)網(wǎng)底層網(wǎng)絡(luò)節(jié)點(diǎn)的地址自動(dòng)配置過(guò)程全部完成,本文將其稱之為物聯(lián)網(wǎng)地址自動(dòng)配置方案(Internet Of Things Address Autoconfiguration, IOTAA)。 3.2 報(bào)頭壓縮
由于HC1和IPHC 方案在物聯(lián)網(wǎng)應(yīng)用中均存在著不足,所以本文在上述兩種方案的基礎(chǔ)上提出一種適用于物聯(lián)網(wǎng)應(yīng)用的報(bào)頭壓縮方案IIPHC 。該方案通過(guò)在編碼中植入鏈路本地地址和全球地址控制位決定采用報(bào)頭壓縮方案的類型。如果地址類型為鏈路本地地址,則采用簡(jiǎn)單靈活的IIPHC1方案,如果地址類型為全球地址,則采用相對(duì)復(fù)雜但有效
圖6 路由請(qǐng)求及路由通告
的IIPHC2方案。IIPHC 壓縮方案的基本報(bào)頭結(jié)構(gòu)如圖7所示,標(biāo)識(shí)位和IIPHC 編碼位構(gòu)成了IPv6報(bào)頭壓縮的基本編碼格式。
圖7 IIPHC基本報(bào)頭結(jié)構(gòu)
(1)IIPHC1方案 通過(guò)在標(biāo)識(shí)位中植入GL 位對(duì)地址類型進(jìn)行判斷,當(dāng)?shù)刂奉愋蜑殒溌繁镜氐刂窌r(shí),執(zhí)行IIPHC1壓縮方案,具體編碼格式如圖8所示。
圖8 IIPHC1編碼格式
字段含義如下:
(a)0110:表示地址類型為IPv6地址,與GL 位共同標(biāo)識(shí)需要壓縮的地址類型。
(b)GL(Global/Local):全球/鏈路本地地址標(biāo)識(shí)位。本方案中GL=1,表示地址類型為鏈路本地地址。
(c)TF(Traffic Class/Flow Label):業(yè)務(wù)流類別及流標(biāo)簽壓縮位。由于8 bit的IPv6業(yè)務(wù)流類別字段由2 bit的ECN(Explicit Congestion Notification)字段和6 bit的DSCP(Differentiated Services Code Point) 字段組成,所以將TF 的編碼作如下定義:
00:業(yè)務(wù)流類別和流標(biāo)簽保持默認(rèn)值;
01:ECN 和流標(biāo)簽保持默認(rèn)值,DSCP 省略; 10:業(yè)務(wù)流類別保持默認(rèn)值,流標(biāo)簽省略; 11:業(yè)務(wù)流類別和流標(biāo)簽均省略。
,第4期 王義君等: 基于6LoWPAN 的物聯(lián)網(wǎng)尋址策略研究 767
(d)SA(Source Address):源地址壓縮位。 00:地址前綴和接口標(biāo)識(shí)符均不壓縮; 01:地址前綴不壓縮,接口標(biāo)識(shí)符壓縮; 10:地址前綴壓縮,接口標(biāo)識(shí)符不壓縮; 11:地址前綴和接口標(biāo)識(shí)符均壓縮。
(e)DA(Destination Addresses):目的地址壓縮位。
00:地址前綴和接口標(biāo)識(shí)符均不壓縮; 01:地址前綴不壓縮,接口標(biāo)識(shí)符壓縮; 10:地址前綴壓縮,接口標(biāo)識(shí)符不壓縮; 11:地址前綴和接口標(biāo)識(shí)符均壓縮。 (f)NH(Next Head):下一報(bào)頭壓縮位。 0:8 bit下一報(bào)頭字段不壓縮;
1:8 bit下一報(bào)頭字段壓縮,并且采用相關(guān)的下一報(bào)頭壓縮算法;
(g)HL(Hop Limit):跳極限壓縮位。 0:跳極限字段不壓縮;
1:跳極限字段壓縮并且跳極限的最大值為64。 (2) IIPHC2方案 鏈路本地地址的傳播范圍具有一定的局限性,而全球地址需要更大范圍的消息轉(zhuǎn)發(fā)才能獲取全球路由前綴,因此其報(bào)頭壓縮方案必須更加靈活有效,這樣才能在降低報(bào)頭開(kāi)銷的同時(shí),保證地址信息的完備性?;诖?,當(dāng)?shù)刂奉愋蜑槿虻刂窌r(shí),本文放棄了IPHC 中的有狀態(tài)壓縮模式,整個(gè)壓縮過(guò)程無(wú)論源地址、目的地址還是中繼節(jié)點(diǎn)的地址都通過(guò)無(wú)狀態(tài)壓縮的方法進(jìn)行壓縮,因?yàn)檫@樣更符合物聯(lián)網(wǎng)底層網(wǎng)絡(luò)的實(shí)際應(yīng)用環(huán)境,降低了報(bào)頭壓縮和地址自動(dòng)配置的設(shè)計(jì)復(fù)雜性。IIPHC2具體編碼格式如圖9所示。
圖9 IIPHC2編碼格式
IIPHC2編碼格式的部分字段含義與IIPHC1方案中的相同。因此,現(xiàn)將IIPHC2中區(qū)別于IIPHC1的字段含義描述如下:
(a)GL(Global/Local):全球/鏈路本地地址標(biāo)識(shí)位。本方案中GL=0,表示地址類型為全球地址。
(b)HL(Hop Limit):跳極限壓縮位。 00:跳極限字段不壓縮;
01:跳極限字段壓縮并且跳極限的最大值為1; 10:跳極限字段壓縮并且跳極限的最大值為64; 11:跳極限字段壓縮并且跳極限的最大值為255。
(c)SMID(Shared Message IDentifier):共享消息標(biāo)識(shí)壓縮位。為了可以充分利用物聯(lián)網(wǎng)絡(luò)中大量的共享消息資源,在共享消息的幫助下獲取相關(guān)信息,壓縮冗余報(bào)頭結(jié)構(gòu),本文在IIPHC2中引入了SMID 編碼位。
00:源地址鄰居消息共享。在同一個(gè)虛擬簇下通過(guò)鄰居消息獲取源地址前綴;
01:目的地址鄰居消息共享。在同一個(gè)虛擬簇下通過(guò)鄰居消息獲取目的地址前綴;
10:源地址路由消息共享。利用鏈路封裝報(bào)頭獲取源地址接口標(biāo)識(shí)符;
11:目的地址路由消息共享。利用鏈路封裝報(bào)頭獲取目的地址接口標(biāo)識(shí)符。
(d)SAM(Source Address Mode):源地址模式壓縮位。
00:源地址不壓縮,長(zhǎng)度為128 bit;
01:壓縮源地址前綴,剩余長(zhǎng)度為64 bit; 10:壓縮源地址前綴及部分接口標(biāo)識(shí)符,僅保留16 bit短地址,剩余長(zhǎng)度為16 bit;
11:源地址完全省略,相關(guān)地址信息完全由共享消息計(jì)算得出,剩余長(zhǎng)度為0 bit。
(e)M(Multicast):目的地址類型標(biāo)識(shí)位。0:目的地址是單播地址;1:目的地址是組播地址。
(f)DAM(Destination Address Mode):目的地址模式壓縮位。當(dāng)M=0時(shí),DAM 與SAM 的編碼方式相同,當(dāng)M=1時(shí),壓縮字段含義如下:
00:目的地址不壓縮,長(zhǎng)度為128 bit;
01:依據(jù)組標(biāo)識(shí)符的范圍,目的地址壓縮長(zhǎng)度為48 bit;
10:依據(jù)組標(biāo)識(shí)符的范圍,目的地址壓縮長(zhǎng)度為32 bit;
11:依據(jù)組標(biāo)識(shí)符的范圍,目的地址壓縮長(zhǎng)度為8 bit。
4 仿真及測(cè)試
通過(guò)C 編譯6LoWPAN 模塊,并將其嵌入到OMNeT 仿真軟件的Mobility Framework(MF)模塊中,MF 模塊包含IEEE 802.15.4協(xié)議,仿真最大數(shù)據(jù)報(bào)大小為90 byte,網(wǎng)絡(luò)范圍為40 m×40 m,數(shù)據(jù)流類型為CBR ,仿真時(shí)間為30 min。
(1)地址自動(dòng)配置仿真實(shí)驗(yàn) 通過(guò)網(wǎng)絡(luò)開(kāi)銷和時(shí)間延遲兩個(gè)性能指標(biāo)來(lái)驗(yàn)證IOTAA 方案的有效性。
對(duì)于網(wǎng)絡(luò)開(kāi)銷而言,在仿真平臺(tái)上對(duì)IOTAA,
CCAA [10]和Strong DAD[13]進(jìn)行仿真實(shí)驗(yàn)。
本文所采用的網(wǎng)絡(luò)開(kāi)銷衡量標(biāo)準(zhǔn)并不是執(zhí)行該方案時(shí)系統(tǒng)消
,768 電 子 與 信 息 學(xué) 報(bào) 第34卷
耗了多少能量,而是通過(guò)隨著節(jié)點(diǎn)數(shù)的增加,執(zhí)行該方案所產(chǎn)生的消息包數(shù)量來(lái)衡量的。圖10比較了3種方案的網(wǎng)絡(luò)開(kāi)銷:Strong DAD方案中,當(dāng)?shù)讓泳W(wǎng)絡(luò)節(jié)點(diǎn)數(shù)量增加時(shí),每個(gè)節(jié)點(diǎn)隨機(jī)選取地址發(fā)生沖突的概率也隨之增加,需要通過(guò)更多的消息包轉(zhuǎn)發(fā)來(lái)緩解地址沖突帶來(lái)的影響,所以其產(chǎn)生的消息包數(shù)量成指數(shù)增長(zhǎng);CCAA 方案由于利用三原色坐標(biāo)和節(jié)點(diǎn)位置信息實(shí)現(xiàn)IPv6地址自動(dòng)配置,同Strong DAD方案相比取得了很大程度的改進(jìn);而IOTAA 在60個(gè)節(jié)點(diǎn)的情況下所產(chǎn)生的消息包數(shù)量在200個(gè)以內(nèi),一方面是因?yàn)樵贗OTAA 的重復(fù)地址檢測(cè)過(guò)程中采用虛擬的邏輯樹(shù)結(jié)構(gòu)減少了鄰居請(qǐng)求消息的轉(zhuǎn)發(fā)范圍,另一方面是因?yàn)檎麄€(gè)網(wǎng)絡(luò)中并不是所有網(wǎng)絡(luò)節(jié)點(diǎn)都需要獲得IPv6全球路由前綴進(jìn)行數(shù)據(jù)轉(zhuǎn)發(fā)和通信,所以取得了優(yōu)于Strong DAD和CCAA 的良好效果。
對(duì)于時(shí)間延遲,本文采用隨著節(jié)點(diǎn)數(shù)的增加,不同數(shù)量網(wǎng)內(nèi)節(jié)點(diǎn)在仿真平臺(tái)上執(zhí)行3次IOTAA 方案所需要的平均時(shí)間來(lái)衡量。如圖11所示,縱坐 標(biāo)表示執(zhí)行該方案所產(chǎn)生的時(shí)間間隔(設(shè)定1個(gè)時(shí)間間隔的大小為100 ms),執(zhí)行IOTAA 方案最多需要消耗1.8 s的時(shí)間,最少僅需要幾百毫秒,而傳統(tǒng)地址自動(dòng)配置方案至少需要3 s以上的時(shí)間延遲才能完成,因此,IOTAA 方案在時(shí)間延遲方面取得了約1 s的改進(jìn),提高了底層網(wǎng)絡(luò)的時(shí)間同步精度。
(2)報(bào)頭壓縮仿真實(shí)驗(yàn) 利用系統(tǒng)吞吐量和RTT(Round-Trip Time)兩個(gè)性能指標(biāo)來(lái)驗(yàn)證IIPHC 方案的有效性。
在系統(tǒng)吞吐量方面,將本文提出的IIPHC 方案與HC1方案和IPHC 方案進(jìn)行了對(duì)比。圖12顯示了隨著數(shù)據(jù)負(fù)載的增加,3種壓縮方案的系統(tǒng)平均吞吐量。由圖12可以看出,因?yàn)镮IPHC 方案通過(guò)判別壓縮地址類型采用混合的報(bào)頭壓縮方案,所以經(jīng)過(guò)IIPHC 方案壓縮后的數(shù)據(jù)負(fù)載同HC1和IPHC 方案相比,在吞吐量方面取得了約30~60的改進(jìn),這也正是IIPHC 壓縮方案的重要優(yōu)勢(shì)之一。
圖10 地址自動(dòng)配置網(wǎng)絡(luò)開(kāi)銷 圖11 地址自動(dòng)配置時(shí)間延遲 圖12 報(bào)頭壓縮吞吐量比較
在RTT 方面,通過(guò)與HC1和IPHC 進(jìn)行比較,驗(yàn)證了IIPHC 方案在往返延遲時(shí)間上的有效性。由表1可以看出,IIPHC 在平均往返延遲時(shí)間和標(biāo)準(zhǔn)偏差方面所用的時(shí)間更少。相對(duì)于HC1和IPHC 來(lái)說(shuō),執(zhí)行IIPHC 方案需要的RTT 分別降低了約50和25,這樣的仿真結(jié)果證明了執(zhí)行IIPHC 方案節(jié)省了節(jié)點(diǎn)存儲(chǔ)空間、降低了系統(tǒng)網(wǎng)絡(luò)開(kāi)銷,與此同時(shí),反映了吞吐量性能指標(biāo)提升的正確性。
(3)尋址策略能量消耗仿真實(shí)驗(yàn) 通過(guò)將本文提出的尋址策略IOTAA IIPHC與另外兩種組合的
表1 RTT對(duì)比數(shù)據(jù)(s)
HC1 IPHC IIPHC
最大RTT 1.19 1.07 1.10
最小RTT 0.08 0.06 0.01
平均RTT 0.16 0.08 0.06
標(biāo)準(zhǔn)偏差0.07 0.06 0.04
尋址策略Strong DAD HC1和CCAA IPHC進(jìn)行對(duì)比仿真實(shí)驗(yàn),驗(yàn)證了本文提出的尋址策略在節(jié)點(diǎn)傳輸IPv6分組過(guò)程中的能量有效性。由圖13可以看出,隨著數(shù)據(jù)負(fù)載字節(jié)數(shù)的不斷增加,本文提出的尋址策略能量消耗呈線性增長(zhǎng),但是其始終維持在10?1 mJ的量級(jí)上,即使傳輸負(fù)載達(dá)到最大90 byte ,能量消耗依然會(huì)保持在1 mJ以內(nèi)。而
圖13 尋址策略能量比較
,第4期 王義君等: 基于6LoWPAN 的物聯(lián)網(wǎng)尋址策略研究 769
StrongDAD HC1和CCAA IPHC尋址策略隨著數(shù)據(jù)負(fù)載的增加,能量消耗明顯高于本文提出的尋址策略,因此改進(jìn)的尋址策略降低了網(wǎng)絡(luò)能量消耗,為物聯(lián)網(wǎng)底層網(wǎng)絡(luò)的大規(guī)模應(yīng)用奠定了能量基礎(chǔ)。
5 結(jié)束語(yǔ)
本文在6LoWPAN 的基礎(chǔ)上,分析了IPv6地址應(yīng)用于未來(lái)物聯(lián)網(wǎng)存在的技術(shù)挑戰(zhàn),提出了適用于底層網(wǎng)絡(luò)向物聯(lián)網(wǎng)擴(kuò)展的尋址策略。物聯(lián)網(wǎng)尋址最重要的兩個(gè)方面是實(shí)現(xiàn)底層網(wǎng)絡(luò)節(jié)點(diǎn)IPv6地址的自動(dòng)配置以及地址的報(bào)頭壓縮,本文針對(duì)這兩個(gè)方面給出了有效的解決方案,使網(wǎng)絡(luò)層向上對(duì)傳輸層提供簡(jiǎn)單靈活、無(wú)連接、盡最大努力交付的可靠分組服務(wù),使MAC 層向下不必考慮物理層如何實(shí)現(xiàn)位傳輸?shù)募?xì)節(jié)。通過(guò)仿真實(shí)驗(yàn)證明該尋址策略對(duì)于未來(lái)物聯(lián)網(wǎng)應(yīng)用具有有效融合異構(gòu)網(wǎng)絡(luò)、降低系統(tǒng)能耗、增加網(wǎng)絡(luò)吞吐量以及保證系統(tǒng)實(shí)時(shí)性等特點(diǎn)。但是,物聯(lián)網(wǎng)的大規(guī)模應(yīng)用還存在許多不確定因素,相關(guān)技術(shù)環(huán)節(jié)有待突破。在上述工作的基礎(chǔ)上,下一步工作目標(biāo)主要集中在物聯(lián)網(wǎng)絡(luò)時(shí)間同步以及泛在網(wǎng)絡(luò)協(xié)議研究。
參 考 文 獻(xiàn)
[1]
Welbourne E, Battle L, Cole G, et al.. Building the internet of things using RFID: the RFID ecosystem experience[J]. IEEE Internet Computing, 2009, 13(3): 48-55. [2]
王雪, 錢志鴻, 胡正超, 等. 基于二叉樹(shù)的RFID 防碰撞算法的研究[J]. 通信學(xué)報(bào), 2010, 31(6): 49-57.
Wang Xue, Qian Zhi-hong, Hu Zheng-chao, et al.. Research on RFID anti-collision algorithms based on binary tree[J]. Journal on Communications, 2010, 31(6): 49-57. [3]
Wu Miao, Lu Ting-jie, Ling Fei-yang, et al.. Research on the architecture of Internet of Things[C]. Proceedings of 2010 third International Conference on Advanced Computer Theory and Engineering, Chengdu, China, Aug. 20-22, 2010, 5: 484-487. [4]
錢志鴻, 郭雨齊, 侯金鳳, 等. 基于信道轉(zhuǎn)換的藍(lán)牙微微網(wǎng)之間同頻干擾抑制方法[J]. 電子與信息學(xué)報(bào), 2011, 33(12): 2995-3001.
Qian Zhi-hong, Guo Yu-qi, Hou Jin-feng, et al.. Co-channel interference suppression method based on channel switching for Bluetooth piconets[J]. Journal of Electronics & Information Technology, 2011, 33(12): 2995-3001. [5]
Evdokimov S, Fabian B, Kunz S, et al.. Comparison of discovery service architectures for the Internet of Things[C]. SUTC 2010 IEEE International Conference on Sensor Networks, Ubiquitous, and Trustworthy Computing, UMC
2010 IEEE International Workshop on Ubiquitous and Mobile Computing, Hyatt Regency Newport Beach, California, USA, June 7, 2010: 237-244. [6]
朱洪波, 楊龍祥, 于全. 物聯(lián)網(wǎng)的技術(shù)思想與應(yīng)用策略研究[J]. 通信學(xué)報(bào), 2010, 31(6): 2-9.
Zhu Hong-bo, Yang Long-xiang, and Yu Quan. Investigation of Technical thought and application strategy for the Internet of Things[J]. Journal on Communications, 2010, 31(6): 2-9. [7]
張福生. 物聯(lián)網(wǎng)
開(kāi)啟全新生活的智能時(shí)代[M]. 山西 : 山
西人民出版社, 2010: 119-174.
Zhang Fu-sheng. Internet of Things.1[M]. Shanxi: Shanxi People’s Press, 2010: 119-174. [8]
Mazzer Y and Tourancheau B. Comparisons of 6LoWPAN Implementations on Wireless Sensor Networks[C]. 2009 Third International Conference on Sensor Technologies and Applications, Athens/Glyfada, Greece, June 18-23, 2009: 689-692. [9]
Jara A J, Zamora M A, and Skarmeta A F G. An architecture based on Internet of Things to support mobility and security in medical environments[C]. 2010 Seventh IEEE Consumer Communications and Networking Conference, Las Vegas, Nevada, USA, Jan 9-12, 2010: 1-5.
[10] Shin H, Tlipov E, and Hojung C. IPv6 lightweight stateless
address autoconfiguration for 6LoWPAN using color coordinators[C]. Proceedings of the 2009 IEEE International Conference on Pervasive Computing and Communications, Washington, USA, 2009: 1-9.
[11] Montenegro G, Kushalnagar N, and Hui J. Transmission of
IPv6 packets over IEEE802.15.4 networks[S]. IETF RFC 4944, 2007.
[12] Hui J and Thubert P. Compression format for IPv6
datagrams over IEEE 802.15.4-based networks[S]. IETF RFC 6282, 2011.
[13] Perkins C, Malinen J, Wakikawa R, et al.. IP address
autoconfiguration for Ad hoc networks[S]. IETF draft, 2001.
王義君: 男,1984年生,博士生,研究方向?yàn)閃SNs 時(shí)間同步及
路由策略、物聯(lián)網(wǎng)底層網(wǎng)絡(luò)接入技術(shù).
錢志鴻: 男,1957年生,教授,博士生導(dǎo)師,主要研究方向?yàn)榛?/p>
于藍(lán)牙、ZigBee 等短距離無(wú)線通信技術(shù)的無(wú)線個(gè)域網(wǎng)、無(wú)線傳感器網(wǎng)絡(luò)、物聯(lián)網(wǎng)協(xié)議構(gòu)架及關(guān)鍵技術(shù).
王 雪: 女,1984年生,博士生,研究方向?yàn)閁WB 技術(shù)及物聯(lián)
網(wǎng)感知層技術(shù).
孫大洋: 男,1979年生,講師,研究方向?yàn)闊o(wú)線網(wǎng)絡(luò)定位技術(shù).