CN115801676A - 一种路由过滤方法、装置及电子设备 - Google Patents
一种路由过滤方法、装置及电子设备 Download PDFInfo
- Publication number
- CN115801676A CN115801676A CN202310106380.6A CN202310106380A CN115801676A CN 115801676 A CN115801676 A CN 115801676A CN 202310106380 A CN202310106380 A CN 202310106380A CN 115801676 A CN115801676 A CN 115801676A
- Authority
- CN
- China
- Prior art keywords
- route
- policy
- filtering
- strategy
- controller
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Granted
Links
Images
Landscapes
- Data Exchanges In Wide-Area Networks (AREA)
Abstract
本申请涉及网络通信领域,尤其涉及一种路由过滤方法、装置及电子设备,SRv6组网中的控制器支持非原生过滤策略的发布,指定转发设备支持非原生过滤策略的解析与执行,控制器从所支持的非原生过滤策略中确定出待发布的目标过滤策略,并构造携带目标过滤策略对应的策略标记和目标过滤策略的REFRESH报文,并将REFRESH报文发送给指定转发设备,以使指定转发设备依据所述策略标记所对应的解析规则,解析REFRESH报文以获取目标过滤策略,并在与控制器重新建立BGP连接后,依据目标过滤策略过滤接收到的路由,并向控制器发送过滤后的路由。使用本申请提供的方法可以实现路由的灵活过滤,极大地节约控制器的资源。
Description
技术领域
本申请涉及网络通信领域,尤其涉及一种路由过滤方法、装置及电子设备。
背景技术
SRv6(Segment Routing IPv6,基于IPV6的段路由)是当下最为热门的SegmentRouting(段路由)网络技术和IPv6(Internet Protocol Version 6,互联网协议低6版)网络技术的结合体,该结合体兼有前者的灵活选路能力和后者的亲和力,以及SRv6特有的设备级可编程能力的优势,因此SRv6技术已成为IPv6网络时代最有前景的组网技术。
SRv6组网包括控制平面和转发平面。控制平面包括控制器,转发平面包括转发设备。转发设备向控制器汇报路由,控制器基于转发设备发送的路由,确定全网拓扑,并计算出实际需求的转发路径,然后将路径转发表项发送给转发设备。
但是控制器作为网络大脑,面临比较大的存储和计算能力要求,而且在实际的需求中,转发设备不加区分的将大量的路由发送给控制器,致使控制器的资源被大量无用路由(比如控制器不关心的路由或者攻击控制器的路由)所占据,严重消耗了控制器的资源。因此,如何灵活过滤控制器所需路由就成为亟待解决的问题。
发明内容
有鉴于此,本申请提供一种路由过滤方法、装置及电子设备,用于实现路由的灵活过滤,极大地节约控制器的资源。
具体地,本申请是通过如下技术方案实现的:
根据本申请的第一方面,提供一种路由过滤方法,所述方法应用于SRv6组网中的控制器,所述SRv6组网还包括与所述控制器建立了BGP对等体的指定转发设备,所述控制器支持至少一种非原生过滤策略的发布,所述指定转发设备支持至少一种非原生过滤策略的解析与执行;所述方法包括:
从所述控制器所支持的至少一种非原生过滤策略中确定出待发布的目标过滤策略;
构造已进行了格式扩展的REFRESH报文,所述REFRESH报文携带与该目标过滤策略对应的策略标记,以及所述目标过滤策略;
将所述REFRESH报文发送给所述指定转发设备;其中,所述REFRESH报文用于促使所述指定转发设备依据所述策略标记所对应的解析规则,解析所述REFRESH报文以获取所述目标过滤策略,并在与所述控制器重新建立BGP连接后,依据所述目标过滤策略过滤接收到的路由,并向所述控制器发送过滤后的路由。
可选的,所述从所述控制器所支持的至少一种非原生过滤策略中确定出待发布的目标过滤策略,包括:
响应于监听到的ORF配置信息,将所述ORF配置信息携带的非原生过滤策略确定为所述目标过滤策略;
和/或;
在接收到所述指定转发设备发送的路由后,基于所述路由的路由信息,确定是否发生路由异常事件,若发生路由异常事件,则确定与该所述路由异常事件对应的过滤策略,并将确定出的过滤策略作为目标过滤策略。
可选的,所述至少一种非原生过滤策略包括如下一种或多种:
按序发送策略;所述按序发送策略用于指示按照多种类型路由的优先级顺序发送多种类型路由; 所述按序发送策略包括多种类型路由的发送优先级顺序;
指定路由发送策略;所述指定路由发送策略用于指示所述指定转发设备发送指定类型的路由; 所述指定路由发送策略包含了指定类型路由的类型标识;
源路由过滤策略;所述源路由过滤策略,用于指示所述指定设备过滤掉指定的任意源转发设备发起的路由; 所述源路由过滤策略包括代表所述源转发设备的IGP ROUTERID;
Te-policy路由过滤策略;所述Te-policy路由过滤策略用于指示所述指定转发设备过滤掉携带指定的Te-policy三元组信息的路由;所述Te-policy路由过滤策略包括指定的policy三元组信息。
可选的,所述路由异常事件为路由超载,所述过滤策略为按序发送策略;
所述基于所述路由的路由信息,确定是否发生路由异常事件,包括:
统计第一预设时长内接收到的路由的数量,若该数量超过第一预设阈值,则确定发生路由异常事件,并确定所述路由异常事件为路由超载;
所述构造已进行了格式扩展的REFRESH报文,包括:
构造已进行了格式扩展的REFRESH报文,并将按序发送策略的策略标记、以及按序发送策略添加至所述REFRESH报文的扩展字段中。
可选的,所述路由异常事件为任意源转发设备发起的路由超限,所述过滤策略为源路由过滤策略;
所述基于所述路由的路由信息,确定是否发生路由异常事件,包括:
获取所述路由携带的IGP Router ID,在第二预设时长内接收到的路由中,统计包含所述IGP Router ID的路由的数量,若该数量超过第二预设阈值,则确定发生了路由异常事件,并确定所述路由异常事件为该IGP Router ID所指示的源转发设备发起的路由超限;
所述构造已进行了格式扩展的REFRESH报文,包括:
构造已进行了格式扩展的REFRESH报文,并将源路由过滤策略的策略标记、以及源路由过滤策略添加至所述REFRESH报文的扩展字段中。
可选的,所述路由异常事件为任意源转发设备发起的路由震荡,所述过滤策略为源路由过滤策略;
所述基于所述路由的路由信息,确定是否发生路由异常事件,包括:
统计所述路由在第三预设时间内被写入和/或被删除的次数,当统计出的次数超过第三预设阈值时,确定发生了路由异常事件,并确定该路由异常事件为发起该路由的源转发设备发送的路由震荡;
所述构造已进行了格式扩展的REFRESH报文,包括:
构造已进行了格式扩展的REFRESH报文,并将源路由过滤策略的策略标记、以及源路由过滤策略添加至所述REFRESH报文的扩展字段中。
可选的,所述路由异常事件为Te-policy路由震荡,所述目标过滤策略为Te-policy路由过滤策略;
所述基于所述路由的路由信息,确定是否发生路由异常事件,包括:
在确定所述路由携带了policy三元组信息后,确定所述路由为Te-policy路由;
统计所述Te-policy路由在第四预设时间内被写入和/或被删除的次数,当统计出的次数超过第四预设阈值时,确定发生了路由异常事件,并确定该路由异常事件为Te-policy路由震荡;
所述构造已进行了格式扩展的REFRESH报文,包括:
构造已进行了格式扩展的REFRESH报文,并将Te-policy路由过滤策略的策略标记、以及Te-policy路由过滤策略添加至所述REFRESH报文的扩展字段中。
根据本申请的第二方面,提供一种路由过滤方法,所述方法应用于SRv6组网中的指定转发设备,所述SRv6组网还包括与所述指定转发设备建立了BGP对等体的控制器,所述控制器支持至少一种非原生过滤策略的发布,所述指定转发设备支持至少一种非原生过滤策略的解析与执行;所述方法包括:
接收所述控制器发送的REFRESH报文;所述REFRESH报文携带了目标过滤策略的策略标记,以及该目标过滤策略;所述目标过滤策略是所述控制器在其所支持的多种非原生过滤策略中确定出的;
依据所述策略标记,确定与所述目标过滤策略对应的策略解析规则,并依据所述策略解析规则,获取所述REFRESH报文中携带的目标过滤策略;
断开与所述控制器的BGP连接,并重新与所述控制器建立BGP连接;
依据所述目标过滤策略过滤本设备接收到的路由,并通过重新建立的BGP连接向所述控制器发送过滤后的路由。
可选的,所述目标过滤策略包括如下一种或几种:
按序发送策略;其中,所述按序发送策略是所述控制器在检测到ORF配置信息携带了该按序发送策略时确定的;或者,所述按序发送策略是所述控制器在确定发生了路由超限时确定的; 所述按序发送策略包括多种类型路由的发送优先级顺序;
源路由过滤策略;其中,所述源路由过滤策略是所述控制器在检测到ORF配置信息携带了该源路由过滤策略时确定的;或者,所述源路由过滤策略是所述控制器在确定发生了源转发设备发送的路由超限或者震荡时确定的;所述源路由过滤策略包括代表所述源转发设备的IGP ROUTER ID;
指定路由发送策略;其中,所述指定路由发送策略是所述控制器在监听到ORF配置信息中包含了指定路由发送策略后确定的; 所述指定路由发送策略包含了指定类型路由的类型标识;
Te-policy路由过滤策略;其中,所述Te-policy路由过滤策略是所述控制器在检测到ORF配置信息携带了该Te-policy路由过滤时确定的;或者,所述Te-policy路由过滤策略是所述控制器在确定发生了Te-policy路由震荡事件时确定的;所述Te-policy路由过滤策略包括代表发生Te-policy路由震荡的policy三元组信息。
可选的,当所述目标过滤策略为按序发送策略时,所述通过重新建立的BGP连接向所述控制器发送过滤后的路由,包括:按照按序发送策略所指示的多种类型路由的优先级顺序,通过重新建立的BGP连接,依次向所述控制器发送多种类型的路由;和/或,当所述目标过滤策略为所述源路由过滤策略时,所述通过重新建立的BGP连接向所述控制器发送过滤后的路由,包括:通过重新建立的BGP连接,向所述控制器发送除携带所述IGP ROUTER ID之外的其他路由;和/或,当所述目标过滤策略为所述指定路由发送策略;所述通过重新建立的BGP连接向所述控制器发送过滤后的路由,包括:通过重新建立的BGP连接,向所述控制器发送所述指定路由发送策略所指示的路由;和/或;当所述目标过滤策略为Te-policy过滤策略;所述通过重新建立的BGP连接向所述控制器发送过滤后的路由,包括:通过重新建立的BGP连接,向所述控制器发送除携带所述policy三元组信息之外的其他路由。
由上述描述可知,在本申请种,控制器和指定转发设备都支持至少一种非原生过滤策略。控制器在从多种非原生过滤策略种确定出目标过滤策略后,可以通过ORF(Outbound Route Filtering,出站路由过滤)机制将该目标过滤策略发送给指定转发设备。具体地,在本申请,对ORF机制中的REFRESH报文的报文格式进行了扩展,使得REFRESH报文可以携带控制器确定出的目标过滤策略标识、和目标过滤策略。指定转发设备在接收到REFRESH报文后,可以依据策略标记所对应的解析规则,解析所述REFRESH报文以获取所述目标过滤策略,并在与所述控制器重新建立BGP连接后,依据所述目标过滤策略过滤接收到的路由,并向所述控制器发送过滤后的路由。
由于本申请对REFRESH报文的报文格式进行了扩展,使得REFRESH报文可以携带非原生过滤策略的策略标识和非原生过滤策略,使得指定转发设备可以依据多种过滤策略过滤路由,使得路由过滤更为灵活,极大地节约了控制器的存储和计算资源,更为适配实际业务需求。
附图说明
图1是本申请一示例性实施例示出的一种SRv6组网的组网示意图;
图2是本申请一示例性实施例示出的一种路由过滤方法的流程图;
图3是本申请一示例性实施例示出的一种扩展后的REFRESH报文格式的示意图;
图4是本申请一示例性实施例示出的一种Value字段的示意图;
图5是本申请一示例性实施例示出的一种控制器的硬件结构图;
图6是本申请一示例性实施例示出的一种路由过滤装置的框图;
图7是本申请一示例性实施例示出的一种指定转发设备的硬件结构图;
图8是本申请一示例性实施例示出的另一种路由过滤装置的框图。
实施方式
这里将详细地对示例性实施例进行说明,其示例表示在附图中。下面的描述涉及附图时,除非另有表示,不同附图中的相同数字表示相同或相似的要素。以下示例性实施例中所描述的实施方式并不代表与本申请相一致的所有实施方式。
在本申请使用的术语是仅仅出于描述特定实施例的目的,而非旨在限制本申请。在本申请中所使用的单数形式的“一种”、“所述”和“该”也旨在包括多数形式,除非上下文清楚地表示其他含义。还应当理解,本文中使用的术语“和/或”是指并包含一个或多个相关联的列出项目的任何或所有可能组合。
应当理解,尽管在本申请可能采用术语第一、第二、第三等来描述各种信息,但这些信息不应限于这些术语。这些术语仅用来将同一类型的信息彼此区分开。例如,在不脱离本申请范围的情况下,第一信息也可以被称为第二信息,类似地,第二信息也可以被称为第一信息。取决于语境,如在此所使用的词语“如果”可以被解释成为“在……时”或“当……时”或“响应于确定”。
参见图1,图1是本申请一示例性实施例示出的一种SRv6组网的组网示意图。
如图1所示,该组网包括控制器101,指定转发设备102和转发设备103,转发设备103连接内部网关协议网络(即IGP网络,Interior Gateway Protocol)。
其中,控制器101,用于收集路由信息,确定全网的网络拓扑,并计算最优转发路径,并将计算出的转发路径通过转发表的形式下发给网络中的各转发设备。
指定转发设备102,用于与控制器建立BGP(Border Gateway Protocol,边界网关协议)对等体。向控制器发送转发设备的路由。该指定转发设备可以是RR(RouteReflector,路由反射器)设备,也可以是指定的其他转发设备,这里只是对指定转发设备进行示例性地说明,不对其进行具体地限定。
转发设备103,用于转发SRv6中的报文。转发设备103在该组网中的数量为至少一个,图1只是示例图,并不表示实际中转发设备103的数量。此外,该转发设备可以PE(Provider Edge,网络边缘侧设备),也可以是网络中间设备,比如网络中间的交换机、路由器等,这里只是对转发设备103进行示例性地说明,不对其进行具体地限定。
在该SRv6网络中,控制器101与指定转发设备102之间建立BGP对等体,指定转发设备102可以将转发设备103发送的路由,发送给控制器101。
控制器101基于接收到的路由确定该SRv6组网的组网拓扑,并依据组网拓扑计算出最优转发路径,并通过将表示最优转发路径的转发表项发送给指定转发设备102,以使指定转发设备102将路由表项发送给各转发设备103。
由此可见,控制器101作为网络大脑,面临比较大的存储和计算能力要求,因此控制器101的资源变得格外珍贵。但是在实际应用中,由于指定转发设备102不加区分的将各种路由发送给控制器101,致使控制器101收到了大量的无用路由。
比如,一种无用路由是,指定转发设备102将控制器101不关心的路由发送刚给控制器。
另一种无用路由是,某些转发设备103可能产生过量的路由,对控制器101造成攻击,或者产生大量的震荡路由。
这些无用的路由都会严重消耗控制器101大量的资源,造成控制器101的资源浪费。
现有指定转发设备102和控制器101支持原生的过滤策略,比如支持prefix过滤路由。但是现有的过滤方式太单一,无法灵活实现多种过滤,无法满足业务需求。此外,现有的过滤方式也无法基于组网的实时情况,实时基于异常事件进行与该异常事件适配的过滤。
有鉴于此,本申请提出一种路由过滤方法。在本申请种,控制器和指定转发设备都支持至少一种非原生过滤策略。控制器在从多种非原生过滤策略种确定出目标过滤策略后,可以通过ORF(Outbound Route Filtering,出站路由过滤)机制将该目标过滤策略发送给指定转发设备。具体地,在本申请,对ORF机制中的REFRESH报文的报文格式进行了扩展,使得REFRESH报文可以携带控制器确定出的目标过滤策略标识、和目标过滤策略。指定转发设备在接收到REFRESH报文后,可以依据策略标记所对应的解析规则,解析所述REFRESH报文以获取所述目标过滤策略,并在与所述控制器重新建立BGP连接后,依据所述目标过滤策略过滤接收到的路由,并向所述控制器发送过滤后的路由。
由于本申请对REFRESH报文的报文格式进行了扩展,使得REFRESH报文可以携带非原生过滤策略的策略标识和非原生过滤策略,使得指定转发设备可以依据多种过滤策略过滤路由,使得路由过滤更为灵活,极大地节约了控制器的存储和计算资源,更为适配实际业务需求。
在介绍本申请的路由过滤方法之前,先介绍下本申请的控制器和指定转发设备所支持的非原生过滤策略。
本申请的非原生过滤策略包括如下一种或几种。
按序发送策略;所述按序发送策略用于指示按照多种路由的优先级顺序发送多种类型路由。
其中,上述路由可以是BGP Linkstate路由,也可以是其他路由,这里只对路由进行示例性地说明,不对其进行具体地限定。
例如,假设路由是BGP Linkstate路由。BGP Linkstate路由包括多种类型。比如BGP Linkstate路由的类型可包括:Node路由(即节点路由)、Link路由(即链路路由)、Ipv6prefix路由(即Ipv6前缀路由)、Ipv4 prefix(即Ipv4前缀路由)、SRv6路由、Te-policy路由(SRv6组网中一种特定的路由)。
假设上述6种路由的优先级顺序由高到低依次是Node路由、Link路由、SRv6路由、ipv4-prefix路由、ipv6-prefix路由、Te-policy路由,则指定转发设备可按照该优先级顺序发送这6种路由,比如最优先发送Node路由、其次是Link路由,依次类推。
2)指定路由发送策略;所述指定路由发送策略用于指示所述指定转发设备发送指定类型的路由;
仍以上述路由为BGP Linkstate路由,路由类型为Node路由、Link路由、Ipv6prefix路由、Ipv4 prefix、SRv6路由、Te-policy路由为例进行说明。
假设控制器只想要Node路由和Link路由,则控制器可发布指定路由过滤策略。指定转发设备则可只向控制器发送Node路由和Link路由。
3)源路由过滤策略;所述源路由过滤策略,用于指示所述指定设备过滤掉指定的任意源转发设备发起的路由。
源转发设备是指发起路由,而非传输路由的转发设备。源路由过滤策略就是过滤掉某些指定的源转发设备转发的路由。
比如SRv6组网中包括多个源转发设备,比如转发设备A、转发设备B或者转发设备C。如果需要过滤掉转发设备A的路由,则可使用源路由过滤策略。指定转发设备可以只向控制器发送转发设备B和转发设备C发起的路由。
Te-policy路由过滤策略;所述Te-policy路由过滤策略用于指示所述指定转发设备过滤掉携带指定的policy三元组的路由。
上述非原生过滤策略还可包括其他过滤策略,本申请只是对非原生过滤策略进行示例性地说明,不对其进行具体地限定。
在介绍完上述路由过滤后,下面通过具体地描述,介绍本申请提供的路由过滤方法。
参见图2,图2是本申请一示例性实施例示出的一种路由过滤方法的流程图。该方法可应用在图1所示的SRv6组网中。控制器与指定转发设备建立了BGP对等体。控制器支持至少一种非原生过滤策略的发布,所述指定转发设备支持至少一种非原生过滤策略的解析与执行。
该方法可包括如下所示步骤。
步骤201:控制器从所述控制器所支持的至少一种非原生过滤策略中确定出待发布的目标过滤策略。
在本申请中,控制器可以基于用户配置确定目标过滤策略,确定自身所需的路由。当然,控制器也可以通过实时监控组网中的路由情况,来实时确定目标路由策略。
控制器基于用户配置确定目标过滤策略,确定自身所需的路由。
在实现时, 用户可以根据业务需求确定目标过滤策略,然后用户可以在控制器上进行ORF配置,该ORF配置中携带了目标过滤策略。
控制器可响应于监听到的ORF配置信息,将所述ORF配置信息携带的非原生过滤策略确定为所述目标过滤策略。
比如,用户可以配置指定路由发送策略,控制器在监听到携带指定路由发送策略的ORF配置后,可确定目标过滤策略为指定路由发送策略,该策略可以使得控制器只接收到指定类型的路由。
再比如,用户可以配置按序发送策略,控制器在监听到携带按序发送策略的ORF配置后,可确定目标过滤策略为按序发送策略,该策略可以使得指定转发设备可以依据各类路由的优先级顺序,发送各类路由。
再比如,用户可以配置源路由过滤策略,控制器在监听到携带源路由过滤策略的ORF配置后,可确定目标过滤策略为源路由过滤策略,该策略使得控制可以不接收某一指定的源转发设备发送的路由。
再比如,用户可以配置Te-policy过滤策略,控制器在监听到携带Te-policy过滤策略的ORF配置后,可确定目标过滤策略为Te-policy过滤策略,该策略使得控制器不接收某一指定的Te-policy路由。
2)控制器通过实时监控组网中的路由情况,实时确定目标路由策略。
在实现时,控制器在接收到所述指定转发设备发送的路由后,基于所述路由的路由信息,确定是否发生路由异常事件,若发生路由异常事件,则确定与该所述路由异常事件对应的过滤策略,并将确定出的过滤策略作为目标过滤策略。
2.1)在一种可选的实现方式中,该路由异常事件为路由超载,该过滤策略为按序发送策略。
具体地,路由超载,是指路由超过控制器所支持的数量。
在这种方式中,当控制器接收到指定转发设备发送的路由后,可统计第一预设时长内接收到的路由的数量。比如,统计从接收到该路由时起第一预设时长内接收到的路由的数量。
若统计出的数量超过第一预设阈值,控制器则确定发生路由异常事件,并确定所述路由异常事件为路由超载。此时,控制器可确定目标过滤策略为按序发送策略。
2.2)在另一种可选的实现方式中,所述路由异常事件为任意源转发设备发起的路由超限,所述过滤策略为源路由过滤策略。
其中,任意源转发设备发起的路由超限,是指任意源转发设备发起过多的路由,超过了控制器的限制。
在实现时,控制器在接收到指定转发设备发送的路由后,可获取该路由携带的IGP Router ID(IGP路由器标识),在第二预设时长内接收到的路由中,统计包含所述IGPRouter ID的路由的数量,若该数量超过第二预设阈值,则确定发生了路由异常事件,并确定所述路由异常事件为该IGP Router ID所指示的源转发设备发起的路由超限。
例如,假设控制器接收到的路由中携带的IGP Router ID为1.1.1.1,假设第二预设阈值为100。
控制器在接收到该路由后,可统计到在第二预设时长内接收到的包含1.1.1.1的路由的数量,假设统计到的数量为120,超过了第二预设阈值,则控制器可确定发生了路由异常事件,并确定路由异常事件为源转发设备1.1.1.1发起的路由超限。
2.3)在另一种可选的实现方式中,所述路由异常事件为任意源转发设备发起的路由震荡,所述过滤策略为源路由过滤策略。
其中,任意源转发设备发起的路由震荡,是指任意源转发设备频繁地发起路由,以及撤销路由,造成路由震荡。
在实现时,统计所述路由在第三预设时间内被写入和/或被删除的次数,当统计出的次数超过第三预设阈值时,确定发生了路由异常事件,并确定该路由异常事件为发起该路由的源转发设备发送的路由震荡。此时,控制器可确定目标过滤策略为源路由过滤策略。
例如,假设控制器接收到的路由中携带的IGP Router ID为1.1.1.1,假设第三预设阈值为10次,第三预设时长为1秒。
假设控制器检测到该路由(该路由携带1.1.1.1)1秒被写入路由表以及从路由表删除的总次数为12次,超过第三预设阈值。所以控制器确定源转发设备1.1.1.1发送的路由震荡,这时控制器确定目标过滤策略为源路由过滤策略,以过滤掉源转发设备1.1.1.1发送的路由。
2.4)在另一种可选的实现方式中,所述路由异常事件为Te-policy路由震荡,所述目标过滤策略为Te-policy路由过滤策略。
在实现时,控制器在确定所述路由携带了policy三元组信息后,确定所述路由为Te-policy路由。控制器可统计所述Te-policy路由在第四预设时间内被写入和/或被删除的次数,当统计出的次数超过第四预设阈值时,确定发生了路由异常事件,并确定该路由异常事件为Te-policy路由震荡。此时,控制器可确定目标过滤策略为Te-policy路由过滤策略,以过滤掉该Te-policy路由。
例如,假设控制器接收到的路由为Te-policy路由A,假设第四预设阈值为10次,第四预设时长为1秒。
假设控制器统计到Te-policy路由A在1秒中被写入路由表以及从路由表中删除的总次数为12次,超过了第四预设阈值,所以控制器确定Te-policy路由A发生路由震荡。此时,控制器可以确定目标过滤策略为Te-policy路由过滤策略,以过滤掉该Te-policy路由A。
步骤202:控制器构造已进行了格式扩展的重刷新报文,所述重刷新报文携带与该目标过滤策略对应的策略标记,以及所述目标过滤策略。
其中,重刷新报文也可被称为REFRESH报文,下文不再赘述。
需要说明的是,由于本申请的控制器和指定转发设备支持多种非原生过滤策略。所以REFRESH报文中需要携带策略标识,以使得指定转发设备可以区分中使用哪种目标过滤策略,这是与本申请支持多种非原生过滤策略相适配的。
本申请通过对REFRESH报文的报文格式进行扩展,使得REFRESH报文可以携带目标过滤策略的策略标识和目标过滤策略。
下面从REFRESH报文的扩展和步骤202的实现两方面介绍步骤202。
1、介绍REFRESH报文的扩展格式
在一种可选的方式中,在本申请中,控制器采用ORF机制向指定转发设备发送目标过滤策略。为了与该ORF机制适配,所以对ORF机制中的REFRESH报文进行了格式扩展。
如图3所示,图3中的左图为REFRESH报文的报文格式,本申请对REFRESH报文格式中的特殊类型部分(Type Specific part)字段进行了扩展。图3中的右图是扩展出的字段。本申请在Type Specific part字段中扩展出了TLV字段。
TLV字段包括:类型(Type)字段,长度(Length)字段和值(Value)字段。
其中,Type字段携带了目标过滤策略的标识,Value字段携带了目标过滤策略。
1)示例1
假设目标过滤策略为指定路由发送策略,则REFRESH报文中的Type字段的取值为第一预设值,第一预设值为指定路由发送策略的策略标识。第一预设值可以是1,也可以是其他值,这里不做具体地限定。
Length字段取值为1,Value字段包括了多个路由类型字段,每个路由类型字段对应至少一种类型的路由。
例如,Value字段格式如图4所示。
Value字段包括N字段、L字段、P字段、S字段和T字段这5中路由类型字段。
其中,N字段对应Node路由,表示若发布Node路由,则将该字段置为1,否则置为0。
L字段对应Link路由,表示若发布Link路由,则将该字段置为1,否则置为0。
P字段对应prefix-ipv6和prefix-ipv4路由,表示若发布prefix-ipv6和prefix-ipv4路由,则将该字段置为1,否则置为0。
S字段对应SRv6路由,表示若发布SRv6路由,则将该字段置为1,否则置为0。
T字段对应Te-policy路由,表示若发布Te-policy路由,则将该字段置为1,否则置为0。
例如,假设控制器确定出的指定路由发送策略指定了发送Node路由和Link路由,则该REFRESH报文中的TLV字段中的,Type字段取值为1,Length字段取值为1,Value字段中的N字段和L字段取值为1,P字段、S字段和T字段取值为0。
示例2
假设目标过滤策略为按序发送策略,则REFRESH报文的Type字段的取值为第二预设值,第二预设值为按序发送策略的策略标识。其中,第二预设值可以是2,这里不对第二预设值进行限定。
Length字段代表Value字段的长度,可以为1。
如果按序发送策略是按照Node路由、Link路由、SRv6路由、ipv4-prefix路由、ipv6-prefix路由、Te-policy路由这种优先级顺序发送,则Value字段取值为1。如果是按照指定转发设备上默认优先级顺序发送,则Value取值为0。
示例3
假设目标过滤策略为源路由过滤策略,则REFRESH报文的Type字段的取值为第三预设值,第三预设值为源路由过滤策略的策略标识。其中,第三预设值可以是3,这里不对第三预设值进行限定。
Length字段代表Value字段的长度,取值可以为1。Value字段的取值为源转发设备的IGP Router ID。
示例4
假设目标过滤策略为Te-policy路由过滤策略,则REFRESH报文的Type字段的取值为第四预设值,第四预设值为Te-policy过滤策略的策略标识。其中,第四预设值可以是4,这里不对第四预设值进行限定。
Length字段代表Value字段的长度,取值可以为可变量。Value字段携带了Policy三元组信息。
其中,Policy三元组信息包括endpoint(尾节点)信息、color(颜色)信息、head(头节点)信息。
其中,Endpoint是SRv6 policy的尾节点,是一个ipv6地址。Color是SRv6 policy的color,与业务相关。Head是SRv6 policy的头节点,用IGP的router-id表示。
当然,在实际应用中,还可以对REFRESH报文的保留字段进行扩展,这里只是对REFRESH报文的扩展进行示例性地说明,不对其进行具体地限定。
2、步骤202的实现方式
假设REFRESH报文按照上述方式进行了扩展,则当控制器确定目标过滤策略为按序发送策略时,控制器可将REFRESH报文的扩展字段中的Type字段的取值设置为第二预设值,使得REFRESH报文可以携带按序发送策略的策略标识。同时,若控制器确定发送的优先级顺序为Node路由、Link路由、SRv6路由、ipv4-prefix路由、ipv6-prefix路由、Te-policy路由这种优先级顺序,则可将REFRESH报文的Value字段的取值设置为1,若控制器确定发送的优先级顺序为默认优先级顺序,则可将Value字段的取值设置为0。控制器通过对Value字段的设置,使得REFRESH报文携带了按序发送策略。
在另一种可选的实现方式中,当控制器确定目标过滤策略为指定路由发送策略。控制器可将构造出的REFRESH报文中的Type字段的取值设置为第一预设值,以使得REFRESH报文可以携带指定路由发送策略的策略标识。同时,控制器还可将Value字段中与指定类型路由对应的路由类型字段设置为1,其他路由类型字段设置为0,以使得REFRESH报文可以携带指定类型的路由标识,即携带指定路由发送策略。
例如,当控制器确定目标过滤策略为指定路由发送策略,并且该指定路由发送策略指定发送Node路由和Link路由。控制器可将构造出的REFRESH报文中的Type字段的取值设置为1,并将Value字段的N字段和L字段的取值设置为1,P字段、S字段和T字段取值为0。
在另一种可选的实现方式中,当控制器确定目标过滤路由为源路由过滤策略。控制器可将构造出的REFRESH报文中的Type字段的取值设置为第三预设值,以使得REFRESH报文可以携带源路由过滤策略的策略标识。同时,控制器还可将Value字段取值设置为需要过滤的源转发设备的IGP Router ID,以使得REFRESH报文可以携带源路由过滤策略。
例如,假设需要过滤源转发设备1.1.1.1的路由,则可将REFRESH报文的Type字段的取值设置为3,将Value字段的取值设置为1.1.1.1。
在另一种可选的实现方式中,当控制器确定目标过滤路由为Te-policy路由过滤策略。控制器可将构造出的REFRESH报文中的Type字段的取值设置为第四预设值,以使得REFRESH报文可以携带Te-policy路由过滤策略的策略标识。同时,控制器还可将Value字段取值设置为需要过滤的Te-policy路由的policy三元组信息。
步骤203:控制器将所述重刷新报文发送给所述指定转发设备。
其中,所述REFRESH报文用于促使所述指定转发设备依据所述策略标记所对应的解析规则,解析所述REFRESH报文以获取所述目标过滤策略,并在与所述控制器重新建立BGP连接后,依据所述目标过滤策略过滤接收到的路由,并向所述控制器发送过滤后的路由。
通过上述步骤201至步骤203实现了控制器确定目标过滤策略,以及将目标过滤策略发布给指定转发设备。
步骤204:指定转发设备接收所述控制器发送的重刷新报文;
步骤205:指定转发设备依据所述策略标记,确定与所述目标过滤策略对应的策略解析规则,并依据所述策略解析规则,获取所述重刷新报文中携带的目标过滤策略。
在实现时,指定转发设备可读取REFRESH报文中的Type字段。通过确定Type字段的取值,确定REFRESH报文携带的策略标记。指定转发设备可以基于确定出的策略标记,确定与该策略标记对应的策略解析规则来解析Value字段,通过Value字段的取值获取REFRESH报文中携带的目标过滤策略。
在一种可选地实现方式中,若Type字段的取值为第一预设值,则表明REFRESH报文携带的目标过滤策略的策略标识为指定路由发送策略。此时,指定转发设备可以确定与该指定路由发送策略对应的解析规则是读取Value字段中至少一个路由类型字段的取值,以次来确定需要发送的指定类型路由。
具体地,指定转发设备可以依次确定Value字段中的各路由类型字段的取值,若任意路由类型字段的取值为1,则表明该路由类型字段对应的路由为需要发送的路由。
例如,指定转发设备可继续读取REFRESH报文的Value字段中的N字段、L字段、P字段、S字段和T字段。假设读取到的N字段、L字段的取值为1,P字段、S字段和T字段为0,则表明需要发送的路由为节点路由和链路路由。
在另一种可选的实现方式中,若Type字段的取值为第二预设值,则表明REFRESH报文携带的目标过滤策略的策略标识为按序发送策略。此时,指定转发设备可以确定与该按序发送策略对应的解析规则是读取Value字段的取值,以此来确定REFRESH报文携带的路由发送的优先级顺序。
例如,若Value字段的取值为1,则表明发送的优先级顺序为Node路由、Link路由、SRv6路由、ipv4-prefix路由、ipv6-prefix路由、Te-policy路由。若Value字段的取值为0,则表明发送优先级顺序为默认配置的优先级顺序。
在另一种可选的实现方式中,若Type字段的取值为第三预设值,则表明REFRESH报文携带的目标过滤策略的策略标识为源路由过滤策略。此时,指定转发设备可以确定与该源路由过滤策略对应的解析规则是读取Value字段的取值,以此来确定REFRESH报文携带的需要过滤的源转发设备的IGP Router ID。
在另一种可选的实现方式中,若Type字段的取值为第四预设值,则表明REFRESH报文携带的目标过滤策略的策略标识为Te-policy路由过滤策略。此时,指定转发设备可以确定与该Te-policy路由过滤策略对应的解析规则是读取Value字段的取值,以此来确定REFRESH报文携带的需要过滤的Te-policy路由的三元组信息。
步骤206:指定转发设备断开与所述控制器的边界网关协议连接,并重新与所述控制器建立边界网关协议连接。
其中,边界网关协议连接也可被成为BGP连接,下文不再赘述。
在实现时,指定转发设备可以断开与控制器当前的BGP连接。然后,控制器可与指定转发设备重新建立BGP连接。
步骤207:指定转发设备依据所述目标过滤策略过滤本设备接收到的路由,并通过重新建立的边界网关协议连接向所述控制器发送过滤后的路由。
在一种可选的实现方式中,若目标过滤策略为按序发送策略, 指定转发设备可按照按序发送策略所指示的多种路由的优先级顺序,通过重新建立的BGP连接,依次向所述控制器发送多种类型的路由。
例如,若该按序发送策略所指示的多种路由的优先级顺序依次为:Node路由、Link路由、SRv6路由、ipv4-prefix路由、ipv6-prefix路由、Te-policy路由,则指定转发设备可按照该优先级顺序发送这6种路由,比如最优先发送Node路由、其次是Link路由,依次类推。
在另一种可选的实现方式中,若目标过滤策略为指定路由发送策略,指定转发设备可通过重新建立的BGP连接,向所述控制器发送所述指定路由发送策略所指示种类的路由。
比如指定路由发送策略指示了发送Node路由和Link路由,则指定转发设备只向控制发送接收到的Node路由和Link路由。
在另一种可选的实现方式中,若目标过滤策略为所述指定路由发送策略,则指定转发设备可通过重新建立的BGP连接,向所述控制器发送除携带所述IGP ROUTER ID之外的其他路由。
例如,假设源路由过滤策略携带的IGP ROUTER ID为1.1.1.1,则指定转发设备不向控制发送IGP ROUTER ID为1.1.1.1的路由。
在另一种可选的实现方式中,若目标过滤策略为Te-policy过滤策略,则指定转发设备可通过重新建立的BGP连接,向所述控制器发送除携带所述policy三元组信息之外的其他路由。
由上述描述可知,在本申请种,控制器和指定转发设备都支持至少一种非原生过滤策略。控制器在从多种非原生过滤策略种确定出目标过滤策略后,可以通过ORF(Outbound Route Filtering,出站路由过滤)机制将该目标过滤策略发送给指定转发设备。
具体地,在本申请,对ORF机制中的REFRESH报文的报文格式进行了扩展,使得REFRESH报文可以携带控制器确定出的目标过滤策略标识、和目标过滤策略。指定转发设备在接收到REFRESH报文后,可以依据所述策略标记所对应的解析规则,解析所述REFRESH报文以获取所述目标过滤策略,并在与所述控制器重新建立BGP连接后,依据所述目标过滤策略过滤接收到的路由,并向所述控制器发送过滤后的路由。
由于本申请对REFRESH报文的报文格式进行了扩展,使得REFRESH报文可以携带非原生过滤策略的标识和非原生过滤策略,使得指定转发设备可以依据多种过滤策略过滤路由,使得路由过滤更为灵活,极大地节约了控制器的存储和计算资源。
下面以指定转发设备为路由反射器,路由为bgp Linkstate路由为例,并通过步骤A1-A10对上述路由过滤方法进行详细地说明。
步骤A1:控制器与路由反射器建立BGP对等体。
步骤A2:路由反射器向控制器发送BGP Linkstate路由。
步骤A3:控制器统计第一预设时长内接收到的BGP Linkstate路由的数量,并检测统计的数量是否超过第一预设阈值,则确定需要发送按序发送策略。此时,控制器可将REFRESH报文中的Type字段的取值设置为2。如果控制器想要按照的发送优先级顺序为Node路由、Link路由、SRv6路由、ipv4-prefix路由、ipv6-prefix路由、Te-policy路由,则控制器可将Value字段的取值设置为1。若控制器想要按照默认优先级发送顺序,则可将REFRESH报文的Value字段的取值设置为0。然后,控制器可将REFRESH报文发送给路由反射器。
步骤A4:若控制器统计到的BGP Linkstate路由的数量没有超过第一预设阈值,则控制器可确定BGP Linkstate路由携带的IGP Router ID。然后,控制器可统计第二预设时长内携带该IGP Router ID的BGP Linkstate路由的数量是否超过第二预设阈值,如果超过第二预设阈值,控制器可确定需要发布源路由过滤策略。此时,控制器可将REFRESH报文中的Type字段的取值设置为3,将Value字段的取值设置为该IGP Router ID。然后,控制器可将REFRESH报文发送给路由反射器。
步骤A5:若统计的携带该IGP Router ID的BGP Linkstate路由的数量未超过第二预设阈值。控制器可统计在第三预设时长内该BGP Linkstate路由被写入路由表或者被从路由表删除的次数是否超过第三预设阈值。若统计的次数超过第三预设阈值,则表明发生了该IGP Router ID所指示的源转发设备发送的路由震荡。此时,控制器可需要发送源路由过滤策略。此时,控制器可将REFRESH报文中的Type字段的取值设置为3,将Value字段的取值设置为该IGP Router ID。然后,控制器可将REFRESH报文发送给路由反射器。
步骤A6:若第三预设时长内BGP Linkstate路由被写入路由表或者被从路由表删除的次数未超过第三预设阈值,则确定该BGP Linkstate路由是否为Te-policy路由,若该BGP Linkstate路由是Te-policy路由。控制器可检测第四预设时长内该Te-policy路由被写入路由表或者被从路由表删除的次数是否第四预设阈值。若统计的次数超过预设阈值,则控制确定发生了Te-policy路由震荡。此时,控制器需要发送Te-policy路由过滤策略。控制器可将REFRESH报文中的Type字段的取值设置为4,将Value字段的取值设置为Te-policy路由携带的policy三元组信息。
步骤A7:若第四预设时长内该Te-policy路由被写入路由表或者被从路由表删除的次数未第四预设阈值,则监听是否有ORF配置。若监听到ORF配置,则依据ORF配置中携带的路由过滤策略,来构造REFRESH报文。
例如,假设ORF配置携带了指定路由发送策略,则控制器将REFRESH报文中的Type字段的取值设置为1,将Value字段中的与需要发送的指定类型BGP Linkstate路由对应的路由类型字段的取值设置为1,其他路由类型字段的取值设置为0。
若ORF配置携带了按序发送策略,则可按照步骤503的方式构造REFRESH报文,这里不再赘述。
若ORF配置携带了源路由发送策略,则可按照步骤504或步骤505的方式构造REFRESH报文,这里不再赘述。
若ORF配置携带了Te-policy路由过滤策略,则可按照步骤506的方式构造REFRESH报文,这里不再赘述。
步骤A8:路由反射器在接收到REFRESH报文后,可以依据REFRESH报文中的Type字段的取值,确定REFRESH报文携带的策略标记。路由反射器可以基于确定出的策略标记,确定与该策略标记对应的策略解析规则来解析Value字段,通过Value字段的取值获取REFRESH报文中携带的目标过滤策略。
具体方式可参见步骤205,这里不再赘述。
步骤A9:路由反射器断开与所述控制器的BGP连接,并重新与所述控制器建立BGP连接。
步骤A10:路由反射器依据所述目标过滤策略过滤本设备接收到的路由,并通过重新建立的BGP连接向所述控制器发送过滤后的路由。
具体方式可参见步骤207,这里不再赘述。
参见图5,图5是本申请一示例性实施例示出的一种控制器的硬件结构图。
与前述路由过滤方法的实施例相对应,本申请还提供了路由过滤装置的实施例。
本申请路由过滤装置的实施例可以应用在控制器上。装置实施例可以通过软件实现,也可以通过硬件或者软硬件结合的方式实现。以软件实现为例,作为一个逻辑意义上的装置,是通过其所在控制器的处理器将非易失性存储器中对应的计算机程序指令读取到内存中运行形成的。从硬件层面而言,如图5所示,为本申请路由过滤装置所在控制器的一种硬件结构图,除了图5所示的处理器、内存、网络出接口、以及非易失性存储器之外,实施例中装置所在的控制器通常根据该控制器的实际功能,还可以包括其他硬件,对此不再赘述。
参见图6,图6是本申请一示例性实施例示出的一种路由过滤装置的框图,该装置可应用于SRv6组网中的控制器,所述SRv6组网还包括与所述控制器建立了BGP对等体的指定转发设备,所述控制器支持至少一种非原生过滤策略的发布,所述指定转发设备支持至少一种非原生过滤策略的解析与执行;所述装置包括:
确定单元601,用于从所述控制器所支持的至少一种非原生过滤策略中确定出待发布的目标过滤策略;
构造单元602,用于构造已进行了格式扩展的REFRESH报文,所述REFRESH报文携带与该目标过滤策略对应的策略标记,以及所述目标过滤策略;
发送单元603,用于将所述REFRESH报文发送给所述指定转发设备;其中,所述REFRESH报文用于促使所述指定转发设备依据所述策略标记所对应的解析规则,解析所述REFRESH报文以获取所述目标过滤策略,并在与所述控制器重新建立BGP连接后,依据所述目标过滤策略过滤接收到的路由,并向所述控制器发送过滤后的路由。
可选的,所述确定单元601,在从所述控制器所支持的至少一种非原生过滤策略中确定出待发布的目标过滤策略时,用于响应于监听到的ORF配置信息,将所述ORF配置信息携带的非原生过滤策略确定为所述目标过滤策略; 和/或; 在接收到所述指定转发设备发送的路由后,基于所述路由的路由信息,确定是否发生路由异常事件,若发生路由异常事件,则确定与该所述路由异常事件对应的过滤策略,并将确定出的过滤策略作为目标过滤策略。
可选的,所述至少一种非原生过滤策略包括如下一种或多种:
按序发送策略;所述按序发送策略用于指示按照多种类型路由的优先级顺序发送多种类型路由; 所述按序发送策略包括多种类型路由的发送优先级顺序;
指定路由发送策略;所述指定路由发送策略用于指示所述指定转发设备发送指定类型的路由; 所述指定路由发送策略包含了指定类型路由的类型标识;
源路由过滤策略;所述源路由过滤策略,用于指示所述指定设备过滤掉指定的任意源转发设备发起的路由; 所述源路由过滤策略包括代表所述源转发设备的IGP ROUTERID;
Te-policy路由过滤策略;所述Te-policy路由过滤策略用于指示所述指定转发设备过滤掉携带指定的Te-policy三元组信息的路由;所述Te-policy路由过滤策略包括指定的policy三元组信息。
可选的,所述路由异常事件为路由超载,所述过滤策略为按序发送策略; 所述确定单元601,在基于所述路由的路由信息,确定是否发生路由异常事件时,用于统计第一预设时长内接收到的路由的数量,若该数量超过第一预设阈值,则确定发生路由异常事件,并确定所述路由异常事件为路由超载;所述构造单元602,在构造已进行了格式扩展的REFRESH报文时,用于构造已进行了格式扩展的REFRESH报文,并将按序发送策略的策略标记、以及按序发送策略添加至所述REFRESH报文的扩展字段中。
可选的,所述路由异常事件为任意源转发设备发起的路由超限,所述过滤策略为源路由过滤策略; 所述确定单元601,在基于所述路由的路由信息,确定是否发生路由异常事件时,用于获取所述路由携带的IGP Router ID,在第二预设时长内接收到的路由中,统计包含所述IGP Router ID的路由的数量,若该数量超过第二预设阈值,则确定发生了路由异常事件,并确定所述路由异常事件为该IGP Router ID所指示的源转发设备发起的路由超限; 所述构造单元602,在构造已进行了格式扩展的REFRESH报文时,用于构造已进行了格式扩展的REFRESH报文,并将源路由过滤策略的策略标记、以及源路由过滤策略添加至所述REFRESH报文的扩展字段中。
可选的,所述路由异常事件为任意源转发设备发起的路由震荡,所述过滤策略为源路由过滤策略; 所述确定单元601,在基于所述路由的路由信息,确定是否发生路由异常事件时,用于统计所述路由在第三预设时间内被写入和/或被删除的次数,当统计出的次数超过第三预设阈值时,确定发生了路由异常事件,并确定该路由异常事件为发起该路由的源转发设备发送的路由震荡; 所述构造单元602,在构造已进行了格式扩展的REFRESH报文时,用于构造已进行了格式扩展的REFRESH报文,并将源路由过滤策略的策略标记、以及源路由过滤策略添加至所述REFRESH报文的扩展字段中。
可选的,所述路由异常事件为Te-policy路由震荡,所述目标过滤策略为Te-policy路由过滤策略;所述确定单元601,在基于所述路由的路由信息,确定是否发生路由异常事件时,用于在确定所述路由携带了policy三元组信息后,确定所述路由为Te-policy路由; 统计所述Te-policy路由在第四预设时间内被写入和/或被删除的次数,当统计出的次数超过第四预设阈值时,确定发生了路由异常事件,并确定该路由异常事件为Te-policy路由震荡; 所述构造单元602,在构造已进行了格式扩展的REFRESH报文时,用于构造已进行了格式扩展的REFRESH报文,并将Te-policy路由过滤策略的策略标记、以及Te-policy路由过滤策略添加至所述REFRESH报文的扩展字段中。
参见图7,图7是本申请一示例性实施例示出的一种指定转发设备的硬件结构图。
与前述路由过滤方法的实施例相对应,本申请还提供了路由过滤装置的实施例。
本申请路由过滤装置的实施例可以应用在指定转发设备上。装置实施例可以通过软件实现,也可以通过硬件或者软硬件结合的方式实现。以软件实现为例,作为一个逻辑意义上的装置,是通过其所在指定转发设备的处理器将非易失性存储器中对应的计算机程序指令读取到内存中运行形成的。从硬件层面而言,如图7所示,为本申请路由过滤装置所在指定转发设备的一种硬件结构图,除了图7所示的处理器、内存、网络出接口、以及非易失性存储器之外,实施例中装置所在的指定转发设备通常根据该指定转发设备的实际功能,还可以包括其他硬件,对此不再赘述。
参见图8,图8是本申请一示例性实施例示出的另一种路由过滤装置的框图。该装置可应用于SRv6组网中的指定转发设备,所述SRv6组网还包括与所述指定转发设备建立了BGP对等体的控制器,所述控制器支持至少一种非原生过滤策略的发布,所述指定转发设备支持至少一种非原生过滤策略的解析与执行;所述装置包括:
接收单元801,用于接收所述控制器发送的REFRESH报文;所述REFRESH报文携带了目标过滤策略的策略标记,以及该目标过滤策略;所述目标过滤策略是所述控制器在其所支持的多种非原生过滤策略中确定出的;
解析单元802,用于依据所述策略标记,确定与所述目标过滤策略对应的策略解析规则,并依据所述策略解析规则,获取所述REFRESH报文中携带的目标过滤策略;
重连单元803,用于断开与所述控制器的BGP连接,并重新与所述控制器建立BGP连接;
过滤单元804,用于依据所述目标过滤策略过滤本设备接收到的路由,并通过重新建立的BGP连接向所述控制器发送过滤后的路由。
可选的,所述目标过滤策略包括如下一种或几种:
按序发送策略;其中,所述按序发送策略是所述控制器在检测到ORF配置信息携带了该按序发送策略时确定的;或者,所述按序发送策略是所述控制器在确定发生了路由超限时确定的; 所述按序发送策略包括多种类型路由的发送优先级顺序;
源路由过滤策略;其中,所述源路由过滤策略是所述控制器在检测到ORF配置信息携带了该源路由过滤策略时确定的;或者,所述源路由过滤策略是所述控制器在确定发生了源转发设备发送的路由超限或者震荡时确定的;所述源路由过滤策略包括代表所述源转发设备的IGP ROUTER ID;
指定路由发送策略;其中,所述指定路由发送策略是所述控制器在监听到ORF配置信息中包含了指定路由发送策略后确定的; 所述指定路由发送策略包含了指定类型路由的类型标识;
Te-policy路由过滤策略;其中,所述Te-policy路由过滤策略是所述控制器在检测到ORF配置信息携带了该Te-policy路由过滤时确定的;或者,所述Te-policy路由过滤策略是所述控制器在确定发生了Te-policy路由震荡事件时确定的;所述Te-policy路由过滤策略包括代表发生Te-policy路由震荡的policy三元组信息。
可选的,当所述目标过滤策略为按序发送策略时,所述过滤单元804,在通过重新建立的BGP连接向所述控制器发送过滤后的路由时,用于按照按序发送策略所指示的多种类型路由的优先级顺序,通过重新建立的BGP连接,依次向所述控制器发送多种类型的路由;
和/或,
当所述目标过滤策略为所述源路由过滤策略时,所述过滤单元804,在通过重新建立的BGP连接向所述控制器发送过滤后的路由时,用于通过重新建立的BGP连接,向所述控制器发送除携带所述IGP ROUTER ID之外的其他路由;
和/或,
当所述目标过滤策略为所述指定路由发送策略;所述过滤单元804,在通过重新建立的BGP连接向所述控制器发送过滤后的路由时,用于通过重新建立的BGP连接,向所述控制器发送所述指定路由发送策略所指示的路由;
和/或;
当所述目标过滤策略为Te-policy过滤策略;所述过滤单元804,在通过重新建立的BGP连接向所述控制器发送过滤后的路由时,用于 通过重新建立的BGP连接,向所述控制器发送除携带所述policy三元组信息之外的其他路由。
此外,本申请还提供一种路由过滤系统,该系统中包括控制器和指定转发设备,控制器与指定转发设备建立BGP对等体,所述控制器支持至少一种非原生过滤策略的发布,所述指定转发设备支持至少一种非原生过滤策略的解析与执行。所述控制器和所述转发设备可以执行上述路由过滤方法,这里不再赘述。
上述装置中各个单元的功能和作用的实现过程具体详见上述方法中对应步骤的实现过程,在此不再赘述。
对于装置实施例而言,由于其基本对应于方法实施例,所以相关之处参见方法实施例的部分说明即可。以上所描述的装置实施例仅仅是示意性的,其中所述作为分离部件说明的单元可以是或者也可以不是物理上分开的,作为单元显示的部件可以是或者也可以不是物理单元,即可以位于一个地方,或者也可以分布到多个网络单元上。可以根据实际的需要选择其中的部分或者全部模块来实现本申请方案的目的。本领域普通技术人员在不付出创造性劳动的情况下,即可以理解并实施。
以上所述仅为本申请的较佳实施例而已,并不用以限制本申请,凡在本申请的精神和原则之内,所做的任何修改、等同替换、改进等,均应包含在本申请保护的范围之内。
Claims (10)
1.一种路由过滤方法,其特征在于,所述方法应用于SRv6组网中的控制器,所述SRv6组网还包括与所述控制器建立了BGP对等体的指定转发设备,所述控制器支持至少一种非原生过滤策略的发布,所述指定转发设备支持至少一种非原生过滤策略的解析与执行;所述方法包括:
从所述控制器所支持的至少一种非原生过滤策略中确定出待发布的目标过滤策略;
构造已进行了格式扩展的REFRESH报文,所述REFRESH报文携带与该目标过滤策略对应的策略标记,以及所述目标过滤策略;
将所述REFRESH报文发送给所述指定转发设备;其中,所述REFRESH报文用于促使所述指定转发设备依据所述策略标记所对应的解析规则,解析所述REFRESH报文以获取所述目标过滤策略,并在与所述控制器重新建立BGP连接后,依据所述目标过滤策略过滤接收到的路由,并向所述控制器发送过滤后的路由。
2.根据权利要求1所述的路由过滤方法,其特征在于,所述从所述控制器所支持的至少一种非原生过滤策略中确定出待发布的目标过滤策略,包括:
响应于监听到的ORF配置信息,将所述ORF配置信息携带的非原生过滤策略确定为所述目标过滤策略;
和/或;
在接收到所述指定转发设备发送的路由后,基于所述路由的路由信息,确定是否发生路由异常事件,若发生路由异常事件,则确定与该所述路由异常事件对应的过滤策略,并将确定出的过滤策略作为目标过滤策略。
3.根据权利要求2所述的路由过滤方法,其特征在于,所述至少一种非原生过滤策略包括如下一种或多种:
按序发送策略;所述按序发送策略用于指示按照多种类型路由的优先级顺序发送多种类型路由; 所述按序发送策略包括多种类型路由的发送优先级顺序;
指定路由发送策略;所述指定路由发送策略用于指示所述指定转发设备发送指定类型的路由; 所述指定路由发送策略包含了指定类型路由的类型标识;
源路由过滤策略;所述源路由过滤策略,用于指示所述指定设备过滤掉指定的任意源转发设备发起的路由; 所述源路由过滤策略包括代表所述源转发设备的IGP ROUTER ID;
Te-policy路由过滤策略;所述Te-policy路由过滤策略用于指示所述指定转发设备过滤掉携带指定的Te-policy三元组信息的路由;所述Te-policy路由过滤策略包括指定的policy三元组信息。
4.根据权利要求3所述的路由过滤方法,其特征在于,所述路由异常事件为路由超载,所述过滤策略为按序发送策略;
所述基于所述路由的路由信息,确定是否发生路由异常事件,包括:
统计第一预设时长内接收到的路由的数量,若该数量超过第一预设阈值,则确定发生路由异常事件,并确定所述路由异常事件为路由超载;
所述构造已进行了格式扩展的REFRESH报文,包括:
构造已进行了格式扩展的REFRESH报文,并将按序发送策略的策略标记、以及按序发送策略添加至所述REFRESH报文的扩展字段中。
5.根据权利要求3所述的路由过滤方法,其特征在于,所述路由异常事件为任意源转发设备发起的路由超限,所述过滤策略为源路由过滤策略;
所述基于所述路由的路由信息,确定是否发生路由异常事件,包括:
获取所述路由携带的IGP Router ID,在第二预设时长内接收到的路由中,统计包含所述IGP Router ID的路由的数量,若该数量超过第二预设阈值,则确定发生了路由异常事件,并确定所述路由异常事件为该IGP Router ID所指示的源转发设备发起的路由超限;
所述构造已进行了格式扩展的REFRESH报文,包括:
构造已进行了格式扩展的REFRESH报文,并将源路由过滤策略的策略标记、以及源路由过滤策略添加至所述REFRESH报文的扩展字段中。
6.根据权利要求3所述的路由过滤方法,其特征在于,所述路由异常事件为任意源转发设备发起的路由震荡,所述过滤策略为源路由过滤策略;
所述基于所述路由的路由信息,确定是否发生路由异常事件,包括:
统计所述路由在第三预设时间内被写入和/或被删除的次数,当统计出的次数超过第三预设阈值时,确定发生了路由异常事件,并确定该路由异常事件为发起该路由的源转发设备发送的路由震荡;
所述构造已进行了格式扩展的REFRESH报文,包括:
构造已进行了格式扩展的REFRESH报文,并将源路由过滤策略的策略标记、以及源路由过滤策略添加至所述REFRESH报文的扩展字段中。
7.根据权利要求3所述的路由过滤方法,其特征在于,所述路由异常事件为Te-policy路由震荡,所述目标过滤策略为Te-policy路由过滤策略;
所述基于所述路由的路由信息,确定是否发生路由异常事件,包括:
在确定所述路由携带了policy三元组信息后,确定所述路由为Te-policy路由;
统计所述Te-policy路由在第四预设时间内被写入和/或被删除的次数,当统计出的次数超过第四预设阈值时,确定发生了路由异常事件,并确定该路由异常事件为Te-policy路由震荡;
所述构造已进行了格式扩展的REFRESH报文,包括:
构造已进行了格式扩展的REFRESH报文,并将Te-policy路由过滤策略的策略标记、以及Te-policy路由过滤策略添加至所述REFRESH报文的扩展字段中。
8.一种路由过滤方法,其特征在于,所述方法应用于SRv6组网中的指定转发设备,所述SRv6组网还包括与所述指定转发设备建立了BGP对等体的控制器,所述控制器支持至少一种非原生过滤策略的发布,所述指定转发设备支持至少一种非原生过滤策略的解析与执行;所述方法包括:
接收所述控制器发送的REFRESH报文;所述REFRESH报文携带了目标过滤策略的策略标记,以及该目标过滤策略;所述目标过滤策略是所述控制器在其所支持的多种非原生过滤策略中确定出的;
依据所述策略标记,确定与所述目标过滤策略对应的策略解析规则,并依据所述策略解析规则,获取所述REFRESH报文中携带的目标过滤策略;
断开与所述控制器的BGP连接,并重新与所述控制器建立BGP连接;
依据所述目标过滤策略过滤本设备接收到的路由,并通过重新建立的BGP连接向所述控制器发送过滤后的路由。
9.根据权利要求8所述的路由过滤方法,其特征在于,所述目标过滤策略包括如下一种或几种:
按序发送策略;其中,所述按序发送策略是所述控制器在检测到ORF配置信息携带了该按序发送策略时确定的;或者,所述按序发送策略是所述控制器在确定发生了路由超限时确定的; 所述按序发送策略包括多种类型路由的发送优先级顺序;
源路由过滤策略;其中,所述源路由过滤策略是所述控制器在检测到ORF配置信息携带了该源路由过滤策略时确定的;或者,所述源路由过滤策略是所述控制器在确定发生了源转发设备发送的路由超限或者震荡时确定的;所述源路由过滤策略包括代表所述源转发设备的IGP ROUTER ID;
指定路由发送策略;其中,所述指定路由发送策略是所述控制器在监听到ORF配置信息中包含了指定路由发送策略后确定的; 所述指定路由发送策略包含了指定类型路由的类型标识;
Te-policy路由过滤策略;其中,所述Te-policy路由过滤策略是所述控制器在检测到ORF配置信息携带了该Te-policy路由过滤时确定的;或者,所述Te-policy路由过滤策略是所述控制器在确定发生了Te-policy路由震荡事件时确定的;所述Te-policy路由过滤策略包括代表发生Te-policy路由震荡的policy三元组信息。
10.根据权利要求9所述的路由过滤方法,其特征在于,
当所述目标过滤策略为按序发送策略时,所述通过重新建立的BGP连接向所述控制器发送过滤后的路由,包括:按照按序发送策略所指示的多种类型路由的优先级顺序,通过重新建立的BGP连接,依次向所述控制器发送多种类型的路由;
和/或,
当所述目标过滤策略为所述源路由过滤策略时,所述通过重新建立的BGP连接向所述控制器发送过滤后的路由,包括:通过重新建立的BGP连接,向所述控制器发送除携带所述IGP ROUTER ID之外的其他路由;
和/或,
当所述目标过滤策略为所述指定路由发送策略;所述通过重新建立的BGP连接向所述控制器发送过滤后的路由,包括:通过重新建立的BGP连接,向所述控制器发送所述指定路由发送策略所指示的路由;
和/或;
当所述目标过滤策略为Te-policy过滤策略;所述通过重新建立的BGP连接向所述控制器发送过滤后的路由,包括:通过重新建立的BGP连接,向所述控制器发送除携带所述policy三元组信息之外的其他路由。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202310106380.6A CN115801676B (zh) | 2023-02-13 | 2023-02-13 | 一种路由过滤方法、装置及电子设备 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202310106380.6A CN115801676B (zh) | 2023-02-13 | 2023-02-13 | 一种路由过滤方法、装置及电子设备 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN115801676A true CN115801676A (zh) | 2023-03-14 |
CN115801676B CN115801676B (zh) | 2023-05-19 |
Family
ID=85430964
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202310106380.6A Active CN115801676B (zh) | 2023-02-13 | 2023-02-13 | 一种路由过滤方法、装置及电子设备 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN115801676B (zh) |
Citations (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO2011003238A1 (zh) * | 2009-07-09 | 2011-01-13 | 华为技术有限公司 | 路由请求、通告方法、通信设备及系统 |
US7990893B1 (en) * | 2009-05-19 | 2011-08-02 | Juniper Networks, Inc. | Fast prefix-based network route filtering |
CN102447605A (zh) * | 2010-09-30 | 2012-05-09 | 华为技术有限公司 | 一种请求获取路由信息的方法和相应的路由设备 |
CN102611632A (zh) * | 2012-04-12 | 2012-07-25 | 福建星网锐捷网络有限公司 | 基于bgp协议的vpls出路由过滤方法以及装置 |
CN106161226A (zh) * | 2015-03-23 | 2016-11-23 | 华为技术有限公司 | 发送、接收流规范规则的方法和装置 |
CN107547381A (zh) * | 2017-05-17 | 2018-01-05 | 新华三技术有限公司 | 一种orf处理方法和装置 |
-
2023
- 2023-02-13 CN CN202310106380.6A patent/CN115801676B/zh active Active
Patent Citations (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US7990893B1 (en) * | 2009-05-19 | 2011-08-02 | Juniper Networks, Inc. | Fast prefix-based network route filtering |
WO2011003238A1 (zh) * | 2009-07-09 | 2011-01-13 | 华为技术有限公司 | 路由请求、通告方法、通信设备及系统 |
CN102447605A (zh) * | 2010-09-30 | 2012-05-09 | 华为技术有限公司 | 一种请求获取路由信息的方法和相应的路由设备 |
CN102611632A (zh) * | 2012-04-12 | 2012-07-25 | 福建星网锐捷网络有限公司 | 基于bgp协议的vpls出路由过滤方法以及装置 |
CN106161226A (zh) * | 2015-03-23 | 2016-11-23 | 华为技术有限公司 | 发送、接收流规范规则的方法和装置 |
CN107547381A (zh) * | 2017-05-17 | 2018-01-05 | 新华三技术有限公司 | 一种orf处理方法和装置 |
Also Published As
Publication number | Publication date |
---|---|
CN115801676B (zh) | 2023-05-19 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
EP3958521A1 (en) | Method and apparatus for providing service for service flow | |
CN112291144B (zh) | 路由控制的方法、设备和系统 | |
EP2592793B1 (en) | Method and apparatus for forwarding multicast traffic | |
CN1973486B (zh) | 在采用受保护链路的数据网络中避免微环的方法和装置 | |
US8817798B2 (en) | Constraining topology size and recursively calculating routes in large networks | |
US8291112B2 (en) | Selective a priori reactive routing | |
EP2632091A1 (en) | Communication system, control apparatus, configuration method for processing rules, and program | |
WO2021093465A1 (zh) | 发送报文、接收报文以进行oam的方法、装置及系统 | |
US20090016356A1 (en) | Method of operating a network | |
US7889668B2 (en) | Method of operating a network | |
WO2021083341A1 (zh) | 一种报文处理的方法、网络节点和系统 | |
US11245615B2 (en) | Method for determining link state, and device | |
EP2996292A1 (en) | Method for processing message and forwarder | |
CN103888351A (zh) | 在基于多路径路由的网络中管理多个会话的方法及装置 | |
EP3297245B1 (en) | Method, apparatus and system for collecting access control list | |
CN109039916B (zh) | 报文转发方法、装置及存储介质 | |
CN108289044B (zh) | 数据转发方法、确定静态路由的链路状态方法及网络设备 | |
EP2209263A1 (en) | Method, system and installation for forwarding data transmission frames | |
CN115801676B (zh) | 一种路由过滤方法、装置及电子设备 | |
WO2023036087A1 (zh) | 路由通告方法、路径建立方法、业务数据的传输方法、自治系统边界路由器 | |
CN108123871B (zh) | 等价多路径ecmp处理方法及装置 | |
CN114079640B (zh) | 一种数据处理方法、用户面功能及装置 | |
US7418519B1 (en) | Technique for prefix limit exchange for route advertisement | |
CN105765903A (zh) | 一种拓扑发现方法及设备 | |
CN103763199B (zh) | 一种链路状态信息处理方法和装置 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
GR01 | Patent grant | ||
GR01 | Patent grant |