CN100367714C - 基于网络和主机负载的变速心跳机制的实现方法 - Google Patents

基于网络和主机负载的变速心跳机制的实现方法 Download PDF

Info

Publication number
CN100367714C
CN100367714C CNB2004100057913A CN200410005791A CN100367714C CN 100367714 C CN100367714 C CN 100367714C CN B2004100057913 A CNB2004100057913 A CN B2004100057913A CN 200410005791 A CN200410005791 A CN 200410005791A CN 100367714 C CN100367714 C CN 100367714C
Authority
CN
China
Prior art keywords
heartbeat
time
node
load
cycle
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Expired - Fee Related
Application number
CNB2004100057913A
Other languages
English (en)
Other versions
CN1661968A (zh
Inventor
姜晓东
许正华
黄平
刘洋
李电森
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Lenovo Beijing Ltd
Original Assignee
Lenovo Beijing Ltd
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Lenovo Beijing Ltd filed Critical Lenovo Beijing Ltd
Priority to CNB2004100057913A priority Critical patent/CN100367714C/zh
Publication of CN1661968A publication Critical patent/CN1661968A/zh
Application granted granted Critical
Publication of CN100367714C publication Critical patent/CN100367714C/zh
Anticipated expiration legal-status Critical
Expired - Fee Related legal-status Critical Current

Links

Images

Landscapes

  • Debugging And Monitoring (AREA)
  • Computer And Data Communications (AREA)

Abstract

一种基于网络和主机负载的变速心跳机制的实现方法,是利用网络系统中的信息参数,建立一种能够感知当前网络和主机的负载状况、并根据该负载状况实时地动态调节心跳发送周期的变速心跳机制,以便在不过多占用系统资源的情况下加快结点故障发现时间。其主要步骤为:(1)监控网络负载和主机负载,(2)计算心跳发送周期和心跳超时时间,并对该两个参数作全局的同步处理,(3)发送心跳和检查心跳是否超时。该方法在机群中通过发送心跳和接收心跳准确及时地发现结点故障,并根据结点主机和机群网络的负载情况实时调整心跳频率:负载轻时,加快心跳频率,充分利用系统资源;负载重时,减慢心跳频率,降低心跳程序对系统资源的占用。

Description

基于网络和主机负载的变速心跳机制的实现方法
技术领域
本发明涉及一种基于网络和主机负载的变速心跳机制的实现方法,属于计算机网络检测技术领域。
背景技术
随着网络技术及其应用的发展,单台服务器往往已经难以满足需求,这时机群技术应运而生。所谓机群是由若干个相对廉价的结点机构成的多个计算机系统(又称多机系统),其对外能够提供单一系统映像(SSI),结点之间既相互联系又相对独立。虽然不同的结点在功能、性能等方面有所差异,但是无论哪一个结点出现故障都将造成机群的部分甚至全部功能的降低或丧失,因此机群自身必须具有能够及时发现结点故障并实施有效排除故障、恢复正常工作的性能。一般来说,排除故障都要经历发现故障、确认故障与排除故障三个阶段(参见图1),而通常引发结点故障的原因有:由操作系统缺陷导致的宕机、由结点硬件损坏导致的宕机和由网络故障导致的通讯中断(结点假死)。心跳机制就是一种在多机系统中常用的监控结点状态和快速发现故障的技术手段。
在心跳机制(heartbeat mechanism)中,结点通过运行心跳程序周期性地向机群内的其它结点发送特定的数据包(即心跳),同时每个结点还在不停地接收并解析其它结点的心跳,并最终形成全局统一的结点状态信息。根据数据包的流向可以将心跳划分为网状心跳结构(参见图2A)和环状心跳结构(参见图2B)两种类型。网状心跳结构可采用广播或多播协议发送心跳,环状心跳结构可采用点对点的通信协议(如UDP/TCP)。然后,在机群中的特定结点(集中式控制的网络)或每个结点(分布式控制的网络)上运行的心跳检查模块会周期性地检查相应结点的心跳时间戳,一旦发现有结点心跳超时且经过故障确认后,便发出故障报警,进而触发必要的排除故障和恢复正常的操作。
在心跳系统中,尽快发现系统的结点故障是尽快排除该故障的首要前提和必要条件。如何发现结点故障就必须着重考虑心跳发送周期、心跳接收周期、心跳传输时间、心跳超时时间、心跳超时检查周期和结点故障发现时间等多个时间参数及其相互之间的关系。下面分别简要阐述之。
每个结点都会定期发送心跳数据包,结点的心跳发送周期是该结点发送相邻两个心跳数据包的时间间隔。心跳系统通常都是采用全局统一的心跳发送周期,以降低有关心跳计算的复杂性。本发明也是采用全局统一的心跳发送周期的心跳机制。
结点接收到来自同一结点的相邻两个心跳的时间间隔称为心跳接收时间。心跳接收周期则是心跳接收时间在一段时间内的算术平均值。在理想情况下,如果网络和主机对心跳的传输延迟是恒定的,则某个结点的心跳接收周期应等于发送心跳结点的心跳发送周期。对于采用全局统一心跳发送周期的心跳系统,所有结点上的心跳发送周期都相同,理想情况下每个结点的心跳接收周期也都相同。而在实际情况下,心跳接收周期会以心跳发送周期为中心作上下小幅震荡,波动的幅度取决于网络传输的质量和主机负载的恒定性。
心跳传输时间是从源结点发出的心跳经过系统处理和网络传输最终到达目标结点的时间。心跳传输时间的大小在一定程度上既反应了当前的网络负载状况,也反应了当前的主机负载状况,即其可以表征当前网络和主机的综合负载。传输时间大说明当前负载重,传输时间小说明当前负载轻。
结点的心跳检查程序会定期地检查它的上一个结点在最近一段时间内是否还有心跳,如果在最近的时间段T内,结点B均未接收到来自结点A的心跳,则可以认为结点A心跳超时;否则,结点A心跳不超时。这里的T值称为心跳超时时间。而心跳检查程序相邻两次检查同一个结点心跳是否超时的时间间隔是系统的心跳超时检查周期。结点故障发现时间是从一个结点发生故障后,直到有其它结点发现该故障结点心跳超时的时间。
上述各个时间量之间存在着一定的关联,其关联性包括下述几点:
(一)理想情况下,如果系统对心跳的传输延迟是恒定的,则某个结点所接收到的其它结点的心跳时间间隔(即心跳接收周期)应该等于心跳发送周期。而在实际情况中,心跳接收周期会以心跳发送周期为中心作上下小幅震荡,其波动幅度取决于网络负载和主机负载的恒定性。
(二)心跳超时时间是每个结点判断其他结点状态的依据,如何合理设置心跳超时时间非常关键,时间设置过长将延误系统及时发现结点故障,设置过短将增加系统误判的机率。显然,心跳超时时间首先要大于等于心跳接收周期,再考虑到实际的网络环境和传输延迟,可设置:心跳超时时间=心跳接收周期+心跳传输时间。
(三)参见图3,说明结点故障发现时间与心跳超时时间和心跳超时检查周期有关,最大结点故障发现时间=心跳超时时间+心跳超时检查周期。图中类似灯泡的图标为结点1的心跳检查时刻,×为结点2的故障发生时刻,T1为结点1的心跳接收时刻,T2为结点2的心跳超时时刻。
结点定期进行心跳超时检查,但是心跳接收时刻是不确定的,即检查心跳超时的结点无法预知何时能够接收到心跳,因此心跳接收和心跳超时检查在时间轴上是两个互相独立的过程。结点1对结点2的心跳进行定期的超时检查。结点2在T1时刻之前运行正常,因此结点1在T1时刻能够接收到结点2发送的心跳。在T1时刻之后不久结点2出现了故障,不再发送心跳,直到T2时刻,结点2上次发送的心跳已经超时,因此,之后结点1进行心跳检查时,才能够检查出结点2的心跳超时;此前,由于结点2的心跳并未达到超时时间,因而进行心跳超时检查仍将显示正常。虽然结点周期性地进行心跳超时检查,但是由于心跳接收时刻的不确定,使得心跳超时后的第一次超时检查的时间与心跳接收时刻的关系无法预测,进而导致结点故障发现时间也无法预测。但是,可以预测最大的结点故障发现时间。图3(A)图是通常的故障发现时间,(B)图表示当心跳超时时间T2到达时,刚刚错过一次心跳超时检查,所以只能在下一次的心跳超时检查中才能检查出心跳超时。在这种情况下,故障发现时间达到最大,即最大故障发现时间=心跳超时时间+心跳超时检查周期。
上述三个关联关系可以概括为下面三个数学表达式:
心跳发送周期=心跳接收周期(理想状况);
心跳超时时间=心跳接收周期+心跳传输时间;
最大结点故障发现时间=心跳超时时间+心跳超时检查周期。
根据上述三个表达式可以推导出:最大结点故障发现时间=心跳发送周期+心跳传输时间+心跳超时检查周期。也就是:最大结点故障发现时间与三个因素有关,但是其中的心跳传输时间取决于实际网络和主机环境,即非程序可控制因素,因此缩短最大结点故障发现时间只能通过缩短心跳发送周期与心跳超时检查周期两个途径。
心跳作为一种监控程序,必须要考虑心跳机制自身对系统资源的消耗。缩短心跳发送周期与心跳超时检查周期在缩短最大结点故障发现时间的同时,都会增加本地负荷,可以考虑采用高效低消耗的系统调用来优化心跳程序中的定时时钟、数据发送等操作,从而减少对本地资源的占用。除此之外,心跳发送周期还将影响到对网络资源和主机资源的占用,心跳过快,心跳数据包会占用过多的网络带宽,心跳数据包的频繁发送和心跳程序的频繁运行也会占用过多的主机资源。
在目前常见的心跳机制中,心跳发送周期是个常量,即心跳程序是以恒定速率向外发送本地心跳,它的优点是实现简单,但也会带来另一个问题一一如何确定心跳发送周期?心跳发送周期定得过长将影响结点故障发现时间,而定得过短则增加网络和主机负荷。一般结点会在心跳数据包中捎带各种能够表明结点当前状态的信息,最终通过分布式或集中式机制在机群范围内形成全局统一的结点状态信息(包括结点存活状态、结点各种资源的负载等)。捎带的信息越多,心跳占用的网络资源就越多,这在网络负载小的时候问题还不大,但是当网络负载本身已经较重时,过多的心跳信息必然会导致网络更加繁忙,特别是对于大规模机群,本身的心跳数据包已经非常多,如果每个心跳包捎带很多的信息,这种问题会更加严重。
发明内容
本发明的目的是提供一种基于网络和主机负载的变速心跳机制的实现方法,该方法在机群中通过心跳发送和心跳接收准确及时地发现结点故障,并根据结点主机和机群网络的负载情况实时调整心跳频率:在负载轻时,加快心跳频率,充分利用系统资源;在负载重时,减慢心跳频率,降低心跳程序对系统资源的占用,从而在不过多占用负载的情况下尽量缩短故障发现时间。
本发明的目的是这样实现的:一种基于网络和主机负载的变速心跳机制的实现方法,其特征在于:利用网络系统中的信息参数,建立一种能够感知当前网络和主机的负载状况、并根据该负载状况实时地动态调节心跳发送周期的变速心跳机制,以便在不过多占用系统资源的情况下加快结点故障发现时间;即该变速心跳机制中的心跳发送周期能够随着网络和主机负载的变化而作实时调整,从而使心跳发送周期和系统负载二者之间能够达到一个比较合理的平衡点;该方法包括下列操作步骤:
(1)监控网络负载和主机负载:在心跳程序发送本地心跳的同时,测算能够表征网络负载和主机负载状况的系统参数-心跳传输时间,实时监控当前的网络和主机的综合负载状况;
(2)计算心跳发送周期和心跳超时时间,并对该两个参数作全局的同步处理:在获知心跳传输时间后,相当于掌握了当前的网络和主机的综合负载状况,进而计算整个机群范围内的全局统一的心跳发送周期与心跳超时时间;
(3)发送心跳和检查心跳是否超时:心跳程序在接收到更改后的新的心跳发送周期和心跳超时时间的命令后,按照新的心跳发送周期定时向外发送本地心跳,并根据新的心跳超时时间检查其它结点的心跳是否超时。
所述网络系统中的信息参数是心跳传输时间,或者是能够表征当前网络和主机的负载状况的其它系统参数。
所述三个操作步骤是按照流水线的工作方式周而复始和相互衔接地循环执行,其中前一个周期的“发送心跳与检查心跳是否超时”的执行过程是与后一个周期的“监控网络负载和主机负载”的执行过程在时间上是重叠的。
所述步骤(1)中网络系统为网状结构时的心跳传输时间的测算方法是由设定的监控结点向所有结点定时发送测试包,各个被测结点在收到该测试包后立即发送反馈包,将接收反馈包与发送测试包的时间戳相减的差值除以2,得到该监控结点与某个目标结点的心跳传输时间,所有目标结点的心跳传输时间的算术平均值就是当前时刻的心跳传输时间。
所述步骤(1)中网络系统为环状结构时的心跳传输时间的测算方法可以是与网状结构相同的方法:由设定的监控结点向所有结点定时发送测试包,各个被测结点在收到该测试包后立即发送反馈包,将接收反馈包与发送测试包的时间戳相减的差值除以2,得到该监控结点与某个目标结点的心跳传输时间,所有目标结点的心跳传输时间的算术平均值就是当前时刻的心跳传输时间:也可以采用另一种方法:监控结点只向其在环中的下游结点发送测试包,每个结点在收到测试包后立即将其转发给自己的下游结点,最终测试包再次回到监控结点,将测试包的接收时间戳减去发送时间戳的差值除以结点数量的商就是当前时刻的心跳传输时间。
所述步骤(1)的监控过程中采用UDP传输协议传送心跳测试包,不能保证发送与接收的心跳测试包顺序相同时,应对心跳测试包进行编号排序,避免出现混乱和导致数据测算的错误;其中心跳测试包的序号是由心跳发起者建立和维护。
所述步骤(1)的监控过程中要滤除网络负载的瞬时峰值,即在监控过程内应连续多次测算目标参数,并以该段时间内的平均值作为调整心跳速率的依据。
所述步骤(1)的心跳传输时间是连续计算的多个心跳传输时间的平均值,以保证该数据的有效性和及时性。
所述步骤(2)中,先计算心跳发送周期:心跳发送周期=F×心跳传输时间,式中,F表示线性或非线性的函数关系,即心跳发送周期是以心跳传输时间为变量的函数值;然后计算心跳超时时间:心跳超时时间=心跳发送周期+心跳传输时间;再对心跳发送周期与心跳超时时间作全局的同步处理,即在机群范围内形成全局统一的心跳发送周期与心跳超时时间。
所述在机群范围内形成全局统一的心跳发送周期与心跳超时时间有两种方法:一是网络监控结点直接将心跳传输时间广播通知给所有机群结点,所有结点再按照相同的算法进行分布式的计算后,得到相同的心跳发送周期和心跳超时时间;二是网络监控结点先在本地计算心跳发送周期和心跳超时时间,然后将该两个参数广播发送给所有机群结点。
本发明是一种基于网络和主机负载的变速心跳机制的实现方法,该方法建立一种能够随着系统负载的变化而调整心跳发送周期的变速心跳机制,通过定期的心跳超时检查使心跳系统能够及时发现故障,同时,该变速心跳机制根据网络和主机负载状况实时、自动地调整心跳速率:当负载过重时,减慢心跳频率,降低对系统资源的占用;负载轻时,加快心跳频率,充分利用系统资源,在缩短故障发现时间和不加重系统负载之间达到一个较好的契合点。与传统的故障发现方法相比,本发明的变速心跳机制的应用更加灵活,具有更高的适应性,具有很好的应用前景。
附图说明
图1是解决网络故障过程的三个步骤示意图。
图2(A)、(B)分别是机群心跳机制中的网状结构图和环状结构图。
图3(A)、(B)分别是通常的结点故障发现时间与心跳超时时间和心跳超时检查周期的关系图和最大结点故障发现时间与心跳超时时间和心跳超时检查周期的关系图。
图4是本发明基于网络和主机负载的变速心跳机制的实现方法的操作流程图。
图5(A)、(B)分别是本发明在网状结构和环状结构中测算心跳传输时间所采用的传输测试数据包的两种方法示意图。
图6是本发明的三个操作步骤呈流水线和前一个周期的第三个操作步骤与后一个周期的第一个操作步骤在时间上重叠的示意图。
具体实施方式
本发明是一种基于网络和主机负载的变速心跳机制的实现方法,该方法是利用网络系统中的信息参数,建立一种能够感知当前网络和主机的负载状况、并根据该负载状况实时地动态调节心跳发送周期的变速心跳机制,以便在不过多占用系统资源的情况下加快结点故障发现时间。
参见图4,介绍本发明方法的具体操作步骤:
(1)监控网络负载和主机负载:在心跳程序发送本地心跳的同时,测算能够表征网络负载和主机负载状况的系统参数-心跳传输时间,实时监控当前的网络和主机的综合负载状况。
在心跳协议中,数据的传输往往是一种单向传输,即心跳接收者不需对收到的心跳数据包做任何反馈。针对这个特点,在不同的心跳拓扑结构中心跳传输时间的测算可以采用不同的方法与策略。参见图5,在网状结构中,可以指定特定的监控结点(结点1)定期向其它所有结点发送测试包,并要求被测结点在收到测试包后必须立即发送反馈包,通过将接收反馈包与发送测试包的时间戳相减的差值除以2,得到该监控结点与某个目标结点的心跳传输时间。然后,计算所有目标结点的心跳传输时间的算术平均值作为当前时刻的心跳传输时间。在环状结构中,既可以采用与网状结构相同的方法计算,也可以根据其心跳特点采用另一种方法:心跳环是一种有向环,因此特定的监控结点(结点1)可以只将测试包发送给其在环中的下游结点,所有其它结点在收到测试包后立即将其转发给自己的下游结点,最终测试包再次回到监控结点。通过将测试包的接收时间戳与发送时间戳相减的差值除以结点数量的商就是当前时刻的心跳传输时间。这样做的好处是如果心跳本身就是在环中做“传递运动”,就可以免去监控结点发送专门的测试包。
在监控的过程中有三个问题需要关注:
网络测试数据包的排序:如果系统不能保证发送与接收的测试包是顺序相同的,就必须对测试包进行编号排序,否则会出现混乱,并导致数据测算的错误。其中心跳测试包的序号是由心跳发起者建立和维护。
过滤网络负载瞬时峰值:在实际环境中,网络和主机负载的变化一般是连续的,但有时会出现瞬时抖动,因此应在监控过程内要滤除网络负载的瞬时峰值,即多次测算目标参数,并以该段时间内的平均值作为调整心跳速率的依据。
为了能够比较客观地反映当前网络和主机的负载状况,所选用的心跳传输时间应该是连续计算的多个心跳传输时间的平均值,以保证该数据的有效性和及时性。当然也可以检测其它的系统参数。
(2)计算心跳发送周期和心跳超时时间,并对该两个参数作全局的同步处理:在获知心跳传输时间后,相当于掌握了当前的网络和主机的综合负载状况,进而计算整个机群范围内的全局统一的心跳发送周期与心跳超时时间;
其中心跳发送周期=F×心跳传输时间,式中系数F为线性关系或其它函数关系;为了计算简便,可将F设置为线性关系,其取值大小取决于系统对结点故障发现时间的实际要求,期望的最大结点故障发现时间越小,系数F的取值也越小;然后计算心跳超时时间:心跳超时时间=心跳发送周期+心跳传输时间;最后对心跳发送周期与心跳超时时间作全局的同步处理,即在机群范围内形成全局统一的心跳发送周期与心跳超时时间。
本发明在机群范围内形成全局统一的心跳发送周期与心跳超时时间的处理方法有两种:一种是网络监控结点直接将心跳传输时间广播通知给所有机群结点,所有结点再按照相同的算法进行分布式的计算,得到相同的心跳发送周期和心跳超时时间。另一种方法是网络监控结点先在本地计算心跳发送周期和心跳超时时间,然后将它们广播给所有机群结点。。
(3)发送心跳和检查心跳是否超时:心跳程序在接收到更改后的新的心跳发送周期和心跳超时时间的命令后,按照新的心跳发送周期定时向外发送本地心跳,并根据新的心跳超时时间检查其它结点的心跳是否超时。需要注意的是:前一个负载监控过程所产生的心跳发送周期与超时时间将作用于下一个心跳发送与超时检查过程。由于存在一定的延时,负载监控过程不宜设置的过长,否则将影响数据的实时性。
本发明的三个操作步骤是相互衔接地按照流水线的工作方式循环执行的,其中前一个周期的“发送心跳与检查心跳是否超时”步骤的执行过程是与后一个周期的“监控网络负载和主机负载”的执行过程在时间上是重叠的(参见图6):在心跳程序初启动时,首先发送心跳数据包,在发送心跳数据包的同时心跳程序就会监控网络负载和主机负载;再根据当前的负载情况,计算心跳发送周期和心跳超时时间,进而进行全局同步处理,在全局范围内统一心跳发送周期和心跳超时时间;而在统一心跳发送周期和超时时间之后,就将按照新的时间数值进入发送心跳和检查心跳是否超时的过程,该过程将检查当前时刻以决定是否进行心跳发送和超时检查,与此同时,监控网络负载和主机负载的过程又开始执行了,从而进入下一个流水线。
申请人在联想商用机群的高可用系统中应用本发明方法进行了实施试验,实施例的试验是成功的,实现了发明目的。下面简要介绍该试验情况和有关参数的选择。
在试验中使用心跳传输时间作为唯一的表征网络负载和主机负载状况的监控参数,而且,该系统是计算连续100次的心跳传输时间的平均值作为监控参数,以保证监控数据的有效性与及时性。由于联想商用机群采用的是环状心跳结构,且心跳在环内做传递运动(心跳数据包在组成心跳环的每个结点间传递),因此负载监控结点通过测算心跳在环内传递一周所需的时间来计算当前时刻的心跳传输时间。在计算心跳发送周期时,考虑到系统对最大结点故障发现时间的期望目标是小于0.5秒,经过测试与估算,最终将计算公式的系数F定为5。
对心跳发送周期与超时时间的同步处理是采用分布式方法,即监控结点只将作为计算基础的心跳传输时间发送给其它结点,由各个结点按照相同的计算公式在本地进行计算。在具体分发方式上采用信息捎带的技术,即将心跳传输时间放入特定的心跳数据包中,该特定的心跳包就是序号(heartbeat no)能够被100整除的心跳。也就是每一次计算出来的心跳发送周期与心跳超时时间的有效期是心跳序号在(heartbeat_no+1)到(heartbeat_no+100)之间的连续100个心跳。

Claims (10)

1.一种基于网络和主机负载的变速心跳机制的实现方法,其特征在于:利用网络系统中的信息参数,建立一种能够感知当前网络和主机的负载状况、并根据该负载状况实时地动态调节心跳发送周期的变速心跳机制,以便在不过多占用系统资源的情况下加快结点故障发现时间;即该变速心跳机制中的心跳发送周期能够随着网络和主机负载的变化而作实时调整,从而使心跳发送周期和系统负载二者之间能够达到一个比较合理的平衡点;该方法包括下列操作步骤:
(1)监控网络负载和主机负载:在心跳程序发送本地心跳的同时,测算能够表征网络负载和主机负载状况的系统参数-心跳传输时间,实时监控当前的网络和主机的综合负载状况;
(2)计算心跳发送周期和心跳超时时间,并对该两个参数作全局的同步处理:在获知心跳传输时间后,相当于掌握了当前的网络和主机的综合负载状况,进而计算整个机群范围内的全局统一的心跳发送周期与心跳超时时间;
(3)发送心跳和检查心跳是否超时:心跳程序在接收到更改后的新的心跳发送周期和心跳超时时间的命令后,按照新的心跳发送周期定时向外发送本地心跳,并根据新的心跳超时时间检查其它结点的心跳是否超时。
2.根据权利要求1所述的方法,其特征在于:所述网络系统中的信息参数是心跳传输时间,或者是能够表征当前网络和主机的负载状况的其它系统参数。
3.根据权利要求1所述的方法,其特征在于:所述三个操作步骤是按照流水线的工作方式周而复始和相互衔接地循环执行,其中前一个周期的“发送心跳与检查心跳是否超时”的执行过程是与后一个周期的“监控网络负载和主机负载”的执行过程在时间上是重叠的。
4.根据权利要求1所述的方法,其特征在于:所述步骤(1)中网络系统为网状结构时的心跳传输时间的测算方法是由设定的监控结点向所有结点定时发送测试包,各个被测结点在收到该测试包后立即发送反馈包,将接收反馈包与发送测试包的时间戳相减的差值除以2,得到该监控结点与某个目标结点的心跳传输时间,所有目标结点的心跳传输时间的算术平均值就是当前时刻的心跳传输时间。
5.根据权利要求1或4所述的方法,其特征在于:所述步骤(1)中网络系统为环状结构时的心跳传输时间的测算方法可以是与网状结构相同的方法:由设定的监控结点向所有结点定时发送测试包,各个被测结点在收到该测试包后立即发送反馈包,将接收反馈包与发送测试包的时间戳相减的差值除以2,得到该监控结点与某个目标结点的心跳传输时间,所有目标结点的心跳传输时间的算术平均值就是当前时刻的心跳传输时间;也可以采用另一种方法:监控结点只向其在环中的下游结点发送测试包,每个结点在收到测试包后立即将其转发给自己的下游结点,最终测试包再次回到监控结点,将测试包的接收时间戳减去发送时间戳的差值除以结点数量的商就是当前时刻的心跳传输时间。
6.根据权利要求1所述的方法,其特征在于:所述步骤(1)的监控过程中采用UDP传输协议传送心跳测试包,不能保证发送与接收的心跳测试包顺序相同时,应对心跳测试包进行编号排序,避免出现混乱和导致数据测算的错误;其中心跳测试包的序号是由心跳发起者建立和维护。
7.根据权利要求1所述的方法,其特征在于:所述步骤(1)的监控过程中要滤除网络负载的瞬时峰值,即在监控过程内应连续多次测算目标参数,并以该段时间内的平均值作为调整心跳速率的依据。
8.根据权利要求1所述的方法,其特征在于:所述步骤(1)的心跳传输时间是连续计算的多个心跳传输时间的平均值,以保证该数据的有效性和及时性。
9.根据权利要求1所述的方法,其特征在于:所述步骤(2)中,先计算心跳发送周期:心跳发送周期=F×心跳传输时间,式中,F表示线性或非线性的函数关系,即心跳发送周期是以心跳传输时间为变量的函数值;然后计算心跳超时时间:心跳超时时间=心跳发送周期+心跳传输时间;再对心跳发送周期与心跳超时时间作全局的同步处理,即在机群范围内形成全局统一的心跳发送周期与心跳超时时间。
10.根据权利要求9所述的方法,其特征在于:所述在机群范围内形成全局统一的心跳发送周期与心跳超时时间有两种方法:一是网络监控结点直接将心跳传输时间广播通知给所有机群结点,所有结点再按照相同的算法进行分布式的计算后,得到相同的心跳发送周期和心跳超时时间;二是网络监控结点先在本地计算心跳发送周期和心跳超时时间,然后将该两个参数广播发送给所有机群结点。
CNB2004100057913A 2004-02-27 2004-02-27 基于网络和主机负载的变速心跳机制的实现方法 Expired - Fee Related CN100367714C (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CNB2004100057913A CN100367714C (zh) 2004-02-27 2004-02-27 基于网络和主机负载的变速心跳机制的实现方法

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CNB2004100057913A CN100367714C (zh) 2004-02-27 2004-02-27 基于网络和主机负载的变速心跳机制的实现方法

Publications (2)

Publication Number Publication Date
CN1661968A CN1661968A (zh) 2005-08-31
CN100367714C true CN100367714C (zh) 2008-02-06

Family

ID=35011057

Family Applications (1)

Application Number Title Priority Date Filing Date
CNB2004100057913A Expired - Fee Related CN100367714C (zh) 2004-02-27 2004-02-27 基于网络和主机负载的变速心跳机制的实现方法

Country Status (1)

Country Link
CN (1) CN100367714C (zh)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2010054521A1 (zh) * 2008-11-11 2010-05-20 中兴通讯股份有限公司 链路维持方法和系统、以及光线路终端

Families Citing this family (28)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
GB0526029D0 (en) * 2005-12-21 2006-02-01 Nokia Corp Managing connections in a wireless communications network
CN101115313B (zh) * 2007-08-23 2011-01-19 中兴通讯股份有限公司 一种软心跳检测方法及系统
JP4984162B2 (ja) * 2008-01-17 2012-07-25 日本電気株式会社 監視制御方法および監視制御装置
EP2487867B1 (de) * 2011-02-09 2014-01-01 Siemens Aktiengesellschaft Lebenszeichenüberwachung
CN102843250B (zh) * 2011-06-21 2018-01-19 中兴通讯股份有限公司 一种心跳周期的自适应方法和装置
CN102291276B (zh) * 2011-08-01 2014-05-14 浪潮(北京)电子信息产业有限公司 网络系统中心跳信息的调整方法和系统
US9473238B2 (en) * 2011-08-22 2016-10-18 Xieon Networks S.A.R.L. Method and device for processing a communication network
CN102958099B (zh) * 2012-10-30 2015-10-21 北京创毅讯联科技股份有限公司 机器类通信中非连续接收周期的处理方法和网络侧设备
CN103117901B (zh) * 2013-02-01 2016-06-15 华为技术有限公司 一种分布式心跳检测方法、装置及系统
CN104918267B (zh) * 2014-03-12 2018-07-20 国家电网公司 一种无线传感器网络的心跳检测方法和装置
WO2016065552A1 (zh) 2014-10-29 2016-05-06 华为技术有限公司 一种心跳周期的设置方法及终端
CN104506392B (zh) * 2015-01-04 2018-10-30 华为技术有限公司 一种宕机检测方法及设备
CN105897813A (zh) * 2015-06-10 2016-08-24 乐视致新电子科技(天津)有限公司 心跳消息发送方法、接收方法及装置
CN105812181B (zh) * 2016-03-10 2019-08-02 同济大学 一种面向高速磁浮交通仿真的分布式通信系统维护方法
CN107959697B (zh) * 2016-10-17 2019-12-06 腾讯科技(深圳)有限公司 大数据离线计算中的源数据采集方法和系统
CN108268352A (zh) * 2016-12-30 2018-07-10 中兴通讯股份有限公司 接口卡状态检测方法、接口卡及线卡
CN107257497A (zh) * 2017-06-16 2017-10-17 成都市知用科技有限公司 一种能够跨平台浏览器的视频直播方法
CN109905259B (zh) * 2017-12-08 2022-02-15 中国电信股份有限公司 通信连接维持方法、系统和相关设备
CN108173709B (zh) * 2017-12-19 2021-11-12 广州视源电子科技股份有限公司 保活长连接方法、装置、终端设备及存储介质
CN109327346A (zh) * 2018-07-27 2019-02-12 上海电享信息科技有限公司 一种客户端心跳频率动态控制方法及系统
CN110875859B (zh) * 2018-09-04 2022-11-08 北京京东尚科信息技术有限公司 一种监测网络连接异常的方法和系统
CN110545315B (zh) * 2019-08-14 2022-07-05 长沙理工大学 基于数据块数量变化以及带宽变化的心跳间隔调整方法
CN111698132B (zh) * 2020-06-12 2022-03-01 北京字节跳动网络技术有限公司 用于控制集群中心跳事件的方法、装置、设备和介质
CN111679931B (zh) * 2020-06-12 2023-11-24 恒为科技(上海)股份有限公司 一种心跳包的发送方法及待测系统
CN112331133A (zh) * 2020-08-24 2021-02-05 浙江宇视科技有限公司 一种led屏的显示控制方法、装置、介质及系统
CN112235151B (zh) * 2020-08-27 2022-02-11 北京计算机技术及应用研究所 一种基于时间序列预测的自适应心跳检测方法
CN112540896B (zh) * 2020-12-08 2024-04-19 南京天朗防务科技有限公司 一种VxWorks程序自动判别和运行方法
CN113110124B (zh) * 2021-03-11 2022-08-19 上海新时达电气股份有限公司 双mcu控制方法及控制系统

Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN1149343A (zh) * 1994-04-05 1997-05-07 英特尔公司 监视与控制网络中的程序的方法与装置
US20020152431A1 (en) * 2001-04-13 2002-10-17 Fleming Roger A. System and method for detecting process and network failures in a distributed system
WO2002099447A1 (en) * 2001-06-02 2002-12-12 Redback Networks Inc. A method and apparatus for restart communication between network elements
CN1423197A (zh) * 2002-12-16 2003-06-11 华中科技大学 基于多tcp连接映像的高可用系统
US6651242B1 (en) * 1999-12-14 2003-11-18 Novell, Inc. High performance computing system for distributed applications over a computer

Patent Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN1149343A (zh) * 1994-04-05 1997-05-07 英特尔公司 监视与控制网络中的程序的方法与装置
US6651242B1 (en) * 1999-12-14 2003-11-18 Novell, Inc. High performance computing system for distributed applications over a computer
US20020152431A1 (en) * 2001-04-13 2002-10-17 Fleming Roger A. System and method for detecting process and network failures in a distributed system
WO2002099447A1 (en) * 2001-06-02 2002-12-12 Redback Networks Inc. A method and apparatus for restart communication between network elements
CN1423197A (zh) * 2002-12-16 2003-06-11 华中科技大学 基于多tcp连接映像的高可用系统

Non-Patent Citations (3)

* Cited by examiner, † Cited by third party
Title
Dynamic polling scheme based on time variationofnetworkmanagement information values. Yoshihara, K. Sugiyama, K. Horiuchi, H. Obana, S.Integrated Network Management, 1999. Distributed Management for the Networked Millennium. Proceedings of the Sixth IFIP/IEEE International Symposium on. 1999 *
Linux高可用集群心跳机制研究. 谢斌,高扬.计算机工程与应用,第1期. 2004 *
Rap-rate adaptive polling for network managementapplications. P.Moghe and M.Evangelista.Network Operations and Management Symposium,In Proc.of IEEE NOMS'98,Vol.2 . 1998 *

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2010054521A1 (zh) * 2008-11-11 2010-05-20 中兴通讯股份有限公司 链路维持方法和系统、以及光线路终端

Also Published As

Publication number Publication date
CN1661968A (zh) 2005-08-31

Similar Documents

Publication Publication Date Title
CN100367714C (zh) 基于网络和主机负载的变速心跳机制的实现方法
CA3139533C (en) Rate-optimized congestion management
CN102415059B (zh) 总线控制装置
JP6450835B2 (ja) エネルギーセービング制御方法、管理サーバ及びネットワークデバイス
Meng et al. State monitoring in cloud datacenters
CN109905259A (zh) 通信连接维持方法、系统和相关设备
CN101227340B (zh) 嵌入式网络质量探测装置和方法及其评估系统和评估方法
CN105245381B (zh) 云服务器宕机监控迁移系统和方法
US11144423B2 (en) Dynamic management of monitoring tasks in a cloud environment
CN103416022B (zh) 分布式路由器/交换机架构中的服务中吞吐量测试方法和系统
US9350669B2 (en) Network apparatus, performance control method, and network system
CN110492967A (zh) 一种时间同步方法、中继设备及装置
CN108632106A (zh) 监控服务设备的系统
CN112003768A (zh) 多节点测试系统及用于执行多节点测试的方法
CN105516658A (zh) 一种监控设备控制方法及装置
EP3329407A1 (en) Application centric network experience monitoring
CN109639490A (zh) 一种宕机通知方法及装置
CN109787860A (zh) 双向转发链路检测方法及装置
Dadgar et al. Lifeguard: Local health awareness for more accurate failure detection
Awad et al. On the need for passive monitoring in sensor networks
Misa et al. Revisiting network telemetry in coin: A case for runtime programmability
US9930627B2 (en) Metered interface
KR20160005253A (ko) 소프트웨어 정의 네트워크에서 제어 장치 및 그 동작 방법
JP2010238101A (ja) 負荷分散装置、負荷分散方法、負荷分散プログラム及び負荷分散システム
CN116527102B (zh) 卫星测运控系统、方法及电子设备

Legal Events

Date Code Title Description
C06 Publication
PB01 Publication
C10 Entry into substantive examination
SE01 Entry into force of request for substantive examination
C14 Grant of patent or utility model
GR01 Patent grant
CF01 Termination of patent right due to non-payment of annual fee
CF01 Termination of patent right due to non-payment of annual fee

Granted publication date: 20080206

Termination date: 20210227