CN115811494A - 用于sd-wan服务的自动基于应用的多路径路由 - Google Patents
用于sd-wan服务的自动基于应用的多路径路由 Download PDFInfo
- Publication number
- CN115811494A CN115811494A CN202211097066.8A CN202211097066A CN115811494A CN 115811494 A CN115811494 A CN 115811494A CN 202211097066 A CN202211097066 A CN 202211097066A CN 115811494 A CN115811494 A CN 115811494A
- Authority
- CN
- China
- Prior art keywords
- application
- amr
- wan
- criteria
- applications
- 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.)
- Pending
Links
Images
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L45/00—Routing or path finding of packets in data switching networks
- H04L45/302—Route determination based on requested QoS
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L45/00—Routing or path finding of packets in data switching networks
- H04L45/302—Route determination based on requested QoS
- H04L45/306—Route determination based on the nature of the carried application
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L45/00—Routing or path finding of packets in data switching networks
- H04L45/02—Topology update or discovery
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L45/00—Routing or path finding of packets in data switching networks
- H04L45/24—Multipath
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L45/00—Routing or path finding of packets in data switching networks
- H04L45/302—Route determination based on requested QoS
- H04L45/308—Route determination based on user's profile, e.g. premium users
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L45/00—Routing or path finding of packets in data switching networks
- H04L45/42—Centralised routing
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L47/00—Traffic control in data switching networks
- H04L47/10—Flow control; Congestion control
- H04L47/24—Traffic characterised by specific attributes, e.g. priority or QoS
- H04L47/2425—Traffic characterised by specific attributes, e.g. priority or QoS for supporting services specification, e.g. SLA
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L47/00—Traffic control in data switching networks
- H04L47/10—Flow control; Congestion control
- H04L47/24—Traffic characterised by specific attributes, e.g. priority or QoS
- H04L47/2441—Traffic characterised by specific attributes, e.g. priority or QoS relying on flow classification, e.g. using integrated services [IntServ]
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L47/00—Traffic control in data switching networks
- H04L47/10—Flow control; Congestion control
- H04L47/24—Traffic characterised by specific attributes, e.g. priority or QoS
- H04L47/2475—Traffic characterised by specific attributes, e.g. priority or QoS for supporting traffic characterised by the type of applications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L47/00—Traffic control in data switching networks
- H04L47/10—Flow control; Congestion control
- H04L47/24—Traffic characterised by specific attributes, e.g. priority or QoS
- H04L47/2483—Traffic characterised by specific attributes, e.g. priority or QoS involving identification of individual flows
Landscapes
- Engineering & Computer Science (AREA)
- Computer Networks & Wireless Communication (AREA)
- Signal Processing (AREA)
- Data Exchanges In Wide-Area Networks (AREA)
Abstract
本发明公开了用于SD‑WAN服务的自动基于应用的多路径路由。本申请公开了示例网络设备、系统和方法。在一个示例中,一种网络设备包括:存储器,被配置为存储与软件定义广域网(SD‑WAN)中的应用的一个或多个服务等级协议(SLA)相关联的信息;以及基于应用的多路径路由(AMR)模块,包括处理电路。AMR模块被配置为基于标准来识别针对AMR的一个或多个应用,其中,标准中的每个标准与应用的对应属性相关联。AMR模块被配置为确定与所识别的一个或多个应用中的第一应用相关联的每个WAN链路上的SLA之一的违反。AMR模块被配置为响应于确定违反而对第一应用施用AMR。
Description
本申请要求2021年9月13日提交的美国专利申请第17/473,561号的优先权,其全部内容通过引用结合于本文。
技术领域
本公开涉及计算机网络。
背景技术
计算机网络是可以交换数据和共享资源的互连计算设备的集合。在诸如互联网之类的基于数据包的网络中,计算设备通过将数据划分成称为数据包的可变长度块来传送数据,数据包在网络上从源设备被单独地路由到目的地设备。目的地设备从数据包中提取数据并将数据组装成其原始形式。
网络提供商和企业可以使用在广域网中软件定义的网络(SD-WAN)来管理分布式位置(例如远程分支机构或中央办公室或数据中心)之间的网络连接。SD-WAN扩展了SDN,使企业能够通过WAN快速高效地创建连接,WAN可能包括互联网或其他提供各种WAN连接类型的传输网络,例如基于多协议标签交换(MPLS)的连接、移动网络连接(例如,3G、长期演进(LTE)、5G)、非对称数字用户线(ADSL)等。这种连接通常被称为“WAN链路”或者更简单地称为“链路”。SD-WAN被认为是一种连接解决方案,利用上述或其他广域网连接类型,利用WAN链路作为传统WAN接入之上的覆盖而实现的。
SD-WAN服务使企业等用户能够使用WAN链路来满足业务和客户需求。在SD-WAN环境中,低优先级流量可以使用成本较低的基于互联网的WAN链路,而更重要的流量可以通过质量更好的WAN链路(例如MPLS网络提供的链路)传输。WAN链路使用也可以按应用分配。借助SD-WAN解决方案,企业客户可以根据自己的需要将成本优化与服务水平协议(SLA)要求混合匹配。用户可能期望他们的应用体验到具有可接受质量水平的连接,通常称为体验质量(QoE)。可以基于包括延迟(latency)、延迟(delay)(帧间间隙)、抖动、数据包丢失和/或吞吐量(例如,带宽)的链路的各种性能度量来测量QoE。用户可以在与服务提供商的服务合同中定义用户期望的QoE的一个或多个度量(例如SLA)的期望水平。SLA度量通常是用户可置备的值,通过试错法或基准测试环境与用户体验或实际最佳应用度量的对比得出。
发明内容
一般而言,本公开描述了用于当在SD-WAN上递送应用流量时自动识别哪些应用应当应用基于应用的多路径路由(AMR),并且在一个或多个条件发生时将AMR应用于所识别的应用的技术。根据本公开的技术,网络设备可以将AMR应用于所识别的应用,即使AMR没有被预备(预先准备,pre-provisioned)用于所识别的应用。
例如,网络设备可以使用可以与应用的对应属性相关联的标准。在一些示例中,标准中的每个标准可以具有对应的权重。这些标准可以由例如网络设备制造商预先确定,或者可以由SD-WAN服务的网络运营商、管理员或客户来置备。在一些示例中,标准和/或标准的权重可以基于网络条件和/或SD-WAN部署来动态地和自动地适配,使得标准和/或权重可以在没有操作员输入的情况下改变。网络设备可以基于标准来识别哪些应用应当有资格获得AMR的应用。然后,当发生违反与有资格获得AMR的应用的应用相关联的每个WAN链路的服务水平协议(SLA)时,网络设备可以应用AMR,即使没有为该应用预备AMR。例如,网络设备可以通过创建应用数据包的副本并通过两个以上WAN链路发送应用数据包的副本来对该应用施用AMR。
手动地确定哪些应用应当被置备针对AMR并且置备这种应用是复杂且繁琐的过程,因为成千上万的应用可能在网络上提供流量。如果为一些应用预先置备AMR,并且QoE对其而言重要的新应用被添加到网络,而没有为新应用预先置备AMR,则如果在与新应用相关联的所有WAN链路上没有满足SLA,则新应用的QoE将受损。通过自动地识别哪些应用应当是针对AMR的合格候选并且即使在AMR尚未被预先置备给这种应用时也将AMR应用于该应用,网络设备可以节省网络管理员分析应用以确定哪些应用应当被置备针对AMR的无数时间,同时还降低了当SLA被违反时对QoE的影响。以这种方式,示例技术提供了对与确定哪些应用应当被启用AMR并且即使没有为这些应用预先置备AMR也将AMR应用于这些应用相关的技术问题的技术解决方案,并且将这些技术结合到实际应用中以用于识别应用并且将AMR应用于这些应用。
在一个示例中,一种网络设备,包括存储器和基于应用的多路径路由(AMR,application-based multipath routing)模块,存储器被配置为存储与用于软件定义广域网(SD-WAN)中的应用的一个或多个服务等级协议(SLA)相关联的信息,AMR模块包括处理电路,AMR模块被配置为:基于标准来识别针对AMR的一个或多个应用,其中,标准中的每个标准与应用的对应属性相关联;确定与所识别的一个或多个应用中的第一应用相关联的每个WAN链路上的SLA之一的违反;以及响应于确定违反,对第一应用施用AMR。
在一个示例中,一种方法,包括:由处理电路并基于标准来识别针对软件定义广域网(SD-WAN)中的基于应用的多路径路由(AMR)的一个或多个应用,其中,标准中的每个标准与应用的对应属性相关联;由处理电路确定在与所识别的一个或多个应用中的第一应用相关联的每个WAN链路上对第一应用的服务水平协议(SLA)的违反;由处理电路并且响应于确定违反对第一应用施用AMR。
在一个示例中,一种非暂时性计算机可读存储介质,包括指令,当执行指令时,使得处理电路:基于标准来识别针对软件定义广域网(SD-WAN)中的基于应用的多路径路由(AMR)的一个或多个应用,其中,标准中的每个标准与应用的对应属性相关联;确定在与所识别的一个或多个应用中的第一应用相关联的每个WAN链路上对第一应用的服务水平协议(SLA)的违反;以及响应于确定违反,对第一应用施用AMR。
在附图和以下描述中阐述了一个或多个示例的细节。其它特征、目的和优点将从说明书和附图以及权利要求书中明显可见。
附图说明
图1是示出根据本公开的技术的在网络中实现的示例软件定义广域网(SD-WAN)系统的框图。
图2是根据本公开中描述的技术更详细地示出示例SD-WAN边缘设备的框图。
图3是示出了应用的示例优先级排序的表格图。
图4是示出何时应用AMR的示例的表格图。
图5是示出自动识别针对AMR的应用和AMR技术应用的示例的流程图。
图6是示出自动识别针对AMR的应用和AMR技术应用的另一示例的流程图。
在整个文本和附图中,相同的附图标记表示相同的部件。
具体实施方式
图1是示出根据本公开的技术的在网络中实现的示例软件定义广域网(SD-WAN)系统的框图。SD-WAN系统100包括传输网络110A至110N(统称为“传输网络110”),用于连接附连到传输网络的站点并用于在这样附连的站点之间传输网络流量。一个或多个服务提供商可以部署传输网络110,因此,传输网络110可以可替换地被称为“服务提供商网络”。附连到服务提供商网络的站点可以被称为“订户站点”。如本文所使用的,术语“订户”、“客户”和“租户”可以互换地使用。SD-WAN系统100可以被配置为实现本文公开的技术,以识别有资格获得AMR的应用并将AMR应用于这种应用。
服务提供商使用SD-WAN系统100来向其订户或由该订户授权的组织提供SD-WAN服务101,这些订户或组织可以包括例如云提供商、云网络和订户合作伙伴。SD-WAN服务101提供虚拟覆盖网络,该虚拟覆盖网络使得应用感知的、协调的连接能够根据策略在与订户相关联的站点之间递送IP数据包。服务提供商可以提供多个SD-WAN服务。
SD-WAN系统100包括实现SD-WAN服务101的服务协调器102、SD-WAN控制器104和多个SD-WAN边缘设备108A至108C(以下称为“SD-WAN边缘”,并且统称为“SD-WAN边缘108”)。SD-WAN边缘108通过传输网络110彼此连接。服务协调器102、SD-WAN控制器104、SD-WAN边缘108和传输网络110的控制和所有权可以分布在一个或多个服务提供商、订户、企业或其他组织之中。然而,SD-WAN服务提供商使用所有这些组件来提供SD-WAN服务101。SD-WAN服务提供商可以是企业、网络/互联网服务提供商、云提供商或其他实体。
一般而言,服务协调器102管理SD-WAN服务。服务协调器102可以控制、履行、配置、监测使用、保证、分析、保护、修改、重新配置策略以及应用策略于SD-WAN服务。服务协调器102可以基于安全策略、服务质量(QoS)策略、QoE策略和/或基于商业或意图的策略,在传输网络110上建立基于应用的转发。服务协调器102可以包含或表示网络服务协调器(NSO)。服务协调器102知晓SD-WAN系统100的资源,并且可以实现例如:租户站点和服务管理;端到端流量协调、可见性和监控;物理网络功能(PNF)和/或虚拟网络功能(VNF)管理;实现SD-WAN功能的策略和SLA管理(PSLAM);用于管理路由操作的路由管理,包括创建虚拟专用网络、在SD-WAN边缘108上启用路由、以及与路由反射器和路由器对接;遥测服务,其提供由故障监测和执行监测系统使用的接口,用于从遥测代理收集服务检查结果;以及网络激活功能以实现设备供应。上述功能中的至少一些可以由单独的或集成的SD-WAN控制器104的组件来执行。
SD-WAN控制器104可以包含或表示网络服务控制器(NSC)。一般而言,服务协调器102与SD-WAN控制器104交互以管理SD-WAN边缘108,从而通过传输网络110在SD-WAN边缘108之间创建和操作端到端SD-WAN管理服务。SD-WAN控制器104可以提供拓扑和SD-WAN边缘108生命周期管理功能。例如,SD-WAN控制器104为由服务协调器102管理的SD-WAN边缘108提供PNF/VNF管理。例如,SD-WAN控制器104可以配置SD-WAN边缘108的网络配置,配置SD-WAN边缘108上的策略,等等。SD-WAN控制器104可以监测SD-WAN边缘108和WAN链路142A-A至142N-N(统称为“WAN链路142”)的状态和性能数据,并将该信息提供给服务协调器102。换而言之,SD-WAN控制器104可以与SD-WAN边缘108通信,以确定传输网络110上的WAN链路142的操作状态,并获得WAN链路142的QoS/QoE性能度量。如进一步详细描述的,SD-WAN系统100可以基于WAN链路的性能度量来修改流量模式,以更好地满足SD-WAN系统100中SD-WAN服务的SLA需求。
在SD-WAN系统100的各种示例中,服务协调器102和SD-WAN控制器104例如可以被组合以形成具有单独的服务协调和域协调层的单个服务协调平台,其被部署为单独的设备或装置,或者每个服务协调平台可以被分布在部署在一个或多个位置中的一个或多个服务器上执行的一个或多个组件之间。服务协调器102可以是可扩展的和可云部署的平台。例如,SD-WAN系统100中的SD-WAN服务的服务提供商可将服务协调器102部署到提供商站点或公共云、私有云或混合云。这样,在本公开中归属于服务协调器102的操作和功能可以由单独的SD-WAN控制器104执行,反之亦然。在一些示例架构中,服务协调和SD-WAN控制的各方面还可以分别从服务协调器102和SD-WAN控制器104分布在SD-WAN边缘108中。
管理员和应用可以使用北向接口与服务协调器102交互,北向接口例如RESTful接口(基于web的REST API)、命令行接口、门户或图形用户接口、基于web的用户接口、或服务协调器102的其他接口(图1中未示出)。服务协调器102可以经由南向接口与SD-WAN控制器104通信,南向接口可以是SD-WAN控制器的北向接口,例如RESTful接口、命令行接口、图形用户接口、或服务协调器102的其他接口(图1中未示出)。
网络链路140将SD-WAN边缘108连接到传输网络110。网络链路140和传输网络110构成SD-WAN服务101的底层网络,并且在成对的SD-WAN边缘108之间提供底层连接。例如,传输网络110A和传输网络110N在SD-WAN边缘108A和SD-WAN边缘108C之间提供单独的底层连接(图1中未示出)。底层连接可以是公共的或私有的,并且可以是提供网络服务,诸如标签交换路径(LSP)、以太网服务和IP服务、公共互联网服务、或实现覆盖WAN链路的其他服务。底层连接的使用成本可以是统一费率或基于使用的。每个底层连接可以具有带宽限制、性能度量(例如,延迟、丢失、抖动等)。SD-WAN服务101可以使用基于多个不同类型的网络服务的底层连接来部署。在图1的示例中,例如,经由传输网络110A从SD-WAN边缘108A到SD-WAN边缘108C的底层连接可以是用于IP-VPN的LSP,而经由传输网络110N从SD-WAN边缘108A到SD-WAN边缘108C的底层连接可以是互联网上的IPSec隧道。这种多样性对于SD-WAN服务可能是有利的,这是通过促进冗余以及通过提供差异化服务能力来实现针对使用SD-WAN服务的不同流量的成本/性能与应用需求/SLA之间的匹配。例如,SD-WAN边缘108A可以经由互联网引导低成本流量,同时通过LSP来引导用于需要低延迟的应用的流量(例如,IP电话)。底层连接可由SD-WAN服务提供商或SD-WAN服务101订户创建和/或管理,向服务协调器102通知底层连接。服务协调器102获得WAN链路142的链路数据,包括WAN链路142的带宽限制(如果有的话)。服务协调器102可以从SD-WAN控制器104获得链路数据,接收具有链路数据的配置数据,或者从另一网络控制器或从SD-WAN边缘108获得链路数据。WAN链路142被描述和示出为双向的,但是WAN链路142中的每一个可以表示两个单独的WAN链路,每个方向一个。
SD-WAN系统100示出了与SD-WAN服务101提供商的订户相关联并且附接到SD-WAN边缘108的面向订户的接口的多个站点。这些站点可以被称为订户站点,它们组成订户网络,因为SD-WAN服务101互连多个站点以形成单个网络。图1的示例中的SD-WAN系统100包括站点106A至106B,并且可以可选地包括站点106C、中枢112、云114或云服务116中的任何一个。在一些情况下,“订户”和SD-WAN提供商是相同的实体,如企业部署和管理SD-WAN系统100的情况。
站点106A至106C中的每一个指的是订户地点,并且可以表示例如分支办公室、私有云、内部部署分支、企业中枢或云分支。提供商中枢112表示位于服务提供商网络上的存在点(PoP)中的多租户中枢设备。提供商中枢112可以端接用于覆盖网络的覆盖隧道,覆盖隧道可以是各种类型,例如基于通用路由封装的MPLS(MPLSoGRE)和基于IPSec的MPLSoGRE(MPLSoGREoIPsec)以及基于用户数据报协议的MPLS(MPLSoUDP)隧道。提供商中枢112可以是用于SD-WAN服务101的一些示例部署的轴辐式(hub-and-spoke)架构中的中枢。
云114表示公共、私有或混合云基础设施。云114可以是公共云中的虚拟私有云。云服务116是由云服务提供商通过SD-WAN服务101向订户提供的资源或更高阶服务。云服务116可以是例如软件即服务(SaaS)、平台即服务(PaaS)、基础设施即服务(IaaS)、存储即服务或其他类型的云服务。云服务116可以由云114的基础设施提供。
互联网118表示web和/或经由web提供的互联网连接的服务。在该示例中,SD-WAN边缘108B包括互联网出口(Internet breakout)120,并且依据策略将应用流分配至互联网出口120。
SD-WAN边缘108中的每一个包括用于实现SD-WAN服务101的物理网络功能或虚拟网络功能。在各种示例中,SD-WAN边缘108中的每一个可以是例如位于服务提供商数据中心、提供商中枢、客户端或云提供商端中的任一个内的一个或多个VNF或PNF。SD-WAN边缘108中的每一个可以是路由器、诸如防火墙之类的安全设备、网关、WAN加速设备、交换机、云路由器、虚拟网关、云虚拟网关、SD-WAN设备、或实现SD-WAN服务101的各方面的其他设备。
在各种示例中,SD-WAN边缘108中的每一个可以是内部部署分支,其是以轴辐式拓扑或全网格拓扑放置在用户分支站点处的PNF;云分支,其是位于公共云中的订户的虚拟私有云(VPC)(或等效术语)中的VNF;位于服务提供商云中的PNF或VNF作为中枢设备操作以建立与分支站点的隧道(中枢设备是多租户的,即,通过使用配置在多个站点上的虚拟路由和转发实例在多个站点之间共享);位于企业的PNF或VNF,作为企业中枢运行,为普通的分支站点提供额外的中枢式功能(例如,作为动态虚拟专用网络(VPN)创建的分支的锚点,提供企业内部的中央出口选项,托管数据中心部门,导入路由协议路由以创建动态LAN段,并与属于同一租户/订户的其他企业中枢进行网格连接)。SD-WAN边缘中的每一个可位于站点106、中枢112、云114或云服务116中的任何一处。
SD-WAN边缘108在逻辑上位于提供商SD-WAN服务101和订户网络之间的边界处。SD-WAN边缘108具有用于底层连接的网络侧接口和用于与订户网络通信的订户侧接口。如上所述,SD-WAN边缘108可以具有到彼此的多个路径(不同的底层连接)。例如,在轴辐式部署中,SD-WAN边缘108A具有多个路径,每个路径经由传输网络110中的不同的一个,到达中枢112的SD-WAN边缘108C。SD-WAN边缘108的接口可以主要用于用户数据流量的底层连接,但是接口也可以用于管理(操作、维护和管理(OAM))流量,以例如,向服务协调器102发送性能度量,并从服务协调器102接收策略、设备配置和其他配置数据。
服务协调器102可以在SD-WAN边缘108之间提供和建立覆盖隧道以实现SD-WAN服务101拓扑。在图1的示例中,WAN链路142中的任何一个可以部分地使用点对点覆盖隧道来实现,例如,用于虚拟专用网络。覆盖隧道继承底层连接的性能特征。覆盖隧道可以是加密的或未加密的。SD-WAN边缘108可以使用多种封装类型中的任何一种,例如MPLS、MPLSoGRE、IP-in-IP、MPLSoUDP、MPLSoGREoIPSec、IPSec、GRE,来实现覆盖隧道。
SD-WAN边缘108使用WAN链路142来通过SD-WAN服务101向其他SD-WAN边缘108发送应用流量。WAN链路142通常但不一定遍历SD-WAN边缘108之间的不同底层连接。N个WAN链路142A-A至142A-N连接SD-WAN边缘108A和SD-WAN边缘108C。在图1的示例中,WAN链路142A-A至142A-N中的每一个遍历传输网络110中的不同的一个。类似地,N个WAN链路142N-A至142N-N连接SD-WAN边缘108B和SD-WAN边缘108C,每一个经由传输网络110中的不同的一个。在全网格拓扑(未示出)中,附加的WAN链路将连接SD-WAN边缘108A、108B。WAN链路142还可以被称为“覆盖连接”、“虚拟连接”、“隧道虚拟连接”、“SD-WAN链路”或描述用于实现SD-WAN服务的WAN链路的其他术语。
根据本发明的一些方面的技术,SD-WAN边缘108B可基于标准识别软件定义广域网(SD-WAN)中针对AMR的一个或一个以上应用,其中标准中的每一标准与应用的对应属性相关联。在一些示例中,标准具有权重。SD-WAN边缘108B可以确定与一个或多个应用中的第一应用相关联的每个WAN链路上的SLA之一的违反。SD-WAN边缘108B可以响应于确定违反而对第一应用施用AMR。
在一些示例中,SD-WAN边缘108可以被配置为针对AMR识别应用,例如与通过SD-WAN边缘108转发的应用流量相关联的应用。例如,SD-WAN边缘108B可以被配置为识别QoE相对重要的应用(在本文中也被称为相对重要的应用)。在一些示例中,SD-WAN边缘108B可以被配置为存储标准,标准中的每个标准与应用的对应属性相关联,并且在一些示例中,每个标准具有对应的权重。SD-WAN边缘108B可以基于该标准来针对AMR识别一个或多个应用。例如,SD-WAN边缘108B可以将应用的属性与标准进行比较,并且如果应用的一个或多个属性匹配标准中的任何一个,则SD-WAN边缘108B可以将应用识别为针对AMR的候选或者识别为有资格获得AMR。如果应用的属性中没有一个匹配任何标准,则SD-WAN边缘108B可以将应用识别为不是针对AMR的候选或者没有资格获得AMR。以这种方式,SD-WAN边缘108B可以使用标准来自动确定应用是否是针对AMR的候选。
SD-WAN边缘108B可以监测与针对AMR已识别的应用相关联的每个WAN链路,并确定与已识别为有资格获得AMR的第一应用相关联的每个WAN链路上的SLA的违反。SD-WAN边缘108B可以响应于确定违反,对第一应用施用AMR。即使没有为第一应用预先置备AMR,SD-WAN边缘108B也可以这样做。也就是说,在SD-WAN边缘108B的配置数据中,第一应用没有被明确预定义为应用和实施AMR。
在对第一应用施用AMR时,SD-WAN边缘108B可以在SD-WAN边缘108B上复制第一应用的应用数据包,并且可以在两个以上个WAN链路中的每个WAN链路上转发每个应用数据包的副本。例如,SD-WAN边缘108B可以复制第一应用的应用数据包,并且经由WAN链路142N-A和142N-N两者将应用数据包的副本转发到SD-WAN边缘108C。这样,SD-WAN边缘108C可以接收同一应用数据包的多个副本。当SD-WAN边缘108C从SD-WAN边缘108B接收到同一应用数据包的多个副本时,SD-WAN边缘108C可以保留第一到达的应用数据包,并删除或忽略第二到达的应用数据包。以这种方式,应用的QoE可能不会像仅使用单个WAN链路来承载应用流量那样受到影响。
在一些示例中,SD-WAN系统100可能不具有足够的资源来将AMR应用于被识别为有资格获得AMR的应用。因此,在一些示例中,SD-WAN边缘108B可以被配置为确定可用资源是否足以支持针对第一应用的AMR,并且进一步基于可用资源足以支持针对第一应用的AMR来应用AMR。在一些示例中,已经针对AMR被识别多个应用中的每一个都可能经历与该应用相关联的每个WAN链路的SLA违反。这样,在一些示例中,SD-WAN边缘108B可以被配置为对针对AMR所识别的应用优先级排序。例如,如上所述,可以为标准中的每个标准分配权重,该权重可以用于在被识别为有资格获得AMR的应用之间确定针对AMR的优先级。SD-WAN边缘108B可以基于具有应用所满足的对应属性的每个标准的累积权重来确定针对AMR识别的应用中的每个应用的优先级。以这种方式,如果存在足够的资源来对所识别的应用中的一个或多个应用AMR,但是没有足够的资源来对所有所识别的应用施用AMR,则SD-WAN边缘108B可以使用所识别的应用中的每一个的优先级来确定所识别的应用中的哪些应用应当应用AMR。例如,SD-WAN边缘108B可以将AMR应用于较高优先级的应用,并且禁止将AMR应用于较低优先级的应用。作为另一示例,SD-WAN边缘108B可以按照优先级顺序将AMR应用于附加应用,直到资源使用满足阈值为止。在一些示例中,SD-WAN边缘108B可以保留可用资源或网络资源的一部分用于其他目的,例如新应用。在该示例中,SD-WAN边缘108B可以避免将AMR应用于一个或多个较低优先级应用,即使存在足够的资源来将AMR应用于一个或多个较低优先级应用。
服务协调器102可以使用SD-WAN控制器104以包括网格和轴辐式的各种架构拓扑来部署SD-WAN服务101。网格拓扑是其中流量可以直接从任何站点106流到另一个其它站点106的拓扑。在动态网格中,SD-WAN边缘108保存用于实现全网格拓扑的资源。全网格网络中的所有站点都包括在拓扑中,但站点到站点VPN只有在流量超过用户定义的阈值(称为动态VPN阈值)时才会启用。网格拓扑中的站点可包括站点106、云114和/或云服务116。在轴辐式拓扑中,所有流量通过中枢112,更具体地,通过部署在提供商中枢112处的SD-WAN边缘108C。默认地,到互联网的流量也流经提供商中枢112。在轴辐式拓扑中,网络服务(例如,防火墙或其他安全服务)可能被应用于中央中枢112位置处,这允许SD-WAN服务101的所有网络流量使用单个站点的网络服务来处理。SD-WAN服务101可具有组合了全网格和轴辐式的区域中枢拓扑,该拓扑使用一个或多个区域中枢将多个分支连接到更宽网格。
在一些示例中,SD-WAN控制器104包括路由反射器(未示出)以促进SD-WAN服务101中的路由。路由反射器与SD-WAN边缘108形成覆盖边界网关协议(BGP)会话,以接收、插入和反射路由。
SD-WAN边缘108从对应的订户站点接收进入网络流量,并且应用SD-WAN服务101以经由WAN链路142之一将网络流量转发到SD-WAN边缘108中的另一个。SD-WAN边缘108接收WAN链路142上的网络流量,并应用SD-WAN服务101以(例如)经由WAN链路142中的一个将网络转发到SD-WAN边缘108中的另一个(其中SD-WAN边缘是中枢)或转发到目的地订户站点。
为了应用SD-WAN服务101,SD-WAN边缘108根据WAN链路142的路由信息、策略信息、性能数据和服务特性来处理网络流量,这些信息可以至少部分地从底层连接的性能、带宽约束和行为导出。例如,SD-WAN边缘108使用动态路径选择来将网络流量引导到不同的WAN链路142,以尝试满足SLA中定义的并且在SD-WAN边缘108中为SD-WAN服务101配置的QoS/QoE要求,或者绕过故障的WAN链路进行路由。例如,SD-WAN边缘108A可以选择作为低延迟MPLS路径(在该示例中)的WAN链路142A-A用于VoIP流量,而选择作为低成本、宽带互联网连接的WAN链路142A-N用于文件传输/存储流量。SD-WAN边缘108还可以应用流量整形。术语“链路选择”和“路径选择”指的是为应用选择WAN链路的相同操作,并且可互换使用。
SD-WAN边缘108根据来自服务协调器102的策略和配置数据、路由信息以及包括底层连接性能特性的当前网络条件来处理和转发接收到的SD-WAN服务101的网络流量。在一些示例中,服务协调器102可以将SLA参数、路径选择参数和相关配置推送到SD-WAN边缘108,并且SD-WAN边缘108针对SLA违反监测链路,并且可以对针对AMR识别的应用施用AMR,或者将应用切换到WAN链路142中的不同的一个。SD-WAN边缘108由此可以在底层连接上实现SD-WAN服务101的数据平面功能性,在该示例中,包括为了应用的QoE将AMR应用于应用以及将应用切换到不同WAN链路142。如果SD-WAN边缘108中的一个检测到SLA违反,则SD-WAN边缘可以应用或可以不应用AMR,如贯穿本公开所描述的,但是仍然可以向服务协调器102报告并发送描述SLA违反和选定的WAN链路的日志消息。SD-WAN边缘108还可以在给服务协调器102的日志消息中汇总、可选地平均和报告WAN链路142的SLA度量。在一些示例中,服务协调器102可以从SD-WAN边缘108接收SLA度量,确定应用的SLA已被违反,并且执行路径选择以选择WAN链路142中的新的一个用于违反SLA的应用。服务协调器102然后可以配置SD-WAN边缘108中的一个或多个以切换用于该应用的应用流量在新的WAN链路上。SLA度量分析、SLA评估、路径选择和链路切换功能都由SD-WAN系统100执行,但是SD-WAN系统100的不同示例可以具有与刚刚描述的那些示例不同的控制平面功能在服务协调器102和SD-WAN边缘108之间的分布。然而,以下主要针对SD-WAN边缘108来描述该功能。
SD-WAN边缘108可以基于应用流来转发流量。应用流数据包可以使用数据包特性来识别,例如层3和层4(例如,TCP、UDP)报头字段(例如,源/目的地第3层地址、源/目的地端口、协议)、通过深度数据包检测(DPI)、或用于将数据包映射到应用(或更具体地,应用流)的其它流识别技术。应用流可以包括用于多个不同应用或应用会话的数据包,并且单个应用可以被分割在多个应用流之间(例如,用于视频会议应用的分离的视频和音频流)。
SLA可以指定适用的应用流,并且可以包括用于应用流转发的策略。SD-WAN边缘108可以识别应用流,并应用适当的策略来确定如何转发应用流。例如,SD-WAN边缘108可以使用特定于应用的QoE和高级的基于策略的路由(APBR)来识别应用流,并通过将SLA配置文件与其上要发送应用流的路由实例相关联来为应用流指定路径。路由实例可以是虚拟路由和转发实例(VRF),其配置有用于WAN链路142的接口。
QoE旨在通过监测服务等级参数和应用流量的SLA遵从性,以及促进将应用数据放置在SLA遵从的WAN链路142(或可用的最高SLA遵从性的WAN链路)上,或促进针对AMR识别的应用的使用,来改善应用层的用户体验。例如,SD-WAN边缘108和服务协调器102可以针对SLA遵从性监测应用的应用流量。在一些示例中,SD-WAN边缘108(独立地或根据来自服务协调器102的指示)可以将应用流量从不能满足SLA要求的WAN 142链路移动到满足SLA要求的WAN链路142之一,或者当与应用相关联的所有WAN链路都不能满足SLA要求时,为针对AMR识别的应用来应用AMR。
为了监测在其上发送应用流量的链路的SLA遵从性,服务协调器102可以使SD-WAN边缘108沿着WAN链路142发送内嵌探针(在一些情况下,与已经被发送的应用流量一起)。这些内嵌探针(inline probe)可被称为“被动探针(passive probe)”。为了在活动WAN链路未能满足SLA标准的情况下识别用于应用的WAN链路142中最佳可用的一个,服务协调器102监测并收集用于SD-WAN服务101的其他可用WAN链路142的SLA遵从性数据。服务协调器102通过其他WAN链路142发送以检查SLA遵从性的探针可以被称为“主动探针(active probe)”。主动探针基于在某些情况下由订户提供的探针参数来执行。主动探针和被动探针测量用于WAN链路142的端到端分析。通过主动和被动探测收集的数据用于监测网络以查找故障或拥塞的源。如果对于任何应用或多个应用的组(“应用组”)检测到违反,则服务协调器102评估合成探针度量以确定满足SLA的合意的、并且在一些情况下是最好的WAN链路142。如本文所使用的,对应用的引用可以指单个应用或任何应用组。
配置服务协调器102以使SD-WAN系统100为SD-WAN服务101应用QoE可能涉及配置各种配置文件类型的多个配置文件,使用户能够为具有由SD-WAN服务101传输的流量的各种应用/应用组参数化QoE。配置文件通常包括人类可读的文本,该文本为功能定义一个或多个参数,或将配置文件与其他配置文件关联以对更高等级的功能进行参数化。在各种示例中,服务协调器102可以提供各种配置方案,用于SD-WAN服务101的QoE参数化。
订户或网络管理员可以与服务协调器102交互,以便为应用创建SLA配置文件,在此被称为“应用SLA配置文件”或简单的“SLA配置文件”。SLA配置文件可以包括SLA配置数据,例如流量类型配置文件、是否启用本地出口(local breakout)的指示、路径偏好(例如,WAN链路142的优选WAN链路或WAN链路类型(例如,MPLS、互联网等)的指示)、当活动WAN链路具有SLA配置文件的SLA违反时是否允许故障切换的指示、故障切换的标准(例如,违反任何SLA参数或违反触发故障切换所需的所有SLA参数)。在一些示例中,网络管理员可以与服务协调器和/或SD-WAN边缘108交互,以便为选定的应用置备AMR,或者定制SD-WAN边缘108所使用的标准和/或权重,从而针对AMR识别应用并对其优先级排序。
SLA参数可以被包括在SLA度量配置文件中,该SLA度量配置文件与SLA配置文件相关联或者是SLA配置文件的一部分。服务协调器102和SD-WAN边缘108可以使用SLA参数来评估WAN链路142的SLA。SLA参数可以包括诸如吞吐量、延迟、抖动、抖动类型、数据包丢失、往返延迟或流量的其它性能度量(其与承载这种流量的WAN链路的性能度量相关并对应)之类的参数。吞吐量可以是指在一段时间内由站点上游发送或下游接收的数据量。延迟是指数据包从一个指定点传输到另一个指定点所花费的时间。数据包丢失可以被指定为网络为了管理拥塞所丢弃的数据包的百分比。抖动是数据包的最大和最小往返时间之间的差异。
SLA配置文件还可以指定SLA采样参数和速率限制参数。采样参数可以包括会话采样百分比、SLA违反计数、采样周期和切换冷却周期。会话采样百分比可用于指定服务协调器应为其运行被动探针的会话的匹配百分比。SLA违反计数被用于指定SLA违反的数量,在该数量之后,服务协调器应当切换到WAN链路142中的不同的一个,或者在确定是否对给定应用施用AMR时认为SLA被违反。采样周期可用于指定计数SLA违反的采样周期。切换冷却时段可以用于指定等待时段,在该等待时段之后,如果活动链路在故障之后恢复在线,则WAN链路切换应当发生,或者在该等待时段之后,对于给定应用应当停止AMR。该参数有助于防止流量在活动和备用WAN链路142之间的频繁切换,或者防止在AMR模式和正常模式之间的频繁切换。
速率限制参数可以包括最大上行速率、最大上行突发大小、最大下行速率、最大下行突发大小和丢失优先级。最大上行速率可用于指定与SLA配置文件相关联的所有应用的最大上行速率。最大上行突发大小可用于指定与SLA配置文件相关联的所有应用的最大上行突发大小。最大下行速率可用于指定与SLA配置文件相关联的所有应用的最大下行速率。最大下行突发大小可用于指定与SLA配置文件相关联的所有应用的最大下行突发大小。丢失优先级可用于选择丢失优先级,当发生网络拥塞时,基于该丢失优先级可丢弃或保留数据包。数据包被网络丢弃的概率基于丢失优先级值而更高或更低。
可以使用SLA规则来指定应用SLA配置文件,该SLA规则包括测量SLA和识别是否发生了任何SLA违反所需的所有信息。SLA规则可以包含完整的探针配置文件、应用配置文件的时间段、优选的SLA配置以及上述的其他SLA参数(例如,SLA样本参数、速率限制参数、度量配置文件)。SLA规则与应用或应用组相关联,并将成为其SLA配置文件。换而言之,用于应用的SLA配置文件可以是特定的SLA规则(例如,“SLA3”),如在服务协调器102中所配置的。在一些情况下,SLA规则可以通过与APBR规则相关联而以这种方式相关联,该APBR规则与所识别的应用或应用组相匹配。如上所述,在一些示例中,服务协调器102可以将SLA参数、路径选择参数、路由信息、路由和接口数据以及相关配置推送到SD-WAN边缘108,并且SD-WAN边缘108针对SLA违反来监测链路,并且可以对针对AMR识别的应用施用AMR,或者将应用切换到WAN链路142中的一个不同WAN链路。
当链路的性能低于SLA指定的可接受级别时,就会发生SLA违反。为了尝试满足SLA,SD-WAN系统100可以针对故障或拥堵源来监测网络。如果SD-WAN系统100确定SLA违反已经发生,则SD-WAN系统100可以确定替换路径以选择满足SLA的最佳WAN链路142。类似地,SD-WAN边缘108可以针对SLA违反来进行监测。如果SD-WAN边缘108中的一个确定在与针对AMR识别的应用相关联的所有WAN链路上已经发生SLA违背(violation)或违反(breach),则SD-WAN边缘可以将AMR应用于该应用。
覆盖路径包括用于发送应用的应用流量的WAN链路142。SD-WAN系统100可以基于WAN链路142的SLA度量将应用分配给特定WAN链路142。目的地组是终止于目的地的多个覆盖路径的组。
通常,服务协调器102配置SD-WAN边缘108以认出针对应用的应用流量,并且服务协调器102通过将SLA配置文件与路由实例相关联来指定针对特定流量的路径,其中,SD-WAN边缘108通过该路由实例发送应用流量以满足APBR配置文件的规则。
APBR通过管理SD-WAN边缘108的服务协调器102实现基于应用的路由。APBR配置文件指定匹配的流量类型,例如,通过列出一个或多个应用或应用组。APBR配置文件可以包括多个APBR规则,每个APBR规则指定一个或多个应用或应用组。如果网络流量与指定的应用匹配,则规则被视为匹配。SLA规则可以与APBR规则相关联,以指定应该如何针对QoE处理匹配流量。APBR规则还可以指定SD-WAN边缘108用来路由与APBR规则匹配的流量的路由实例。路由实例可以具有用于一个或多个WAN链路142的接口。服务协调器102用APBR配置文件(或从其导出的配置数据)配置SD-WAN边缘108,以使SD-WAN边缘108根据APBR配置文件使用APBR来实现SD-WAN服务101。
在一些示例中,SD-WAN边缘108(例如,SD-WAN边缘108A)处理在接口上接收到的数据包以识别针对该数据包的应用。SD-WAN边缘108A可以应用APBR配置文件以尝试将应用与其中的APBR规则相匹配。如果没有找到匹配的APBR规则,则SD-WAN边缘108A正常地转发数据包。然而,如果找到匹配的APBR规则,则SD-WAN边缘108A使用APBR规则中指定的路由实例来路由数据包。
路由实例具有与路由实例用来发送和接收数据的一个或多个链路相关联的接口。在SD-WAN边缘108中配置的并且可以与APBR规则相关联的路由实例具有用于WAN链路142的接口,以发送和接收应用流量。这些接口可以是用于底层连接的接口。
SD-WAN边缘108可以基于使用SLA规则122确定的链路偏好来使用不同的链路路由流量。在一些情况下,服务协调器102通过基于延迟、往返时间、抖动、数据包丢失和/或其他因素计算分数来确定WAN链路142中的WAN链路上的应用性能。基于WAN链路142中的一个或多个的相应分数,如果当前链路的性能低于SLA规则122之一所指定的可接受水平,则服务协调器102和SD-WAN边缘108可以将应用流量转移到SD-WAN服务101的替代WAN链路。在某些情况下,新的WAN链路是根据分数所确定的最能满足SLA要求的WAN链路。如已经提到的,服务协调器102可以使用探针来测量和监测WAN链路142上的应用性能。
在一些示例中,多个WAN链路142可以满足应用的SLA要求。SD-WAN系统100可以从这多个WAN链路142中选择与用户配置的链路偏好相匹配的WAN链路。该偏好可以至少部分地基于WAN链路142的链路类型和链路优先级。例如,对于SD-WAN边缘108A,SD-WAN系统100可以选择与优选链路类型(例如,MPLS)相匹配的到达SD-WAN边缘108C的WAN链路142A-A至142A-N之一。如果存在多个具有该优选的这种WAN链路142,则选择其中具有最高优先级的WAN链路。如果没有被配置优先级或链路类型偏好,则选择随机路径或默认路径。如果没有满足SLA要求的WAN链路142可用,则在配置了严格亲和性的情况下,选择根据最高SLA分数和链路类型偏好的最佳可用WAN链路。如果满足SLA要求的多个WAN链路142可用,则选择具有最高优先级的一个。WAN链路142中的一个或多个可以被配置有优先级,该优先级可以在配置中被表达为表示优先级的整数值。服务协调器102优选较高优先级的WAN链路142而不是较低优先级的WAN链路142。
在服务协调器102中,用户可以配置链路类型(例如,IP或MPLS)并为应用的WAN链路142设置优先级。例如,用户可以定义具有WAN链路142的APBR配置文件,并且利用链路类型/优先级来配置WAN链路142。
通过将指定应用或应用组的APBR规则与APBR配置文件相关联,服务协调器102和SD-WAN边缘108在应用或应用组级别实施链路偏好以实现SD-WAN服务101。用户还可以在SLA规则中指定链路类型偏好,并且在某些情况下,指定链路类型亲和性。SLA规则附加到APBR规则,以便将偏好与APBR规则中指定的应用相关联。
基于APBR配置文件,SD-WAN边缘108将网络流量匹配到在相关联的APBR规则中指定的应用和应用组,并且可以例如,将流量转发到静态路由和也与APBR配置文件相关联的APBR规则的路由实例中指定的下跳地址。SD-WAN系统100可以基于配置的链路类型和WAN链路142的偏好,以及在一些情况下,SLA规则中使用的指定链路类型亲和性(如上所述),将应用流量分配给特定路径/链路。
对于优选的链路类型,链路类型亲和性可以是严格的或宽松的(可选地为默认设置)。对于严格亲和性,SD-WAN系统100选择总是优选链路类型的WAN链路。对于松散亲和性(loose affinity),如果不存在满足SLA并且属于优选链路类型的WAN链路142,则服务协调器102选择不具有优选链路类型但在其他方面满足SLA的链路。
服务协调器102可实现SD-WAN服务101的SD-WAN策略意图,以促进更好的WAN链路142利用并有效地分发应用流量。订户可以设置包括一个或多个SD-WAN策略意图的高级SD-WAN策略。每个SD-WAN策略意图可能具有以下参数:源、目的地和SLA配置文件。源是从站点、站点组、部门或其组合的列表中选择的一个或多个源端点。SD-WAN策略意图应用于选定的源端点。目的地是从应用和预定义或自定义应用组的列表中选择的目的地端点。SD-WAN策略意图应用于所选目的地端点。应用可以使用例如网络信息(例如,源或目的地前缀)、通过协议或通过应用名称来定义。可以如上所述定义SLA配置文件,该SLA配置文件具有要应用于为其设置SLA配置文件的策略意图的SLA参数。
SLA规则122中的SLA规则指定一个或多个应用。如本文所使用的,应用和用于应用的SLA参数之间的这种或其它关联意味着该应用具有SLA(或SLA规则)。如果违背了SLA参数,则违背了应用的SLA/SLA规则。
SD-WAN系统100可以使用多种方式确定WAN链路142中的一个(例如,WAN链路142A-A)的可用带宽。例如,SD-WAN系统100可以获得指示WAN链路142A-A的可用带宽或总带宽的链路数据。SD-WAN控制器104可以向服务控制器102提供链路数据,该链路数据可以部分地从SD-WAN边缘108获得。链路数据可以是用于WAN链路142A-A的底层连接的配置数据。SD-WAN系统100可以对放置在WAN链路142A-A上的应用所需的带宽求和,并且计算WAN链路142A-A的总带宽与放置在WAN链路142A-A上的应用所需的带宽之和之间的差作为可用带宽。
通过基于标准来针对AMR识别应用,SD-WAN边缘108B可以使网络管理员不必确定为其置备AMR的应用,并且不必手动地置备该应用。这可以减少过程中人为错误的可能性,并且更快地实现AMR,从而提供更好的QoE,特别是对于相对更重要的应用或者满足由管理员针对自动AMR优先级排序的特定应用配置文件的那些应用。应用配置文件可以由管理员使用标准来定义,并且在一些情况下由标准结合标准的权重来定义。
尽管主要描述为由SD-WAN边缘108B执行,但是本文描述的用于自动识别有资格获得AMR的应用的技术可由其他SD-WAN边缘108以及部分地由SD-WAN控制器104执行。例如,SD-WAN控制器104可以接收指示WAN链路142的条件和SD-WAN服务101正在处理的应用的属性的遥测数据,确定应用有资格获得AMR,并且引导SD-WAN边缘108中的一个或多个来应用AMR。
图2是根据本公开中描述的技术更详细地示出示例SD-WAN边缘设备的框图。SD-WAN边缘设备308(“SD-WAN边缘308”)可以表示图1的SD-WAN边缘108中的任一个。SD-WAN边缘308是计算设备,并且可以表示PNF或VNF。SD-WAN边缘308可以包括一个或多个真实或虚拟服务器,其被配置为执行一个或多个VNF以执行SD-WAN边缘的操作。
在该示例中,SD-WAN边缘308包括总线342,用于耦接硬件环境的硬件组件。总线342耦接网络接口卡(NIC)330、存储盘346和一个或多个微处理器310(以下称为“微处理器310”)。在一些情况下,前端总线可以耦接微处理器310和存储器设备344。在一些示例中,总线342可以耦接存储器设备344、微处理器310和NIC 330。总线342可以表示外围组件接口(PCI)快速(PCIe)总线。在一些示例中,直接存储器存取(DMA)控制器可以控制耦接到总线342的组件之间的DMA传输。在一些实例中,耦接到总线342的组件控制耦接到总线342的组件之间的DMA传送。
微处理器310可以包括一个或多个处理器,每个处理器包括独立的执行单元以执行符合指令集架构的指令,这些指令被存储到存储介质。执行单元可以被实现为单独的集成电路(IC)或者可以被组合在一个或多个多核处理器(或“众核(many-core)”处理器)内,每个处理器使用单个IC(即,芯片多处理器)来实现。
盘346表示计算机可读存储介质,其包括以用于存储诸如处理器可读指令、数据结构、程序模块或其它数据等信息的任何方法或技术实现的易失性和/或非易失性、可移动和/或不可移动介质。计算机可读存储介质包括但不限于随机存取存储器(RAM)、只读存储器(ROM)、EEPROM、闪存、CD-ROM、数字多功能盘(DVD)或其它光学存储、磁带盒、磁带、盘存储或其它磁存储设备、或可用于存储所需信息并可由微处理器310访问的任何其它介质。
主存储器344包括一个或多个计算机可读存储介质,其可以包括随机存取存储器(RAM),诸如各种形式的动态RAM(DRAM),例如,DDR2/DDR3 SDRAM、或静态RAM(SRAM)、闪存、或可用于携带或存储指令或数据结构形式的所需程序代码和程序数据并且可由计算机访问的任何其它形式的固定或可移动存储介质。主存储器344提供由可寻址存储器地点组成的物理地址空间。
网络接口卡(NIC)330包括一个或多个接口332,接口被配置为使用底层物理网络的链路来交换数据包。接口332可以包括具有一个或多个网络端口的端口接口卡。NIC 330还可以包括卡上存储器,例如,存储数据包数据。NIC 330和耦接到总线342的其它设备之间的直接存储器访问传输可以从NIC存储器读取/向NIC存储器写入。接口332可以是用于SD-WAN边缘308与一个或多个其他SD-WAN边缘之间的为SD-WAN模块306配置的WAN链路的底层连接的接口。
存储器344、NIC 330、存储盘346和微处理器310可以为软件栈提供操作环境,该软件栈包括在内核空间中执行的操作系统内核314。内核314可以表示,例如Linux、BerkeleySoftware Distribution(BSD)、其它Unix变体内核或可从微软公司(Microsoft Corp)获得的Windows服务器操作系统内核。在一些情况下,操作系统可以执行管理程序和由管理程序管理的一个或多个虚拟机。示例管理程序包括用于Linux内核的基于内核的虚拟机(KVM)、VMware提供的Xen、ESXi和Microsoft提供的Windows Hyper-V,以及其他开源和专有管理程序。术语管理程序可以包括虚拟机管理器(VMM)。包括内核314的操作系统为用户空间345中的一个或多个处理提供执行环境。内核314包括使用NIC 330的物理驱动器325。
硬件环境和内核314为SD-WAN边缘308模块提供用户空间345操作环境,包括路由处理328、配置接口374和SD-WAN模块306。配置接口374使得SD-WAN控制器104或运营商能够配置SD-WAN边缘308。配置接口374可以提供NETCONF接口、简单网络管理协议(SNMP)、命令行接口、RESTful接口、远程过程调用、或其它接口,使得远程设备可以通过其利用存储到配置数据库375的配置信息来配置SD-WAN边缘308。配置信息可以包括,例如,部分地定义用于SD-WAN模块306的WAN链路切换模块350的操作的SLA规则322、路由以及配置有用于WAN链路的接口的虚拟路由和转发实例(VRF)、指定链路类型(IP、MPLS、移动等)、优先级、最大带宽、封装信息、覆盖隧道类型和/或其它链路特性的接口配置。
路由处理328执行路由协议以与其他网络设备交换路由信息(例如,路由),并使用路由表316中收集的路由信息来选择到每个目的地的活动路由,该活动路由是被SD-WAN边缘308用于将传入数据包转发到目的地的路由。为了经由SD-WAN边缘308将流量从源主机路由到目的地主机,SD-WAN边缘308获知数据包要采用的路径。这些活动路由被插入到SD-WAN边缘308的转发表318中,并且被转发平面硬件用于数据包转发。例如,路由处理328可以以基数或其他查找树的形式生成转发表318,以将数据包信息(例如,具有目的地信息和/或标签栈的报头信息)映射到下一跳并最终映射到接口332以供输出。在一些示例中,SD-WAN边缘308可以具有物理上分叉的控制平面和数据平面,其中交换控制卡管理一个或多个数据包转发线卡,每个数据包转发线卡具有一个或多个高速数据包处理器。
SD-WAN边缘308执行SD-WAN模块306以实现SD-WAN服务,诸如图1的SD-WAN服务101。SD-WAN模块306使SD-WAN边缘308基于应用流来转发流量。SD-WAN模块306使用数据包特性来识别不同应用流数据包的数据包。一旦使用初始数据包识别了应用,则用于识别应用会话的流量的信息可以存储在流表中以用于更快的处理。WAN链路切换模块350根据路由信息、策略信息、性能数据和用于SD-WAN模块306所实现的SD-WAN服务的WAN链路的服务特性来选择WAN链路以分配应用。SD-WAN模块306可以利用针对应用所选的WAN链路、流表数据或用于将应用流量映射到所选WAN链路的其他数据来对转发表318进行编程。
SD-WAN边缘308执行AMR模块320。AMR模块320可以包括SLA规则322、标准(C)323和AMR优先级(AP)324。
根据本发明的技术,AMR模块320可配置以在SD-WAN系统100(图1)基于标准323针对AMR识别一个或多个应用,其中标准323中的每一标准与应用的对应属性相关联,每一标准具有与其相关联的权重。AMR模块320可以被配置为确定与一个或多个应用中的第一应用相关联的每个WAN链路上的SLA之一的违反,并且响应于确定该违反,对第一应用施用AMR。因此,诸如使用AMR模块320的SD-WAN边缘308之类的网络设备可以自动地识别应当应用AMR的应用,并且将AMR应用于该应用。
AMR模块320可以基于应用属性或特性以及/或者网络中的现场流量模式,针对AMR维护优先化应用的动态列表、表或其他数据结构(例如,在AMR优先级324的优先级中)。AMR模块320可以连续地分析网络中的流量,并且例如基于标准323来构建期望或需要AMR的应用的列表。一旦AMR模块320针对QoE相对重要的任何应用(例如,在AMR优先级324中的AMR应用列表上的应用)检测到SLA违反,AMR模块320可以将AMR应用于该应用,从而确保QoE或者对于那些QoE相对重要的应用增强QoE。在一些示例中,AMR模块320还可以连续地监测这些识别出的应用的SLA以进行进一步的补救,例如当在与该应用相关联的至少一个链路上再次满足SLA时禁用AMR。
AMR模块320可以动态地识别相对重要的应用,并且当在与该应用相关联的所有现有WAN链路上违背了相关联的SLA时,将AMR应用于该应用。当一个或多个WAN链路恢复时AMR模块320还可以反转该动作(例如,恢复应用的先前操作)。例如,AMR模块320可以基于标准323来识别相对重要的应用并区分其优先级,并且将这些优先级存储在AMR优先级324中。AMR模块320可以监测SLA 322,并且对于在所有相关联的WAN链路上违背SLA的应用施用AMR。例如,AMR模块320可以监测所有WAN链路,并且确认是否有足够的资源(CPU和带宽)可用于所识别的应用。在一些示例中,AMR模块320可以进一步基于应用的优先级来对应用施用AMR。
例如,AMR模块320可以基于标准323来识别相对重要的应用,并且在一些示例中,对相对重要的应用进行优先级排序。在一些示例中,标准323可以包括由SD-WAN边缘308的制造商编程的预定或默认标准。例如,预定或默认标准可以指定应用的属性或特性,该应用可以是具有共同属性或特性的一组应用。在一些示例中,标准323中可以存储有多个默认标准。例如,对于不同的部署环境可以有不同的标准集合,诸如一个用于在银行网络中的部署,一个用于在办公室网络中的部署,等等。在一些示例中,标准集合中的一些或全部标准可以与另一标准集合中的标准不同。对于多于一个标准集合中的标准,该标准可以有相关的权重,该权重在不同的标准集合中是不同的,或者在不同的标准集合中是相同的。例如,在标准集合中,用于银行的权重可以是10,而在另一标准集合中,用于银行的权重可以是2。
下面的表1是标准323的默认标准的示例,AMR模块320可以使用该标准323来针对AMR的可能应用识别应用。在该示例中,为每个标准分配1至10的标度内的权重,其中10对于使用AMR(通常是期望较高QoE的应用)是最重要的,然而,可以使用任何标度。
表1-针对AMR识别应用的示例默认标准
应用标准 | 权重(标度1-10,10为首选) |
基于RTP | 10 |
办公应用 | 9 |
数据包大小<256字节的应用 | 8 |
在表1的示例中,AMR模块320可以向基于RTP的应用分配权重10、办公相关应用(例如,文字处理器、电子表格应用、演示应用等)权重为9,具有小数据包大小(<256字节)的应用的权重为8。虽然关于表1描述了某些标准和某些权重,但这些是作为实例阐述的,且可根据本发明的技术使用任何标准或权重。
在一些示例中,网络管理员可以选择修改用于针对AMR识别应用的默认标准和/或标准323的相关联的权重,或者在没有默认标准的情况下,网络管理员可以基于网络管理员自己的使用情况来创建标准和/或权重。在一些示例中,如果网络管理员修改默认标准或权重,则这可以覆盖默认标准或权重。例如,AMR模块320可以用修改后的标准或权重覆写默认标准或标准323中的权重。在其他示例中,修改后的标准或权重可以存储为单独的标准集合,可以在后续被激活,并且可以停用原始默认标准,但是保持存储在标准323中。表2是由网络管理员创建或修改的自定义标准的示例。
表2-用于针对AMR识别应用的自定义标准示例
在表2的示例中,AMR模块320可以为基于RTP的应用分配权重4,为办公相关应用分配权重5,为具有小数据包大小(例如,<256字节)的应用分配权重8,为银行和/或交易(例如,交易股票、债券或其他工具)应用分配权重9,为流媒体应用分配权重8,以及为具有差分服务代码点(DSCP)标记的应用分配权重10。虽然关于表2描述了某些标准和某些权重,但是这些是作为示例来描述的,并且可以使用任何标准或权重。
例如,AMR模块320可以监测在SD-WAN系统100(图1)中具有流量的不同应用,并且将不同应用与标准323的每个标准进行比较。在一些示例中,当发生SLA违背时,可能没有足够的网络资源来将AMR应用于每个相对重要的应用。为了解决该示例,AMR模块320可以为针对AMR识别的每个应用,基于针对该应用所满足的每个特定标准给出的权重来确定该应用的优先级。AMR模块320可以将相应的优先级存储在AMR优先级324中。
图3是示出了基于标准对应用优先级排序的示例的表格图。在图3的示例中,在顶行中描绘了标准,其中标准中的每个标准具有在第二行中示出的相关联的权重。例如,RTP是具有权重4的标准。在左列中列出了各种应用,诸如第一视频会议应用。表中的“X”表示应用符合指定标准。例如,第一视频会议应用满足以下标准:RTP、办公相关、数据包大小小于256字节和流媒体。表中没有“X”表示应用不符合标准。例如,第一视频会议应用不满足银行/交易或DSCP标记标准。还示出了对于每个应用所满足每个标准的每个权重的总和。例如,第一视频会议应用的权重总和是25。AMR模块320(图2)可以确定具有与每个针对AMR识别的应用的相对应的属性的每个标准的累积权重。AMR模块320可以使用每个应用的累积权重来确定每个应用的优先级。在图3的示例中,第一视频会议应用具有最高权重(25),并且因此被分配最高优先级(示出为1)。
AMR模块320可以确定所满足的标准的权重的总和,以确定所识别的应用中的每一个的优先级。例如,如图3所示,在SD-WAN系统100上具有应用流量的应用可以包括第一视频会议应用、第二视频会议、电子邮件应用、股票应用、银行应用、教育应用、视频应用和FTP应用。第一视频会议应用满足RTP应用、办公应用、具有小于256字节的数据包、以及流媒体应用的标准。AMR模块320可以将与第一视频会议应用所满足的标准中的每一个相关联的权重相加,从而得到总权重25。在该示例中,权重25是最高权重,这使得AMR模块320将最高优先级(优先级1)分配给第一视频会议应用。AMR模块320可以以类似的方式将与每个所识别的应用相关联的权重相加。这样,在该示例中,第二视频会议应用、股票应用和银行应用各自具有总权重17,从而使得这些应用为优先级2。本例中的电子邮件和教育应用的总权重为5,使得这些应用为优先级3。在此示例中,视频应用和FTP应用不满足任何标准(显示为不匹配)。这样,AMR模块320可以将视频应用和FTP应用识别为不需要AMR或者不值得消耗与应用AMR相关联的资源。例如,AMR模块320可以向该应用分配优先级0,以指示即使在所有相关联的WAN链路上违反了针对这些应用中的任一个的相关联SLA,也不应当考虑对这些应用施用AMR。这样,即使与视频应用或FTP应用相关联的所有WAN链路都发生故障,AMR模块320也可以不将AMR应用于该应用。在一些示例中,AMR模块320可以在AMR优先级324中存储指示每个应用的优先级的表、列表或其他数据结构或条目。
AMR模块320可以针对任何SLA违反或违背主动地监测具有在AMR优先级324中分配的优先级的应用。在一些示例中,AMR模块320可以不针对任何被分配优先级0的应用监控任何SLA违反或违背。在其他示例中,AMR模块320也可以针对被分配优先级0的应用监控任何SLA违反或违背。
SLA度量可以包括抖动、延迟、数据包丢失、带宽或其他SLA度量,并且可以针对每个应用定制。当针对AMR优先级324中所识别的应用在可用WAN链路上不满足SLA时,AMR模块320可以检测到该情况,并且针对该应用施用AMR。在一些示例中,AMR模块320可以确定诸如中央处理单元(CPU)和链路带宽之类的可用资源是否足够,并且仅当可用资源足够时才将AMR应用于该应用。例如,一旦AMR模块320确定对于特定应用的所有相关联的链路都发生了SLA违反,AMR模块320就可以在对该应用施用AMR之前执行资源检查。作为资源检查的一部分,可以定义和评估诸如CPU和链路带宽的系统参数,以避免SD-WAN系统100中的拥塞和过载状况。在一些示例中,AMR模块320可以在确定可用资源时将修改量应用于可用资源,诸如链路带宽的90%、80%或70%,或者使用预定阈值,以便保留一些资源用于其他目的,例如用于来自新应用的应用流量。
在一些示例中,如果对于多于一个的应用发生SLA违反,则AMR模块320可以进一步基于分配给应用的优先级来确定是否应用AMR。例如,如果第一视频会议应用和第二视频会议应用两者都在所有WAN链路上经历SLA违反,并且仅存在足够的资源用于对两个应用之一施用AMR,则AMR模块320可以将AMR应用于第一视频会议应用,而不应用于第二视频会议应用,因为第一视频会议应用具有比第二视频会议应用更高的优先级。
图4是示出应用AMR时的示例的表格图。在图4的示例中,第一视频会议应用(具有优先级1—最高优先级)在WAN链路1和WAN链路2上都经历SLA违背,如WAN链路1和WAN链路2列中的“X”所示。这样,AMR模块320可以对第一视频会议应用施用AMR。针对AMR识别的其它应用可能仅在WAN链路1或WAN链路2上经历SLA违背,如相应列中的“X”所示。因此,AMR模块320可以不对那些应用施用AMR,即使那些应用已经被识别为有资格获得AMR。在该示例中,视频应用和FTP应用没有资格获得AMR,因为它们不满足任何标准(指示为不匹配)。
AMR模块320可以监测和确定SLA违背,进行资源检查,并且基于所确定的SLA违背以及有足够的资源可用于支持第一视频会议应用的AMR,来对第一视频会议应用施用AMR。AMR模块320可以继续监测SLA状态,并且当对于第一视频会议应用再次满足其SLA时,针对该应用禁用AMR。以这种方式,AMR模块320可以释放支持第一视频会议应用的AMR的网络资源,不再需要这些资源以满足第一视频会议应用的SLA。
图5是示出针对AMR自动识别应用和应用AMR技术的示例的流程图。网络设备制造商、网络管理员或AMR模块320可以定义用于识别重要应用的标准(400)。例如,网络设备制造商、网络管理员或AMR模块320可以定义标准,并且可以向每个标准分配权重。标准中的每个标准可以与应用的对应属性相关联,例如,RTP应用、办公相关应用、具有小数据包大小的应用、银行/交易应用、流媒体应用、具有DSCP标记的应用等。在一些示例中,标准是预定的。在一些示例中,标准和/或权重是动态的,并且AMR模块320可以自主地(即,在没有来自网络运营商、客户或其他人员代理的输入的情况下)基于在给定时间正经历的应用流量的类型、网络资源、网络条件、部署拓扑、部署环境或网络运营商或SD-WAN服务客户的业务类型等来修改标准和/或权重。例如,AMR模块320可以向标准添加新标准或者从标准中移除标准。例如,对于银行网络中的部署,AMR模块320可以自动移除对于银行业务的操作不太重要的一个或多个标准,或者如果银行标准还没有被包括在默认或预定标准中,则添加银行标准。在一些示例中,并非修改标准或者除了修改标准之外,AMR模块320可以修改与标准相关联的权重中的一个或多个。例如,AMR模块320可以增加或减小与标准相关联的权重,或者为新标准添权重重。例如,对于银行网络中的部署,AMR模块320可以增加与银行标准相关联的权重和/或与小数据包大小相关联的权重。在一些示例中,上述操作中的至少一部分可由SD-WAN控制器执行,SD-WAN控制器然后用标准和/或标准323的权重来配置SD-WAN模块306。
AMR模块320可以确定对于一个应用是否满足任何标准(402)。例如,AMR模块320可以将标准与应用的属性进行比较,以确定对于该应用是否满足其中的任何标准。如果对于该应用没有一个标准被满足(来自框402的“否”路径),则AMR模块320可以针对AMR忽略该应用(406)。例如,AMR模块320可以确定该应用不需要AMR,或者将AMR应用于该应用的成本超过了将AMR应用于该特定应用的益处。在一些示例中,AMR模块320可以给予该应用优先级0。
如果对于该应用满足任何标准(来自框402的“是”路径),则AMR模块320可以对该应用进行优先级排序(404)。例如,AMR模块320可以将与应用所满足的标准中的每个标准相关联的权重加在一起,以得到总权重。AMR模块320可以将该应用的总权重与其他应用的总权重进行比较,以确定该应用的优先级。例如,如果与当前应用相关联的总权重是所有应用中最高的,则AMR模块320可以向当前应用分配最高优先级,例如优先级1。如果与当前应用相关联的总权重是所有应用中的最低的,则AMR模块320可以向当前应用分配被识别的有资格获得AMR的那些应用中的最低优先级。
AMR模块320可以监测应用和/或与之相关的WAN链路,以监测与应用相关的SLA的任何违背(408)。例如,AMR模块320可以监测与应用关联的WAN链路的性能(例如,带宽、抖动、延迟等)。
AMR模块320可以确定是否违背了SLA以及资源是否足以将AMR应用于应用(410)。例如,AMR模块320可以将性能与SLA规则322进行比较,以确定是否违背了SLA。AMR模块320可以确定资源可用性,并且将资源可用性与用于将AMR应用于应用的预期资源消耗进行比较,以确定资源是否足够。在一些示例中,当确定资源是否足以将AMR应用于应用时,AMR模块320可以将修改量应用于可用资源的量,诸如百分比,以便为其他目的预留预定量的网络资源,例如处理来自新应用的流量。
如果AMR模块320确定违背了SLA并且存在足够的资源来将AMR应用于该应用(来自框410的“是”路径),则AMR模块320可以将AMR应用于该应用(412)。例如,AMR模块320可以复制应用的数据包,并且可以在两个以上WAN链路(例如图1的链路142N-A和链路142N-N)中的每个WAN链路上向接收网络设备转发每个应用数据包的副本。如果AMR模块320确定SLA未被违背、资源不充足、或者SLA未被违背且资源不充足,则AMR模块320可以不应用AMR并且返回到监测应用和/或WAN链路(408)。在一些示例中,如果SLA被违背,资源不充足,并且该应用具有比已经对其应用AMR的另一应用更高的优先级,则AMR模块320可以停止将AMR应用于较低优先级应用,并且如果资源足以将AMR应用于较高优先级应用,则AMR模块320可以将AMR应用于较高优先级应用。
图6是示出针对AMR自动识别应用和应用AMR技术的另一示例的流程图。例如,AMR模块320(图2)可以基于标准来针对AMR识别SD-WAN中的一个或多个应用,其中,标准中的每个标准与应用的对应属性相关联(500)。例如,AMR模块320可以将一个或多个应用与标准323(图2)进行比较,以针对可能应用AMR来识别一个或多个应用。例如,AMR模块320可以依据应用具有与至少一个标准相匹配的至少一个属性,将该应用识别为有资格获得AMR的应用。AMR模块320可以基于应用不具有与标准中的至少一个匹配的至少一个属性,将该应用识别为没有资格获得AMR的应用。
AMR模块320可以确定在与所识别的一个或多个应用中的第一应用相关联的每个WAN链路上的第一应用的SLA违反(502)。例如,AMR模块320可以确定与第一应用相关联的每个WAN链路的性能(例如,带宽、延迟、抖动或其它性能度量)低于与第一应用相关联的SLA的要求。在一些示例中,每个WAN链路可能以相同的方式违反SLA,例如每个WAN链路可能由于低带宽而违反SLA。在一些示例中,每个WAN链路可以以不同的方式违反SLA,例如,一个WAN链路可能由于低带宽而违反SLA,而另一个WAN链路可能由于高延迟而违反SLA。在一些示例中,一些WAN链路可以以相同的方式违反SLA,而一个或多个WAN链路可以以不同的方式违反SLA。
AMR模块320可以响应于确定违反而对第一应用施用AMR(504)。例如,AMR模块320可以复制第一应用的应用数据包,并且在至少两个WAN链路上的每个WAN链路上转发每个应用数据包的副本。
在一些示例中,没有为第一应用预先置备AMR。例如,网络管理员没有手动地为第一应用置备AMR。
在一些示例中,标准是预定的,并且包括RTP、办公相关、大小、银行、交易或DSCP标记中的至少一个。在一些示例中,AMR模块320可以自主地修改标准。在一些示例中,标准中的每个标准具有相关联的权重,并且AMR模块320可以自主地修改与标准相关联的一个或多个权重。
在一些示例中,AMR模块320可以确定SD-WAN边缘308的可用资源足以支持第一应用的AMR,其中,将AMR应用于第一应用是基于可用资源足以支持第一应用的AMR。
在一些示例中,所识别的一个或多个应用包括第二应用。在一些示例中,标准中的每个标准具有相关联的权重。在一些示例中,AMR模块320可以基于该标准来确定第一应用的第一优先级和第二应用的第二优先级,第一优先级高于第二优先级。在一些示例中,AMR模块320可以确定与第二应用相关联的每个WAN链路上的一个或多个SLA中的SLA之一的违反。在该示例中,AMR模块320可以确定可用资源不足以支持第一应用和第二应用两者的AMR。在该示例中,AMR模块320可以基于第一优先级高于第二优先级,对第一应用施用AMR,并且避免对第二应用施用AMR。
在一些示例中,第一优先级基于具有与第一应用相对应的属性的每个标准的累积权重,并且第二优先级基于具有与第二应用相对应的属性的每个标准的累积权重。
在一些示例中,AMR模块320被配置为经由两个以上个WAN链路中的每一个来发送与第一应用相关联的数据包的副本。
在一些实例中,本发明的技术由SD-WAN边缘308执行。在一些示例中,针对AMR识别一个或多个应用以及确定SLA的违反由SD-WAN控制器104(图1)执行,并且SD-WAN控制器104输出配置数据以使SD-WAN边缘308对第一应用施用AMR。
本发明的技术具有优于其它技术的若干潜在优点。举例来说,本发明的技术提供相对重要的应用的动态识别。本发明的技术促进按需针对给定应用启用和停用AMR。本公开的技术可以为相对重要的应用提供更好的应用QoE。本发明的技术可提供WAN链路和系统资源的更好管理和有效利用。本发明的技术可减少网络管理员在确定是否应针对给定应用置备AMR方面以及在针对此些应用手动置备AMR方面的负担。
本文中所描述的技术可实施于硬件、软件、固件或其任何组合中。描述为模块、单元或组件的各种特征可一起实施于集成逻辑装置中或单独实施为离散但可互操作的逻辑装置或其它硬件装置。在一些情况下,电子电路的各种特征可以被实现为一个或多个集成电路设备,诸如集成电路芯片或芯片组。
如果以硬件实施,那么本发明可针对例如处理器或例如集成电路芯片或芯片组等集成电路装置的设备。或者或另外,如果以软件或固件实施,那么技术可至少部分地由包括指令的计算机可读数据存储介质来实现,指令在被执行时致使处理器执行上文所描述的方法中的一者或一者以上。例如,计算机可读数据存储介质可以存储用于由处理器执行的该指令。
计算机可读介质可以形成计算机程序产品的一部分,该计算机程序产品可以包括封装材料。计算机可读介质可以包括计算机数据存储介质,诸如随机存取存储器(RAM)、只读存储器(ROM)、非易失性随机存取存储器(NVRAM)、电可擦除可编程只读存储器(EEPROM)、闪存、磁性或光学数据存储介质等。在一些示例中,制品可以包括一个或多个计算机可读存储介质。
在一些示例中,计算机可读存储介质可以包括非瞬态介质。术语“非暂时性”可以指示存储介质不包含在载波或传播信号中。在某些示例中,非暂时性存储介质可以存储数据,该数据可以随着时间改变(例如,在RAM或缓存中)。
代码或指令可以是由处理电路执行的软件和/或固件,处理电路包括一个或多个处理器,诸如一个或多个数字信号处理器(DSP)、通用微处理器、专用集成电路(ASIC)、现场可编程门阵列(FPGA)或其它等效的集成或离散逻辑电路。因此,如本文中所使用的术语“处理器”可指代前述结构中的任一者或适于实施本文中所描述的技术的任何其它结构。另外,在一些方面中,可在软件模块或硬件模块内提供本发明中所描述的功能性。
Claims (20)
1.一种网络设备,包括:
存储器,被配置为针对软件定义广域网SD-WAN中的应用存储与一个或多个服务水平协议SLA相关联的信息;以及
基于应用的多路径路由AMR模块,包括处理电路,所述基于应用的多路径路由AMR模块被配置为:
基于标准针对基于应用的多路径路由AMR来识别一个或多个应用,其中,所述标准中的每个标准与应用的对应属性相关联;
确定与所识别的一个或多个应用中的第一应用相关联的每个WAN链路上的服务水平协议SLA之一的违反;以及
响应于确定所述违反,对所述第一应用施用基于应用的多路径路由AMR。
2.根据权利要求1所述的网络设备,其中,没有针对所述第一应用预先置备基于应用的多路径路由AMR。
3.根据权利要求1所述的网络设备,其中,所述标准是预定的,并且所述标准包括实时传输协议RTP、办公相关、大小、银行、交易、或差分服务代码点DSCP标记中的至少一者。
4.根据权利要求1所述的网络设备,其中,所述基于应用的多路径路由AMR模块还被配置为自主修改所述标准。
5.根据权利要求1所述的网络设备,其中,所述标准中的每个标准具有相关联的权重,并且其中,所述基于应用的多路径路由AMR模块还被配置为自主修改与所述标准相关联的一个或多个权重。
6.根据权利要求1至5中任一项所述的网络设备,其中,所述基于应用的多路径路由AMR模块还被配置为:确定所述网络设备的可用资源足以支持用于所述第一应用的基于应用的多路径路由AMR,
其中,将基于应用的多路径路由AMR施用于所述第一应用是基于所述可用资源足以支持用于所述第一应用的基于应用的多路径路由AMR。
7.根据权利要求1至5中任一项所述的网络设备,其中,所识别的一个或多个应用包括第二应用,其中,所述标准中的每个标准具有相关联的权重,并且其中,所述基于应用的多路径路由AMR模块还被配置为:
基于所述标准来确定所述第一应用的第一优先级和所述第二应用的第二优先级,所述第一优先级高于所述第二优先级;
确定与所述第二应用相关联的每个WAN链路上的所述一个或多个服务水平协议SLA之一的违反;
确定可用资源不足以支持用于所述第一应用和所述第二应用两者的基于应用的多路径路由AMR;以及
基于所述第一优先级高于所述第二优先级,对所述第一应用施用基于应用的多路径路由AMR,并且避免对所述第二应用施用基于应用的多路径路由AMR。
8.根据权利要求7所述的网络设备,其中,所述第一优先级基于具有与所述第一应用相对应的属性的每个标准的累积权重,所述第二优先级基于具有与所述第二应用相对应的属性的每个标准的累积权重。
9.根据权利要求1至5中任一项所述的网络设备,其中,为所述第一应用施用基于应用的多路径路由AMR,所述基于应用的多路径路由AMR模块被配置为:
经由两个以上WAN链路中的每一者来传送与所述第一应用相关联的数据包的副本。
10.一种操作网络设备的方法,包括:
由处理电路并基于标准,在软件定义广域网SD-WAN中针对基于应用的多路径路由AMR识别一个或多个应用,其中,所述标准中的每个标准与应用的对应属性相关联;
由所述处理电路确定与所识别的一个或多个应用中的第一应用相关联的每个WAN链路上的针对所述第一应用的服务水平协议SLA的违反;以及
由所述处理电路并响应于确定所述违反,对所述第一应用施用基于应用的多路径路由AMR。
11.根据权利要求10所述的方法,其中,没有针对所述第一应用预先置备基于应用的多路径路由AMR。
12.根据权利要求10所述的方法,其中,所述标准是预先确定的,并且所述标准包括RTP、办公相关、大小、银行、交易、或DSCP标记中的至少一者。
13.根据权利要求10所述的方法,进一步包括:
由所述处理电路自主修改所述标准。
14.根据权利要求10所述的方法,其中,所述标准中的每个标准具有相关联的权重,并且其中,所述方法还包括:
由所述处理电路自主地修改与所述标准相关联的一个或多个权重。
15.根据权利要求10至14中任一项所述的方法,进一步包括:
由所述处理电路确定网络设备的可用资源足以支持用于所述第一应用的基于应用的多路径路由AMR,
其中,将基于应用的多路径路由AMR施用于所述第一应用是基于所述可用资源足以支持用于所述第一应用的基于应用的多路径路由AMR。
16.根据权利要求10至14中任一项所述的方法,其中,所述一个或多个应用包括第二应用,其中,所述标准中的每个标准具有相关联的权重,并且其中,所述方法还包括:
基于所述标准,确定所述第一应用的第一优先级和所述第二应用的第二优先级,所述第一优先级高于所述第二优先级;
由所述处理电路确定与所述第二应用相关联的每个WAN链路上的所述一个或多个服务水平协议SLA之一的违反;
由所述处理电路确定可用资源不足以支持用于所述第一应用和所述第二应用两者的基于应用的多路径路由AMR;以及
由所述处理电路基于所述第一优先级高于所述第二优先级,对所述第一应用施用基于应用的多路径路由AMR,并且避免对所述第二应用施用基于应用的多路径路由AMR。
17.根据权利要求16所述的方法,其中,所述第一优先级基于具有与所述第一应用相对应的属性的每个标准的累积权重,所述第二优先级基于具有与所述第二应用相对应的属性的每个标准的累积权重。
18.根据权利要求10至14中任一项所述的方法,其中,所述方法由SD-WAN边缘设备执行。
19.根据权利要求10至14中任一项所述的方法,其中,由SD-WAN控制器执行针对基于应用的多路径路由AMR识别一个或多个应用以及确定服务水平协议SLA的违反,并且其中,所述SD-WAN控制器输出配置数据以使得SD-WAN边缘设备对所述第一应用施用基于应用的多路径路由AMR。
20.一种计算机可读存储介质,所述计算机可读存储介质中编码有用于使得一个以上可编程处理器执行由权利要求10至19中的任一权利要求所述的方法的指令。
Applications Claiming Priority (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US17/473,561 US11637769B2 (en) | 2021-09-13 | 2021-09-13 | Automatic application-based multipath routing for an SD-WAN service |
US17/473,561 | 2021-09-13 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN115811494A true CN115811494A (zh) | 2023-03-17 |
Family
ID=83283316
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202211097066.8A Pending CN115811494A (zh) | 2021-09-13 | 2022-09-08 | 用于sd-wan服务的自动基于应用的多路径路由 |
Country Status (3)
Country | Link |
---|---|
US (2) | US11637769B2 (zh) |
EP (1) | EP4149081A1 (zh) |
CN (1) | CN115811494A (zh) |
Families Citing this family (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20230097061A1 (en) * | 2021-09-30 | 2023-03-30 | Fortinet, Inc. | Automatic configuration of sd-wan link rules on a per application basis using real-time network conditions |
US20230180051A1 (en) * | 2021-12-07 | 2023-06-08 | Cradlepoint, Inc. | Equal Cost Multipath and Application Quality of Experience Based on Variable Loss, Latency, and Bandwidth |
Family Cites Families (41)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
GB0015229D0 (en) * | 2000-06-21 | 2000-08-16 | Nokia Networks Oy | Bandwidth estimation |
US7133365B2 (en) * | 2001-11-02 | 2006-11-07 | Internap Network Services Corporation | System and method to provide routing control of information over networks |
US8589541B2 (en) * | 2009-01-28 | 2013-11-19 | Headwater Partners I Llc | Device-assisted services for protecting network capacity |
US8331370B2 (en) * | 2009-12-17 | 2012-12-11 | Amazon Technologies, Inc. | Distributed routing architecture |
US8625458B2 (en) * | 2010-05-26 | 2014-01-07 | Alcatel Lucent | Dynamic route cost adjustment of VRRP enabled subnets for routing protocols |
WO2012006595A2 (en) * | 2010-07-09 | 2012-01-12 | Nicolas Girard | Transparent proxy architecture for multi-path data connections |
EP2469758A1 (en) * | 2010-12-24 | 2012-06-27 | British Telecommunications Public Limited Company | Communications network management |
US8745216B2 (en) * | 2011-11-17 | 2014-06-03 | Infosys Limited | Systems and methods for monitoring and controlling a service level agreement |
US8996666B2 (en) * | 2011-12-20 | 2015-03-31 | Cisco Technology, Inc. | Quality of service (QoS) configuration in low-power and lossy networks |
EP2728828A1 (en) * | 2012-10-31 | 2014-05-07 | British Telecommunications public limited company | Session admission in a communications network |
US8879613B1 (en) * | 2013-08-06 | 2014-11-04 | Cisco Technology, Inc. | Dynamic frame selection when requesting tone map parameters in mesh networks |
US9172613B2 (en) * | 2013-08-06 | 2015-10-27 | Cisco Technology, Inc. | Multiple topology routing architecture in computer networks |
CN106416157B (zh) * | 2014-03-24 | 2019-12-17 | 瑞典爱立信有限公司 | 在传输网络虚拟化中提供弹性的方法 |
US9887874B2 (en) * | 2014-05-13 | 2018-02-06 | Cisco Technology, Inc. | Soft rerouting in a network using predictive reliability metrics |
US10425382B2 (en) * | 2015-04-13 | 2019-09-24 | Nicira, Inc. | Method and system of a cloud-based multipath routing protocol |
US10469340B2 (en) * | 2016-04-21 | 2019-11-05 | Servicenow, Inc. | Task extension for service level agreement state management |
JP2019523621A (ja) * | 2016-06-18 | 2019-08-22 | クレバーネット, インコーポレイテッドClevernet, Inc. | 複数のチャネルを使用してパフォーマンスを向上するインテリジェントアダプティブトランスポートレイヤー |
US20190036814A1 (en) * | 2017-07-31 | 2019-01-31 | Cisco Technology, Inc. | Traffic steering with path ordering |
US10783472B2 (en) * | 2017-10-31 | 2020-09-22 | Dell Products L.P. | Applying machine learning to dynamically scale computing resources to satisfy a service level agreement (SLA) |
US10924385B2 (en) * | 2017-11-07 | 2021-02-16 | Nicira, Inc. | Weighted multipath routing configuration in software-defined network (SDN) environments |
US20190317749A1 (en) * | 2018-04-13 | 2019-10-17 | Cisco Technology, Inc. | Upgrading network firmware |
US20200106699A1 (en) * | 2018-10-01 | 2020-04-02 | Citrix Systems, Inc. | Systems and methods for multilink wan connectivity for saas applications |
US10708144B2 (en) | 2018-11-14 | 2020-07-07 | Juniper Networks, Inc. | Predicting application quality of experience metrics using adaptive machine learned probes |
US10764193B2 (en) * | 2019-01-30 | 2020-09-01 | Verizon Patent And Licensing, Inc. | Routing network traffic associated with an application based on a transaction of the application |
US10855555B2 (en) * | 2019-03-11 | 2020-12-01 | Juniper Networks, Inc. | On-demand probing for quality of experience metrics |
US11005729B2 (en) | 2019-03-14 | 2021-05-11 | Juniper Networks, Inc. | Satisfying service level agreement metrics for unknown applications |
US10951490B2 (en) * | 2019-05-09 | 2021-03-16 | Cisco Technology, Inc. | Intelligent tunnel assignment and dynamic SLA threshold configuration to increase availability and utilization of SD-WAN tunnels |
US10904125B2 (en) * | 2019-05-30 | 2021-01-26 | Cisco Technology, Inc. | Active probe construction using machine learning for measuring SD-WAN tunnel metrics |
US11184273B2 (en) * | 2019-07-24 | 2021-11-23 | Vmware, Inc. | Machine learning-based path priority determination for routing data in software-defined networks |
US20210092062A1 (en) * | 2019-09-20 | 2021-03-25 | Citrix Systems, Inc. | Quality of experience (qoe) enhancement device and related techniques |
US11115347B2 (en) * | 2019-10-14 | 2021-09-07 | Hewlett Packard Enterprise Development Lp | Dynamic monitoring and migration of applications |
US11212822B2 (en) * | 2019-11-22 | 2021-12-28 | Verizon Patent And Licensing Inc. | Systems and methods for managing service level agreements over network slices |
US11444851B2 (en) * | 2020-04-13 | 2022-09-13 | Verizon Patent And Licensing Inc. | Systems and methods of using adaptive network infrastructures |
US11388042B2 (en) * | 2020-08-12 | 2022-07-12 | Cisco Technology, Inc. | Anomaly detection triggered proactive rerouting for software as a service (SaaS) application traffic |
US11398958B2 (en) * | 2020-08-19 | 2022-07-26 | Cisco Technology, Inc. | Reverting routing decisions made based on incorrect network predictions |
US20220070086A1 (en) * | 2020-08-31 | 2022-03-03 | Cisco Technology, Inc. | Optimal proactive routing with global and regional constraints |
US11108651B1 (en) * | 2020-10-28 | 2021-08-31 | Cisco Technology, Inc. | Adaptive oscillation control for network paths using machine learning |
US11405318B2 (en) * | 2020-11-04 | 2022-08-02 | Cisco Technology, Inc. | Collaborative traffic balancer |
US11381474B1 (en) * | 2020-12-31 | 2022-07-05 | Juniper Networks, Inc. | Wan link selection for SD-WAN services |
US20220231939A1 (en) * | 2021-01-20 | 2022-07-21 | Cisco Technology, Inc. | Model counterfactual scenarios of sla violations along network paths |
US20220245647A1 (en) * | 2021-02-02 | 2022-08-04 | Nice Ltd. | Systems and methods to triage contact center issues using an incident grievance score |
-
2021
- 2021-09-13 US US17/473,561 patent/US11637769B2/en active Active
-
2022
- 2022-09-08 CN CN202211097066.8A patent/CN115811494A/zh active Pending
- 2022-09-12 EP EP22195211.2A patent/EP4149081A1/en active Pending
-
2023
- 2023-03-09 US US18/180,979 patent/US20230216784A1/en active Pending
Also Published As
Publication number | Publication date |
---|---|
EP4149081A1 (en) | 2023-03-15 |
US20230080537A1 (en) | 2023-03-16 |
US11637769B2 (en) | 2023-04-25 |
US20230216784A1 (en) | 2023-07-06 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US11949568B1 (en) | Wan link selection for SD-WAN services | |
US11902097B2 (en) | Adaptive location-based SD-WAN policies | |
US20210135978A1 (en) | Intelligent adaptive transport layer to enhance performance using multiple channels | |
US9047143B2 (en) | Automation and programmability for software defined networking systems | |
CN110945842A (zh) | 在软件定义网络中基于性能分数针对应用的路径选择 | |
EP3605968B1 (en) | N:1 stateful application gateway redundancy model | |
JP2024012632A (ja) | 強化されたsd-wanパスの品質測定および選択 | |
EP4149081A1 (en) | Automatic application-based multipath routing for an sd-wan service | |
US11283862B2 (en) | Apparatus and method for subscription-based resource throttling in a cloud environment | |
US9100346B2 (en) | Commmon agent framework for network devices | |
US10917354B2 (en) | System and method for reactive path selection | |
US11563601B1 (en) | Proactive tunnel configuration computation for on-demand SD-WAN tunnels | |
Gomes et al. | Software-defined management of edge as a service networks | |
US11991084B2 (en) | AI-assisted WAN link selection for SD-WAN services | |
US12040985B2 (en) | System and method for reactive path selection | |
WO2022253192A1 (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 |