CN105426276A - 双控存储控制器的故障检测方法及存储控制器 - Google Patents

双控存储控制器的故障检测方法及存储控制器 Download PDF

Info

Publication number
CN105426276A
CN105426276A CN201510740156.8A CN201510740156A CN105426276A CN 105426276 A CN105426276 A CN 105426276A CN 201510740156 A CN201510740156 A CN 201510740156A CN 105426276 A CN105426276 A CN 105426276A
Authority
CN
China
Prior art keywords
memory controller
socket
opposite end
heartbeat signal
timer1
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.)
Pending
Application number
CN201510740156.8A
Other languages
English (en)
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.)
Shandong Chaoyue Numerical Control Electronics Co Ltd
Original Assignee
Shandong Chaoyue Numerical Control Electronics Co 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 Shandong Chaoyue Numerical Control Electronics Co Ltd filed Critical Shandong Chaoyue Numerical Control Electronics Co Ltd
Priority to CN201510740156.8A priority Critical patent/CN105426276A/zh
Publication of CN105426276A publication Critical patent/CN105426276A/zh
Pending legal-status Critical Current

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/22Detection or location of defective computer hardware by testing during standby operation or during idle time, e.g. start-up testing
    • G06F11/2273Test methods

Landscapes

  • Engineering & Computer Science (AREA)
  • General Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Computer Hardware Design (AREA)
  • Quality & Reliability (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Debugging And Monitoring (AREA)

Abstract

本发明提供了一种双控存储控制器的故障检测方法及存储控制器,其中,所述方法包括:预先设置目标参数、套接字Socket以及Socket向设置在对端存储控制器上的Socket发送心跳信号的信号周期;根据所述信号周期,利用Socket向设置在对端存储控制器上的Socket发送心跳信号;以及,利用Socket接收设置在对端存储控制器上的Socket根据所述信号周期发送的心跳信号;判断连续未接收到对端存储控制器发送的心跳信号的次数是否不小于所述目标参数;如果是,则确定对端存储控制器发生故障。通过本发明的技术方案,可检测出故障存储控制器。

Description

双控存储控制器的故障检测方法及存储控制器
技术领域
本发明涉及计算机技术领域,特别涉及一种双控存储控制器的故障检测方法及存储控制器。
背景技术
随着计算机信息技术的广泛应用和发展,计算机存储服务的可靠性要求也越来越高。
目前,为了提高计算机存储服务的可靠性,防止IO数据输入过程中存储控制器发生故障导致处理过程中断,可利用双控存储控制器来完成相应的存储服务,即通过两个存储控制器来完成相应的存储服务,其中一个存储控制器故障时,另一个存储控制器可接管故障存储控制器的工作,即将故障存储控制器的LU(logicunit,逻辑单元)上的IO数据同步至另一个存储控制器上以继续执行相应的存储服务;因此,如何检测出双控存储控制器是否发生故障成为亟待解决的问题。
发明内容
有鉴于此,本发明提供了一种双控存储控制器的故障检测方法及存储控制器,可检测出故障存储控制器。
第一方面,本发明提供了一种双控存储控制器的故障检测方法,应用于本端存储控制器,包括:
S0:预先设置目标参数、套接字Socket以及Socket向设置在对端存储控制器上的Socket发送心跳信号的信号周期;
S1:根据所述信号周期,利用Socket向设置在对端存储控制器上的Socket发送心跳信号;以及,利用Socket接收设置在对端存储控制器上的Socket根据所述信号周期发送的心跳信号;
S2:判断连续未接收到对端存储控制器发送的心跳信号的次数是否不小于所述目标参数;如果是,则确定对端存储控制器发生故障。
优选地,进一步包括:设置计时器timer1;其中,所述timer1用于倒计时,当timer1为0时,触发Socket向设置在对端存储控制器上的Socket发送心跳信号;
所述设置Socket向设置在对端存储控制器上的Socket发送心跳信号的信号周期,包括:
将timer1初始化为3s;
和/或,
所述目标参数包括:10。
优选地,进一步包括:设置响应变量的初始值为0,当Socket接收到设置在对端存储控制器上的Socket发送的心跳信号时,将响应变量置为1,否则,保持响应变量的初始值不变;
进一步包括:当timer1为0时,判断响应变量的值,若响应变量的值为1,则复位timer1,并将Socket未接收到对端存储控制器发送的心跳信号的次数置为0,以及将响应变量置为初始值0;否则,复位timer1,并将Socket未接收到对端存储控制器发送的心跳信号的次数加1。
优选地,所述将Socket未接收到对端存储控制器发送的心跳信号的次数加1之前,进一步包括:
判断Socket未接收到对端存储控制器发送的心跳信号的次数是否小于目标参数,如果是,则执行所述将Socket未接收到对端存储控制器发送的心跳信号的次数加1,否则执行所述复位timer1。
优选地,进一步包括:
当Socket接收到设置在对端存储控制器上的Socket发送的心跳信号时,复位timer1,并将Socket未接收到对端存储控制器发送的心跳信号的次数置为0。
第二方面,本发明提供了一种存储控制器,包括:
设置单元,用于预先设置目标参数、套接字Socket以及Socket向设置在对端存储控制器上的Socket发送心跳信号的信号周期;
Socket,用于根据所述信号周期,向设置在对端存储控制器上的Socket发送心跳信号;以及,接收设置在对端存储控制器上的Socket根据所述信号周期发送的心跳信号;
第一处理单元,用于判断连续未接收到对端存储控制器发送的心跳信号的次数是否不小于所述目标参数;如果是,则确定对端存储控制器发生故障。
优选地,
所述设置单元,进一步用于设置计时器timer1;其中,所述timer1用于倒计时,当timer1为0时,触发Socket向设置在对端存储控制器上的Socket发送心跳信号;
以及,
所述设置单元,进一步用于将timer1初始化为3s;
和/或,
所述设置单元,进一步用于设置目标参数为10。
优选地,
所述设置单元,进一步用于设置响应变量的初始值为0,当Socket接收到设置在对端存储控制器上的Socket发送的心跳信号时,将响应变量置为1,否则,保持响应变量的初始值不变;
还包括:
第二处理单元,用于当timer1为0时,判断响应变量的值,若响应变量的值为1,则复位timer1,并将Socket未接收到对端存储控制器发送的心跳信号的次数置为0,以及将响应变量置为初始值0;否则,复位timer1,并将Socket未接收到对端存储控制器发送的心跳信号的次数加1。
优选地,进一步包括:
判断单元,用于判断Socket未接收到对端存储控制器发送的心跳信号的次数是否小于目标参数,如果是,则触发第二处理单元执行所述将Socket未接收到对端存储控制器发送的心跳信号的次数加1,否则触发所述第二处理单元执行所述复位timer1。
优选地,还包括:
第三处理单元,用于当Socket接收到设置在对端存储控制器上的Socket发送的心跳信号时,复位timer1,并将Socket未接收到对端存储控制器发送的心跳信号的次数置为0。
本发明提供了一种双控存储控制器的故障检测方法及存储控制器,通过在本端存储控制器上设置Socket,以及预先设置目标参数和Socket向设置在对端存储控制器上的Socket发送心跳信号的信号周期,设置的Socket可根据设置的信号周期向对端存储控制器上的Socket发送心跳信号以及接收对端存储控制器上的Socket发送的心跳信号,如果本端存储控制器上的Socket未接收到对端存储控制器上的Socket发送的心跳信号的次数不小于预先设置的目标参数时,则可确定对端存储控制器发生故障;即检测出故障存储控制器。
附图说明
为了更清楚地说明本发明实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
图1是本发明一实施例提供的一种双控存储控制器的故障检测方法的流程图;
图2是本发明一实施例提供的另一种双控存储控制器的故障检测方法的流程图;
图3是本发明一实施例提供的一种存储控制器的结构图;
图4是本发明一实施例提供的另一种存储控制器的结构图;
图5是本发明一实施例提供的又一种存储控制器的结构图。
具体实施方式
为使本发明实施例的目的、技术方案和优点更加清楚,下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例是本发明一部分实施例,而不是全部的实施例,基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动的前提下所获得的所有其他实施例,都属于本发明保护的范围。
如图1所示,本发明实施例提供了一种双控存储器的故障检测方法,应用于本段存储控制器,该方法可以包括以下步骤:
S0:预先设置目标参数、套接字Socket以及Socket向设置在对端存储控制器上的Socket发送心跳信号的信号周期;
S1:根据所述信号周期,利用Socket向设置在对端存储控制器上的Socket发送心跳信号;以及,利用Socket接收设置在对端存储控制器上的Socket根据所述信号周期发送的心跳信号;
S2:判断连续未接收到对端存储控制器发送的心跳信号的次数是否不小于所述目标参数;如果是,则确定对端存储控制器发生故障。
本发明一实施例中,通过在本端存储控制器上设置Socket,以及预先设置目标参数和Socket向设置在对端存储控制器上的Socket发送心跳信号的信号周期,设置的Socket可根据设置的信号周期向对端存储控制器上的Socket发送心跳信号以及接收对端存储控制器上的Socket发送的心跳信号,如果本端存储控制器上的Socket未接收到对端存储控制器上的Socket发送的心跳信号的次数不小于预先设置的目标参数时,则可确定对端存储控制器发生故障;即检测出双控存储控制器是否发生故障。
进一步的,为了实现根据设置的信号周期向对端存储控制器上的Socket发送心跳信号,本发明一个优选实施例中,进一步包括:设置计时器timer1;其中,所述timer1用于倒计时,当timer1为0时,触发Socket向设置在对端存储控制器上的Socket发送心跳信号;
所述设置Socket向设置在对端存储控制器上的Socket发送心跳信号的信号周期,包括:
将timer1初始化为3s;
和/或,
所述目标参数包括:10。
需要说明的是,本发明实施例中所述的信号周期和目标参数的值仅为参考值,在可能实现的情况下,可结合实际业务需求将信号周期和目标参数设置为其他参考值。
进一步的,为了判断本段存储控制器是否接收到对端存储区控制器发送的心跳信号,同时,为了获取本端存储控制器未接收到对端存储控制器发送的心跳信号的次数,以作为判断对端存储控制器是否发生故障的依据;本发明一个优选实施例中,进一步包括:设置响应变量的初始值为0,当Socket接收到设置在对端存储控制器上的Socket发送的心跳信号时,将响应变量置为1,否则,保持响应变量的初始值不变;
进一步包括:当timer1为0时,判断响应变量的值,若响应变量的值为1,则复位timer1,并将Socket未接收到对端存储控制器发送的心跳信号的次数置为0,以及将响应变量置为初始值0;否则,复位timer1,并将Socket未接收到对端存储控制器发送的心跳信号的次数加1。
进一步的,为了防止数值过大导致数据溢出,本发明一个优选实施例中,所述将Socket未接收到对端存储控制器发送的心跳信号的次数加1之前,进一步包括:
判断Socket未接收到对端存储控制器发送的心跳信号的次数是否小于目标参数,如果是,则执行所述将Socket未接收到对端存储控制器发送的心跳信号的次数加1,否则执行所述复位timer1。
进一步的,为了确保timer1与设置在对端的存储控制器上的计时器同步,本发明一个优选实施例中,进一步包括:
当Socket接收到设置在对端存储控制器上的Socket发送的心跳信号时,复位timer1,并将Socket未接收到对端存储控制器发送的心跳信号的次数置为0。
为使本发明的目的、技术方案和优点更加清楚,下面结合附图及具体实施例对本发明作进一步地详细描述。
如图2所示,本发明实施例提供了一种双控存储控制器的故障检测方法,以存储控制器A检测存储控制器B是否发生故障为例,该方法可以包括以下步骤:
步骤201,在存储控制器A和存储控制器B上分别设置Socket。
本发明一实施例中,可通过设置心跳线程监控双控存储控制器的工作状态,即分别在存储控制器A和存储控制器B上设置Socket,使存储控制器A和存储控制器B之间可通过设置的Socket进行发送及接收心跳信号,并将是否接收到对端存储控制器上的Socket发送的心跳信号作为判断对端存储控制器是否发生故障的依据。
需要说明的是,心跳信号为周期性信号,当存储控制器A和存储控制器B在每一个信号周期内均能收到对应的心跳信号时,即表明对应的存储控制器处于正常工作状态。
步骤202,在存储控制器A上设置计时器timer1,在存储控制器B上设置计时器timer2。
本发明一实施例中,timer1和timer2均用于倒计时,当timer1为零时,触发存储控制器A上的Socket向存储控制器B上的Socket发送心跳信号;当timer2为零时,触发存储控制器B上的Socket向存储控制器A上的Socket发送心跳信号。
步骤203,初始化timer1和timer2,以及设定目标参数。
本发明实施例中,初始化timer1和timer2,即设定存储控制器A和存储控制器B间相互发送心跳信号的信号周期;在一种可能实现的方式中,可以将timer1和timer2的初始值设置为3s,当计时器的值从3s变为0时,即可触发对应的存储控制器上的Socket向另一个存储控制器上的Socket发送心跳信号。
本发明一实施例中,目标参数为判断一个存储控制器是否发生故障的标准值,这里可以将该目标参数设置为10,当控制器A连续未接收到控制器B发送的心跳信号的次数不小于10次时,即可确定控制器B发生故障;听过设置目标参数,可避免存储控制器B由于业务量较大而进入假死状态,不能及时向存储控制器A发送心跳信号时被错误的确认为发生故障。
需要说明的是,timer1和timer2的初始值以及目标参数仅为参考值,可以结合实际业务需求设置为不同大小的初始值以及目标参数。
步骤204,设置响应变量的初始值为0。
步骤205,判断响应变量是否为1,如果是,则执行步骤210,否则,执行步骤206。
步骤204和步骤205中,通过设置响应变量的初始值为0,当存储控制器A接收到存储控制器B发送的心跳信号时,即可将响应变量置为1,如果未接收到心跳信号,则保持初始值为0,以便当timer为0时,可通过判断响应变量的不同来判断存储控制器A是否接收到存储控制器B发送的心跳信号。
需要说明的是,响应变量0和相应变量1仅用于标识存储控制器A是否接收到存储控制器B发送的心跳信号,在可能实现的情况下,也可以设置其他形式的响应变量;比如:响应变量初始值为m,当存储控制器A接收到存储控制器B发送的心跳信号时,将相应变量置为n。
需要说明的是,在另一种可能实现的方式中,为了确保存储控制器A和存储控制器B上的计时器同步,可在存储控制器A上的Socket接收到存储控制器B上的Socket发送的心跳信号时,复位存储控制器A上的计时器timer1。
步骤206,判断存储控制器A未接收到存储控制器B发送的心跳信号的次数是否小于目标参数,如果是,则执行步骤207;否则执行步骤209。
本发明一实施例中,当存储控制器A未接收到存储控制器B发送的心跳信号的次数不小于预先设定的目标参数时,即可确定存储控制器B发生故障,这时,为了防止数值过大发生数据溢出,并不会增加存储控制器A未接收到存储控制器B发送的心跳信号的次数;反之,当存储控制器A未接收到存储控制器B发送的心跳信号的次数小于目标参数时,则需要执行将存储控制器A未接收到存储控制器B发送的心跳信号的次数加1,以作为后续过程中判断存储控制器B是否发生故障的参考值。
步骤207,将存储控制器A上的Socket未接收到存储控制器B上的Socket发送的心跳信号的次数加1。
步骤208,判断存储控制器A未接收到存储控制器B发送的心跳的次数是否等于目标参数。
本发明一实施例中,当存储控制器A连续未接收到存储控制器B发送的心跳信号的次数达到预先设定的目标参数时,即可确定存储控制器B发生故障。
步骤209,确定存储控制器B发生故障。
本发明一实施例中,确定存储控制器B发生故障后,可通过存储控制器A接管存储控制器B的全部工作,即将存储控制器B的LU内全部数据同步至存储控制器A以继续执行相应的存储服务。
步骤210,将存储控制器A未接收到存储控制器B发送的心跳信号的次数置为0,以及将响应变量置为0。
本发明一实施例中,当存储控制器A上的Socket接收到存储控制器B上的Socket发送的心跳信号,即表明对端控制器在正常工作,存储控制器B在前几个信号周期内未向存储控制器B上的Socket发送心跳信号的原因可能是存储控制器B所处理的业务量较大,导致存储控制器B进入假死状态,无法向存储控制器A发送心跳信号;因此,可将存储控制器A上的Socket未接收到心跳信号的次数置为0。
可见,本发明实施例可避免本端存储控制器因工作量较大时导致不能向对端的存储控制器发送心跳信号而被错误的确定为发生故障的情况,提高双控存储控制器间故障检测的准确性。
211,复位timer1和timer2。
本发明一实施例中,每经过一个信号周期,当timer1和timer2为0时,都会触发对应的存储控制器上的Socket向对端的存储控制器上的Socket发送心跳信号,然后,需要复位timer1和timer2的初始值,以进入下一个信号周期,持续检测双控存储控制器的工作状态。
如图3所示,本发明实施例提供了一种双控存储控制器的故障检测装置,可以包括:
设置单元301,用于预先设置目标参数、套接字Socket以及Socket向设置在对端存储控制器上的Socket发送心跳信号的信号周期;
Socket302,用于根据所述信号周期,向设置在对端存储控制器上的Socket发送心跳信号;以及,接收设置在对端存储控制器上的Socket根据所述信号周期发送的心跳信号;
第一处理单元303,用于判断连续未接收到对端存储控制器发送的心跳信号的次数是否不小于所述目标参数;如果是,则确定对端存储控制器发生故障。
进一步的,为了实现根据设置的信号周期向对端存储控制器上的Socket发送心跳信号,在一种可能实现的方式中,所述设置单元301,进一步用于设置计时器timer1;其中,所述timer1用于倒计时,当timer1为0时,触发Socket向设置在对端存储控制器上的Socket发送心跳信号;
以及,
所述设置单元301,进一步用于将timer1初始化为3s;
和/或,
所述设置单元301,进一步用于设置目标参数为10。
进一步的,为了判断本段存储控制器是否接收到对端存储区控制器发送的心跳信号,同时,为了获取本端存储控制器未接收到对端存储控制器发送的心跳信号的次数,以作为判断对端存储控制器是否发生故障的依据,在一种可能实现的方式中,如图4所示,所述设置单元301,进一步用于设置响应变量的初始值为0,当Socket接收到设置在对端存储控制器上的Socket发送的心跳信号时,将响应变量置为1,否则,保持响应变量的初始值不变;
还包括:
第二处理单元401,用于当timer1为0时,判断响应变量的值,若响应变量的值为1,则复位timer1,并将Socket未接收到对端存储控制器发送的心跳信号的次数置为0,以及将响应变量置为初始值0;否则,复位timer1,并将Socket未接收到对端存储控制器发送的心跳信号的次数加1。
进一步的,为了防止数据过大而发生数据溢出,在一种可能实现的方式中,进一步包括:
判断单元402,用于判断Socket未接收到对端存储控制器发送的心跳信号的次数是否小于目标参数,如果是,则触发第二处理单元401执行所述将Socket未接收到对端存储控制器发送的心跳信号的次数加1,否则触发所述第二处理单元401执行所述复位timer1。
进一步的,为了使本端存储控制器上的计时器与对端存储控制器上的计时器同步,在一种可能实现的方式中,如图5所示,还包括:第三处理单元501,用于当Socket接收到设置在对端存储控制器上的Socket发送的心跳信号时,复位timer1,并将Socket未接收到对端存储控制器发送的心跳信号的次数置为0。
上述装置内的各单元之间的信息交互、执行过程等内容,由于与本发明方法实施例基于同一构思,具体内容可参见本发明方法实施例中的叙述,此处不再赘述。
本发明各个实施例至少具有如下有益效果:
1、通过在本端存储控制器上设置Socket,以及预先设置目标参数和
Socket向设置在对端存储控制器上的Socket发送心跳信号的信号周期,设置的Socket可根据设置的信号周期向对端存储控制器上的Socket发送心跳信号以及接收对端存储控制器上的Socket发送的心跳信号,如果本端存储控制器上的Socket未接收到对端存储控制器上的Socket发送的心跳信号的次数不小于预先设置的目标参数时,则可确定对端存储控制器发生故障;即检测出故障存储控制器。
2、通过在两个存储控制器上分别设置一个计时器以进行设定信号周期的倒计时,当本端存储控制器上的Socket接收到对端存储控制器上的Socket发送的心跳信号时,即复位本端存储控制器上的计时器,可使本段存储控制器上的计时器与对端存储控制器上的计时器保持同步。
3、当本段存储控制器上的Socket未接收到对端存储控制器上的Socket发送的心跳信号的次数达到额定次数时,比如10次时,则不对该值进行增加,可防止该值过大导致数据溢出。
4、通过判断本端存储控制器上的Socket在连续的信号周期内连续未接收到对端存储控制器上的Socket发送的心跳信号的次数是否不小于预先设定的目标参数,以确定对端存储控制器是否发生故障,可避免对端存储控制器因业务量较大而导致无法向本段存储控制器上的Socket发送心跳信号时,被错误的确定为发生故障,即提高了双控存储控制器间故障检测的准确性。
需要说明的是,在本文中,诸如第一和第二之类的关系术语仅仅用来将一个实体或者操作与另一个实体或操作区分开来,而不一定要求或者暗示这些实体或操作之间存在任何这种实际的关系或者顺序。而且,术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的过程、方法、物品或者设备不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种过程、方法、物品或者设备所固有的要素。在没有更多限制的情况下,由语句“包括一个……”限定的要素,并不排除在包括所述要素的过程、方法、物品或者设备中还存在另外的相同因素。
最后需要说明的是:以上所述仅为本发明的较佳实施例,仅用于说明本发明的技术方案,并非用于限定本发明的保护范围。凡在本发明的精神和原则之内所做的任何修改、等同替换、改进等,均包含在本发明的保护范围内。

Claims (10)

1.一种双控存储控制器的故障检测方法,其特征在于,应用于本端存储控制器,包括:预先设置目标参数、套接字Socket以及Socket向设置在对端存储控制器上的Socket发送心跳信号的信号周期;还包括:
根据所述信号周期,利用Socket向设置在对端存储控制器上的Socket发送心跳信号;以及,利用Socket接收设置在对端存储控制器上的Socket根据所述信号周期发送的心跳信号;
判断连续未接收到对端存储控制器发送的心跳信号的次数是否不小于所述目标参数;如果是,则确定对端存储控制器发生故障。
2.根据权利要求1所述双控存储控制器的故障检测方法,其特征在于,进一步包括:设置计时器timer1;其中,所述timer1用于倒计时,当timer1为0时,触发Socket向设置在对端存储控制器上的Socket发送心跳信号;
所述设置Socket向设置在对端存储控制器上的Socket发送心跳信号的信号周期,包括:
将timer1初始化为3s;
和/或,
所述目标参数包括:10。
3.根据权利要求2所述双控存储控制器的故障检测方法,其特征在于,
进一步包括:设置响应变量的初始值为0,当Socket接收到设置在对端存储控制器上的Socket发送的心跳信号时,将响应变量置为1,否则,保持响应变量的初始值不变;
进一步包括:当timer1为0时,判断响应变量的值,若响应变量的值为1,则复位timer1,并将Socket未接收到对端存储控制器发送的心跳信号的次数置为0,以及将响应变量置为初始值0;否则,复位timer1,并将Socket未接收到对端存储控制器发送的心跳信号的次数加1。
4.根据权利要求3所述双控存储控制器的故障检测方法,其特征在于,所述将Socket未接收到对端存储控制器发送的心跳信号的次数加1之前,进一步包括:
判断Socket未接收到对端存储控制器发送的心跳信号的次数是否小于目标参数,如果是,则执行所述将Socket未接收到对端存储控制器发送的心跳信号的次数加1,否则执行所述复位timer1。
5.根据权利要求2所述双控存储控制器的故障检测方法,其特征在于,进一步包括:
当Socket接收到设置在对端存储控制器上的Socket发送的心跳信号时,复位timer1,并将Socket未接收到对端存储控制器发送的心跳信号的次数置为0。
6.一种存储控制器,其特征在于,包括:
设置单元,用于预先设置目标参数、套接字Socket以及Socket向设置在对端存储控制器上的Socket发送心跳信号的信号周期;
Socket,用于根据所述信号周期,向设置在对端存储控制器上的Socket发送心跳信号;以及,接收设置在对端存储控制器上的Socket根据所述信号周期发送的心跳信号;
第一处理单元,用于判断连续未接收到对端存储控制器发送的心跳信号的次数是否不小于所述目标参数;如果是,则确定对端存储控制器发生故障。
7.根据权利要求6所述的存储控制器,其特征在于,
所述设置单元,进一步用于设置计时器timer1;其中,所述timer1用于倒计时,当timer1为0时,触发Socket向设置在对端存储控制器上的Socket发送心跳信号;
以及,
所述设置单元,进一步用于将timer1初始化为3s;
和/或,
所述设置单元,进一步用于设置目标参数为10。
8.根据权利要求7所述的存储控制器,其特征在于,
所述设置单元,进一步用于设置响应变量的初始值为0,当Socket接收到设置在对端存储控制器上的Socket发送的心跳信号时,将响应变量置为1,否则,保持响应变量的初始值不变;
还包括:
第二处理单元,用于当timer1为0时,判断响应变量的值,若响应变量的值为1,则复位timer1,并将Socket未接收到对端存储控制器发送的心跳信号的次数置为0,以及将响应变量置为初始值0;否则,复位timer1,并将Socket未接收到对端存储控制器发送的心跳信号的次数加1。
9.根据权利要求8所述的存储控制器,其特征在于,进一步包括:
判断单元,用于判断Socket未接收到对端存储控制器发送的心跳信号的次数是否小于目标参数,如果是,则触发第二处理单元执行所述将Socket未接收到对端存储控制器发送的心跳信号的次数加1,否则触发所述第二处理单元执行所述复位timer1。
10.根据权利要求7所述的存储控制器,其特征在于,还包括:
第三处理单元,用于当Socket接收到设置在对端存储控制器上的Socket发送的心跳信号时,复位timer1,并将Socket未接收到对端存储控制器发送的心跳信号的次数置为0。
CN201510740156.8A 2015-11-03 2015-11-03 双控存储控制器的故障检测方法及存储控制器 Pending CN105426276A (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201510740156.8A CN105426276A (zh) 2015-11-03 2015-11-03 双控存储控制器的故障检测方法及存储控制器

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201510740156.8A CN105426276A (zh) 2015-11-03 2015-11-03 双控存储控制器的故障检测方法及存储控制器

Publications (1)

Publication Number Publication Date
CN105426276A true CN105426276A (zh) 2016-03-23

Family

ID=55504496

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201510740156.8A Pending CN105426276A (zh) 2015-11-03 2015-11-03 双控存储控制器的故障检测方法及存储控制器

Country Status (1)

Country Link
CN (1) CN105426276A (zh)

Cited By (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN106059855A (zh) * 2016-06-17 2016-10-26 湖南中车时代通信信号有限公司 判断互联双方故障的方法
CN106371979A (zh) * 2016-11-25 2017-02-01 郑州云海信息技术有限公司 一种监控扩展控制器的方法、装置及系统
CN110727536A (zh) * 2019-10-09 2020-01-24 上海元城汽车技术有限公司 控制器自检方法、装置、计算机设备和可读存储介质
CN112822064A (zh) * 2020-12-29 2021-05-18 南京浩明慧谷信息科技有限公司 一种Socket通讯检测方法
CN114167845A (zh) * 2021-12-23 2022-03-11 广东嘉腾机器人自动化有限公司 一种plc与设备的通讯离线诊断方法和系统

Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20070253329A1 (en) * 2005-10-17 2007-11-01 Mo Rooholamini Fabric manager failure detection
CN101141327A (zh) * 2007-10-11 2008-03-12 中兴通讯股份有限公司 一种网络节点异常的检测方法
CN101188527A (zh) * 2007-12-24 2008-05-28 杭州华三通信技术有限公司 一种心跳检测方法和装置
CN201153943Y (zh) * 2008-02-19 2008-11-26 浪潮电子信息产业股份有限公司 一种多心跳信号双控存储控制器
CN103246585A (zh) * 2013-05-06 2013-08-14 浙江宇视科技有限公司 一种存储控制器故障检测方法

Patent Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20070253329A1 (en) * 2005-10-17 2007-11-01 Mo Rooholamini Fabric manager failure detection
CN101141327A (zh) * 2007-10-11 2008-03-12 中兴通讯股份有限公司 一种网络节点异常的检测方法
CN101188527A (zh) * 2007-12-24 2008-05-28 杭州华三通信技术有限公司 一种心跳检测方法和装置
CN201153943Y (zh) * 2008-02-19 2008-11-26 浪潮电子信息产业股份有限公司 一种多心跳信号双控存储控制器
CN103246585A (zh) * 2013-05-06 2013-08-14 浙江宇视科技有限公司 一种存储控制器故障检测方法

Cited By (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN106059855A (zh) * 2016-06-17 2016-10-26 湖南中车时代通信信号有限公司 判断互联双方故障的方法
CN106371979A (zh) * 2016-11-25 2017-02-01 郑州云海信息技术有限公司 一种监控扩展控制器的方法、装置及系统
CN110727536A (zh) * 2019-10-09 2020-01-24 上海元城汽车技术有限公司 控制器自检方法、装置、计算机设备和可读存储介质
CN112822064A (zh) * 2020-12-29 2021-05-18 南京浩明慧谷信息科技有限公司 一种Socket通讯检测方法
CN114167845A (zh) * 2021-12-23 2022-03-11 广东嘉腾机器人自动化有限公司 一种plc与设备的通讯离线诊断方法和系统
CN114167845B (zh) * 2021-12-23 2023-12-05 广东嘉腾机器人自动化有限公司 一种plc与设备的通讯离线诊断方法和系统

Similar Documents

Publication Publication Date Title
CN105426276A (zh) 双控存储控制器的故障检测方法及存储控制器
CN101179438B (zh) 一种远程诊断系统及方法
CN105243004A (zh) 一种故障资源检测方法及装置
US9916331B2 (en) Method and device for automatically processing static test data of rail transit vehicle
CN105808407A (zh) 管理设备的方法、设备和设备管理控制器
CN106354685A (zh) 一种psu和me通信i2c总线挂死恢复的实现方法
CN103365757A (zh) 时钟检测方法及装置
CN105550080A (zh) 一种基于Linux进行服务器程序故障注入方法、装置及系统
CN103970628A (zh) 自动化检测系统及其自动化检测方法
CN107643903B (zh) 一种服务器自动进入bios配置界面的方法及装置
WO2023065601A1 (zh) 服务器组件自检异常恢复方法、装置、系统及介质
CN111088998B (zh) 煤矿中心站监控系统测试方法、装置及分站模拟系统
CN104503947A (zh) 多路服务器及其信号处理方法
US20180113779A1 (en) Intelligent packet analyzer circuits, systems, and methods
CN104407927A (zh) 一种处理器同步运行状态监测电路及监测方法
CN103916272A (zh) 一种主控单板及一种主控单板故障检测方法
CN105676109A (zh) 一种主板测试方法及设备
KR101795895B1 (ko) 연동 검증 시스템 및 이를 사용한 연동 검증 방법
CN107688547A (zh) 一种控制器主备切换的方法及系统
CN104038387B (zh) 框式交换机业务板上线检测方法
CN104753993B (zh) 一种监控服务器的方法及监控设备
CN104346233A (zh) 一种用于计算机系统的故障恢复方法及装置
EP3544306A1 (en) Method and apparatus for switching channels in smart interaction tablet
CN109947621A (zh) 一种服务器测试的方法及装置
CN108829570A (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
WD01 Invention patent application deemed withdrawn after publication
WD01 Invention patent application deemed withdrawn after publication

Application publication date: 20160323