在ZigBee协议架构中,网络层(NWK层)位于MAC层和应用层之间,提供两种服务:数据服务和管理服务,如图3-13所示。网络层数据实体(NLDE)负责数据传输,NLDE通过网络层数据服务实体服务接入点(NLDE-SAP)为应用层提供数据服务数据。管理实体(NLME)负责网络管理,通过网络层管理实体服务接入点(NLME-SAP)为应用层提供管理服务并维护网络层信息库(NIB)。
图3-13 ZigBee网络层与MAC层和应用层之间的接口
1.网络层参考模型
网络层参考模型如图3-14所示,包括网络层数据实体和网络层管理实体。
图3-14 网络层参考模型
在同一网络中的两个或多个设备之间,通过网络层数据实体提供的数据服务传输应用协议的数据单元(APDU),NLDE可以提供以下两种服务:
1)给应用支持子层PDU添加适当的协议头,形成网络协议数据单元(NPDU)。
2)根据拓扑路由,把网络协议数据单元发送到目的地址设备或通信链路的下一跳。
2.网络层帧结构
普通网络帧结构如图3-15所示,网络层的帧结构也分为两部分:帧头和负载。帧头是表征网络层特性的部分,负载是来自应用层的数据单元,所包含的信息因帧类型不同而不同,长度可变。
图3-15 普通网络帧结构
(1)帧控制
帧头的第一部分是帧控制,帧控制决定了该帧是数据帧还是命令帧。帧控制共有2B,16bit,分为帧类型、协议版本、发现路由、多播标志、安全、源路由、目的IEEE地址、源IEEE地址子项目。各子域的划分如图3-15所示。
1)帧类型:2bit。00表示数据帧,01表示命令帧,其他取值预留。
2)协议版本:4bit。表示当前设备使用的ZigBee网络层协议版本号。
3)发现路由:2bit。用来控制路发送帧时的路由发现操作。
4)安全:1bit。当值为1,该帧执行网络层安全操作;如果值为0,该帧在其他层执行安全操作或完全不使用安全操作。(www.xing528.com)
(2)目的地址
占2B,内容为目的设备的16位网络地址或者广播地址(0xffff)。
(3)源地址
占2B,内容为源设备的16位网络地址。
(4)半径
占1B,指定该帧的传输范围。如果是接收数据,接收设备应该把该字段的值减1。
(5)序号
占1B。如果设备是传输设备,每传输一个新的帧,该帧就把序号的值加1,源地址字段和序列号字段的一对值可以唯一确定一帧数据。
帧头中的字段按固定的顺序排列,但不是每一个网络层的帧都包含完整的地址和序号信息字段。
3.网络层主要功能
1)对新设备进行配置。例如,一个新设备可以配制成ZigBee网络协调者,也可以被配制成一个终端加入一个已经存在的网络。
2)开发一个新网络。
3)加入或者退出网络。
4)网络层安全。
5)帧到目的地的路由选择(只有ZigBee协调者和路由器具有这项功能)。
6)发现和保持设备间的路由信息。
7)发现下一跳邻居节点,不用中继,设备可以直接到达的节点。
8)存储相关下一跳邻居节点信息。
9)为入网的设备分配地址(只有ZigBee协调器和路由器具有这项功能)。
免责声明:以上内容源自网络,版权归原作者所有,如有侵犯您的原创版权请告知,我们将尽快删除相关内容。