论文部分内容阅读
失效检测是分布式系统中实现高可用性的关键技术和组件之一,同时也是可靠性通信、失效恢复、动态重启、集群管理等功能的基础,在网格计算、集群管理、通信协议、物联网、云计算等领域也有重要的应用。本文以分布式系统的高可用性研究为背景,针对失效检测模型的QoS(Quality of Service)评价体系和失效检测算法改进进行了深入的研究和探讨。主要工作及创新点有以下两方面:1.针对失效检测器QOS,在前人研究基础上完善并形成一套较为完整的QoS评价体系。Chen等人曾提出了一套经典的评价体系,但这种体系存在着缺陷,Chen等人仅仅是从检测速度和准确性方面对失效检测的QoS进行了研究,认为失效检测器的QOS可以利用TD、TMR、TM等几个主要指标进行度量。分析表明仅用完整性和准确性来度量QoS是不够的,而且用TD作为完整性的主要指标也是不准确的。本文提出一套新的评价体系,并指出失效检测器QOS可以通过完整性,准确性和及时性来度量。2.本文提出一种基于QoS的自适应失效检测算法QoS-AFD,使用幂律对统计的历史超时值进行加权计算其均值,并通过指数分布概率模型预测下一次的超时值,以此作为判断进程是否失效的依据。真实的网络环境中,各系统的规模会越来越大,而且网络状态也是复杂多变,因此不具备自适应机制的失效检测器将难以满足应用对QoS的需求。具备自适应机制的失效检测器是会对心跳消息的历史延迟值进行记录,通过计算与分析之后得出下一个心跳消息的延迟预测值,通过与实际到达的延迟值进行比较来判断被监测进程失效与否。由于心跳消息的历史延迟值会不断更新,通过失效检测算法得出的延迟预测值也会随网络变化而不断调整,从而更能适应于真实的网络环境。本文提出的QoS-AFD算法通过基于QoS来设置参数的方法,针对新的失效检测算法进行了实验设计及性能分析,并对该算法能满足的失效检测级别进行了证明。实验结果表明该算法在检测及时性和准确性方面均优于Chen的NFD-E算法和Bertier的失效检测算法。