ZigBee协议栈中文说明Word文档格式.docx

上传人:b****3 文档编号:17564681 上传时间:2022-12-07 格式:DOCX 页数:16 大小:239.50KB
下载 相关 举报
ZigBee协议栈中文说明Word文档格式.docx_第1页
第1页 / 共16页
ZigBee协议栈中文说明Word文档格式.docx_第2页
第2页 / 共16页
ZigBee协议栈中文说明Word文档格式.docx_第3页
第3页 / 共16页
ZigBee协议栈中文说明Word文档格式.docx_第4页
第4页 / 共16页
ZigBee协议栈中文说明Word文档格式.docx_第5页
第5页 / 共16页
点击查看更多>>
下载资源
资源描述

ZigBee协议栈中文说明Word文档格式.docx

《ZigBee协议栈中文说明Word文档格式.docx》由会员分享,可在线阅读,更多相关《ZigBee协议栈中文说明Word文档格式.docx(16页珍藏版)》请在冰豆网上搜索。

ZigBee协议栈中文说明Word文档格式.docx

端点241到254是保留

端点。

所有端点都使用应用支持子层(APS)提供的服务。

APS通过网络层和安全服务提供层与端点相接,并为数据传送、安全和绑定提供服务,因此能够适配不同但兼容的设备,比如带

灯的开关。

APS使用网络层(NWK)提供的服务。

NWK负责设备到设备的通信,并负责网络中设备初始化所包含的活动、消息路由和网络发现。

应用层可以通过ZigBee设备对象(ZD0)对网

络层参数进行配置和访问。

1.1.2802.15.4MAC层

IEEE802.15.4标准为低速率无线个人域网(LR-WPAN)定义了0SI模型开始的两层。

PHP层定义了无线射频应该具备的特征,它支持二种不同的射频信号,分别位于2450MHz波段和868/915MHZ波段。

2450MHz波段射频可以提供250kbps的数据速率和16个不同的信道。

868/915MHZ波段中,868MHz支持1个数据速率为20kbps的信道,915MHz支持10个数据速率为40kbps的信道。

MAC层负责相邻设备间的单跳数据通信。

它负责建立与网络的同步,支持关联和去关联

以及MAC层安全:

它能提供二个设备之间的可靠链接。

1.1.3关于服务接入点

ZigBee堆栈的不同层与802.15.4MAC通过服务接入点(SAP)进行通信。

SAP是某一特定层提供的服务与上层之间的接口。

ZigBee堆栈的大多数层有两个接口:

数据实体接口和管理实体接口。

数据实体接口的目标是向上层提供所需的常规数据服务。

管理实体接口的目标是向上层提供访问内部层参数、配置和管理数据的机制。

1.1.4ZigBee的安全性

安全机制由安全服务提供层提供。

然而值得注意的是,系统的整体安全性是在模板级定

义的,这意味着模板应该定义某一特定网络中应该实现何种类型的安全。

每一层(MAC、网络或应用层)都能被保护,为了降低存储要求,它们可以分享安全钥匙。

SSP是通过ZDO进行初始化和配置的,要求实现高级加密标准(AES)。

ZigBee规范定义了

信任中心的用途。

信任中心是在网络中分配安全钥匙的一种令人信任的设备。

1.1.5ZigBee堆栈容量和ZigBee设备

根据ZigBee堆栈规定的所有功能和支持,我们很容易推测ZigBee堆栈实现需要用到

设备中的大量存储器资源。

不过ZigBee规范定义了三种类型的设备,每种都有自己的功

能要求:

ZigBee协调器是启动和配置网络的一种设备。

协调器可以保持间接寻址用的绑定表格,支持关联,同时还能设计信任中心和执行其它活动。

一个ZigBee网络只允许有一个

ZigBee协调器。

ZigBee路由器是一种支持关联的设备,能够将消息转发到其它设备。

ZigBee网格或树

型网络可以有多个ZigBee路由器。

ZigBee星型网络不支持ZigBee路由器。

ZigBee端终设备可以执行它的相关功能,并使用ZigBee网络到达其它需要与其通信的设备。

它的存储器容量要求最少。

然而需要特别注意的是,网络的特定架构会戏剧性地影响设备所需的资源。

NWK支持的网络拓扑有星型、树型和网格型。

在这几种网络拓扑中,星型网络对资源的要求最低。

ZigBee堆栈应该可以提供ZigBee规范要求的所有功能,因此制造商的重点工作是开发实际的应用。

为了更加容易实现,如果制造商使用某种公共模板,那么可用大多数现成的配置。

如果没有合适的公共模板,则可以充分利用其它模板已经做过的工作创建自己的模板。

ZigBee协议栈体系包含一系列的层元件,其中有IEEE802.15.420PP标准中的MAC层

和PHP层,当然也包括ZigBee组织设计的NWK层。

每个层的元件有其特定的服务功能。

本说明描述内容涉及ZigBee协议栈的各层元件,但侧重于描述最具实际和理论探讨性的

APL应用层和NWK网络层。

图1-1为ZigBee栈结构框图。

2APL应用层介绍

2.1.1应用层简介

如图2-1所示,ZigBee应用层由三个部分组成,APS子层、ZDO(包含ZDO管理平

台)和制造商定义的应用对象。

Source:

ZiLibccAlliance200410/15LigBeeProtoc1Stack

SEF^IcB

Provid&

r

i^e-Fac-i

2^9m;

u成il・ru

Apj>

11■?

.11innhrnme*vnric:

仃24(1

»

»

*

—1

hJpniiTtu

IKFFKO?

15id-i

E^duinsurir

图2-1zigbee协议堆栈分层结构

2.1.2应用层框架

ZigBee中的应用框架是为驻扎在ZigBee设备中的应用对象提供活动的环境。

最多可以定义240个相对独立的应用程序对象,且任何一个对象的端点编号都是从1

到240。

此外还有两个附加的终端节点,为了APSDE-SAP的使用:

端点号0固定用于ZDO数据接口;

另外一个端点255固定用于所有应用对象广播数据的数据接口功能。

端点241-254保留(留给未来扩展使用)。

2.1.2.1应用Profiles

应用profiles是一组统一的消息,消息格式和处理方法,允许开发者建立一个可以共同使用的分布式应用程序,这些应用是利用驻扎在独立设备中的应用实体来实现的。

这些应用profiles允许应用程序发送命令、请求数据和处理命令的请求。

2.1.2.2簇

簇标识符可用来区分不同的簇,簇标识符联系着从设备流出和向设备流入的数据。

在特

殊的应用profiles范围内,簇标识符是唯一的。

2.1.3ZigBee设备对象

ZigBee设备对象(ZDO),描述了一个基本的功能函数,这个功能在应用对象、设备profile和APS之间提供了一个接口。

ZDO位于应用框架和应用支持子层之间。

它满足所有在ZigBee协议栈中应用操作的一般需要。

此外ZDO还有以下作用:

(1)初始化应用支持子层(APS),网络层(NWK),安全服务规范(SSS)。

(2)从终端应用集合中配置的信息来确定和执行安全管理、发现、网络管理、以及绑

定管理。

ZDO描述了应用框架层中应用对象的公用接口以及控制设备和应用对象的网络功能。

在终端节点0,ZDO提供了与协议栈中与低一层连接的接口,如果是数据则通过APSDE-SAP,如果是控制信息则通过APSME-SAP°

ZDO的具体描述在2.5节。

2.1.3.1设备发现

设备发现是ZigBee设备为什么能发现其他设备的过程。

这有两种形式的设备发现请求:

IEEE地址请求和网络地址请求。

IEEE地址请求是单播到一个特殊的设备且假定网络地址已经知道。

网络地址请求是广播且携带一个已知的IEEE地址作为负载。

2.132服务发现

服务发现是为什么一个已知设备被其他设备发现的能力的过程。

服务发现通过在一

个已知设备的每一个端点发送询问或通过使用一个匹配服务(广播或者单播)。

服务发现方便定义和使用各种描述来概述一个设备的能力。

服务发现信息在网络中也许被隐藏,在这种情况下,设备提供的特殊服务便可能不在操作发生的时候到达。

2.2ZigBee应用支持子层APS

APS提供了这样的接口:

在NWK层和APL层之间,从ZDO到供应商的应用对象的通用服务集。

这服务由两个实体实现:

APS数据实体(APSDE)和APS管理实体(APSME)。

⑴APSDE提供在同一个网络中的两个或者更多的应用实体之间的数据通信。

通过

APSDE服务接入点(APSDE-SAP);

(2)APSME提供多种服务给应用对象,这些服务包含安全服务和绑定设备,并维护

管理对象的数据库,也就是我们常说的AIB。

通过APSME服务接入点(APSME-SAP)。

2.2.1范围

这一小节描述了应用层部分提供的服务规范和生产商定义的应用对象与ZigBee设备

对象之间的接口。

规范定义了允许应用对象传输数据的数据服务和提供绑定机制的管理服

务。

另外,它还定义了应用支持子层的帧格式和帧类型。

如图2-2

1PHYHparipr

4Pledlrilile

1u「Fbl■吐LD』irriiZ

丁用Fryin-rIwilh

1ZRResevp

AP&

pavIcad

图2-2zigbee帧格式

2.2.2目的

这小节的目的是定义ZigBee应用支持子层的功能。

该功能建立在两个基础之上,一

是正确运行ZigBee网络层的驱动功能,二是制造商定义的应用对象所需要的功能。

2.2.3应用支持子层简介

应用支持子层给网络层和应用层通过ZigBee设备对象和制造商定义的应用对象使用

的一组服务提供了接口,该接口提供了ZigBee设备对象和制造商定义的应用对象使用的一

组服务。

通过两个实体提供这些服务:

数据服务和管理服务。

APS数据实体(APSDE)通过与

之连接的SAP即APSDE-SAP提供数据传输服务。

APS管理实体(APSME通过与之连接的SAP,即APSME-SA提供管理服务,并且维护一个管理实体数据库,即APS信息库(NIB)。

2.2.3.1应用支持子层的数据实体(APSDE)

APSDE向网络层提供数据服务,并且为ZDO和应用对象提供服务,完成两个或多个设

备之间传输应用层PDU这些设备本身必须在同一个网络。

APSDI将提供如下服务:

生成应用层的协议数据单元(APDU:

APSDE各应用层协议数据单元(PDU加上适当的协议帧头生成应用子层的协议数据单元(PDU。

绑定:

两个设备服务和需求相匹配的能力。

一旦两个设备绑定了,APSD日各可以把从一个绑

定设备接受到的信息传送给另一个设备。

组地址过滤:

提供了基于终点组成员的过滤组地址信息的能力。

可靠传输:

比从网络层仅仅通过端对端的传输增加了可靠性

拒绝重复:

提供传送的信息不会被重复接收

支持大批量的传输:

提供两个设备间顺序传输大批量的数据的能力。

碎片:

当消息的长度大于单个网络层帧时,可以分割并重组消息。

流控制:

APS提供避免传输消息淹没接收者的措施。

阻塞控制:

APS层使用“尽力”原则,提供措施避免传输消息淹没中间网络。

223.2应用支持子层的管理实体(APSME)

APSM应提供管理服务支持应用程序符合堆栈。

APSME应具有基于两个设备的服务和需求向匹配的能力。

该服务称为绑定服务,APSME

应具有能力来构建和维护绑定表来存储这些信息。

另外,APSM啦提供如下服务:

1应用层信息库管理:

读取与设置设备应用层信息库属性的能力

2安全:

与其他设备通过使用安全密钥建立可信关系的能力

2.2.4服务规范

应用支持子层为上层实体(NHLE与网络层提供了一个接口。

APS层理论上包含一个管

理实体称为APS层,管理实体(APSME。

这个实体通过调用子层的管理函数来提供服务接口。

APSME负责维护一个关于APS子层管理实体的数据库。

这是一个关于APS子层信息库(AIB)

APS?

层通过两个服务指针(SAPS提供两种服务。

APS数据服务通过APSF层数据实体

服务指针SAP(APSDE-SAP,APSf理服务通过APS则层管理实体服务指针SAP(APSME-SAP).这两个服务通过NLDE-SA和NLME-SAP接口(见3.2小节)提供了NHL罰网络层之间的接口。

网络层和APSF层之间的NLME-SAP^口只支持NLME-GET和NLME-SET原语,其他的NLME-SAP

原语只可以通过ZD(实现(见2.5小节)。

除了这些外部接口以外,在APSM和APSD之间还有一个内部的接口,支持APSM使用APS数据服务。

2.2.4.1APS数据服务

层数据实体SAP(APSDE-SAP支持在两个同等的应用实体之间传输应用协议数据单元。

表2-1列出了APSDE-SA支持的原语。

每一个原语将在下面的小节论述。

Table2.1APSDE-SAPPrimitive

APSDE-

SAPPrimitive

Request

Confiiin

Iiidicaliait

AP5DE-DATA

22AA.1

2.2.4,L2

224.13

224.1.1APSDE-DATA.request

该原语请求从本地NHLEn—个同等的NHLE实体传输NHLEPDU(ASDU)

224.1.1.1服务原语的语法

该原语的语法如下:

APSDE-DATA_request

{_

DstAddrModeDSTAddressDstEndpointProfiledClusterldSrcEndpointasduLengthasduTPOpiontsRadiusCounter}

表2.2详细说明了APSDE-DATA.request原语的参数。

Table2,2APSDF-DATA.requestParameters

Name

Type

^TaliciR-tijige

Description

I>

i'

tAddrMade

iTitepei-

QxOfi-Oxff

1hf1nddre^^tn^mn<

-|pforthesource^iddre^su^r-din11115primi-tivrandoftheAPDUtobe(Taii^feTrertThis.pRrainpterrmitnlfFrmect-frheiion-resenLcdvaluesftortithefbllowuigU«

t:

0x00=D&

tAddressandDstEudpointnotpresent

0k01=16bit哲mapad<

1r^5^forD^rAdcIren-'

d1lidpnir'

tnorpre<

err

0x02—16-bitadfkeif;

forD^tAdtke^&

andDslEiidpuiiitplrut

斗03=04-bitexteiicltdactdie^sfoiDMA/idne聒andD^tEtKlpcuitpre^e«

T0x01Oxff-«

servTed

EhtAddrets

Address

AsspeciiiedbytheI>

itAdclr\iodemerer

HieindividualdenceaddressorgroupaddressoftheentitytowhichrheASDVbeingrrfln^ferrfd

6tEiidponit

Integer

0x00—0x£

f

Thispaiaineter台lullbepmsnitif,and!

oiiiyi£

theDstA-ddrAfodeparameterIihlavalueof0x02or0x03and.ifpreseut,shallbeeitherthetniiiiberoftkeijidix'

idiialendpointorthebroadcastendpoint(OxffloftheentitytowhichtheASDUbeingtrnii吕ferred

Protilerd

0x0000-OxiHF

Th.eideiilifierottheprofiletorwhichthiAirainruilciicled-

Clmtwlil

0x0000-OifTTf

Thsld^ntTfiproftheobjpettointh?

bindingoperanoniftheDsrAddrModeparameterhmavalueof0x00.IftheD^iAddrModeparatuecerlus日口¥

othervalueHi□上i0x00elmrlii5parameteri5is^iiorecl

SrcFrwIpoint

Inregpr

0x00-tafr

Tlieindividual?

Tidpcmtcfrh^entityfromk\liich[hrASDU1、bfuiy,uan>

fmrd

a^duLeiigfth

Themimberofocte杠comprisingtheASDUroberransferred

Table2.2APSDE-DATA.requestParameters

Nmne

ValidRnnge

Description

Asdu

Setofoctets

The^erofoctet?

coiiipnsitig:

tlieASDUtobeir^nsferred

TxQptiotis

Bitmap

0000xxxx

(WhEfexCAiibe0

-or1)

Thetiansmissipnoptionsforth亡ASDUtobeTruiisfefied.TheseareabitwiseORofoneormoreofd址followmgr

0x01=Securityenabledtransnii^ioti

0x02二UseMWRkey

0x04=Acknowledgedtraiisniission

0x08-Frjgnieiirationptniurted

Rjitius

Unsigned

OxOO-Ox住

Th史di$raneemhops,thata[ran^niirtedframewillbeallowedtotravelthroughthenetwork

224.1.1.2产生

当有一个数据PDU(ASDU由本地NHL向一个同等的NHL联输时,由本地NHL生成该原语。

2.2.4.1.1.32

'

当APS子层实体接收到该原语时,便开始传输提供的ASDU

如果DstAddrMode参数为0P00,并且接收该原语的设备的APSD支持绑定表,那么在绑定表中根据参数SrcEndpoint和Clusterld所指定的endpoint和clusteridentifiers寻找相关

联的绑定表入口。

如果没有绑定表入口,APSD将发送状态参数为NO_BOUND_DEVIC的语

APSDE-DATA.confirm原语。

如果找到了一个或多个绑定表入口,APSD将构建APDU其

endpoint信息从绑定表入口获得,当通过网络层传输信息帧时,其destinationaddress信

息从绑定表入口获得。

如果存在多于一个绑定表入口,当接收到相应的NLDE-DATA.confirm

原语,按上面描述的,APSD将构建并向下一个绑定表入口传输APDU直到没有绑定表入口

剩余。

如果接收到该原语设备的APSD不支持绑定表,那么APSD将发送状态参数为

NOT_SUPPORT的[APSDE-DATA.confirm原语。

如果DstAddrMode参数为0P02,DstAddress参数包含扩展的64位IEEE地址,首次必须使用NIB(见表2.24)属性中的nwkAddressMap映射相应的16位网络地址。

如果找不到相应的16位网络地址,那么APSD将发送状态参数为NO_SHORT_ADDRESSPSDE-DATA.confirm原语。

如果找到了相应的16位网络地址,其值将被用在NLDE-DATA.request原语中,参数

DstEndpoint将被置在作为结果的APDI中。

如果DstAddrMode参数为0P01,表明为群地址,参数DstAddress将被解释为16位的全地址。

这个地址将被放置在APS头中的群地址域,参数

DstEndpoint将被忽略,APS头中的destinationendpoint域将被省略。

APS头中的帧控制域

的deliverPmode子域值在这种情况下为0P03.

如果DstAddrMode参数为0P02,DstAddress参数包含16位的网络地址,并且提供参数DstEndpoint,当目的网络地址用于应用响应,并且网络地址部位后面的数据传输请求保留时,上层只能使用DstAddrMode为0P02.

应用程序可以通过使用参数RadiusCounter来限制在网络中传输数据帧的跳数。

如果参

数RadiusCounter为0P00,网络层在网络中传输信息帧没有约束。

如果参数RadiusCounter

为非零,则网络层将允许信息帧在网络中传输存在最多RadiusCounter跳。

如果DstAddrMode参数为0P01,表明为群地址,或者DstAddrMode参数为0P00,并且相应的绑定表入口包含哪一个群地址,那么APSM将检查NIB

展开阅读全文
相关资源
猜你喜欢
相关搜索

当前位置:首页 > 初中教育 > 语文

copyright@ 2008-2022 冰豆网网站版权所有

经营许可证编号:鄂ICP备2022015515号-1