一种异常处理的方法和装置的制作方法

文档序号:7888074阅读:190来源:国知局
专利名称:一种异常处理的方法和装置的制作方法
技术领域
本发明涉及通信技术领域,尤其涉及一种异常处理的方法和装置。
背景技术
在现有的分布式路由器系统中,主控板负责系统集中控制和管理。主控板包括主用主控板和备用主控板。主用主控板与备用主控板分别占用一个单板。所有的单板都插在背板上。主用主控板与备用主控板通过背板进行板间通信。现有技术中,当主用主控板上异常时,备用主控板升级为主用主控板,并对整个路由器进行接管。发明人发现,现有技术中存在如下技术问题利用主用主控板以及备用主控板实现主备倒换,成本较高。

发明内容
本发明的实施例提供一种异常处理的方法和装置,可以降低成本。为达到上述目的,本发明的实施例采用如下技术方案一方面,本发明实施例提供一种异常处理的方法,包括确定第一主控单元为主用主控单元,确定第二主控单元为备用主控单元,以便于所述第一主控单元通过路由器的主控板与所述路由器的接口板进行交互,所述主控板包括多核处理器,所述多核处理器包括多个核,所述第一主控单元包括所述多个核中的至少一个,所述第二主控单元包括所述多个核中的至少一个;判断所述第一主控单元是否发生异常;当所述第一主控单元发生异常时,确定所述第二主控单元为主用主控单元,以便于所述第二主控单元代替所述第一主控单元通过所述主控板与所述接口板进行交互。另一方面,本发明实施例提供一种异常处理的装置,包括确定单元以及判断单元所述确定单元包括第一子单元以及第二子单元;所述第一子单元用于确定第一主控单元为主用主控单元,确定第二主控单元为备用主控单元,以便于所述第一主控单元通过路由器的主控板与所述路由器的接口板进行交互,所述主控板包括多核处理器,所述多核处理器包括多个核,所述第一主控单元包括所述多个核中的至少一个,所述第二主控单元包括所述多个核中的至少一个;所述第二子单元用于当判断单元判断所述第一主控单元发生异常时,确定所述第二主控单元为主用主控单元,以便于所述第二主控单元代替所述第一主控单元通过所述主控板与所述接口板进行交互;所述判断单元用于判断所述第一主控单元是否发生异常。可见,通过本发明实施例提供的技术方案,当第一主控单元为主用主控单元时,通过判断第一主控单元是否发生异常,在第一主控单元异常时,将第二主控单元确定为主用主控单元。本发明实施例提供的技术方案可以达到利用一块主控板实现主备倒换的技术效果。与现有技术中的主用主控板和备用主控板相比,降低了成本。


为了更清楚地说明本发明实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
图1为本发明实施例提供的一种异常处理的方法的流程图2为本发明实施例提供的一种异常处理的装置的结构示意图。
具体实施方式
下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
实施例一
本发明实施例提供一种异常处理的方法,可以降低成本。图1为本发明实施例提供的异常处理方法的流程图。参见图1,所述方法包括
101、确定第一主控单元为主用主控单元,确定第二主控单元为备用主控单元,以便于该第一主控单元通过路由器的主控板与该路由器的接口板进行交互,该主控板包括多核处理器,该多核处理器包括多个核,该第一主控单元包括该多个核中的至少一个,该第二主控单元包括该多个核中的至少一个。
101具体实现时,可以由多核处理器中的中断处理单元执行。
第一主控单元可以对应多核处理器中的一个核,也可以对应多核处理器中的多个核。第一主控单元的工作环境为嵌入式操作系统。
第二主控单元具体实现时,与第一主控单元类似,此处不再赘述。需要指出的是, 第二主控单元对应的嵌入式操作系统与第一主控单元对应的嵌入式操作系统不是同一个嵌入式操作系统。
102、判断该第一主控单元是否发生异常。
102具体实现时,可以由第二主控单元执行。
103、当该第一主控单元发生异常时,确定该第二主控单元为主用主控单元,以便于该第二主控单元代替该第一主控单元通过该主控板与该接口板进行交互。
103具体实现时,可以由中断处理单元执行。
第二主控单元可以通过主控板与接口板进行交互。具体实现时,可以是接口板接收到路由消息后,通过控制通道将该路由消息上送至主控板。第二主控单元收到该路由消息后,根据该路由消息生成用于更新路由转发表项的报文。第二主控单元通过控制通道将该用于更新路由转发表项的报文下发至接口板。接口板根据该用于更新路由转发表项的报文,对该接口板的路由转发表进行更新。
本发明实施例提供一种异常处理的方法。当第一主控单元为主用主控单元时,通过判断第一主控单元是否发生异常,在第一主控单元异常时,将第二主控单元确定为主用主控单元。本发明实施例提供的技术方案可以达到利用一块主控板实现主备倒换的技术效果。与现有技术中的主用主控板和备用主控板相比,降低了成本。可选的,该判断该第一主控单元是否发生异常,具体包括当该第二主控单元在预定的第一时间内没有接收到该第一主控单元发送的心跳报文时,该第二主控单元判断该第一主控单元发生异常;或者,该第二主控单元向该第一主控单元发送心跳报文请求;当该第二主控单元在预定的第二时间内没有接收到该心跳报文请求对应的响应时,则该第二主控单元判断该第一主控单元发生异常。本发明实施例提供了两种判断方式。第二主控单元能够根据上述两种方式判断第一主控单元是否发生异常。两种判断方式中,第一主控单元和第二主控单元可以通过心跳报文进行通信。具体实现时,可以是第一主控单元对应第一操作系统,在第一操作系统之上运行了心跳报文对应的线程;第二主控单元对应第二操作系统,在第二操作系统之上也运行了心跳报文对应线程。通过上述方式,可以实现第一主控单元与第二主控单元之间的核间通信。下面对两种方式进行举例说明。第一种判断方式的举例第一主控单元按照预定规则向第二主控单元发送心跳报文。当第二主控单元在预定的第一时间内没有接收到第一主控单元发送的心跳报文时,第二主控单元判断第一主控单元发生异常。当第二主控单元在预定的第一时间内接收到第一主控单元发送的心跳报文时,第二主控单元判断第一主控单元没有发生异常。第一时间为一个时间段,本发明不对第一时间的长度进行限定。可见,第一种方式通过第一主控单元主动发送心跳报文,第二主控单元根据是否能够在预定的第一时间内接收到该心跳报文来判断第一主控单元是否发生异常。第二种判断方式的举例第二主控单元按照预定的规则向第一主控单元发送心跳报文请求;当第二主控单元在预定的第二时间内没有接收到该心跳报文请求对应的响应时,则第二主控单元判断第一主控单元发生异常。当第二主控单元在预定的第二时间内接收到请求的响应消息时,则第二主控单元判断第一主控单元没有发生异常。第二时间也是一个时间段,本发明不对第二时间的长度进行限定。可见,第二种方式通过第二主控单元主动向第一主控单元发送心跳报文请求,第一主控单元根据心跳报文请求向第二主控单元发送响应。第二主控单元根据在预定的第二时间内是否接收到响应消息判断第一主控单元是否发生异常。需要说明的是,第二主控单元发生的异常可以是硬件故障,也可以是软件故障。本发明实施例中的第一时间和第二时间可以相同也可以不同。在本发明实施例中,第一主控单元和第二主控单元能够访问的硬件资源可以是内存、网口、闪存(flash)或者可擦除可编辑逻辑器件(Erasable Programmable Logic Device, EPLD)。
可选的,该多核处理器访问的内存包括第一存储空间和第二存储空间,该第一存储空间与该第二存储空间没有重叠,该第一存储空间用于被该第一主控单元访问,该第二主控单元被禁止访问该第一存储空间,该第二存储空间用于被该第二主控单元访问,该第一主控单元被禁止访问该第二存储空间。
上述技术方案可以防止第一主控单元和第二主控单元对同一块存储空间进行访问。
可选的,
该确定该第二主控单元为主用主控单元,具体可以包括
中断处理单元接收该第二主控单元发送的触发信号,该触发信号为该第二主控单元判断该第一主控单元发生异常后发送的信号;
该中断处理单元根据该触发信号使能该第二主控单元的中断处理权限。
具体实现时,中断处理单元可以是多核处理器中的中断处理模块。
可选的,
该判断该第一主控单元是否发生异常后,该方法还可以包括
如果该第一主控单元发生异常,则修复该第一主控单元;
确定该第一主控单元为备用主控单元。
需要说明的是,对于前述的方法实施例,表述为一系列的动作组合,但是本领域技术人员应该知悉,本发明并不受所描述的动作顺序的限制,因为依据本发明,某些步骤可以采用其他顺序或者同时进行。其次,本领域技术人员也应该知悉,说明书中所描述的实施例均属于优选实施例,所涉及的动作和模块并不一定是本发明所必须的。
需要说明的是,本发明实施例中的“第一”和“第二”仅用于对被描述的对象进行区分,不用于限定先后顺序。
可见,本发明实施例提供一种异常处理的方法,在第一主控单元为主用主控单元时,通过判断第一主控单元是否发生异常,在第一主控单元异常时,将第二主控单元确定为主用主控单元,从而代替第一主控单元;本发明实施例提供的技术方案可以利用一块主控板实现主备倒换的技术效果。与现有技术中的主用主控板和备用主控板相比,降低了成本。
另外,本发明实施例提供的技术方案中,第一主控单元和第二主控单元采用核间通信,相对于板间通信方式,降低了功耗。
实施例二
本发明实施例提供一种异常处理的装置,可以降低成本。所述装置可以通过实施例一提高的方法实现。图2为本发明实施例提供一种异常处理的装置。参见图2,所述装置包括
确定单元201以及判断单元202。
该确定单元201包括第一子单元203以及第二子单元204。
该第一子单元203用于确定第一主控单元为主用主控单元,确定第二主控单元为备用主控单元,以便于该第一主控单元通过路由器的主控板与该路由器的接口板进行交互,该主控板包括多核处理器,该多核处理器包括多个核,该第一主控单元包括该多个核中的至少一个,该第二主控单元包括该多个核中的至少一个。
该第二子单元204用于当判断单元判断该第一主控单元发生异常时,确定该第二主控单元为主用主控单元,以便于该第二主控单元代替该第一主控单元通过该主控板与该接口板进行交互。该判断单元202用于判断该第一主控单元是否发生异常。确定单元201具体实现时,可以是多核处理器中的中断处理单元。第一主控单元可以对应多核处理器中的一个核,也可以对应多核处理器中的多个核。第一主控单元的工作环境为嵌入式操作系统。第二主控单元具体实现时,与第一主控单元类似,此处不再赘述。需要指出的是, 第二主控单元对应的嵌入式操作系统与第一主控单元对应的嵌入式操作系统不是同一个嵌入式操作系统。第二主控单元可以通过主控板与接口板进行交互。具体实现时,可以是接口板接收到路由消息后,通过控制通道将该路由消息上送至主控板。第二主控单元收到该路由消息后,根据该路由消息生成用于更新路由转发表项的报文。第二主控单元通过控制通道将该用于更新路由转发表项的报文下发至接口板。接口板根据该用于更新路由转发表项的报文,对该接口板的路由转发表进行更新。判断单元202具体实现时,可以是第二主控单元。可见,根据本发明实施例提供的一种异常处理的装置,当第一主控单元为主用主控单元时,通过判断第一主控单元是否发生异常,在第一主控单元异常时,将第二主控单元确定为主用主控单元。本发明实施例提供的技术方案可以达到利用一块主控板实现主备倒换的技术效果。与现有技术中的主用主控板和备用主控板相比,降低了成本。可选的,该判断单元202具体可以包括第一接收子单元,用于接收该第一主控单元发送的心跳报文。第一判断子单元,用于当该第一接收子单元在预定的第一时间内没有接收到该第一主控单元发送的心跳报文时,判断该第一主控单元发生异常。可选的,该判断单元202具体可以包括发送子单元,用于向该第一主控单元发送心跳报文请求;第二接收子单元,用于接收该心跳报文请求对应的响应;第二判断子单元,用于当该第二接收子单元在预定的第二时间内没有接收到该心跳报文请求对应的响应时,判断该第一主控单元发生异常。判断单元202具体实现时,可以是第二主控单元。本发明实施例提供了两种判断方式。第二主控单元能够根据上述两种方式判断第一主控单元是否发生异常。两种判断方式中,第一主控单元和第二主控单元可以通过心跳报文进行通信。具体实现时,可以是第一主控单元对应第一操作系统,在第一操作系统之上运行了心跳报文对应的线程;第二主控单元对应第二操作系统,在第二操作系统之上也运行了心跳报文对应线程。通过上述方式,可以实现第一主控单元与第二主控单元之间的核间通信。下面对两种方式进行举例说明。第一种判断方式的举例第一主控单元按照预定规则向第二主控单元发送心跳报文。当第二主控单元在预定的第一时间内没有接收到第一主控单元发送的心跳报文时,第二主控单元判断第一主控单元发生异常。当第二主控单元在预定的第一时间内接收到第一主控单元发送的心跳报文时,第二主控单元判断第一主控单元没有发生异常。第一时间为一个时间段,本发明不对第一时间的长度进行限定。
可见,第一种方式通过第一主控单元主动发送心跳报文,第二主控单元根据是否能够在预定的第一时间内接收到该心跳报文来判断第一主控单元是否发生异常。
第二种判断方式的举例
第二主控单元按照预定的规则向第一主控单元发送心跳报文请求;当第二主控单元在预定的第二时间内没有接收到该心跳报文请求对应的响应时,则第二主控单元判断第一主控单元发生异常。当第二主控单元在预定的第二时间内接收到请求的响应消息时,则第二主控单元判断第一主控单元没有发生异常。第二时间也是一个时间段,本发明不对第二时间的长度进行限定。
可见,第二种方式通过第二主控单元主动向第一主控单元发送心跳报文请求,第一主控单元根据心跳报文请求向第二主控单元发送响应。第二主控单元根据在预定的第二时间内是否接收到响应消息判断第一主控单元是否发生异常。
需要说明的是,第二主控单元发生的异常可以是硬件故障,也可以是软件故障。本发明实施例中的第一时间和第二时间可以相同也可以不同。
在本发明实施例中,第一主控单元和第二主控单元能够访问的硬件资源可以是内存、网口、闪存或者EPLD。
可选的,
该第二子单元具体可以包括接收子单元以及使能子单元
该接收子单元用于接收该第二主控单元发送的触发信号,该触发信号为该第二主控单元判断该第一主控单元发生异常后发送的信号;
该使能子单元用于在该接收子单元接收到该触发信号后使能该第二主控单元的中断处理权限。
可选的,
所述装置还可以包括修复单元,该修复单元用于在该判断单元判断该第一主控单元发生异常后,修复该第一主控单元;
该确定单元还包括第三子单元,该第三子单元用于在该修复单元修复该第一主控单元后确定该第一主控单元为备用主控单元。
具体实现时,修复第一主控单元可以通过软件方式进行修复。修复方法可以是软件复位。
可选的,
所述装置还可以包括用于被该多核处理器访问的内存,该内存包括第一存储空间和第二存储空间,该第一存储空间与该第二存储空间没有重叠,该第一存储空间用于被该第一主控单元访问,该第二主控单元被禁止访问该第一存储空间,该第二存储空间用于被该第二主控单元访问,该第一主控单元被禁止访问该第二存储空间。
上述技术方案可以防止第一主控单元和第二主控单元对同一块存储空间进行访问。
需要说明的是,本发明实施例中的“第一”和“第二”仅用于对被描述的对象进行区分,不用于限定先后顺序。本发明实施例提供的技术方案可以利用一块主控板实现主备倒换的技术效果。与现有技术中的主用主控板和备用主控板相比,降低了成本。另外,本发明实施例提供的技术方案中,第一主控单元和第二主控单元采用核间通信,相对于板间通信方式,降低了功耗。本领域普通技术人员可以意识到,结合本文中所公开的实施例描述的各示例的单元及算法步骤,能够以电子硬件、或者计算机软件和电子硬件的结合来实现。这些功能究竟以硬件还是软件方式来执行,取决于技术方案的特定应用和设计约束条件。专业技术人员可以对每个特定的应用来使用不同方法来实现所描述的功能,但是这种实现不应认为超出本发明的范围。所属领域的技术人员可以清楚地了解到,为描述的方便和简洁,上述描述的系统、 装置和单元的具体工作过程,可以参考前述方法实施例中的对应过程,在此不再赘述。在本申请所提供的几个实施例中,应该理解到,所揭露的系统、装置和方法,可以通过其它的方式实现。例如,以上所描述的装置实施例仅仅是示意性的,例如,所述单元的划分,可以仅仅为一种逻辑功能划分,实际实现时可以有另外的划分方式,例如多个单元或组件可以结合或者可以集成到另一个系统,或一些特征可以忽略,或不执行。另一点,所显示或讨论的相互之间的耦合或直接耦合或通信连接可以是通过一些接口,装置或单元的间接耦合或通信连接,可以是电性,机械或其它的形式。所述作为分离部件说明的单元可以是或者也可以不是物理上分开的,作为单元显示的部件可以是或者也可以不是物理单元,即可以位于一个地方,或者也可以分布到多个网络单元上。可以根据实际的需要选择其中的部分或者全部单元来实现本实施例方案的目的。另外,在本发明各个实施例中的各功能单元可以集成在一个处理单元中,也可以是各个单元单独物理存在,也可以两个或两个以上单元集成在一个单元中。所述功能如果以软件功能单元的形式实现并作为独立的产品销售或使用时,可以存储在一个计算机可读取存储介质中。基于这样的理解,本发明的技术方案本质上或者说对现有技术做出贡献的部分或者该技术方案的部分可以以软件产品的形式体现出来, 该计算机软件产品存储在一个存储介质中,包括若干指令用以使得一台计算机设备(可以是个人计算机,服务器,或者网络设备等)执行本发明各个实施例所述方法的全部或部分步骤。而前述的存储介质包括U盘、移动硬盘、只读存储器(英文缩写为ROM,英文全称为Read-Only Memory)、随机存取存储器(英文缩写为RAM,英文全称为Random Access Memory)、磁碟或者光盘等各种可以存储程序代码的介质。以上所述,仅为本发明的具体实施方式
,但本发明的保护范围并不局限于此,任何熟悉本技术领域的技术人员在本发明揭露的技术范围内,可轻易想到变化或替换,都应涵盖在本发明的保护范围之内。因此,本发明的保护范围应所述以权利要求的保护范围为准。
权利要求
1.一种异常处理的方法,其特征在于,包括确定第一主控单元为主用主控单元,确定第二主控单元为备用主控单元,以便于所述第一主控单元通过路由器的主控板与所述路由器的接口板进行交互,所述主控板包括多核处理器,所述多核处理器包括多个核,所述第一主控单元包括所述多个核中的至少一个,所述第二主控单元包括所述多个核中的至少一个;判断所述第一主控单元是否发生异常;当所述第一主控单元发生异常时,确定所述第二主控单元为主用主控单元,以便于所述第二主控单元代替所述第一主控单元通过所述主控板与所述接口板进行交互。
2.根据权利要求1所述的方法,其特征在于,所述判断所述第一主控单元是否发生异常,具体包括当所述第二主控单元在预定的第一时间内没有接收到所述第一主控单元发送的心跳报文时,所述第二主控单元判断所述第一主控单元发生异常;或者,所述第二主控单元向所述第一主控单元发送心跳报文请求;当所述第二主控单元在预定的第二时间内没有接收到所述心跳报文请求对应的响应时,则所述第二主控单元判断所述第一主控单元发生异常。
3.根据权利要求1或2所述的方法,其特征在于,所述确定所述第二主控单元为主用主控单元,具体包括中断处理单元接收所述第二主控单元发送的触发信号,所述触发信号为所述第二主控单元判断所述第一主控单元发生异常后发送的信号;所述中断处理单元根据所述触发信号使能所述第二主控单元的中断处理权限。
4.根据权利要求1 3任一所述的方法,其特征在于,所述判断所述第一主控单元是否发生异常后,所述方法还包括如果所述第一主控单元发生异常,则修复所述第一主控单元;确定所述第一主控单元为备用主控单元。
5.根据权利要求1 4任一所述的方法,其特征在于,所述多核处理器访问的内存包括第一存储空间和第二存储空间,所述第一存储空间与所述第二存储空间没有重叠,所述第一存储空间用于被所述第一主控单元访问,所述第二主控单元被禁止访问所述第一存储空间,所述第二存储空间用于被所述第二主控单元访问,所述第一主控单元被禁止访问所述第二存储空间。
6.一种异常处理的装置,其特征在于,包括确定单元以及判断单元所述确定单元包括第一子单元以及第二子单元;所述第一子单元用于确定第一主控单元为主用主控单元,确定第二主控单元为备用主控单元,以便于所述第一主控单元通过路由器的主控板与所述路由器的接口板进行交互, 所述主控板包括多核处理器,所述多核处理器包括多个核,所述第一主控单元包括所述多个核中的至少一个,所述第二主控单元包括所述多个核中的至少一个;所述第二子单元用于当判断单元判断所述第一主控单元发生异常时,确定所述第二主控单元为主用主控单元,以便于所述第二主控单元代替所述第一主控单元通过所述主控板与所述接口板进行交互;所述判断单元用于判断所述第一主控单元是否发生异常。
7.根据权利要求6所述的装置,其特征在于,所述判断单元具体包括第一接收子单元,用于接收所述第一主控单元发送的心跳报文;第一判断子单元,用于当所述第一接收子单元在预定的第一时间内没有接收到所述第一主控单元发送的心跳报文时,判断所述第一主控单元发生异常;或者,发送子单元,用于向所述第一主控单元发送心跳报文请求;第二接收子单元,用于接收所述心跳报文请求对应的响应;第二判断子单元,用于当所述第二接收子单元在预定的第二时间内没有接收到所述心跳报文请求对应的响应时,判断所述第一主控单元发生异常。
8.根据权利要求6或7所述的装置,其特征在于,所述第二子单元具体包括接收子单元以及使能子单元所述接收子单元用于接收所述第二主控单元发送的触发信号,所述触发信号为所述第二主控单元判断所述第一主控单元发生异常后发送的信号;所述使能子单元用于在所述接收子单元接收到所述触发信号后使能所述第二主控单元的中断处理权限。
9.根据权利要求6 8任一所述的装置,其特征在于,所述装置还包括修复单元,所述修复单元用于在所述判断单元判断所述第一主控单元发生异常后,修复所述第一主控单元;所述确定单元还包括第三子单元,所述第三子单元用于在所述修复单元修复所述第一主控单元后确定所述第一主控单元为备用主控单元。
10.根据权利要求6 9任一所述的装置,其特征在于,所述装置还包括用于被所述多核处理器访问的内存,所述内存包括第一存储空间和第二存储空间,所述第一存储空间与所述第二存储空间没有重叠,所述第一存储空间用于被所述第一主控单元访问,所述第二主控单元被禁止访问所述第一存储空间,所述第二存储空间用于被所述第二主控单元访问,所述第一主控单元被禁止访问所述第二存储空间。
全文摘要
本发明实施例提供了一种异常处理的方法,该方法包括确定第一主控单元为主用主控单元,确定第二主控单元为备用主控单元,以便于该第一主控单元通过路由器的主控板与该路由器的接口板进行交互,该主控板包括多核处理器,该多核处理器包括多个核,该第一主控单元包括该多个核中的至少一个,该第二主控单元包括该多个核中的至少一个;判断该第一主控单元是否发生异常;当该第一主控单元发生异常时,确定该第二主控单元为主用主控单元,以便于该第二主控单元代替该第一主控单元通过该主控板与该接口板进行交互。此外,本发明实施例还提供了相应的装置。通过本发明实施例提供的技术方案,可以降低成本。
文档编号H04L12/24GK102571443SQ20121001920
公开日2012年7月11日 申请日期2012年1月20日 优先权日2012年1月20日
发明者王江, 王茂盛 申请人:华为技术有限公司
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1