解析ZigBee堆栈架构

2010-03-27 来源:我爱研发网 字号:

  ZigBee标准定义了一种堆栈协议,这种协议能够确保无线设备在低本钱、低功耗和低数据速率网络中的互操纵性。本文简要说明ZigBee标准中规定的ZigBee堆栈结构。

  ZigBee堆栈是在IEEE 802.15.4标准基础上建立的,定义了协议的MAC和PHY层。ZigBee设备应该包括IEEE802.15.4(该标准定义了RF射频以及与相邻设备之间的通信)的PHY和MAC层,以及ZigBee堆栈层:网络层(NWK)、应用层和宁静服务提供层。图1给出了这些组件的外貌。

ZigBee堆栈层

  每个ZigBee设备都与一个特定模板有关,可能是公共模板或私有模板。这些模板定义了设备的应用环境、设备类型以及用于设备间通信的簇。公共模板可以确保差别供应商的设备在相同应用领域中的互操纵性。

  设备是由模板定义的,并以应用对象(Application Objects)的形式实现(见图)。每个应用对象通过一个端点连接到ZigBee堆栈的余下部分,它们都是器件中可寻址的组件。

  从应用角度看,通信的素质就是端点到端点的连接(例如,一个带开关组件的设备与带一个或多个灯组件的远端设备进行通信,目的是将这些灯点亮)。

图1:ZigBee堆栈架构。

  端点之间的通信是通过称之为簇的数据结构实现的。这些簇是应用对象之间共享信息所需的全下属性的容器,在特别应用中使用的簇在模板中有定义。图2就是设备及其接口的一个例子:

图2:由模板定义好的设备描述。

  每个接口都能接收(用于输入)或发送(用于输出)簇格式的数据。一共有二个特另外端点,即端点0和端点255。端点0用于整个ZigBee设备的配置和管理。应用步伐可以通过端点0与ZigBee堆栈的其它层通信,从而实现对这些层的初始化和配置。附属在端点0的对象被称为ZigBee设备对象(ZD0)。端点255用于向所有端点的广播。端点241到254是保存端点。

  所有端点都使用应用支持子层(APS)提供的服务。APS通过网络层和宁静服务提供层与端点相接,并为数据传送、宁静和绑定提供服务,因此能够适配差别但兼容的设备,好比带灯的开关。

  APS使用网络层(NWK)提供的服务。NWK负责设备到设备的通信,并负责网络中设备初始化所包括的活动、消息路由和网络发现。应用层可以通过ZigBee设备对象(ZD0)对网络层参数进行配置和访问。

802.15.4 MAC层

  IEEE 802.15.4标准为低速率无线个人域网(LR-WPAN)定义了OSI模型开始的两层。PHY层定义了无线射频应该具备的特征,它支持二种差别的射频信号,分别位于2450MHz波段和868/915MHz波段。2450MHz波段射频可以提供250kbps的数据速率和16个差别的信道。868/915MHz波段中,868MHz支持1个数据速率为20kbps的信道,915MHz支持10个数据速率为40kbps的信道。

  MAC层负责相邻设备间的单跳数据通信。它负责建立与网络的同步,支持关联和去关联以及MAC层宁静:它能提供二个设备之间的可靠链接。

关于服务接入点

 ZigBee堆栈的差别层与802.15.4 MAC通过服务接入点(SAP)进行通信。SAP是某一特定层提供的服务与上层之间的接口。

  ZigBee堆栈的大多数层有两个接口:数据实体接口和管理实体接口。数据实体接口的目标是向上层提供所需的通例数据服务。管理实体接口的目标是向上层提供访问内部层参数、配置和管理数据的机制。

ZigBee的宁静性

  宁静机制由宁静服务提供层提供。然而值得注意的是,系统的整体宁静性是在模板级定义的,这意味着模板应该定义某一特定网络中应该实现何种类型的宁静。

  每一层(MAC、网络或应用层)都能被掩护,为了降低存储要求,它们可以分享宁静钥匙。SSP是通过ZD0进行初始化和配置的,要求实现高级加密标准(AES)。ZigBee规范定义了信任中央的用途。信任中央是在网络中分配宁静钥匙的一种令人信任的设备。

ZigBee堆栈容量和ZigBee设备

  根据ZigBee堆栈规定的所有功能和支持,我们很容易推测ZigBee堆栈实现需要用到设备中的大量存储器资源。

  不过ZigBee规范定义了三种类型的设备,每种都有自己的功能要求:ZigBee协调器是启动和配置网络的一种设备。协调器可以连结间接寻址用的绑定表格,支持关联,同时还能设计信任中央和执行其它活动。一个ZigBee网络只允许有一个ZigBee协调器。

  ZigBee路由器是一种支持关联的设备,能够将消息转发到其它设备。ZigBee网格或树型网络可以有多个ZigBee路由器。ZigBee星型网络不支持ZigBee路由器。

  ZigBee端终设备可以执行它的相关功能,并使用ZigBee网络到达其它需要与其通信的设备。它的存储器容量要求最少。

  然而需要特别注意的是,网络的特定架构会戏剧性地影响设备所需的资源。NWK支持的网络拓扑有星型、树型和网格型。在这几种网络拓扑中,星型网络对资源的要求最低。

本文小结

  ZigBee堆栈应该可以提供ZigBee规范要求的所有功能,因此制造商的重点工作是开发实际的应用。为了更加容易实现,如果制造商使用某种公共模板,那么可用大多数现成的配置。如果没有合适的公共模板,则可以充分利用其它模板已经做过的工作创建自己的模板。

主题阅读:ZigBee架构