BFD参数设置方法、装置、电子设备与流程

文档序号:19320569发布日期:2019-12-04 00:29阅读:585来源:国知局
BFD参数设置方法、装置、电子设备与流程

本申请涉及通信技术领域,尤其涉及bfd参数设置方法、装置、电子设备及机器可读存储介质。



背景技术:

bfd(bidirectionalforwardingdetection,双向转发检测),是一个用于检测两个转发点之间链路是否故障的网络协议,可以提供毫秒级的链路快速检测。

在实现时,基于bfd在两台网络设备上建立会话,用来检测上述网络设备间的双向转发路径是否可靠,从而为上层应用服务。bfd本身并没有邻居发现机制,而是由bfd对应的上层应用执行通知其邻居信息,以使其建立bfd会话;bfd会话建立后,网络设备会周期性地快速发送bfd报文,如果在检测时间内没有收到bfd报文的回应报文,则认为该双向转发路径发生了故障,通知bfd对应的上层应用进行相应的处理。例如:bfd通过与上层路由协议联动,可以实现路由的快速收敛,确保路由业务的永续性。



技术实现要素:

本申请提供一种bfd参数设置方法,所述方法应用于bfd组网中的网络设备;所述bfd组网包括作为bfd发送端的网络设备、作为bfd接收端的网络设备;当所述网络设备为bfd接收端时,所述方法包括:

接收来自bfd发送端的bfd报文,确定与所述bfd报文对应的bfd会话状态;

基于所述bfd会话状态,确定与所述bfd会话对应的若干bfd报文的统计时间间隔;

基于所述统计时间间隔,设置所述网络设备的bfd参数。

可选的,所述基于所述bfd会话状态,确定与所述bfd会话对应的若干bfd报文的统计时间间隔,包括:

监测所述bfd会话状态是否为up状态;若所述bfd会话状态持续为up状态,则继续接收来自所述bfd发送端的若干bfd报文;

确定所述若干bfd报文中的相邻报文之间对应的若干时间间隔;

计算获得所述若干时间间隔的平均值,将所述平均值作为所述统计时间间隔。

可选的,所述网络设备预设bfd接收参数,所述基于所述统计时间间隔,设置所述网络设备的bfd参数,包括:

检查所述统计时间间隔与所述预设bfd接收参数相比是否超过预设阈值;如果是,则基于所述统计时间间隔更新所述预设bfd接收参数。

可选的,还包括:

记录指示所述bfd接收参数的异常日志;

向用户发送与所述bfd参数异常日志对应的告警通知;以使用户进一步调整。

本申请还提供一种bfd参数设置装置,所述装置应用于bfd组网中的网络设备;所述bfd组网包括作为bfd发送端的网络设备、作为bfd接收端的网络设备;当所述网络设备为bfd接收端时,所述装置包括:

接收模块,接收来自bfd发送端的bfd报文,确定与所述bfd报文对应的bfd会话状态;

统计模块,基于所述bfd会话状态,确定与所述bfd会话对应的若干bfd报文的统计时间间隔;

设置模块,基于所述统计时间间隔,设置所述网络设备的bfd参数。

可选的,所述统计模块进一步:

监测所述bfd会话状态是否为up状态;若所述bfd会话状态持续为up状态,则继续接收来自所述bfd发送端的若干bfd报文;

确定所述若干bfd报文中的相邻报文之间对应的若干时间间隔;

计算获得所述若干时间间隔的平均值,将所述平均值作为所述统计时间间隔。

可选的,所述设置模块进一步:

检查所述统计时间间隔与所述预设bfd接收参数相比是否超过预设阈值;如果是,则基于所述统计时间间隔更新所述预设bfd接收参数。

可选的,还包括:

告警模块,记录指示所述bfd接收参数的异常日志;

所述告警模块进一步,向用户发送与所述bfd参数异常日志对应的告警通知;以使用户进一步调整。

本申请还提供一种电子设备,包括通信接口、处理器、存储器和总线,所述通信接口、所述处理器和所述存储器之间通过总线相互连接;

所述存储器中存储机器可读指令,所述处理器通过调用所述机器可读指令,执行上述的方法。

本申请还提供一种机器可读存储介质,所述机器可读存储介质存储有机器可读指令,所述机器可读指令在被处理器调用和执行时,实现上述方法。

通过以上实施例,基于bfd会话对应的若干bfd报文的统计时间间隔,设置bfd参数,实现了bfd参数及时调整,提升了bfd探测灵敏度。

附图说明

图1是一示例性实施例提供的一种bfd组网的示意图;

图2是一示例性实施例提供的一种bfd参数设置方法的流程图;

图3是一示例性实施例提供的一种bfd会话建立过程的示意图;

图4是一示例性实施例提供的一种bfd参数设置装置的框图;

图5是一示例性实施例提供的一种电子设备的硬件结构图。

具体实施方式

这里将详细地对示例性实施例进行说明,其示例表示在附图中。下面的描述涉及附图时,除非另有表示,不同附图中的相同数字表示相同或相似的要素。以下示例性实施例中所描述的实施方式并不代表与本申请相一致的所有实施方式。相反,它们仅是与如所附权利要求书中所详述的、本申请的一些方面相一致的装置和方法的例子。

在本申请使用的术语是仅仅出于描述特定实施例的目的,而非旨在限制本申请。在本申请和所附权利要求书中所使用的单数形式的“一种”、“所述”和“该”也旨在包括多数形式,除非上下文清楚地表示其他含义。还应当理解,本文中使用的术语“和/或”是指并包含一个或多个相关联的列出项目的任何或所有可能组合。

应当理解,尽管在本申请可能采用术语第一、第二、第三等来描述各种信息,但这些信息不应限于这些术语。这些术语仅用来将同一类型的信息彼此区分开。例如,在不脱离本申请范围的情况下,第一信息也可以被称为第二信息,类似地,第二信息也可以被称为第一信息。取决于语境,如在此所使用的词语“如果”可以被解释成为“在……时”或“当……时”或“响应于确定”。

为了使本技术领域的人员更好地理解本申请实施例中的技术方案,下面先对本申请实施例涉及的bfd参数设置的相关技术,进行简要说明。

请参见图1,图1是本说明书一实施例提供的一种bfd组网的示意图。

如图1所示的bfd组网包括:网络设备rt1、网络设备rt2;其中,rt1可以作为bfd发送端,rt2可以作为bfd接收端。当然,rt2也可以作为bfd发送端,rt2可以作为bfd接收端。

在一些场景下,基于如图1所示的bfd组网,bfd的检测机制是两个网络设备建立bfd会话,并沿它们之间的路径周期性发送bfd控制报文,如果一方在既定的时间内没有收到bfd报文,则认为路径上发生了故障。通常,该检测机制时间设置为固定值,无法及时调整,导致bfd检测无法适配网络变化。

而本申请旨在提出一种,基于bfd会话对应的若干bfd报文的统计时间间隔,设置bfd参数的技术方案。

在实现时,bfd组网包括作为bfd发送端的网络设备、作为bfd接收端的网络设备;当网络设备为bfd接收端时,该网络设备接收来自bfd发送端的bfd报文,确定与所述bfd报文对应的bfd会话状态;基于所述bfd会话状态,确定与所述bfd会话对应的若干bfd报文的统计时间间隔;基于所述统计时间间隔,设置所述网络设备的bfd参数。

在以上方案中,基于bfd会话对应的若干bfd报文的统计时间间隔,设置bfd参数,实现了bfd参数及时调整,提升了bfd探测灵敏度。

下面通过具体实施例并结合具体的应用场景对本申请进行描述。

请参考图2,图2是本申请一实施例提供的一种bfd参数设置方法的流程图,所述方法应用于bfd组网中的网络设备;所述bfd组网包括作为bfd发送端的网络设备、作为bfd接收端的网络设备;当所述网络设备为bfd接收端时,上述方法执行以下步骤:

步骤202、接收来自bfd发送端的bfd报文,确定与所述bfd报文对应的bfd会话状态。

步骤204、基于所述bfd会话状态,确定与所述bfd会话对应的若干bfd报文的统计时间间隔。

步骤206、基于所述统计时间间隔,设置所述网络设备的bfd参数。

在本说明书中,上述网络设备,可以包括支持bfd(bidirectionalforwardingdetection,双向转发检测)机制的任何形式的网络设备。

例如,在实际应用中,上述网络设备可以包括支持bfd机制的交换机、路由器、防火墙等。

在本说明书中,上述网络设备可以作为bfd发送端,也可以作为bfd接受端。

在本说明书中,上述bfd报文,是指基于bfd机制的bfd控制报文。具体bfd控制报文的报文格式,请参见bfd技术说明,这里不再赘述。

在本说明书中,当上述网络设备为bfd接收端时,上述网络设备接收来自bfd发送端的bfd报文,确定与上述bfd报文对应的bfd会话状态。

例如,请参见图1所示,当网络设备rt1作为bfd接收端时,网络设备rt2作为与该bfd接收端对应的bfd发送端,网络设备rt1(bfd接收端)接收来自络设备rt2(bfd发送端)的bfd报文,网络设备rt1解析该bfd报文,从而确定与该bfd报文对应的bfd会话状态。

请参见图3,图3是本说明书一实施例提供的一种bfd会话建立过程的示意图。

如图3所示,rt1、rt2就是图1中所示的建立的bfd会话的网络设备。可以rt1作为bfd发送端,rt2作为bfd接收端;也可以rt2作为bfd发送端,rt1作为bfd接收端。

bfd使用三路握手的机制来建立会话,bfd发送端在发送bfd控制报文时会在sta字段填入本地当前的会话状态,bfd接收端根据收到的bfd控制报文的sta字段以及本地当前会话状态来进行状态机的迁移,建立会话。

如图3所示,分别以rt1作为bfd发送端,rt2作为bfd接收端;以及,rt2作为bfd发送端,rt1作为bfd接收端,展示了bfd会话建立过程。

如图3所示,在rt1和rt2各自的bfd模块收到上层应用的通知后,发送状态为down的bfd控制报文,rt2的bfd状态变化同rt1;rt2收到对端状态为down的bfd控制报文后,本地会话状态由down迁移到init(down=>init),随后发送的bfd控制报文中将sta字段填为2表明会话状态为init。rt1的bfd状态变化同rt2;rt1收到对端状态为init的bfd控制报文后,本地会话状态由init迁移到up(init=>up),随后发送的bfd控制报文中将sta字段填为3表明会话状态为up。rt2的bfd状态变化同rt1;最后,bfd双方状态都为up,bfd会话成功建立并开始检测链路状态。

在本说明书中,上述bfd会话,是指作为bfd接收端的上述网络设备与作为bfd发送端的网络设备建立的bfd会话。

例如,请参见图3所示,上述bfd会话可以作为bfd接收端的网络设备rt1与作为bfd发送端的网络设备rt2建立的bfd会话。

又例如,请参见图3所示,上述bfd会话可以作为bfd接收端的网络设备rt2与作为bfd发送端的网络设备rt1建立的bfd会话。

在本说明书中,上述网络设备基于上述bfd会话状态,确定与上述bfd会话对应的若干bfd报文的统计时间间隔。

在示出的一种实施方式中,上述网络设备监测上述bfd会话状态是否为up状态。

在实现时,网络设备rt1在检查自身状态是否为up状态;以及,检查网络设备rt2的状态已变为up状态。若两者都为up状态,则指示上述bfd会话状态为up状态。

例如,以上述bfd会话为bfd接收端的网络设备rt1与作为bfd发送端的网络设备rt2建立的bfd会话举例,请参见图3所示,网络设备rt1自身状态的状态已变为up状态(如图3所示rt1的init=>up);网络设备rt1检查网络设备rt2的状态是否为up状态;网络设备rt1在接收到网络设备rt2发送的包含sta:up的bfd控制报文后,进一步解析该bfd控制报文,从而获得网络设备rt2已变为up状态;则网络设备rt1监测上述bfd会话状态已为up状态。

当然,若网络设备rt2突然宕机,则网络设备rt1在预设时间内未收到网络设备rt2发送的包含sta:up的bfd控制报文,则上述bfd会话状态恢复为如图3所示的初始的down状态。

在本说明书中,进一步地,若上述bfd会话状态持续为up状态,则上述网络设备继续接收来自上述bfd发送端的若干bfd报文。

接着以上示例继续举例,如图3所示,网络设备rt1监测上述bfd会话状态已为up状态,则网络设备rt1继续接收来自网络设备rt2(bfd发送端)的若干bfd控制报文。

需要说明的是,上述若干bfd控制报文的接收个数或接收时间范围,可以由上述网络设备自动设置或基于用户设置。

在本说明书中,进一步地,上述网络设备确定上述若干bfd报文中的相邻报文之间对应的若干时间间隔。

例如,上述若干bfd控制报文3个,上述若干bfd报文中的相邻报文之间对应在网络设备rt1的接收的时间间隔分别为1秒、300毫秒、500毫秒。

在本说明书中,进一步地,上述网络设备计算获得上述若干时间间隔的平均值,将上述平均值作为上述统计时间间隔。

接着以上示例继续举例,网络设备rt1计算获得100毫秒、300毫秒、500毫秒的平均值为300毫秒,将该平均值作为上述统计时间间隔,也即,上述统计时间间隔为300毫秒。

在本说明书中,上述网络设备预设bfd接收参数;

其中,网络设备rt1预设bfd接收参数可以包括requiredminrxinterval(最小bfd控制报文接收时间间隔)。

接着以上示例继续举例,在实际应用中,网络设备rt1预设的requiredminrxinterval为250毫秒。

在示出的一种实施方式中,在上述网络设备基于上述统计时间间隔,设置上述网络设备的bfd参数的过程中,上述网络设备检查上述统计时间间隔与上述预设bfd接收参数相比是否超过预设阈值;

在实现时,上述网络设备检查上述统计时间间隔与上述预设bfd接收参数相比是否超过预设阈值;也即,上述统计时间间隔与上述预设bfd接收参数相比可以是高于或低于预设阈值。

接着以上示例继续举例,上述统计时间间隔为300毫秒、上述预设bfd接收参数为250毫秒;预设阈值为上述预设bfd接收参数的10%,网络设备检查rt1上述统计时间间隔(300毫秒)与上述预设bfd接收参数(250毫秒)相比已高于预设阈值(上述预设bfd接收参数的10%)。

当然,上述统计时间间隔也可能存在存在低于上述预设bfd接收参数的预设阈值的情况。

在本说明书中,进一步地,在上述统计时间间隔与上述预设bfd接收参数相比超过预设阈值时,则上述网络设备基于上述统计时间间隔更新上述预设bfd接收参数。

例如,上述网络设备可以将上述预设bfd接收参数更新为上述统计时间间隔的值或则上述统计时间间隔的预设比例值。

需要说明的是,基于以上技术方案,相比bfd的detectmult(超时检测倍数)的超时检测倍数的现有方案,可以更及时地发现bfd参数设置与实际情况的差异。

在示出的一种实施方式中,在上述统计时间间隔与上述预设bfd接收参数相比超过预设阈值后,上述网络设备记录指示上述bfd接收参数的异常日志;向用户发送与上述bfd参数异常日志对应的告警通知;以使用户进一步调整。

例如,在上述统计时间间隔与上述预设bfd接收参数相比超过预设阈值后,网络设备rt1记录指示上述bfd接收参数的异常日志,向用户发送与上述bfd参数异常日志对应的告警通知;以使用户进一步手工调整(比如:增大或减小)调整网络设备rt1上的上述bfd接收参数。

当然,在用户获取上述bfd参数异常日志对应的告警通知后,也可以进一步手工调整(比如:增大或减小)调整网络设备rt2上的bfd发送参数,比如:增大或减小rt2的desiredmintxinterval(最小bfd控制报文发送时间间隔)。

在以上技术方案中,基于bfd会话对应的若干bfd报文的统计时间间隔,设置bfd参数,实现了bfd参数及时调整,提升了bfd探测灵敏度。

图4是本申请一示例性实施例提供的一种bfd参数设置装置的框图。与上述方法实施例相对应,本申请还提供了一种bfd参数设置装置的实施例,所述装置应用于应用于bfd组网中的网络设备;所述bfd组网包括作为bfd发送端的网络设备、作为bfd接收端的网络设备;当所述网络设备为bfd接收端时,请参考图4所示例的一种bfd参数设置装置40,所述装置包括:

接收模块401,接收来自bfd发送端的bfd报文,确定与所述bfd报文对应的bfd会话状态;

统计模块402,基于所述bfd会话状态,确定与所述bfd会话对应的若干bfd报文的统计时间间隔;

设置模块403,基于所述统计时间间隔,设置所述网络设备的bfd参数。

在本实施例中,所述统计模块402进一步:

监测所述bfd会话状态是否为up状态;若所述bfd会话状态持续为up状态,则继续接收来自所述bfd发送端的若干bfd报文;

确定所述若干bfd报文中的相邻报文之间对应的若干时间间隔;

计算获得所述若干时间间隔的平均值,将所述平均值作为所述统计时间间隔。

在本实施例中,所述设置模块403进一步:

检查所述统计时间间隔与所述预设bfd接收参数相比是否超过预设阈值;如果是,则基于所述统计时间间隔更新所述预设bfd接收参数。

在本实施例中,还包括:

告警模块404,记录指示所述bfd接收参数的异常日志;

所述告警模块404进一步,向用户发送与所述bfd参数异常日志对应的告警通知;以使用户进一步调整。

对于装置实施例而言,由于其基本对应于方法实施例,所以相关之处参见方法实施例的部分说明即可。以上所描述的装置实施例仅仅是示意性的,其中所述作为分离部件说明的模块可以是或者也可以不是物理上分开的,作为模块显示的部件可以是或者也可以不是物理模块,即可以位于一个地方,或者也可以分布到多个网络模块上。可以根据实际的需要选择其中的部分或者全部模块来实现本申请方案的目的。本领域普通技术人员在不付出创造性劳动的情况下,即可以理解并实施。

上述实施例阐明的系统、装置、模块或模块,具体可以由计算机芯片或实体实现,或者由具有某种功能的产品来实现。一种典型的实现设备为计算机,计算机的具体形式可以是个人计算机、膝上型计算机、蜂窝电话、相机电话、智能电话、个人数字助理、媒体播放器、导航设备、电子邮件收发设备、游戏控制台、平板计算机、可穿戴设备或者这些设备中的任意几种设备的组合。

本申请的bfd参数设置装置的实施例可以应用在图5所示的电子设备上。装置实施例可以通过软件实现,也可以通过硬件或者软硬件结合的方式实现。以软件实现为例,作为一个逻辑意义上的装置,是通过其所在电子设备的处理器将机器可读存储介质中对应的计算机程序指令读取后运行形成的机器可执行指令。从硬件层面而言,如图5所示,为本申请的bfd参数设置装置所在电子设备的一种硬件结构图,除了图5所示的处理器、通信接口、总线以及机器可读存储介质之外,实施例中装置所在的电子设备通常根据该电子设备的实际功能,还可以包括其他硬件,对此不再赘述。

对应地,本申请实施例还提供了图4所示装置的一种电子设备的硬件结构,请参见图5,图5为本申请实施例提供的一种电子设备的硬件结构示意图。该设备包含:通信接口501、处理器502、机器可读存储介质503和总线504;其中,通信接口501、处理器502、机器可读存储介质503通过总线504完成相互间的通信。其中,通信接口501,用于进行网络通信。处理器502可以是一个中央处理器(cpu),处理器502可以执行机器可读存储介质503中存储的机器可读指令,以实现以上描述的方法。

本文中提到的机器可读存储介质503可以是任何电子、磁性、光学或其它物理存储装置,可以包含或存储信息,如可执行指令、数据,等等。例如,机器可读存储介质可以是:易失存储器、非易失性存储器或者类似的存储介质。具体地,机器可读存储介质503可以是ram(radomaccessmemory,随机存取存储器)、闪存、存储驱动器(如硬盘驱动器)、固态硬盘、任何类型的存储盘(如光盘、dvd等),或者类似的存储介质,或者它们的组合。

至此,完成图5所示的硬件结构描述。

此外,本申请实施例还提供了一种包括机器可执行指令的机器可读存储介质,例如图5中的机器可读机器可读存储介质503,所述机器可执行指令可由数据处理装置中的处理器502执行以实现以上描述的数据处理方法。

上述装置中各个单元的功能和作用的实现过程具体详见上述方法中对应步骤的实现过程,在此不再赘述。

本领域技术人员在考虑说明书及实践这里公开的发明后,将容易想到本申请的其它实施方案。本申请旨在涵盖本申请的任何变型、用途或者适应性变化,这些变型、用途或者适应性变化遵循本申请的一般性原理并包括本申请未公开的本技术领域中的公知常识或惯用技术手段。说明书和实施例仅被视为示例性的,本申请的真正范围和精神由下面的权利要求指出。

应当理解的是,本申请并不局限于上面已经描述并在附图中示出的精确结构,并且可以在不脱离其范围进行各种修改和改变。本申请的范围仅由所附的权利要求来限制。

以上所述仅为本申请的较佳实施例而已,并不用以限制本申请,凡在本申请的精神和原则之内,所做的任何修改、等同替换、改进等,均应包含在本申请保护的范围之内。

当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1