一种防止bfd会话中断的方法和设备的制作方法

文档序号:7741304阅读:283来源:国知局
专利名称:一种防止bfd会话中断的方法和设备的制作方法
技术领域
本发明涉及通信技术领域,特别涉及一种防止BFD会话中断的方法和设备。
背景技术
为了保护关键应用,网络中会设计有一定的冗余备份链路,网络发生故障时就要求网络设备能够快速检测出故障并将流量切换至备份链路以加快网络收敛速度。目前,针对 OAM(Operations,Administration and Maintenance,操作、管理和维护)的应用,已经设计出相关的快速检测协议有很多种,例如802. lag/RRPP(Rapid Ring Protection Protocol,快速环网保护协议)/BFD (Bidirectional Forwarding Detection, 双向转发检测)协议等。BFD协议提供了一个通用的标准化的介质无关和协议无关的快速故障检测机制。 BFD协议可以为各上层协议,如各路由协议、MPLS (Multi-Protocol Label Switching,多协议标签交换)协议等,统一地快速检测两台网络设备间双向转发路径的故障,检测时间小于1秒。BFD协议在两台网络设备上建立会话,用来保护两台设备间的双向转发路径,为上层协议服务。BFD协议依靠被服务的上层协议建立会话,会话建立后如果在规定的时间内没有从对端收到一个BFD报文则认为发生故障,进而通知被服务的上层协议进行相应的处理。许多时间敏感业务(如语音、视频数据等)要求50ms故障切换的性能,所以,有时要求BFD报文的发送间隔设置为IOms左右,超时时间一般设置为30ms。为了满足BFD协议快速收发包的需要,相应的设备会使用一个单独的CPU (Central Processing Unit,中央处理器)、或者多核CPU中的一个核、或者NP(Network Processor,网络处理器)芯片专门来进行OAM类协议报文的快速收发和故障检测,这样的单独CPU、或者多核CPU中的一个核、或者NP芯片统称为辅助CPU。辅助CPU主要用于BFD报文封装、发送、接收和解封装处理,实现报文统计功能并上报检测事件到主CPU。许多单板都具有双核CPU,可以支持整个机框的OAM业务(以下称为OAM单板), 因此,其中的一核可以作为辅助CPU。当一个机框插入多个OAM单板时,将其中一个单板的 0AM CPU作为主设备(Master),负责承担整机的OAM检测功能,在其他单板的0AM CPU中选择一个备设备(Mandby),而剩余的其他0AM CPU作为常规设备(Normal),因此,OAM辅助 CPU在选举上有三种身份:Master, Standby, Normal。当作为Master的OAM单板被拔出时,Standby必须立刻切换为Master,切换时间要求在30ms以内。在现有技术中,相应的处理机制如下默认所有的0AM CPU都在工作,所以,各0AM CPU维护相同的OAM链接数据,但是, 只有Master才会对OAM报文进行收发,而其它的0AM CPU关闭OAM报文收发功能,这个开关是由驱动进行控制。
当发生OAM CPU发生主备切换时,由驱动打开Mandby单板的OAM报文收发功能。由于OAM报文发送给CPU是采用ACL(Access Control List,访问控制表)重定向来实现,所以重定向的目的MOD应该为虚MOD,虚MOD的路由受网片指定,这样OAM主备切换时,只需要修改网片的MOD ID单播路由即可,而不需要再去修改所有单板的ACL重定向目的。在实现本发明的过程中,发明人发现现有技术至少存在以下问题然而实际测试过程中,经常发现当0AM Master异常或被拔出时,BFD会话中断。说明现有实现方案,无法保障0AM Master切换时BFD会话的连续性。产生这样的问题的原因在于,当0AM Master故障时,首先由主控板检测到,再通过 IPC(Inter-Process Communication,进程间通信)通知到各单板;Standby单板处理此事件,将自身切换为Master,打开OAM收发功能;同时IPC通知网板完成MOD映射的修改。这样,OAM报文才可以正常收发。然而,此过程涉及多次板间IPC通信,还有多次任务切换过程,需要多块单板协作才可以完成,而这样的操作无法保障在20ms左右的时间内完成,因此,必然造成BFD会话中断。在堆叠环境下,0AM Mandby和Master还可能分布在不同的设备上,在这种情况下,IPC性能会进一步降低,而且Master主控板检查OAMMaster故障的时间也会更长,相应的切换效果会更差。

发明内容
本发明提供一种防止BFD会话中断的方法和设备,用以解决现有技术中在当前的主单板出现故障后不能及时将备用单板切换为主单板,并进而导致BFD会话中断的问题。为达到上述目的,本发明一方面提供了一种防止BFD会话中断的方法,所述方法至少包括以下步骤当OAM设备中的作为备用单板的第二单板在预设的检测周期内没有收到作为主单板的第一单板发送的保活报文时,所述第二单板开启自身的OAM报文发送功能;所述第二单板请求所述OAM设备将报文接收方向上的所有相关表项所对应的单板信息修改为所述第二单板的信息;所述第二单板开启自身的OAM报文接收功能,并通知所述OAM设备将所述第二单板切换为所述OAM设备的主单板;其中,所述保活报文的发送周期的大小小于所述预设的检测周期的大小。优选的,所述第二单板开启自身的OAM报文发送功能,至少包括所述第二单板开始代替所述第一单板向所述OAM设备的对端设备发送BFD报文;所述第二单板开启自身的OAM报文接收功能,至少包括所述第二单板开始接收所述对端设备向所述OAM设备发送的BFD报文;其中,所述BFD报文用于检测所述OAM设备与所述对端设备之间的OAM会话的状态。优选的,当OAM设备中的作为备用单板的第二单板在预设的检测周期内没有收到作为主单板的第一单板发送的保活报文时,还包括所述第二单板停止检测所述第一单板发送的保活报文;
所述第二单板通知所述第一单板将状态由主单板状态切换到普通单板状态。优选的,如果所述OAM设备为分布式设备,所述第二单板请求所述OAM设备将报文接收方向上的所有相关表项所对应的单板信息修改为所述第二单板的信息的过程,具体包括所述第二单板通知所述OAM设备的各成员设备中所包括的作为普通单板的各其他单板,将各自所对应的成员设备中保存的报文接收方向上的所有相关表项所对应的单板信息修改为所述第二单板的信息。 优选的,所述第二单板开启自身的OAM报文接收功能,并通知所述OAM设备将所述第二单板切换为所述OAM设备的主单板之后,还包括所述OAM设备在作为普通单板的其他单板中,确定将第三单板切换为所述OAM设备的备用单板之后,所述第二单板按照所述保活报文的发送周期,向所述第三单板发送保活报文。另一方面,本发明还提供了一种单板,至少包括保活报文传输模块,用于在所述单板为OAM设备的主单板时,向所述OAM设备的备用单板发送保活报文,或在所述单板为OAM设备的备用单板时,接收所述OAM设备的主单板发送的保活报文;检测模块,在所述单板为OAM设备的备用单板时启用,用于检测所述保活报文传输模块是否在预设的检测周期内收到主单板发送的保活报文,其中,所述保活报文的发送周期的大小小于所述预设的检测周期的大小;功能管理模块,用于在所述检测模块的检测结果为否时,开启所述单板的OAM报文发送功能;通信模块,用于在所述检测模块的检测结果为否时,请求所述OAM设备将报文接收方向上的所有相关表项所对应的单板信息修改为所述单板的信息,在所述修改完成后, 通知所述功能管理模块开启所述单板的OAM报文接收功能,并通知所述OAM设备将所述单板切换为主单板。优选的,所述功能管理模块,具体用于在开启所述单板的OAM报文发送功能时,至少通知所述通信模块开始向所述OAM 设备的对端设备发送BFD报文;在开启所述单板的OAM报文接收功能时,至少通知所述通信模块开始接收所述对端设备向所述OAM设备发送的BFD报文;其中,所述BFD报文用于检测所述OAM设备与所述对端设备之间的OAM会话的状态。优选的,所述检测模块,还用于在自身的检测结果为否时,停止继续检测所述保活报文传输模块的保活报文接收情况;所述通信模块,还用于在所述检测模块的检测结果为否时,通知所述OAM设备当前的主单板将状态切换到普通单板状态。优选的,所述通信模块,具体用于在所述OAM设备为分布式设备时,通知所述OAM设备的各成员设备中所包括的作为普通单板的各其他单板,将各自所对应的成员设备中保存的报文接收方向上的所有相关表项所对应的单板信息修改为所述单板的信息。与现有技术相比,本发明具有以下优点通过应用本发明的技术方案,在OAM设备的主单板和备用单板之间建立快速连接检测机制,使备用单板快速检测出主单板的故障,从而优先打开备用单板的OAM发送功能, 使得对端设备不会因为本端OAM设备的主单板切换而中断BFD会话,在本端OAM设备的报文接收方向进行相关表项切换完成后,备用单板打开OAM接收功能,并通知OAM设备将该备用单板切换为主单板,通过应用本发明所提出的技术方案,可以确保两侧的OAM会话始终保持连接,避免因为主单板切换而给业务的稳定性带来不利影响。


图1为本发明所提出的一种防止BFD会话中断的方法的流程示意图;图2为本发明所提出的一种具体应用场景下的防止BFD会话中断的方法的流程示意图;图3为本发明所提出的一种单板的结构示意图。
具体实施例方式如背景技术所述,在现有的OAM设备的主单板切换过程中,需要对于主单板的检测由主控板完成,并需要多次的IPC通信,并且需要在所有的通信和表项更改完成后,才能将备用单板切换为主单板,继续相应的OAM会话,以上过程的完成时间往往大于OAM会话快速检测机制(BFD报文检测机制)对于响应时间的要求,在此过程中,对端设备可能会由于无法及时收到OAM设备所发送的BFD报文而中断相应的OAM会话,降低OAM业务可靠性和稳定性。为了解决这样的问题,本发明提出了一种防止BFD会话中断的方法,在OAM设备的主单板和备用单板之间建立快速连接检测机制,当备用单板在检测出主单板故障时,备用单板在切换为主单板之前,优先打开自身的OAM发送功能,使得对端设备不会因为本端OAM 设备的主单板切换而中断BFD会话,提高业务的稳定性。如图1所示,为本发明提出的一种防止BFD会话中断的方法的流程示意图。在相应的应用场景中,OAM设备与对端设备建立OAM会话,并通过互相检测对端发送的BFD报文,来实现对于该OAM会话状态的检测,该OAM设备中保括多块单板,其中,第一单板为当前的主单板,第二单板为当前的备用单板,其他单板处于普通单板状态。基于上述的应用场景,该方法具体包括以下步骤步骤S101、当OAM设备中的作为备用单板的第二单板在预设的检测周期内没有收到作为主单板的第一单板发送的保活报文时,所述第二单板开启自身的OAM报文发送功能。在本步骤之前,在该OAM设备中,作为主单板的第一单板与作为备用单板的第二单板之间建立快速连接检测机制,相应的快速连接检测机制的规则如下第一单板按照相应的发送周期向第二单板发送保活报文,而第二单板则检测在预设的检测周期中是否至少收到一次第一单板所发送的保活报文,如果判断结果为是,则确认第一单板状态正常,而如果判断结果为否,则确认第一单板故障。其中,为了避免由于传输故障或传输时延等原因导致保活报文出现临时传输错误的情况,所述保活报文的发送周期的大小小于所述预设的检测周期的大小。在本步骤中,第二单板开启自身的OAM报文发送功能的操作,至少包括所述第二单板开始代替所述第一单板向所述OAM设备的对端设备发送BFD报文。开通该功能的原因在于本端的OAM设备与对端设备之间建立了相应的OAM会话状态的检测机制,如果由于第一单板的故障而中断发送相应的BFD报文,则对端设备会因为不能及时收到BFD报文而停止当前的OAM会话,造成OAM业务的中断,为了避免该情况的出现,第二单板在确定第一单板故障后,立即开始代替第一单板发送相应的BFD报文,使对端设备认为OAM会话的状态依旧正常,保证OAM业务的正常进行。另一方面,在第二单板确定第一单板故障后,还进一步包括以下的处理流程(1)所述第二单板停止检测所述第一单板发送的保活报文,由于第一单板的故障, 继续进行保活报文检测已经没有了意义,因此,第二单板可以停止相应的处理进程。(2)所述第二单板通知所述第一单板将状态由主单板状态切换到普通单板状态, 由于第一单板的故障,所以,其已经不能继续作为主单板,因此,可以直接通知其将自身的状态变为普通单板状态,当然,这样的操作也可以在后续的主单板切换过程中来实现,其目的均是为了避免OAM设备中由于存在多个主单板而导致的冲突,这样的变化并不影响本发明的保护范围。步骤S102、所述第二单板请求所述OAM设备将报文接收方向上的所有相关表项所对应的单板信息修改为所述第二单板的信息。在具体的应用场景中,如果该OAM设备为分布式设备,那么,本步骤的处理具体包括所述第二单板通知所述OAM设备的各成员设备中所包括的作为普通单板的各其他单板,将各自所对应的成员设备中保存的报文接收方向上的所有相关表项所对应的单板信息修改为所述第二单板的信息。步骤S103、所述第二单板开启自身的OAM报文接收功能,并通知所述OAM设备将所述第二单板切换为所述OAM设备的主单板。在步骤SlOl中,第二单板开启了自身的OAM报文发送功能,保证了 OAM会话的继续保持,而在本步骤中,由于相应的报文接收方向的相关表项的内容均已修改为第二单板, 该OAM设备所接收的报文均会传输至第二单板来处理,所以,第二单板在本步骤中开启自身的OAM报文接收功能。需要指出的是,在本步骤中的开启OAM报文接收功能的处理,至少包括所述第二单板开始接收所述对端设备向所述OAM设备发送的BFD报文的操作,这样的处理目的在于与步骤SlOl中的处理相对应,即通过接收对端设备发送的BFD报文,实现对OAM会话状态的检测,至于第二单板对其他OAM报文的接收功能,可以在此时开启,可以在本步骤中通知 OAM设备进行主单板切换的时候来开启,这样的变化并不影响本发明的保护范围。在本步骤的操作完成之后,还包括相应的备用单板的选举过程,而且,在新的备用单板选举完成,即所述OAM设备在作为普通单板的其他单板中,确定将第三单板切换为所述OAM设备的备用单板之后,所述第二单板还需要按照所述保活报文的发送周期,向所述第三单板发送保活报文,即在新的主单板与备用单板之间重新建立保活报文的检测机制, 以使备用单板能够及时确定主单板的工作状态。需要指出的是,为了避免主单板和备用单板之间对于保活报文检测机制启动时间的理解差异,备用单板只有在接收到主单板发送的第一个保活报文后,开会启动相应的检测周期的计时,这样避免了由于备用单板检测周期计时启动过早而导致误认为主单板故障的情况的出现。与现有技术相比,本发明具有以下优点通过应用本发明的技术方案,在OAM设备的主单板和备用单板之间建立快速连接检测机制,使备用单板快速检测出主单板的故障,从而优先打开备用单板的OAM发送功能, 使得对端设备不会因为本端OAM设备的主单板切换而中断BFD会话,在本端OAM设备的报文接收方向进行相关表项切换完成后,备用单板打开OAM接收功能,并通知OAM设备将该备用单板切换为主单板,通过应用本发明所提出的技术方案,可以确保两侧的OAM会话始终保持连接,避免因为主单板切换而给业务的稳定性带来不利影响。为了进一步阐述本发明的技术思想,现结合具体的应用场景,对本发明的技术方案进行说明。本发明通过对现有OAM模型的分析,提出了一种新的OAM设备中的主单板故障切换的处理方法。通过在OAM设备的主单板和备用单板之间进行快速连接检测,及时检测出主单板的故障,并在主单板故障时,备用单板先打开OAM报文发送功能,使得对端设备不会中断当前OAM会话,之后,在通知OAM设备完成相应的报文接收方向的表项修改(MOD映射修改) 后,打开OAM报文接收功能,并通知OAM设备将本单板切换为主单板,这样,就使得两侧的用于检测OAM会话状态的BFD报文交互得以始终保持,两端的设备不会因为未接收到BFD报文而中断OAM会话,保障了 OAM业务的稳定性。如图2所示,为本发明所提出的一种具体应用场景下的防止BFD会话中断的方法的流程示意图。在正常状态下,该应用场景中的信息传输和状态检测机制包括(1)主备单板之间的检测。主单板(Master)按照相应的发送周期向备用单板发送Ke印alive报文(保活报文),备用单板(Mandby)按照相应的检测周期对Ke印alive报文进行检测,正常情况下, 每个检测周期中至少应收到一条Ke印alive报文。为了避免因为传输延迟,或者偶然的传输故障导致Keep alive报文的传输失败, 可以将检测周期的时间设置为大于Ke印alive报文的发送周期,甚至数倍于Ke印alive 报文的发送周期的时间,以避免偶然性传输失败对于检测结果的影响,当然,相应的保活报文的检测周期的时间长度应根据故障检测的时间要求来设定,例如,应小于本端OAM设备与对端设备之间的BFD报文的发送周期,具体的保活报文的检测周期的时间长度设定并不会影响本发明的保护范围。根据目前的BFD等协议以30ms作为超时时间来计算,那么,对于Ke印alive报文的发包间隔,可以小于10ms。假设发包Ke印alive报文的发包间隔是t,则备用单板如果在 η个T时间间隔内没有收到从主单板发送过来的报文就认为超时。此处η*Τ应该是在30ms之内。考虑到后面还有切换的动作,故目前的做法是以5ms时间间隔来发送Keep alive报文,报文格式可以随意规定。备用单板如果在连续3个Keep alive报文接收的时间内都没有收到报文,则认为主单板故障。还有,考虑到OAM CPU高速发包的稳定性,发包间隔也不能太小。(2)本端OAM设备与对端设备之间的检测。此种检测的具体规则与现有技术相类似,在此不再重复说明。在以下的实施例描述中,具体以BFD报文为例进行说明,其他类型的协议报文不
再一一列举。当主单板出现故障时,具体的处理过程如下步骤S201、作为备用单板的第二单板判断检测周期内是否收到作为主单板的第一单板发送的Ke印alive报文。由于第一单板故障,所以,第二单板在检测周期(前述的3个Ke印alive报文接收的时间)内将无法及时收到Keep alive报文,第二单板则认为第一单板故障,执行步骤 S202。步骤S202、第二单板应即刻打开本单板的OAM报文发送功能,使得本端OAM设备与对端设备之间的OAM会话检测(BFD会话)不受影响。同时,还可以通知第一单板切换到普通单板(normal)状态。在本实施例中,认为的主单板故障包括主单板拔出、重起,主单板所在框重启,或者堆叠发生分裂等情况。为了防止形成两个主单板竞争的情况,这里先不要在第二单板上进行主单板切换,只需要打开OAM报文发送功能即可,先发OAM会话检测所对应的协议报文,然后把第二单板上的接收Ke印alive报文的状态机关闭。步骤S203、第二单板请求OAM设备修改报文接收方向上的所有相关表项。只有完成了所有相关表项修改后,才可以使得业务口收到的对端的BFD报文重定向到备用单板上来进行处理。需要注意的是,在分布式设备中,特别是堆叠环境中,需要通知所有的单板相应的表项调整,各单板根据需要决定是否响应此事件。第二单板在收到所有的单板的切换完成的消息后,方能通知OAM设备执行步骤 S204。步骤S204、第二单板打开本单板的OAM报文接收功能,并通知OAM设备进行主单板切换,并作为新的主单板继续正常工作。步骤S205、OAM设备选举第三单板为新的备用单板,选举成功后,通知第二单板发送Ke印alive报文给新的备用单板。第二单板此时需要向新的备用单板发送Keep alive报文。新的备用单板在收到第一个Ke印alive报文才启动状态机,开始检测。这样就可以使得两侧的BFD会话始终保持连接,保障了业务的稳定性。与现有技术相比,本发明具有以下优点通过应用本发明的技术方案,在OAM设备的主单板和备用单板之间建立快速连接检测机制,使备用单板快速检测出主单板的故障,从而优先打开备用单板的OAM发送功能,使得对端设备不会因为本端OAM设备的主单板切换而中断BFD会话,在本端OAM设备的报文接收方向进行相关表项切换完成后,备用单板打开OAM接收功能,并通知OAM设备将该备用单板切换为主单板,通过应用本发明所提出的技术方案,可以确保两侧的OAM会话始终保持连接,避免因为主单板切换而给业务的稳定性带来不利影响。为了实现本发明的技术方案,基于前述的说明,本发明还提出了一种单板,其结构示意图如图3所示,至少包括以下模块保活报文传输模块31,用于在所述单板为OAM设备的主单板时,向所述OAM设备的备用单板发送保活报文,或在所述单板为OAM设备的备用单板时,接收所述OAM设备的主单板发送的保活报文;检测模块32,在所述单板为OAM设备的备用单板时启用,用于检测所述保活报文传输模块31是否在预设的检测周期内收到主单板发送的保活报文,其中,所述保活报文的发送周期的大小小于所述预设的检测周期的大小;功能管理模块33,用于在所述检测模块32的检测结果为否时,开启所述单板的 OAM报文发送功能;通信模块34,用于在所述检测模块32的检测结果为否时,请求所述OAM设备将报文接收方向上的所有相关表项所对应的单板信息修改为所述单板的信息,在所述修改完成后,通知所述功能管理模块33开启所述单板的OAM报文接收功能,并通知所述OAM设备将所述单板切换为主单板。其中,所述功能管理模块33,具体用于在开启所述单板的OAM报文发送功能时,至少通知所述通信模块34开始向所述 OAM设备的对端设备发送BFD报文;在开启所述单板的OAM报文接收功能时,至少通知所述通信模块34开始接收所述对端设备向所述OAM设备发送的BFD报文;其中,所述BFD报文用于检测所述OAM设备与所述对端设备之间的OAM会话的状态。进一步的,所述检测模块32,还用于在自身的检测结果为否时,停止继续检测所述保活报文传输模块31的保活报文接收情况;所述通信模块34,还用于在所述检测模块32的检测结果为否时,通知所述OAM设备当前的主单板将状态切换到普通单板状态。在具体的实施场景中,所述通信模块34,具体用于在所述OAM设备为分布式设备时,通知所述OAM设备的各成员设备中所包括的作为普通单板的各其他单板,将各自所对应的成员设备中保存的报文接收方向上的所有相关表项所对应的单板信息修改为所述单板的信息。与现有技术相比,本发明具有以下优点通过应用本发明的技术方案,在OAM设备的主单板和备用单板之间建立快速连接检测机制,使备用单板快速检测出主单板的故障,从而优先打开备用单板的OAM发送功能, 使得对端设备不会因为本端OAM设备的主单板切换而中断BFD会话,在本端OAM设备的报文接收方向进行相关表项切换完成后,备用单板打开OAM接收功能,并通知OAM设备将该备用单板切换为主单板,通过应用本发明所提出的技术方案,可以确保两侧的OAM会话始终保持连接,避免因为主单板切换而给业务的稳定性带来不利影响。通过以上的实施方式的描述,本领域的技术人员可以清楚地了解到本发明可以通过硬件实现,也可以借助软件加必要的通用硬件平台的方式来实现。基于这样的理解,本发明的技术方案可以以软件产品的形式体现出来,该软件产品可以存储在一个非易失性存储介质(可以是⑶-ROM,U盘,移动硬盘等)中,包括若干指令用以使得一台计算机设备(可以是个人计算机,服务器,或者OAM MASTER设备等)执行本发明各个实施场景所述的方法。本领域技术人员可以理解附图只是一个优选实施场景的示意图,附图中的模块或流程并不一定是实施本发明所必须的。本领域技术人员可以理解实施场景中的装置中的模块可以按照实施场景描述进行分布于实施场景的装置中,也可以进行相应变化位于不同于本实施场景的一个或多个装置中。上述实施场景的模块可以合并为一个模块,也可以进一步拆分成多个子模块。上述本发明序号仅仅为了描述,不代表实施场景的优劣。以上公开的仅为本发明的几个具体实施场景,但是,本发明并非局限于此,任何本领域的技术人员能思之的变化都应落入本发明的保护范围。
权利要求
1.一种防止BFD会话中断的方法,其特征在于,所述方法至少包括以下步骤当OAM设备中的作为备用单板的第二单板在预设的检测周期内没有收到作为主单板的第一单板发送的保活报文时,所述第二单板开启自身的OAM报文发送功能;所述第二单板请求所述OAM设备将报文接收方向上的所有相关表项所对应的单板信息修改为所述第二单板的信息;所述第二单板开启自身的OAM报文接收功能,并通知所述OAM设备将所述第二单板切换为所述OAM设备的主单板;其中,所述保活报文的发送周期的大小小于所述预设的检测周期的大小。
2.如权利要求1所述的方法,其特征在于,所述第二单板开启自身的OAM报文发送功能,至少包括所述第二单板开始代替所述第一单板向所述OAM设备的对端设备发送BFD报文;所述第二单板开启自身的OAM报文接收功能,至少包括所述第二单板开始接收所述对端设备向所述OAM设备发送的BFD报文;其中,所述BFD报文用于检测所述OAM设备与所述对端设备之间的OAM会话的状态。
3.如权利要求1所述的方法,其特征在于,当OAM设备中的作为备用单板的第二单板在预设的检测周期内没有收到作为主单板的第一单板发送的保活报文时,还包括所述第二单板停止检测所述第一单板发送的保活报文;所述第二单板通知所述第一单板将状态由主单板状态切换到普通单板状态。
4.如权利要求1所述的方法,其特征在于,如果所述OAM设备为分布式设备,所述第二单板请求所述OAM设备将报文接收方向上的所有相关表项所对应的单板信息修改为所述第二单板的信息的过程,具体包括所述第二单板通知所述OAM设备的各成员设备中所包括的作为普通单板的各其他单板,将各自所对应的成员设备中保存的报文接收方向上的所有相关表项所对应的单板信息修改为所述第二单板的信息。
5.如权利要求1所述的方法,其特征在于,所述第二单板开启自身的OAM报文接收功能,并通知所述OAM设备将所述第二单板切换为所述OAM设备的主单板之后,还包括所述OAM设备在作为普通单板的其他单板中,确定将第三单板切换为所述OAM设备的备用单板之后,所述第二单板按照所述保活报文的发送周期,向所述第三单板发送保活报文。
6.一种单板,其特征在于,至少包括保活报文传输模块,用于在所述单板为OAM设备的主单板时,向所述OAM设备的备用单板发送保活报文,或在所述单板为OAM设备的备用单板时,接收所述OAM设备的主单板发送的保活报文;检测模块,在所述单板为OAM设备的备用单板时启用,用于检测所述保活报文传输模块是否在预设的检测周期内收到主单板发送的保活报文,其中,所述保活报文的发送周期的大小小于所述预设的检测周期的大小;功能管理模块,用于在所述检测模块的检测结果为否时,开启所述单板的OAM报文发送功能;通信模块,用于在所述检测模块的检测结果为否时,请求所述OAM设备将报文接收方向上的所有相关表项所对应的单板信息修改为所述单板的信息,在所述修改完成后,通知所述功能管理模块开启所述单板的OAM报文接收功能,并通知所述OAM设备将所述单板切换为主单板。
7.如权利要求6所述的单板,其特征在于,所述功能管理模块,具体用于在开启所述单板的OAM报文发送功能时,至少通知所述通信模块开始向所述OAM设备的对端设备发送BFD报文;在开启所述单板的OAM报文接收功能时,至少通知所述通信模块开始接收所述对端设备向所述OAM设备发送的BFD报文;其中,所述BFD报文用于检测所述OAM设备与所述对端设备之间的OAM会话的状态。
8.如权利要求6所述的单板,其特征在于,所述检测模块,还用于在自身的检测结果为否时,停止继续检测所述保活报文传输模块的保活报文接收情况;所述通信模块,还用于在所述检测模块的检测结果为否时,通知所述OAM设备当前的主单板将状态切换到普通单板状态。
9.如权利要求6所述的单板,其特征在于,所述通信模块,具体用于在所述OAM设备为分布式设备时,通知所述OAM设备的各成员设备中所包括的作为普通单板的各其他单板,将各自所对应的成员设备中保存的报文接收方向上的所有相关表项所对应的单板信息修改为所述单板的信息。
全文摘要
本发明公开了一种防止BFD会话中断的方法和设备,通过在OAM设备的主单板和备用单板之间建立快速连接检测机制,使备用单板快速检测出主单板的故障,从而优先打开备用单板的OAM发送功能,使得对端设备不会因为本端OAM设备的主单板切换而中断BFD会话,在本端OAM设备的报文接收方向进行相关表项切换完成后,备用单板打开OAM接收功能,并通知OAM设备将该备用单板切换为主单板,通过应用本发明所提出的技术方案,可以确保两侧的OAM会话和BFD会话始终保持连接,避免因为主单板切换而给业务的稳定性带来不利影响。
文档编号H04L12/56GK102223258SQ201110219358
公开日2011年10月19日 申请日期2011年8月2日 优先权日2011年8月2日
发明者刘兴兵, 王明辉 申请人:杭州华三通信技术有限公司
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1