Chinaunix首页 | 论坛 | 博客
  • 博客访问: 1911769
  • 博文数量: 376
  • 博客积分: 2147
  • 博客等级: 大尉
  • 技术积分: 3642
  • 用 户 组: 普通用户
  • 注册时间: 2012-02-06 10:47
文章分类

全部博文(376)

文章存档

2019年(3)

2017年(28)

2016年(15)

2015年(17)

2014年(182)

2013年(16)

2012年(115)

我的朋友

分类: 嵌入式

2014-06-26 10:24:42

原文地址:ZigBee 网络层概况 作者:frankzfz

1.ZigBee体系结构
   ZigBee技术作为一种无线传感网络的通信协议,按照7层OSI(Open System Interconnect Reference Model)开放系统互连参考模型来建立,每一层为上层提供一系列特殊的服务,数据实体提供数据传输服务,管理实体则提供所有其他的服务。所有的服务实体通过服务接入点(Server Access Point,SAP)为上层提供一个接口,每个SAP都支持一定数量的服务原语来实现所需要的功能。
   ZigBee标准的体系结构如下图所示,其中IEEE802.15.4标准定义了底层即物理层(Physical Layer,PHY)和但介质访问控制层(Medium Access Control Sub-Layer,MAC)。ZigBee联盟在此基础上定义了网络层(Network Layer,NWK)和应用层(Application Layer,APL)架构。应用层包括应用支持子层(Application Support Sub-Lays,APS),应用架构(Application Framework,AF)、ZigBee设备对象(ZigBee Device Objects,ZDO)以及用户定义应用对象(Manufacturer-Defined Application Objects,MDAO).
    ZigBee网络层主要功能包括设备连接和断开网络里所采用的机制,以及在帧信息传输过程中所采用的安全性机制。此外,还包括设备之间的路由发现和路由维护和转交。并且,网络层对一跳(one-hop)邻居设备的发现和相关结点信息的存储。一个ZigBee协调器创建一个新的网络,为新加入的设备分配短地址等。
    ZigBee应用层由应用支持层、ZigBee设备和制造商所定义的应用 对象组成。应用支持层的功能 包括:维护绑定表在绑定的设备之间传送消息。所谓绑定就是基于两台设备的服务和需求将它们匹配地连接越来。ZigBee设备对象的功能包括:定义设备在网络中的角色(ZigBee协调器和终端设备),发起和响应绑定请求,在网络设备之间建立安全机制。ZigBee设备对象还负责发现网络中的设备,并且决定向他们提供何种应用服务。
 
 

从应用的角度看,通信的本质就是端点到端点的连接。端点之间的通信是通过称之为串的数据结构实现的,这些串是应用对象之间共享信息所需要的全部属性的容器。每个接口都能接收或发送串格式的数据。一共有2个特殊的端点,即端点0与端点255.端点0用于整个ZigBee设备的配置和管理。应用程序可以通过端点0ZigBee堆栈的其他层通信,从而实现对这些层的初始化和配置。附属在端点0的对象被称为ZigBee设备对象ZDO。端点255用于向所有的端点广播。端点241—254是保留端点。

所有的端点都使用应用支持子层APS提供的服务。APS通过网络层和安全服务提供层与端点的连接,并为数据传送、安全和绑定提供服务,因此能够适配不同但兼容的设备,APS使用网络层NWK提供的服务。NWK负责设备到设备的通信,并负责网络中设备初始化所包含的活动、消息路由和网络发现。应用层可以通过ZigBee设备对象ZDO对网络层参数进行配置和访问。

ZigBee协调器是启动和配置网络的一种设备。协调器可以保持间接寻址用来绑定表格,支持关联,同时还能设计信任中心和执行其他的活动。协调器负责网络正常工作以及保持同网络其他设备的通信。一个ZigBee网络只允许有一个ZigBee协调器

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

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

上述3种设备根据功能完整性可以分为全功能(FFD)设备和半功能(RFD)设备。其中,全功能设备可用作协调器,路由器和终端设备,而半功能设备只能用作终端设备。一个全功能设备可与多个RFD设备或多个其他FFD设备通信,而一个半功能设备只能与一个FFD通信。然而需要特别注意的是,网络的特定架构会戏剧性地影响设备所需要资源,NWK支持的网络拓扑有星形树型和网络型。这三种设备只是在安装在上面的协议的不同,设备是相同。

2. 网络拓扑结构

ZigBee网络层支持星型、树型和网状型拓扑结构。在星型拓扑结构中,整个网络由一个称为ZigBee协调器(ZigBee Coordinator)的设备来控制。ZigBee协调器负责发起和维持网络正常工作,保持同网络终端设备通信。在网状型和树型拓扑结构中,ZigBee协调器负责启动网络以及选择关键的网络参数,同时,也可以使用ZigBee路由器来扩展网络结构。在树型网络中,路由器采用分组路由策略来传送数据和控制信息。树型网络可以采用基于信标的方式进行通信,。网状型网络中,设备之间使用完全对等的通信方式。在网状网络中,ZigBee路由器将不发送通信信标。

3.网络层功能

ZigBee网络层的主要功能就是提供一些必要的函数,确保ZigBeeMAC层正常工作,并且为应用层提供合适的服务接口。为了向应用层提供其接口,网络层提供了两个必要的功能服务实体,它们分别为数据服务实体和管理服务实体。网络层数据实体(NLDE)通过网络层数据裤腰服务接入点(NLDE-SAP)提供数据传输服务,网络层管理实体(NLME)通过网络层管理裤腰服务接入点(NLME-SAP)提供网络管理服务,网络层管理实体利用网络层数据实体完成一些网络的管理工作,并且,网络层管理实体完成对网络信息库(NIB)的维护和管理,

1.网络层数据实体

网络层数据实体为数据提供服务,在两个或者更多的设备之间传送数据时,将按照应用协议数据单元(APDU)的格式进行传送,并且这些设备必须在同一个网络中,即在同一个内部个域网中。

网络层数据实体提供如下服务:

     生成网络层协议数据单元(NPDU),网络层数据实体通过增加一个适当的协议头,从应用支持层协议数据单元中生成网络层的数据单元

     指定拓扑传输路由,网络层数据实体能够发送一个网络层的协议数据单元到一个合适的设备,该设备可以是最终的目的通信设备,也可能是通信链路中的一个中间通信设备。

2.       网络层管理实体

网络层管理实体提供网络管理服务,允许应用与堆栈相互作用。网络层管理实体应该提供如下服务:

     配置一个新的设备。为保证设备正常工作的需要,设备应该具有足够堆栈,以满足配置的需要。配置选项包括对一个ZigBee协调器和连接一个现有网络设备的初始化操作。

     初始化一个网络,使之具有建立一个新网络的能力。

     连接和断开网络,具有连接或者断开一个网络的能力,以及为建立一个ZigBee协调器或者ZigBee路由器,具有要求设备同网络断开的能力。

     寻址。ZigBee协调器和ZigBee路由器具有为新加入网络的设备分配地址的能力。

     邻居设备发现。具有发现\记录和汇报有关一跳邻居设备信息的能力。

     路由发现。具有发现和记录有效地传送信息的网络路由能力。

     接收控制。具有控制设备接收机接收状态的能力,即控制接收机什么时间接收,接收时间的长短,以保证MAC层的同步长或者正常接收等。

4.网络层服务协议

网络层通过两种服务接入点提供相应的两种服务,它们分别是网络层数据服务和网络层管理服务。网络层数据服务通过网络层数据实体服务接入点接入,网络层管理服务通过网络层管理实体服务接入点接入。这两种服务通过MCPS-SAPMLME-SAP接口为MAC层提供接口,险些之外,通过NLDE-SAPNLME-SAP接口为应用层实体提供接口服务。

网络层数据实体服务接入点支持对等应用实体之间的应用协议数据单元的传输。

 

阅读(682) | 评论(0) | 转发(0) |
给主人留下些什么吧!~~