掌桥专利:专业的专利平台
掌桥专利
首页

通过BGP下发随流检测配置的方法及装置

文献发布时间:2024-04-18 19:58:26


通过BGP下发随流检测配置的方法及装置

本申请涉及网络通信技术,特别涉及应用于通过边界网关协议(BGP:Border Gateway Protocol)下发随流检测配置的方法及装置。

随流检测是利用正常转发的业务流进行的检测。具体实现时,可在正常转发的业务流中插入随流检测选项,由转发设备基于随流检测选项获得对应的检测数据并上报给分析器,由分析器基于检测数据分析出网络中细微的异常,精准检测每个业务流的时延、丢包等性能信息,使得服务等级协议(SLA:Service Level Agreement)网络质量实时可视,做到快速故障定界和定位。

发明内容

本申请实施例提供了通过BGP下发随流检测配置的方法及装置,以实现通过BGP下发随流检测配置。

本申请实施例提供了一种通过BGP下发随流检测配置的方法,该方法应用于网络设备,该方法包括:

获得分段路由SR策略Policy中的首节点;

通过与所述首节点之间的BGP连接向所述首节点下发BGP UPDATE报文;BGP UPDATE报文至少携带随流检测配置参数,所述随流检测配置参数至少包括:待被执行随流检测的业务流的业务流标识。

本申请实施例还提供了一种通过BGP下发随流检测配置的装置,该装置应用于网络设备,该装置包括:

获得单元,用于获得分段路由SR策略Policy中的首节点;

下发单元,用于通过与所述首节点之间的BGP连接向所述首节点下发BGP更新UPDATE报文;BGP UPDATE报文至少携带随流检测配置参数,所述随流检测配置参数至少包括:待被执行随流检测的业务流的业务流标识。

由以上技术方案可以看出,本申请实施例中,通过扩展BGP协议中的BGP UPDATE报文,以使扩展后的BGP UPDATE报文携带随流检测配置参数并动态下发至SR Policy中的首节点,这实现了网络设备可基于BGP动态下发随流检测配置参数。

此处的附图被并入说明书中并构成本说明书的一部分,示出了符合本公开的实施例,并与说明书一起用于解释本公开的原理。

图1为本申请实施例提供的随流检测选项示意图;

图2为本申请实施例提供的方法流程图;

图3为本申请实施例提供的IFIT Parameters Sub-TLV格式示意图;

图4为本申请实施例提供的IFIT Parameters Sub-TLV示意图;

图5为本申请实施例提供的装置结构意图;

图6为本申请实施例提供的电子设备结构图。

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

在本申请使用的术语是仅仅出于描述特定实施例的目的,而非旨在限制本申请。在本申请中所使用的单数形式的“一种”、“所述”和“该”也旨在包括多数形式,除非上下文清楚地表示其他含义。

如背景技术描述的,随流检测是基于业务流进行的。在具体实现时,当业务流的首节点识别出需执行随流检测的业务报文(可根据预先定义的报文特征识别需执行随流检测的业务报文),则会在该业务报文中插入随流检测选项(Option)。可选地,在本实施例中,可在业务报文封装的IPv6的目的选项扩展头(DOH:Destination Options Header)中增加随流检测选项。

这里,随流检测选项会携带用于指示随流检测的参数,该参数至少包括随流检测配 置参数。图1举例示出了随流检测选项携带的随流检测配置参数。

如图1所示的随流检测选项中至少包括以下参数:

选项类型(Option Type),用于表示选项的类型。可选地,在本实施例中,选项类型可占用8bits。

选项数据长度(Option Data Len),用于表示随流检测选项的数据长度。可选地,在本实施例中,选项数据长度可占用8bits。

业务流标识(FlowMonID),用于表示业务流标识。可选地,在本实施例中,业务流标识可占用20bits。

丢包测量染色标识(L Flag),可占用1bit。

时延测量染色标识(D Flag),可占用1bit。当D Flag置为第一值比如1时,要求向分析器上报时间戳信息。

测量周期(T),可占用2bits。比如,T取值00,则表示10秒(s),取值01,则表示30s,取值10,则表示60s,取值11,则表示300s。

扩展数据类型(ExtData),可占用6bits。比如,扩展数据类型取值为000000,则表示不携带扩展数据,当扩展数据类型取值为其他值,可预留扩展使用。

检测类型(T),可占用2bits,用于表示检测类型,比如,当检测类型取值为01,表示端到端检测,当取值为10,表示逐跳检测等。

设备节点标识(NodeMonID),可占用20bits,用于表示首节点的节点标识。

业务流方向标识(F Flag),可占用1bit。比如,当业务流方向标识取值为预设值比如1时,表示正向业务流。

保留字段(Reserved),可占用11bits。

上报数据指示位(Trace Type),可占用24bits,通过位图(bitmap)表示,用于表示需要向分析器上报的数据类型。

以上举例描述了随流检测选项。

但是,在应用中,上述随流检测选项携带的随流检测配置参数都是通过命令行配置或者Netconf静态配置。而不管是命令行配置还是Netconf静态配置,都很难适应动态变化的网络。

基于此,本申请实施例提供了一种动态配置随流检测配置参数的方法。可选地,在本实施例中,可通过扩展BGP协议实现动态配置随流检测配置参数。下面进行描述:

参见图2,图2为本申请实施例提供的方法流程图。该方法应用于网络设备。这里,该网络设备可为网络中被指定的用于下发随流检测配置参数的设备,比如可为控制器,或者指定的其中一个路由器。

如图2所示,该流程可包括以下步骤:

步骤201,获得分段路由(SR:Segment Routing)策略(Policy)中的首节点。

可选地,在本实施例中,上述网络设备可为被指定下发SR Policy的设备。

在一个例子中,SR Policy由以下三元组标识:

首节点(Headend):SR Policy生成/实现的节点;

颜色(Color):是任意的32位数值,用于区分SR Policy;

尾节点(Endpoint):SR Policy的终结点,可为一个IPv4/IPv6地址。

基于如上描述的SR Policy的三元组,则本步骤201中,当获得SR Policy(比如接收到外部配置的SR Policy等)后,很容易基于获得的SR Policy确定该SR Policy中的首节点。

步骤202,通过与上述首节点之间的BGP连接向上述首节点下发BGP更新(UPDATE)报文,BGP UPDATE报文至少携带随流检测配置参数。

本实施例通过扩展BGP协议中的BGP UPDATE报文,以使扩展后的BGP UPDATE报文携带随流检测配置参数。在具体实现时,可借助BGP UPDATE报文中新增加的SR Policy子地址家庭标识符(SAFI:Subsequent Address Family Identifier)网络层可达信息(NLRI:Network Layer Reachability Information)字段来扩展携带上述随流检测(IFIT:In-situ Flow Information Telemetry)配置参数(Parameters)。比如,SR Policy SAFI NLRI字段携带Tunnel-Type为SR Policy Type(取值为15)的隧道封装属性(Tunnel Encaps Attribute),扩展上述IFIT Parameters作为Tunnel Encaps Attribute的其中一个sub-TLV。

下文在SR Policy SAFI NLRI字段举例示出IFIT Parameters:

SR Policy SAFI NLRI字段的编码结构如下:

SR Policy SAFI NLRI:

需要说明的是,在本实施例中,IFIT Parameters虽然作为一个Tunnel Encaps Attribute sub-TLV,但其具体位置可不限定,比如可在其它所有Tunnel Encaps Attribute sub-TLV的前面、后面等,本实施例并不具体限定。

如上描述,IFIT Parameters作为一个Tunnel Encaps Attribute sub-TLV(简称IFIT Parameters Sub-TLV),其格式满足TLV,具体如图3所示。

在图3中,类型(Type),表示IFIT Parameters Sub-TLV的类型,其可待由IANA定义,比如可取值为6,本实施例并不具体限定。

长度(Length),表示IFIT Parameters Sub-TLV的长度,比如可为4bits。

值(Value),表示IFIT Parameters Sub-TLV携带的随流检测配置参数。

可选地,在本实施例中,随流检测配置参数可根据实际待执行的随流检测进行设置, 比如可至少包括:待被执行随流检测的业务流的业务流标识等,本实施例并不具体限定。

可选地,在本实施例中,假若随流检测配置参数包括表1所示的各参数:

表1

可选地,上述IFIT Parameters Sub-TLV的编码结构可如图4所示。在图4中,R为保留字段。

最终,通过上述步骤202,即可实现了上述网络设备可基于BGP动态下发随流检测配置参数。

可选地,在本实施例中,为节省带宽资源,上述网络设备在向首节点下发BGP UPDATE报文的时机可为检测到需向上述首节点下发SR Policy的SR Policy参数。也即,当网络设备检测到需向上述首节点下发SR Policy的SR Policy参数时,网络设备可在向上述首节点下发SR Policy参数的同时,进一步向上述首节点下发上述BGP UPDATE报文。

可选地,在本实施例中,网络设备可将上述SR Policy参数也携带在上述BGP UPDATE报文中一起下发给上述首节点。

在本实施例中,当首节点基于上述BGP UPDATE报文获得随流检测配置参数后,其作为入节点在接收到业务报文时,根据预先定义的特征识别出需针对该业务报文执行随流检测,则在业务报文中插入类似图1所示的随流检测选项,基于随流检测选项携带的测量类型收集目标统计数据并上报给分析器。当然,假若随流检测选项未携带的测量类型,则可基于默认的测量类型收集目标统计数据且上报给分析器。比如,首节点上报的目标统计数据如表2所示:

表2

中间节点(Transmit),接收到上述业务报文后,发现该业务报文携带随流检测选 项,则基于随流检测选项携带的测量类型收集目标统计数据并上报给分析器,并继续转发业务报文。当然,假若随流检测选项未携带的测量类型,则可基于默认的测量类型收集目标统计数据且上报给分析器。比如,中间节点上报的目标统计数据如表3所示:

表3

出节点(Egress),接收到上述业务报文后,发现该业务报文携带随流检测选项,则基于随流检测选项携带的测量类型收集目标统计数据并上报给分析器,之后去掉业务报文携带的随流检测选项并继续转发业务报文。当然,假若随流检测选项未携带的测量类型,则可基于默认的测量类型收集目标统计数据且上报给分析器。出节点上报的目标统计数据类似表3。

分析器(Analyzer),负责收集入节点、中间节点、出节点上送的统计数据并完成数据的汇总和计算。比如,分析器根据入节点和出节点上报的统计数据,计算第i周期业务流的丢包数:PacketLoss[i]=Tx[i]–Rx[i]。其中,Tx[i]表示入节点上报的第i周期发送的业务流的包数,Rx[i]表示出节点上报的第i周期接收的业务流的包数,PacketLoss[i]表示第i周期内业务流的丢包数。再比如,分析器根据入节点和出节点上报的统计数据,计算第i周期的双向时延:Delay[i]=正向业务流单向时延+反向业务流单向时延。

以上对本申请实施例提供的方法进行了描述。下面对本申请实施例提供的装置进行描述:

参见图5,图5为本申请实施例提供的装置结构图。该装置应用于网络设备,如图5所示,该装置可包括:

获得单元,用于获得SR Policy中的首节点;

下发单元,用于通过与首节点之间的BGP连接向首节点下发BGP UPDATE报文;BGP UPDATE报文至少携带随流检测配置参数,所述随流检测配置参数至少包括:待被执行随流检测的业务流的业务流标识。

可选地,在本实施例中,下发单元是在检测到需向所述首节点下发所述SR Policy的SR Policy参数时,进一步通过与首节点之间的BGP连接向首节点下发BGP UPDATE报文。

可选地,在本实施例中,所述BGP UPDATE报文还携带所述SR Policy参数。

可选地,本实施例中,所述BGP UPDATE报文携带SR Policy子地址家庭标识符SAFI网络层可达信息NLRI字段;

所述随流检测配置参数携带在所述BGP UPDATE报文中的SR Policy SAFI NLRI字段中。

可选地,本实施例中,所述SR Policy SAFI NLRI字段包含隧道封装属性Tunnel Encaps Attribute;

所述随流检测参数作为所述Tunnel Encaps Attribute的其中一个sub-TLV。

可选地,本实施例中,所述随流检测配置参数还包括:

首节点的节点标识;

和/或,随流检测周期;

和/或,随流检测类型,随流检测类型至少包括:端到端检测、逐跳检测;

和/或,数据类型指示位,用于指示随流检测的数据的数据类型。

本申请实施例还提供了图5所示装置的硬件结构。参见图6,图6为本申请实施例提供的电子设备结构图。如图6所示,该硬件结构可包括:处理器和机器可读存储介质,机器可读存储介质存储有能够被所述处理器执行的机器可执行指令;所述处理器用于执 行机器可执行指令,以实现本申请上述示例公开的方法。

基于与上述方法同样的申请构思,本申请实施例还提供一种机器可读存储介质,所述机器可读存储介质上存储有若干计算机指令,所述计算机指令被处理器执行时,能够实现本申请上述示例公开的方法。

示例性的,上述机器可读存储介质可以是任何电子、磁性、光学或其它物理存储装置,可以包含或存储信息,如可执行指令、数据,等等。例如,机器可读存储介质可以是:RAM(Radom Access Memory,随机存取存储器)、易失存储器、非易失性存储器、闪存、存储驱动器(如硬盘驱动器)、固态硬盘、任何类型的存储盘(如光盘、dvd等),或者类似的存储介质,或者它们的组合。

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

为了描述的方便,描述以上装置时以功能分为各种单元分别描述。当然,在实施本申请时可以把各单元的功能在同一个或多个软件和/或硬件中实现。

本领域内的技术人员应明白,本申请的实施例可提供为方法、系统、或计算机程序产品。因此,本申请可采用完全硬件实施例、完全软件实施例、或结合软件和硬件方面的实施例的形式。而且,本申请实施例可采用在一个或多个其中包含有计算机可用程序代码的计算机可用存储介质(包括但不限于磁盘存储器、CD-ROM、光学存储器等)上实施的计算机程序产品的形式。

本申请是参照根据本申请实施例的方法、设备(系统)、和计算机程序产品的流程图和/或方框图来描述的。应理解可以由计算机程序指令实现流程图和/或方框图中的每一流程和/或方框、以及流程图和/或方框图中的流程和/或方框的结合。可提供这些计算机程序指令到通用计算机、专用计算机、嵌入式处理机或其它可编程数据处理设备的处理器以产生一个机器,使得通过计算机或其它可编程数据处理设备的处理器执行的指令产生用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的装置。

而且,这些计算机程序指令也可以存储在能引导计算机或其它可编程数据处理设 备以特定方式工作的计算机可读存储器中,使得存储在该计算机可读存储器中的指令产生包括指令装置的制造品,该指令装置实现在流程图一个流程或者多个流程和/或方框图一个方框或者多个方框中指定的功能。

这些计算机程序指令也可装载到计算机或其它可编程数据处理设备上,使得在计算机或者其它可编程设备上执行一系列操作步骤以产生计算机实现的处理,从而在计算机或其它可编程设备上执行的指令提供用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的步骤。

以上所述仅为本申请的实施例而已,并不用于限制本申请。对于本领域技术人员来说,本申请可以有各种更改和变化。凡在本申请的精神和原理之内所作的任何修改、等同替换、改进等,均应包含在本申请的权利要求范围之内。

相关技术
  • 一种微流控芯片、微流控检测装置及微流控检测方法
  • 便携式微流控芯片、检测装置及微流控检测方法
  • 一种整车状态下发动机实时扭矩的在线检测装置及方法
  • 一种配置、下发流表项的方法及装置
  • 一种配置、下发流表项的方法及装置
技术分类

06120116489441