一种基于时间序列预测的自适应心跳检测方法技术

技术编号:27067317 阅读:34 留言:0更新日期:2021-01-15 14:49
本发明专利技术涉及一种基于时间序列预测的自适应心跳检测方法,属于高可靠计算技术领域。本发明专利技术中,被监控节点和监控节点的心跳发送周期ΔST

【技术实现步骤摘要】
一种基于时间序列预测的自适应心跳检测方法
本专利技术属于高可靠计算
,具体涉及一种基于时间序列预测的自适应心跳检测方法。
技术介绍
心跳机制是高可用集群的基础,目前高可用集群中常用的心跳检测方法主要有推模型、拉模型、双模型、闲谈类型错误侦测、层次类型错误侦测等,但这些方法均采用固定的心跳周期。由于高可用集群系统中,各节点的负载以及节点之间的通信网络是动态变化的,传统方法无法适应其动态变化特性,容易出现心跳误判情况。吴书华等人提出了一种银河麒麟操作系统的高可靠心跳协议,通过对传统推模型的改进,采用可变的心跳时间间隔和怀疑节点失效时间,下一时刻的心跳时间间隔和失效时间采用滑动平均方法进行预测,以提高高可用集群系统的适应性。
技术实现思路
(一)要解决的技术问题本专利技术要解决的技术问题是:如何针对集群节点负载变化的时间序列特性,提出一种自适应心跳检测方法。(二)技术方案为了解决上述技术问题,本专利技术提供了一种基于时间序列预测的自适应心跳检测方法,包括以下步骤:步骤1、采用心跳发送周期序列的前k个数据进行ARMA模型的模型定阶和在线模型参数辨识,得到心跳发送周期的ARMA模型的参数值;并采用心跳接收周期序列的前k个数据进行ARMA模型的模型定阶和在线模型参数辨识,得到心跳接收周期的ARMA模型的参数值;步骤2、采用心跳发送周期的ARMA模型进行心跳发送周期的一步向前预测,由t时刻之前的实测值得到t时刻心跳发送周期的预测值;采用心跳接收周期的ARMA模型进行心跳接收周期的一步向前预测,由t时刻之前的实测值得到t时刻心跳接收周期的预测值;步骤3、基于步骤2,执行基于时间序列预测的自适应心跳检测。优选地,还包括:步骤4、用测量到的t时刻的心跳发送周期实际值和心跳接收周期实际值分别代替t时刻的预测值;步骤5、令t=t+1,返回步骤2循环执行预测和检测步骤,直至系统关机。优选地,其中,心跳发送周期的ARMA模型和心跳接收周期的ARMA模型分别为:其中,和分别是心跳发送周期和心跳接收周期在t时刻的预测值,ΔSTt-i和ΔHTt-i分别是心跳发送周期和心跳接收周期在t-i时刻的实际值,{εt}和{ηt}是白噪声序列,ps是心跳发送周期的ARMA模型中AR部分的阶数,qs是心跳发送周期的ARMA模型中MA部分的阶数;ph是心跳接收周期中AR部分的阶数,qh是心跳接收周期的ARMA模型中MA部分的阶数。优选地,步骤3中基于时间序列预测的自适应心跳检测分为两个阶段:阶段一:在正常状态,基于推模型进行心跳检测;阶段二:在故障状态,基于拉模型进行心跳检测。优选地,步骤3中阶段2具体执行流程为:监控节点收到被监控节点的心跳信号STm-1后,在基于心跳接收周期的ARMA模型计算得到的原预测值,即超时时间内未收到被监控节点的下一个心跳信息STm;此时基于拉模型进行心跳检测,监控节点主动发送询问信号ASKi,若在规定的超时时间,即发生故障的m时刻心跳接收周期的新预测值内收到被监控节点的心跳信号nSTm,则表明被监控节点正常,此时m时刻心跳发送周期的新预测值为监控节点的心跳接收周期的时间序列变为被监控节点的心跳发送周期的时间序列变为否则,判定被监控节点失效,进行失效处理;其中,其中,是基于心跳发送周期的ARMA模型计算得到的原预测值;nm是网络延迟,cm是被监控节点收到确认信号后的响应延迟。优选地,中,2nm+cm用代替。优选地,中,2nm+cm用代替。优选地,系统开机时开始执行步骤1。优选地,步骤5中,返回步骤2循环执行预测和检测步骤直至系统关机。本专利技术还提供了一种所述的方法在高可靠计算
中的应用。(三)有益效果本专利技术具有如下优点:1、被监控节点和监控节点的心跳发送周期ΔSTi和心跳接收周期ΔHTi均为可变参数,随高可用集群内各节点的负载情况和节点之间的网络状况可自适应地进行调整,心跳周期更加准确;2、心跳检测采用推模型+拉模型相结合的方法,正常状态下被监控节点周期性地向监控节点发送心跳信息;当监控节点在规定的超时时间(预测值)内未收到被监控节点的心跳信息时,主动发送询问信号,心跳接收超时时间也自适应地进行调整;3、对心跳发送周期和心跳接收周期进行了基于时间序列的ARMA建模,采用一步向前对心跳发送周期和心跳接收周期进行预测,相比于滑动平均方法,心跳周期预测值更加精确。附图说明图1为本专利技术中正常状态下的心跳协议(阶段一)原理图;图2为本专利技术中故障状态下的心跳协议(阶段二)原理图。具体实施方式为使本专利技术的目的、内容、和优点更加清楚,下面结合附图和实施例,对本专利技术的具体实施方式作进一步详细描述。本专利技术针对集群节点负载变化的时间序列特性,提出了一种基于时间序列预测的自适应心跳检测方法。如图1所示,{…、STi-2、STi-1、STi、STi+1、…}是被监控节点和监控节点之间的心跳信息,{…、ni-2、ni-1、ni、ni+1、…}是被监控节点和监控节点之间的网络延迟。DindaP.A.通过对服务器的长期跟踪观测,发现节点的负载变化是一种时间序列。被监控节点的心跳发送周期是被监控节点负载(CPU、内存、硬盘等)的函数,因此被监控节点的心跳发送周期{…、ΔSTi-1、ΔSTi、ΔSTi+1、…}为时间序列;监控节点的心跳接收周期(超时时间)是网络延迟和被监控节点心跳发送周期的函数,因此监控节点的心跳接收周期(超时时间){…、ΔHTi-1、ΔHTi、ΔHTi+1、…}也为时间序列。因此,可以用时间序列预测的方法进行心跳发送周期和心跳接收周期(超时时间)的预测。基于以上原理,本专利技术提供的一种基于时间序列预测的自适应心跳检测方法的步骤为:步骤1、采用心跳发送周期序列的前k个数据进行ARMA模型的模型定阶和在线模型参数辨识,得到心跳发送周期的ARMA模型的参数值c、ai和bj;并采用心跳接收周期序列的前k个数据进行ARMA模型的模型定阶和在线模型参数辨识,得到心跳接收周期的ARMA模型的参数值d、fi和gj;步骤2、采用心跳发送周期的ARMA模型进行心跳发送周期的一步向前预测,由t时刻之前的实测值得到t时刻心跳发送周期的预测值;采用心跳接收周期的ARMA模型进行心跳接收周期的一步向前预测,由t时刻之前的实测值得到t时刻心跳接收周期的预测值;步骤3、基于步骤2,执行基于时间序列预测的自适应心跳检测。步骤4、用测量到的t时刻的心跳发送周期实际值和心跳接收周期实际值分别代替t时刻的预测值;步骤5、令t=t+1,返回步骤2循环执行预测和检测步骤,直至系统关机。其中,心跳发送周期的ARMA模型和心跳接收周期的ARMA模型分别为:其中,和分别是心跳发送周期和心跳接收周期在t时刻的预测值,ΔS本文档来自技高网
...

【技术保护点】
1.一种基于时间序列预测的自适应心跳检测方法,其特征在于,包括以下步骤:/n步骤1、采用心跳发送周期序列的前k个数据进行ARMA模型的模型定阶和在线模型参数辨识,得到心跳发送周期的ARMA模型的参数值;并采用心跳接收周期序列的前k个数据进行ARMA模型的模型定阶和在线模型参数辨识,得到心跳接收周期的ARMA模型的参数值;/n步骤2、采用心跳发送周期的ARMA模型进行心跳发送周期的一步向前预测,由t时刻之前的实测值得到t时刻心跳发送周期的预测值;采用心跳接收周期的ARMA模型进行心跳接收周期的一步向前预测,由t时刻之前的实测值得到t时刻心跳接收周期的预测值;/n步骤3、基于步骤2,执行基于时间序列预测的自适应心跳检测。/n

【技术特征摘要】
1.一种基于时间序列预测的自适应心跳检测方法,其特征在于,包括以下步骤:
步骤1、采用心跳发送周期序列的前k个数据进行ARMA模型的模型定阶和在线模型参数辨识,得到心跳发送周期的ARMA模型的参数值;并采用心跳接收周期序列的前k个数据进行ARMA模型的模型定阶和在线模型参数辨识,得到心跳接收周期的ARMA模型的参数值;
步骤2、采用心跳发送周期的ARMA模型进行心跳发送周期的一步向前预测,由t时刻之前的实测值得到t时刻心跳发送周期的预测值;采用心跳接收周期的ARMA模型进行心跳接收周期的一步向前预测,由t时刻之前的实测值得到t时刻心跳接收周期的预测值;
步骤3、基于步骤2,执行基于时间序列预测的自适应心跳检测。


2.如权利要求1所述的方法,其特征在于,还包括:
步骤4、用测量到的t时刻的心跳发送周期实际值和心跳接收周期实际值分别代替t时刻的预测值;
步骤5、令t=t+1,返回步骤2循环执行预测和检测步骤,直至系统关机。


3.如权利要求1所述的方法,其特征在于,其中,心跳发送周期的ARMA模型和心跳接收周期的ARMA模型分别为:






其中,和分别是心跳发送周期和心跳接收周期在t时刻的预测值,ΔSTt-i和ΔHTt-i分别是心跳发送周期和心跳接收周期在t-i时刻的实际值,{εt}和{ηt}是白噪声序列,ps是心跳发送周期的ARMA模型中AR部分的阶数,qs是心跳发送周期的ARMA模型中MA部分的阶数;ph是心跳接收周期中AR部分的阶数,qh是心跳接收周期的ARMA模型中MA部分的阶数。<...

【专利技术属性】
技术研发人员:刘宗宝张力李之乾张琨李勇翔
申请(专利权)人:北京计算机技术及应用研究所
类型:发明
国别省市:北京;11

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1