ZigBee协议规范分析_KuangJunBin_第1页
ZigBee协议规范分析_KuangJunBin_第2页
ZigBee协议规范分析_KuangJunBin_第3页
ZigBee协议规范分析_KuangJunBin_第4页
ZigBee协议规范分析_KuangJunBin_第5页
已阅读5页,还剩11页未读 继续免费阅读

下载本文档

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

文档简介

1、z i gbee协议规范分析kuangjunbin:本篇博文是作者根据zigbee协议规范和ieee802. 15. 4 标准的内容,所总结的框架性分析,旨在让广大初次接触zi gbee协议的朋友能 快速地对此技术有所了解,方便进一步详细学习、或作为工程项目是否选用 zigbee协议的参考依据。由于版面所限,各层次之间的接口说明,示意图等更 详细的分析叙述,未能在页面出现,欢迎下载附件中完整的doc文件!如您对本 项目感兴趣或者有任何疑问,欢迎与我一起探讨:geforcefatgma i i. com。谢谢 您的阅读!2. 1 ieee802. 15. 4 标准随着通信技术的迅速发展,人们提出

2、了在自身附近几米范围内通信的要求, 这样就出现了个人区域网络pan (personal area network)和无线个人区域网络 wpan (wireless personal area network)的概念。wpan网络为近距离范围内的 设备建立无线连接,把几米到几十米范围内的多个设备通过无线方式连接在一 起,使他们可以相互通信甚至接入lan或者interneto2001年8月成立的zigbee联盟就是一个针对wpan网络而成立的产业联 盟。该联盟致力于近距离、低复杂度、低数据速率、低成本的无线网络技术。他 们开发的技术被称为zigbee技术,该技术希望被部署到商用电子、住宅及建筑 自

3、动化、工业设备监测、pc外设、医疗传感设备、玩具以及游戏等其他无线传 感和控制领域当屮。zigbee联盟已于2005年6月27日公布了第一份zigbee规范“zigbee specification v1.0”。这标准定义了在ieee 802.15.4-2003物理层和标准媒体接入 控制层上的网络层及支持的应用服务。zigbee联盟的长期冃标是能够建立基于 互操作平台和配置文件的可伸缩、低成本嵌入式基础架构。2. 1. 1 ieee802. 15. 4 协议框架ieee802.15.4标准采用分层结构。每一层为上层提供一系列特殊的服务: 数据实体提供数据传输服务,管理实体则提供所有其他的服务。

4、所有的服务实体 都通过服务接入点sap (service access point)为上层提供一个接口,每个sap 都支持一定数量的服务原语来实现所需的功能。ieee 802.15.4标准堆栈架构是在osi七层模型的基础上根据市场和应用的 实际需要定义了,如图21。其中,ieee 802.15.4标准定义了底层:物理层phy (physical layer)和媒体访问控制子层 mac (medium access control sub-layer) 层。zigbee联盟在此基础上定义了网络层nwk (network layer),应用层apl (application layer)架构。其中

5、应用层包括应用支持子层aps (application support sub-layer),应用框架 af (application framework), zigbee 设备对象 zdo ( zigbee device objects )以及用户定义应用对象(manufacture. defined application objects )o图 2-1 ieee802.15.4/zigbee 协议框架figure 2-1. ieee802.15.4/zigbee protocol frameworkieee 802.15.41 作在工业科学医疗 ism (industrial scien

6、tific and medical) 频段,定义了两个物理层phy,分别工作在两个频段上:868/915 mhz和2.4ghz。 其屮低频段物理层覆盖了 868mhz的欧洲频段和915mhz的美国与澳大利亚等 国的频段。高频段2.4ghz则全球通用。ieee 802.15.4 mac层采用避免冲突多载波信道接入csma-ca (carrier sense multiple access with collision avoidance)方式,主要负责传输信标帧,同 步以及提供可信赖的传输机制。”2.1.2关键概念2. 1.2. 1通信原语在分层的通信协议屮,层与层之间是通过服务接入点sap相连

7、接的。每一 层都可以通过本层与下一层的sap调用下层所提供的服务,同时通过与上层sap 为上层提供相应服务。sap是层与层之间的唯一接口,而具体的服务是以通信原 语的形式供上层调用的。在调用下层服务时,只需要遵循统一的原语规范,并不 需要去了解如何处理原语。这样就做到了数据层与层之间的透明传输。层与层之 间的通信原语可分为以下四种,它们之间的关系如图2-2所示:service user(n-user)request>confirm<service provider(n-layer)service user(n-user)> indication;resp onse图2-2通信

8、服务原语figure2-2. communication service primitivesrequest:请求原语用于上层向本层请求指定的服务。confirm:确认原语本层用于响应上层发出的请求原语。indication:指示原语有本层发给上层用来指示本层的某一内部事件。response :响应原语上层用于响应本层发出的指示原语。 本文中原语遵循了 “sap名称原语功能原语类型”的书写规则,如 "mlme-associate.requestv表示mlme-sap上提供的关联请求原语。2. 1.2. 2数据单元ieee 802.15.4标准包含两种数据单元:协议数据单元pdu (p

9、rotocol dataunit)和服务数据单元 sdu (service data unit)o所谓协议数据单元就是在不同节点的各各层对等实体间,为实现该层协议所交换的信息单元。通常将第n层的数据单元记为npdu。它由两部分组成,即 本单元的用户数据(n)和本层的协议控制信息npci ( protocol control information )o从上层用户的角度来看,它并不关心下面的pdu,实际上也看不见pdu的 大小。上层用户关心的是:第n层实体为了完成该用户的请求,需耍传输多大 的数据单元。这种数据单元成为服务数据单元,也可以说是第n层的数据净荷 (pay load )o2. 1.2

10、. 3网络器件类型zigbee网络支持两种类型的网络节点:全动能器件ffd (full function device)和精简功能器件rfd (reduce function device)o全功能器件拥有完整 的协议功能,在网络中可以作为协调器(coordinator),路由器(router)和普通 节点(device)。而精简功能器件旨在实现最简单的协议功能而设计,只能作为 普通节点存在于网络中。全功能器件可以与精简功能器件或其他的全功能器件通 信,而精简功能器件只能与全功能器件通信,精简功能器件之间不能直接通信, 如图 2-318o协调器 coordinator 路由器routero终端

11、节点end device图23 zigbee网络器件类型figure 2-3 - zigbee network device2.1.2.4网络节点类型在w-pan中有三种网络角色:pan网络协调器、协调器和设备。这三种角 色在 ieee 802.15.4 规范中分别对应 zigbee 协调器 zc (zigbee coordinator)> zigbee 路由器 zr (zigbee router)和终端设备 zed (zigbee end device)o协调器和路由器只能是全功能器件ffd。一个pan的网络中,至少要有一个全功能器件成网络的协调器,它可以看作是一个pan的网关节点(s

12、ink节 点),它是网络建立的起点,负责pan网络的初始化,确定pan的id号和pan 操作的物理信道并统筹短地址分配,充当信任中心和储存安全密钥,与其他网络 的连接等。协调器在加入网络之后获得一定的短地址空间。这个空间内,他有能 力允许其他节点加入网络,并分配短地址。当然协调器述具备路由和数据转发的 功能。在任何一个拓扑网络上,所有设备都有一个唯一的64位ieee长地址, 该地址可以在pan中用于直接通信。或者当所有设备之间都已经存在连接时, 可以将其转变为16位的网络短地址分配给pan设备。因此在设备发起连接时采 用的是64位的长地址,只有连接成功后,系统分配了 pan的标志符后,才能采

13、用16位的短地址来通信。路由器可以只运行一个存放有路由协议的精简协议栈, 负责网络数据的路由,实现数据中转功能。在网络中最基本的节点就是终端节点zed, 一个终端节点可以是全功能器 件ffd或者是精简功能器件rfdo2. 1.3 ieee 802. 15.4mcps-sapmlme-sapmlmemac commonpart sub-layerzpd-sapplme-sapmac pibphyre-sap图2-4 ieee8o2.15.4分层参考模型figure 2-4. ieee8o2.15.4 layer reference modelpi,me(phy pib jieee802.15.4

14、包括用于低速无线个人域网lr-wpan的物理层phy和媒体 接入控制层mac两个规范。图2-4给出了 ieee 802.15.4的分层参考模型。2. 1.3. 1 ieee 802. 15.4 phy 层物理层的作用主要是利用物理介质为数据链路层提供物理连接,负责处理数 据传输率并架空数据出错率,以便透明低传送比特流。zigbee协议的物理层主要 负责以下任务:(1) 启动和关闭rf收发器。(2) 信道能量检测。(3) 对接收到的数据报进行链路质量指示lqi (link quality indication)o(4) 为 csma/ca 算法提供空闲信道评估 cca(clear channel

15、 assessment)o(5) 对通信信道频率进行选择。(6) 数据包的传输和接收ieee 802.15.4的物理层定义了物理信道和mac子层间的接口,提供数据 服务和物理层管理服务。物理层数据服务从无线物理信道上收发数据,物理层管 理服务维护一个物理层相关数据组成的数据库。图2-5屮物理层的功能实体和sap的具体描述如下:plme: phy层管理实体,处理与物理层管理相关原语。phy pib: phy层pan信息数据库,存储物理层pan相关属性。pd-sap: phy数据服务接入点,接受将要发送的mac帧、向mac层报 告接收到的mac帧,为mac层提供phy数据服务。plme-sap:

16、plme服务接入点,接受mac的管理请求原语,向mac层 报告管理指示原语和确认原语,为上层mac层提供phy管理服务。图25物理层的功能实体和服务接入点figure 2-5 physical layer reference model2. 1.3. 2 ieee 802. 15.4 mac 层ieee 802.15.4媒体介入控制层的沿用了传统无线局域网中的带冲突避免的 载波多路侦听访问技术csma/ca方式,以提高系统的兼容性。这种设计,不但 使多种拓扑结构网络的应用变得简单,还可以实现非常有效的功耗管理。mac层完成的具体任务如下:(1) 协调器产生并发送信标帧(beacon)。(2)

17、普通设备根据协调器的信标帧与协调器同步。(3) 支持pan网络的关联(association)和取消关联(disassociation)操 作。(4) 为设备的安全性提供支持。(5) 使用csma-ca机制共享物理信道。(6) 处理和维护时隙保障gts (guaranteed time slot)机制。(7) 在两个对等的mac实体之间提供一个可靠的数据链路。在ieee 802.15.4的mac层中引入了超帧结构和信标帧的概念。这两个概 念的引入极大了方便了网络管理,我们可以选用以超帧为周期组织lr-wpan网 络内设备间的通信。每个超帧都以网络协调器发出信标帧为始,在这个信标帧屮 包含了超帧

18、将持续的时间以及对这段时间的分配等信息。网络中的普通设备接收 到超帧开始时的信标帧后,就可以根据其中的内容安排自己的任务,例如进入休 眠状态直到这个超帧结束。图2-6媒体访问控制字层的功能实体与服务接入点figure 2-6. mac layer reference modelmac子层提供两种服务:mac层数据服务和mac层管理服务(mac sub-layer management entity, mlme)o前者保证mac协议数据单元在物理层数据服务中正确收发,后者维护一个存储mac子层协议相关信息的数据库。图2-6屮mac层各功能实体和sap的具体描述如下:mac common part

19、 sub-layer: mac 公共部分子层(mcps),实现 mac 层 一般概念功能。包括mac帧的封装、解封装;执行csma-ca算法共享物理信 道。mlme: mac层管理实体,处理出数据原语之外的所有管理原语,以实现 标准规定的mac层功能,如超帧管理(superframe)、信标帧同步、创建网络、 建立释放网络关联等等。mac pib: mac层pan信息数据库,存储mac层pan相关属性。mcps-sap: mcps服务接入点,接收上层的协议数据单元、向上层报告 mac层服务数据单元,为上层提供mac数据服务。mlme-sap: mlme服务接入点,接收发送数据原语以外的管理服务

20、原语, 为上层提供mac管理服务。2. 1.3. 3 ieee 802. 15. 4 主要特点1. 工作频段和数据速率在ieee 802.1 5.4-2003中,总共分配了 27个具有三种速率的信道:在2.4ghz 频段有16个速率为250k bit/s (或62.5k symbol/s)的信道,在915频段有10个 40k bit/s (或 40k symbol/s)的信道,在 868mhz 频段有 1 个 20k bit/s (或 20k symbol/s)的信道,如图2-7o ism频段全球都有的特点不仅免除了 ieee 802.15.4 器件的频率许可要求,而且还给许多公司提供了开发可

21、以工作在世界任何地方的 标准化产品的难得机会。这将减少投资者的风险,与专门解决方案相比可以明显 降低产甜成本。频段适用范围数据速率信道数旦2.4(;llzism worldwide 250 kbps16868mhz/915mhzphychannel 0868 3 mhz2 mhz902 mhz channels 110 宓 mhzchannels 11-262.4ghz phy5 mhz图27 zigbee频段与数据速率figure 2-7. zigbee frequence and data rates2. 支持简单器件低速率、低功耗和短距离传输的特点使它非常适宜支持简单器件。在ieee 8

22、02.1 5.4中定义了 14个物理层基本参数和35个媒体接入控制层基本参数,总共 为49个,仅为蓝牙的三分之一。这使它非常适用于存储能力和计算能力有限的 简单器件。在ieee 802.15.4屮定义了两种器件:全功能器件ffd和简化功能器 件rfdo 一个全功能器件可以与简化功能器件和其他全功能器件通话,可以按 三种方式工作,即用作个人域网协调器、协调器或器件。而简化功能器件只能与 全功能器件通话,仅用于非常简单的应用。3. 信标方式和超帧结构ieee 802.15.4网可以工作于信标使能方式或非信标使能方式。在信标使能 方式中,协调器定期广播信标,以达到相关器件同步及其他目的。在非信标使能

23、 方式中,协调器不定期地广播信标,而是在器件请求信标时向它单播信标。在信 标使能方式屮使用超帧结构,超帧结构的格式由协调器来定义,一般包括工作部 分和任选的不工作部分。4. 数据传输和低功耗在ieee 802.15.4中,有三种不同的数据转移:从器件到协调器;从协调器 到器件;在对等网络中从一方到另一方。为了突岀低功耗的特点,把数据传输分 为以下三种方式:直接数据传输,间接数据传输和有保证时隙gts数据传输。低功耗是ieee 802.15.4最重要的特点。因为对电池供电的简单器件而言, 更换电池的花费往往比器件本身的成本还要高。在有些应用中,更换电池不仅麻 烦,而且实际上是不可行的,例如嵌在汽

24、车轮胎屮的气压传感器或高密度布设的 大规模传感器网。所以在ieee 802.15.4的数据传输过程中引入了几种延长器件 电池寿命或节省功率的机制。多数机制是基于信标使能的方式,主要是限制器件 或协调器z收发信机的开通时间,或者在无数据传输时使它们处于休眠状态。5. 安全性安全性是ieee 802.15.4的另一个重要问题。为了提供灵活性和支持简单器 件,ieee 802.15.4在数据传输中提供了三级安全性。第一级实际是无安全性方 式,对于某种应用,如果安全性并不重要或者上层己经提供足够的安全保护,器 件就可以选择这种方式来转移数据。对于第二级安全性,器件可以使用接入控制 清单acl来防止非法

25、器件获取数据,在这一级不采取加密措施。第三级安全性 在数据转移中采用属于高级加密标准aes (advanced encryption standard)的对 称密码。qi】aes可以用來保护数据净荷和防止攻击者冒充合法器件,但它不能防止攻 击者在通信双方交换密钥时通过窃听来截取对称密钥。为了防止这种攻击,可以 采用公钥加密。2. 2 z i gbee协议分析2.2. 1 z i gbee 协议zigbee的协议栈结构是由一系列称为层的协议块所组成的。每个层为上一层 提供一系列特定的服务。数据入口提供数据传输的服务,管理入口提供其余的所 有服务。每个服务接口都通过sap (service acc

26、ess point)接口与上一层进行数 据交换,每个sap都支持一系列的服务原语。zigbee 协议栈是基于 osi (open systems interconnection)标准的,但只定 义了所需要的那些层。主要由物理层phy,媒体接入层mac,网络层以及应用 框架层组成,框架图如图所示。其中,phy层和mac层采用了 ieee 802.15.4 协议标准。zigbee网络层主要用于zigbee的无线个人区域网wpan网的组网连接,数 据管理以及网络安全等。zigbee应用框架层主要为zigbee技术的实际应用提供一些应用框架模型等, 以便对zigbee技术的开发应用,在不同的应用场合,

27、其开发应用框架不同,从 目前来看,不同厂商提供的应用框架是有差异的。2.2.2 zigbee 网络层网络层需要在功能上保证与ieee 802.15.4标准兼容,同时也需要上层提供 合适的功能接口。对于网络层,其完成和提供的主要功能如下2叫(1) 产生网络层的数据包:当网络层接受到來自应用子层的数据包,网络 层对数据包进行解析,然后加上适当的网络层包头向mac传输。(2) 网络拓扑的路由功能:网络层提供路由数据包的功能,如果包的日的 节点是本节点的话,将该数据包向应用子层发送。如果不是,则将该数据包转发 给路由表中下一结点。(3) 配置新的器件参数:网络层能够配置合适的协议,比如建立新的协调 器

28、并发起建立网络或者加入一个已有的网络。(4) 建立pan网络(5) 连入或脱离pan网络:网络层能提供加入或脱离网络的功能,如果节 点是协调器或者是路由器,述可以要求子节点脱离网络。(6) 分配网络地址:如果本节点是协调器或者是路由器,则接入该节点的 字节点的网络地址由网络层控制。(7) 邻居节点的发现:网络层能发现维护网络邻居信息。(8) 建立路由:网络层提供路由功能。(9) 控制接收:网络层能控制接收器的接受时间和状态。zigbee网络层的结构如图2-8所示:为了向应用层提供接口,网络层提供了两个功能服务实体,分别为数据服务 实体nlde和管理服务实体nlme。nlde通过nlde-sap

29、为应用层提供数据 传输服务,nlme通过nlme-sap为应用层提供网络管理服务,并且,nlme 述完成对网络信息库nib的维护和管理。next higher layerentitynlde-sapnlme-sapnlde:nlmemcpssapmlme-sapmac sub-layer entity图2-8网络层的功能实体和服务接入点figure 2-8. network layer reference model通用网络层帧格式,即网络协议数据单元npdu格式如图29所示。主要包 括网络层帧报头(nwk header)与网路负载(nwk pay load)。网络层帧报头信 息包括:帧控制、

30、fi的地址、源地址、广播半径域、广播序列号、fi的ieee地 址,源ieee地址、多点传送控制、源路由帧。网路负载主要由变长的帧的有效 载荷组成。其中,网络层帧报头中的半径栏定义网络广播允许传输的范围,若一zigbee设备接收该帧,即将radius减一,若radius值减至零则到达传输的最大 范围。octe ts: 222110/80/80/1variable ariableframe controldestina tion addresssource addressradiussequeu ce numberdestinati on ieee addiesssource ieee addre

31、ssmultica contiolsource route subfiameframe payloadnwk headerpayload图29网络协议数据单元格式figure 29. general network protocol frame format2.2.3 zigbee 应用层zigbee应用层包括应用支持子层aps、应用框架af.zigbee设备对象zdo。 它们共同为各应用开发者提供统一的接口。2. 2. 3. 1应用支持子层apsaps层主要功能:(1) aps层协议数据单元apdu的处理。(2) apsde提供在同一个网络中的应用实体之间的数据传输机制。(aapsme提供多

32、种服务给应用对彖,这些服务包括安全服务何绑定设备, 并维护管理对象的数据库,也就是我们常说的aib。图210应用支持子层的功能实体和服务接入点figure 2-10. aps reference modelaps层的参考模型如图2-10所示:其中,apsde和apsme的功能类似于网络层的nlde和nlme的功能。 aps层同样也维护和管理了一个应用数据库aibo2.2. 3.2 应用框架af应用框架(application framework)为各个用户自定义的应用对彖提供了模 板式的活动空间,为每个应用对象提供了键值对kvp服务和报文msg服务两 种服务供数据传输使用。每个节点除了 64位

33、的ieee地址,16位的网络地址,每个节点还提供了 8 位的应用层入口地址,对应于用户应用对彖。端点0为zdo接口,端点1至240 供用户自定义用于对象使用,端点255为广播地址,端点241 -254保留将来使用。 每一个应用都对应一个配置文件(profile)o配置文件包括:设备id (device id), 事务集群id (cluster id),属性d (attribute id)等。af可以通过这些信息来 决定服务类型。2. 2. 3. 3zigbee 设备对象 zdozdo是一个特殊的应用层的端点(endpoint)。它是应用层其他端点与应用 子层管理实体交互的中间件。它主要提供的功能如下:(1) 初始化应用支持子层,网络层。(2) 发现节点和节点功能。在无信标的网络中,加入的节点只对其父节点 可见。而其他节点可以通过zdo的功能来确定网络的整体拓扑结构已经节点所 能提供的功能。(3) 安全加密管理:主要包括安全key的建立和发送,己经安全授权。(4) 网络的维护功能。(5) 绑定管理:绑定的功能由应用支持子层提供,但是绑定功能的管理却 是由zdo提供,它确定了绑定表的大小,绑定的发起和绑定的解除等功能。

温馨提示

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

评论

0/150

提交评论