论文摘要
随着无线网络和移动计算设备的快速发展和日益普及,移动计算这一计算范型得到了高度重视和广泛研究,被认为是信息技术领域的主要发展方向之一。在移动环境中,不可靠的移动节点和脆弱的网络连接,迫切需要为移动计算系统提供容错机制。检查点与卷回恢复(Checkpoint and Rollback-Recovery)技术是一类重要的软件容错技术,具有实现和使用简单,对资源要求低等特点,适合在移动计算环境中应用。移动计算环境中,低通信带宽、存储空间限制、节点的移动性、频繁的断开连接和能量限制等特点决定了为固定网络分布式系统开发的卷回恢复技术不能直接地应用到移动计算系统中。在保证系统一致性的前提下,减少检查点和消息日志的存储开销、减少卷回恢复机制引入的通信开销、提高移动节点的自治性(autonomy)、减少由于进程间依赖关系造成的节点间耦合、实现卷回恢复机制对移动节点的透明,是移动环境下卷回恢复技术研究的核心问题。本文围绕以上内容展开研究。进程检查点是卷回恢复机制研究的基础,降低检查点开销是进程检查点的重要研究方向。尤其在移动计算系统中,其资源受限的特点决定了设计的卷回恢复算法必须具有低开销的特点。利用内核级检查点的优势,结合移动计算机系统应用环境的特点,提出了两种自适应检查点间隔控制策略:基于故障预测的步进式检查点策略和基于内存数据量预测的内存门限方法,两者结合可以很好的动态控制检查点设置间隔,有效减少检查点的存储开销和计算损失。在移动计算环境的实际应用中,很多网络结构是松耦合的,移动节点自治性很强,希望的容错机制是一种透明的服务,同时需要异步的卷回恢复。提出一种基于先行图的移动计算环境因果日志及卷回恢复算法MCCML,通过在MSS上记录的先行图来记录MH间的依赖关系,同时采用基于发送方的暂存消息日志和非协同检查点记录节点状态。支持站只需为每个节点保存一个最近的检查点,避免了日志信息的同步稳定存储,减少了无错运行时的开销。某节点失效后,只有该节点本身需要卷回到最近的检查点,而其他进程无需卷回,从而实现了移动节点透明的完全异步的卷回恢复。MCCML的应用范围有一定的局限性,在大规模移动网络中采用因果日志将带来很大的存储和通信开销,考虑将本应该在MH一级进行的检查点存储、消息日志和依赖跟踪等工作全部转移到MSS上进行存储和处理而在MSS之间维护跨区消息的依赖信息,形成小区内、小区外两层因果依赖关系的跟踪。提出一种移动计算环境分层因果日志协议MCHCML,采用分层的因果日志记录消息间的因果依赖关系,结合协同检查点算法,实现MSS-MH两层的因果日志协议。基于SPIN系统,搭建了移动计算环境的仿真平台仿真。实验表明,MCHCML在降低无故障运行时的通信开销和减少卷回恢复过程中的计算损失开销,控制参与卷回恢复移动节点数量各方面都体现出良好的协议性能。异构移动网络中,由于不同类型的移动节点的计算任务、通信负载、可靠性不同,所以检查点周期的最优间隔是不同的。因此,多周期的半同步检查点机制在异构的移动网络中可以得到很好的应用。提出一种结合选择性日志的半同步检查点算法QSCSMLA,保持移动节点固有的检查点周期,同时由于MSS掌握全局的信息,所以根据依赖跟踪和节点检查点设置情况,可以有选择的记录消息日志,大量日志信息可以仅仅在MSS转发消息时在MSS内存中暂存,不增加额外开销,而少数消息由于影响到系统一致性需要记录到稳定存储上。QSCSML算法的优势在于显著减少了作为计算资源、存储资源瓶颈的移动节点的容错冗余开销,适合于移动计算环境的特点。