【技术实现步骤摘要】
本专利技术涉及网络通信技术,尤其涉及一种心跳检测方法及网络设备。
技术介绍
在网络环境中,常常需要通过自动化的方式来诊断设备的工作状态;当被检测设备发生故障,则检测设备可以自行采取应对措施,以确保网络的畅通。其中,心跳检测机制是一种最常见的检测设备工作状态的方法,其通过检测被检测设备发出的心跳报文来判断被检测设备的工作状态。心跳检测机制有两种实现方式一种是被检测设备定时发送心跳检测报文,检测设备通过捕捉心跳检测报文来判断被检测设备是否处于工作状态。如果检测设备在规定时间内未捕捉到心跳检测报文,就判定被检测设备发生故障。另一种是检测设备发送心跳请求报文给被检测设备,被检测设备在接收到心跳请求报文后,向检测设备返回心跳应答报文,以告知检测设备其处于工作状态。如果检测设备在规定时间内未接收到被检测设备返回的心跳应答报文,则判定被检测设备发生故障。对于第一种方式在被检测设备因业务过载导致心跳进程无法及时发出心跳检测报文,例如原定IOOms发送一次心跳检测报文,因为心跳进程得不到调度而出现300ms发送一次心跳检测报文的情况下,或者,在被检测设备的中央处理器(Central Processing Unit ;简称为CPU)遭受攻击,由于大量报文涌入被检测设备导致心跳检测报文被丢失的情况下,如果检测设备无法在规定时间内捕捉到心跳检测报文,会将被检测设备判定为发生故障,发生误判的现象。对于第二种方式在被检测设备因业务过载导致心跳应答报文无法及时发出的情况下,或者在检测设备因业务过载导致心跳请求报文无法被及时发出的情况下,又或者,在检测设备因CPU遭受攻击而出现心跳请 ...
【技术保护点】
1.一种心跳检测方法,其特征在于,包括:当检测设备向被检测设备发送心跳请求报文时,判断具有指定窗口长度的滑动窗口中是否存在存储有应答标识的窗格,所述应答标识是从所述被检测设备返回的第一心跳应答报文中获取并存储到相应的窗格中的;若判断结果为是,所述检测设备判定所述被检测设备未死机,同时向所述被检测设备发送携带有时间戳的所述心跳请求报文,将所述滑动窗口向前滑动一个格,并将所述时间戳存储到刚滑入的窗格中;若判断结果为否,所述检测设备判定所述被检测设备死机。
【技术特征摘要】
1.一种心跳检测方法,其特征在于,包括当检测设备向被检测设备发送心跳请求报文时,判断具有指定窗口长度的滑动窗口中是否存在存储有应答标识的窗格,所述应答标识是从所述被检测设备返回的第一心跳应答报文中获取并存储到相应的窗格中的;若判断结果为是,所述检测设备判定所述被检测设备未死机,同时向所述被检测设备发送携带有时间戳的所述心跳请求报文,将所述滑动窗口向前滑动一个格,并将所述时间戳存储到刚滑入的窗格中;若判断结果为否,所述检测设备判定所述被检测设备死机。2.根据权利要求1所述的心跳检测方法,其特征在于,还包括所述被检测设备根据接收到的所述心跳请求报文,生成所述第一心跳应答报文,并将所述第一心跳应答报文发送给所述检测设备,所述第一心跳应答报文包括所述应答标识和所述心跳请求报文中的时间戳;所述检测设备判断所述第一心跳应答报文中的时间戳是否存在于所述滑动窗口中;若判断结果为是,将所述第一心跳应答报文中的所述应答标识存储到所述时间戳对应的窗格中;若判断结果为否,将所述第一心跳应答报文直接丢弃。3.根据权利要求2所述的心跳检测方法,其特征在于,所述被检测设备根据接收到的所述心跳请求报文,生成所述第一心跳应答报文包括所述被检测设备将所述心跳请求报文的源地址和目的地进行调换,并添加所述应答标识后生成所述第一心跳应答报文。4.根据权利要求2或3所述的心跳检测方法,其特征在于,所述被检测设备接收到所述心跳请求报文时,产生第一中断请求;所述被检测设备的中央处理器CPU根据所述第一中断请求调用第一中断处理程序, 由所述第一中断处理程序执行根据接收到的所述心跳请求报文,生成所述第一心跳应答报文,并将所述第一心跳应答报文发送给所述检测设备的操作;所述检测设备接收到所述第一心跳应答报文时,产生第二中断请求;所述检测设备的CPU根据所述第二中断请求调用第二中断处理程序,由所述第二中断处理程序执行判断所述第一心跳应答报文中的时间戳是否存在于所述滑动窗口中,以及在判断结果为是时,将所述第一心跳应答报文中的所述应答标识存储到所述时间戳对应的窗格中;以及在判断结果为否时,将所述第一心跳请求报文直接丢弃的操作。5.根据权利要求4所述的心跳检测方法,其特征在于,所述被检测设备在根据接收到的所述心跳请求报文产生所述第一中断请求的同时,将所述心跳请求报文提交给处理所述心跳请求报文的心跳响应进程,所述心跳响应进程根据所述心跳请求报文,生成第二心跳应答报文,并将所述第二心跳应答报文发送给所述检测设备;所述检测设备根据接收所述第二心跳应答报文的情况,判断所述被检测设备的CPU的繁忙程度。6.根据权利要求5所述的心跳检测方法,其特征在于,所述检测设备根据接收所述第二心跳应答报文的情况,判断所述被检测设备的CPU的繁忙程度包括所述检测设备判断是否接收到所述第二心跳应答报文;如果判断结果为否,所述检测设备判定所述被检测设备的CPU处于满负荷状态;如果判断结果为是,所述检测设备判定所述被检测设备的CPU处于非满负荷状态。7.根据权利要求6所述的心跳检测方法,其特征在于,还包括当所述检测设备接收到所述第二心跳应答报文时,判断接收到所述第二心跳应答报文和接收到所述第一心跳应答报文的时间差是否小于预设时间差门限;若判断结果为是,所述检测设备判定所述被检测设备的CPU处于所述非满负荷状态中的轻负荷状态;如判断结果为否,所述检测设备判定所述被检测设备的CPU处于所述非满负荷状态中的重负荷状态。8.根据权利要求1-7任一项所述的心跳检测方法,其特征在于,所述检测设备与所述被检测设备通过专用网络线路连接。9.一种网络设备,其特征在于,包括第一判断模块,用于在向被检测设备发送心跳请求报文时,判断具有指定窗口长度的滑动窗口中是否存在存储有应答标识的窗格,所述应答标识是从所述被检测设备返回的第一心跳应答报文中获取并存储到相应的窗格中的;判定处理模块,用于在所述第一判断模块的判断结果为是时,判定所述被检测设备未死机,同时向所述被检测设备发送...
【专利技术属性】
技术研发人员:马云莺,
申请(专利权)人:北京星网锐捷网络技术有限公司,
类型:发明
国别省市:11
还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。