一种用于智能策略路由的设备及方法与流程

文档序号:37905566发布日期:2024-05-09 21:52阅读:12来源:国知局
一种用于智能策略路由的设备及方法与流程

本发明涉及通信网络,尤其涉及通信网络中的流量工程。为了提高网络利用率,满足用户需求,本发明提出了一种基于意图的智能策略路由。本发明具体涉及在一组隧道的多条路径上的流量负载均衡。


背景技术:

1、流量工程对于提高网络利用率、满足用户需求起着至关重要的作用。通过多条路径进行路由有助于更好地利用网络容量,并且能够根据网络状况动态选择路径。

2、多路径路由通常用于软件定义广域网(software-defined wide area network,sd-wan)中,其中,企业的总部站点和本地分支机构(站点)可以通过不同的网络(例如,多协议标签交换(multiprotocol label switching,mpls)、互联网、lte)互连。在这种覆盖网络中,通常在总部站点部署控制器实体,来管理网络,而驻地则配备了接入路由器(accessrouter,ar)。控制器负责接入路由器的配置和高层路由策略的更新。接入路由器进而在一组可用的覆盖链路上路由流量,以便与控制器定义的策略和本地网络状况知识(例如,覆盖链路的平均时延、丢失、抖动)保持一致。

3、在单个应用级别,可以定义特定的服务质量(quality of service,qos)或服务水平协议(service level agreement,sla)要求。应用通常映射到具有不同qos要求的不同“流组”,例如:实时(中等流量,高sla要求)、业务(高流量,中等sla要求)和批量(中等流量,低/无sla要求)。

4、在全球网络级别,网络所有者可以表达几个目标或“意图”。例如,该目标可以是尽可能减少财务成本、尽可能减少拥塞或尽可能提高性能。优化意图和保证sla在本质上可能是相互冲突的目标。事实上,尽可能减少财务成本的意图可能会导致在qos方面选择边界路径,从而引发违反应用sla的风险。

5、通常,ip网络负载均衡用于减少拥塞,并在网络设备(例如,交换机或路由器)内部实现。随着流量和网络状况的不断变化,必须调整流量的负载均衡,以更好地利用网络资源,满足应用要求。在现有技术中,已经提出了几种方案来解决负载均衡问题。

6、已发布性能路由(performance routing,pfr)/iwan方案,用于在wan网络中动态选择路径,以便满足sla要求。在该架构中,用户根据每个应用的sla要求,在主控制器(master controller,mc)级别定义策略。接入路由器监控路径的质量,并且向mc发送监控更新。然后,控制器将路径的质量与应用要求进行比较,并在需要时更新路由器中的路径选择。这种方案需要设备和控制器之间频繁通信,因为路径实际上是在控制器中选择的。这种方案对网络状况的变化反应很慢。此外,该策略仅根据每个应用的qos要求或路径偏好来定义。该策略不是为了满足给定的全局意图而优化的。

7、引入了基于链路利用率(link utilization,lu)的路由来动态地使流量负载均衡,其中,链路利用率阈值被分配给链路。当链路的lu超过阈值时,该链路被标记为“策略外”(out-of-policy,oop)。然后,oop链路上的流量被重定向到其他可用链路,直到该链路的lu回到“策略内”(低于给定阈值)。在另一种基于lu的负载均衡方法中,估计链路的可用带宽。从最短路径优先算法计算的等价多路径(equal cost multi-path,ecmp)列表中,确定每条路径的最小可用带宽(minimum available bandwidth,mab)。然后根据mab确定每条路径的权重,并且根据权重将流分配给ecmp路径。在一种传统的方案中,流量与路径的容量成比例地分布在路径上。这些方案通过考虑链路利用率来解决负载均衡问题,但无法保证sla。

8、负载均衡可以根据对网络中拥塞的感知来完成,其中,在源和目的地之间形成反馈环路,以检测拥塞。然而,每个应用对拥塞的敏感度不同,例如,批量应用可以容忍轻度到中度的拥塞,而实时应用则不能。在基于时延的负载均衡方案中,根据当前负载和剩余容量估计链路的时延,然后选择路径,以获取组合目标(带宽、利用率和时延)。在另一个用于开放流的基于意图和qos的路由框架中,路由决策是在控制器中针对每个流而做出的。虽然这种方案同时考虑了sla和意图,但仅在控制器内部运行,并且不支持设备来操作负载均衡。


技术实现思路

1、有鉴于此,本文旨在介绍一种设备内部的基于意图的策略路由方法。一个目标是让支持网络控制器的设备满足全局意图。一个目的是最大限度地减少控制器和设备之间的通信需求。另一个目的是提高sla的满意度。

2、通过所附独立权利要求中提供的实施例实现所述目标。实施例的有利实现方式在从属权利要求中进一步定义。

3、本发明的第一方面提供了一种用于在网络中路由多个流组的网络实体,其中,所述网络实体用于从控制器获取策略信息,其中,所述策略信息包括一个或多个全局意图和关于多个流组中的每个流组的至少一个sla要求的信息,其中,每个全局意图指示网络运营商的一个要求;根据所述策略信息,为所述多个流组做出一个或多个路由决策。

4、在本发明中,该网络可以是软件定义网络,例如,sd-wan。网络实体可以是接入设备,例如,sd-wan场景中的接入路由器(access router,ar)。本发明提出了一种设备内部的基于意图的策略路由的方案。策略信息可能包括路由策略或负载均衡策略。设备(例如,网络实体)支持控制器,该控制器提供策略信息,以满足全局意图。

5、在第一方面的一种实现方式中,每个全局意图指示所述网络运营商的与以下其中一项相关的要求:链路利用率、财务成本、质量、拥塞、安全性、稳定性和性能。

6、通常,网络运营商或网络所有者可能意图尽可能减少网络的财务成本、尽可能减少网络拥塞、尽可能提高网络性能、尽可能提高网络的稳定性(例如,尽可能多地坚持先前配置)或尽可能提高网络的安全性(例如,满足最大数量的sla)。这些要求中的一个或多个要求可以包括在策略信息中,从而使网络实体在考虑这些意图或要求的情况下做出决策。

7、在第一方面的一种实现方式中,所述策略信息还包括关于可用于路由所述多个流组的一组覆盖链路的信息,其中,每个覆盖链路包括多个底层链路。

8、可选地,可以例如由集中式控制器给出一组主动/备份链路。需要说明的是,集中式控制器可以知道网络拓扑和/或链路特征(例如,容量、背景流量、分组丢失、时延等)。网络实体做出路由决策,也考虑了覆盖链路的信息。通常,底层链路或网络是指物理链路或网络,而覆盖链路是覆盖在一个或多个物理链路上的逻辑或虚拟链路。

9、在第一方面的一种实现方式中,所述网络实体还用于获取所述多个流组中的每个流组的流量预测结果和/或sla预测结果,其中,每个流组的所述流量预测结果包括所述流组的一个或多个流量参数,和/或每个流组的所述sla预测结果包括所述流组的一个或多个qos性能指标。

10、需要说明的是,该网络实体可以是ar内部实现的spr模块。网络实体可以从ar内部的其他模块(例如,流量预测模块、sla预测模块等)获取流量预测结果和/或sla预测结果。

11、在第一方面的一种实现方式中,所述为所述多个流组做出所述一个或多个路由决策包括:根据所述策略信息以及所述多个流组中的每个流组的所述流量预测结果和/或所述sla预测结果为所述流组做出路由决策。

12、可选地,网络实体在对每个流组做出路由决策时,除了策略信息外,还可以考虑该流组的流量预测结果和/或sla预测结果。应当注意,由于对流量和性能使用预测模型,可以减少与控制器的通信,更好地保证sla的满意度。由于意图的优化可能与sla的优化冲突,所以使用预测模型使网络实体能够做出高效的决策(例如,路由决策或负载均衡决策),即,以便可以预测它所做的决策的后果。

13、在第一方面的一种实现方式中,所述网络实体还用于:监控所述多个流组,以获取所述多个流组中的每个流组的统计信息,其中,每个流组的所述统计信息包括所述流组的吞吐量信息和qos统计中的至少一个;根据所述多个流组中的每个流组的统计信息,对所述流组进行流量预测,以获取所述多个流组中的每个流组的所述流量预测结果。

14、例如,所述网络实体可以是包括spr模块的ar本身。在这种情况下,网络实体产生流量预测结果。

15、在第一方面的一种实现方式中,使用流量预测模型执行流量预测。

16、可能地,流量预测模型已经嵌入到网络实体中。

17、在第一方面的一种实现方式中,所述网络实体还用于:从所述控制器获取与所述流量预测相关的一个或多个流量预测参数;使用所述一个或多个流量预测参数从一个或多个经训练的模型中选择所述流量预测模型和/或使用所述一个或多个流量预测参数训练所述流量预测模型。

18、可能地,与流量预测相关的参数可以用于选择要使用的特定流量预测模型(基于历史的sarima机器学习)。可选地,这些参数可以用作模型参数,用于使用某些参数配置或训练所选择的模型。

19、在第一方面的一种实现方式中,所述网络实体还用于向所述控制器提供所述多个流组的所述统计信息。

20、在第一方面的一种实现方式中,所述网络实体还用于使用sla预测模型对所述多个流组中的每个流组和所述一组覆盖链路中的每个覆盖链路进行sla预测,以获取所述多个流组中的每个流组的所述sla预测结果。

21、可选地,所述网络实体还可以包括sla预测模块,用于产生sla预测结果。

22、在第一方面的一种实现方式中,所述网络实体还用于:从所述控制器获取与所述sla预测相关的一个或多个sla预测参数;使用所述一个或多个sla预测参数确定或激活所述sla预测模型。

23、可选地,与sla预测相关的参数可以用于确定或激活sla预测模型。

24、在第一方面的一种实现方式中,每个全局意图与优先级或权重相关联,其中,所述优先级或权重指示所述一个或多个全局意图中所述全局意图的重要性顺序。

25、每个全局意图的优先级或权重可以由网络运营商或所有者提供。

26、在第一方面的一种实现方式中,所述一个或多个全局意图包括指示与安全性相关的要求的第一全局意图,所述第一全局意图与所述一个或多个全局意图中的最高优先级相关联,其中,所述第一全局意图指示所述网络实体做出满足所述至少一个sla要求的所述路由决策。

27、在第一方面的一种实现方式中,所述一个或多个全局意图包括指示与稳定性相关的要求的第二全局意图,所述第二全局意图与所述一个或多个全局意图中的第二最高优先级相关联,其中,所述第二全局意图指示所述网络实体做出所述一个或多个路由决策,所述一个或多个路由决策尽可能减少对一个或多个先前路由决策的改变。

28、需要说明的是,尽可能提高稳定性(也称为“粘性”)通常被定义为次要意图,而尽可能提高安全性通常被定义为主要意图。

29、在第一方面的一种实现方式中,所述网络实体还用于:定期为所述多个流组做出所述一个或多个路由决策,或者响应于一个或多个触发事件,为所述多个流组做出所述一个或多个路由决策。

30、可选地,设备中的基于意图的spr可以是定期的或者是事件触发的(例如,由外部控制器)。

31、在第一方面的一种实现方式中,所述网络实体还用于:向控制器提供关于所述网络实体是否支持特定全局意图的信息。

32、需要说明的是,控制器可以收集关于设备的意图能力的信息,并相应地提供包括全局意图的策略信息。

33、在第一方面的一种实现方式中,所述策略信息包括专用于所述网络实体上运行的第一组应用的第一组全局意图以及专用于所述网络实体上运行的第二组应用的第二组全局意图。

34、可以针对所有应用或不同应用/租户组全局定义意图。例如,可能希望减少一个组的给定应用引起的财务支出;同时可能希望提高一个组的另一个应用感知的质量。还可以为设备定义不同的意图(例如,核心路由器与接入路由器)。例如,可能希望减少企业分支机构引起的财务支出。

35、在第一方面的一种实现方式中,所述网络实体还用于:根据所述策略信息为所述多个流组做出一个或多个负载均衡决策。

36、可能地,本发明提出的基于意图的方法也可以应用于负载均衡。

37、在第一方面的一种实现方式中,所述为所述多个流组做出所述一个或多个负载均衡决策包括:根据所述策略信息以及所述多个流组中的每个流组的所述流量预测结果和/或所述sla预测结果为所述流组做出负载均衡决策。

38、在第一方面的一种实现方式中,所述网络实体是接入路由器,所述网络为软件定义网络。

39、本发明的第二方面提供了一种用于在网络中辅助路由多个流组的控制器,其中,所述控制器用于:向网络实体提供策略信息,其中,所述策略信息包括一个或多个全局意图和关于多个流组中的每个流组的至少一个sla要求的信息,其中,每个全局意图指示网络运营商的一个要求。

40、因此,本发明的实施例提出了一种用于支持基于意图的spr方法的控制器。向接入设备(例如,网络实体)提供意图,以便网络实体做出高效的决策(例如,路由决策或负载均衡决策),即,以便可以预测它所做的决策的后果。

41、在第二方面的一种实现方式中,每个全局意图指示所述网络运营商的与以下其中一项相关的要求:链路利用率、财务成本、质量、拥塞、安全性、稳定性和性能。

42、在第二方面的一种实现方式中,所述策略信息还包括关于可用于路由所述多个流组的一组覆盖链路的信息,其中,每个覆盖链路包括多个底层链路。

43、在第二方面的一种实现方式中,所述控制器用于向所述网络实体提供与流量预测相关的一个或多个流量预测参数和/或与sla预测相关的一个或多个sla预测参数。

44、可能地,流量预测模型已经嵌入到设备中。控制器可以向网络实体提供与流量预测相关的参数,用于选择要使用的特定流量预测模型(基于历史的sarima机器学习)。

45、在第二方面的一种实现方式中,所述控制器用于:从所述网络实体获取所述多个流组的统计信息,其中,每个流组的所述统计信息包括所述流组的吞吐量信息和qos统计中的至少一个。

46、在第二方面的一种实现方式中,每个全局意图与优先级或权重相关联,其中,所述优先级或权重指示所述一个或多个全局意图中所述全局意图的重要性顺序。

47、在第二方面的一种实现方式中,所述控制器还用于:从所述网络实体获取关于所述网络实体是否支持特定全局意图的信息。

48、在第二方面的一种实现方式中,所述向网络实体提供策略信息还包括:根据所述获取的关于所述网络实体是否支持特定全局意图的信息,提供所述策略信息。

49、可选地,控制器可以收集关于设备的意图能力的信息,并相应地提供包括全局意图的策略信息。

50、本发明的第三方面提供了一种用于在网络中路由多个流组的方法,其中,所述方法包括:从控制器获取策略信息,其中,所述策略信息包括一个或多个全局意图和关于多个流组中的每个流组的至少一个sla要求的信息,其中,每个全局意图指示网络运营商的一个要求;根据所述策略信息为所述多个流组做出一个或多个路由决策。

51、第三方面的方法的实现方式可以对应于上述第一方面的网络实体的实现方式。第三方面及其实现方式的方法实现了与上述针对第一方面及其实现方式的网络实体所描述的相同的优点和效果。

52、本发明的第四方面提供了一种用于在网络中辅助路由多个流组的方法,其中,所述方法包括:向网络实体提供策略信息,其中,所述策略信息包括一个或多个全局意图和关于多个流组中的每个流组的至少一个sla要求的信息,其中,每个全局意图指示网络运营商的一个要求。

53、第四方面的方法的实现方式可以对应于上述第二方面的控制器的实现方式。第四方面及其实现方式的方法实现了与上述针对第二方面及其实现方式的控制器所描述的相同的优点和效果。

54、本发明的第五方面提供了一种包括程序代码的计算机程序产品,所述程序代码用于当在处理器上实现时执行根据所述第三方面和所述第三方面的任何实现方式或所述第四方面和所述第四方面的任何实现方式所述的方法。

55、需要说明的是,本技术中描述的所有设备、元件、单元和模块可以在软件或硬件元件或其任何类型的组合中实现。本技术中描述的各种实体所执行的所有步骤以及所描述的各种实体要执行的功能均意在指相应实体用于执行相应步骤和功能。虽然在以下具体实施例的描述中,外部实体执行的具体功能或步骤没有在执行具体步骤或功能的实体的具体详述元件的描述中反映,但是技术人员应清楚,这些方法和功能可以通过相应的硬件或软件元件或其任何组合实现。

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