基于代码差异的无线传感器网络重编程方法研究

来源 :南京航空航天大学 | 被引量 : 2次 | 上传用户:whg_2001
下载到本地 , 更方便阅读
声明 : 本文档内容版权归属内容提供方 , 如果您对本文有版权争议 , 可与客服联系进行内容授权或下架
论文部分内容阅读
无线传感器网络(WSNs)在环境监测、军事战场、工业控制等领域的应用非常广泛。在真实的WSNs中,通常需要部署成百上千个节点。随着时间推移和环境变化,可能需对运行的节点增加、关闭一些功能或者修复软件中存在的问题,即节点运行的程序需要进行重编程以实现版本更新。传统手动的更新方式效率低下,甚至某些部署在环境恶劣或人类无法到达区域的节点不能实现更新,因此研究者提出无线远程更新方式。但是,大部分代码更新操作,新版本程序代码相对于旧版本需要更新的部分远小于整个新版本程序代码。此外,鉴于传感器节点自身的资源限制,所以节点通过无线方式远程进行更新时,需要减小重编程过程中分发的代码量,提高重编程效率并降低节点能耗。本文以MeshSPAIS智能精准农业信息系统为背景对基于差异的WSNs重编程进行深入研究,提出基于代码克隆检测技术的WSNs重编程方法(RePCCDT)和总体架构,主要工作如下:首先,对WSNs重编程的两个部分即代码分发协议和重编程方法进行研究,重点分析Deluge、Zephyr/Hermes、Elon、R2几种具有代表性的重编程方法,指出它们在代码分发量和能耗方面存在的不足及待改进之处。其次,针对基于差异的WSNs重编程的新旧版本程序代码相似度的保护问题,提出BGIR代码相似度保护方法。该方法从分支、全局变量、间接寻址、相对跳转四个方面分别处理其变化所带来的影响,以提高新旧版本程序的相似性,为后续差异补丁生成算法生成较小的差异补丁做准备。通过理论分析和实例分析验证该方法能够提高新旧版本程序代码相似性从而减小差异补丁的大小。然后,针对基于差异的WSNs重编程的差异补丁生成问题,提出基于代码克隆检测技术的差异补丁生成算法CCDTDiff。将基于Token序列的代码克隆检测技术引入到差异补丁生成算法中,寻找新旧版本程序代码的公共代码段,用本文设计的差异补丁计算算法生成最小化的差异补丁。从算法的执行效率和差异补丁生成大小两个方面分析该算法的性能。最后,设计基于代码克隆检测技术的WSNs重编程总体架构和引导装载程序Bootloader。总体架构主要包括三个模块:差异补丁生成、代码分发和构建程序镜像,接着改进默认的Bootloader使节点通过软件重启来执行更新后的程序。通过TOSSIM仿真实验验证该架构的可行性,差异补丁生成模块能够生成最小化的补丁,减少重编程过程中下载代码耗费的时间和消耗的能量。
其他文献
信息技术已经非常深刻地融入了人类社会,几乎所有的组织(政府、企业、团体等)都需要信息系统的支持。工作流技术的出现为构建信息系统提供了先进的方法和技术手段。今天,对工作
随着模式识别技术的不断发展,利用机器自动完成军用武器装备、医用药品等的识别越来越受到世界各国的重视。国外已经开展了化学武器弹药分类、医用片剂快速区分、核材料识别
计算机互联网的爆炸式增长以及基于因特网的电子商务的增加使得网络安全成为网络设计的一个重要因素。因此,开展网络安全特别是入侵攻击与防范技术的研究,开发急需的、高效实
在动态开放的多Agent系统中基于可信机制帮助Agent选择可靠的交互对象一直是Agent信任研究领域的重要研究课题。本文主要研究如何基于社会网络技术探讨基于群体的多Agent系统
业务交付平台是一个综合的增值业务支撑系统,使运营商能够快速灵活地提供电信增值业务。但是由于业务交付平台整合了原有各增值业务支撑系统的功能实体,因此系统接口相对比较复
入侵检测系统(IDS)是继“防火墙”、“信息加密”等传统安全保护方法之后的新一代安全保障技术。近年来,随着商业化IDS产品的不断开发,入侵检测系统也逐渐发展普及。但是,复杂的
多域间的安全互操作,需要集成、协同和统一的安全管理。解决多域互操作产生的策略冲突问题是多域集成的基础。本体是共享概念模型的形式化规范说明,是一种能在语义和知识层次
作为多媒体和网络研究领域的交叉学科,流媒体技术的应用和研究在近几年获得了迅速的发展。然而在Internet上传统基于C-S方式的流媒体应用很容易导致服务器端的性能瓶颈,并不能
网格技术是当今计算机研究领域的热点之一。而随着海量递增的数据处理需求以及信息服务需求的日益增多,如何有效地管理、分配、调度网格资源,来更好地满足用户的请求,提高用户的
随着互联网的飞速发展,以HTML文档作为信息的载体己非常普遍。然而,其复杂的组织结构、对视觉的依赖使得失明人士在访问HTML文档的时候遇到很大的困难。目前,失明人士浏览网页主