基于弹性Web服务的无线传感器网络体系结构
2.1.以数据为中心的通讯
数据为中心的寻址方式是专为传感器网络而提出的,这样的网络中节点是以其产生的数据或所在的地理位置来识别的。定向扩散[5]就是特别为传感器网络设计的以数据为中心的协议实例。在定向扩散中,单个节点将目标产生的采样波形归纳为相对大粒度的"事件"描述[5]。这样的描述包含一组属性特征。请求数据的应用通过网络中的一些sink节点发出其感兴趣的内容。这些内容也表现为一组属性特征。如果源节点生成的数据特征与这些内容相匹配,就会在网络中形成梯度以使数据被拉向sink节点。中间的节点具有缓存和传输数据的能力。
且不论传感器网络以数据为中心的寻址方式的种种优点,近来的研究[5, 6]假设数据表现是应用特定的或者提出低弹性表达性不好的方案。这些方法要求数据或兴趣表现模型与请求网络的应用之间的紧耦合。
我们可以预想一类未来传感器网络,它们被一些通过任意局部sink节点提交请求的不同应用访问。为满足这样的场景,网络应该以一种通用且独立于应用的接口来访问。
本文提出了一种Web 服务的方式来构建无线传感器网络。我们提议使用一种服务描述语言--WSDL[15]以及相关协议--SOAP[19],这两者都被接纳为因特网标准,以作为在传感器网络上以弹性方式描述和交流数据和兴趣关注的基础。下一节扼要介绍了Web服务技术。
2.2.Web服务技术
Web服务可被定义为具有标准组件的程序,它们通常是独立且能自我描述的,可透过Internet或者企业内部网找到并调用。Web服务通过到处存在的Web协议和数据格式来访问,这些协议和格式包括超文本传输协议(HTTP [1])和可扩展标记语言(XML [17])。
Web服务技术以一种叫做SOA(Service-Oriented Architecture [3])的弹性体系结构为基础,这种体系结构定义了三种角色:服务请求者,服务提供者和服务注册处。服务提供者负责创建服务描述并向一个或更多服务注册处发布服务描述,同时还要接收来自一个或更多服务请求者的Web服务调用。
除了这些角色,还有三种操作作为SOA体系结构的一部分被定义:发布,寻找和绑定。
发布操作是服务注册或者为服务作广告的行为。寻找操作允许服务请求者声明搜寻标准,如服务类型。服务注册处将搜寻标准与它所收集的以发布的Web服务描述进行匹配。绑定操作具体体现了服务请求者与提供者之间的客户-服务者关系[3]。
除了遵从SOA模式,Web服务技术可以分解为三个协议栈[3]:有线栈(或交换格式),描述栈和发布与发现栈。
有线栈体现了决定消息如何从服务请求者收/发至服务提供者的技术。这个栈由三层组成。第一层是网络协议,它可以是因特网有线协议,如HTTP[1],或者是高级的企业级协议。第二层是以XML为基础的数据编码机制。第三层涉及到XML消息传递。为进行消息传递,Web服务采用SOAP [19]协议,这个协议扮演着XML消息包装的角色,它保证Web服务的通讯有着一个坚固、基于标准的基础。
描述栈提供服务的外表呈现,这对服务请求者来说很重要。Web服务中,XML是服务描述的基础。XML模型规范(XSD)[18] 定义了规范的类型系统。在这一层之外,协议栈的下几层是服务接口描述,即服务具体映射和服务边界点。边界点定义了服务自身可被调用的网络地址。所有这些层都使用WSDL[15],这是一种基于XML的用于描述Web服务接口的语言。WSDL是描述服务的一种非常有弹性的模型,但也是非常冗长的。典型的传感器设备容量非常有限。因此,需要一种更紧凑的机制奕用作数据呈现。这种机制的范例之一就是WAP二进制XML内容格式(WBXML [16])。这种格式为XML[17]定义了紧凑的二进制呈现,旨在减少要传输的XML文档的大小,简化解析XML的工作。
发布与发现栈与Web服务的目录服务相一致。服务提供者需要一种发布机制以便他们能够给出与他们提供的Web服务相关的信息,而服务请求者需要良好定义的查寻接口来使用这些Web服务。
3.相关研究
好些对以数据为中心通讯的研究工作都建立在局部化的算法[11]基础之上以减少冗余,节约能量。定向扩散[5]和SPIN [6]用于传感器网络的两种数据中心的局部化算法。它们都假设在数据分发组件和应用特有特征之间有着一种紧耦合关系。
我提出一种建立在众所周知的数据描述标准之上的普适于传感器网络的体系结构。通过使用一种像SPIN或定向扩散那样的基层数据分发协议,我们的体系结构为传感器网络设计提供了一种弹性且应用无关的解决方案。
近期研究工作主要是不同类别设备网络的命名和服务发现。这些工作的大部分依赖于基于IP的通讯,而不考虑像传感器网络这样动态且资源有限的环境 。通用的即插即用技术Universal Plug-and-Play [14]使用XML的一个子集来描述设备提供的资源。它局限于TCP/IP网络。服务定位协议(SLP)[8]利用集中目录代理来推动不同类网络资源的找寻和使用。集中化的资料档案库和固定的层次结构并不能很好的适用于传感器网络。我们的方案是完全分布式的且基于轻量级协议的。
这和 [2, 7, 20]这些传感器网络的数据库方法有类似之处。在[20]中,通过使用查询代理,传感器计算能力得以开发以在网络内部执行部分查询处理。在[2]中,提出了一种类似于SQL的说明性语言以便用户向传感器网络提出询问请求。[7]提出一种基于虚拟数据库概念和以数据为中心路由的传感器网络体系结构。这些研究与我们的工作的主要区别在于:我们提出一种完全分布式的服务方法,它以普遍存在的协议为基础。将传感器的功能性作为服务展现出来,较之SQL查询来说,提供了一种更具弹性的体系结构。除此之外,我们致力于不同系统之间的协同工作能力,这在数据库方式下是难以实现的。
- 一种蓝牙传感器网络的设计与实现(10-16)
- 无线传感器网络的服务质量保障技术(10-16)
- 一种基于无线传感器网络的滑坡监测系统设计(07-04)
- 家庭节能无线传感器网络系统的设计(07-02)
- Wi-Fi在WSN网络取代Zigbee的技术方案 (01-24)
- WSN和无线测量技术的应用方案(10-09)