Zigbee协议栈的研究

发布时间 : 星期三 文章Zigbee协议栈的研究更新完毕开始阅读

主要负责以下一些任务:

① 加入和离开网络; ② 帧的安全机制管理; ③ 根据路由发送帧到目的地址; ④ 发现和维护路由;

⑤ 发现单跳邻居节点和维护邻居节点信息。

2.3.1 服务规范

ZigBee网络层是为了能确保正确地操作IEEE802.15.4-2003MAC子层和为应用层提供服务接口。ZigBee网络层包括两个服务实体:数据服务实体和管理服务实体,网络层数据实体(NLDE)通过连接SAP(NLDE-SAP)为数据传输服务,网络层管理实体(NLME)通过相连的SAP(NLME-SAP)提供管理服务。网络管理实体利用NLDE完成它的一些管理事物,同时它也维护管理对象数据库即网络信息数据库(PIB)。NWK层参考模型如图2-5所示:

图2-5 NWK层参考模型

2.3.2 帧格式(NPDU)

每个网络层帧(NPDU)包含以下的基本元素:

① 一个NWK帧头,它由帧控制域,地址域和序列信息域组成; ② 一个NWK净载荷,长度可变,它包含了指定帧类型的信息。

NWK帧格式由NWK帧头和NWK净载荷组成,一般的NWK帧格式如图2-6所示:

10

图2-6 一般NWK帧格式

NWK帧控制域长度为16 bit,包括帧类型、协议版本、发现路由以及安全等子域。 目的地址域的长度为2个字节,并且持有目的设备的16 bit网络地址或者广播地址(0xFFFF),值得注意的是,设备的网络地址应该总是与它的IEEE802.15.4-2003 MAC短地址相同。

源地址域总是存在的,它的长度为2个字节,是这一帧的源设备的网络地址。 半径域的长度为1个字节,它指定一个半径的传输范围,在接收的时候,该域被每个接收的设备减1。

序列号域的长度为1个字节,每传输一个新的帧,该域的值加l,源地址和序列号能唯一确定一帧数据。

NWK层包含两种帧类型,一种是数据帧,另一种是NWK命令帧,包括路由请求命令、路由响应命令、路由错误命令和离开命令等四种。数据帧的NWK净载荷部分是数据载荷,命令帧的净载荷部分包括NWK命令标识符和命令净载荷。

2.4 APL层

应用层(APL)作为ZigBee协议栈中的最高一层,由三个主要部分组成:应用支持子层(APS)、设备对象管理层(ZDO)以及用户自定义的应用框架对象。APS子层提供网络层与应用层的接口,并支持两种服务:数据服务和管理服务,APS的任务还包括维护绑定表和绑定设备问的消息传输。ZDO层提供APS子层和应用框架之间的接口,界定设备在网络中的作用,发现网络中的设备并检查它们能够提供哪些应用服务,产生或者回应绑定请求,并在网络设备间建立安全的通信。应用框架为用户自定义的应用对象提供了一个管理整体协议栈各层的平台,在一个节点内最多可包含240个应用对象。

2.4.1 APS子层

在APS层的帧结构中包含三种帧类型:数据帧、命令帧和确认帧。其具体帧格式如下表2-1所示:

11

表2-1 APS层帧格式

字节:1 帧控制

0/1 目的 端点 0/2 组地址 0/2 Cluster标识符 0/2 Profile 标识符 0/1 源端点 1 APS计数 变长 APS负载 APS层帧格式的首位为帧控制域,用1字节表示,其具体内容如下表2-2所示:

表2-2 APS帧控制域结构

位:0-1 帧类型

2-3 传输模式 4 间接地址模式 5 安全 6 ACK确认 7 保留 其中,传输模式域表示传输方式的选择,有四种方式:单一传播、间接传输、广播以及组播。如果选择间接传输模式,该帧中的目的地址和源地址域可忽略;如果间接地址模式设置为1,表明该节点目的地址为协调器,该帧中目的端点域须省略:若设置为0,表明该信息由协调器传输至某节点,该帧中源端点域须省略;安全域由安全服务提供方(SSP)设置;ACK确认域若设置为1,该帧的接收方必须回复ACK确认帧。

2.4.2 ZDO(ZigBee设备对象层)

ZDO提供APS层与应用框架之间的接口,是应用层其他端点与应用子层管理实体交互的中间件,主要功能如下:

(1)初始化APS子层、网络层;

(2)发现节点和设备:在无信标的网络中,加入的节点只对其父节点可见,其他节点可通过ZDO来确定网络的整体拓扑结构和节点功能;

(3)安全加密管理:包括安全密钥的建立和发送,以及安全授权; (4)网络维护功能;

(5)绑定管理:绑定功能由APS子层提供,但绑定功能的管理由ZDO提供,它确定了绑定表的大小、绑定的发起和消除功能;

(6)节点管理:ZDO提供网络监测、获取路由和绑定信息、发起脱离网络过程等一系列节点管理功能。

2.4.3 应用框架对象

用框架(Application Framework)为各个用户自定义的应用对象提供了模板式的活动空间,为每个应用对象提供了键值对KVP服务和报文MSG服务两种服务供数据传输使用。每个节点除了64位的IEEE地址,16位的网络地址,每个节点还提供了8位的

12

应用层入口地址,对应于用户应用对象。端点0为ZDO接口,端点1至240供用户自定义用于对象使用,端点255为广播地址,端点241-254保留将来使用。每一个应用都对应一个配置文件(Profile)。配置文件包括:设备ID(Device ID),事务集群ID(cluster ID),属性ID(Attribute ID)等。AF可以通过这些信息来决定服务类型。

第三章 Z-Stack+OSAL简介

Zigbee是一种新型无线网络技术,具有中等通讯距离(10米到数百米),比较灵活经济的通讯速率(40Kbps到250Kbps),并且有星状、网状、树状等多种网络拓扑,功耗低等特点,在当今无线网络技术领域中,特别是在物联网技术领域中占有比较重要的地位。

13

联系合同范文客服:xxxxx#qq.com(#替换为@)