IEEE 802.15.4[1] 是一組低功耗、低速率短距離無線傳輸協(xié)議,作為Zigbee WirelessHART、6LoWPAN 與MiWi 等協(xié)議的基礎(chǔ),描述了低速率無線個(gè)人局域網(wǎng)的物理層和媒體接入控制協(xié)議。其低功耗、低成本的優(yōu)點(diǎn)使其在無線傳感領(lǐng)域中獲得了廣泛的應(yīng)用,特別是基于Zigbee 協(xié)議[2]的應(yīng)用已經(jīng)遍布于工業(yè)控制、智能測(cè)繪、醫(yī)療、家居等各行各業(yè)。
Zigbee 協(xié)議棧緊湊簡(jiǎn)單,制訂了完整的網(wǎng)絡(luò)層與應(yīng)用層協(xié)議,并提供豐富的接口與安全管理體系。相對(duì)于常見的無線通信標(biāo)準(zhǔn),Zigbee 具體實(shí)現(xiàn)要求很低,只要8 位處理器再配上4 kB ROM 和64 kB RAM 等就可以滿足其最低需要,從而大大降低了芯片成本。但是Zigbee 基本協(xié)議及其終端只能實(shí)現(xiàn)與Zigbee 終端的交互,無法實(shí)現(xiàn)IP 尋址。雖然Zigbee 聯(lián)盟最近提出了Zigbee-IP 的概念,但Zigbee 協(xié)議棧的獨(dú)立性與非開源性質(zhì)增加了其與傳統(tǒng)IP 網(wǎng)絡(luò)及其節(jié)點(diǎn)的交互的難度。
隨著物聯(lián)網(wǎng)的興起,無線傳感器網(wǎng)絡(luò)(WSN)向IPv6 網(wǎng)絡(luò)的融合逐漸提上日程,基于IPv6 的低功耗無線個(gè)域網(wǎng)(6LoWPAN) [3] 由此應(yīng)運(yùn)而生。6LoWPAN 協(xié)議主要在IEEE 802.15.4鏈路層之上實(shí)現(xiàn)了精簡(jiǎn)的IPv6 協(xié)議,通過在鏈路層與IP 層間添加適配層實(shí)現(xiàn)首部壓縮與數(shù)據(jù)包的分片重裝,很好地實(shí)現(xiàn)了IPv6 網(wǎng)絡(luò)與低功耗無線網(wǎng)絡(luò)之間的協(xié)議適配。目前,IETF 6LoWPAN 工作組已經(jīng)形成的3個(gè)標(biāo)準(zhǔn)文檔,提出了低功耗網(wǎng)絡(luò)中運(yùn)行IP6 協(xié)議的假設(shè)、問題和目標(biāo)[4],制訂了6LoWPAN 的功能及報(bào)文格式[5],以及基于上下文(Context)的IP 報(bào)文頭壓縮(IPHC) 方法[6]。此外,還出臺(tái)了6LoWPAN 鄰居發(fā)現(xiàn)協(xié)議、低功耗有損網(wǎng)絡(luò)路由協(xié)議(RPL) 等相關(guān)標(biāo)準(zhǔn)草稿。基于該標(biāo)準(zhǔn)體系的系統(tǒng)開發(fā)已經(jīng)成功應(yīng)用于相關(guān)產(chǎn)品中,如Sensinode 公司的基于NanoStack 的NanoRouter 產(chǎn)品和NanoService 產(chǎn)品、TI 公司生產(chǎn)的基于CC-6LoWPAN 的Sub-GHz 6LoWPAN Network Processor產(chǎn)品等。
IETF 核心工作組專為資源能量帶寬受限的網(wǎng)絡(luò)( 如6LoWPAN) 設(shè)計(jì)了輕量級(jí)的應(yīng)用層協(xié)議(CoAP)[7],處于數(shù)據(jù)報(bào)協(xié)議(UDP) 之上,為應(yīng)用終端之間提供了一種方法/響應(yīng)交互模式,支持內(nèi)置的資源發(fā)現(xiàn)(RD)機(jī)制以及組播機(jī)制,同時(shí)包含幾個(gè)關(guān)鍵Web概念如統(tǒng)一資源標(biāo)識(shí)符(URI) 和內(nèi)容類型。CoAP 是對(duì)超文本傳輸協(xié)議(HTTP)的一種簡(jiǎn)化,滿足輕量級(jí)的同時(shí)還便于與HTTP 進(jìn)行轉(zhuǎn)化。
綜上所述,無論從物聯(lián)網(wǎng)還是WSN 的發(fā)展趨勢(shì)來看,6LoWPAN 作為一種新興的基于IPv6 的無線傳感網(wǎng)協(xié)議,具備更高的應(yīng)用價(jià)值與發(fā)展?jié)摿Α5珡哪壳暗男袠I(yè)應(yīng)用現(xiàn)狀分析,未來很長(zhǎng)一段時(shí)間內(nèi),Zigbee 仍然會(huì)承擔(dān)一個(gè)很重要的角色。6LoWPAN 的逐步推廣使得兩種網(wǎng)絡(luò)及其節(jié)點(diǎn)的互通成為必然。本文在原有6LoWPAN 以及Zigbee 標(biāo)準(zhǔn)不變的基礎(chǔ)上,首先分析了異構(gòu)節(jié)點(diǎn)互通問題,并設(shè)計(jì)了協(xié)議轉(zhuǎn)換、網(wǎng)關(guān)功能以及節(jié)點(diǎn)交互流程;然后分析了現(xiàn)有的異構(gòu)節(jié)點(diǎn)互通方案,給出了本文設(shè)計(jì)的異構(gòu)節(jié)點(diǎn)互通場(chǎng)景、系統(tǒng)結(jié)構(gòu)、協(xié)議轉(zhuǎn)換模式以及網(wǎng)關(guān)功能;最后對(duì)尋址、服務(wù)發(fā)現(xiàn)等互聯(lián)互通關(guān)鍵技術(shù)進(jìn)行了分析,并基于此設(shè)計(jì)了異構(gòu)節(jié)點(diǎn)交互流程。
1、異構(gòu)網(wǎng)絡(luò)協(xié)議融合互通的相關(guān)研究
6LoWPAN 作為一個(gè)將低功耗網(wǎng)絡(luò)融合到傳統(tǒng)網(wǎng)絡(luò)的協(xié)議,與Zigbee協(xié)議的互通問題同樣與IPv6 協(xié)議密不可分。實(shí)現(xiàn)異構(gòu)網(wǎng)絡(luò)協(xié)議的融合互通一般采用在網(wǎng)絡(luò)層進(jìn)行協(xié)議轉(zhuǎn)換,因此Zigbee 協(xié)議與IPv6 協(xié)議的轉(zhuǎn)換過程必不可少。目前Zigbee 與IPv6融合的技術(shù)相對(duì)比Zigbee 與6LoWPAN 融合的技術(shù)更全面些。
1.1 Zigbee-6LoWPAN
現(xiàn)有Zigbee 與6LoWAN 互通方案如圖1 所示。目前有關(guān)Zigbee 節(jié)點(diǎn)與6LoWPAN 節(jié)點(diǎn)互通的方案較少,總結(jié)起來主要包括雙棧網(wǎng)關(guān)與雙棧節(jié)點(diǎn)兩種方案。兩種方案的共通點(diǎn)是在Zigbee 的應(yīng)用層添加了IPv6 協(xié)議塊,即將IP 數(shù)據(jù)包作為應(yīng)用層數(shù)據(jù)處理。雙棧節(jié)點(diǎn)可實(shí)現(xiàn)Zigbee 與6LoWPAN 的功能,但不能同時(shí)實(shí)現(xiàn),且對(duì)于功耗、資源限制的節(jié)點(diǎn)來說不適用。雙棧網(wǎng)關(guān)很好地減少了域內(nèi)節(jié)點(diǎn)的資源能源消耗。這兩種方案仍停留在框架層面,均未實(shí)現(xiàn)首部壓縮與解壓縮以及數(shù)據(jù)包的分片與重裝,也未解決關(guān)鍵的尋址問題與服務(wù)發(fā)現(xiàn)問題。由于6LoWPAN 與IPv6 密不可分的關(guān)系,上述部分問題可在Zigbee 與IPv6 網(wǎng)絡(luò)融合方案中找到相近的解決方案。
圖1 現(xiàn)有Zigbee 與6LoWAN 互通方案
1.2 Zigbee-IPv6
Zigbee 與IPv6 網(wǎng)絡(luò)互通的最直接的方式就是在Zigbee 網(wǎng)絡(luò)層與應(yīng)用層之間添加IPv6/UDP 層,此時(shí)所有的Zigbee 節(jié)點(diǎn)均被分配了一個(gè)IPv6 地址。當(dāng)網(wǎng)關(guān)(Zigbee 協(xié)調(diào)器) 處收到IP網(wǎng)絡(luò)數(shù)據(jù)包時(shí),將其封裝成Zigbee 網(wǎng)絡(luò)層并轉(zhuǎn)發(fā)至Zigbee 網(wǎng)絡(luò)中。當(dāng)網(wǎng)關(guān)收到Zigbee 數(shù)據(jù)包時(shí),則將其解封裝并利用IPv6 載荷繼續(xù)傳輸。由于Zigbee/ 802.15.4 中的數(shù)據(jù)為異步通信方式,所以一般采用UDP 協(xié)議傳輸數(shù)據(jù)。這種方式最大的問題在于數(shù)據(jù)包大小,也就是首部壓縮與數(shù)據(jù)分片的問題。
Sakane S 等人設(shè)計(jì)了一種基于地址轉(zhuǎn)換的Zigbee 節(jié)點(diǎn)與IPv6 節(jié)點(diǎn)的交互機(jī)制[8]。通過雙棧網(wǎng)關(guān)實(shí)現(xiàn)地址轉(zhuǎn)換。這種方式解決了Zigbee 節(jié)點(diǎn)與IPv6 節(jié)點(diǎn)的地址統(tǒng)一問題,但是打破了Zigbee 端到端的信息安全等特征,且沒有解決Zigbee 網(wǎng)絡(luò)中最重要的服務(wù)發(fā)現(xiàn)功能。
Reen-Cheng Wang 等人對(duì)上述基于NAT 的交互方式進(jìn)行了改進(jìn),提出了一套完整的Zigbee 節(jié)點(diǎn)與IPv6 節(jié)點(diǎn)交互機(jī)制。IPv6 over Zigbee 交互機(jī)制[9]如圖2 所示。雙棧網(wǎng)關(guān)不僅實(shí)現(xiàn)了Zigbee 地址與IPv6 地址之間的轉(zhuǎn)換,也實(shí)現(xiàn)了Zigbee 服務(wù)發(fā)現(xiàn)功能與IP 網(wǎng)絡(luò)的簡(jiǎn)單服務(wù)發(fā)現(xiàn)協(xié)議(SSDP)的轉(zhuǎn)換。Zigbee-IPv6 協(xié)議棧如圖3 所示。協(xié)議轉(zhuǎn)換是在雙棧網(wǎng)關(guān)的網(wǎng)絡(luò)層進(jìn)行的,保證了應(yīng)用層數(shù)據(jù)傳輸?shù)募用軝C(jī)制。為了防止廣播風(fēng)暴,該機(jī)制對(duì)每個(gè)Zigbee 域設(shè)定為一個(gè)多播組,更好地支持了低功耗網(wǎng)絡(luò)與IP 網(wǎng)絡(luò)的融合。但此方案依然沒有解決數(shù)據(jù)包分片的問題。上述關(guān)于Zigbee與IPv6 的融合方案,網(wǎng)絡(luò)地址轉(zhuǎn)換、服務(wù)發(fā)現(xiàn)功能轉(zhuǎn)換等機(jī)制對(duì)6LoWPAN 與IP 網(wǎng)絡(luò)以及Zigbee 網(wǎng)絡(luò)的融合有很好的借鑒作用。
圖2 IPv6 over Zigbee 交互機(jī)制
圖3 Zigbee-IPv6 協(xié)議棧
2、6LoWPAN-IPv6-Zigbee系統(tǒng)架構(gòu)
圖4 所示為本文所實(shí)現(xiàn)的6LoWPAN-IPv6-Zigbee 架構(gòu)中異構(gòu)節(jié)點(diǎn)互通的場(chǎng)景。6LoWPAN 節(jié)點(diǎn)與Zigbee 節(jié)點(diǎn)處于同一混合域中,通過同一個(gè)功能復(fù)雜的邊界網(wǎng)關(guān)實(shí)現(xiàn)域內(nèi)異構(gòu)節(jié)點(diǎn)間的互通,并可接入IP 網(wǎng)絡(luò)實(shí)現(xiàn)與其他節(jié)點(diǎn)互通。
圖4 異構(gòu)節(jié)點(diǎn)通信應(yīng)用場(chǎng)景
2.1 協(xié)議轉(zhuǎn)換模式
圖5 所示為在圖4 所示的應(yīng)用場(chǎng)景下網(wǎng)關(guān)中的協(xié)議轉(zhuǎn)換圖。同一域內(nèi)的Zigbee 節(jié)點(diǎn)與6LoWPAN 節(jié)點(diǎn)之間的交互主要通過網(wǎng)關(guān)中Zigbee 協(xié)議棧與6LoWPAN 協(xié)議棧之間的轉(zhuǎn)發(fā)實(shí)現(xiàn)。此外,在邊界網(wǎng)關(guān)中同樣設(shè)置IPv6 協(xié)議棧,以便域內(nèi)節(jié)點(diǎn)與域外的IPv6 節(jié)點(diǎn)或者其他域節(jié)點(diǎn)進(jìn)行通信。在處理服務(wù)發(fā)現(xiàn)協(xié)議的組播消息時(shí)網(wǎng)關(guān)也需要進(jìn)行上層協(xié)議解析并且可以在不同的服務(wù)發(fā)現(xiàn)協(xié)議間進(jìn)行轉(zhuǎn)換。
圖5 協(xié)議轉(zhuǎn)換模式
2.2 網(wǎng)關(guān)功能描述
邊界網(wǎng)關(guān)是Zigbee 協(xié)調(diào)器與6LoWPAN 邊界路由器功能的結(jié)合,同時(shí)還需完成Zigbee 協(xié)調(diào)器與6LoWPAN 邊界路由的交互功能。
網(wǎng)關(guān)功能主要有:
(1) 基本協(xié)議解析功能,包括Zigbee 協(xié)議、6LoWPAN協(xié)議以及IPv6 協(xié)議棧。
(2) 網(wǎng)絡(luò)層協(xié)議轉(zhuǎn)換,主要提供首部轉(zhuǎn)換模塊,即將Zigbee 協(xié)議的網(wǎng)絡(luò)層首部與IP 首部進(jìn)行轉(zhuǎn)換,必要時(shí)可以將Zigbee 的應(yīng)用支持子層(APS) 首部與傳輸層協(xié)議進(jìn)行轉(zhuǎn)換。
(3) 地址轉(zhuǎn)換功能。由于是網(wǎng)絡(luò)層轉(zhuǎn)發(fā),Zigbee 地址需先轉(zhuǎn)換為IPv6 地址,然后通過6LoWPAN 進(jìn)行地址壓縮。由于邊界網(wǎng)關(guān)同時(shí)包含Zigbee協(xié)議與6LoWPAN 協(xié)議,且兩種協(xié)議使用不同的方法分配16 位短地址,因此在邊界網(wǎng)關(guān)中地址映射表存在3種鏈路層地址:EUI-64、6LoWPAN16位短地址、Zigbee16 位短地址。
(4)服務(wù)發(fā)現(xiàn)協(xié)議轉(zhuǎn)換,主要在應(yīng)用層通過Zigbee 的應(yīng)用層數(shù)據(jù)格式與CoAP-HTTP 格式轉(zhuǎn)換來實(shí)現(xiàn)Zigbee 設(shè)備對(duì)象- 服務(wù)發(fā)現(xiàn)(ZDO-SD)協(xié)議與輕量級(jí)的應(yīng)用層- 資源發(fā)現(xiàn)(CoAP-RD)協(xié)議的轉(zhuǎn)換。
3、關(guān)鍵技術(shù)
3.1 網(wǎng)絡(luò)地址轉(zhuǎn)換
異構(gòu)網(wǎng)絡(luò)協(xié)議互通的首要問題是尋址。每個(gè)Zigbee 節(jié)點(diǎn)需要一個(gè)IPv6 地址來與6LoWPAN 節(jié)點(diǎn)通信。6LoWPAN-IPv6-Zigbee 地址的轉(zhuǎn)換過程通常在邊界網(wǎng)關(guān)實(shí)現(xiàn)。
IEEE 802.15.4 定義的鏈路層地址有兩種:由設(shè)備制造商設(shè)定的全球唯一的EUI-64 地址以及在個(gè)域網(wǎng)(PAN)內(nèi)動(dòng)態(tài)分配的16 位短地址。由于Zigbee 與6LoWPAN 均是基于IEEE802.15.4 底層協(xié)議的,因此這兩種地址在兩種網(wǎng)絡(luò)協(xié)議中同時(shí)存在,但要實(shí)現(xiàn)跨協(xié)議數(shù)據(jù)傳輸,則只能采用由EUI-64 生成IPv6 地址的方式。
6LoWPAN 網(wǎng)絡(luò)與Zigbee 網(wǎng)絡(luò)各自進(jìn)行域內(nèi)通信時(shí)通常使用16 位短地址,但兩者的生成方式不同。6LoWPAN 邊界路由采用重復(fù)地址檢測(cè)機(jī)制(DAD) 為節(jié)點(diǎn)分配短地址,而Zigbee 協(xié)調(diào)器則采用CSkips 算法為節(jié)點(diǎn)分配短地址。因此邊界網(wǎng)關(guān)應(yīng)為需要進(jìn)行異構(gòu)通信的節(jié)點(diǎn)分配兩種短地址,即每一個(gè)EUI-64 地址對(duì)應(yīng)一個(gè)6LoWPAN 短地址和一個(gè)Zigbee短地址。
由于Zigbee 協(xié)議不存在適配層,因此需在其中添加Zigbee 地址與IPv6地址轉(zhuǎn)換模塊。此外,在邊界網(wǎng)關(guān)中需設(shè)置一個(gè)16 位Zigbee 短地址和16位6LoWPAN 短地址與EUI-64 地址的映射表。邊界網(wǎng)關(guān)中的地址映射表如表1 所示。此映射表不僅包含本域內(nèi)節(jié)點(diǎn)的16 位短地址與EUI-64 地址的映射關(guān)系,還可能包含域外節(jié)點(diǎn)的地址映射表項(xiàng)。例如,Zigbee 協(xié)調(diào)器需為某個(gè)與此域內(nèi)Zigbee 節(jié)點(diǎn)通信的6LoWPAN 節(jié)點(diǎn)分配一個(gè)16 位短地址,并在映射表中添加此條目,此時(shí)6LoWPAN 節(jié)點(diǎn)被Zigbee 節(jié)點(diǎn)當(dāng)作同種節(jié)點(diǎn)進(jìn)行通信。
表1 邊界網(wǎng)關(guān)中的地址映射表
3.2 報(bào)文轉(zhuǎn)換
由于Zigbee 地址與IPv6 地址轉(zhuǎn)換的可行,Zigbee 首部與IPv6 首部轉(zhuǎn)換也可實(shí)現(xiàn),即在Zigbee 協(xié)調(diào)器或者邊界網(wǎng)關(guān)中實(shí)現(xiàn)Zigbee 網(wǎng)絡(luò)層幀頭與IPv6 首部之間的轉(zhuǎn)換模塊。上述地址的轉(zhuǎn)換過程也包含在此報(bào)文轉(zhuǎn)換模塊中。
Zigbee 協(xié)議幀中媒體訪問控制(MAC) 幀頭之后包含8 字節(jié)網(wǎng)絡(luò)層幀頭以及2~10 字節(jié)的APS 幀頭,因此不需要像6LoWPAN 協(xié)議一樣進(jìn)行首部的壓縮與解壓縮。這兩種幀頭中除了基本的源、目的地址與端口信息外,還包含路由、安全等信息。因此在Zigbee 與IPv6 首部轉(zhuǎn)換模塊中,除了對(duì)地址進(jìn)行轉(zhuǎn)換外,還需進(jìn)行路由與安全方面的考慮。
6LoWPAN 數(shù)據(jù)包與Zigbee 數(shù)據(jù)包均在鏈路層最大傳送單元(MTU)之內(nèi),因此兩種節(jié)點(diǎn)的通信則不考慮數(shù)據(jù)包的分片與重組,但6LoWPAN 層實(shí)現(xiàn)的首部壓縮與解壓縮必不可少。
3.3 服務(wù)發(fā)現(xiàn)
在網(wǎng)絡(luò)初始化之后,節(jié)點(diǎn)通信之前的一個(gè)重要過程即服務(wù)發(fā)現(xiàn)與設(shè)備發(fā)現(xiàn)。節(jié)點(diǎn)在網(wǎng)絡(luò)上搜索自己感興趣的服務(wù)及其設(shè)備與之通信,同時(shí)需要向網(wǎng)絡(luò)廣播自己的設(shè)備信息以及服務(wù)功能信息供其他節(jié)點(diǎn)查詢。
Zigbee 聯(lián)盟在Zigbee應(yīng)用層中自己設(shè)計(jì)了一套服務(wù)發(fā)現(xiàn)與設(shè)備發(fā)現(xiàn)機(jī)制—— 在ZDO 中定義的服務(wù)發(fā)現(xiàn)(SD)機(jī)制。本文在IP 網(wǎng)絡(luò)中采用通用即插即用(UPnP)架構(gòu)及其SSDP 協(xié)議。由于UPnP 建立在UDP 協(xié)議以及HTTP之上,而6LoWPAN 支持UDP 協(xié)議以及簡(jiǎn)化的HTTP 協(xié)議( 核心工作組的CoAP 協(xié)議),因此本文在6LoWPAN 協(xié)議應(yīng)用層上也采用UPnP 架構(gòu),服務(wù)發(fā)現(xiàn)采用CoAP 協(xié)議及其RD 機(jī)制,實(shí)現(xiàn)6LoWPAN 與IPv6 節(jié)點(diǎn)及Zigbee 節(jié)點(diǎn)的服務(wù)與設(shè)備發(fā)現(xiàn)協(xié)議轉(zhuǎn)換。
圖6 為6LoWPAN、IPv6 及Zigbee節(jié)點(diǎn)基于服務(wù)發(fā)現(xiàn)機(jī)制的協(xié)議對(duì)比。
圖6 服務(wù)發(fā)現(xiàn)協(xié)議對(duì)比圖
綜上所述,在服務(wù)發(fā)現(xiàn)機(jī)制上,6LoWPAN-IPv6-Zigbee 系統(tǒng)架構(gòu)主要在邊界網(wǎng)關(guān)上實(shí)現(xiàn)基于Zigbee 的ZDO-SD 協(xié)議、基于IP 的HTTPU-SSDP 協(xié)議以及基于6LoWPAN的CoAP-RD 協(xié)議之間的轉(zhuǎn)換。
3.4 節(jié)點(diǎn)交互流程
節(jié)點(diǎn)交互過程主要分為3 個(gè)階段:網(wǎng)絡(luò)初始化階段、服務(wù)發(fā)現(xiàn)階段以及數(shù)據(jù)傳輸階段。域內(nèi)模式節(jié)點(diǎn)交互流程如圖7 所示。圖7 主要描述3 個(gè)階段中由6LoWPAN 節(jié)點(diǎn)發(fā)起Zigbee 加入請(qǐng)求情況時(shí)6LoWPAN 節(jié)點(diǎn)(A)、邊界網(wǎng)關(guān)(B)、Zigbee 節(jié)點(diǎn)(C) 之間的主要交互流程。
圖7 域內(nèi)模式節(jié)點(diǎn)交互流程
(1)網(wǎng)絡(luò)初始化
6LoWPAN 節(jié)點(diǎn)與Zigbee 節(jié)點(diǎn)共享邊界網(wǎng)關(guān)的地址前綴信息以及組播組標(biāo)識(shí),分別通過6LoWPAN 鄰居發(fā)現(xiàn)協(xié)議以及Zigbee 網(wǎng)絡(luò)發(fā)現(xiàn)協(xié)議向邊界網(wǎng)關(guān)進(jìn)行地址注冊(cè),邊界網(wǎng)關(guān)分別通過重復(fù)地址檢測(cè)機(jī)制以及CSkips 算法為節(jié)點(diǎn)分配16 位6LoWAN短地址與Zigbee 短地址。
(2)服務(wù)發(fā)現(xiàn)
節(jié)點(diǎn)A 向網(wǎng)關(guān)B 發(fā)起服務(wù)發(fā)現(xiàn)請(qǐng)求,B 實(shí)現(xiàn)RD 協(xié)議向SD 協(xié)議的轉(zhuǎn)換,并通過組播消息轉(zhuǎn)發(fā)此請(qǐng)求給Zigbee 節(jié)點(diǎn),提供相應(yīng)服務(wù)的節(jié)點(diǎn)C收到請(qǐng)求后向B 回復(fù)單播服務(wù)確認(rèn)信息。B 將回復(fù)信息經(jīng)過服務(wù)發(fā)現(xiàn)協(xié)議轉(zhuǎn)換以及地址轉(zhuǎn)換后轉(zhuǎn)發(fā)給節(jié)點(diǎn)A。
(3)數(shù)據(jù)傳輸
通過網(wǎng)絡(luò)初始化以及服務(wù)發(fā)現(xiàn)階段的交互,需要通信的兩個(gè)節(jié)點(diǎn)A與C 完成了異構(gòu)網(wǎng)絡(luò)地址注冊(cè)和設(shè)備服務(wù)信息互通,A 與C 即可順利進(jìn)行通信。通信時(shí)源地址與目的地址的設(shè)置如圖7 所示,B 通過地址映射表可實(shí)現(xiàn)網(wǎng)絡(luò)地址轉(zhuǎn)換、數(shù)據(jù)包的轉(zhuǎn)發(fā)等功能。
4、結(jié)束語(yǔ)
本文根據(jù)對(duì)已有關(guān)于6LoWPAN與Zigbee 結(jié)合方案的分析,在6LoWPAN 基本協(xié)議及其應(yīng)用層協(xié)議CoAP 的基礎(chǔ)上,結(jié)合相關(guān)方案的網(wǎng)絡(luò)地址轉(zhuǎn)換機(jī)制以及服務(wù)發(fā)現(xiàn)功能轉(zhuǎn)換機(jī)制,實(shí)現(xiàn)6LoWPAN 網(wǎng)絡(luò)與Zigbee 的互聯(lián)互通,以解決6LoWPAN與Zigbee 通信所面臨的問題。通過總體協(xié)議轉(zhuǎn)換模塊圖、節(jié)點(diǎn)交互流程圖以及對(duì)網(wǎng)關(guān)協(xié)議轉(zhuǎn)換功能的設(shè)計(jì),本文實(shí)現(xiàn)了6LoWPAN-IPv6-Zigbee 總體框架。
本文充分考慮了6LoWPAN 協(xié)議與Zigbee 協(xié)議特征,在保留原有協(xié)議基本不變的基礎(chǔ)上,通過在網(wǎng)關(guān)中添加部分轉(zhuǎn)換模塊來實(shí)現(xiàn)6LoWPAN 與Zigbee 協(xié)議的互通,提出了新的通信模式以及功能框架,具有一定的創(chuàng)新性與普適性,為更深入地研究6LoWPAN 網(wǎng)絡(luò)與異構(gòu)網(wǎng)絡(luò)融合奠定了基礎(chǔ)。
6LoWPAN-IPv6-Zigbee 提出了一些框架性的功能模塊以及節(jié)點(diǎn)交互流程,但是未對(duì)其進(jìn)行細(xì)化,因此在遇到具體應(yīng)用時(shí)還需進(jìn)一步拓展。
5、參考文獻(xiàn)
[1] IEEE 802.15.4-2006. IEEE Standard for information technology -Telecommunications and information exchange between systems - Local and metropolitan area networks specific requirements, Part 15.4: Wireless Medium access control (MAC) and physical layer (PHY) specifications for low-rate wireless personal area networks (LR-WPANs) [S]. 2006.
[2] ZigBee Specification. Version 1.0 [R]. ZigBee Alliance, 2004.
[3] SHELBY Z, BORMANN C. 6LoWPAN: The wireless embedded Internet [M]. New York, NY, USA: John Wiley & Sons Ltd, 2009.
[4] KUSHALNAGAR N, MONTENEGRO G, SCHUMACHER C. IPv6 over low-power wireless personal area networks (6LoWPANs): Overview, assumptions, problem statement, and goals [S]. RFC 4919. Fremont, CA, USA: IETF, 2007.
[5] MONTENEGRO G, KUSHALNAGAR N, HUI J, et al. Transmission of IPv6 packets over IEEE 802.15.4 networks [S]. RFC 4944. Fremont, CA, USA: IETF, 2007.
[6] HUI J, THUBERT P. Compression format for IPv6 data grams over IEEE 802.15.4-based networks [S]. RFC 6282. Fremont, CA, USA: IETF, 2011.
[7] SHELBY Z, HARTKE K, BORMANN C, et al. Constrained application protocol (CoAP) [S]. IETF Internet Draft draft-ietf-core-coap-08. 2011.
[8] SAKANE, S, ISHII Y, TOBA K, et al. A translation method between 802.15.4 nodes and IPv6 nodes [C]//Proceedings of the International Symposium on Applications and the Internet Workshops (SAINT’06), Jan 23-27, 2006, Phoenix, AZ, USA. Los Alamitos, CA, USA: IEEE Computer Society, 2006:34-37.
[9] WANG R C, CHANG R S, CHAO H C. Internetworking between ZigBee/802.15.4 and IPv6/802.3 network [R]. Taipei, China: NICI IPv6 Steering Committee, 2007.