一种管理板、双管理板的模块化设备以及主控板选举方法

文档序号:7856429阅读:247来源:国知局
专利名称:一种管理板、双管理板的模块化设备以及主控板选举方法
技术领域
本发明涉及通信领域,尤其涉及一种管理板、双管理板的模块化设备以及主控板选举方法。
背景技术
在数据通信领域,模块化设备的管理板一般需要支持冗余备份,所以一般中高端模块化设备使用双管理板设计以提高设备的可靠性。在模块化设备工作时,起到绝对主导作用的管理板可以称之为主控板(Master),而另一张处于备份状态的管理板可以称之为从属板(Slave)。模块化设备的双管理板设计提高了设备的可靠性,但为了最大化地缩短主机启动时间,双管理板设计也引入了新问题如何进行快速的主从选举(主控板选举),即如何快速确定哪一张管理板为Master,哪一张管理板为Slave。 通常主从选举需要两张管理板完全初始化起来,包括内核完全运行以及外围初始化基本结束,建立稳定的双管理板之间的内部通信连接关系并运行内部通信协议。而双管理板通信建立之后进行选举的过程还要相互确认和同步配置,然后才能确定主从(Master/Slave)关系,并由主控板启动模块化设备中接口板的初始化和配置,实现主机的启动。目前流行的双管理板之间的连接关系可以如图I所示。图I中CM1,CM2分别表示一张管理板(同时也表示该管理板的槽位号码)。每个管理板包括串行解串接收发送(Serdes-in-out)双向接口,用于实现CMl和CM2之间的协议通信;在位检测(Present_in)接口(也可以称为Present-cm接口,或简称为Present接口),若该接口接收到对方管理板发送的有效Present_in信号,则确认对方管理板存在或在位;确认接收/发送(Master-in/out)接口,其中Master-out接口可以发送置为有效的Master-out信号,指示本管理板为Master, Master-in接口用于接收对方管理板发送的Master-out信号,确认对方管理板是否为Master ;准备状态接收/发送(Ready-in/out)接口,Ready-out接口可以发送置为有效的Ready-out信号,指示本管理板已准备好,Ready-in接口用于接收对方管理板发送的Ready-out信号,确认对方管理板是否准备好。在模块化设备上电或复位(启动)时,如果只有一个管理板在位,则比较简单,直接确认该管理板为Master。如果双管理板都在位(present_in信号均为有效),则进行主从选举时,针对每张管理板,其选举流程可以如图2所示。首先需要获取用户对自身的预配置值(即用户对该模块化设备所处网络的预配置值,通常初次启动为空配置),并且需要初始化Serdes通道(即图I中的Serdes-in-out双向通路),用于实现双管理板之间的软件通信交互。之后获取用户对对方管理板的预配置值,如果获取成功,则可以根据双方的配置情况来决定出主控板(如果根据双方的配置情况无法决定,则可以通过槽位号来决定哪个管理板是主控板(如默认插入在CMl槽位的管理板是主控板)),如果获取失败,如超过设定的时长仍为获取对方管理板的预配置值,则可以确定自身为主控板。
现有的主从选举方案至少存在以下问题I)选举方式以管理板的配置为中心,而且必须要双管理板都要运行完文件系统的初始化以及初始化Serdes通道,然后从各自中央处理器(CPU)下挂的配置存储器中读取配置信息,并且通过Serdes通道进行双管理板之间的同步操作,同步操作必须传送完各自所有的配置信息,配置越多,则同步越慢。作为网络基础通信设施,这耗费了宝贵的启动时间(会引起用户断网或关键业务的中断),现有方案在经过反复优化后,在典型配置下(非复杂配置),启动时间只能优化到30多秒,而复杂配置的情况下,启动时间则需要40多秒。2)由于全程涉及到需要通过Serdes接ロ进行协议通信以便交互配置信息,必须要有CPU的高度參与,增大软件的复杂性,同时降低了主从选举的可靠性,可能因为软件死机或程序异常而陷入死循环(尤其是在路由器产品,CPU在启动阶段利用率通常会比较高)。3)由于选举过程涉及Serdes操作,因此对Serdes部分通路的依赖性很强,如果 Serdes电路有某些问题,则主从选举无法进行,整个模块化设备将直接宕机(down),无法启动。且也没有机会修复Serdes的异常。

发明内容
本发明实施例提供ー种管理板、双管理板的模块化设备以及主控板选举方法,用于实现主控板的快速选举,缩短双管理板的模块化设备的启动时间。
ー种管理板,应用于双管理板的模块化设备,该模块化设备的两块管理板均采用所述管理板,所述管理板包括心跳信号发送HB-out接ロ、心跳信号输入HB-in接ロ、在位检测Present_in接ロ、确认发送Master-out接口和确认接收Master-in接ロ,其中HB-out接ロ,用于向对方管理板的HB-in接ロ发送脉冲信号,指示本管理板有心跳信号,可以作为主控板;HB-in接ロ,用于接收对方管理板的HB-out接ロ发送的脉冲信号;Present_in接ロ,用于确定对方管理板的Present_in信号是否有效,在确定对方管理板的Present_in信号为有效的Present_in信号时,确认对方管理板存在或在位;Master-out接ロ,用于向对方管理板的Master-in接ロ发送Master-out信号;Master-in接ロ,用于接收对方管理板的Master-out接ロ发送的Master-out信号,在接收到的Master-out信号为有效的Master-out信号时,确认对方管理板为主控板。ー种双管理板的模块化设备,该模块化设备包括的第一管理板和第二管理板均采用如上所述的管理板,且第一管理板的心跳信号发送HB-out接ロ与第二管理板的心跳信号发送HB-in接ロ连接,第二管理板的HB-out接ロ与第一管理板的HB_in接ロ连接;第一管理板的在位检测Presentjn接ロ连接第二管理板,第二管理板的Present_in接ロ连接第一管理板;第一管理板的确认发送Master-out接ロ与第二管理板的确认接收Master-in接ロ连接,第二管理板的Master-out接ロ与第一管理板的Master-in接ロ连接。一种主控板选举方法,应用于如上所述的双管理板的模块化设备,所述方法包括双管理板的模块化设备在上电或复位时,每块管理板的在位检测Presentjn接ロ确定对方管理板的Present_in信号是否有效
如果一块管理板确定对方管理板的Present_in信号为无效,确认自身为主控板;如果每块管理板均确定对方管理板的Present_in信号为有效,则确定自身的心跳信号输入HB-in接口是否接收到对方管理板的心跳信号发送HB-out接口发送的脉冲信号,如果确认自身的HB-in接口没有接收到对方管理板的HB-out接口发送的脉冲信号,则确认自身为主控板;否则,如果确认自身的HB-in接口接收到对方管理板的HB-out接口发送的脉冲信号,确认自身所在的槽位是否为指定的主控板槽位,如果确认自身所在的槽位是指定的主控板槽位,确认自身为主控板,否则,在确认自身所在的槽位不是指定的主控板槽位时,确认自身为从属板。根据本发明实施例提供的方案,可以在管理板上增加HB-out接口和HB-in接口,通过在HB-out接口发送脉冲信号,来指示本管理板可以作为主控板。双管理板的模块化设备中的两块管理板可以在对方管理板的Presentjn信号均为有效的情况下,根据自身的HB-in接口是否接收到对方管理板的HB-out接口发送的脉冲信号来确定主控板。相对于现有技术中需要执行Serdes通道的初始化,通过Serdes通道获取对方管理板的配置值才能执行主控板选举的方案,将获取配置的过程改为脉冲信号检测的过程,可以大大减少 主控板选举过程所占用的时间,加快双管理板的模块化设备的启动。同时,本发明方案无需Serdes接口的全程通信,因此无需CPU的高度参与,可以提高主从选举的可靠性。且无需涉及Serdes操作,减少了对Serdes部分通路的依赖性。


图I为现有技术提供的双管理板之间的连接关系示意图;图2为现有技术提供的选举流程示意图;图3为本发明实施例一提供的管理板的结构示意图;图4为本发明实施例二提供的管理板的连接示意图;图5为本发明实施例三提供的主控选举方法的步骤流程图;图6为本发明实施例四提供的管理板的状态切换过程示意图。
具体实施例方式针对现有技术中,在双管理板的模块化设备的主控板选举过程中,选举方式以管理板的配置为核心,需要每块管理板都要运行完文件系统的初始化以及初始化Serdes通道,并利用Serdes通道进行双管理板之间的配置信息同步操作,导致主控板选举时间长,模块化设备启动慢的问题,本发明实施例提出,可以控制管理板输出脉冲信号作为心跳信号,根据管理板是否可以输出脉冲信号来表示该管理板是否正常工作(是否可以作为主控板),从而使得双管理板可以根据是否接收到对方管理板发送的脉冲信号来决策主控板,从而大大缩短主控板选举占用的时间,并减少模块化设备启动的时间。下面结合说明书附图和各实施例对本发明方案进行说明。实施例一、本发明实施例一提供一种管理板,该管理板可以应用于双管理板的模块化设备,且可以理解为该模块化设备的两块管理板均采用本发明实施例一提供的管理板。该管理板的结构可以如图3所示,可以包括心跳信号发送(HB-out)接口 11、心跳信号输入(HB-in)接ロ 12、在位检测(Present_in)接ロ 13、确认发送(Master-out)接ロ 14和确认接收(Master-in)接 ロ 15,其中HB-out接ロ 11用于向对方管理板的HB-in接ロ发送脉冲信号,指示本管理板有心跳信号,可以作为主控板;HB-in接ロ 12用于接收对方管理板的HB_out接ロ发送的脉冲信号;Present_in接ロ 12用于确定对方管理板的Present_in信号是否有效,在确定对方管理板的Present_in信号为有效的Present_in信号时,确认对方管理板存在或在位。Master-out接ロ 14用于向对方管理板的Master-in接ロ发送Master-out信号;Master-in接ロ 15用于接收对方管理板的Master-out接ロ发送的Master-out信号,在接收到的Master-out信号为有效的Master-out信号时,确认对方管理板为主控板。 具体的,由于CPLD可以采用灵活的硬件编程语言实现算法,在本实施例中,HB-out接ロ 11向对方管理板的HB-in接ロ发送的脉冲信号可以是由HB-out接ロ所在管理板的中央处理器(CPU)向该管理板上的CPLD的心跳信号寄存器周期性(如,周期可以为200ms)地进行写操作,触发CPLD周期性地产生的脉冲信号。当然,虽然本实施例中需要利用CPU向CPLD的心跳信号寄存器周期性地进行写操作,但相对于现有技术中在主控板选举全程涉及到通过Serdes接ロ进行协议通信以便交互配置信息,必须要有CPU的高度參与,本发明方案对CPU的要求大为降低。另外,由于CPLD可以进行快速的信号判断,HB-in接ロ接收到的脉冲信号也可以发送给所述CPLD,由所述CPLD来确定是否接收到对方管理板发送的脉冲信号。具体的,所述CPLD可以在特定周期(如300ms)内没有收到对方管理板发送的脉冲信号时,确定没有接收到对方管理板发送的脉冲信号。实施例ニ、本发明实施例ニ提供ー种双管理板的模块化设备,且该模块化设备包括的第一管理板和第二管理板均采用如实施例一所述的管理板,模块化设备中第一管理板21和第二管理板22的连接关系可以如图4所示,其中第一管理板的HB-out接ロ与第二管理板的HB-in接ロ连接,第二管理板的HB_out接ロ与第一管理板的HB-in接ロ连接;第一管理板的Present_in接ロ连接第二管理板,第二管理板的Present_in接ロ连接第一管理板;第一管理板的Master-out接ロ与第二管理板的Master-in接ロ连接,第二管理板的Master-out接ロ与第一管理板的Master-in接ロ连接。当然,在每块管理板上还可以进ー步包括现有技术提供的管理板包括的其他接ロ,如串行解串接收发送(Serdes-in-out)双向接ロ,准备状态接收/发送(Ready-in/out)接ロ。且Serdes-in-out双向接ロ,Ready-in/out接ロ在两块管理板之间的连接与现有技术相同。如图4所示,第一管理板的准备状态发送(Ready-out)接ロ与第二管理板的准备状态接收(Ready-in)接ロ连接,第二管理板的Ready-out接ロ与第一管理板的Ready-in接ロ连接。第一管理板的Serdes-in-out双向接ロ与第二管理板的Serdes-in-out双向接ロ连接。需要说明的是,如图4所示,第一管理板和第二管理板之间各接ロ的连接可以理解为是通过模块化设备包括的背板23实现的。本实施例提供的方案相比传统方案,在硬件连接上增加HB-in和HB_out接口的连接,利用硬件(如CPLD)产生的脉冲信号作为心跳(HB)信号,可以将传统方案中获取配置的过程改为心跳检测的过程,从而有效提高主从选举的速度。实施例三、本发明实施例三提供一种主控板选举方法,应用于如实施例二所述的双管理板的模块化设备,该方法的步骤流程可以如图5所示,包括步骤101、双管理板的模块化设备上电或复位。双管理板的模块化设备上电或复位(启动)时,触发主控板选举过程。步骤102、进行在位检测。 在本步骤中,每块管理板的在位检测Present_in接口确定对方管理板的Present_in信号是否有效,如果一块管理板确定对方管理板的Present_in信号为无效,确认自身为主控板,并可以结束本流程。如果每块管理板均确定对方管理板的Present_in信号为有效,则可以继续执行步骤103。当然,在本实施例中,每块管理板在确认自身为主控板时,可以将Master-out信号置为有效,并通过自身的Master-out接口向对方管理板的Master-in接口发送该Master-out信号,通知对方管理板自身为主控板。步骤103、确定是否接收到心跳信号。确定自身的心跳信号输入HB-in接口是否接收到对方管理板的心跳信号发送HB-out接口发送的脉冲信号(心跳信号),如果确认自身的HB-in接口没有接收到对方管理板的HB-out接口发送的脉冲信号,则可以认为对方管理板不可以作为主控板,确认自身为主控板,并结束本流程,如果确认自身的HB-in接口接收到对方管理板的HB-out接口发送的脉冲信号,认为对方管理板和自身均可以作为主控板,无法决策出自身是否为主控板,则可以继续执行步骤104。步骤104、确认自身所在的槽位是否为指定的主控板槽位。如果一块管理板接收到对方管理板发送的心跳信号,则可以通过预先指定的主控板槽位来决策自身是否为主控板。如,用CMl和CM2标识两个管理板槽位,并可以指定CMl槽位为主控板槽位,即可以理解为将插入CMl槽位的管理板作为主控板。在本步骤中,如果管理板确认自身所在的槽位是指定的主控板槽位(如CMl槽位),确认自身为主控板,否则,在确认自身所在的槽位不是指定的主控板槽位时,确认自身为从属板。根据步骤IOf步骤104实现的主控板选举方法,在主控板选举过程利用心跳信号检测取代现有技术中的获取配置过程,因此无需像现有技术那样,在主控板选举全程涉及到通过Serdes接口进行协议通信以便交互配置信息,必须要有CPU的高度参与,使得本发明方案对CPU的要求大为降低,大大增强主从选举的可靠性,并可以有效减少主控板选举占用的时间。且本发明方案提供的主从选举过程无需Serdes接口的参与,对Serdes接口的依赖性大大降低,进一步提高了主从选举的可靠性。经过上述步骤IOf 104的主控板选举过程,针对每块管理板,可能出现以下情况该管理板确认自身为主控板,且确定对方管理板的Present_in信号为有效(即该管理板和对方管理板均在位),这种情况可以认为该管理板进入该管理板为主控板,双管理板在位(Dual Master)状态;或者出现,该管理板确认自身为从属板,且确定对方管理板的Presentjn信号为有效(即该管理板和对方管理板均在位),这种情况可以认为该管理板进入该管理板为从属板,双管理板在位(Dual Slave)状态;也可能出现,该管理板确认自身为主控板,且确定对方管理板的Present_in信号为无效(即只有该管理板在位),这种情况可以认为该管理板进入该管理板为主控板,单管理板在位(Single Master)状态。当然,管理板也可能出现无法输出脉冲信号的问题,进入挂起(Halt)状态。当然,一块管理板在处于Halt、Single Master、Dual Master 或 Dual Slave 状态时,可以理解为模块化设备处于ー块管理板为主控板,ー块管理板为从属板的正常状态,但也有可能模块化设备不是处于ー块管理板为主控板,ー块管理板为从属板的正常状态,如模块化设备可能处于两块管理板均为主控板或两块管理板均为从属板的异常状态。
为了实现管通板状态在Halt、Single Master、Dual Master 和 Dual Slave 之间的切換,实现管理板的状态维护并使得模块化设备最终进入一块主控板、一块从属板的正常状态,本发明实施例进ー步提供了解决方案,下面通过实施例四进行说明。实施例四、管理板的状态切换过程可以如图6所示,除了包括管理板的Halt、SingleMaster、Dual Master和Dual Slave状态之外,还可以进一步将管理板的上电或复位的启动过程用启动状态(New Start)表示,将该管理板的主控板选举过程用协商状态(Negotiation)表示。各状态之间转换的触发条件如图6所示,图6中的附图标记N表示发生条件N,N为1,2,……14。其中,条件I可以理解为管理板上电或复位成功,触发该管理板从启动状态进入协商状态。管理板进入协商状态之后,如果满足条件2 :该管理板确认自身为主控板,且确定对方管理板的Present_in信号为有效,则该管理板进入Dual Master状态。如果满足条件3 :该管理板确认自身为从属板,且确定对方管理板的Present_in信号为有效,则该管理板进入Dual Slave状态。如果满足条件4 :该管理板确认自身为主控板,且确定对方管理板的Present_in信号为无效,则该管理板进入Single Slave状态。管理板进入协商状态之后,在该管理板无法通过自身的HB-out接ロ发送脉冲信号时,会进入挂起状态,因此,条件13可以理解为该管理板无法通过自身的HB-out接ロ发送脉冲信号(当然,实际上条件13可能是由于管理板无法启动引起的,也可能是仅仅是由于管理板发生局部功能异常,如接ロ发生异常,无法输出脉冲信号导致的)。而管理板在进入挂起状态之后,会停止喂狗(喂狗是由CPU执行的ー种周期性的动作,确保CPU不会发生重启的ー种机制)。并可以主动进行复位重启,进入启动状态,或者在接收到重启指令时,进行复位重启,进入启动状态,直到自身启动成功。因此,条件14可以理解为管理板主动发生复位或接收到复位指令进行复位。当然,较优的,如果确定ー块管理板无法启动时,主控板可以输出提示信息,提示该管理板发生故障,无法启动。管理板进入Dual Master状态之后,如果该管理板接收到主从切换指令,所述主从切換指令用于指示将主控板切換为从属板,将从属板切換为主控板,则该管理板确认自身为从属板,且认为对方管理板在位,该管理板进入Dual Slave状态。因此,条件5可以理解为该管理板接收到主从切换指令。该主控切換指令可以理解为用户手动发起的。
管理板进入Dual Master状态之后,如果满足条件7 :该管理板确定对方管理板的Presentjn信号为无效,则该管理板确认自身为主控板,且认为对方管理板不在位,该管理板进入Single Master状态。管理板进入Dual Slave状态之后,如果该管理板接收到主从切换指令,则该管理板均确认自身为主控板,且认为对方管理板在位,该管理板进入Dual Master状态。或者,如果该管理板接收到对方管理板发送的无效的Master-out信号,则该管理板确认自身为主控板,且认为对方管理板在位,该管理板进入Dual Master状态。因此,条件6可以理解为该管理板接收到主从切换指令或者接收到对方管理板发送的无效的Master-out信号。管理板进入Dual Slave状态之后,如果满足条件9中的任意一项,该管理板确认自身为主控板,且认为对方管理板不在位,该管理板进入Sinlge Master状态。其中,条件9可以包括该管理板确定对方管理板的Presentjn信号为无效;或者该管理板接收到对方管理板发送的无效的Master-out信号,且确定自身的心跳信号输 入HB-in接口没有接收到对方管理板的心跳信号发送HB-out接口发送的脉冲信号。进一步的,条件9中包括的该管理板确定对方管理板的Presentjn信号为无效的条件,可以为该管理板确定对方管理板的Present_in信号为无效,且确定自身的心跳信号输入HB-in接口没有接收到对方管理板的心跳信号发送HB-out接口发送的脉冲信号。管理板进入Sinlge Master状态之后,如果满足条件8,即确定对方管理板的Presentjn信号为有效,且该管理板的HB_in接口接收到对方管理板的HB-out接口发送的脉冲信号,则该管理板确认自身为主控板,且认为对方管理板也在位,该管理板进入DualMaster 状态。当然,不论管理板是处于Single Slave状态、Dual Master状态或Dual Slave状态,该管理板均会在接收到重启指令时,进行复位重启,进入启动状态。且该管理板会执行喂狗,在喂狗时间超出设定的时长时,也会进行复位重启,进入启动状态。因此,条件10、条件U、条件12均可以理解为出现喂狗超时,或者接收到复位指令。根据本实施例提供的管理板的状态切换过程,使得即使管理板处于不同的状态,也可以根据各条件的控制,实现各状态之间的切换,并可以最终使得模块化设备进入一块主控板、一块从属板的正常状态,从而使得本发明实施例提供的方案具有管理板状态维护和对主控板选举异常进行恢复的能力,提高主控板选举的成功率,避免选举结果的不确定性,保证主控板和从属板角色的正确性。根据本发明实施例一 实施例四提供的方案,可以有效提高主从选举的速度,将主从选举(和主从切换)的速度提升到毫秒级别,极大地减少选举时间。同时,对CPU的依赖性显著降低,关键的选举层面完全由硬件实现,CPU只需处于被动单向操作状态,也不需依赖Serdes接口(Serdes接口通常需要使用一颗交换芯片实现,并且需要进行软件初始化配置),极大提高主从选举的成功率,即使Serdes接口失效,在选举结束后,主控板仍然可以对其实施一定的隔离、修复措施,提高了系统的可靠性。且可以具有管理板状态维护和对主控板选举异常进行恢复的能力,进一步提高主控板选举的成功率,避免选举结果的不确定性。本发明实施例提供的方案不限于解决现有技术提供的利用Serdes接口进行双管理板之间的配置信息同步,从而实现主控板选举的方案中,主控板选举速度慢,选举可靠性较低的问题,也同样适用于解决现有技术提供的利用其他通信接口,如100BASE-TX,100BASE-T等接ロ进行双管理板之间的配置信息同歩,从而实现主控板选举的方案中,存在的类似的主控板选举速度慢,选举可靠性较低的问题。另外,本发明实施例方案提供的模块化设备的主控板和从属板的选举方式,经过扩展可以应用在2台甚至多台设备(这里定义的设备不限于模块化设备,也可以是指单机设备。)之间,实现多台堆叠(堆叠是把多台设备当作一台设备来统ー管理和使用的技木)应用时快速选举主机。即本发明实施例提供的方案不限于应用于模块化设备的主控板选举。本领域内的技术人员应明白,本申请的实施例可提供为方法、系统、或计算机程序产品。因此,本申请可采用完全硬件实施例、完全软件实施例、或结合软件和硬件方面的实施例的形式。而且,本申请可采用在一个或多个其中包含有计算机可用程序代码的计算机可用存储介质(包括但不限于磁盘存储器、CD-ROM、光学存储器等)上实施的计算机程序产品的形式。本申请是參照根据本申请实施例的方法、设备(系统)、和计算机程序产品的流程图和/或方框图来描述的。应理解可由计算机程序指令实现流程图和/或方框图中的每ー 流程和/或方框、以及流程图和/或方框图中的流程和/或方框的结合。可提供这些计算机程序指令到通用计算机、专用计算机、嵌入式处理机或其他可编程数据处理设备的处理器以产生ー个机器,使得通过计算机或其他可编程数据处理设备的处理器执行的指令产生用于实现在流程图ー个流程或多个流程和/或方框图ー个方框或多个方框中指定的功能的装置。这些计算机程序指令也可存储在能引导计算机或其他可编程数据处理设备以特定方式工作的计算机可读存储器中,使得存储在该计算机可读存储器中的指令产生包括指令装置的制造品,该指令装置实现在流程图ー个流程或多个流程和/或方框图ー个方框或多个方框中指定的功能。这些计算机程序指令也可装载到计算机或其他可编程数据处理设备上,使得在计算机或其他可编程设备上执行一系列操作步骤以产生计算机实现的处理,从而在计算机或其他可编程设备上执行的指令提供用于实现在流程图ー个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的步骤。尽管已描述了本申请的优选实施例,但本领域内的技术人员一旦得知了基本创造性概念,则可对这些实施例做出另外的变更和修改。所以,所附权利要求意欲解释为包括优选实施例以及落入本申请范围的所有变更和修改。显然,本领域的技术人员可以对本申请进行各种改动和变型而不脱离本申请的精神和范围。这样,倘若本申请的这些修改和变型属于本申请权利要求及其等同技术的范围之内,则本申请也意图包含这些改动和变型在内。
权利要求
1.一种管理板,应用于双管理板的模块化设备,该模块化设备的两块管理板均采用所述管理板,其特征在于,所述管理板包括心跳信号发送HB-OUt接口、心跳信号输入HB-in接口、在位检测Present_in接口、确认发送Master-out接口和确认接收Master-in接口,其中 HB-out接口,用于向对方管理板的HB-in接口发送脉冲信号,指示本管理板有心跳信号,可以作为主控板; HB-in接口,用于接收对方管理板的HB-out接口发送的脉冲信号; Present_in接口,用于确定对方管理板的Present_in信号是否有效,在确定对方管理板的Present_in信号为有效的Present_in信号时,确认对方管理板存在或在位;Master-out接口,用于向对方管理板的Master-in接口发送Master-out信号;Master-in接口,用于接收对方管理板的Master-out接口发送的Master-out信号,在接收到的Master-out信号为有效的Master-out信号时,确认对方管理板为主控板。
2.如权利要求I所述的管理板,其特征在于,HB-out接口向对方管理板的HB-in接口发送的脉冲信号是由HB-out接口所在管理板的中央处理器CPU向该管理板上的复杂可编程逻辑器件CPLD的心跳信号寄存器周期性地进行写操作,触发CPLD周期性地产生的脉冲信号;HB-in接口,还用于将接收到的脉冲信号发送给所述CPLD。
3.一种双管理板的模块化设备,其特征在于,该模块化设备包括的第一管理板和第二管理板均采用如权利要求I或2所述的管理板,且第一管理板的心跳信号发送HB-out接口与第二管理板的心跳信号发送HB-in接口连接,第二管理板的HB-out接口与第一管理板的HB-in接口连接; 第一管理板的在位检测Present_in接口连接第二管理板,第二管理板的Present_in接口连接第一管理板; 第一管理板的确认发送Master-out接口与第二管理板的确认接收Master-in接口连接,第二管理板的Master-out接口与第一管理板的Master-in接口连接。
4.一种主控板选举方法,应用于如权利要求3所述的双管理板的模块化设备,其特征在于,所述方法包括 双管理板的模块化设备在上电或复位时,每块管理板的在位检测Present_in接口确定对方管理板的Present_in信号是否有效 如果一块管理板确定对方管理板的Present_in信号为无效,确认自身为主控板; 如果每块管理板均确定对方管理板的Present_in信号为有效,则确定自身的心跳信号输入HB-in接口是否接收到对方管理板的心跳信号发送HB-out接口发送的脉冲信号,如果确认自身的HB-in接口没有接收到对方管理板的HB-out接口发送的脉冲信号,则确认自身为主控板;否则,如果确认自身的HB-in接口接收到对方管理板的HB-out接口发送的脉冲信号,确认自身所在的槽位是否为指定的主控板槽位,如果确认自身所在的槽位是指定的主控板槽位,确认自身为主控板,否则,在确认自身所在的槽位不是指定的主控板槽位时,确认自身为从属板。
5.如权利要求4所述的方法,其特征在于,所述方法还包括在一块管理板无法通过自身的HB-out接口发送脉冲信号时,则进入挂起HALT状态,停止喂狗,并主动进行复位重启,或者在接收到重启指令时,进行复位重启,直到自身启动成功。
6.如权利要求4所述的方法,其特征在于,每块管理板在确认自身为主控板时,将Master-out信号置为有效,并通过自身的Master-out接口向对方管理板的Master-in接口发送该Master-out信号。
7.如权利要求4飞任一所述的方法,其特征在于,所述方法还包括在一块管理板确认自身为主控板,且确定对方管理板的Present_in信号为有效时,如果该管理板接收到主从切换指令,所述主从切换指令用于指示将主控板切换为从属板,将从属板切换为主控板,则该管理板确认自身为从属板,且认为对方管理板在位。
8.如权利要求4飞任一所述的方法,其特征在于,所述方法还包括 在一块管理板确认自身为主控板,且确定对方管理板的Present_in信号为有效时,如果满足以下条件,该管理板确认自身为主控板,且认为对方管理板不在位 该管理板确定对方管理板的Present_in信号为无效。
9.如权利要求4飞任一所述的方法,其特征在于,所述方法还包括 在一块管理板确认自身为主控板,且确定对方管理板的Present_in信号为有效时,该管理板在接收到重启指令时,进行复位重启,或者该管理板在喂狗时间超出设定的时长时,进行复位重启。
10.如权利要求4飞任一所述的方法,其特征在于,所述方法还包括 在一块管理板确认自身为从属板,且确定对方管理板的Present_in信号为有效时,如果该管理板接收到主从切换指令,所述主从切换指令用于指示将主控板切换为从属板,将从属板切换为主控板,则该管理板确认自身为主控板,且认为对方管理板在位;或者,如果该管理板接收到对方管理板发送的无效的Master-out信号,则该管理板确认自身为主控板,且认为对方管理板在位。
11.如权利要求4飞任一所述的方法,其特征在于,所述方法还包括 在一块管理板确认自身为从属板,且确定对方管理板的Present_in信号为有效时,如果满足以下条件中的任意一项,该管理板确认自身为主控板,且认为对方管理板不在位 该管理板确定对方管理板的Present_in信号为无效;或者 接收到对方管理板发送的无效的Master-out信号,且确定自身的心跳信号输入HB_in接口没有接收到对方管理板的心跳信号发送HB-out接口发送的脉冲信号。
12.如权利要求4飞任一所述的方法,其特征在于,所述方法还包括 在一块管理板确认自身为从属板,且确定对方管理板的Present_in信号为有效时,该管理板在接收到重启指令时,进行复位重启,或者该管理板在喂狗时间超出设定的时长时,进行复位重启。
13.如权利要求4飞任一所述的方法,其特征在于,所述方法还包括在一块管理板确认自身为主控板,且确认对方管理板的Present_in信号为无效时,如果该管理板确定对方管理板的Presentjn信号为有效,且该管理板的HB_in接口接收到对方管理板的HB-out接口发送的脉冲信号,则该管理板确认自身为主控板,且认为对方管理板也在位。
14.如权利要求4飞任一所述的方法,其特征在于,所述方法还包括 在一块管理板确认自身为主控板,且确认对方管理板的Present_in信号为无效时,该管理板在接收到重启指令时,进行复位重启,或者该管理板在喂狗时间超出设定的时长时,进行复位重启。
全文摘要
本发明实施例提供一种管理板、双管理板的模块化设备以及主控板选举方法,包括在管理板上增加HB-out接口和HB-in接口,通过在HB-out接口发送脉冲信号,来指示本管理板可以作为主控板。双管理板的模块化设备中的两块管理板可以在对方管理板的Present_in信号均为有效的情况下,根据自身的HB-in接口是否接收到对方管理板的HB-out接口发送的脉冲信号来确定主控板。相对于现有技术中需要执行Serdes通道的初始化,通过Serdes通道获取对方管理板的配置值才能执行主控板选举的方案,将获取配置的过程改为脉冲信号检测的过程,可以大大减少主控板选举流程所占用的时间,加快双管理板的模块化设备的启动。
文档编号H04L12/02GK102820973SQ20121025497
公开日2012年12月12日 申请日期2012年7月20日 优先权日2012年7月20日
发明者陈武 申请人:福建星网锐捷网络有限公司
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1