




已阅读5页,还剩9页未读, 继续免费阅读
版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
主动无线传感器网络体系结构设计 主动无线传感器网络体系结构设计*)罗娟吕磊刘慧中李仁发(湖南大学计算机与通信学院,湖南长沙410082)摘要无线传感器网络应用系统一般都基于某类特定应用或环境,目前缺乏通用的平台。 本文提出了主动无线传感器网络体系结构。 主动传感器网络在应用程序和操作系统之间增加执行环境层,即通用目的的中间件层,提供抽象化服务、各类管理功能以及执行环境,从而支持传感器网络的各类应用,减少应用程序开发周期。 本文给出了基于移动代理的MobCor主动传感器网络的解决方案,MobCor使用通用目的的中间件模型,利用它可以灵活、快速的构建传感器网络应用。 关键词主动无线传感器网络,移动代理,中间件Design of Active Wireless Sensor NetworkArchitecture LuoJuan LvLei LiuHuizhong(School ofComputer and Communication,Hunan University,410082,China)Li RenfaAbstract Wireless Sensor Network application systemis generallybased insome specialapplication orsome specialenvironment,and thereis nomon applicationplatform nowadays.The generalarchitecture ofActive Wireless Sensor Networkis proposed,Active Wireless Sensor Networkarchitecture addsthe Execution Environment layerbetween applicationand OperationSystem,that isthe generalpurpose middlewarelayer,to providethe abstractservice,kinds ofmanagement functionand executionenvironment,therefore supportskinds ofWirelessSensor Networkapplication,and decreasesthe developingperiod ofapplication.MobCor isthe solutionofActiveWirelessSensorNetwork,which isa generalpurpose mobile-based agentmodel,by usingit wecan designsensor workapplication moreflexible andrapidly.Keywords ActiveWirelessSensorNetwor,Mobile agent,Middleware1.引言无线传感器网络(WirelessSensorNetwork,WSN)在环境监测、医疗监护、军事、家庭娱乐、工业、教育领域等的应用研究非常广泛1。 在这些多样化的应用中,由于缺乏统一的网络标准,各类应用系统或中间件系统都是针对某类特定应用和特定环境的,因此,开发传感器网络应用程序需要花费很长的周期。 不确定的系统软件和应用软件边界给系统软件设计者带来了一定的困惑。 系统软件究竟应以什么样的方式来提供什么样的服务,究竟哪一种2?3、Cougar机制更适合传感器网络目前涉及中间件的系统有Mate4、SINA5、TinyDB6、Agilla7等。 Mate和Agilla主要提供分布式任务管理;Cougar、SINA、和TinyDB采用类似数据库查询的方式提供数据管理功能。 这些中间件系统仅提供某项服务,而不是通用目的的传感器网络中间件系统。 通用目的的传感器网络中间件应具备网络服务管理、数据管理、分布式任务管理三大功能8。 本文提出一种主动传感器网络体系结构。 主动传感器网络将应用系统分成节点操作系统、执行环境和主动应用三层,分层次提供应用者各类服务,从而支持传感器网络的各类应罗娟等主动无线传感器网络体系结构设计用,减少应用程序开发周期。 2主动无线传感器网络体系结构Philip Levis等人在文献3中认为将动态计算引入到传感器网络中的过程即为主动传感器网络。 然而,他们仅在Tinyos上构建一个支持传感器网络动态编程的虚拟机Mate,而没有给出主动传感器网络的特性和体系结构。 通过总结现有的文献和研究工作3,9,10,主动传感器网络应具备如下特性网络节点发出的包可以是数据包,也可以是包括用户定制的程序代码的计算包。 网络节点将提供一种标准的执行环境,不仅能转发数据包,也能让符合条件的计算包无差别的运行。 网络节点对流经它的包能自主的决定其发送方式,如是否转发该包、发给谁等。 用户或应用程序可以通过注入计算包来完成某一特定任务。 在主动传感器网络中不仅存在传统网络中“存储-转发”的处理模式,还将存在“存储-计算判断-转发”处理模式。 在资源极端受限的传感器网络中,实现如此的平台是一件艰巨的任务,开发者必须尽量细化模块,谨慎地安排系统资源。 2.1网络模型主动传感器网络模型,如图1所示,主动传感器网络协议栈和功能模块映射图,共分为三层,节点操作系统,执行环境和主动应用层。 节点操作系统同其他操作系统一样,提供物理设备的抽象和高协调性的通用函数实现;执行环境层按功能可分为网络服务管理、数据管理和任务管理三大模块;网络服务管理为应用者提供一系列网络服务,如服务发现、时钟同步等等;数据管理提供数据保存、数据获取、数据融合等服务;任务管理层负责任务分配、任务协同、任务迁移、任务调度、执行环境等功能。 主动应用层利用执行环境层提供的服务构建网主动传感器络应用。 图1主动WSN协议栈和功能模块主动传感器网络首先从整体上细致地规划了各模块应提供的功能,避免从已有系统上构建中间件系统而出现功能重复等而导致资源浪费的缺点;其次,主动传感器网络将应用服务实行分层次提供,最大限度的利用了有限的传感器网络资源;第三,主动传感器网络在应用程序和操作系统(Oper-ate SystemOS)之间增加执行环境(ExecutionEn-vironment,EE)层,即通用目的的中间件层,更合理的包装节点操作系统所提供的服务并为传感器网络应用提供更一般化服务和执行环境,减少传感器网络应用程序的开发周期,同时也更有效的利用了传感器网络中有限的系统资源。 最后,主动传感器网络结构作为一个整体提供给应用者,有利于灵活、快捷的开发传感器网络应用。 2.2应用软件体系结构和无线中间件MobCor模型,如图2所示,是通用目的的中间件模型,支持主动传感器网络,支持移动代理。 移动代理可以看成一段代码,能够自主运行或提供服务,并在一定条件下能在网络中自主移动到其它节点上去执行,完成某一特定功能。 为了更好的适应传感器网络的事件驱动本质,采用了基于策略的移动代理控制方式。 代理由行为、事件、条件、数据组成。 预先定义好的行为只有在规定事件发生时,且满足预定义的条件后才执行。 在MobCor中,节点首先根据传感器网络分簇算法,选择节点作为簇头,形成层次型传感器网络。 随后,由簇头负责管理簇内节点之间的通信,分配任务到各个节点,融合并转发簇内数据包或其它簇的数据包到基站或其它簇头节点。 图2MobCor移动代理模型MobCor应用程序由许多不同类型的代理够成,它们分散在整个网络中。 从所有者角度看,代理可分为两类系统代理和用户代理。 系统代理由系统预定义,用来提供具有一般性的系统服务,如数据融合。 这类代理或者定时被代理引擎调度,或者被特定事件触发。 MobCor提供的部分系统代理如下 (1)数据融合代理 (2)事件代理,负责监控特定事件是否发生。 (3)报告代理,负责将节点数据上传给簇头或基站。 (4)节点同步代理,解决时间同步问题。 (5)任务分配代理功能上,数据融合代理、报告代理属于数据管理层;节点同步代理属于网络服务管理层;任务分配代理属于任务管理层;事件代理属于主动应用层。 在主动传感器网络中,不同的服务根据其功能分别由不同层次提供。 在MobCor中,不同类型的代理完成不同的任务;代理通过元组空间交换数据。 大部分代理只在簇头和普通节点间移动,个别代理会在普通节点间移动。 代理在移动到新节点并执行完任务后,将数据返回给原节点。 图2中不同形状的代理代表不同类型的代理。 MobCor模型提供给应用程序的不仅仅是系统服务或功能,还有执行环境,即允许网络中的计算包在不同节点上运行。 MobCor是一种灵活的中间件模型,允许用户使用高层次的语罗娟等主动无线传感器网络体系结构设计言创造移动代理来简化编程;允许用户在任何时刻发送可以在网络中传播的代理来完成特定的任务;允许多个应用程序共享同一个网络。 3MobCor设计3.1MobCor结构MobCor结构,如图3所示,由代理管理器、代理引擎和元组空间构成。 代理管理器由代理仓库、代理上下文、代理操作集组成。 代理仓库保存了节点当前所有的移动代理,包括系统预定义移动代理和接收的移动代理;代理上下文保存了节点上各个移动代理的执行环境、状态及其所需的数据;代理操作集是代理管理器与代理引擎之间的接口。 图3MobCor结构代理引擎是MobCor的核心,控制节点上所有移动代理的执行过程,解释其所有指令。 由于当前绝大部分传感器网络操作系统,如Tinyos2,不支持动态内存分配机制,而移动代理又需求动态内存分配机制,因此它还提供内存动态分配功能。 另外,代理引擎还运行一个简单的时间片轮转(round-robin)调度器,控制每个移动代理最多可以运行的指令,将移动代理置于不同的状态,阻塞或就绪或运行态.代理引擎也负责代理的发送和接收工作。 元组空间是共享的内存池,如同装满了元组的容器,供节点上所有代理访问。 元组空间通常被用来实现代理间的通信和异步操作,提供store,wit-hdraw,find等原语。 代理管理器、代理引擎和元组空间构成了移动代理的执行环境,应用程序只需封装其移动代理来执行任务;系统预定义的移动代理被用作提供一般性的系统服务。 3.2移动代理封装一个移动代理就是一个特定的任务,在主动传感器网络中绝大部分任务需要节点之间协作完成。 移动代理封装是指将任务运行的条件、代码、数据等组装成特定实体。 移动代理封装过程是任务定制的过程,移动过程则是任务的分发过程。 移动代理由行为、事件、条件、数据组成,如图4。 图4代理结构store(attributes)withdraw(search_pattern,time_out)find(search_pattern,time_out)connect(tuple_id).disconnect(tuple_id).send(tuple_id,field1)recive(tuple_id,time_out).行为描述了移动代理所需执行的任务,由于移动代理通常需要额外的参数来确定其实际执行的操作,因此行为可以被分成两部分,一部分用来保存代码,另一部分用来保存参数。 事件定义了代理被触发的事件,允许为空。 一个条件是一个简单的表达式,由代理引擎负责判定,也允许为空。 当事件被触发时,代理引擎判断是否满足其定义好的条件,如果满足则进入就绪或运行状态。 数据段用于保存代理执行所需的数据。 移动代理被应用程序封装好后由代理管理器统一管理。 代理管理器将移动代理存储在代理仓库中;代理引擎通过代理管理器提供的代理操作集来调度移动代理、执行任务。 3.3移动代理的调度及执行代理引擎周期地检查代理仓库、判断移动代理的条件是否满足、移动代理事件是否被触发、查看是否存在被挂起的代理;若条件符合,代理引擎将调度这个移动代理执行特定任务;否则,代理引擎将休眠;被调度执行的移动代理的执行时间是有限制的,最多允许执行8条指令。 移动代理的生命周期被划分为四个状态创建态、移动态、静止态和结束态。 处于“静止态”的移动代理还可细分为阻塞或就绪或运行态,如图5所示,是移动代理状态切换图。 正在执行的代理处于运行态;而代理条件满足以及代理事件被触发但未投入运行的代理为就绪态;代理条件不满足或事件未被触发的代理处于阻塞态。 运行态就绪态阻塞态34211.代理由于事件未被触发或条件不满足而阻塞2.代理引擎选择另一个代理执行3.代理引擎选择该代理4.事件被触发且条件满足图5代理状态转换图所有移动代理构成一个“权值”队列;处于阻塞态的权值为0;而就绪态的代理权值跟其上次被调用的时间和代理类型有关。 MobCor中,事件检测类型的代理权值高于监控类型代理,上次运行时间越早的代理权值高于越晚的代理;代理总的权值是这两个因素叠加的结果。 3.4移动代理协作移动代理被创建后,通常还需要接收命令、跟其它的代理通信、协作等。 移动代理之间的协作模型可归为4类客户/服务,面向会议,基于黑板,基于Linda模型11。 我们采用了基于Linda的协作模型。 基于Linda模型的协作双方通过元组空间,实现了在不同时间和不同空间上进行交互,这种协作方式本质上适合移动性和开放性的应用.元组空间是一个规则数据库中所有元组的集合。 元组是构成元组空间的最小单位,是规则域(field)的集合,每个域都是由类型(type)、值(value)字段组成。 type字段指定的是数据类型,如int,string等;value指定该域的数值。 MobCor提供connect,disconnect,send,recive等原语来访问元组,除recive原语外其它原语皆为阻塞式操作。 图6描述了代理A将数据传递给代理B的协作过程。 首先代理A保存数据到元组空间并触发代理B的事件;其后代理引擎调度代理B执行;最后代理B从元组空间获得数据。 罗娟等主动无线传感器网络体系结构设计图6代理间的协作4.结束语本文概括了主动传感器网络的特性、提出了主动无线传感器网络的结构、详细讨论了主动无线传感器网络的解决方案MobCor。 分层次的主动传感器网络结构,给应用者提供网络服务管理、数据管理、分布式任务管理,缩短了应用程序的开发周期。 MobCor利用移动代理技术来实现主动传感器网络的各项功能。 下一步我们将在实际的工程应用中实现MobCor模型.参考文献1D.Puinelli M.Haenggi WirelessSensor Networks:Appl-ications andChallenges ofUbiquitous SensingCircuits andSystems Magazine,IEEE,xx,5 (3):19312P.Levis et.al.T2:A secondgeneration osfor embeddedsen-sor works.Technical report,University ofCalifornia,Berkeley,xx.3P.Levis,David Gay,and DavidCuller,Active sensorne-tworks,in InProceedings ofUsenix NetworkSystems Designand Implementation(NSDI),Boston,MA,USA.,xx.4P.Bon,J.Gehrke andP.Seshadri.Towards SensorDatabase SystemsIn:Proc.2nd Intl Conf.Mobile DataManagement(MDM01),xx,314-810.5C.Srisathapornphat,C.Jaikaeo andC.Shen,Sensor Infor-mation NetworkingArchitecture doi.ieeeputersociety/10.1109/ICPPW.2000.869083,In:Proc.Intl WorkshopParallel Processing,IEEE
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 吉林省抚松县2025年上半年公开招聘辅警试题含答案分析
- 河北省高邑县2025年上半年公开招聘辅警试题含答案分析
- 福建省古田县2025年上半年公开招聘辅警试题含答案分析
- 首批新质生产力获选名单
- 妇科硬核知识培训内容课件
- 辽宁沈阳航空产业集团有限公司所属子企业招聘笔试题库参考答案详解
- 难点解析-公务员考试《常识》难点解析试题(含答案解析)
- 考研时事政治试题库【黄金题型】附答案详解
- 难点详解公务员考试《常识》必考点解析试卷(解析版含答案)
- 虚拟社区互动模式-洞察及研究
- 6G多维度切片QoS保障-洞察及研究
- 2025-2026学年外研版(三起)(2024)小学英语四年级上册教学计划及进度表
- 高考3500词汇表(完整版)
- 集团公司内部资金调剂管理办法
- 思想道德与法治课件:专题五在实现中国梦的实践中放飞青春梦想
- 新人教A必修一《集合》课件
- 复用器械处理流程
- 静安沉恒 沉子恒
- GB/T 23510-2009车用燃料甲醇
- GB/T 14216-2008塑料膜和片润湿张力的测定
- 警械使用课件
评论
0/150
提交评论