999精品在线视频,手机成人午夜在线视频,久久不卡国产精品无码,中日无码在线观看,成人av手机在线观看,日韩精品亚洲一区中文字幕,亚洲av无码人妻,四虎国产在线观看 ?

異構WSNs通信系統(tǒng)設計與實現(xiàn)

2014-12-24 07:23:38張溢斐李小龍
科技視界 2014年2期
關鍵詞:服務

張溢斐 李小龍

(重慶郵電大學工業(yè)物聯(lián)網(wǎng)與網(wǎng)絡化控制教育部重點實驗室,中國 重慶400065)

0 引言

近年來,物聯(lián)網(wǎng)發(fā)展迅速,在工業(yè)現(xiàn)場、智能電網(wǎng)、倉儲物流等領域得到了廣泛應用。作為物聯(lián)網(wǎng)的重要組成部分,無線傳感器網(wǎng)絡(Wireless Sensor Networks,WSNs)是信息通信領域的一個熱點。無線傳感器網(wǎng)絡包含諸多協(xié)議標準,如ZigBee、6LoWPAN、ISA 100.11a、RFID等,隨著各種技術的發(fā)展,采用不同傳感網(wǎng)協(xié)議的網(wǎng)絡在現(xiàn)實生活中相互通信成為一個亟待解決的問題。

IEEE 802.15.4[1]是一種低功耗、低速率、短距離無線傳輸協(xié)議,描述了低速率無線個人局域網(wǎng)的物理層和媒體接入控制協(xié)議,具有可擴展性,且只規(guī)定了底層,即單一的媒體訪問控制(MAC)層和多樣的物理層,至于MAC以上的協(xié)議,可以采用不同的方案。由此就產(chǎn)生了多種不同的技術,比如ZigBee、6LoWPAN、ISA100.11a等。基于ZigBee協(xié)議[2]的應用已經(jīng)遍布于工業(yè)控制、智能測繪、醫(yī)療、家居等各行各業(yè),在技術的成熟度和產(chǎn)品的市場化方面都要比6LoWPAN更有優(yōu)勢,但是6LoWPAN也有其特有的優(yōu)勢,即6LoWPAN[3]網(wǎng)絡層采用IPv6協(xié)議,使得6LoWPAN設備能夠擁有IPv6地址,并在網(wǎng)絡層面上通信,甚至可以接入互聯(lián)網(wǎng),使互聯(lián)網(wǎng)的應用擴展到物理世界的任意角落。

本文研究了ZigBee網(wǎng)絡和6LoWPAN網(wǎng)絡,設計實現(xiàn)了ZigBee和6LoWPAN這兩種不同傳感器網(wǎng)絡之間相互通信的異構WSNs網(wǎng)關系統(tǒng),在不改變ZigBee與6LoWPAN協(xié)議的基礎上,成功解決了兩種無線傳感器網(wǎng)絡間不同協(xié)議互通的問題,對促進異構網(wǎng)絡之間的無縫融合有積極意義。

1 異構傳感網(wǎng)通信系統(tǒng)體系結構

圖1 異構WSNs節(jié)點通信應用場景Fig.1 Heterogeneous WSNs communication scenario

1.1 網(wǎng)關通信應用場景

圖1所示為本文所實現(xiàn)的ZigBee與6LoWPAN傳感器網(wǎng)絡中異構節(jié)點互通的場景。ZigBee網(wǎng)絡與6LoWPAN網(wǎng)絡通過本文設計的一個網(wǎng)關實現(xiàn)異構傳感網(wǎng)節(jié)點間的互通,并可接入IP網(wǎng)絡與互聯(lián)網(wǎng)上的節(jié)點實現(xiàn)互通。

1.2 網(wǎng)關協(xié)議轉(zhuǎn)換模型

圖2 協(xié)議轉(zhuǎn)換模型Fig.2 Protocol conversion model

圖2所示是在圖1的具體應用場景中網(wǎng)關的協(xié)議轉(zhuǎn)換圖。ZigBee網(wǎng)絡接入模塊與6LoWPAN接入模塊分別通過串口與ARM處理器相連,一起構成網(wǎng)關的整體。ZigBee節(jié)點采集到的數(shù)據(jù)通過無線發(fā)送給ZigBee協(xié)調(diào)器,即ZigBee網(wǎng)絡接入模塊,解析出數(shù)據(jù)的有效載荷,通過SLIP協(xié)議發(fā)給ARM處理器,轉(zhuǎn)換成IPv6數(shù)據(jù),再通過SLIP協(xié)議發(fā)送給6LoWPAN邊界路由器,即6LoWPAN網(wǎng)絡接入模塊,繼而轉(zhuǎn)發(fā)給6LoWPAN節(jié)點。

1.3 網(wǎng)關功能描述

網(wǎng)關由ARM處理器、ZigBee模塊、6LoWPAN模塊組成,ZigBee模塊與6LoWPAN模塊還分別作為ZigBee網(wǎng)絡的協(xié)調(diào)器與6LoWPAN網(wǎng)絡的邊界路由器。

網(wǎng)關功能主要有:

(1)基本協(xié)議解析功能,包括ZigBee協(xié)議、6LoWPAN協(xié)議以及IPv6協(xié)議。

(2)服務查詢功能,主要通過在網(wǎng)關建立起一個存儲傳感網(wǎng)節(jié)點EUI-64地址與所提供服務的服務表實現(xiàn),節(jié)點向網(wǎng)關發(fā)送服務查詢請求命令,網(wǎng)關向節(jié)點返回服務查詢響應。

(3)協(xié)議轉(zhuǎn)換功能。EUI-64地址要轉(zhuǎn)換成IPv6地址,ZigBee數(shù)據(jù)包轉(zhuǎn)換成IPv6數(shù)據(jù)包。

2 關鍵技術

2.1 服務注冊及服務查詢

2.1.1 服務注冊

服務注冊是將兩個傳感網(wǎng)中所有節(jié)點的EUI-64地址與其所提供的服務建立映射關系,將這些服務和提供服務的節(jié)點信息存儲在服務表中,從而使網(wǎng)關具有服務查詢功能[5]。

首先是網(wǎng)關初始化。ZigBee網(wǎng)絡和6LoWPAN網(wǎng)絡采用動態(tài)組網(wǎng)方式自動組網(wǎng),之后ZigBee節(jié)點上傳自身信息給ZigBee協(xié)調(diào)器,包括EUI-64地址、提供的服務類型(溫濕度檢測、設備控制等),6LoWPAN節(jié)點同樣上傳信息給邊界路由器,最后ARM處理器匯總信息,建立映射并生成服務表。服務表如表1所示。

表1 服務表Tab.1 Service table

2.1.2 服務查詢

服務查詢是傳感網(wǎng)節(jié)點向網(wǎng)關提出服務查詢請求,網(wǎng)關向節(jié)點返回服務查詢響應。

為了傳感器節(jié)點能查詢到服務提供者的EUI-64地址,設立了服務代碼表,如表2所示,定義了服務查詢請求以及服務查詢響應的數(shù)據(jù)包格式,如圖3和圖4所示:

(1)服務代碼表

把溫度、濕度、一氧化碳濃度等服務類型分別用以下代碼表示,如表2所示:

表2 服務代碼表Tab.2 Service code table

(2)服務查詢請求

圖3 服務查詢請求數(shù)據(jù)包格式Fig.3 Service query request frame format

其中,字符“?”為數(shù)據(jù)包的標志位,字符“P”為數(shù)據(jù)包的識別符,字符“1”為要查詢的服務——濕度。

(3)服務查詢響應

圖4 服務查詢響應數(shù)據(jù)包格式Fig.4 Service query response frame format

其中,字符“!”為數(shù)據(jù)包的標志位,字符“P”為數(shù)據(jù)包的識別符,字符“1”為要查詢的服務——濕度,EUI-64為濕度服務提供者的EUI-64地址。

節(jié)點查詢到服務提供者的EUI-64地址后,就可以構造報文發(fā)送到相應節(jié)點了。

2.2 應用層通信協(xié)議設計

ZigBee節(jié)點與6LoWPAN節(jié)點發(fā)送數(shù)據(jù)的時候要把自身的EUI-64地址、查詢得到的6LoWPAN的EUI-64地址以及真正要發(fā)送的數(shù)據(jù)打包放在應用層負載中,因此,應用層數(shù)據(jù)通信協(xié)議就需要包含這些必要信息數(shù)據(jù)。在傳輸過程中統(tǒng)一的數(shù)據(jù)報文格式[6]如圖5所示。

圖5 應用層數(shù)據(jù)格式Fig.5 Application layer data format

2.3 SLIP封裝與解封裝

ZigBee無線模塊與6LoWPAN無線模塊都通過串口與ARM處理器相連,數(shù)據(jù)的傳輸通過串口進行。為了增加Linux主控單元和WSN子網(wǎng)接入模塊之間通信的安全性,在報文傳輸過程中采用SLIP協(xié)議封裝[7],接收數(shù)據(jù)時可以通過SLIP的標志位判斷數(shù)據(jù)是否完整來決定接收或者丟棄,SLIP作為鏈路層協(xié)議直接承載IP數(shù)據(jù)包。SLIP協(xié)議封裝具體格式如圖6所示,將原報文中的字符0xC0替換為0XDB、0xDC,將字符0xDB替換為0xDB、0xDD,解封裝是反之即可,這里不再贅述。

圖6 SLIP的封裝過程Fig.6 Encapsulation process of SLIP

2.4 UDP/IPv6數(shù)據(jù)包的封裝與解封裝

ZigBee數(shù)據(jù)需要轉(zhuǎn)換成IPv6數(shù)據(jù)來與6LoWPAN網(wǎng)絡通信,且6LoWPAN傳輸層采用UDP協(xié)議,因此UDP/IPv6數(shù)據(jù)包封裝與解封裝必不可少。

當應用層的數(shù)據(jù)產(chǎn)生后,首先要在傳輸層添加UDP首部,然后在網(wǎng)絡層添加IPv6首部,最后在數(shù)據(jù)鏈路層添加SLIP首部,生成UDP/IPv6數(shù)據(jù)包的過程如圖7所示。

ARM板串口接收到ZigBee模塊發(fā)送來的數(shù)據(jù)包,SLIP解封裝后得到應用層數(shù)據(jù),依次取出報文中的各個變量,即ZigBee節(jié)點EUI-64地址、6LoWPAN節(jié)點的EUI-64地址、數(shù)據(jù)包長度、純數(shù)據(jù)。按照IPv6首部、UDP首部、UDP偽首部、UDP校驗和的規(guī)定依次填充各個變量,最終構造出UDP/IPv6數(shù)據(jù)包[8]。然后添加SLIP首部后通過串口發(fā)送給6LoWPAN邊界路由器,邊界路由器將IPv6報文壓縮到只含必要內(nèi)容,且能在以IEEE 802.15.4標準為底層協(xié)議的WSN內(nèi)傳輸?shù)男?shù)據(jù)包,之后發(fā)送給目的6LoWPAN節(jié)點。

6LoWPAN節(jié)點發(fā)送數(shù)據(jù)到ZigBee節(jié)點時,要進行UDP/IPv6數(shù)據(jù)包的解封裝,過程與前面所述相反。

圖7 UDP/IPv6數(shù)據(jù)包封裝過程Fig.7 Encapsulation process of UDP/IPv6 data packets

2.5 網(wǎng)關節(jié)點交互流程

節(jié)點交互過程主要分為3個階段:網(wǎng)關初始化階段、服務查詢階段以及數(shù)據(jù)傳輸階段。圖8所示為ZigBee節(jié)點(A)、異構WSNs網(wǎng)關(B)、6LoWPAN節(jié)點(C)之間的交互流程[9]。主要描述了3個階段中網(wǎng)關初始化生成服務表后,由ZigBee節(jié)點發(fā)起服務查詢請求,網(wǎng)關返回服務查詢響應,ZigBee節(jié)點得到目的6LoWPAN節(jié)點地址后,發(fā)送數(shù)據(jù)到6LoWPAN節(jié)點,6LoWPAN節(jié)點接收數(shù)據(jù)的整個過程。

(1)網(wǎng)關初始化

網(wǎng)關初始化包括網(wǎng)絡初始化和服務注冊。網(wǎng)關啟動后,ZigBee節(jié)點和6LoWPAN節(jié)點分別自動組網(wǎng),建立ZigBee網(wǎng)絡和6LoWPAN網(wǎng)絡,之后節(jié)點向網(wǎng)關上傳自己的EUI-64地址和所提供的服務,完成服務注冊,由此網(wǎng)關建立起節(jié)點EUI-64地址與所提供服務的一一映射,存儲ZigBee節(jié)點和6LoWPAN節(jié)點的EUI-64地址及節(jié)點提供的服務。

圖8 網(wǎng)關節(jié)點交互流程Fig.8 Interaction flow of gateway nodes

圖9 網(wǎng)關測試系統(tǒng)示意圖Fig.9 Gateway test system schematic diagram

(2)服務查詢

節(jié)點A向網(wǎng)關B發(fā)起服務查詢請求,B收到請求后在服務表中查詢此服務由哪個6LoWPAN節(jié)點提供,查詢到是節(jié)點C后,把節(jié)點C的EUI-64地址回復給節(jié)點A,于是節(jié)點A就知道了節(jié)點C的EUI-64地址。

(3)數(shù)據(jù)傳輸

經(jīng)過上面兩步網(wǎng)絡初始化和服務查詢之后,節(jié)點A知道了提供所需服務的節(jié)點的EUI-64地址,然后構造這樣的報文,即把ZigBee的EUI-64地址、6LoWPAN的EUI-64地址加上要發(fā)送的數(shù)據(jù)打包按照ZigBee協(xié)議發(fā)給網(wǎng)關,在網(wǎng)關處進行如下處理:ARM處理器接收到數(shù)據(jù)包后依次取出ZigBee的EUI-64地址、6LoWPAN的EUI-64地址以及數(shù)據(jù),再調(diào)用UDP/IPv6封裝程序封裝成一個IPv6數(shù)據(jù)包。然后通過串口發(fā)到6LoWPAN邊界路由器的網(wǎng)絡層,再往下傳送到適配層進行分片、壓縮等處理,傳給MAC層及物理層,通過無線發(fā)送到目的6LoWPAN節(jié)點,至此完成了數(shù)據(jù)從ZigBee節(jié)點到6LoWPAN節(jié)點的全過程。

3 網(wǎng)關測試系統(tǒng)搭建

網(wǎng)關測試系統(tǒng)示意圖如圖9所示:包括ARM處理器、ZigBee無線通信模塊、6LoWPAN無線通信模塊、ZigBee與6LoWPAN網(wǎng)絡節(jié)點。ARM處理器采用三星公司的ARM9處理器芯片S3C2440,ZigBee模塊采用CC2530芯片,6LoWPAN模塊也采用CC2530芯片。ARM處理器與兩個無線通信模塊都采用串口相連。ZigBee模塊同時作為ZigBee網(wǎng)絡的協(xié)調(diào)器,6LoWPAN模塊也同時作為6LoWPAN網(wǎng)絡的邊界路由器。兩個傳感網(wǎng)節(jié)點通過無線方式發(fā)送數(shù)據(jù)給ZigBee模塊和6LoWPAN模塊。

3.1 ZigBee網(wǎng)絡軟件設計

本文的ZigBee網(wǎng)絡軟件設計采用TI免費協(xié)議棧ZStack-CC2530-2.3.0-1.4.0,工具軟件采用IAR Embedded Workbench for 80517.60。在TI免費協(xié)議棧的基礎上,通過修改其應用層來實現(xiàn)不同的功能。

3.2 6LoWPAN網(wǎng)絡軟件設計

在本文的6LoWPAN傳感網(wǎng)中,我們采用本實驗室獨立開發(fā)的6LoWPAN協(xié)議棧6lowsn_stack_v0.55,本協(xié)議棧已經(jīng)實現(xiàn)了6LoWPAN的基本功能如報頭壓縮、分片等。工具軟件采用IAR Embedded Workbench for 80517.60。用于6LoWPAN協(xié)議棧的芯片解決方案采用單芯片方案,即此協(xié)議棧可以單獨運行在一塊CC2530芯片上,成本和復雜性都比較低。

圖10 服務查詢抓包結果Fig.10 Capture package results of service query

圖11 數(shù)據(jù)傳輸抓包結果Fig.11 Capture package results of data transmission

4 測試結果與分析

網(wǎng)關啟動后,ZigBee節(jié)點與6LoWPAN節(jié)點分別各自組網(wǎng),并在網(wǎng)關處建立起服務表。ZigBee節(jié)點向網(wǎng)關發(fā)送服務查詢請求,網(wǎng)關向ZigBee節(jié)點返回服務查詢響應。之后ZigBee節(jié)點向網(wǎng)關發(fā)送數(shù)據(jù),網(wǎng)關經(jīng)過處理后發(fā)送給目的6LoWPAN節(jié)點,完成了服務查詢與數(shù)據(jù)傳輸?shù)娜^程,使用Chipcon Packet sniffer軟件對整個過程進行抓包,抓包結果如下:

圖10是服務查詢抓包結果。可以看出網(wǎng)關啟動后,ZigBee節(jié)點與6LoWPAN節(jié)點分別各自組網(wǎng),之后ZigBee節(jié)點發(fā)送服務查詢請求命令“?P1”,網(wǎng)關查詢服務表后得到服務“1”提供者6LoWPAN節(jié)點的EUI-64地址,于是向ZigBee節(jié)點返回服務查詢響應 “!P1”加上6LoWPAN節(jié)點的EUI-64地址,服務查詢階段結束。

圖11是數(shù)據(jù)傳輸抓包結果。ZigBee節(jié)點把自身EUI-64地址、查詢到的6LoWPAN的EUI-64地址和要發(fā)送的數(shù)據(jù)“am”打包作為應用層數(shù)據(jù)發(fā)送給網(wǎng)關。網(wǎng)關接收到數(shù)據(jù)包后經(jīng)過解析、封裝IPv6包,發(fā)送給6LoWPAN邊界路由器,最后轉(zhuǎn)發(fā)給目的6LoWPAN節(jié)點,抓包顯示收到ZigBee節(jié)點發(fā)來的數(shù)據(jù)包“am”。

5 結束語

本文對ZigBee和6LoWPAN這兩種不同協(xié)議類型的傳感網(wǎng)之間的通信進行了研究,并給出了實現(xiàn)方案,詳細闡述了實現(xiàn)異構傳感網(wǎng)通信的關鍵技術,并搭建了測試平臺進行軟硬件結合的測試,達到了設計的初衷,滿足了異構傳感網(wǎng)通信的需求,實現(xiàn)了兩者之間的點對點通信。在不更改協(xié)議棧的基礎上進行的網(wǎng)關設計具有較強的實用性和可擴展性,方便接入IPv6網(wǎng)絡以及更多不同協(xié)議的傳感網(wǎng)進行自由通信。

[1]蔣挺,趙成林.紫蜂技術及其應用[M].北京:北京郵電大學出版社,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]戚劍超.基于IPv6的無線傳感器網(wǎng)絡應用研究[D].合肥:合肥工業(yè)大學,2009.

[5]孫紀敏,沈玉龍,孫玉,張思東.傳感器網(wǎng)絡接入Internet體系結構和服務提供方法[J].通信學報,2008,29(4):84-89.

[6]吳功宜,董大凡,王珺,劉乾.計算機網(wǎng)絡高級軟件編程技術[M].北京:清華大學出版社,2007.

[7]Andrew S.Tanenbaum.Computer Networks[M].3rd edition.北京:清華大學出版社,2002.

[8]Qing Li,Tatuya Jinmei,Keiichi Shima.IPv6 詳解,卷 1:核心協(xié)議實現(xiàn)[M].北京:人民郵電出版社,2009.

[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.

猜你喜歡
服務
自助取卡服務
服務在身邊 健康每一天
服務在身邊 健康每一天
服務在身邊 健康每一天
服務在身邊 健康每一天
服務在身邊 健康每一天
服務在身邊 健康每一天
服務在身邊 健康每一天
高等教育為誰服務:演變與啟示
招行30年:從“滿意服務”到“感動服務”
商周刊(2017年9期)2017-08-22 02:57:56
主站蜘蛛池模板: 亚洲欧美日韩综合二区三区| 蜜臀AVWWW国产天堂| 亚洲国产精品一区二区高清无码久久| 色天天综合久久久久综合片| 亚洲精品无码久久毛片波多野吉| 日本人真淫视频一区二区三区| 少妇露出福利视频| 国产亚洲欧美日韩在线观看一区二区| 久久久久久高潮白浆| 国产精品毛片一区| 色婷婷视频在线| 亚洲AV无码乱码在线观看代蜜桃 | 国产精品999在线| 亚洲一区毛片| 国产成人在线无码免费视频| 亚洲国产综合精品一区| 欧美成在线视频| 激情综合五月网| 青青草91视频| 日韩av电影一区二区三区四区| 9966国产精品视频| 国产99精品久久| 日韩在线视频网| 国产18在线播放| 高清免费毛片| 中国丰满人妻无码束缚啪啪| 在线观看欧美精品二区| 天天摸天天操免费播放小视频| 无码日韩视频| 制服丝袜亚洲| 亚洲综合专区| 毛片一级在线| 欧美日本一区二区三区免费| 99久久精品免费看国产免费软件| 亚洲精品在线观看91| 国产成人麻豆精品| 国产精品永久在线| 国产精品亚欧美一区二区三区| 不卡无码网| 超清无码一区二区三区| 日本伊人色综合网| 亚洲欧美在线看片AI| 精品一區二區久久久久久久網站| 国产精品v欧美| 精品国产成人av免费| 亚洲a级毛片| 国产主播喷水| 国产一区在线视频观看| 欧美色综合网站| 秋霞国产在线| 视频国产精品丝袜第一页| 国产精品无码翘臀在线看纯欲| 久久精品国产一区二区小说| 亚洲清纯自偷自拍另类专区| 亚洲男人天堂网址| 日韩精品欧美国产在线| 全部免费毛片免费播放| 99无码中文字幕视频| 中文字幕天无码久久精品视频免费| 国产在线观看99| 2021国产v亚洲v天堂无码| 国产精品无码作爱| 国产黄色片在线看| 欧美日韩一区二区三区四区在线观看 | 伊人久久大线影院首页| 亚洲人成电影在线播放| 国产欧美视频综合二区| 中文字幕1区2区| 日韩毛片免费观看| 亚洲无码91视频| 久久窝窝国产精品午夜看片| 香蕉视频国产精品人| 亚洲国产欧洲精品路线久久| 波多野结衣久久精品| 99手机在线视频| 国产亚洲精品97AA片在线播放| 特级做a爰片毛片免费69| 国产欧美综合在线观看第七页| 91在线一9|永久视频在线| 综合天天色| 久久精品免费国产大片| 国产剧情一区二区|