一种实现快速检测的方法和设备的制作方法

文档序号:7973464阅读:231来源:国知局
专利名称:一种实现快速检测的方法和设备的制作方法
技术领域
本发明涉及通信链路的检测技术,特别涉及一种实现快速检测的方法和设备。
背景技术
操作维护管理协议(Operations,Administration and Maintenance,OAM)是为了在一个较复杂的网络中,对网络进行简便、有效的管理而提出的一套标准,该标准基于IEEE 802.3ah协议规范,主要解决最后一英里网络的管理问题。
在IEEE 802.3ah OAM的定义中,OAM主要提供了如下几个功能OAMDISCOVERY连接建立;链路监控;远程环路测试;远程MIB变量获取。
其中,OAM连接建立的工作原理第一OAM实体与第二OAM实体建立OAM连接,即OAM DISCOVERY过程。OAM DISCOVERY连接建立是第一OAM实体发现第二OAM实体并与之建立稳定会话的一种机制,是OAM连接会话的第一个阶段。在这个阶段中,通过OAMPDU双方互相进行OAM实体的配置、端口能力参数与标识的交换。第一OAM实体收到第二OAM实体的参数后,决定是否同意建立OAM连接。比如当第一OAM实体要求第二OAM实体具有远程环回功能,而第二OAM实体却没有这个能力时,该OAM实体可以拒绝建立OAM连接。两端实体协商成功后,建立OAM连接关系。
保持OAM连接。在成功建立OAM连接后,两端的OAM实体每秒至少会发送一个INFO OAMPDU,以通告各自的OAM状态,保持连接。第一OAM实体接收状态机也会启动一个接收定时器,实时监控第二OAM实体的OAM状态。如果在OAM连接超时定时器超时前一直没有接收到第二OAM实体发送的INFO OAMPDU,第一OAM实体认为链路出现故障或第二OAM实体已经关闭OAM协议,于是断开OAM连接,通知其他协议进行备份链路切换,以防止流量中断。
按照IEEE 802.3ah OAM协议规定,链路超时检测机制是通过每个端口启动一个定时器,如果在指定超时时间内没有收到第二OAM实体发送的OAM报文,第一OAM实体才会感知到OAM连接故障。目前,OAM的保持连接报文发送间隔是1秒,连接超时时间是5倍的报文发送间隔,即5秒。如果链路出现故障,OAM需要5秒以上的时间才能够感知。换句话说,一旦出现链路故障,切换到备份链路的时间至少需要5秒,在这5秒内流量是中断的,这在实际的组网运用中是不可接受的。
与OAM协议类似,在通信系统中还存在许多其他慢速协议,如链路汇聚控制协议(LACP)、集群管理协议、虚拟路由冗余备份协议等。对于上面所述的OAM协议中的问题,这些慢速协议也同样存在,即对于链路故障感知迟钝,在链路故障或报文丢失情况下不能够快速地发现问题,及时进行备份链路切换,使得服务质量严重下降。

发明内容
有鉴于此,本发明提供一种实现快速检测的方法,能够实现慢速协议链路故障的快速检测。
本发明还提供一种实现快速检测的设备,能够实现慢速协议链路故障的快速检测。
为实现上述第一个目的,本发明采用如下的技术方案一种实现快速检测的方法,该方法包括a、当第一网络实体在没有按时收到第二网络实体的保持连接状态的报文时,向第二网络实体发送快速探测报文;b、若第一网络实体在规定时间内接收到第二网络实体返回的快速探测响应报文,则判定链路状态正常,否则判定链路出现故障。
较佳地,步骤a中所述向第二网络实体发送快速探测报文时,可以启动预先设置的快速探测等待超时定时器;步骤b中所述规定时间可以为快速探测等待超时定时器的定时时间;步骤b中判定链路状态正常后,可以进一步包括关闭快速探测等待超时定时器。
较佳地,步骤a中所述向第二网络实体发送快速探测报文可以为在快速探测等待超时定时器超时前,第一网络实体向第二网络实体重复发送快速探测报文。
较佳地,步骤a中启动快速探测等待超时定时器时,可以进一步启动快速定时器;所述向第二网络实体重复发送快速探测报文可以为第一网络实体按照快速定时器的设定,定时向第二网络实体发送快速探测报文。
较佳地,预先设置最大探测次数,步骤a中所述发送快速探测报文可以为在未收到快速探测响应报文前,以固定的时间间隔发送快速探测报文;步骤b中所述第一网络实体在规定时间内接收到第二网络实体返回的快速探测响应报文可以为快速探测报文的发送次数超过最大探测次数前,接收到第二网络实体返回的快速探测响应报文。
较佳地,所述快速探测报文可以为新定义的报文或修改后的已有报文。
较佳地,所述快速探测响应报文可以为新定义的报文或步骤a中所述保持连接状态的报文。
较佳地,步骤b中判定链路状态正常后,可以进一步包括第一网络实体切换回正常状态,按照保持连接报文发送间隔发送保持连接状态的报文。
较佳地,步骤b中判定链路出现故障后,可以进一步包括上报链路故障,上层协议根据该链路故障判断是否切换到备份链路。
较佳地,步骤a中所述没有按时收到可以为在相比保持连接报文发送间隔延长后的时间间隔内没有收到。
为实现上述第二个目的,本发明采用如下的技术方案一种实现快速检测的设备,该设备包括接收模块和快速探测模块;所述接收模块,用于接收来自于外部的保持连接状态的报文,并在未按时接收到该报文时,通知快速探测模块进行故障探测;所述快速探测模块,用于接收所述接收模块发送的通知,并将快速探测报文发送出去,还用于接收外部的快速探测响应报文,并在规定时间内接收到该报文时,判定链路状态正常,在规定时间内未接收到快速探测响应报文时,判定链路出现故障。
较佳地,所述快速探测模块可以包括探测报文收发模块、快速探测等待超时定时器和故障判定模块;所述探测报文收发模块,用于接收所述接收模块发送的通知,并将快速探测报文发送出去,启动所述快速探测等待超时定时器,还用于在所述快速探测等待超时定时器的控制下,接收外部的快速探测响应报文,在接收到快速探测响应报文时,通知所述故障判定模块已收到响应,并关闭所述快速探测等待超时定时器,在接收到所述快速探测等待超时定时器发送的超时消息后,通知所述故障判定模块未收到响应;所述快速探测等待超时定时器,用于接收所述探测报文收发模块发送的启动和关闭信号,控制探测等待超时时间,并在定时器超时时,向所述探测报文收发模块发送超时消息;所述故障判定模块,用于接收所述探测报文收发模块发送的通知消息,并对消息进行判断,若该消息是已收到响应的通知,则判定链路状态正常,若该消息是未收到响应的通知,则判定链路出现故障。
较佳地,所述探测报文收发模块可以包括报文收发模块和快速定时器;所述报文收发模块,用于接收所述接收模块发送的通知,并在所述快速定时器的控制下,定时将快速探测报文发送出去,启动所述快速探测等待超时定时器,还用于在所述快速探测等待超时定时器的控制下,接收外部的快速探测响应报文,在接收到快速探测响应报文时,通知所述故障判定模块已收到响应,在接收到所述快速探测等待超时定时器发送的超时消息后,通知所述故障判定模块未收到响应;所述快速定时器,用于接收所述报文收发模块发送的启动信号,控制所述报文收发模块发送快速探测报文的时间间隔。
较佳地,所述快速探测模块可以包括探测报文收发模块、快速定时器、探测次数计数器和故障判定模块;所述探测报文收发模块,用于接收所述接收模块发送的通知,并在所述快速定时器的控制下,定时将快速探测报文发送出去,并在每次发送快速探测报文时通知所述探测次数计数器计数,还用于在所述探测次数计数器的控制下,接收外部的快速探测响应报文,在接收到快速探测响应报文时,通知所述故障判定模块已收到响应,在接收到所述计数器发送的停止探测消息后,通知所述故障判定模块未收到响应;所述快速定时器,用于控制所述探测报文收发模块发送快速探测报文的时间间隔;所述探测次数计数器,用于保存最大探测次数,接收所述探测报文收发模块发送的计数信息,并进行加1操作,当本身的计数值等于保存的最大探测次数时,向所述探测报文收发模块发送停止探测消息;所述故障判定模块,用于接收所述探测报文收发模块发送的通知消息,并对消息进行判断,若该消息是已收到响应的通知,则判定链路状态正常,则判定链路出现故障。
由上述技术方案可见,本发明在慢速协议链路的通信过程中,若第一网络实体在没有按时收到第二网络实体的报文时,即主动向第二网络实体发送快速探测报文,主动探测网络链路是否出现故障;第二网络实体若接收到快速探测报文,则立刻响应,尽量缩短探测时间;若第一网络实体能够在比连接超时时间更短的探测超时时间内接收到快速探测响应,则表明链路正常,第一网络实体切换回正常状态,按协议规定的发送间隔发送报文,否则判定链路出现故障。由于探测超时时间要远小于连接超时时间,因此在链路故障或报文丢失情况下能够快速的发现问题,及时进行备份链路切换,增强网络的健壮性,大大提高服务质量。
更进一步地,第一网络实体发送快速探测报文时,可以在探测超时时间内以一定的频率重复发送,以抵抗网络丢包对快速探测准确度的影响,该发送快速探测报文的时间间隔远小于正常发送保持连接状态报文的发送间隔,可以间接地缩短判定链路正常所需的时间,有效提高探测效率,使网络实体尽快切换回正常状态。
同时,由于本发明是在网络实体中增加了快速探测的状态,但并未影响正常发送握手报文的状态,因此不会造成连接不稳定、网络中协议报文泛滥、增加CPU负担等问题。


图1为本发明的实现快速检测方法的总体流程图。
图2为本发明的实现快速检测设备的总体结构图。
图3为本发明实施例一中OAM协议链路的快速检测方法流程图。
图4为增加快速探测状态机后OAM状态迁移的关系图。
图5为简化的OAM状态迁移图。
图6为本发明实施例一中OAM协议链路的快速检测设备。
图7为本发明实施例二中OAM协议链路的快速检测设备。
具体实施例方式
为使本发明的目的、技术手段和优点更加清楚明白,以下结合附图并举实施例,说明本发明的具体实施方式

本发明的基本思想是当第一网络实体在没有按时收到第二网络实体的报文时,即发送快速探测报文到第二网络实体;第二网络实体在接收到快速探测报文时,立刻响应;若第一网络实体按时接收到快速探测响应报文,则判定链路正常,否则判定链路出现故障。
图1为本发明的实现快速检测方法的总体流程图。如图1所示,该方法包括步骤101,当第一网络实体在没有按时收到第二网络实体的保持连接状态的报文时,发送快速探测报文到第二网络实体。
本步骤中,如果链路正常,第二网络实体接收到快速探测报文,并立刻返回快速探测响应报文;如果链路故障,第二网络实体无法接收到快速探测报文,也就不会返回快速探测响应报文。
步骤102,若第一网络实体在规定时间内接收到第二网络实体返回的快速探测响应报文,则判定链路状态正常,否则判定链路出现故障。
图2为本发明的实现快速检测设备的总体结构图。如图2所示,该设备200包括接收模块220和快速探测模块230。
在该设备200中,接收模块220,用于接收来自于外部的保持连接状态的报文,并在未按时接收到该报文时,通知快速探测模块230进行故障探测。
快速探测模块230,用于接收接收模块220发送的通知,并将快速探测报文发送出去,还用于接收外部的快速探测响应报文,并在按时接收到该报文时,判定链路状态正常,在未按时接收到快速探测响应报文时,判定链路出现故障。
上述设备200可以是在原有OAM实体设备内增加的部分,或者,也可以是对原有OAM实体设备进行的修改,若是后者,那么在该设备中,还可以包括发送模块210,用于执行现有的按照保持连接报文发送间隔定时发送保持连接状态的报文。
以上是对本发明的慢速协议链路的快速检测方法和设备的总体概述,下面举具体实施例对本发明作进一步详细说明。
在本发明中,第一网络实体发送快速探测报文,根据在规定时间内能否接收到第二网络实体返回的快速探测响应报文来判断链路是否出现故障。在此过程中,规定时间的计时方式可以有两种第一,设定一个固定的时间间隔-快速探测等待超时时间为规定时间,在该时间内第一网络实体向第二网络实体一次或多次重复发送快速探测报文,以在该快速探测等待超时时间内能否接收到第二网络实体返回的快速探测响应报文来判断链路是否出现故障;第二,设定最大探测次数和发送快速探测报文的时间间隔,以二者的乘积作为规定时间,第一网络实体按照设定的发送快速探测报文的时间间隔重复向第二网络实体发送快速探测报文,并对已发送报文次数进行计数,第一网络实体以能否在已发送报文次数超过最大探测次数前接收到第二网络返回的快速探测报文,判断链路是否出现故障。
下面分别通过实施例一和实施例二对这两种方式进行详细描述。
本发明的实施例以在OAM协议中进行快速检测的方法和设备为例,说明本发明的实施方式。
实施例一在本实施例中,设定一个固定的时间间隔-快速探测等待超时时间为规定时间,在该快速探测等待超时时间内第一OAM实体向第二OAM实体发送快速探测报文。
图3为本发明实施例一中OAM协议链路的快速检测方法流程图。如图3所示,该方法包括步骤301,OAM连接建立。
本步骤为正常的OAM通信做准备。包括连接本地连接建立、远程连接建立。
步骤302,第一OAM实体定时发送OAM报文,并启动接收定时器。
本步骤中,第一OAM实体发送报文的发送间隔均为1秒。在本发明中,第一OAM实体所启动的接收定时器的定时时间可以与现有技术相同,即为现有的保持连接报文发送间隔,1秒;或者,为防止发送延迟抖动,一种较佳的方式可以为,将接收定时器的时间在保持连接报文发送间隔的基础上适当扩大了一点,本实施例中取接收定时器为1100毫秒。
步骤303,第一OAM实体监测是否在接收定时器超时前接收到握手的OAM报文,若是,则返回步骤302,否则执行步骤304及其后续步骤。
步骤302~303是保持OAM连接的过程,也即第一OAM实体在接收定时器超时前接收到第二OAM实体发送的握手的OAM报文,则表明链路的报文收发正常,第一OAM实体继续以1秒的时间间隔向第二OAM实体发送OAM报文;当报文收发正常时,始终循环执行步骤302~303。
但是若第一OAM实体在接收定时器超时时仍未接收到第二OAM实体发送的握手的OAM报文,则表明链路可能存在问题,立刻开始快速检测,即执行步骤304及其后续步骤。
步骤304,启动快速探测等待超时定时器,向第二OAM实体发送快速探测OAM报文。
本步骤中,快速探测等待超时定时器用来控制探测等待超时时间,该超时时间远小于OAM协议的连接超时时间,在本实施例中为500毫秒,这样就可以在等待500毫秒后判定链路是否出现故障;发送的快速检测OAM报文可以是重新定义的报文格式,或者也可以是对现有OAM报文进行修改后的报文格式,如可以将OAM报文中的扩展字段作相应的定义,形成快速探测OAM报文。
若第二OAM实体接收到快速探测的OAM报文,则立刻响应。
步骤305,第一OAM实体监测是否在快速探测等待超时定时器超时之前,接收到第二OAM实体发送的快速探测响应报文,若是,则返回步骤302,否则执行步骤306及其后续步骤。
在本步骤中,判断是否在探测等待超时定时器超时前接收到第二OAM实体发送的快速探测响应报文,,若是,则判定链路状态正常,返回步骤302,继续以OAM报文发送间隔发送保持连接状态的OAM报文OAMINFOPDU;否则,判定链路出现故障,并上报故障。
这里的快速探测响应报文既可以是新定义的报文,也可以是已有的报文。本实施例中,采用保持连接状态的OAM报文作为快速探测响应报文。即第二OAM实体在正常的通信状态下,以预设的发送间隔发送保持连接状态的OAM报文,也就是每秒发送一次,当接收到快速探测报文后,就立刻发送保持连接状态的OAM报文,作为对快速探测的响应。第一OAM实体在快速探测等待超时定时器超时前,接收到保持连接状态的OAM报文,即确定链路状态正常。
步骤306,判定链路出现故障。
步骤307,第一OAM实体上报故障。
步骤308,第一其他上层协议实体根据上报的故障判断是否切换到备份链路。
至此,本实施例中的方法流程结束。
在上述步骤304中,是向第二OAM实体发送一次快速探测报文,即等待接收报文。事实上,在实际应用中,网络中存在一定的丢包率,如果该快速探测报文丢失,即使OAM链路正常,第二OAM实体也不能及时返回快速探测响应报文。因此在步骤304中,可以重复发送多个快速探测报文,以减小网络中报文丢失对于故障检测准确性的影响,具体实施方式
可以为在发送快速探测报文的同时启动快速定时器,该快速定时器是用来控制快速探测OAM报文的时间间隔的,该时间间隔远小于正常发送OAM报文的发送间隔,也小于快速探测等待超时定时器,如,可以采用100毫秒。在快速探测等待超时定时器超时之前,若未收到OAM实体发送的快速探测的响应报文,则一直按照快速定时器的设定发送快速探测的OAM报文,如每隔100毫秒发送一份快速探测的OAM报文,直到接收到快速探测响应报文,即停止发送;或快速探测等待超时定时器超时,也停止发送。
通过上述快速定时器的控制,在本实施例中,在快速探测等待超时定时器超时前,若始终未收到快速探测响应报文,一共可以发送5个快速探测报文,能够大大减小网络中的丢包现象对故障检测准确性的影响。
使用上述方法后能够实现故障的快速诊断,与原先的5秒比较效果明显。举例来说如果第二OAM实体1秒发一个消息,这样第一OAM实体没有接收到探测消息的平均时间就是1秒,当没有响应时,第一OAM实体启动100毫秒的快速定时器和500毫秒的快速探测等待超时定时器,发送快速探测报文,如果共计5个快速探测报文都没有响应,则判断端口故障。这样总的故障检测时间平均为1.5秒左右。与原来5秒的故障检测时间相比大大缩短,有效提供了故障检测的速度。
在本实施例中,仅以快速定时器的时间间隔为100毫秒,快速探测等待超时定时器的超时时间为500毫秒举例说明,当然在实际应用中,可以根据实际情况,定义不同的时间作为快速定时器的报文发送间隔及快速探测等待超时定时器的超时时间。
应用上述方法后,在OAM实体中,其工作时所处的状态就增加了快速探测状态,当OAM实体处于快速探测状态时,即开始对链路状态进行快速检测。在实现方面,可以通过软件上的快速探测状态机来实现快速探测状态时的操作。
图4为增加快速探测状态机后OAM状态迁移的关系图。如图4所示,OAM实体的状态有OAM连接建立初始状态(OAM DISCOVERY INIT)、OAM连接建立本端状态(OAM DISCOVERY LOCAL)、OAM连接建立远端状态(OAM DISCOVERY REMOTE)、OAM连接建立OK状态(OAMDISCOVERY OK)和快速探测状态。
其中,OAM DISCOVERY INIT、OAM DISCOVERY LOCAL和OAMDISCOVERY REMOTE是在OAM连接建立过程中的三种状态,OAMDISCOVERY OK则是保持连接的过程,它们都是OAM实体中原有的状态,其之间的转移关系与现有技术相同,这里就不再赘述。下面以图3所示方法中的定时时间为例,介绍一下增加的快速检测状态与其它状态间的转移关系。
当第一OAM实体处于OAM DISCOVERY OK时,若在1100毫秒接收定时器超时时,仍未收到第二OAM实体发送的保持连接的OAM报文,则进入快速探测状态,每100毫秒发送1次快速探测OAM报文,启动500毫秒快速探测等待超时定时器;若500毫秒定时器超时时,仍未接收到第二OAM实体发送的快速探测响应报文,则判定链路故障,进入OAMDISCOVERY INIT状态;若在500毫秒定时器超时前,接收到快速探测响应报文,则判定链路正常,进入OAM DISCOVERY OK状态。
图5即为简化的OAM状态迁移图。如图5所示,其中,接收(Rx)状态机即图4中建立连接和保持连接过程中的各种状态机的综合体,OAM快速探测状态机与Rx状态机间的转换条件为当1100毫秒接收定时器超时时,即由Rx状态机转入OAM快速探测状态机,当收到快速探测响应报文时,即由OAM快速探测状态机转入Rx状态机。其它状态机为OAM实体可能处于的其它状态的综合体。
由上述图4和图5的OAM状态迁移关系可以直观地看出,本发明通过OAM快速探测,在不影响正常协议报文收发节奏的情况下,实现了链路故障的快速检测,不会出现连接不稳定、网络中协议报文泛滥、增加CPU负担等问题,是解决慢速协议故障感知迟缓的一个有效手段。
上述为本实施例中提供的一种OAM协议链路的快速故障检测方法,能够实现对链路故障的快速检测。本实施例还提供一种OAM协议链路的快速故障检测设备,可以用于实施上述方法。图6即为本发明实施例一中一种OAM协议链路的快速检测设备。该设备为图2所示的快速检测设备的一种具体实施方式
,并且是在原有OAM实体设备的基础上进行修改后的设备,因此其包括发送模块210。如图6所示,该设备200包括发送模块210、接收模块220和快速探测模块230。在本实施例中,快速探测模块230的具体结构包括探测报文收发模块231、快速探测等待超时定时器232和故障判定模块233,而探测报文收发模块631还包括报文收发模块631a和快速定时器631b。
在该设备200中,发送模块210,用于按照OAM报文发送间隔定时发送保持连接状态的OAM报文。接收模块220,用于接收来自于外部的保持连接状态的OAM报文,并在未按时接收到该报文时,通知快速探测模块230进行故障探测。
在快速探测模块230中,探测报文收发模块231的报文收发模块231a,用于接收接收模块220发送的通知,并在快速定时器231b的控制下,定时将快速探测OAM报文发送出去,启动快速探测等待超时定时器232,还用于在快速探测等待超时定时器232的控制下,接收外部的快速探测响应报文,在接收到快速探测响应报文时,通知故障判定模块233已收到响应,在接收到快速探测等待超时定时器232发送的超时消息后,通知故障判定模块233未收到响应。
探测报文收发模块231的快速定时器231b,用于控制报文收发模块231a发送快速探测报文的时间间隔。
快速探测等待超时定时器232,用于控制探测等待超时时间,并在定时器超时时,向探测报文收发模块231发送超时消息。
故障判定模块233,用于接收探测报文收发模块231发送的通知消息,并对消息进行判断,若是已收到响应的通知,则判定链路状态正常,若是未收到响应的通知,则判定链路出现故障。
在上述设备200的结构中,探测报文收发模块231中发送快速探测报文时,是可以进行重复报文发送的,在该模块中利用快速定时器231b控制快速探测报文的发送时间间隔。当然,如果在发送快速探测报文时只发送一次,可以不包括快速定时器231b,或者可以采用其它的电路结构控制重复发送。
在本实施例中,对第一OAM实体是否在规定时间内接收到快速探测响应报文,是将快速探测等待超时定时器设定的超时时间作为规定时间,在该定时器超时前,接收到快速探测响应报文则判定链路状态正常,在该定时器超时时,仍未接收到快速探测响应报文则判定链路出现故障。
实施例二在本实施例中,第一OAM实体发送快速探测报文时,以固定的时间间隔重复发送,预先设置最大探测次数,接收快速探测响应报文的规定时间为最大探测次数与发送快速探测报文的时间间隔的乘积。
在本实施例中,两端OAM实体建立连接和保持连接状态的过程与实施例一相同,这里就不再赘述。假定预先设置的最大探测次数为5。第一OAM实体在链路可能出现故障时进行快速检测的过程如下当第一OAM实体在规定时间内未接收到第二OAM实体发送的握手OAM报文时,则启动快速定时器,并按照快速定时器的设定,以100毫秒为周期向第二OAM实体发送快速探测报文,本实施例中以100毫秒的快速定时器为例。
在发送快速探测报文时,应遵循以下的条件若快速定时器时间到,即距离上次发送快速探测报文的时间达到100毫秒,第一OAM实体未接收到第二OAM实体返回的快速探测响应报文,则第一OAM实体发送快速探测报文,且对快速探测报文的已发送次数进行加1操作;一旦第一OAM实体接收到快速探测响应报文,则关闭快速定时器,不再发送快速探测报文,并将快速探测报文的发送次数置0;在发送快速探测报文前,比较快速探测报文的已发送次数与保存的最大探测次数,若快速探测报文的已发送次数小于保存的最大探测次数,则发送快速探测报文,若快速探测报文的已发送次数等于保存的最大探测次数,则关闭快速定时器,不再发送快速探测报文,并将快速探测报文的发送次数置0。
按照上述条件发送快速探测报文,若在快速定时器关闭前,接收到第二OAM实体返回的快速探测响应报文,则判定OAM链路状态正常;若在快速定时器关闭时,仍未接收到OAM实体返回的快速探测响应报文,则判定OAM链路出现故障。
对于链路出现故障或判定链路状态正常后,进行的后续操作与实施例一中相同,这里就不再赘述。
至此,本实施例中对OAM链路进行快速检测的流程结束。
由上述可以看出,在本实施例中,从第一次发送快速探测报文到最终判定链路出现故障的时间为100毫秒×5=500毫秒,与实施例一中的时间相同。可见,本实施例中利用一个快速定时器和计数机制可以同样达到利用快速定时器和快速探测等待超时定时器进行计时的效果,是另外一种可以实施的对接收快速探测响应报文的规定时间进行限定的方式。
上述为本实施例中提供的一种OAM协议链路的快速故障检测方法,能够实现对链路故障的快速检测。本实施例还提供一种OAM协议链路的快速故障检测设备,可以用于实施上述方法。图7即为本发明实施例二中一种OAM协议链路的快速检测设备。该设备为图2所示的快速检测设备的一种具体实施方式
,并且是在原有OAM实体设备的基础上进行修改后的设备,因此其包括发送模块210。如图7所示,该设备200包括发送模块210、接收模块220和快速探测模块230。在本实施例中,快速探测模块230的具体结构包括探测报文收发模块234、快速定时器235、探测次数计数器236和故障判定模块237。
在该设备200中,发送模块210,用于按照OAM协议规定定时发送保持连接状态的OAM报文。接收模块220,用于接收来自于外部的保持连接状态的OAM报文,并在未按时接收到该报文时,通知快速探测模块230进行故障探测。
在快速探测模块230中,探测报文收发模块234,用于接收接收模块220发送的通知,并在快速定时器235的控制下,定时将快速探测OAM报文发送出去,并在每次发送快速探测报文时通知探测次数计数器236计数,还用于在探测次数计数器236的控制下,接收外部的快速探测响应报文,在接收到快速探测响应报文时,通知故障判定模块236已收到响应,在接收到探测次数计数器236发送的停止探测消息后,通知故障判定模块237未收到响应。
快速定时器235,用于控制探测报文收发模块234发送快速探测报文的时间间隔。探测次数计数器236,用于保存最大探测次数,接收探测报文收发模块234发送的计数信息,并进行加1操作,当本身的计数值等于保存的最大探测次数时,向探测报文收发模块234发送停止探测消息。
故障判定模块237,用于接收探测报文收发模块234发送的通知消息,并对消息进行判断,若是已收到响应的通知,则判定链路状态正常,若是未收到响应的通知,则判定链路出现故障。
上述即为本实施例中提供的OAM协议链路的快速检测设备。
上述两个实施例中设备的实施方式均以在原有OAM实体设备的基础上进行修改的设备为例进行说明,事实上,如果该设备的实施方式是在原有OAM实体设备的基础上增加的设备,则该设备中涉及快速探测的接收模块和快速探测模块的实施方式均与上述两个实施例中相同,只是在该设备中不包括发送模块。
由上述本实施例中的方法和设备实施方式可以看出,在本实施例中,对第一OAM实体是否在规定时间内接收到快速探测响应报文的判断方式为发送快速探测报文时,以固定的时间间隔重复发送,且预先设置最大探测次数,在发送快速探测报文的次数超过预先设置的最大探测次数时仍未收到快速探测响应报文,则判定链路出现故障,在发送快速探测报文的次数未超过预先设置的最大探测次数时接收到快速探测响应报文,则判定链路状态正常。
由上述两个实施例可以看出,在链路正常状态下,以1秒的时间间隔发送OAM报文。当在规定的时间被未收到第二OAM实体的握手报文时,即判定链路可能出现故障,于是启动快速检测机制进行快速检测。向第二OAM实体发送快速探测报文,要求其快速返回响应。若在规定时间内接收到响应,则表明链路正常;否则判定链路出现故障。由于等待快速探测的超时时间要远短于连接超时时间,因此能够对链路故障作出快速判断,实现了故障的快速诊断和处理,能够大大提高服务质量。
上述实施例是以在OAM协议中应用本发明为例说明的本发明的具体实施方式
。事实上,对于其它诸如LACP、集群管理协议、虚拟路由冗余备份协议等,同样可以应用本发明解决故障检测迟缓的问题。
例如,在LACP协议中,正常状态下,发送保持连接状态的LAC报文LACPDU,当在LACP协议规定的定时时间内接收到握手报文,即向第二网络实体发送快速探测报文,进行链路故障检测。第二网络实体在接收到快速探测报文后,立刻返回快速探测响应报文,该报文可以是保持连接状态的LACPDU,也可以是其它新定义的报文格式,只要能够通知第一网络实体链路状态正常即可。第一网络实体在发送快速探测报文的同时,启动快速探测等待超时定时器,若在该定时器超时前收到快速探测响应报文,则判定链路状态正常,切换回正常状态,以LACP规定的频率发送保持连接状态的LACPDU;若在快速探测等待定时器超时时,仍未接收到快速探测响应报文,则判定链路出现故障。当然在发送快速探测报文时,也可以以一定的频率重复发送,以减小网络中的丢包现象对故障检测准确性的影响。
可见,本发明对于慢速协议中的故障检测均可以适用,都可以达到快速检测链路故障的目的,且不会出现影响正常报文交互节奏、使得网络中报文泛滥及增加CPU负担等问题。
以上仅为本发明的较佳实施例而已,并非用于限定本发明的保护范围。凡在本发明的精神和原则之内,所作的任何修改、等同替换、改进等,均应包含在本发明的保护范围之内。
权利要求
1.一种实现快速检测的方法,其特征在于,该方法包括a、当第一网络实体在没有按时收到第二网络实体的保持连接状态的报文时,向第二网络实体发送快速探测报文;b、若第一网络实体在规定时间内接收到第二网络实体返回的快速探测响应报文,则判定链路状态正常,否则判定链路出现故障。
2.根据权利要求1所述的方法,其特征在于,步骤a中所述向第二网络实体发送快速探测报文时,启动预先设置的快速探测等待超时定时器;步骤b中所述规定时间为快速探测等待超时定时器的定时时间;步骤b中判定链路状态正常后,进一步包括关闭快速探测等待超时定时器。
3.根据权利要求2所述的方法,其特征在于,步骤a中所述向第二网络实体发送快速探测报文为在快速探测等待超时定时器超时前,第一网络实体向第二网络实体重复发送快速探测报文。
4.根据权利要求3所述的方法,其特征在于,步骤a中启动快速探测等待超时定时器时,进一步启动快速定时器;所述向第二网络实体重复发送快速探测报文为第一网络实体按照快速定时器的设定,定时向第二网络实体发送快速探测报文。
5.根据权利要求1所述的方法,其特征在于,预先设置最大探测次数,步骤a中所述发送快速探测报文为在未收到快速探测响应报文前,以固定的时间间隔发送快速探测报文;步骤b中所述第一网络实体在规定时间内接收到第二网络实体返回的快速探测响应报文为快速探测报文的发送次数超过最大探测次数前,接收到第二网络实体返回的快速探测响应报文。
6.根据权利要求1所述的方法,其特征在于,所述快速探测报文为新定义的报文或修改后的已有报文。
7.根据权利要求1所述的方法,其特征在于,所述快速探测响应报文为新定义的报文或步骤a中所述保持连接状态的报文。
8.根据权利要求1所述的方法,其特征在于,步骤b中判定链路状态正常后,进一步包括第一网络实体切换回正常状态,按照保持连接报文发送间隔发送保持连接状态的报文。
9.根据权利要求1所述的方法,其特征在于,步骤b中判定链路出现故障后,进一步包括上报链路故障,上层协议根据该链路故障判断是否切换到备份链路。
10.根据权利要求1所述的方法,其特征在于,步骤a中所述没有按时收到为在相比保持连接报文发送间隔延长后的时间间隔内没有收到。
11.一种实现快速检测的设备,其特征在于,该设备包括接收模块和快速探测模块;所述接收模块,用于接收来自于外部的保持连接状态的报文,并在未按时接收到该报文时,通知快速探测模块进行故障探测;所述快速探测模块,用于接收所述接收模块发送的通知,并将快速探测报文发送出去,还用于接收外部的快速探测响应报文,并在规定时间内接收到该报文时,判定链路状态正常,在规定时间内未接收到快速探测响应报文时,判定链路出现故障。
12.根据权利要求11所述的设备,其特征在于,所述快速探测模块包括探测报文收发模块、快速探测等待超时定时器和故障判定模块;所述探测报文收发模块,用于接收所述接收模块发送的通知,并将快速探测报文发送出去,启动所述快速探测等待超时定时器,还用于在所述快速探测等待超时定时器的控制下,接收外部的快速探测响应报文,在接收到快速探测响应报文时,通知所述故障判定模块已收到响应,并关闭所述快速探测等待超时定时器,在接收到所述快速探测等待超时定时器发送的超时消息后,通知所述故障判定模块未收到响应;所述快速探测等待超时定时器,用于接收所述探测报文收发模块发送的启动和关闭信号,控制探测等待超时时间,并在定时器超时时,向所述探测报文收发模块发送超时消息;所述故障判定模块,用于接收所述探测报文收发模块发送的通知消息,并对消息进行判断,若该消息是已收到响应的通知,则判定链路状态正常,若该消息是未收到响应的通知,则判定链路出现故障。
13.根据权利要求12所述的设备,其特征在于,所述探测报文收发模块包括报文收发模块和快速定时器;所述报文收发模块,用于接收所述接收模块发送的通知,并在所述快速定时器的控制下,定时将快速探测报文发送出去,启动所述快速探测等待超时定时器,还用于在所述快速探测等待超时定时器的控制下,接收外部的快速探测响应报文,在接收到快速探测响应报文时,通知所述故障判定模块已收到响应,在接收到所述快速探测等待超时定时器发送的超时消息后,通知所述故障判定模块未收到响应;所述快速定时器,用于接收所述报文收发模块发送的启动信号,控制所述报文收发模块发送快速探测报文的时间间隔。
14.根据权利要求11所述的设备,其特征在于,所述快速探测模块包括探测报文收发模块、快速定时器、探测次数计数器和故障判定模块;所述探测报文收发模块,用于接收所述接收模块发送的通知,并在所述快速定时器的控制下,定时将快速探测报文发送出去,并在每次发送快速探测报文时通知所述探测次数计数器计数,还用于在所述探测次数计数器的控制下,接收外部的快速探测响应报文,在接收到快速探测响应报文时,通知所述故障判定模块已收到响应,在接收到所述计数器发送的停止探测消息后,通知所述故障判定模块未收到响应;所述快速定时器,用于控制所述探测报文收发模块发送快速探测报文的时间间隔;所述探测次数计数器,用于保存最大探测次数,接收所述探测报文收发模块发送的计数信息,并进行加1操作,当本身的计数值等于保存的最大探测次数时,向所述探测报文收发模块发送停止探测消息;所述故障判定模块,用于接收所述探测报文收发模块发送的通知消息,并对消息进行判断,若该消息是已收到响应的通知,则判定链路状态正常,若该消息是未收到响应的通知,则判定链路出现故障。
全文摘要
本发明公开了一种实现快速检测的方法,该方法包括当第一网络实体在没有按时收到第二网络实体的保持连接状态的报文时,向第二网络实体发送快速探测报文;若第一网络实体在规定时间内接收到第二网络实体返回的快速探测响应报文,则判定链路状态正常,否则判定链路出现故障。应用本发明的方法,在链路故障或报文丢失情况下能够快速地发现问题,及时进行备份链路切换,增强网络的健壮性,大大提高服务质量。本发明还公开了一种实现快速检测的设备,包括接收模块和快速探测模块。
文档编号H04L12/24GK1925429SQ20061015971
公开日2007年3月7日 申请日期2006年9月30日 优先权日2006年9月30日
发明者邱元香 申请人:杭州华为三康技术有限公司
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1