论文部分内容阅读
可靠稳定的分布式系统被广泛用于军事、医疗以及金融等众多领域,然而随着系统规模和复杂度的不断增加,故障的发生概率也逐渐增加,故障检测作为保证分布式系统可靠运行的基础组件之一,具有重要的研究意义。本文主要针对故障检测的自适应性和可扩展性,研究能自适应于系统和网络状态的故障检测器以及基于链路故障的自适应检测协议。心跳检测是分布式系统故障检测中最常用的技术,本文基于EMA(指数移动平均)和方差比进行心跳预测,提出一种新的自适应故障检测器—DEMA-FD,该检测器比传统心跳预测检测器具有更好的准确性,而且能根据故障检测器的服务质量QoS(Quality of Service)基本评价指标进行调整,满足不同分布式应用的故障检测需求。经理论证明,在部分同步系统中DEMA-FD可以实现一个◇P类故障检测器并在最后对DEMA-FD进行了实验验证。传统故障检测器存在将链路故障等同于节点故障的问题,极大地影响了故障定位和快速修复。本文提出一种新的自适应检测协议—DLFDA,该协议中每个节点同时拥有k个检测者进行故障类型诊断,能够准确区分链路故障和节点故障。DLFDA协议使用一种新的权责累积故障检测器DA-FD作为直接检测,该检测器利用DEMA-FD中心跳预测算法的自适应性,基于指数函数输出一个随时间累积的决策值,用户通过设定阈值灵活调整检测强度。另外,DLFDA协议能够动态调整检测结构以增加链路检测的覆盖率,同时使用gossip发布故障诊断结果,降低了检测负载。最后对DLFDA协议进行了实验验证,结果表明其符合理论设计要求。本文最后设计了一个通用可扩展的分布式自适应故障检测系统原型,该原型具有三层架构,分别是成员管理、信息同步以及自适应故障检测。系统功能上层次分明,模块之间耦合性较低,通过统一接口可以快速扩展。