zigbee協(xié)議棧結(jié)構(gòu)是由一系列稱為層的協(xié)議塊所組成的。每個(gè)層為上一層提供一系列特定的服務(wù)。數(shù)據(jù)入口提供數(shù)據(jù)傳輸?shù)姆?wù),管理入口提供其余的所有服務(wù)。每個(gè)服務(wù)接口都通過(guò)SAP(Service Access Point)接口與上一層進(jìn)行數(shù)據(jù)交換,每個(gè)SAP都支持一系列的服務(wù)原語(yǔ)。
zigbee協(xié)議棧是基于OSI(Open Systems Interconnection)標(biāo)準(zhǔn)的,但只定義了所需要的那些層。主要由物理層PHY,媒體接入層MAC,網(wǎng)絡(luò)層以及應(yīng)用框架層組成,框架圖如圖所示。其中,PHY層和MAC層采用了IEEE 802.15.4協(xié)議標(biāo)準(zhǔn)。
zigbee網(wǎng)絡(luò)層主要用于zigbee的無(wú)線個(gè)人區(qū)域網(wǎng)WPAN網(wǎng)的組網(wǎng)連接,數(shù)據(jù)管理以及網(wǎng)絡(luò)安全等。網(wǎng)絡(luò)層需要在功能上保證與IEEE 802.15.4標(biāo)準(zhǔn)兼容,同時(shí)也需要上層提供合適的功能接口。
對(duì)于網(wǎng)絡(luò)層,其完成和提供的主要功能如下:
?。?)產(chǎn)生網(wǎng)絡(luò)層的數(shù)據(jù)包:當(dāng)網(wǎng)絡(luò)層接受到來(lái)自應(yīng)用子層的數(shù)據(jù)包,網(wǎng)絡(luò)層對(duì)數(shù)據(jù)包進(jìn)行解析,然后加上適當(dāng)?shù)木W(wǎng)絡(luò)層包頭向MAC傳輸。
?。?)網(wǎng)絡(luò)拓?fù)涞穆酚晒δ埽壕W(wǎng)絡(luò)層提供路由數(shù)據(jù)包的功能,如果包的目的節(jié)點(diǎn)是本節(jié)點(diǎn)的話,將該數(shù)據(jù)包向應(yīng)用子層發(fā)送。如果不是,則將該數(shù)據(jù)包轉(zhuǎn)發(fā)給路由表中下一結(jié)點(diǎn)。
(3)配置新的器件參數(shù):網(wǎng)絡(luò)層能夠配置合適的協(xié)議,比如建立新的協(xié)調(diào)器并發(fā)起建立網(wǎng)絡(luò)或者加入一個(gè)已有的網(wǎng)絡(luò)。
?。?)建立PAN網(wǎng)絡(luò)
?。?)連入或脫離PAN網(wǎng)絡(luò):網(wǎng)絡(luò)層能提供加入或脫離網(wǎng)絡(luò)的功能,如果節(jié)點(diǎn)是協(xié)調(diào)器或者是路由器,還可以要求子節(jié)點(diǎn)脫離網(wǎng)絡(luò)。
(6)分配網(wǎng)絡(luò)地址:如果本節(jié)點(diǎn)是協(xié)調(diào)器或者是路由器,則接入該節(jié)點(diǎn)的字節(jié)點(diǎn)的網(wǎng)絡(luò)地址由網(wǎng)絡(luò)層控制。
(7)鄰居節(jié)點(diǎn)的發(fā)現(xiàn):網(wǎng)絡(luò)層能發(fā)現(xiàn)維護(hù)網(wǎng)絡(luò)鄰居信息。
?。?)建立路由:網(wǎng)絡(luò)層提供路由功能。
?。?)控制接收:網(wǎng)絡(luò)層能控制接收器的接受時(shí)間和狀態(tài)。
為了向應(yīng)用層提供接口,網(wǎng)絡(luò)層提供了兩個(gè)功能服務(wù)實(shí)體,分別為數(shù)據(jù)服務(wù)實(shí)體NLDE和管理服務(wù)實(shí)體NLME。NLDE通過(guò)NLDE-SAP為應(yīng)用層提供數(shù)據(jù)傳輸服務(wù),NLME通過(guò)NLME-SAP為應(yīng)用層提供網(wǎng)絡(luò)管理服務(wù),并且,NLME還完成對(duì)網(wǎng)絡(luò)信息庫(kù)NIB的維護(hù)和管理。
zigbee應(yīng)用框架層主要為zigbee技術(shù)的實(shí)際應(yīng)用提供一些應(yīng)用框架模型等,以便對(duì)zigbee技術(shù)的開(kāi)發(fā)應(yīng)用,在不同的應(yīng)用場(chǎng)合,其開(kāi)發(fā)應(yīng)用框架不同,從目前來(lái)看,不同廠商提供的應(yīng)用框架是有差異的。zigbee應(yīng)用層包括應(yīng)用支持子層APS、應(yīng)用框架AF、zigbee設(shè)備對(duì)象ZDO。它們共同為各應(yīng)用開(kāi)發(fā)者提供統(tǒng)一的接口。
APS層主要功能:
?。?)APS層協(xié)議數(shù)據(jù)單元APDU的處理。
?。?)APSDE提供在同一個(gè)網(wǎng)絡(luò)中的應(yīng)用實(shí)體之間的數(shù)據(jù)傳輸機(jī)制。
?。?)APSME提供多種服務(wù)給應(yīng)用對(duì)象,這些服務(wù)包括安全服務(wù)何綁定設(shè)備,并維護(hù)管理對(duì)象的數(shù)據(jù)庫(kù),也就是我們常說(shuō)的AIB。
應(yīng)用框架(Application Framework)為各個(gè)用戶自定義的應(yīng)用對(duì)象提供了模板式的活動(dòng)空間,為每個(gè)應(yīng)用對(duì)象提供了鍵值對(duì)KVP服務(wù)和報(bào)文MSG服務(wù)兩種服務(wù)供數(shù)據(jù)傳輸使用。
每個(gè)節(jié)點(diǎn)除了64位的IEEE地址,16位的網(wǎng)絡(luò)地址,每個(gè)節(jié)點(diǎn)還提供了8位的應(yīng)用層入口地址,對(duì)應(yīng)于用戶應(yīng)用對(duì)象。端點(diǎn)0為ZDO接口,端點(diǎn)1至240供用戶自定義用于對(duì)象使用,端點(diǎn)255為廣播地址,端點(diǎn)241 -254保留將來(lái)使用。每一個(gè)應(yīng)用都對(duì)應(yīng)一個(gè)配置文件(Profile)。配置文件包括:設(shè)備ID(Device ID),事務(wù)集群ID(clusterID),屬性ID(Attribute ID)等。AF可以通過(guò)這些信息來(lái)決定服務(wù)類型。
ZDO是一個(gè)特殊的應(yīng)用層的端點(diǎn)(Endpoint)。它是應(yīng)用層其他端點(diǎn)與應(yīng)用子層管理實(shí)體交互的中間件。它主要提供的功能如下:
(1)初始化應(yīng)用支持子層,網(wǎng)絡(luò)層。
?。?)發(fā)現(xiàn)節(jié)點(diǎn)和節(jié)點(diǎn)功能。在無(wú)信標(biāo)的網(wǎng)絡(luò)中,加入的節(jié)點(diǎn)只對(duì)其父節(jié)點(diǎn)可見(jiàn)。而其他節(jié)點(diǎn)可以通過(guò)ZDO的功能來(lái)確定網(wǎng)絡(luò)的整體拓?fù)浣Y(jié)構(gòu)已經(jīng)節(jié)點(diǎn)所能提供的功能。
(3)安全加密管理:主要包括安全key的建立和發(fā)送,已經(jīng)安全授權(quán)。
?。?)網(wǎng)絡(luò)的維護(hù)功能。
?。?)綁定管理:綁定的功能由應(yīng)用支持子層提供,但是綁定功能的管理卻是由ZDO提供,它確定了綁定表的大小,綁定的發(fā)起和綁定的解除等功能。
?。?)節(jié)點(diǎn)管理:對(duì)于網(wǎng)絡(luò)協(xié)調(diào)器和路由器,ZDO提供網(wǎng)絡(luò)監(jiān)測(cè)、獲取路由和綁定信息、發(fā)起脫離網(wǎng)絡(luò)過(guò)程等一系列節(jié)點(diǎn)管理功能。
ZDO實(shí)際上是介于應(yīng)用層端點(diǎn)和應(yīng)用支持子層中間的端點(diǎn),其主要功能集中在網(wǎng)絡(luò)管理和維護(hù)上。應(yīng)用層的端點(diǎn)可以通過(guò) ZDO提供的功能來(lái)獲取網(wǎng)絡(luò)或者是其他節(jié)點(diǎn)的信息,包括網(wǎng)絡(luò)的拓?fù)浣Y(jié)構(gòu)、其它幾點(diǎn)的網(wǎng)絡(luò)地址和狀態(tài)以及其他幾點(diǎn)的類型和提供的服務(wù)等信息。
目前,國(guó)內(nèi)外可提供ZigBee模塊解決方案的公司有TI、Jennic、ST、Atmel、Freescale等,其中,TI公司提供的技術(shù)方案最全。ZigBee協(xié)議棧為ZigBee協(xié)議提供了從底層硬件信號(hào)處理到系統(tǒng)層數(shù)據(jù)讀取、消息處理的全套函數(shù)實(shí)現(xiàn),應(yīng)用開(kāi)發(fā)人員無(wú)需了解底層硬件信號(hào)處理過(guò)程和硬件組織架構(gòu),帶來(lái)的好處就是,加速物聯(lián)網(wǎng)應(yīng)用的開(kāi)發(fā),將產(chǎn)品更快推向市場(chǎng)。
今天的分享就到這里啦,EBYTE每一天都致力于更好的助力物聯(lián)化、智能化、自動(dòng)化的發(fā)展,提升資源利用率,更多串口服務(wù)器、數(shù)傳電臺(tái)、lora模塊等無(wú)線數(shù)傳模塊產(chǎn)品更多資料,感興趣的小伙伴可以登錄我們的億佰特官網(wǎng)和企業(yè)公眾號(hào)(微信號(hào):cdebyte)進(jìn)行了解,也可以直接撥打400電話咨詢技術(shù)專員!