第三章-ZigBee技术及应用_第1页
第三章-ZigBee技术及应用_第2页
第三章-ZigBee技术及应用_第3页
第三章-ZigBee技术及应用_第4页
第三章-ZigBee技术及应用_第5页
已阅读5页,还剩145页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

1、短距离无线通信技术及应用,第三章 ZigBee技术及应用,3.1 ZigBee技术概述,ZigBee技术是一种低复杂度、低功耗、低速率、低成本、短距离的双向无线通信技术。 ZigBee建立在IEEE802.15.4的无线通信协议标准之上。主要由IEEE 802.15.4小组和ZigBee联盟两个组织负责标准规范的制定。ZigBee标准要解决的问题是设计一个维持最小流量的通信链路和低复杂度的无线收发信机。要考虑的核心问题是低功耗和低价格的设计,这就要求该标准应提供低带宽、低数据传输率的应用。IEEE802.15.4只定义了物理层和媒体访问控制层,无法保证不同设备之间可以对话。ZigBee联盟确定

2、了可在不同制造商之间共享的技术标准。 ZigBee的技术优势主要表现在以下几个方面: 1功耗低; 2成本低 3时延短 4网络容量大 5可靠性高 6安全性高,短距离无线通信技术及应用,ZigBee主要的技术特征:,3.1 ZigBee技术概述-续,短距离无线通信技术及应用,3.2 ZigBee协议体系,ZigBee协议栈基于标准的OSI七层模型,但只是在相关的范围定义一些相应层来完成特定的任务。 ZigBee协议详细的体系结构如图3.1所示:,短距离无线通信技术及应用,l、物理层(PHY),物理层是由半双工的无线收发器和其接口组成。物理层主要负责以下任务: 1)控制无线收发器的激活与关闭; 2)

3、选择信道频率; 3)提供链路质量指示(LQI); 4)对当前信道进行能量检测(ED); 5)为 CSMA-CA 提供信道空闲评估; 6)发送和接收数据。,媒体访问控制层在相邻节点之间建立一条可靠的数据传输链路,共享传输煤质,负责控制对物理信道的访问。主要实现以功能: 1)协调器的MAC层负责产生信标(beacon); 2)与信标帧同步; 3)在两个对等的MAC实体间提供一条可靠的链路; 4)实现对个域网的关联与解除关联; 5)采用CSMA-CA机制控制信道访问; 6)维护设备安全; 7)维护时隙保障(GTS)机制; 8)负责维护PIB中与MAC层相关的信息,存储与MAC层相关的常量和属性。,2

4、、媒体访问控制层(MAC),3.2 ZigBee协议体系-续,短距离无线通信技术及应用,3、网络层(NWK) 网络层主要负责以下服务: 1)开始一个新网段,即发起一个新网络; 2)配置新设备:例如一个新的设备可以配置为ZigBee协调器或是加入现有网络; 3)通过接收器控制功能控制节点加入/离开网络; 4)使用网络层安全服务; 5)将帧路由至其目的地。只有ZigBee协调器和路由器可以转发消息; 6)发现和维护设备间的路由。这个能力是为了更有效的路由消息; 7)发现单跳邻居。邻居间可以直接通信而不需要经过任何其它设备的中继服务; 8)储存单跳邻居的信息; 9)为加入网络的设备分配地址。只有Zi

5、gBee协调器和路由器可以分配地址。 4、应用层 应用层是协议栈的最高层,由三部分组成:应用支持子层(APS)、ZigBee设备对象(ZDO)和应用框架(AF).,3.2 ZigBee协议体系-续,短距离无线通信技术及应用,第三章 ZigBee技术及应用,3.2.1 物理层(PHY),1、物理层概述 1) IEEE 802.15.4定义了两个物理层标准:2.4 GHz物理层和868/915 MHz物理层。它们都基于DSSS(直接序列扩频),使用相同的物理层数据包格式,区别在于工作频率、调制技术、扩频码片长度和传输速率不同。 2) 2.4 GHz频段为全球统一的、开放的ISM频段,有助于ZigB

6、ee设备的推广和生产成本的降低。 3) ZigBee物理层的三个频段,总共划分出了27个信道。第一个频段是868MHz频段,数据传输速率为20kbps,信道数目为1,该频段被欧洲等地区所使用;第二个频段是915MHz频段,数据传输速率为40kbps,信道数目为10,该频段被北美等地区所使用;这两个频段的引人避免了2.4 GHz附近各种无线通信设备的相互干扰。第三个频段是 2.4GHz 频段,数据传输速率为250kbps,信道数目为16,该频段为全球通用的频段。,1、物理层概述续,4) 通常情况下,一个ZigBee设备不能同时兼容这三个频段。868 MHz是欧洲的ISM频段,915 MHz是美国

7、的ISM频段,我国使用的是2.4GHz频段。 5)2.4 GHz的物理层通过采用高阶调制技术,能提供250 kbit/s的传输速率,有助于获得更高的吞吐量、更小的通信时延和更短的工作周期,从而更加省电。 6) 由于前两个频段上无线信号传播损耗较小,因此可以降低对接收机灵敏度的要求,获得较远的有效通信距离,从而可以用较少的设备覆盖给定的区域。,第三章 ZigBee技术及应用,2、物理层调制及扩频方式 ZigBee技术在不同工作频段的物理层调制及扩频方式有不小的差异。2.4G频段物理层调制及扩频功能如图3.2所示。物理层将数据(PPDU)每字节的高四位与低四位分别映射成数据符号,接着每种数据符号被

8、映射成32位伪随机噪声数据码片(chip)。数据码片序列采用半正弦脉冲波形的偏移四相移相键控(O-QPSK)技术调制。奇数序列码片采用正交调试,偶数序列码片则采用同相调制。,图3.2 2.4G频段物理层调制及扩频示意图,2、物理层调制及扩频方式-续,短距离无线通信技术及应用 第3章 ZigBee技术及应用,868MHz/915MHz频段物理层调制及扩频方式如图3.3所示。物理层先对二进制数据PPDU进行差分编码,之后将编码的数据位映射成15位伪随机噪声数据码片(chip),再对数据码片序列进行二相的相移键控技术(BPSK)调制。,图3.3 868MHz/915MHz频段物理层调制及扩频示意图,

9、短距离无线通信技术及应用,2、物理层调制及扩频方式-续,由于ZigBee技术不在不同工作频段的物理层调制及扩频方式不同,其所表现出来的性能特性也不相同。ZigBee物理层三个频段性能特性如表3.2所示。,表3.2ZigBee物理层三个频段性能特性对比,短距离无线通信技术及应用,3、物理层帧格式,物理层帧(PPDU)格式如表3.3所示。由同步头、物理帧头及一长度可变的物理帧负荷域组成。其中,同步头第1个字段为4个字节的前导码。收发器接收帧时,根据前导码实现片同步和符号同步,前导码由32位二进制0组成。同步头的第2个字段为帧起始分隔符(SFD),标志同步域的结束和数据包的开始。物理帧头低7位有效,

10、表示帧长度。故物理层的帧负荷域(PHY Service Data Unit,PSDU)长度不超过127字节,用于承载通用的MAC帧。,表3.3物理层帧格式,短距离无线通信技术及应用,4、物理层模型结构,各功能实体和SAP的具体描述如下: 1PLME:PHY 层管理实体,处理与物理层管理相关的原语。 2PHY PIB:PHY层PAN信息数据库,存储物理层PAN相关属性。 3PD-SAP:PHY数据服务访问点,物理层与MAC层的数据接口。接收将要发送的MAC帧、向MAC层报告收到的MAC帧,为MAC层提供PHY数据服务。 4PLME-SAP:PLME服务访问点,物理层与MAC层的管理接口。接收MA

11、C层的管理请求原语,向MAC层报告管理指示原语和确认原语,为上层MAC层提供PHY管理服务。 5RF-SAP:射频服务访问点,为PHY层提供射频收发服务。,图3.4 物理层逻辑结构示意图,5、根据802.15.4协标准,物理层主要完成功能,IEEE 802.15.4协议栈物理层主要完成功能 1. 无线比特数据的收发 2. 对收到的数据包进行链路质量检测 3. 信道能量检测 4. 空闲信道评估(CCA),短距离无线通信技术及应用,3.2.2 媒体接入控制层(MAC),1、MAC层提供的服务 MAC层数据服务和MAC层管理服务(MAC Sublayer management entity,MLME

12、)。数据服务保证MAC层协议数据单元在物理层数据服务中正确收发,管理服务维护一个存储MAC层协议状态相关信息的数据库。,图3.5 MAC层逻辑结构示意图,2、MAC层逻辑结构,(MCPS),分子层,短距离无线通信技术及应用,2、MAC层逻辑结构-续,1) MAC Common Part Sublayer:MAC通用部分子层(MCPS),实现MAC层一般功能。包括MAC帧的封装、解封装;执行CSMA-CA算法共享物理信道。 2 ) MLME:MAC层管理实体,处理除数据原语之外的所有管理原语,以实现标准规定的MAC层功能,如超帧管理(Super frame)、信标帧同步、创建网络、建立释放网络关

13、联等等。 3 ) MAC PIB:MAC层PAN信息数据库,存储MAC层PAN相关属性。 4 ) MCPS-SAP:MCPS服务访问点,MAC层与网络层的数据接口。接收上层的协议数据单元、向上层报告MAC层服务数据单元,为上层提供MAC数据服务。 5 ) MLME-SAP:MLME服务访问点,MAC层与网络层的管理接口。接收发送数据原语以外的管理服务原语,为上层提供MAC管理服务。,短距离无线通信技术及应用,3、MAC帧结构,表3.4 MAC帧结构,MAC帧各个位域的功能如下: 1)帧控制域:定义帧的类型、地址域及其他控制标志,长度为16比特,具体结构如表3.5所示。,表3.5MAC帧控制域结

14、构,短距离无线通信技术及应用,1)帧控制域-续,帧类型子域:长度为3比特,具体子域值所代表的帧类型如表3.6所示。,表3.6 帧类型子域,加密位:该域值1表示当前帧用存贮在MAC PIB中的密匙加密,0表示 当前帧不需要MAC子层加密。 后续帧控制位:域值为0表示传输当前帧的设备没有后续数据,域值为1则表示传输当前帧的设备有后续的数据要传输。 应答请求位:1代表接收数据器件在确认收到有效的数据帧后给发送该数据帧器件发送出应答帧,0则代表接收数据器件不需要发出应答帧。,1)帧控制域-续,同一PAN指示位:1表示当前帧是在同一 PAN范围内,地址域只需要目的地址与源地址,而不需要源PAN标识符;0

15、表示当前帧不在同一PAN范围内,地址域不仅需要目的地址与源地址,源PAN标识符与目标标识符也需要。 目的地址模式子域、源地址模式子域:长度为2比特,定义了不包含地址、16位网络地址和64位IEEE地址等三种地址模式。,短距离无线通信技术及应用,2)序列号域,3)地址域 目的PAN标识符域:长度为16比特,该值为接收当前帧的设备唯一PAN标识符。 目的地址域:根据帧控制子域中目的地址模式,以16位网络地址或64位IEEE地址指出接收帧的器件地址。 源PAN标识符域:长度为16比特,该值为发送当前帧的器件唯一PAN标识符。 源地址域:根据帧控制子域中目的地址模式,以16位网络地址或64位IEEE地

16、址指出发出帧的器件地址。 4)净荷:MAC要承载的上层数据,长度可变。 5)帧校验序列域:16位循环冗余校验,通过MAC帧头及MAC净荷计算而得。,每个帧的唯一序列标识号,判断数据传输成功与否需判断确认帧的序列号是否与上一次传输的数据帧的序列号一致,长度为8比特。,3、4种基本帧结构,IEEE 802.15.4 的MAC层定义了4种基本帧结构。信标帧、数据帧、响应帧和MAC命令帧。其基本功能如下:,1)信标帧:供协调者使用。具有父节点功能的ZigBee设备通过发送信标帧,告知自己的相关信息,如是否允许新设备加入。 信标帧的负载数据单元由超帧描述字段、GTS分配字段、待转发数据的目的地址字段和信

17、标帧的负载数据等组成。,表3.7 信标帧结构,短距离无线通信技术及应用,3、4种基本帧结构-续,2)数据帧:承载所有的数据。主要传输上层发到MAC层的数据,其负载字段含有上层需要传输的数据信息。数据负载传输到MAC层时,首尾分别添加了MAC帧头信息和MAC帧尾信息后,就构成MAC帧,长度不会大于127 个字节。数据帧结构见表3.8。,表3.8 数据帧结构,3响应帧:确认帧的顺利传送。ZigBee设备收到目标地址为它自身的数据帧或MAC命令帧,并且该帧的控制域的确认请求位置1,则设备需要回复一个确认帧给数据帧的源设备,确认帧不需使用CSMA/CA机制竞争传输信道,紧接着被确认帧传送。确认帧的序列

18、号与被确认帧的序列号必须相同,且负载长度为零,其帧结构如表3.9所示。,表3.9 响应帧结构,4/2/0,8/2/0,短距离无线通信技术及应用,3、4种基本帧结构-续,4)MAC命令帧:用来处理MAC对等实体之间的控制传送,组建、传送同步数据信息等。其具体功能由帧的负载数据表示。其结构如表3.10所示。MAC命令帧主要功能有把设备节点关联到ZigBee PAN网络、同协调器设备交换数据和分配GTS。命令帧的负载数据是一个可变结构,其负载的第一个字节是命令类型字节,后面的数据针对不同的命令类型有不同的含义。,表3.10命令帧结构,短距离无线通信技术及应用,4、CSMA-CA机制和应答重传机制,M

19、AC层使用CSMA-CA机制和应答重传机制实现了信道的共享及数据帧的可靠传输。CSMA-CA传输机制基于IEEE 802.15.4标准,MAC层发送数据帧和命令帧须使用CSMA-CA机制访问信道,以减少由于帧发送冲突所带来的不必要的能量损耗。CSMA-CA包括载波检测机制和随机退避规则,即等待一段随机时间,随后通过检测物理信道能量来判断当前信道是否空闲,若当前信道空闲,则占用信道并立即发送帧,否则,再次重复上述过程。应答重传机制保证了传输的可靠性。发送端发送数据帧或命令帧时,可以通过置位帧控制域的Ack request子域,实现MAC层的帧应答重传。当Ack request子域为0时,不需要接

20、收端反馈ACK帧,发送端默认接收端正确收到数据帧,通信流程如图3.6所示。,图3.6无应答的成功数据传输,短距离无线通信技术及应用,4、CSMA-CA机制和应答重传机制-续,当Ack request子域为1时,发送端将帧发送出去后,开启定时器。等待接收来自接收端的应答帧(ACK帧)。接收端接收到该帧后,立即向发送端反馈应答帧,并将该接收帧传给上层。若发送端在定时器超时之前接收到该应答帧,确认其序列号与原帧相同后,停止该定时器计数,并向上层反馈,成功确认。若发送端没有在有效时间内接收到正确的ACK帧,可尝试最多(aMaxFrameRetries)次重传,若都以失败告终,则认为此次通信失败,并向上

21、层发送失败确认。成功的有应答数据传输如图3.7所示。,图3.7有应答的成功数据传输,短距离无线通信技术及应用,5、ZigBee网络的MAC层主要数据传输模式,ZigBee网络的MAC层主要存在两种数据传输模式:信标使能传输模式和非信标使能传输模式。 1信标使能传输模式 2非信标使能传输模式,图3.8信标使能传输模式的流程图,图3.9非信标使能传输模式的流程图,3.2.3网络层(NWK),1、网络层主要功能 在ZigBee协议栈中,物理层和媒体访问控制层(MAC)采用IEEE 802.15.4标准,而网络层(NWK)和应用层(APL)由ZigBee联盟定义。 网络层负责拓扑结构的建立和维护网络连

22、接,主要功能包括: 1)设备连接网络与断开网络时采用的机制,以及帧信息传送过程中采用的安全机制。 2)设备节点的路由发现、维护和转交。 3)发现一跳(one-hop)邻居节点设备及存储其相关节点信息。 4)提供一些必要的函数,确保ZigBee的MAC层正常工作,并且为应用层提供相应的服务接口。,图3.10网络层逻辑结构示意图,短距离无线通信技术及应用,2、网络层提供两种类型的服务,网络层提供两种类型的服务:数据服务和管理服务。 1)数据服务 网络层数据实体提供产生网络层协议数据单元(NPDU)和选择通信路由服务。 (1)选择通信路由服务,NLDE要发送一个NPDU到一个合适的设备,这个设备可能

23、是通信的终点也可能只是通信链路中的一个点。 (2) NLDE提供的数据服务允许在处于同一应用网络中的两个或多个设备之间传输应用协议单元(APUD)。 (3)数据服务需要通过NLDE服务接入点(SAP)进行访问。上一层协议可以通过 NLME-SAP进行网络层管理服务。 (4)网络层有自己的常量和属性。网络层属性被储存在网络层信息库。(NWK-NIB)中。应用层可以通过NLME-GET和NLME-SET原语读取和修改网络层属性。 (5)网络层限制了一个帧可以在网络中传输的距离。 距离被定义为跳数。每个NWK帧中都有一个半径(radius)参数,用来决定该帧的最大跳数。例如,如果半径的初始值为3,那

24、么消息不会被中继超过3次,每次中继消息时,半径都会被减1,当半径值变为0时,该帧将不会再被中继。,2、网络层提供两种类型的服务-续,2)管理服务 NLME提供一个管理服务以允许一个应用来与协议栈操作进行交互。以下为NLME需要提供的服务: (1)配置一个新的设备。具有充分配置所需操作栈的能力,比如配置ZigBee协调器的开始操作和节点加入一个现有的网络等。 (2)开始一个新网络。具有建立一个新的ZigBee网络的能力。 (3)寻址。具有由ZigBee协调器节点或ZigBee路由器节点来给新加入ZigBee无线网络的设备节点分配地址的能力。 (4)加入与离开一个ZigBee无线网络。具有离开或加

25、入ZigBee无线网络的能力。 (5)路由发现。具有发现、记录节点设备的传输路径的能力,数据信息能够在这条传输路径上有效地传输。 (6)邻近设备节点发现。具有发现、记录及报告一跳范围内设备节点相关信息的能力。 (7)接收控制。具有控制设备的接收器什么时间处于激活状态和接收器持续时间的能力,使得MAC子层可以同步或直接接收数据。,短距离无线通信技术及应用,3、网络协议数据单元(网络层帧的结构),网络层帧结构由网络头和网络负载区构成。网络头即网络层帧报头以固定的序列出现,包含帧控制、地址和序列信息,但地址和序列区不可能被包括在所有帧中;网络负载区即网络层帧的可变长有效载荷,包含帧类型所指定的信息。

26、表3.11所示的是网络层的通用帧结构。有的ZigBee网络协议中也定义了数据帧和网络层命令帧。,表3.11网络层帧结构,短距离无线通信技术及应用,4、基于Ad-Hoc技术的网络协议包含的功能,ZigBee网络层主要考虑采用基于Ad-Hoc技术的网络协议,包含以下功能: a)通用的网络层功能:拓扑结构的搭建和维护、命名和关联业务,包含了寻址、路由和安全。 b)与IEEE802.15.4标准一样,非常省电。 c)有自组织、自维护功能,以最大程度减少消费者的开支和维护成本。,5、网络层采用的路由算法 网络层的主要工作是负责网络机制的建立和管理,并具有自我组态和自我修复功能。为了在省电、复杂度、稳定性

27、及实现难易度等因素上取得平衡,网络层采用的路由算法共有3种: a)AODV算法,建立随意网络的拓扑架构(Mesh Topology)。 b)摩托罗拉Cluster.tree算法建立星状的拓扑架构(StarTopology)。 c) 用广播的方式传递信息。可根据具体应用需求,选择合适的网络架构。,短距离无线通信技术及应用,3.2.4 应用层(APL),应用层是ZigBee协议的最高层,通过该层可以控制整个协议栈的运行。ZigBee 协议的应用层包括应用支持子层(APS)、由ZigBee 联盟定义的应用框架(AF)和ZigBee 设备对象(ZDO)共同组成。,1应用支持子层(APS),APS提供的

28、服务由两个实体实现: APS数据实体(APSDE)和APS管理实体(APSME)。 (1 ) APSDE提供在同一个网络中的两个或者更多的应用实体之间的数据通信。通过APSDE服务接入点(APSDE-SAP); (2)APSME提供多种服务给应用对象,这些服务包含安全服务和绑定设备,并维护管理对象的数据库,也就是我们常说的AIB。通过APSME服务接入点(APSME-SAP),图3.11应用支持子层逻辑结构,短距离无线通信技术及应用,2)APSDE主要提供的两种服务,APSDE由数据服务实体访问点提供数据传输服务,它不仅为NKW层提供数据服务,而且也为在同一网络中的设备对象和其他应用对象设备之

29、间提供应用数据单元传输的数据服务。APSDE主要提供如下两种服务: (1)绑定:绑定是一种两个或多个应用设备之间信息流的控制机制。所要绑定的应用设备的服务于需要必须相匹配。一旦应用设备相绑定后,APSDE能够把消息从一个绑定设备传送到另一绑定设备。 (2)产生应用数据单元:APSDE获得应用数据单元后,加上一个适当的协议,就生成应用支持子层数据单元。 此外,APSME提供包括从设备的AIB中获得属性或进行属性设置的AIB管理服务和利用密匙与其他设备建立可靠的关联的安全管理服务。同时,它还提供基于服务和需求相匹配的设备之间的绑定服务,并为绑定服务构建和保留绑定表。,3)支持子层帧格式(APDU)

30、,应用支持子层帧格式(APDU)如表3.12所示。每个APS帧都包含两部分内容:APS帧首部和APS载荷。其中APS帧首部包含帧控制域以及地址等信息;APS帧载荷的长度是可变的,根据不同帧的类型决定其包含的信息。,表3.12应用支持子层帧格式,2应用框架(AF),(1)ZigBee应用层框架是应用设备和ZigBee设备连接的环境,在应用层框架中,应用对象发送和接收数据通过APSDE-SAP,而对应用对象的控制和管理则通过ZDO公用接口来实现。 (2)APSDE-SAP提供的数据服务包括请求、确认、响应以及数据传输的指示信息。 (3)应用层框架最多可以定义240个相对独立的应用程序对象,任何一个

31、对象的端点编号从1到240。0端点号固定用于ZigBee设备对象(ZDO)数据接口,端点255固定用于所有应用对象广播数据信息的数据接口功能,端点241-254保留为以后扩展使用。还有两个附加的终端节点为APSDE-SAP使用。,(4)应用层框架可以为应用对象提供两种数据服务类型:,键值匹配服务(Key Value Pair,KVP)和一般信息服务(Generic Message,MSG)。两者传输机制一样,不同的是MSG并不采用应用支持子层数据帧的内容,而是留给Profile应用者自己去定义。,2应用框架(AF)-续,3ZigBee设备对象(ZDO),1)ZigBee设备对象位于应用框架和应

32、用支持子层之间,其描述的是一个基本的功能接口函数,这一功能接口函数在设备规范、APS和ZDO之间提供了函数接口,满足所有应用操作对ZigBee协议栈的一般需要。 2)ZDO提供了相关接口使应用对象与协议栈的下一层相连接,通过APSDE-SAP传输数据信息,通过APSME-SAP传输控制信息。 3)ZDO公用接口在应用框架中提供了设备发现、绑定和安全等功能的管理。,4)ZDO的作用还包括定义一个设备的类型,如决定某一设备为协调器、路由器或终端设备中的一种,发现网络中的设备并决定为它们能提供何种服务、控制绑定请求、在网络设备中建立安全链接等功能。,短距离无线通信技术及应用,3ZigBee设备对象(

33、ZDO)-续,ZigBee设备对象还有以下作用: (1)初始化应用支持子层(APS)、网络层(NWK)和安全服务文档(SSS); (2)从终端应用中集合配置信息来确定和执行发现、安全管理、网络管理、以及绑定管理。 (3)ZDO描述了应用框架层的应用对象的公用接口,控制设备和应用对象的网络功能。在终端节点0,ZDO提供了与协议栈中下一层相接的接口。 在应用层,开发者必须决定是采用公共的应用类还是开发自己专有的类。ZigBee规范为某些应用定义了基本的公共类。如照明、工业传感器等。任何公司都可以设计与支持公共类的产品相兼容的产品。例如,采用公共ZigBee照明类的荧光灯镇流器供应商可与采用相同类的

34、第三方灯开关调光器实现互操作。开发人员可将该公共类加入自己的设计思路。ZigBee设备采用应用对象进行建模。这些应用对象通过交换类对象和它们的属性实现与其他设备的通信。应用层主要根据具体应用由用户开发。它维持器件的功能属性,发现该器件工作空间中其他器件的工作,并根据服务和需求在多个器件之间进行通信。,3.2.5 ZigBee安全管理,(1)ZigBee提供三级安全模式 包括非安全模式、接入控制列表(ACL)模式和安全模式,以及采用高级加密标准AES-128 的对称密码,以灵活确定其安全属性。,1. ZigBee安全管理概述,(2)安全模式下的四种安全服务 安全模式对接收或发送的帧提供全部的四种

35、安全服务:访问控制、数据加密、帧完整性检查和序列更新。,(3) ZigBee协议中的安全机制原理 ZigBee协议中的安全机制是基于CCM模式的。 CCM模式是对802.15.4 协议MAC层中定义的CCM模式补充形成的。CCM模式即CTR(计数模式)和CBC-MAC(密码链块-信息鉴权码)。 CCM(CTR带有CBC-MAC)的加密方案由对称加密和认证机制组合而成,输出由加密的数据和加密的完整性码组成。 CCM包含了CCM模式的所有特性并且添加了单独编码(Encryption-only)和完整性(Integrity-only)的功能。 在ZigBee协议栈中使用CCM 模式后,MAC、NWK

36、和APS层可以共享安全密钥。,短距离无线通信技术及应用,1. ZigBee安全管理概述-续,(4) ZigBee协议中的安全机制的实现方案 ZigBee协议在 MAC、NWK 和 APS 三个协议层上提供安全机制,每个层都对本层的帧实现安全保护。此外,APS 层还提供建立、维持安全关系的安全服务。 ZDO负责管理设备的安全实施和安全配置。 安全协议的执行(如密匙的建立)要以ZigBee整个协议栈正确运行且不遗漏任何一步为前提。,短距离无线通信技术及应用,(1)当MAC层数据帧需要被保护时,ZigBee使用MAC层安全管理来确保MAC层命令、标识、以及确认等功能。ZigBee使用受保护的MAC数

37、据帧来确保一个单跳网络中信息的传输,但对于多跳网络,ZigBee要依靠上层(如NWK层)的安全管理。 (2)MAC层使用高级编码标准(AES)作为主要的密码算法和描述多样的安全组,这些组能保护MAC层帧的机密性、完整性和真实性。 (3)MAC层作为安全性处理,受上一层(负责密匙的建立以及安全性使用的确定)控制。 (4)当MAC层使用安全使能来传送/接收数据帧时,它首先会查找此帧的目的地址(源地址),然后找回与地址相关的密匙,再依靠安全组来使用密匙处理此数据帧。 (5)MAC层的安全组基于三个操作模型:计数器模型(touter,CTR)、密码链模型(Cipher Block Chaining,C

38、BC-MAC)以及两者混合形成的CCM模型。MAC层的编码在计数器模型中使用AES来实现,完整性在密码链模型中使用AES来实现,而编码和完整性的联合则在CCM模型中实现。,2MAC层安全管理,短距离无线通信技术及应用,(1)NWK层也使用高级编码标准(AES),网络层CCM模型是MAC层使用的CCM模型的小修改,它包括了所有MAC层CCM模型的功能,此外还提供了单独的编码及完整性的功能。这些额外的功能通过排除使用CTR(计数器模型)及CBC-MAC模型(密码链模型)来简化NWK的安全模型。 (2)在所有的安全组中,使用CCM模型可以使一个单密匙用于不同的组中。这种情况下,应用可以更加灵活的来指

39、定一个活跃的安全组给每个NWK的帧,而不必理会安全措施是否使能。 (3)当NWK层使用特定的安全组来传输、接收帧时,NWK层会使用安全服务提供者(Security Services Provider,SSP)来处理此帧。SSP会寻找帧的目的/源地址,取回对应于目的/源地址的密匙,然后使用安全组来保护帧。 (4)NWK层对安全管理有责任,但其上一层控制着安全管理,包括建立密匙及确定对每个帧使用相应的CCM安全组。,2. NWK层安全管理,短距离无线通信技术及应用,(1)APL层安全管理主要通过APS子层实现。 APS层允许帧安全基于连接密钥或者网络密钥。 APS子层的另一个安全责任就是提供应用和

40、带有密钥建立、密钥传输和设备管理服务的ZDO。 (2)APS子层的密钥建立服务提供了Zigbee设备得到和其他Zigbee设备共享的连接密钥的机制。 密钥建立涉及两个实体,一个是发出设备,一个是响应设备。 在SKKE(Symmetric-key key establishment)协议中,一个发出装置建立一个带有使用控制密钥的响应设备。 (3)密钥传输服务提供担保和无担保手段运送一密钥到另一设备或其他设备。 担保密钥运输命令提供了一种手段来运输控制密钥、链接密钥或网络密钥由一个密钥源(如信任中心)到其他设备。 无担保密钥运输命令提供了一种手段加载装置初始密钥。此命令不加密保护正在加载的密钥,在

41、这种情况下,密钥运输的安全,可用非加密手段实现。例如,通过频带外频道传递保证秘密性和真实性。,3. APL层安全管理,短距离无线通信技术及应用,3.3.1 ZigBee网络成员,3.3 ZigBee网络构成,按照所具备功能的不同划分成三个不同的种类,即协调器节点、路由器节点和终端节点。,1、成员分类,ZigBee网络支持IEEE802.15.4定义的两种类型的物理设备:全功能设备(FFD)、精简功能设备(RFD)。,FFD和RFD的不同是按照节点的功能区分的,一个FFD可以充当网络中的协调器和路由器,因此一个网络中应该至少含有一个FFD。RFD只能与主设备通信,实现简单,只能作为终端设备节点。

42、,一个ZigBee网络包括一个协调器节点和多个路由器和终端设备节点。,短距离无线通信技术及应用,协调器负责“开启”一个ZigBee网络。它是网络中的第一个设备。协调器节点选择一个信道和一个网络标识符(PANID)并开启网络。可选择地,协调器节点也能被用来设置网络中的安全性和应用水平的绑定。协调器的功能主要是开启和配置网络。一旦这些完成以后,协调器与路由器的功能就一样了(甚至可以断开)。由于ZigBee网络的分布式本质,网络的继续运行不依赖于协调器的存在。,2、协调器,图3.12协调器功能示意图,路由器执行的功能有:a)允许其他设备加入网络;b)多跳路由;c)辅助它的电池供电的子终端设备通信。

43、一般来说,路由器被期望能一直保持激活状态,不能使用电池供电,因此它通常是由固定电源供电。 路由器为它的子节点缓存信息,直到子节点被唤醒并请求数据。当一个子节点需要发送一个信息时,这个子节点发送数据到它的父路由器。路由器负责传输信息,执行所有相关的转发,以及如果需要的话等待确认。这使得终端设备可以回到休眠状态,从而达到省电的目的。,3、路由器,短距离无线通信技术及应用,4、终端设备,图3.14终端设备功能示意图,终端设备只能选择加入他人已经形成的网络,可以收发信息,但不能转发信息,不具备路由功能。可作为感知、控制节点的无线通讯模块。 终端设备可周期性的向它的父节点发送数据或来自父节点的数据,可有

44、选择的休眠和唤醒,可使用电池供电。,4、终端设备 -续,Zigbee终端设备与物联网感知节点的关系图,Zigbee无线网,Zigbee终端设备,物联网感知节点结构图,短距离无线通信技术及应用,5、 ZigBee设备类型及其功能描述,表3.13 ZigBee设备类型及其功能描述,短距离无线通信技术及应用,(1)一个典型的ZigBee网络应该拥有一个协调器,多个路由器和多个终端设备。 (2)ZigBee路由器允许其他路由器或终端设备加入到网络,通过协调器为其分配网络地址,并为他们提供多条路由和数据转发等功能。 (3)协调器除具有路由器的拥有的功能以外,还负责创建整个网络,进行网络初始化配置、频段选

45、择,并协助网络完成绑定功能,并存储绑定表。 (4)终端设备不提供任何网络维护功能,仅仅可以和协调器、路由器之间进行信息交互,实现基本的感知或控制功能,终端设备可以随时休眠或唤醒。 (5)ZigBee 的节点除了在网络中扮演的角色不同之外,在用其感知和控制功能时,则不受节点设备类型的限制。协调器和路由器均可实现与终端设备相同的传感或控制功能。,6、ZigBee网络成员工作角色综述,短距离无线通信技术及应用,3.3.2 ZigBee网络的拓扑结构,ZigBee网络主要有三种组网方式:星型网络、树状网络和网状型网络,其拓扑结构如图3.15所示。,图3.15 ZigBee网络拓扑结构,(1)构成及特点

46、 星型拓扑是一个辐射状网络,数据和网络控制命令都是通过协调器传输的。星型拓扑只需要一个被配置成PAN协调器的FFD设备,没有路由节点,其它设备都是终端节点。终端设备直接与协调器通信,而终端设备之间不能直接通信,需要通过PAN协调器转发。 (2)创建 创建星型网络时,最先启动的FFD作为PAN 协调器,并选定一个与其覆盖区域内的PAN 不同的标识作为自身的 PAN 标识,网络协调器就可以把其它的FFD和RFD加入到网络中。为避免信标碰撞,网络通信方式采用无信标使能方式。但是普通节点可向协调器发出信标请求命令,这时协调器将会以单播的形式向该节点发送信标。各个节点使用 CSMA-CA 机制访问信道,

47、发送和接收数据。 (3)优缺点 星型拓扑是迄今为止最常见的网络配置结构,被大量应用在远程监控中。星型拓扑的最大特点是结构简单,管理方便。但是它的灵活性太小,每个终端设备必须放在协调器的通信范围之内,无法实现较大的网络覆盖。此外该拓扑结构容易发生网络堵塞、信息包丢失、性能下降等,这取决于数据的实际传输情况。 (4)应用场合 星型网络适用于节点数目比较少、结构简单的应用场合。,1星型拓扑,(1)构成 树状拓扑是多个星形拓扑的集合,也称为簇状拓扑,是由一个协调器和一个或多个星型拓扑连接而成。一部分FFD 被配置成路由器节点,多个星型拓扑连接到一起,增加了网络覆盖范围。,2树状拓扑,(2)特点 树形拓

48、扑是可以实现网络范围内“多跳”信息服务的最简单的拓扑结构,树形拓扑最值得注意的地方就是它保持了星形拓扑的简单性:较少的上层路由信息、较低的存储器需求。 树形结构不能很好的适应外部的动态环境。信息源与目的之间,有且只有一条传输路径,任何一个节点的中断或故障将会使部分节点脱离网络。 (3)应用场合 树形拓扑的最佳应用是在稳定的无线电射频环境中,也可以很好的用在一些简单的低数据量的大规模集合的应用之中。,短距离无线通信技术及应用,(1)网状拓扑是一个混合型网络拓扑,具有很强的适应环境的能力。网络中的每个节点都是一个小的路由器,都具有重新路由选择的能力,以确保网络最大限度的可靠性,网络中任意两个节点的

49、通信路径不是唯一的。,3网状拓扑,(2)网状拓扑中也有一个协调器,负责建立网络,但网状拓扑中的任何两个路由器之间可直接通信,因此,网络中任意两个节点有多种通讯路径,保证了通信的可靠性。且该拓扑结构有助于减小消息延时。 (3)网状拓扑的路由拓扑是动态的,路由不是固定的,这样信息传输的时间取决于瞬时网络连接质量。由于网状拓扑更为复杂,需要更多的存储空间开销,且不发送信标,网络中各节点很难达到同步。 (4)定性地分析网状拓扑路由算法也是比较困难的工作,往往只在需要高度可靠的场合应用网型结构。,短距离无线通信技术及应用,3.3.3 ZigBee网络的建立,不同的网络拓扑结构其网络建立流程是不一样的。下

50、面以最为复杂的网状拓扑为例来分析Zigbee网络的建立流程。 1、ZigBee网络的建立概述 (1)组建一个完整的Zigbee网状网络包括两个步骤:网络初始化、节点加入网络。 (2)节点加入网络又包括两个步骤:通过与协调器连接入网和通过已有父节点入网。 (3)Zigbee网络的建立是由网络协调器发起的,任何一个Zigbee节点要组建一个网络必须要满足以下两点要求: a)节点是FFD节点,具备Zigbee协调器的能力; b)节点还没有与其他网络连接。当节点已经与其他网络连接时,此节点只能作为该网络的子节点,因为一个Zigbee网络中有且只有一个网络协调器。,2网络初始化,(1)确定网络协调器。

51、首先判断节点是否是FFD节点,接着判断此FFD节点是否在其他网络里或者网络里是否已经存在协调器。 具体实现: 通过主动扫描,发送一个信标请求命令(Beacon request command),然后设置一个扫描期(T_scan_duration),如果在扫描期限内都没有检测到信标,那么就认为FFD在其POS内没有协调器,那么此时就可以建立自己的Zigbee网络,并且作为这个网络的协调器不断地产生信标并广播出去。,短距离无线通信技术及应用,(2)进行信道扫描过程。 包括能量扫描和主动扫描两个过程: 1)首先对指定的信道或者默认的信道进行能量检测,以避免可能的干扰。以递增的方式对所测量的能量值进行

52、信道排序,抛弃那些能量值超出了可允许能量水平的信道,选择可允许能量水平的信道并标注这些信道是可用信道。 2)接着进行主动扫描,搜索节点通信半径内的网络信息。这些信息以信标帧的形式在网络中广播,节点通过主动信道扫描方式获得这些信标帧,然后根据这些信息,找到一个最好的、相对安静的信道,通过记录的结果,选择一个信道,该信道应存在最少的Zigbee网络,最好是没有Zigbee设备。在主动扫描期间,MAC层将丢弃PHY层数据服务接收到的除信标以外的所有帧。,2网络初始化-续,(3)设置网络ID 找到合适的信道后,协调器将为网络选定一个网络标识符(PAN ID,取值=0 x3FFF),这个ID在所使用的信

53、道中必须是唯一的,也不能和其他Zigbee网络冲突,而且不能是广播地址0 xFFFF(此地址为保留地址,不能使用)。 1)PAN ID可以通过侦听其他网络的ID然后选择一个不会冲突的ID的方式来获取,也可以人为的指定扫描的信道来确定不和其他网络冲突的PAN ID。 2)在Zigbee网络中有两种地址模式:扩展地址(64位)和短地址(16位),其中扩展地址由IEEE组织分配,用于唯一的设备标识;短地址用于本地网络中设备标识,在一个网络中,每个设备的短地址必须唯一,当节点加入网络时由其父节点分配并通过使用短地址来通信。对于协调器来说,短地址通常设定为0 x0000 。,2网络初始化-续,短距离无线

54、通信技术及应用,节点入网时将选择范围内信号最强的父节点(包括协调器)加入网络,成功后将得到一个网 络短地址并通过这个地址进行数据的发送和接收,网络拓扑关系和地址就会保存在各自的flash中。节点加入网络的方式有以下两种: ( 1)节点通过协调器加入网络 当节点协调器确定之后,节点首先需要和协调器建立连接加入网络。考虑到网络的容量和FFD/RFD的特点,在此只讨论FFD节点情况,FFD节点与协调器连接加入网络的流程如图3.16所示。 为了建立连接,FFD节点需要向协调器提出请求,协调器接收到节点的连接请求后根据情况决定是否允许其连接,然后对请求连接的节点做出响应,节点与协调器建立连接后,才能实现

55、数据的收发。具体的流程可以分为下面的步骤:,3、节点加入网络的方式,1)查找网络协调器 首先会主动扫描查找周围网络的协调器,如果在扫描期限内检测到信标,那么将获得了协调器的有关信息,这时就向协调器发出连接请求。在选择合适的网络之后,上层将请求MAC层对物理层和MAC层的phyCurrentChannel、macPANID等PIB属性进行相应的设置。如果没有检测到,间隔一段时间后,节点重新发起扫描。 2)发送关联请求命令(Associate request command) 节点将关联请求命令发送给协调器,协调器收到后立即回复一个确认帧(ACK),同时向协调器的上层发送连接指示原语,表示已经收到

56、节点的连接请求。但是这并不意味着已经建立连接,只表示协调器已经收到节点的连接请求。当协调器的MAC层的上层接收到连接指示原语后,将根据自己的资源情况(存储空间和容量)决定是否同意此节点的加入请求,然后给协调器节点的MAC层发送响应。,( 1)节点通过协调器加入网络-续,短距离无线通信技术及应用,3)等待协调器处理。 当节点收到协调器加入请求命令的ACK后,要入网的节点MAC将等待一段时间,接受协调器的连接响应。在预定的时间内,如果接收到连接响应,它将这个响应向它的上层通告。而协调器给要入网的节点发送响应时会设置一个等待响应时间(T_ResponseWaitTime)来等待协调器对其加入请求命令

57、的处理,若协调器的资源足够,协调器会给节点分配一个16bit的短地址,并产生包含新地址和连接成功状态的连接响应命令,则此节点将成功的和协调器建立连接并可以开始通信。若协调器资源不够,待加入的节点将重新发送请求信息,直到入网成功。,(1)节点通过协调器加入网络-续,4)发送数据请求命令 如果协调器在响应时间内同意节点加入,将产生关联响应命令(Associate response command)并存储这个命令。当响应时间过后,节点发送数据请求命令(Data request command)给协调器,协调器收到后立即回复ACK,然后将存储的关联响应命令发给节点。如果在响应时间到后,协调器还没有决定

58、是否同意节点加入,那么节点将试图从协调器的信标帧中提取关联响应命令,成功的话就可以入网成功,否则重新发送请求信息直到入网成功。 5)回复 节点收到关联响应命令后,立即向协调器回复一个确认帧(ACK),以确认接收到连接响应命令,此时节点将保存协调器的短地址和扩展地址,并且节点的MLME向上层发送连接确认原语,通告关联加入成功的信息。,( 1)节点通过协调器加入网络-续,短距离无线通信技术及应用,图3.16Zigbee节点通过协调器加入网络流程,(1)节点通过协调器加入网络-续,短距离无线通信技术及应用,当靠近协调器的FFD节点和协调器关联成功后,处于这个网络范围内的其他节点就以这些FFD节点作为

59、父节点加入网络。具体有两种方式: 一种是通过关联(associate)方式,就是待加入的节点发起加入网络;另一种是直接(direct)方式,就是待加入的节点具体加入到那个节点下(路由节点),作为该节点的子节点。 其中关联方式是Zigbee网络中新节点加入网络的主要途径,对于一个节点来说只有没有加入过网络的才能使用该方式加入网络。,( 2)节点通过已有节点加入网络,新节点1,孤儿节点1,新节点2,孤儿节点2,短距离无线通信技术及应用,在待加入网络的节点中,有些是曾经加入过网络,但是却与它的父节点失去联系(这样的被称为孤儿节点),而有些则是新节点。当是孤儿节点时,在它的相邻表中存有原父节点的信息,于是它可以直接给原父节点发送加入网络的请求信息。 如果父节点有能力同意它加入,直接告诉它以前被分配的网络地

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

最新文档

评论

0/150

提交评论