根据应用和市场需要定义了ZigBee 协议的分层架构,其协议的体系结构如图1 所示,其中物理层(physical layer,PHY)和媒介访问控制层(medium access control sub-layer,MAC)是由IEEE802.15.4-2003 标准定义的,在这个底层协议的基础上ZigBee 联盟定义了网络层(network layer,PHY)和应用层(application layer,APL)架构.
图1 zigbee协议栈体系结构
物理层规范
物理层定义了它与MAC 层之间的两个接口:数据服务接口PD-SAP 和管理服务接口PLME-SAP,其中PD-SAP 接口还为物理层提供了相应的数据服务,负责从无线物理信道上收发数据,而PLME-SAP 接口同时为物理层提供相应的管理服务,用于维护一个由物理层相关数据组成的数据库。物理层负责数据的调制、发送和接收、空闲信道评估(clear channel assessment,CCA)信道能量的监测(energy detect,ED)和链接质量指示(link quality indication,LQI)等。物理层帧结构由同步头、物理层帧头和物理层有效载荷三部分组成,如表1 所示。
同步头又包括32bit 的前同步码和8bit 的帧定界符,前同步码用来为数据收发提供码元或数据符号的同步;帧界定符用来标识同步域的结束及数据的开始。物理层帧头包括7bit 的帧长度和1bit 的预留位,帧长度定义了物理层净荷的字节数。物理层有效载荷就是MAC层的帧内容。
表一物理层帧格式
媒体接入控制层规范
MAC 层定义了它与网络层之间的接口,包括提供给网络层的数据服务接口MLDE-SAP 和管理服务接口MLME-SAP,同时提供了MAC 层数据服务和MAC 层管理服务。MAC层数据服务主要实现数据帧的传输;MAC 层管理服务主要负责媒介访问控制、差错控制等。
MAC 层主要功能包括以下几个方面:
(1)ZigBee 协调器产生网络信标
(2)设备与信标同步
(3)支持节点加入或着退出操作
(4)信道接入方式采用免冲突载波检测多路访问(CSMA-CA)机制
(5)建立并维护保护时隙机制
(6)为设备提供安全支持
MAC 帧格式由三个基本部分组成:MAC 帧头、MAC 帧载荷和MAC 帧尾。不同类型的MAC 帧,其帧头和帧尾都是一样的,只是MAC 帧载荷有差别,通用MAC 帧格式如表2所示。
表二通用MAC帧格式
网络层规范
网络层定义了它与应用层之间的接口,包括提供给应用层的数据服务接口NLDE-SAP和管理服务接口NLME-SAP , 同时提供了网络层数据服务和网络层管理服务。网络层主要负责拓扑结构的建立和网络的维护,具体的功能如下:(1)初始化网络,即建立一个新的包含协调器、路由器和终端设备的网络(2)设备连接和断开时所采用的机制
(3)对一跳邻居节点的发现和相关节点信息的存储
(4)ZigBee 协调器和路由器为新加入节点分配短地址
(5)确保MAC层正常工作,并且为应用层提供合适的服务接口
网络层帧结构包括网络层帧头(Network header,NHR)和网络层载荷(Network payload,NPL)两部分,其中网络层帧头域由帧控制域、目的设备地址、源设备地址、广播半径和广播序列号等部分组成,通用网络帧的结构如表3所示。
表3 通用网络层帧结构
应用层规范
ZigBee 应用层是协议体系结构中的最高层,由应用层支持子层(APS)、ZigBee 设备对象(ZDO)、ZigBee 应用框架(AF)三部分组成。应用支持子层(APS)定义了网络层和应用层之间的接口,其中一个接口是被ZDO 和制造商定义的应用对象使用的数据实体服务访问接口APSDE-SAP,另一个是管理服务访问接口APSME-SAP。APS 的主要作用是维护绑定表,在绑定的设备之间传递信息。ZDO 位于应用层框架(AF)和应用支持子层(APS)之间,满足协议中所有应用操作的公共需求。ZDO 的作用包括:设备发现并能提供服务发现;定义一个设备的类型,如定义设备为ZigBee 协调器或者为ZigBee 终端设备;能够按照绑定请求构造并存储绑定表,实现绑定管理。ZigBee 应用框架(AF)是应用对象驻留的环境,最多可有240 个应用对象端点,应用对象通过APSDE-SAP 发送和接收数据,同时通过ZDO 公用接口来实现应用对象的管理。
当ZigBee 协议栈运行时,数据帧是这样被处理的:当设备发起通讯时,数据是自上而下的传递,依次经过应用层、网络层、MAC 层、物理层,当经过物理层处理后,通过硬件的无线模块调制发送出去。接收时,先通过无线模块把收到的信息解调出来,然后按照物理层、MAC 层、网络层、应用层依次往上传递并对信息帧进行分解。