CN101635652A - 多核系统的故障恢复方法和设备 - Google Patents
多核系统的故障恢复方法和设备 Download PDFInfo
- Publication number
- CN101635652A CN101635652A CN200910169848A CN200910169848A CN101635652A CN 101635652 A CN101635652 A CN 101635652A CN 200910169848 A CN200910169848 A CN 200910169848A CN 200910169848 A CN200910169848 A CN 200910169848A CN 101635652 A CN101635652 A CN 101635652A
- Authority
- CN
- China
- Prior art keywords
- data core
- core
- control nuclear
- data
- described control
- 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.)
- Granted
Links
Images
Landscapes
- Hardware Redundancy (AREA)
Abstract
本发明公开了一种多核系统的故障恢复方法和设备,能够有效的单独监控数据核,如果数据核出现故障则对该故障核进行单独恢复,使系统能够及时恢复正常,通过应用本发明的技术方案,能够准确的发现多核系统中数据核工作异常的情况,在保证不影响系统业务的情况下,对故障核进行自动恢复,提高了系统的可靠性。
Description
技术领域
本发明涉及通信技术领域,特别涉及一种多核系统的故障恢复方法和设备。
背景技术
随着数据流量的增大,在网络处理设备中逐步采用多核CPU进行数据业务处理,在一些高端的网络设备的CPU处理芯片甚至已经有多达数十个CPU核心,在多核CPU的应用中,有的系统是直接通过操作系统来管理多核系统,业务本身并不关心是具体运行到哪个CPU核上,这样的系统开发简单,但无法达到最佳的处理能力。
对于一些高端的网络设备,通常不使用操作系统来管理核心,而是应用系统自己直接管理CPU核心,一个系统中通常包括2部分,一部分是控制部分,完成系统的各种控制功能,控制部分对性能要求不高,但处理复杂,通常需要操作系统来配合工作。而数据转发业务处理部分,则由数据包驱动,完成数据包的业务处理和转发,这个过程简单,但对性能要求很高,例如数据包的转发功能,就是报文进入后,获取报文的目的IP地址,然后查路由表,然后根据路由表的结果,将报文从出接口转发出去,它处理简单。处理数据的过程比较简单,可以不依赖独立操作系统,而是程序直接控制数据核的运行。
既然控制面性能要求不高,但处理复杂,所以我们通常使用一个内核作为控制面处理CPU,我们简称控制核,上面运行复杂的控制系统和完整的操作系统。其余的核心用于数据转发业务,我们简称数据核,这些核则不运行操作系统,直接由数据包驱动进行业务处理,这样可以简化操作系统的开销,提升性能。
现有的技术一般是CPU出现故障,会重启整个单板甚至整个系统进行恢复。
在实现本发明的过程中,申请人发现现有技术至少存在以下问题:
对于多核系统,由于控制核是系统的控制核心,如果控制核出现故障,必然导致整个系统崩溃,只能重启单板或系统才能恢复,但数据核出现故障,则不一定会导致系统故障,一个核故障可能就只是该核不能工作,其它数据核照样的能够正常工作,对于一个有数十个内核的多核处理器来说,只损失了少量的处理能力,性能只是轻微下降,不会出现业务完全中断,这时如果重启单板或系统不是最佳选择,但如果不做任何处理,系统性能可能会随着故障处理核的增加,而逐步增加,最后还是可能因为性能下降严重导致网络堵塞,造成网络事故。
发明内容
本发明提供一种多核系统的故障恢复方法和设备,能够有效的单独监控数据核,如果数据核出现故障则对该故障核进行单独恢复,使系统能够及时恢复正常。
为达到上述目的,本发明一方面提供了一种多核系统的故障恢复方法,应用于包括一个控制核和多个数据核的多核系统中,所述方法包括:
所述控制核按照预设的检测周期检测各数据核的数据接收状态是否正常;
当所述控制核检测到一个数据核的数据接收状态不正常时,所述控制核重启所述数据核,并释放所述数据核所占用的资源;
所述数据核所占用的资源释放完毕后,所述控制核唤醒所述数据核进行业务处理。
优选的,所述各数据核中设置计数器,为对应的数据核所接收的数据包进行计数,所述控制核按照预设的检测周期检测各数据核的数据接收状态是否正常,具体为:
所述控制核按照预设的检测周期检测各数据核的的计数器中的计数值是否发生变化;
当所述控制核检测到一个数据核所对应的计数器中的数值在一个检测周期中没有发生变化,或连续在多个检测周期内没有发生变化,则所述控制核确定所述数据核的数据接收状态不正常。
优选的,所述当控制核检测到一个数据核所对应的计数器中的数值在连续在多个检测周期内没有发生变化,则所述控制核确定所述数据核的数据接收状态不正常,具体为:
当一个数据核所对应的计数器中的数值没有发生变化时,所述控制核重启所述数据核,并释放所述数据核所占用的资源,还包括:
当一个数据核所对应的计数器中的数值没有发生变化时,所述控制核生成所述数据核的一次无变化记录;
如果所述控制核在下一个检测周期内检测到所述数据核所对应的计数器中的数值发生变化,所述控制核清空所述数据核当前的所有无变化记录,如果所述控制核在下一个检测周期内检测到所述数据核所对应的计数器中的数值没有发生变化,所述控制核生成所述数据核的再一次无变化记录;
当所述控制核判断所述数据核的无变化记录达到预设的记录数量阈值时,所述控制核确定所述数据核的数据接收状态不正常。
优选的,所述方法还包括:
所述控制核按照预设的发送周期向各数据核发送检测报文,其中,所述检测周期大于所述发送周期。
优选的,当所述控制核检测到一个数据核的数据接收状态不正常时,所述控制核重启所述数据核,并释放所述数据核所占用的资源,具体包括:
所述控制核清除所述数据核的唤醒标识,重启所述数据核,并释放所述数据核所占用的资源;
其中,所述数据核所占用的资源包括以下的至少一种信息:
所述数据核所加锁的全部锁资源;
所述数据核当前没有释放的全部数据包;
所述数据核当前独占的全部内存资源。
优选的,所述控制核唤醒所述数据核进行业务处理,具体为所述控制核为所述数据核添加唤醒标识,所述方法还包括:
所述数据核重启后,按照预设的唤醒周期检测当前是否被所述控制核添加唤醒标识;
当所述数据核检测到被所述控制核添加唤醒标识时,所述数据核进行正常的业务处理。
优选的,所述方法还包括:
当所述控制核检测到所述多核系统中的数据接收状态不正常的数据核的数量超过预设的故障数量阈值,或一个或多个数据核连续发生故障时,所述控制核重启包含所述控制核和数据核的单板。
另一方面,本发明还提供了一种单板,包括一个控制核和多个数据核,其中:
所述控制核,用于按照预设的检测周期检测各数据核的数据接收状态是否正常,当检测到一个数据核的数据接收状态不正常时,重启所述数据核,并释放所述数据核所占用的资源,并在所述数据核所占用的资源释放完毕后,唤醒所述数据核进行业务处理。
优选的,所述控制核具体包括:
设置模块,用于设置检测数据核的检测周期;
检测模块,用于按照所述设置模块所设置的检测周期检测各数据核的数据接收状态是否正常;
处理模块,用于当所述检测模块检测到一个数据核的数据接收状态不正常时,重启所述数据核,并释放所述数据核所占用的资源,并在所述数据核所占用的资源释放完毕后,唤醒所述数据核进行业务处理。
优选的,所述数据核还包括计数器,用于为对应的数据核所接收的数据包进行计数;
所述控制核还包括发送模块和/或记录模块,其中:
所述发送模块,用于预设的发送周期向各数据核发送检测报文,其中,所述发送周期通过所述设置模块进行设置,且所述检测周期大于所述发送周期;
所述记录模块,用于当所述检测模块检测到一个数据核的数据接收状态不正常时,记录所述数据核的故障状态和故障时间。
优选的,所述处理模块还用于在重启所述数据核时清除所述数据核的唤醒标识,重启所述数据核,并在所述数据核所占用的资源释放完毕后,为所述数据核添加唤醒标识;
所述数据核,用于在重启后检测当前是否被所述控制核添加唤醒标识,并在所述数据核检测到被所述控制核添加唤醒标识时,进行正常的业务处理。
优选的,所述处理模块还用于当所述控制核检测到所述多核系统中的数据接收状态不正常的数值没有发生变化的数据核的数量超过预设的故障数量阈值,或一个或多个数据核连续发生故障时,重启所述单板。
与现有技术相比,本发明具有以下优点:
通过应用本发明的技术方案,能够准确的发现多核系统中数据核工作异常的情况,在保证不影响系统业务的情况下,对故障核进行自动恢复,提高了系统的可靠性。
附图说明
图1为本发明提出的一种多核系统的故障恢复方法的流程示意图;
图2为本发明所提供的一种保存锁资源信息示意图;
图3为本发明所提供的具体应用场景下的一种多核系统的故障恢复方法的流程示意图;
图4为本发明所提供的具体应用场景下的另一种多核系统的故障恢复方法的流程示意图;
图5为本发明所提供一种单板的结构示意图。
具体实施方式
如背景技术所述,传统的故障处理方式不能保证对多核系统中的故障核进行及时的处理,或者不能保证在处理过程中不影响当前的系统业务。
本发明的技术方案采用对各数据核的状态监控及相应的故障恢复机制,实现对多核系统中故障核的及时发现和处理,解决了现有技术所存在的不足。
本发明提出了一种多核系统的故障恢复方法,应用于包括一个控制核和多个数据核的多核系统中。
如图1所示,为本发明提出的一种多核系统的故障恢复方法的流程示意图,具体包括以下步骤:
步骤S101、控制核按照预设的检测周期检测各数据核的数据接收状态是否正常。
当控制核检测到一个数据核的数据接收状态不正常时,执行步骤S102;
当控制核没有检测到各数据核的数据接收状态均正常时,重复执行步骤S101。
在具体的应用场景中,本步骤的具体实现方式可以是通过在各数据核中分别设置计数器,为对应的数据核所接收的数据包进行计数,而控制核则根据对各计数器的检测结果确定相应的数据核的数据接收状态是否正常,具体的检测实现流程如下:
控制核按照预设的检测周期检测各数据核的的计数器中的计数值是否发生变化;
当控制核检测到一个数据核所对应的计数器中的数值在一个检测周期中没有发生变化,或连续在多个检测周期内没有发生变化,则控制核确定该数据核的数据接收状态不正常。
其中,一个数据核所对应的计数器中的数值在连续在多个检测周期内没有发生变化的处理流程如下:
当控制核检测到一个数据核所对应的计数器中的数值没有发生变化时,控制核生成数据核的一次无变化记录;
如果控制核在下一个检测周期内检测到数据核所对应的计数器中的数值发生变化,控制核清空数据核当前的所有无变化记录,如果控制核在下一个检测周期内检测到数据核所对应的计数器中的数值没有发生变化,控制核生成数据核的再一次无变化记录;
当控制核判断数据核的无变化记录达到预设的记录数量阈值时,执行步骤S102。
需要说明的是,上述的对于数据接收状态是否正常的判断依据是计数器在一个检测周期内不变还是多个检测周期内不变是本发明技术方案根据系统设置所采用的具体应用形式,在前一种应用形式中,只要在一个检测周期内发现数据核出现故障,便重启该数据核,而在后一种应用形式中,则是在判断一个数据核出现多次无变化记录之后,才最终确认该数据核出现故障,两者各有利弊,第一种应用形式有利于故障的及时处理,而第二种应用形式则有利于故障检测准确度的提高,避免检测过程中的错误而导致的错误处理,以及因此而产生的对系统业务的影响。
进一步的,为了确保数据和在一个检测周期内肯定能够接收到数据包,控制核按照预设的发送周期向各数据核发送检测报文,其中,检测周期大于发送周期。
另一方面,上述的通过计数器进行数据核的数据接收状态是否正常的检测的方式仅是本发明的一种优选实施例,通过其他方式进行数据核的数据接收状态是否正常的检测的技术方案同样属于本发明的保护范围。
步骤S102、控制核重启该数据核,并释放该故障数据核所占用的资源。
在具体的应用场景中,本步骤还包括控制核对该数据核的故障状态和故障时间的记录。
本步骤的具体流程为控制核清除数据核的唤醒标识,重启数据核,并释放数据核所占用的资源;
其中,数据核所占用的资源包括以下的至少一种信息:
数据核所加锁的全部锁资源;
数据核当前没有释放的全部数据包;
数据核当前独占的全部内存资源。
步骤S103、数据核所占用的资源释放完毕后,控制核唤醒数据核进行业务处理。
其中,控制核唤醒数据核进行业务处理,具体为控制核为数据核添加唤醒标识。
在此种情况下,本步骤完成之后,本方法还包括:
数据核重启后,按照预设的唤醒周期检测当前是否被控制核添加唤醒标识;
当数据核检测到被控制核添加唤醒标识时,数据核进行正常的业务处理。
在具体的应用场景中,本方法还可以进一步包括以下处理方式:
当控制核检测到多核系统中数据接收状态不正常的数据核的数量超过预设的故障数量阈值,或一个或多个数据核连续发生故障时,控制核重启包含控制核和数据核的单板。
通过此种处理方式,可以避免在系统的应用环境破换的情况下对故障核连续重启而不能解决故障原因的不足。
与现有技术相比,本发明具有以下优点:
通过应用本发明的技术方案,能够准确的发现多核系统中数据核工作异常的情况,在保证不影响系统业务的情况下,对故障核进行自动恢复,提高了系统的可靠性。
下面,结合具体的应用场景,对本发明所提出的技术方案进行说明。
本发明所提出的技术方案主要包括故障检测,状态保存和故障处理三个部分,具体说明如下:
1、故障检测:
在多核系统中,由控制核检测各数据核的工作状态,根据本发明技术方案,采取的具体工作原理如下:
在每个数据核的数据入口设置一个独立计数器,每收到一个数据包,计数器+1,控制核定时向所有的数据核发送一个消息,数据核每收到一个消息同样对上述计数器+1。
控制核发送消息的设定主要是为了防止由于暂时没有数据通信而导致对数据核故障的误判。
控制核定时检测该计数器,如果一段时间内出现该计数器不再变化,则认为该数据核故障。
这里所提及的一段时间可以是前述的检测周期,也可以是大于检测周期的其他时间数值,这样的变化并不影响本发明的保护范围。
其中,上述的通过计数器进行故障检测的方式仅是本发明的一种优选实施例,通过其他方式进行故障检测的技术方案同样属于本发明的保护范围。
2、状态保存:
由于数据核不使用操作系统,所以,数据核主要涉及的系统资源就是内存和锁资源,但由于数据核申请的内存可能被其它核使用,不能采取简单的方法强行回收,否则可能会导致其它数据核出现异常。
同时,数据核在处理一个数据包时所需要申请的内存不会很多,对这部分内存可以不做恢复处理,但对于数据包本身的内存只涉及到处理核本身这种情况时,则需要进行释放处理。
多核系统对数据报文本身记录方法如下,报文入口时用一个全局变量记录报文指针和类型,报文正常释放时清除该记录。
如果数据核申请的内存只会被本核使用,则可按核对内存进行分区管理,不同的数据核在不同的内存区分配内存,当然,也可以采取在分配内存时,记录内存分配核的方式进行标记。
在本发明的技术方案中,重点关注的是数据核对锁资源的占用,对锁资源保存方式如下:
通常,锁是一个变量,在此基础上,本发明的技术方案增加锁的类型和各核的加锁和解锁情况的记录,如图2所示,假设以0表示没有加锁,1表示加锁。
在具体的应用场景中,上述设置可以进行相应的调整,这样的变化并不影响本发明的保护范围。
多核系统将数据核所有的锁统一管理,可以使用一个链表将锁变量统一管理起来,这样可以方便实现对全部锁资源实现遍历。
应用如图2所示的记录方式,数据核进行加锁操作时,在相应的核标志位上设置加锁标志,解锁时清除加锁标志。
如果数据核处理的业务中有对系统其它特殊资源进行独占使用的情况,也可以使用类似保存方式处理。
3、故障处理:
依据前述的故障检测方法,控制核如果发现某个数据核出现故障,则记录该核的故障状态和时间。
清除故障核的唤醒标志,重启该故障核,故障核重启后先进入等待控制核唤醒状态。(可以为该核设置一个控制变量来实现唤醒功能,该核通过循环判断该标志位,如果没有设置则死等,控制唤醒该核时设置该标志位,这样该核就能继续执行下去,进入正常工作状态。)
根据前述的状态保存的记录进行资源锁恢复,遍历全部的锁资源,释放该核原来加锁的全部锁资源。
释放该故障核处理的还没有释放的报文。
如果还有其它被该核独占的资源,也需做释放处理。
如果数据核处理的业务所申请的内存只被本核使用,则释放全部该核申请的内存。
控制核唤醒该核进行正常业务处理。
4、从技术完备性的角度上考虑,当一些关键资源被破坏时,简单的对故障核进行重启可能无法使得系统正常工作的,如果检测发现出现故障的数据核比较多,并且进行重启恢复后,短时间又出现故障,说明整个工作环境已经破坏,简单的数据核重启已经无法恢复正常工作,这时要进行单板重启进行恢复。
基于以上技术思路,结合具体的应用场景,如图3所示,为本发明所提出的一种多核系统的故障恢复方法的流程示意图,具体包括以下步骤:
步骤S301、控制核定时向所有的数据核发送检测消息。
步骤S302、数据核对接收到检测消息进行计数。
数据核每收到一个消息同样对上述计数器+1。
在完成相应的技术处理后,数据核继续进行正常的业务处理。
步骤S303、控制核定时检测各数据核的计数器。
步骤S304、控制核判断各数据核的计数器的数值是否不变。
当控制核检测到一个数据核所对应的计数器中的数值不变时,执行步骤S305;
当控制核没有检测到数据核所对应的计数器中的数值不变时,返回步骤S303,在下一个周期内继续进行检测。
步骤S305、控制核清除该数据核的唤醒标识,重启该数据核。
步骤S306、控制核释放该数据核所占用的资源。
数据核所占用的资源释放完毕后,执行步骤S307。
步骤S307、控制核为数据核添加唤醒标识。
在前述的步骤S305完成后,在数据核侧同样存在相应的处理流程,具体为:
步骤S308、数据核根据控制核的控制进行重启。
步骤S309、数据核检查是否存在唤醒标识。
如果在执行本步骤时,步骤S307还没有实现,则数据核中没有唤醒标识,因此,返回步骤S309继续进行唤醒标识的检查;
如果在执行本步骤时,步骤S307已经实现,则数据核中存在唤醒标识,则数据核继续进行正常的业务处理。
与现有技术相比,本发明具有以下优点:
通过应用本发明的技术方案,能够准确的发现多核系统中数据核工作异常的情况,在保证不影响系统业务的情况下,对故障核进行自动恢复,提高了系统的可靠性。
进一步的,以在多核CPU上进行IP流统计业务来说明本发明的工作原理。
流统计,就是根据IP数据包入接口、出接口、源IP、源端口、协议类型、目的IP、目的端口等信息为表征一条流的关键字,统计一条流的创建时间,结束时间、报文数、字节数等信息,同时定时将统计信息上报网管中心,通过该技术用户可以了解网络中的报文分布情况,也可以对各种异常的网络流量进行实时监控。
按源IP、源端口、协议类型、目的IP、目的端口的信息进行哈希调度,将统计报文均衡调度到各个数据核上。
按核来分配统计数据流所需的内存空间,对于需要使用锁资源来防止核间资源访问冲突,在加锁时标记该数据核的使用标记。
以数据核A的统计为例进行说明,假设为核A分配的统计空间为buffer1,整个数据核使用的锁资源由链表list1管理。IP流量统计业务只涉及到内存和锁两种竞争资源的占用。
假设核A收到一个报文packet1,计数器t加1,同时保存该报文指针到p中,数据核开始进行业务处理,如果这时因为一个程序错误,导致核A进入一个死循环中,无法退出。
这时控制核一直定时检查计数器t,如果发现一段时间t的计数值不变,说明核A这时已经跑死。清除A的唤醒标志,重启核A。
控制核通过list1遍历检测数据核使用的全部锁资源,检测锁资源中核A的标志位是否设置,如果设置,则根据锁类型进行解锁处理,例如,如图4所示,锁1和3已经被核A加锁,释放这2个锁。同时释放数据核A的内存资源buffer1,如果buffer1是控制核为数据核A分配的,则重新需重新初始化该内存,释放核A没有处理完的报文内存p。
为核A设置唤醒变量,重新唤醒该数据核,使其进入正常工作状态。
与现有技术相比,本发明具有以下优点:
通过应用本发明的技术方案,能够准确的发现多核系统中数据核工作异常的情况,在保证不影响系统业务的情况下,对故障核进行自动恢复,提高了系统的可靠性。
相对应的,为了实现上述的技术方案,本发明还提供了一种单板,如图5所示,包括一个控制核51和多个数据核52,其中:
控制核51,用于按照预设的检测周期检测各数据核52的数据接收状态是否正常,当检测到一个数据核52的数据接收状态不正常时,重启数据核52,并释放数据核52所占用的资源,并在数据核52所占用的资源释放完毕后,唤醒数据核52进行业务处理。
具体的,控制核51具体包括:
设置模块511,用于设置检测数据核的检测周期;
检测模块512,用于按照设置模块511所设置的检测周期检测各数据核52的数据接收状态是否正常;
处理模块513,用于当检测模块512检测到一个数据核52的数据接收状态不正常时,重启数据核52,并释放数据核52所占用的资源,并在数据核52所占用的资源释放完毕后,唤醒数据核52进行业务处理。
在具体的应用场景中,数据核52还包括计数器521,用于为对应的数据核52所接收的数据包进行计数;
控制核51还包括发送模块514和/或记录模块515,其中:
发送模块514,用于预设的发送周期向各数据核52发送检测报文,其中,发送周期通过设置模块511进行设置,且检测周期大于发送周期;
记录模块515,用于当检测模块512检测到一个数据核52所对应的计数器中的数值没有发生变化时,记录数据核52的故障状态和故障时间。
处理模块513还用于在重启数据核52时清除数据核52的唤醒标识,重启数据核52,并在数据核52所占用的资源释放完毕后,为数据核52添加唤醒标识;
相应的,数据核52,用于在重启后检测当前是否被控制核51添加唤醒标识,并在数据核52检测到被控制核51添加唤醒标识时,进行正常的业务处理。
在具体的应用场景中,处理模块513还用于当控制核51检测到多核系统中的数据接收状态不正常的数据核52的数量超过预设的故障数量阈值,或一个或多个数据核52连续发生故障时,重启单板。
与现有技术相比,本发明具有以下优点:
通过应用本发明的技术方案,能够准确的发现多核系统中数据核工作异常的情况,在保证不影响系统业务的情况下,对故障核进行自动恢复,提高了系统的可靠性。
通过以上的实施方式的描述,本领域的技术人员可以清楚地了解到本发明可以通过硬件实现,也可以借助软件加必要的通用硬件平台的方式来实现。基于这样的理解,本发明的技术方案可以以软件产品的形式体现出来,该软件产品可以存储在一个非易失性存储介质(可以是CD-ROM,U盘,移动硬盘等)中,包括若干指令用以使得一台计算机设备(可以是个人计算机,服务器,或者网络设备等)执行本发明各个实施场景所述的方法。
本领域技术人员可以理解附图只是一个优选实施场景的示意图,附图中的模块或流程并不一定是实施本发明所必须的。
本领域技术人员可以理解实施场景中的装置中的模块可以按照实施场景描述进行分布于实施场景的装置中,也可以进行相应变化位于不同于本实施场景的一个或多个装置中。上述实施场景的模块可以合并为一个模块,也可以进一步拆分成多个子模块。
上述本发明序号仅仅为了描述,不代表实施场景的优劣。
以上公开的仅为本发明的几个具体实施场景,但是,本发明并非局限于此,任何本领域的技术人员能思之的变化都应落入本发明的保护范围。
Claims (12)
1、一种多核系统的故障恢复方法,其特征在于,应用于包括一个控制核和多个数据核的多核系统中,所述方法包括:
所述控制核按照预设的检测周期检测各数据核的数据接收状态是否正常;
当所述控制核检测到一个数据核的数据接收状态不正常时,所述控制核重启所述数据核,并释放所述数据核所占用的资源;
所述数据核所占用的资源释放完毕后,所述控制核唤醒所述数据核进行业务处理。
2、如权利要求1所述的方法,其特征在于,所述各数据核中设置计数器,为对应的数据核所接收的数据包进行计数,所述控制核按照预设的检测周期检测各数据核的数据接收状态是否正常,具体为:
所述控制核按照预设的检测周期检测各数据核的的计数器中的计数值是否发生变化;
当所述控制核检测到一个数据核所对应的计数器中的数值在一个检测周期中没有发生变化,或连续在多个检测周期内没有发生变化,则所述控制核确定所述数据核的数据接收状态不正常。
3、如权利要求2所述的方法,其特征在于,所述当控制核检测到一个数据核所对应的计数器中的数值在连续在多个检测周期内没有发生变化,则所述控制核确定所述数据核的数据接收状态不正常,具体为:
当一个数据核所对应的计数器中的数值没有发生变化时,所述控制核生成所述数据核的一次无变化记录;
如果所述控制核在下一个检测周期内检测到所述数据核所对应的计数器中的数值发生变化,所述控制核清空所述数据核当前的所有无变化记录,如果所述控制核在下一个检测周期内检测到所述数据核所对应的计数器中的数值没有发生变化,所述控制核生成所述数据核的再一次无变化记录;
当所述控制核判断所述数据核的无变化记录达到预设的记录数量阈值时,所述控制核确定所述数据核的数据接收状态不正常。
4、如权利要求1或2所述的方法,其特征在于,还包括:
所述控制核按照预设的发送周期向各数据核发送检测报文,其中,所述检测周期大于所述发送周期。
5、如权利要求1所述的方法,其特征在于,当所述控制核检测到一个数据核的数据接收状态不正常时,所述控制核重启所述数据核,并释放所述数据核所占用的资源,具体包括:
所述控制核清除所述数据核的唤醒标识,重启所述数据核,并释放所述数据核所占用的资源;
其中,所述数据核所占用的资源包括以下的至少一种信息:
所述数据核所加锁的全部锁资源;
所述数据核当前没有释放的全部数据包;
所述数据核当前独占的全部内存资源。
6、如权利要求5所述的方法,其特征在于,所述控制核唤醒所述数据核进行业务处理,具体为所述控制核为所述数据核添加唤醒标识,所述方法还包括:
所述数据核重启后,按照预设的唤醒周期检测当前是否被所述控制核添加唤醒标识;
当所述数据核检测到被所述控制核添加唤醒标识时,所述数据核进行正常的业务处理。
7、如权利要求1所述的方法,其特征在于,还包括:
当所述控制核检测到所述多核系统中的数据接收状态不正常的数据核的数量超过预设的故障数量阈值,或一个或多个数据核连续发生故障时,所述控制核重启包含所述控制核和数据核的单板。
8、一种单板,其特征在于,包括一个控制核和多个数据核,其中:
所述控制核,用于按照预设的检测周期检测各数据核的数据接收状态是否正常,当检测到一个数据核的数据接收状态不正常时,重启所述数据核,并释放所述数据核所占用的资源,并在所述数据核所占用的资源释放完毕后,唤醒所述数据核进行业务处理。
9、如权利要求8所述的单板,其特征在于,所述控制核具体包括:
设置模块,用于设置检测数据核的检测周期;
检测模块,用于按照所述设置模块所设置的检测周期检测各数据核的数据接收状态是否正常;
处理模块,用于当所述检测模块检测到一个数据核的数据接收状态不正常时,重启所述数据核,并释放所述数据核所占用的资源,并在所述数据核所占用的资源释放完毕后,唤醒所述数据核进行业务处理。
10、如权利要求8所述的单板,其特征在于,
所述数据核还包括计数器,用于为对应的数据核所接收的数据包进行计数;
所述控制核还包括发送模块和/或记录模块,其中:
所述发送模块,用于预设的发送周期向各数据核发送检测报文,其中,所述发送周期通过所述设置模块进行设置,且所述检测周期大于所述发送周期;
所述记录模块,用于当所述检测模块检测到一个数据核的数据接收状态不正常时,记录所述数据核的故障状态和故障时间。
11、如权利要求9所述的单板,其特征在于,所述处理模块还用于在重启所述数据核时清除所述数据核的唤醒标识,重启所述数据核,并在所述数据核所占用的资源释放完毕后,为所述数据核添加唤醒标识;
所述数据核,用于在重启后检测当前是否被所述控制核添加唤醒标识,并在所述数据核检测到被所述控制核添加唤醒标识时,进行正常的业务处理。
12、如权利要求9所述的单板,其特征在于,所述处理模块还用于当所述控制核检测到所述多核系统中的数据接收状态不正常的数据核的数量超过预设的故障数量阈值,或一个或多个数据核连续发生故障时,重启所述单板。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN2009101698486A CN101635652B (zh) | 2009-09-07 | 2009-09-07 | 多核系统的故障恢复方法和设备 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN2009101698486A CN101635652B (zh) | 2009-09-07 | 2009-09-07 | 多核系统的故障恢复方法和设备 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN101635652A true CN101635652A (zh) | 2010-01-27 |
CN101635652B CN101635652B (zh) | 2012-11-28 |
Family
ID=41594719
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN2009101698486A Active CN101635652B (zh) | 2009-09-07 | 2009-09-07 | 多核系统的故障恢复方法和设备 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN101635652B (zh) |
Cited By (12)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101854258A (zh) * | 2010-06-01 | 2010-10-06 | 杭州和利时自动化有限公司 | 通讯芯片故障消除实现方法及装置 |
CN102629228A (zh) * | 2012-04-26 | 2012-08-08 | 迈普通信技术股份有限公司 | 多核通信系统中检测数据核故障的方法及装置 |
CN102750192A (zh) * | 2012-06-06 | 2012-10-24 | 杭州华三通信技术有限公司 | 一种数据平面异常检测的方法和装置 |
WO2014059645A1 (zh) * | 2012-10-18 | 2014-04-24 | 华为技术有限公司 | 一种隔离虚拟网络设备的方法、装置和系统 |
CN106130789A (zh) * | 2016-08-08 | 2016-11-16 | 广东芬尼克兹节能设备有限公司 | 一种设备故障处理方法及系统 |
CN107566289A (zh) * | 2017-08-21 | 2018-01-09 | 杭州迪普科技股份有限公司 | 一种基于流分类的控制核流量限速方法及装置 |
CN109597719A (zh) * | 2018-12-10 | 2019-04-09 | 浪潮(北京)电子信息产业有限公司 | 一种多核系统的监控方法、系统、装置及可读存储介质 |
CN109933178A (zh) * | 2019-01-16 | 2019-06-25 | 浙江众合科技股份有限公司 | 一种列车信号系统中实现单板复位的装置 |
CN110069377A (zh) * | 2018-01-22 | 2019-07-30 | 中兴通讯股份有限公司 | 一种多核处理器的监测方法、终端及计算机存储介质 |
CN112631872A (zh) * | 2020-12-30 | 2021-04-09 | 上海金卓科技有限公司 | 一种多核系统的异常处理方法及装置 |
CN112667459A (zh) * | 2020-12-09 | 2021-04-16 | 北京无线电测量研究所 | 一种多处理器系统信息采集方法 |
CN116708139A (zh) * | 2023-07-21 | 2023-09-05 | 北京六方云信息技术有限公司 | 网络设备故障处理方法、装置、设备以及存储介质 |
-
2009
- 2009-09-07 CN CN2009101698486A patent/CN101635652B/zh active Active
Cited By (19)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101854258A (zh) * | 2010-06-01 | 2010-10-06 | 杭州和利时自动化有限公司 | 通讯芯片故障消除实现方法及装置 |
CN102629228B (zh) * | 2012-04-26 | 2015-07-15 | 迈普通信技术股份有限公司 | 多核通信系统中检测数据核故障的方法及装置 |
CN102629228A (zh) * | 2012-04-26 | 2012-08-08 | 迈普通信技术股份有限公司 | 多核通信系统中检测数据核故障的方法及装置 |
CN102750192A (zh) * | 2012-06-06 | 2012-10-24 | 杭州华三通信技术有限公司 | 一种数据平面异常检测的方法和装置 |
CN102750192B (zh) * | 2012-06-06 | 2016-04-20 | 杭州华三通信技术有限公司 | 一种数据平面异常检测的方法和装置 |
CN104025510B (zh) * | 2012-10-18 | 2017-09-05 | 华为技术有限公司 | 一种隔离虚拟网络设备的方法、装置和系统 |
CN104025510A (zh) * | 2012-10-18 | 2014-09-03 | 华为技术有限公司 | 一种隔离虚拟网络设备的方法、装置和系统 |
WO2014059645A1 (zh) * | 2012-10-18 | 2014-04-24 | 华为技术有限公司 | 一种隔离虚拟网络设备的方法、装置和系统 |
CN106130789A (zh) * | 2016-08-08 | 2016-11-16 | 广东芬尼克兹节能设备有限公司 | 一种设备故障处理方法及系统 |
CN107566289A (zh) * | 2017-08-21 | 2018-01-09 | 杭州迪普科技股份有限公司 | 一种基于流分类的控制核流量限速方法及装置 |
CN110069377A (zh) * | 2018-01-22 | 2019-07-30 | 中兴通讯股份有限公司 | 一种多核处理器的监测方法、终端及计算机存储介质 |
CN109597719A (zh) * | 2018-12-10 | 2019-04-09 | 浪潮(北京)电子信息产业有限公司 | 一种多核系统的监控方法、系统、装置及可读存储介质 |
CN109933178A (zh) * | 2019-01-16 | 2019-06-25 | 浙江众合科技股份有限公司 | 一种列车信号系统中实现单板复位的装置 |
CN112667459A (zh) * | 2020-12-09 | 2021-04-16 | 北京无线电测量研究所 | 一种多处理器系统信息采集方法 |
CN112667459B (zh) * | 2020-12-09 | 2024-10-15 | 北京无线电测量研究所 | 一种多处理器系统信息采集方法 |
CN112631872A (zh) * | 2020-12-30 | 2021-04-09 | 上海金卓科技有限公司 | 一种多核系统的异常处理方法及装置 |
CN112631872B (zh) * | 2020-12-30 | 2024-02-23 | 上海金卓科技有限公司 | 一种多核系统的异常处理方法及装置 |
CN116708139A (zh) * | 2023-07-21 | 2023-09-05 | 北京六方云信息技术有限公司 | 网络设备故障处理方法、装置、设备以及存储介质 |
CN116708139B (zh) * | 2023-07-21 | 2023-10-20 | 北京六方云信息技术有限公司 | 网络设备故障处理方法、装置、设备以及存储介质 |
Also Published As
Publication number | Publication date |
---|---|
CN101635652B (zh) | 2012-11-28 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN101635652B (zh) | 多核系统的故障恢复方法和设备 | |
JP4054616B2 (ja) | 論理計算機システム、論理計算機システムの構成制御方法および論理計算機システムの構成制御プログラム | |
US7424666B2 (en) | Method and apparatus to detect/manage faults in a system | |
US20080281959A1 (en) | Managing addition and removal of nodes in a network | |
CN102307134B (zh) | 用于运行平台功率状态的方法、设备和系统 | |
CN113190487B (zh) | PCIe设备热拔方法及装置 | |
CN105357042B (zh) | 一种高可用集群系统及其主节点和从节点 | |
JP2006259869A (ja) | マルチプロセッサシステム | |
CN103188162A (zh) | 一种负载均衡方法及系统 | |
US11704180B2 (en) | Method, electronic device, and computer product for storage management | |
US20190243953A1 (en) | Enhanced security for multiple node computing platform | |
CN114168071A (zh) | 一种分布式集群扩容方法、分布式集群扩容装置及介质 | |
JP5535471B2 (ja) | マルチパーティション・コンピュータシステム、障害処理方法及びそのプログラム | |
CN100555260C (zh) | 主控底层管理平面的集成装置及方法 | |
CN110287159B (zh) | 一种文件处理方法及装置 | |
CN106165367A (zh) | 一种存储装置的访问控制方法、存储装置以及控制系统 | |
US7607051B2 (en) | Device and method for program correction by kernel-level hardware monitoring and correlating hardware trouble to a user program correction | |
US20130046910A1 (en) | Method for managing a processor, lock contention management apparatus, and computer system | |
CN115883340A (zh) | 一种基于hplc和hrf双模通信故障处理方法和设备 | |
CN103197981B (zh) | 存储空间预警方法和系统 | |
CN102045600A (zh) | 以太网接入sdh光网络的链路保护方法及装置 | |
CN114513398B (zh) | 网络设备告警处理方法、装置、设备及存储介质 | |
CN105991608B (zh) | 分布式设备的业务处理方法、装置及分布式设备 | |
CN109660544A (zh) | 网络安全审查方法及装置 | |
US10257269B2 (en) | Selectively disabling operation of hardware components based on network changes |
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 | ||
CP03 | Change of name, title or address |
Address after: 310052 Binjiang District Changhe Road, Zhejiang, China, No. 466, No. Patentee after: Xinhua three Technology Co., Ltd. Address before: 310053 Hangzhou hi tech Industrial Development Zone, Zhejiang province science and Technology Industrial Park, No. 310 and No. six road, HUAWEI, Hangzhou production base Patentee before: Huasan Communication Technology Co., Ltd. |
|
CP03 | Change of name, title or address |