如何选择正确的无线协议:802.15.4、zigbee以及专有网络对比
扫描二维码
随时随地手机看文章
许多设计人员都听说过 zigbee 与 IEEE 802.15.4 标准,但不清楚到底应该选择zigbee,还是 802.15.4,抑或是开发自己的专有网络协议。本文将以专有协议为例,介绍各种协议的优势,并在性能和应用领域方面进行对比区分。讨论不同的网络拓扑、资源要求以及灵活特性,从而帮助利益相关方(interested party)选择最适合自己应用需求的开发协议。
本文分三部分讲述低功耗网络及在他们之间如何选择的问题。第一部分论述网络基础知识以及低功耗网络选择标准;第二部分继续探讨选择标准,并介绍802.15.4 协议;第三部分介绍 zigbee 和专有网络协议 SimpliciTI,并根据上述选择标准衡量这些协议。
第一部分
电子市场中的最主要趋势之一就是越来越多的产品都开始添加无线连接功能。水电气表、家庭安全系统、电视遥控或健身设备等各种产品都添加了无线连接功能,这一方面是为了方便用户使用,用户可通过无线遥控在房间任意位置操控,不像红外线遥控非要瞄准设备才能工作;另一方面,这种无线操控也是为了减少房间重新布线的昂贵成本例如不用重新布线就能安装家庭安全系统等。此外,自动抄表系统 (AMR) 或高级电表架构 (AMI) 等设备也越来越依赖低功耗协议使设备的电池使用寿命能够长达数年之久。
本文将概括介绍无线网络协议,不过将重点介绍 zigbee 与 802.15.4 协议,并将其与专有网络协议进行对比,这些协议根据设计都能满足低功耗应用的要求。尽管许多工程师对这些网络协议都已经比较熟悉了,但可能还没有仔细对其加以评估。即便有人曾经评估过这些协议,但在特定应用时可能仍不清楚到底哪种协议最合适。本文分三部分。第一部分,我们将介绍网络基础知识,其中包括常见的网络术语、开放系统互连 (OSI) 网络模型等,并探讨在为特定应用选择网络时应考虑的因素;第二部分,我们将给出一系列网络选择标准,根据这些标准对三种网络协议加以对比;第三部分,我们将详细介绍 802.15.4、zigbee 以及 SimpliciTI 专有网络协议,并给出具体实例,说明如何根据选择标准确定适合特定应用的最佳网络协议。
目前,推出的无线网络协议种类繁多。下面我们仅列出部分网络协议:
WiFi(802.11b)、蓝牙、zigbee、zigbee Pro、802.15.4、RFID 以及 Wireless USB 等标准化协议。
芯片厂商、第三方等推出的专有协议,本文称之为“DIY”网络协议,仅用于推出该协议的公司自己生产的产品中。
图 1 显示了多种网络协议及其重点应用领域和典型资源要求等。我们在比较低功耗协议(如 zigbee/802.15.4 与其它协议)时,应重点关注低功耗无线网络区别于其它网络的一些关键特性,比如数据速率低、连接距离短、帧开销低、复杂性低等,还有就是协议本身的电源管理要求。上述各项设计因素都是为了最终实现降低网络单位节点功耗的目的。如图 1 所示,zigbee/802.15.4 协议理想适用于环境监控市场领域中的相关应用,不仅可确保电池供电设备能长时间最佳工作,而且相对于支持更大型复杂化协议的硬件来说还能有效降低成本。
低功耗网络主要设计用于为电池供电设备(电池使用寿命达数月或数年之久)间提供无线连接。大多数低功耗无线系统中,以无线电发送和接收数据最为耗电。因此,我们应尽可能降低无线电的功耗,这对延长电池使用寿命至关重要。由于信号发送和接收之间的距离与天线的功率输入成正比,因此不同节点间的无线网络覆盖范围一般有限。无线协议还应降低自身的复杂性,以降低计算开销,避免使用大容量存储器,从而降低成本。
网络基础知识
图 2 显示了典型低功耗网络节点的结构图。通常,节点中有一个或多个传感器负责收集数据或状态和/或向系统提供用户接口。微控制器连接于传感器并控制无线电(本例中为 CC1100 或 CC2500),而无线电则负责传输和接收状态。
图 2 — 典型低功耗网络结构图(本例显示的是自动抄表系统应用)
不管是有线网络还是无线网络,我们在概念上都可将网络节点通信视为如图 3 所示的网络开放系统互连 (OSI) 基本参考模型。这一模型于上世纪 70 年代末由国际标准化组织 (ISO) 制定,该模型将网络协议实施组件(component)分为不同的软件层。在不同设备上的两个应用要想通信,消息必须穿过应用层,经过物理层到达另一侧。每一层都只能与其相邻层通信。
怎么理解分层软件架构呢?我们可以设想一下寄信的过程。信件本身就相当于应用数据。我们把信投在信箱里,等着邮递员取出,再拿到邮局。邮局根据收信人地址将所有信件分类,再通过航空、海运或陆路方式将信件寄到最终目的地。信件要想达到收信人的手中,在收信人一方的邮局也必须经过相反的一套程序,先是寄到收信人所在的邮局,按目的地分类,再发送到收信人的邮箱,最终达到收信人手里。寄信过程实际反映了一个四层通信协议。写信是第一层,当地邮局的收发是第二层,邮局对信件分类是第三层,而信件运输方式则是第四层。每一层都有自身的任务,也只同相邻层有关。信件只有从整个环节的一端传送到另一端,信件的内容(或应用数据)才能在双方之间得到成功交流。
OSI 模型涉及 7 个不同的软件层。应用层是直接针对用户的界面。表示层将消息格式化为进出网络的格式,通常体现为消息加密和/或编码。会话层创建并管理网络上任何两个设备间的逻辑链接。传输层负责提供可靠的端对端通信功能。如果传输层的故障过于频繁,那么通道噪声可能过大,或链接本身质量不佳,这时就要通知会话层在发生故障的节点间建立新的链接。网络层负责网络路由机制,而不同设备间的消息传输则由数据链路层负责。数据链路层确保消息点对点交付,但消息在物理介质上的实际传输则由物理层负责。这样,消息就能从 OSI 模型的一端传输至另一端。
设计人员可以选择实施不同数量层的协议,并能根据应用需要选择定制其它层。目前大多数网络实施方案实际上都不能完全实施所有的层,需要根据协议要求将某些层的功能加以混合。事实上,OSI 模型是我们理解协议架构复杂性和不同功能的最佳框架。设计人员应当明白自己的解决放案要实施哪些功能,哪些功能可不予以考虑。
为了明确到底在 zigbee、802.15.4 和专有网络之中选择何种无线协议,我们列出一些选择标准:
应用考虑事项
稳健性与可靠性
简便易用性
硬件及 RF 考虑事项
下面我们将详细讨论上述各标准。
应用考虑事项
网络设计的初始步骤与其它任何系统设计工作一样,都是定义应用的高级要求。下面我们列出一些最重要的网络参数,这是在确定任何无线协议作为最终解决方案之前都应加以明确定义的。我们随后在本文中将根据这些标准来介绍可能的实施方案,而这些选择标准和协议本身都将得到进一步详细说明。
网络拓扑
应用需要多少个节点?节点采取什么样的基本组织形式?
通信可靠性
网络对每个数据包的接收有多重要?
网络安全性
数据是否需要确保安全?如果需要的话,网络数据传输的绝对安全性到底有多重要?
定制和设计的灵活性
网络协议解决方案需要进行多大程度的定制化以满足应用需求,协议是否提供无约束设计?
开发时间及协议复杂性
这一条与第 4 项密切相关,有关协议本身的复杂性有多高?
互操作性
与其他厂商技术的互操作性是否能使最终产品受益?最终产品是否会成为完全专有解决方案?
图4给出了四种最常见的无线网络拓扑实施方案。
点对点网络拓扑支持网络上不同节点间的单向或双向链接。只有节点处在连接范围以内时才会相互通信,因为保持直接的物理链接是其通信的必要条件;唯一的例外是广播消息,其可以通过网络重复广播传播。树状网络拓扑中,每个网络节点都与其父节点相关联,网络寻址也会反映出这种节点关系,这与 IP 因特网地址非常类似。这样,我们就能实施更加有效的路由算法,因为更多的节点网络地址位数可以反映出某个节点相对于其对等节点的关系。星形网络可将单个节点视为网络协调点,负责各种可能的网络管理控制工作,如节点关联、节点网络加入与链接许可、消息转发以及安全交换等。星形网络依靠协调点来保持网络通信,如果协调节点出了问题,网络通信也会受到影响。
从最基本的意义上说,网状网络是指每个节点至少要有两条连接路径的网络。而全网状网络是指每个节点都有到其它节点的直接连接的网络。全网状网络在许多情况下是不合理的,因为这很快就会将网络规模限制在连接能力最弱的设备所覆盖的最小网络范围内,而网状网络的要求又过于严格。然而,人们会在两种情况之间找到某种折中,通过某个中央节点发起网络,用树状寻址技术来定位节点并管理节点间的关联关系。范围扩展器也称路由节点,可在网络中发送消息,如果一个节点或协调节点出了问题,网络仍能继续正常工作,只是会在一定程度上影响操作性。自愈路由发现以及路由过期 (route expiraTIon)等其它优异特性可提高路由算法的可靠性与效率。
需要考虑的另一个重要因素是使用某协议所涉及的财务成本。使用某组织提供的专有网络协议一般要支付会员费或专利使用费。不过使用 zigbee 无需支付专利使用费,但要求加入该联盟并每年交纳象征性的会员费的。此外,验证过程也需要投入大量的时间和金钱。芯片厂商的专有协议通常要求其产品只许在其特许场所使用。
稳健性与可靠性
低功耗网络协议实施的稳健性与可靠性可归结为三点:消息交付、物理层考虑事项以及消息发送协议。消息交付取决于路由技术来确保数据包的成功传输以及网络交易的安全性。物理层考虑事项涉及工作通道内的噪声或其它传输信号的干扰问题。消息发送协议则定义了通道的分区,确保所有设备都能使用物理介质,而不会在传输过程中导致数据包冲突。上述三点均有助于提高网络服务质量 (QOS),是一系列用以测量数据包通信效率、传输速率及故障率的网络标准。
通道扫描即侦听通道中传输量或噪声大小的能力,属于物理层考虑事项。网络协议通过通道扫描来查找特定工作频带内最不可能干扰节点间通信的通道。频率捷变性是指网络改变网络上所有节点的工作通道的能力,这样即便某条通道遭到干扰,网络仍能继续工作。我们还能通过确认机制来改善消息交付能力,即让接收节点在成功接收数据包后向最初的发送节点反馈一个 ACK 确认信息。点对点确认机制配合消息重试次数定义有助于大幅降低数据包丢失的可能性。而端对端确认机制将提供另一层安全性,确保数据包不会丢失,这在采用复杂路由算法的大型多跳转网络中尤其重要。
消息发送协议定义了网络带宽是如何获得并进行分区的。不同的无线协议可定义不同的带宽分区,其可能包括频分、空分、时分或码分等。频分可理解为一屋子的人用高低不同的声音谈话;空分可理解成一屋子的人在不同方向上谈话;时分可理解成一屋子的人都竞争说话权,但只要有一个人抢先发言,其他人就不再说话了;码分则可理解为一屋子的人用高低不同的声音讲不同的语言。在本文涉及的协议中只讨论时分,也就是时分多址协议,这种协议有同步和异步通信两种可能的实施方案。
协调节点广播周期性网络信标并将不同信标间的时间间隔划分为相同的时隙,从而实现同步通信。单个网络信标以及出现在下一信标之前的各时隙均称作超帧。超帧的时隙可进一步分为活动和非活动通信期,这样协调节点在非活动期的低功耗模式下就能进入休眠状态。我们可通过通道侦听多址(CSMA)技术或通信前侦听算法来确保或让各方争用时隙。
CSMA 算法定义了多个节点同时尝试通信时判优RF 通道使用的协议。最常见的实施方案是采用 CSMA/CA 算法,这里的 CA是指防碰撞系统,因为发送节点一旦侦听到通道繁忙将取消发送消息。CSMA 算法还有其它的实施,如 CSMA/CD(碰撞检测)和CSMA/CR(碰撞解决)等,但这些在 RF 协议实施中并不常见,也不在本文讨论的范围之内。
安全性是影响无线通信稳健性的另一个重要因素,同时也是网络的主要功能。例如,家庭安全网络可能包含一个车库门开启器,用它来开关车库门锁。这种系统需具有高度的安全性,防止偷听或出现安全漏洞,确保隐私。我们可通过采用不同级别的安全密钥和加密机制、进行消息验证与完整性保护、使用安全信任中心(trust center)等方式来确保安全性,也就是说,通过网络上的单个节点(通常是网络协调节点)而不是采用分布式安全机制来解决所有安全问题。如果采用分布式安全机制,在创建不同链接时会分别交换对称密钥,某个攻击节点会绕开管理节点的直接验证,很容易进入网络。