CN114080784B - 使用标签路由网络流量的系统和方法 - Google Patents

使用标签路由网络流量的系统和方法 Download PDF

Info

Publication number
CN114080784B
CN114080784B CN202080048806.1A CN202080048806A CN114080784B CN 114080784 B CN114080784 B CN 114080784B CN 202080048806 A CN202080048806 A CN 202080048806A CN 114080784 B CN114080784 B CN 114080784B
Authority
CN
China
Prior art keywords
application
service
label
tag
network
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.)
Active
Application number
CN202080048806.1A
Other languages
English (en)
Other versions
CN114080784A (zh
Inventor
亨德里库斯·G·P·博施
斯蒂芬·奥洛夫森
艾斯布兰德·维珍
阿努巴夫·古普塔
杰弗里·纳珀
萨普·朱利安·穆伦德
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Cisco Technology Inc
Original Assignee
Cisco Technology Inc
Priority date (The priority date 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 date listed.)
Filing date
Publication date
Application filed by Cisco Technology Inc filed Critical Cisco Technology Inc
Publication of CN114080784A publication Critical patent/CN114080784A/zh
Application granted granted Critical
Publication of CN114080784B publication Critical patent/CN114080784B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L45/00Routing or path finding of packets in data switching networks
    • H04L45/50Routing or path finding of packets in data switching networks using label swapping, e.g. multi-protocol label switch [MPLS]
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L45/00Routing or path finding of packets in data switching networks
    • H04L45/302Route determination based on requested QoS
    • H04L45/306Route determination based on the nature of the carried application
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L45/00Routing or path finding of packets in data switching networks
    • H04L45/02Topology update or discovery
    • H04L45/021Ensuring consistency of routing table updates, e.g. by using epoch numbers
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L45/00Routing or path finding of packets in data switching networks
    • H04L45/42Centralised routing
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L45/00Routing or path finding of packets in data switching networks
    • H04L45/74Address processing for routing
    • H04L45/745Address table lookup; Address filtering
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L63/00Network architectures or network communication protocols for network security
    • H04L63/02Network architectures or network communication protocols for network security for separating internal from external traffic, e.g. firewalls
    • H04L63/0272Virtual private networks
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L63/00Network architectures or network communication protocols for network security
    • H04L63/02Network architectures or network communication protocols for network security for separating internal from external traffic, e.g. firewalls
    • H04L63/029Firewall traversal, e.g. tunnelling or, creating pinholes
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L63/00Network architectures or network communication protocols for network security
    • H04L63/14Network architectures or network communication protocols for network security for detecting or protecting against malicious traffic
    • H04L63/1408Network architectures or network communication protocols for network security for detecting or protecting against malicious traffic by monitoring network traffic
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L63/00Network architectures or network communication protocols for network security
    • H04L63/20Network architectures or network communication protocols for network security for managing network security; network security policies in general
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/50Network services
    • H04L67/60Scheduling or organising the servicing of application requests, e.g. requests for application data transmissions using the analysis and optimisation of the required network resources
    • H04L67/63Routing a service request depending on the request content or context
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L61/00Network arrangements, protocols or services for addressing or naming
    • H04L61/45Network directories; Name-to-address mapping
    • H04L61/4505Network directories; Name-to-address mapping using standardised directories; using standardised directory access protocols
    • H04L61/4511Network directories; Name-to-address mapping using standardised directories; using standardised directory access protocols using domain name system [DNS]

Landscapes

  • Engineering & Computer Science (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Computer Security & Cryptography (AREA)
  • Computer Hardware Design (AREA)
  • Computing Systems (AREA)
  • General Engineering & Computer Science (AREA)
  • Data Exchanges In Wide-Area Networks (AREA)
  • Mobile Radio Communication Systems (AREA)

Abstract

在一个实施例中,一种方法包括:检测将流量路由到与应用相关联的服务的请求。该方法还包括:识别与该应用相关联的应用标识符并使用该应用标识符从包括在路由表中的多个标签中选择标签。标签包括一条或多条路线。该方法还包括:使用标签将流量路由到与应用相关联的服务。

Description

使用标签路由网络流量的系统和方法
相关申请的交叉引用
本申请要求Hendrikus G.P.Bosch等人于2019年6月6日提交的名称为“Privatenetworking for ASPs and services with mobile SD-WAN”的美国临时申请第62/858,245号以及Hendrikus G.P.Bosch等人于2019年6月6日提交的名称为“Application labelssupporting better anomaly detection”的美国临时申请第62/858,207号的权益,上述申请通过引用并入本文,如同复制了其全部内容一样。
技术领域
本公开总体涉及使用标签路由流量,并且更具体地涉及用于使用标签路由网络流量的系统和方法。
背景技术
敏感信息可能会通过网络内的一个或多个节点传输。网络内的某些节点可能会受到威胁。例如,攻击者可能会获得对一个或多个网络节点的访问权。如果网络节点受到威胁,传统的保护措施可能无法有效保护通过受威胁节点的敏感信息。
附图说明
图1图示了使用标签路由网络流量的示例系统;
图2图示了可以由图1的系统使用的示例系统;
图3图示了使用标签路由网络流量的示例方法;
图4图示了使用应用标签路由网络流量的示例系统;和
图5图示了可以由这里描述的系统和方法使用的示例计算机系统。
具体实施方式
概述
本发明的各方面在独立权利要求中陈述并且优选特征在从属权利要求中陈述。一个方面的特征可以单独地或与其他方面相组合地应用于各方面。
根据实施例,一种设备包括一个或多个处理器和耦合到该一个或多个处理器的一个或多个计算机可读非暂态存储介质。一个或多个计算机可读非暂态存储介质包括指令,这些指令当由一个或多个处理器执行时使设备执行操作,所述操作包括:由所述设备的移动代理检测将流量路由到与应用相关联的服务的请求。所述操作还包括:由所述移动代理识别与所述应用相关联的应用标识符并由所述移动代理使用所述应用标识符从包含在路由表中的多个标签中选择标签。所选择的标签包括一条或多条路线。所述操作还包括:由所述移动代理使用所选择的标签将所述流量路由到与所述应用相关联的服务。所述标签可以与以下项中的一项或多项相关联:软件定义广域网(SD-WAN);虚拟私有网络(VPN);多协议标签交换(MPLS)标签;网络服务标头(NSH)标签;和通用网络虚拟化封装(GENEVE)隧道标签。所述服务可以与以下项中的一项或多项相关联:公共基础设施即服务(IaaS);私有IaaS;公共软件即服务(SaaS);私有SaaS;和私有企业服务。
在某些实施例中,所述标签支持具有内联安全服务的外联网服务,所述内联安全服务包括以下项中的一项或多项:防火墙服务;入侵检测服务;入侵防御服务;和云访问安全代理(CASB)服务。在一些实施例中,头端节点接收所选择的标签,在策略表中维护一个或多个策略,并且使用所述一个或多个策略和所选择的标签将所述流量路由到与所述应用相关联的服务。在某些实施例中,所述操作包括:由所述移动代理接收域名系统(DNS)请求,并且使用所述应用标识符将DNS请求映射到所述标签。在某些实施例中,所述操作可包括:由所述移动代理维护包括一个或多个策略的策略表,并且使用所述一个或多个策略将与所述应用相关联的应用标识符映射到所述标签。
根据另一实施例,一种方法包括:检测将流量路由到与应用相关联的服务的请求。所述方法还包括:识别与所述应用相关联的应用标识符并使用所述应用标识符从包含在路由表中的多个标签中选择标签。所选择的VPN标签包括一条或多条路线。所述方法还包括:使用所选择的标签将所述流量路由到与所述应用相关联的服务。
根据又一实施例,一种或多种计算机可读非暂态存储介质,包含指令,所述指令当被处理器执行时使所述处理器执行操作,所述操作包括:检测将流量路由到与应用相关联的服务的请求。所述操作还包括:识别与所述应用相关联的应用标识符并使用所述应用标识符从包含在路由表中的多个标签中选择标签。所选择的标签包括一条或多条路线。所述操作还包括:使用所选择的标签将所述流量路由到与所述应用相关联的服务。
在传统的路由解决方案中,网络跨网络路由器维护一系列路由信息库/转发信息库(RIB/FIB)表,以帮助在应用和服务之间路由流。路由协议找到端点之间的有效和/或最佳路径。路径可以包括一系列网络跳,并且通常在每一跳建立路由表以找到去往目的地网络的最短路径。一个或多个因特网服务提供商(ISP)可被用来维护这些路线。单个RIB/FIB表维护去往服务的最合适路径(例如,最短路径)。传统的路由解决方案不考虑多个ISP可能被用来接收同一组服务的情况以及这些ISP中的每一个可能提供一组不同的服务质量(QoS)等级和/或服务级别协议(SLA)来解决服务的情况。应用服务提供商(ASP)并不与ISP合作以提供一揽子服务。本公开描述了用于由ASP在标签网络上捆绑应用的系统和方法。
本公开的某些实施例的技术优点可以包括以下一项或多项。本公开的某些实施例引入了移动代理,该移动代理管理移动设备上的标签驱动路由表和数据转发。移动代理基于企业签约的服务来创建自己的一组路由表。企业可以逐个应用地选择特定路径(由其标签标识)以提供对特定服务的访问,这可以允许差异化的服务和连接性以及针对这样的每一对的差异化的QoS等级。允许建立私有应用/服务网络为企业解决应用和服务中的漏洞提供了一种有效的方法。
从以下附图、描述和权利要求中,本领域技术人员将容易明白其他技术优点。此外,虽然上面已经列举了特定的优点,但是各种实施例可以包括所列举的优点中的全部、一些或不包括这些优点。
示例实施例
本公开总体涉及基于标签的VPN。本公开的某些实施例在移动设备上引入了移动代理,该移动代理将一系列VPN合并到应用/VPN路由表中。服务,例如云或企业服务,由一个或多个ISP提供的一组标签来支持。在某些实施例中,头端节点在适当时将标签转换到SD-WAN标签和/或其他分段网络上。一旦移动设备上的移动代理被配置用于基于标签的对服务的连接,获得对此类服务的访问可能涉及ASP。例如,ASP可能会将服务与SD-WAN打包在一起。ASP可以将SD-WAN VPN标签扩展到企业用户。ASP可以在移动设备上安装带有SD-WANVPN标签的应用/VPN路由表,以促进移动设备到签约服务的连接。鉴于并不要求只有单个ASP/ISP对提供服务,企业可以逐个应用地接收尽可能好的ASP/ISP对以用于其用户。
本公开的某些实施例包括移动设备上的移动代理,其创建与应用相关联的标签。在头端节点,可以将该标签映射到网络标签以选择路由表(例如,通过虚拟路由转发实例(VRF))。该网络标签可以是SD-WAN标签、多协议边界网关协议(MP-BGP)标签、MPLS标签等。标签可以由一个或多个服务提供商关联在一起并最终导致应用服务(例如、企业网络、公共或私有IaaS、公共或私有SaaS等)。通过在云网络上捆绑云应用并将捆绑的应用关联到本地VRF(以及因此关联到标签),在移动设备、网络和云之间创建了端到端网络。该网络被认为是一个完全隔离的网络。图1显示了使用标签路由网络流量的示例系统,图2显示了可以由图1的系统使用的示例系统。图3显示了使用标签路由网络流量的示例方法。图4显示了使用应用标签路由网络流量的示例系统。图5显示了可以由本文所描述的系统和方法使用的示例计算机系统。
图1图示了用于使用标签126路由网络流量的示例系统100。系统100或其部分可以与实体相关联,该实体可以包括使用VPN标签路由网络流量的任何实体,例如企业或公司(例如,服务提供商)。系统100的组件可以包括硬件、固件和软件的任何合适的组合。例如,系统100的组件可以使用图5的计算机系统的一个或多个要素。
系统100包括网络110、移动设备120、移动代理122、路由表124、VPN标签126、策略表128、策略130、节点140、应用服务150和安全服务160。系统100的网络110是促进系统100的组件之间的通信的任何类型的网络。网络110可以连接系统100的一个或多个组件。本公开考虑到了任何合适的网络。网络110的一个或多个部分可以包括自组织网络、内联网、外联网、VPN、局域网(LAN)、无线LAN(WLAN)、广域网(WAN)、无线WAN(WWAN)、城域网(MAN)、因特网的一部分、公共交换电话网(PSTN)的一部分、蜂窝电话网络、这些中两个或多个的组合、或其他合适类型的网络。网络110可以包括一个或多个网络。网络110可以是任何通信网络,例如私有网络、公共网络、通过因特网的连接、移动网络、WI-FI网络等。系统100的一个或多个组件可以通过网络110进行通信。网络110可以包括核心网络(例如,因特网)、服务提供商的接入网络、ISP网络等。网络110的一个或多个部分可以利用SD-WAN技术。
系统100的移动设备120是可以接收、创建、处理、存储和/或传送信息的任何终端设备。例如,移动设备120可以从系统100的一个或多个组件(例如,节点140)接收信息(例如,数据分组)。作为另一示例,移动设备120可以将信息(例如,数据分组)传送给系统100的一个或多个组件(例如,节点140)。在某些实施例中,移动设备120是手持计算机。移动设备120可以是移动电话(例如,智能电话)、膝上型计算机、平板电脑、个人数字助理等。移动设备120可以包括液晶显示器(LCD)、有机发光二极管(OLED)平面屏幕界面、数字按钮、数字键盘、物理按钮、物理键盘、一个或多个触摸屏组件等。移动设备120可以与诸如服务提供商之类的实体相关联。移动设备120可以包括图形用户界面(GUI)。移动设备可以包括图5的计算机系统的一个或多个组件。
在某些实施例中,移动设备120利用一个或多个应用。移动设备120的应用可以包括为特定操作系统构建的本机应用、在移动设备120中运行的浏览器上呈现和/或传送页面的移动网络应用等。移动设备120的浏览器是用于访问万维网上信息的软件应用。可以对一个或多个浏览器进行优化以有效地为小屏幕显示网络内容。
系统100的移动设备120包括移动代理122、路由表124和策略表128。移动代理122作为移动设备120上的应用运行并且为移动设备120执行特定任务。在某些实施例中,移动代理122是部署在移动设备120上以访问网络(例如,SD-WAN网络)的网络代理(例如,SD-WAN代理)。移动代理122可以维护和/或管理移动设备120的路由表124和/或策略表128。移动代理122可以从系统100的一个或多个节点140(例如,路由器或网络控制器)接收路由表124的一个或多个标签126(例如,VPN标签)和/或策略表128的一个或多个策略130。
在某些实施例中,移动代理122检测将流量路由到与移动设备120的应用相关联的应用服务150的请求。例如,移动代理122可以捕获来自移动设备120的流量并确定如何跨网络110(例如,移动SD-WAN网络)将流量路由到一个或多个应用服务150。在一些实施例中,移动代理122从路由表124中选择标签126并且使用选择的标签126将流量路由到应用服务150。例如,移动代理122可以识别与应用相关联的应用标识符并且使用来自策略表128的一个或多个策略130将应用标识符映射到标签126上。应用标识符是唯一地识别特定应用的任何标识符。在某些实施例中,应用标识符可以是表示为字符串(例如,数字、字母、下划线等)的唯一应用ID。应用标识符可以由应用签名表示。移动代理122可以为安装在移动设备120上的每个应用分配唯一的应用ID。在一些实施例中,应用标识符可以是与特定应用相关联的特性(例如,流量特性)。
在一些实施例中,移动代理122经由网络110的网段(例如,SD-WAN托管的VPN)将流量路由到应用服务150。每个网段可以唯一地提供到特定服务150的网络连接。当移动设备120上的应用选择了服务150时,移动代理122可以使用路由表126选择相关联的网段。移动代理122可以管理移动设备120上的路由表124和数据转发。移动代理122可以基于应用服务150创建它自己的一组路由表124。在某些实施例中,移动代理122可以为移动设备120的每个应用创建单独的路由表124。当移动设备120上的应用请求使用特定服务150时,一旦流进入移动代理122,移动代理122可以在路由表124中选择网段,并在该网段内将流量路由到该特定服务150。在某些实施例中,移动代理122可以识别与应用相关联的应用标识符,并使用应用标识符来选择路由表124的标签126。
在一些实施例中,移动代理122可以确定传入流量源自浏览器应用。浏览器应用的特殊之处在于这些应用可以同时连接到多个应用服务150,这增加了对于这些应用的威胁攻击面。为了减轻攻击的风险,响应于确定流量源自浏览器应用,移动代理122可以选择支持安全服务160(例如,防火墙服务、入侵检测服务、入侵防御服务、CASB服务等)的标签126。
在某些实施例中,移动代理122可以通过解析SSO服务的DNS名称来确定应用(例如,网络服务应用)需要访问单点登录(SSO)服务。响应于确定应用需要访问SSO服务,移动代理122可以从标签126中选择将流量路由到SSO服务的路线。在一些实施例中,移动代理122可以接收DNS请求。响应于接收到DNS请求,移动代理122可以使用应用标识符并如路由表124中所规定的那样将DNS请求映射到标签126。
系统100的路由表124是单独对待的应用表,其通过策略130将应用流映射到标签126上。在图1所示的实施例中,路由表124存储在移动设备120上。路由表124列出了一系列标签126。路由表124可以提供操作特定应用和/或服务150所需的所有路线。路由表124可以将标签126与服务150相关联。到特定服务150的所有路线可能仅在标签126的范围内有效。
路由表124可以是针对单个应用的单独对待的路由表。在某些实施例中,路由表124可以包括单条默认路线。在一些实施例中,路由表124包括到特定服务150的多条路线。例如,如果应用服务150与在加利福尼亚和欧洲可用的域名相关联,则对于该域名在本地WI-FI连接上而言,企业用户可具有指向加利福尼亚服务的路线,而当流量通过蜂窝连接路由时,企业用户可具有指向欧洲服务的单独路线。因此,对于路由表124的每个标签126,可以存在多个路由条目。
路由表124可以包括一个或多个标签126。系统100的标签126是用于将流量引导至网络110的一个或多个节点140的标签。标签126可以与SD-WAN、VPN、MPLS、NSH、GENEVE等相关联。例如,标签126可以映射到MPLS标签、NSH标签、GENEVE隧道标签等。每个标签126包括特定服务150所需的一个或多个路线。标签126可以指通向由一个或多个ASP托管的应用服务150的路径。标签126可以与变化的QoS管理网络相关联。QoS管理的网络可以用于管理网络110内的延迟、延迟变化(抖动)、带宽、分组丢失等。标签126可以映射到具有特定SLA的特定网络。SLA是服务提供商与其内部或外部客户之间的合约,用于记录提供商将提供的服务。在某些实施例中,SLA定义了提供商有义务满足的服务标准。通过在网络110中包括与某些标签126相关联的不同的QoS和/或SLA,标签126可以为企业用户创建对应用和应用服务150的差异化访问。标签126可以支持具有内联安全服务160的外联网服务。ASP可以通过提供类似于在MPLS和标签重新映射服务中使用的那些的背靠背标签来将标签126映射到企业用户。企业可以在移动代理122中安装带有标签126的路由表124以连接到应用服务150。
策略表128是由移动代理122用来将应用与特定标签126相关联的策略130的集合。策略表128可以存储在移动设备120上。移动设备120(例如,移动代理122)可以从网络110的一个或多个节点140接收策略表128和/或策略130。策略表128的策略130可以逐个应用地列出哪个VPN支持到特定服务150的路线。策略130可以通过一个或多个应用标识符来列出哪个VPN支持到特定服务150的路线。应用标识符可以包括与移动设备120的特定应用相关联的唯一标识符、与特定应用相关联的流量特性、与特定应用相关联的操作系统等。移动设备120的移动代理122可以使用策略表128的策略130来将流量映射到特定标签126上。例如,移动代理122可以确定传入流量是由特定应用生成的,识别与特定应用相关联的应用ID,并且按照一个或多个策略130的指示将应用ID映射到特定网络110和/或标签126上。
系统100的节点140是网络110内的连接点,其沿路径接收、创建、存储和/或发送流量。节点140可以包括一个或多个端点和/或一个或多个重新分配点,它们识别、处理和转发流量到其他节点140。节点140可以包括虚拟和/或物理网络节点。在某些实施例中,一个或多个节点140包括数据通信设备,例如交换机、网桥、调制解调器、集线器等。在一些实施例中,一个或多个节点140包括数据终端设备,例如路由器、服务器、打印机、工作站等。一个或多个节点140可以是主机计算机、入口节点、目的地节点、网络控制器节点、路径计算客户端(PCC)节点等。网络110内的一个或多个节点140可以从网络110的其他组件接收流量。例如,一个或多个节点140可以从移动设备120接收流量。传入流量可以包括源自网络110外部的网络的数据通信和网络流量。传入流量可能以网络110内部或外部的目标主机/IP地址为目的地。
一个或多个节点140可以接收通过路径(例如,VPN隧道)路由传入流量的请求。在某些实施例中,节点140包括头端节点,该头端节点接收标签126。头端节点是终止来自移动代理122的隧道(例如,VPN隧道)并连接到路由网络的节点。在一些实施例中,头端节点在适当情况将标签126转换到其他标签(例如,SD-WAN标签)和/或其他分段网络上。头端节点可以在策略表中维护一个或多个策略并使用一个或多个策略和标签126来将流量路由到应用服务150。在某些实施例中,头端节点可以选择与移动设备120选择的标签不同的标签。例如,如果头端节点不信任移动设备120的决定,则头端节点可以选择不同的标签。
系统100的应用服务150是可能由移动设备120用来访问一个或多个应用的服务。应用服务150可由与移动设备120相关联的企业约定。应用服务150可由一个或多个ASP提供。应用服务150包括云服务152和企业服务154。云服务152是移动设备120的用户可从云计算提供商处获得并为用户提供服务的公共或私有服务。云服务152可以通过因特网按需提供给用户。云服务152可以包括以下服务:诸如SaaS、平台即服务(PaaS)、IaaS上托管的应用、对此类IaaS上的虚拟机和/或容器的访问等。企业服务154是从企业提供给移动设备120的用户的私有服务。企业服务154可以按需提供给用户。企业服务152可以包括以下服务:诸如面向业务的工具(例如,在线购物、在线支付处理等)、自动计费系统、项目管理、协作、人力资源管理、制造、职业健康和安全等。企业服务可以包括私有企业IaaS应用、SaaS服务、PaaS服务等。
系统100的安全服务160是向系统100提供安全性的内联服务。安全服务160可以为在移动设备120上运行的浏览器和/或其他应用提供安全性。安全服务160可以与认证、访问控制、数据机密性、数据完整性、不可否认性等相关联。安全服务160可以包括防火墙服务、入侵检测服务、入侵预防服务、CASB服务等。
在操作中,移动设备120的移动代理122检测将流量路由到应用服务150的请求。例如,移动代理122可以检测到用户已经将设备120上的浏览器指向应用服务150。移动代理122识别与应用服务150相关联的应用标识符并使用应用标识符选择移动设备120的路由表124中包括的标签126。移动代理122然后使用选择的标签126将流量路由到与应用相关联的应用服务150。因此,系统100根据将应用映射到特定服务的标签126来路由流量,这允许企业逐个应用地选择哪个网络路径提供对特定应用服务150的访问。
尽管图1图示了网络110、移动设备120、移动代理122、路由表124、标签126、策略表128、策略130、节点140、应用服务150和安全服务160的特定布置,但是本公开考虑到了任何合适的网络110、移动设备120、移动代理122、路由表124、标签126、策略表128、策略130、节点140、应用服务150和安全服务160的布置。例如,网络110可以包括一个或多个网络控制器。作为另一示例,路由表124和策略表128可以是单个表。尽管图1图示了特定数量的网络110、移动设备120、移动代理122、路由表124、标签126、策略表128、策略130、节点140、应用服务150和安全服务160,但是本公开考虑到了任何合适数量的网络110、移动设备120、移动代理122、路由表124、标签126、策略表128、策略130、节点140、应用服务150和安全服务160。例如,移动设备120可以包括多个移动代理122、多个路由表124和多个策略表128。
图2图示了可以由图1的系统使用的示例系统200。系统200或其部分可以与实体相关联,该实体可以包括使用标签路由网络流量的任何实体,例如企业或公司(例如,服务提供商)。系统200的组件可以包括硬件、固件和软件的任何合适的组合。例如,系统200的组件可以使用图5的计算机系统的一个或多个元素。
系统200包括网络110、移动设备120、用户220、应用210(应用210a和应用210b)、移动代理122、节点140、云服务152(云服务152a、云服务152b和云服务152c)、企业服务154(企业服务154a和企业服务154b)和安全服务160。流量可以通过系统200经由一个或多个标记的隧道(例如,隧道230、隧道232和隧道234)而被传送。
用户220是使用移动设备120的任何人、组织或软件程序。用户220可以利用移动设备120来访问使用一种或多种服务(例如,云服务152或企业服务154)的一个或多个应用210。在用户220访问服务之前可能需要对用户220进行认证。每个应用210是允许用户220执行特定功能的程序或一组程序。应用210可以包括为特定操作系统构建的本机应用、在移动设备120中运行的浏览器上呈现和/或传送页面的移动网络应用等。
移动代理122作为移动设备120上的应用(例如,应用210a或210b)运行。移动代理122从移动设备120捕获流量并确定如何跨网络110将流量路由到云服务152和/或企业服务154。移动代理122使用列出一系列标签(例如,图1的标签126)和/或其他网络附件的路由表(例如,图1的路由表124)来确定如何跨网络110路由流量。每个标签携带特定服务(例如,云服务152或企业服务154)所需的一组路线。移动代理122维护有指导移动代理122如何将与应用210相关联的应用标识符映射到特定标签和/或网络上的策略/路由表(例如,图1的策略表128)。
移动代理122内的策略表逐个应用地并可能地通过应用标识符而列出了哪个网段(例如,VPN)支持到特定云服务152或企业服务154的路线。例如,应用210b路由到与云服务152b相关联的IP地址。移动代理122接收传输层安全(TLS)流的初始分组(例如,传输控制协议(TCP)同步(SYN)分组、数据报传输层安全(DTLS)分组等),从与分组相关联的信息识别应用标识符,并在策略/路由表中查找应用210b的该应用标识符。移动代理122发现应用201b的该应用标识符与特定标签(例如,SD-WAN或MPLS标签)和/或网络相关联,并在该特定标签的RIB/FIB中搜索云服务152b的适当下一跳。移动代理122然后沿着VPN隧道230将来自移动设备120的流量路由到节点140。节点140可以根据特定标签而沿着隧道232将流量路由到云服务152b。因此,系统200根据将应用映射到特定服务的标签来路由流量,这允许企业逐个应用地选择哪个网络路径提供对特定服务的访问。
在一些实施例中,节点140可以使用与从移动设备120接收的标签和/或网络不同的标签和/或网络来将流量路由到一个或多个服务。例如,不是根据从移动代理122接收到的标签沿着隧道232将流量路由到云服务152b,节点140可以选择不同的标签并根据选择的不同标签沿着隧道230以外的隧道将流量路由到云服务152b。
在某些实施例中,一个或多个应用210可以是网络浏览器应用210。网络浏览器应用210可能需要同时连接到多个云服务152和/或企业服务154。为了减轻对网络浏览器应用210的攻击的风险,当检测到源自浏览器的流量时,移动代理122可以通过支持具有内联安全服务160的外联网服务的标签来路由所有浏览器流量。安全服务160可以包括传统的防火墙、入侵检测/预防、CASB和/或其他流量隔离机制。安全服务160可以减少浏览器和/或其他应用210流处置不明确的威胁攻击面。
在一些实施例中,一个或多个应用210可能需要访问本地认证和授权服务(例如,SSO企业服务)以获得服务。认证和授权服务将用户身份与企业用户对后端服务(例如,云服务152和企业服务154)的访问权限相结合。当SSO用于认证和授权过程时,许多客户端应用需要到此类SSO服务的路线,并且可以在移动设备120上安装路由到企业SSO服务的路线。可以在包括浏览器应用210在内的多个不同应用210之间共享SSO服务。
在某些实施例中,当应用210选择了云服务152或企业服务154时,应用210可以使用完全限定域名(FQDN)来解析IP地址。FQDN是域名,指定其在DNS树层次结构中的确切位置。鉴于每个服务器应用的IP地址可能是私有的,DNS请求可能会被独立地单独对待并路由。当启用DNS缓存时,每个VPN可能支持自己的缓存。DNS请求可以分别在每个标记网络内路由。应用标识符用于将DNS请求映射到适当的标签上。
虽然图2图示了网络110、移动设备120、用户220、应用210、移动代理122、节点140、云服务152、企业服务154和安全服务160的特定布置,但是本公开考虑到了网络110、移动设备120、用户220、应用210、移动代理122、节点140、云服务152、企业服务154和安全服务160的任何合适的布置。例如,图2的系统200可以包括移动设备120和云服务152之间的多个节点140。尽管图2示出了特定数量的网络110、移动设备120、用户220、应用210、移动代理122、节点140、云服务152、企业服务154和安全服务160,但本公开考虑到了任何合适数量的网络110、移动设备120、用户220、应用210、移动代理122、节点140、云服务152、企业服务154和安全服务160。例如,移动设备120可以包括多个移动代理122。
图3图示了用于使用标签来路由网络流量的示例方法300。方法300开始于步骤310。在步骤320,移动设备(例如,图1的移动设备120)的移动代理(例如,图1的移动代理122)检测将流量路由到与应用(例如,图2的应用210)相关联的服务(例如,图1的服务150)的请求。例如,移动设备的移动代理可以确定用户(例如,图2的用户220)通过将移动设备上的浏览器指向服务而选择了移动设备上的服务。方法300然后从步骤320移动到步骤330。
在步骤330,移动代理识别与应用相关联的应用标识符。例如,移动代理可以接收TLS流的分组并且从与分组相关联的信息中识别应用标识符。方法300然后从步骤330移动到步骤340。在步骤340,移动代理使用应用标识符从路由表中包括的多个标签中选择标签(例如,SD-WAN或MPLS标签)。例如,移动代理可以使用应用标识符和网络配置从包含在路由表中的多个标签中选择支持具有内联服务(例如,防火墙服务、入侵检测服务、入侵防御服务、CASB服务等)的外联网服务的标签。方法300然后从步骤340移动到步骤350。在步骤350,移动代理使用选择的标签或配置的网络而将流量路由到与应用相关联的服务。方法300然后从步骤350移动到步骤360,在此方法300结束。
虽然本公开将图3的方法300的特定步骤描述和图示为以特定顺序发生,但是本公开考虑到了以任何合适的顺序发生的图3的方法300的任何合适的步骤。尽管本公开描述和图示了用于使用标签来路由网络流量的示例方法300,包括图3的方法的特定步骤,但是本公开考虑到了用于使用标签来路由网络流量的任何合适的方法300,包括任何合适的步骤,在适当的情况下其可以包括图3的方法的全部步骤、某些步骤或不包括这些步骤。例如,方法300可以包括涉及接收DNS请求并将DNS请求映射到标签的附加步骤。尽管本公开描述和图示了执行图3的方法300的特定步骤的特定组件、设备或系统,但是本公开考虑到了执行图3的方法300的任何合适的步骤的任何合适的组件、设备或系统的任何合适的组合。
图4图示了用于使用应用标签412路由网络流量的示例系统400。系统400或其部分可以与实体相关联,该实体可以包括使用应用标签412来路由网络流量的任何实体,例如企业或公司(例如,服务提供商)。系统400的组件可以包括硬件、固件和软件的任何合适的组合。例如,系统400的组件可以使用图5的计算机系统的一个或多个元素。
系统400包括网络110、移动设备120、移动代理122、应用210、数据库410、应用标签412、节点140和流量监控应用420。网络110、移动设备120、移动代理122、应用210和节点140在上面图1到3中进行了描述。数据库410存储系统400的某些类型的信息。例如,数据库410可以存储应用标签412。数据库410可以是适合存储信息的易失性或非易失性本地或远程设备中的任何一个或组合。数据库410可以包括随机存取存储器(RAM)、只读存储器(ROM)、磁存储设备、光存储设备或任何其他合适的信息存储设备或这些设备的组合。数据库410可以位于适合数据库410与移动代理122通信的任何位置。
系统400的应用标签412是由网络110内的流量携带的标签,用于识别与流量相关联的应用210。每个应用标签412可以包括应用210的类型和/或版本。例如,应用标签412可以包括代表应用210的类型和/或版本的整数。作为另一示例,应用标签412可以是流标签,在流标签中包含了应用类型和/或版本。网络110使用应用标签412来确定哪个应用210负责特定数据流。
在某些实施例中,应用标签412可以是修改的MPLS标签。例如,MPLS标签可以具有20个比特,这20个比特可以自由分配,并且这些比特中的一些可以用于编码应用210(例如,对应用210的版本的指示)以生成应用标签412。作为另一示例,MPLS标签可以包括用于“所有其他应用”的默认值,该默认值可以用于将应用210编码成MPLS标签以生成应用标签412。如果使用少量比特(即,小于20比特)来编码应用210,则可以使用数据库(例如,图4的数据库410)将应用名称映射到用于编码的数字。当移动代理122连接到网络110时,移动设备120的移动代理122可以访问数据库410。在一些实施例中,应用标签412仅携带应用标识符。
在某些实施例中,应用标签412可以指示相关联的应用210是浏览器应用210。通过应用标签412标记为浏览器流量的流量可能比来自其他应用210的流量经受更专门或更严格的检查,这可以减少异常检测系统400上的负荷。可以使用标签来使浏览器流量经受更专门的检查。该标签可由一个或多个节点140以对移动设备120透明的方式分配。
系统400的流量监控应用420是用于监控网络110的流量的应用。流量监控应用420可以包括防火墙应用、异常检测应用、漏洞检测应用、威胁检测应用、威胁预防应用等。流量监控应用420可以在网络110的一个或多个节点140和/或移动设备120上运行。流量监控应用420可以使用应用标签412来检测一个或多个应用210中的异常。每个应用标签412可以向流量监控应用412提供关于哪个应用210负责相关联的网络连接的信息。与所有传入流量相比,特定应用210的流量具有更窄范围的流类型。因此,与检测所有传入流量的异常流类型相比,流量监控应用420可以使用应用标签412来更快、更早和更容易地检测异常流类型。在某些实施例中,流量监控应用420可以禁用生成异常流的应用210。如果特定应用210对一个以上设备(例如,多个移动设备120)上的恶意流量负有责任,则流量监控应用420可以标记该特定应用210和/或在整个网络110中禁用该特定应用210。
网络110的一个或多个节点140(例如,聚合设备)可以利用应用标签412来识别特定的应用流并基于所识别的应用流来执行一个或多个动作。例如,节点140可以将应用流移动到隔离应用流的蜜罐网络路径。作为另一示例,节点140可以从应用流中撤回一个或多个标签。作为又一示例,节点140可以重新分配与应用流相关联的一个或多个标签。
在操作中,移动设备120的移动代理122充当路由代理并与网络110配合以允许不同的流量流通过不同路径从移动设备120路由到节点140(例如,SD-WAN网关、VPN头端节点或目的节点)。移动代理122在移动设备120上运行并且因此能够观察应用210生成和/或消费通信流。通过在数据库410中的查找,移动代理122将应用类型和版本映射成整数并将该整数合并到流标签中以生成应用标签412。移动代理122使用应用标签412来标记不同的流,应用标签412为节点140提供更有效地路由流量并为不同流类型应用特定路由规则的能力。应用标签412向流量监控应用420提供关于哪个应用210负责特定连接的相关信息。流量监控应用420然后可以使用从应用标签412撷取的此信息来更好地检测数据流中的异常并且更有效地对其采取行动。
虽然图4图示了网络110、移动设备120、移动代理122、应用210、数据库410、应用标签412、节点140和流量监控应用420的特定布置,但是本公开考虑到了网络110、移动设备120、移动代理122、应用210、数据库410、应用标签412、节点140和流量监控应用420的任何合适的布置。例如,应用210可以存储在移动设备120的数据库410中。尽管图4图示了特定数量的网络110、移动设备120、移动代理122、应用210、数据库410、应用标签412、节点140和流量监控应用420,但本公开考虑到了任何合适数量的网络110、移动设备120、移动代理122、应用210、数据库410、应用标签412、节点140和流量监控应用420。例如,移动设备120可以包括多个移动代理122和/或多个数据库410。
图5图示了示例计算机系统500。在特定实施例中,一个或多个计算机系统500执行本文描述或说明的一种或多种方法的一个或多个步骤。在特定实施例中,一个或多个计算机系统500提供在此描述或说明的功能。在特定实施例中,在一个或多个计算机系统500上运行的软件执行在此描述或说明的一种或多种方法的一个或多个步骤,或者提供在此描述或说明的功能。特定实施例包括一个或多个计算机系统500的一个或多个部分。在此,在适当的情况下,对计算机系统的提及可包括计算设备,反之亦然。此外,在适当的情况下,对计算机系统的提及可包括一个或多个计算机系统。
本公开考虑到了任何合适数量的计算机系统500。本公开设想采用任何合适物理形式的计算机系统500。作为示例而非限制,计算机系统500可以是嵌入式计算机系统、片上系统(SOC)、单板计算机系统(SBC)(例如,模块上计算机(COM)或模块上系统(SOM))、台式计算机系统、膝上型或笔记本计算机系统、交互式信息亭、大型机、计算机系统网格、移动电话、个人数字助理(PDA)、服务器、平板电脑系统、增强/虚拟现实设备、或这些中两个或更多个的组合。在适当的情况下,计算机系统500可以包括一个或多个计算机系统500;是单一的或分布式的;跨越多个地点;跨越多台机器;跨越多个数据中心;或驻留在云中,其可包括一个或多个网络中的一个或多个云组件。在适当的情况下,一个或多个计算机系统500可以在没有实质空间或时间限制的情况下执行本文描述或说明的一种或多种方法的一个或多个步骤。作为示例而非限制,一个或多个计算机系统500可以实时或以批处理模式执行本文描述或说明的一种或多种方法的一个或多个步骤。在适当的情况下,一个或多个计算机系统500可以在不同时间或在不同位置执行本文描述或说明的一种或多种方法的一个或多个步骤。
在特定实施例中,计算机系统500包括处理器502、存储器504、存储装置506、输入/输出(I/O)接口508、通信接口510和总线512。虽然本公开描述并说明了特定布置中具有特定数量的特定组件的特定计算机系统,但本公开考虑到了任何合适布置中具有任何合适数量的任何合适组件的任何合适的计算机系统。
在特定实施例中,处理器502包括用于执行指令(例如构成计算机程序的那些)的硬件。作为示例而非限制,为了执行指令,处理器502可以从内部寄存器、内部高速缓存、存储器504或存储装置506检索(或获取)指令;解码并执行它们;然后将一个或多个结果写入内部寄存器、内部高速缓存、存储器504或存储装置506。在特定实施例中,处理器502可包括用于数据、指令或地址的一个或多个内部高速缓存。本公开考虑到了处理器502在合适的情况下包括任何合适数量的任何合适的内部高速缓存。作为示例而非限制,处理器502可以包括一个或多个指令高速缓存、一个或多个数据高速缓存以及一个或多个转换后备缓冲器(TLB)。指令高速缓存中的指令可以是存储器504或存储装置506中指令的副本,并且指令高速缓存可以加速处理器502对那些指令的检索。数据高速缓存中的数据可以是存储器504或存储装置506中用于在处理器502处执行以进行操作的指令的数据的副本;在处理器502处执行的先前指令的结果(这些结果以供在处理器502处执行的后续指令访问或以供写入存储器504或存储装置506);或其他合适的数据。数据高速缓存可以加速处理器502的读或写操作。TLB可以加速处理器502的虚拟地址转换。在特定实施例中,处理器502可以包括一个或多个用于数据、指令或地址的内部寄存器。本公开考虑到了处理器502在合适的情况下包括任何合适数量的任何合适的内部寄存器。在适当的情况下,处理器502可以包括一个或多个算术逻辑单元(ALU);是多核处理器;或者包括一个或多个处理器502。虽然本公开描述并说明了特定处理器,但是本公开考虑到了任何合适的处理器。
在特定实施例中,存储器504包括用于存储供处理器502执行的指令或供处理器502操作的数据的主存储器。作为示例而非限制,计算机系统500可以将指令从存储装置506或另一个源(例如,另一个计算机系统500)加载到存储器504。处理器502然后可以将指令从存储器504加载到内部寄存器或内部高速缓存。为了执行指令,处理器502可以从内部寄存器或内部高速缓存中检索指令并对它们进行解码。在指令执行期间或之后,处理器502可将一个或多个结果(其可为中间或最终结果)写入内部寄存器或内部高速缓存。处理器502然后可以将这些结果中的一个或多个写入存储器504。在特定实施例中,处理器502仅执行一个或多个内部寄存器或内部高速缓存或存储器504(与存储装置506或其他地方相对)中的指令并且仅对一个或多个内部寄存器或内部高速缓存或存储器504(与存储装置506或其他地方相对)中的数据进行操作。一个或多个存储器总线(其每个可以包括地址总线和数据总线)可以将处理器502耦合到存储器504。总线512可以包括一个或多个存储器总线,如下所述。在特定实施例中,一个或多个存储器管理单元(MMU)驻留在处理器502和存储器504之间并促进处理器502请求的对存储器504的访问。在特定实施例中,存储器504包括RAM。在适当的情况下,该RAM可以是易失性存储器。在适当的情况下,该RAM可以是动态RAM(DRAM)或静态RAM(SRAM)。此外,在适当的情况下,该RAM可以是单端口或多端口RAM。本公开考虑到了任何合适的RAM。在适当的情况下,存储器504可以包括一个或多个存储器504。尽管本公开描述并说明了特定存储器,但本公开考虑到了任何合适的存储器。
在特定实施例中,存储装置506包括用于数据或指令的大容量存储器。作为示例而非限制,存储装置506可以包括硬盘驱动器(HDD)、软盘驱动器、闪存、光盘、磁光盘、磁带或通用串行总线(USB)驱动器或这些中两个或多个的组合。在适当的情况下,存储装置506可以包括可移除或不可移除(或固定)介质。在适当的情况下,存储装置506可以在计算机系统500的内部或外部。在特定实施例中,存储装置506是非易失性固态存储器。在特定实施例中,存储装置506包括ROM。在适当的情况下,此ROM可以是掩膜编程ROM、可编程ROM(PROM)、可擦除PROM(EPROM)、电可擦除PROM(EEPROM)、电可变ROM(EAROM)或闪存或这些中两种或更多种的组合。本公开考虑到了采用任何合适的物理形式的大容量存储装置506。在适当的情况下,存储装置506可以包括促进处理器502和存储装置506之间的通信的一个或多个存储控制单元。在适当的情况下,存储装置506可以包括一个或多个存储装置506。虽然本公开描述并说明了特定存储装置,但是本公开考虑到了任何合适的存储装置。
在特定实施例中,I/O接口508包括硬件、软件或两者,为计算机系统500和一个或多个I/O设备之间的通信提供一个或多个接口。在适当的情况下,计算机系统500可以包括这些I/O设备中的一个或多个。这些I/O设备中的一个或多个可以实现人与计算机系统500之间的通信。作为示例而非限制,I/O设备可以包括键盘、小键盘、麦克风、监视器、鼠标、打印机、扫描仪、扬声器、静态相机、手写笔、平板电脑、触摸屏、轨迹球、摄像机、其他合适的I/O设备或这些中两个或更多个的组合。I/O设备可以包括一个或多个传感器。本公开考虑到了任何合适的I/O设备和用于它们的任何合适的I/O接口508。在适当的情况下,I/O接口508可以包括使处理器502能够驱动这些I/O设备中的一个或多个的一个或多个设备或软件驱动器。在适当的情况下,I/O接口508可以包括一个或多个I/O接口508。尽管本公开描述并说明了特定的I/O接口,但本公开考虑到了任何合适的I/O接口。
在特定实施例中,通信接口510包括硬件、软件或两者,其提供用于计算机系统500与一个或多个其他计算机系统500或一个或更多网络之间的通信(诸如例如,基于分组的通信)的一个或多个接口。作为示例而非限制,通信接口510可以包括用于与以太网或其他基于有线的网络进行通信的网络接口控制器(NIC)或网络适配器,或者用于与无线网络(例如WI-FI网络)通信的无线NIC(WNIC)或无线适配器。对此,本公开考虑到了任何合适的网络和任何合适的通信接口510。作为示例而非限制,计算机系统500可以与自组织网络、个域网(PAN)、LAN、WAN、城域网(MAN)、或互联网络的一个或多个部分、或这些中两个或更多个的组合进行通信。这些网络中的一个或多个的一个或多个部分可以是有线的或无线的。例如,计算机系统500可以与无线PAN(WPAN)(例如BLUETOOTH WPAN)、WI-FI网络、WI-MAX网络、蜂窝电话网络(例如全球移动通信系统(GSM)网络、长期演进(LTE)网络或5G网络)、或其他合适的无线网络或这些中两个或更多个的组合进行通信。在适当的情况下,计算机系统500可以包括用于这些网络中的任何网络的任何合适的通信接口510。在适当的情况下,通信接口510可以包括一个或多个通信接口510。尽管本公开描述并说明了特定的通信接口,但是本公开考虑到了任何合适的通信接口。
在特定实施例中,总线512包括将计算机系统500的组件彼此耦合的硬件、软件或两者。作为示例而非限制,总线512可以包括加速图形端口(AGP)或其他图形总线、增强型工业标准架构(EISA)总线、前端总线(FSB)、超传输(HT)互连、工业标准架构(ISA)总线、INFINIBAND互连、低引脚数(LPC)总线、内存总线、微通道架构(MCA)总线、外围组件互连(PCI)总线、PCI–Express(PCIe)总线、串行高级技术附件(SATA)总线、视频电子标准协会本地(VLB)总线或其他合适的总线或这些中两个或更多个的组合。在适当的情况下,总线512可以包括一个或多个总线512。尽管本公开描述并说明了特定总线,但本公开考虑到了任何合适的总线或互连。
总之,在一个实施例中,一种方法包括:检测将流量路由到与应用相关联的服务的请求。该方法还包括:识别与该应用相关联的应用标识符并使用该应用标识符从包括在路由表中的多个标签中选择标签。标签包括一条或多条路线。该方法还包括:使用标签将流量路由到与应用相关联的服务。
在此,在适当的情况下,计算机可读非暂态存储介质或媒介可以包括一个或多个基于半导体的或其他的集成电路(IC)(例如,现场可编程门阵列(FPGA)或应用特定的IC(ASIC))、硬盘驱动器(HDD)、混合硬盘驱动器(HHD)、光盘、光盘驱动器(ODD)、磁光盘、磁光驱动器、软盘、软盘驱动器(FDD)、磁带、固态驱动器(SSD)、RAM驱动器、安全数字卡或驱动器、任何其他合适的计算机可读非暂态存储介质、或这些中两个或更多个的任何合适组合。在适当的情况下,计算机可读非暂态存储介质可以是易失性、非易失性或易失性和非易失性的组合。
除非另有明确说明或上下文另有说明,否则此处的“或”是包含性而非排他性的。因此,除非另有明确说明或上下文另有说明,否则本文中的“A或B”是指“A、B或两者”。此外,除非另有明确说明或上下文另有说明,否则“和”既指联合地又指各自地。因此,除非另有明确说明或上下文另有说明,否则本文中的“A和B”指“A和B,联合地或各自地”。
本公开的范围包括本领域普通技术人员将理解的对在此描述或说明的示例实施例的所有改变、替换、变化、变更和修改。本公开的范围不限于在此描述或说明的示例实施例。此外,虽然本公开在本文中将各个实施例描述和说明为包括特定组件、元件、特征、功能、操作或步骤,但是这些实施例中的任何一个可包括本领域普通技术人员将理解的本文任何地方描述或说明的组件、元件、特征、功能、操作或步骤中的任何一个的任何组合或排列。此外,在所附权利要求中提及装置或系统或装置或系统的组件适配为、布置为、能够、配置为、实现为、操作为或可操作为执行特定功能包括该装置、系统、组件(无论它或该特定功能)被激活、打开或解锁,只要该装置、系统或组件如此适配、布置、有能力、配置、实现、操作或可操作。此外,虽然本公开将特定实施例描述或说明为提供特定优点,但特定实施例可不提供这些优点、提供一些或所有这些优点。
此处公开的实施例仅是示例,本公开的范围不限于这些。特定实施例可包括本文公开的实施例的组件、元件、特征、功能、操作或步骤中的所有、一些或不包括这些。根据本发明的实施例在涉及方法、存储介质、系统和计算机程序产品的所附权利要求中特别公开,其中在一个权利要求类别(例如方法)中提及的任何特征可以在另一个权利要求类别(例如系统)中也要求保护。仅出于形式原因,选择了所附权利要求中的从属或引用关系。然而,也可以要求保护对先前的权利要求的审慎的引用(特别是多重从属关系)而产生的任何主题,从而公开并可要求保护权利要求及其特征的任何组合,而不管在所附权利要求中选择的从属关系如何。可以要求保护的主题不仅包括所附权利要求中提出的特征的组合,还包括权利要求中特征的任何其他组合,其中权利要求中提到的每个特征可以与权利要求中的任何其他特征或其他特征的组合结合。此外,本文描述或描绘的任何实施例和特征可以在单独的权利要求中和/或与本文描述或描绘的任何实施例或特征或与所附权利要求的任何特征的任何组合中要求保护。

Claims (23)

1.一种设备,包括:
一个或多个处理器;和
一个或多个计算机可读非暂态存储介质,耦合到所述一个或多个处理器并包括指令,所述指令当由所述一个或多个处理器执行时使所述设备执行操作,所述操作包括:
由所述设备的移动代理检测将流量路由到与应用相关联的服务的请求;
由所述移动代理识别与所述应用相关联的应用标识符;
由所述移动代理使用所述应用标识符从包含在路由表中的多个标签中选择标签,其中所述标签包括一条或多条路线;以及
由所述移动代理使用所述标签将所述流量路由到与所述应用相关联的所述服务,
其中,所述标签是通过以下操作来生成的:使用数据库中的查找将所述应用的类型和版本映射成整数,并且将所述整数合并到流标签中以生成所述标签。
2.如权利要求1所述的设备,其中:
所述标签支持具有内联安全服务的外联网服务;并且
所述内联安全服务包括以下项中的至少一项:
防火墙服务;
入侵检测服务;
入侵防御服务;或者
云访问安全代理(CASB)服务。
3.如权利要求1或2所述的设备,其中头端节点:
接收所述标签;
在策略表中维护一个或多个策略;并且
使用所述一个或多个策略和所述标签将所述流量路由到与所述应用相关联的所述服务。
4.如权利要求1所述的设备,所述操作还包括:
由所述移动代理接收域名系统(DNS)请求;以及
使用所述应用标识符将所述DNS请求映射到所述标签。
5.如权利要求1所述的设备,其中所述标签与以下项中的至少一项相关联:
软件定义广域网(SD-WAN);
虚拟私有网络(VPN);
多协议标签交换(MPLS)标签;
网络服务标头(NSH)标签;或者
通用网络虚拟化封装(GENEVE)隧道标签。
6.如权利要求1所述的设备,其中所述服务与以下项中的至少一项相关联:
公共基础设施即服务(IaaS);
私有IaaS;
公共软件即服务(SaaS);
私有SaaS;或者
私有企业服务。
7.如权利要求1所述的设备,所述操作还包括:
由所述移动代理维护包括一个或多个策略的策略表;以及
由所述移动代理使用所述一个或多个策略将与所述应用相关联的所述应用标识符映射到所述标签。
8.一种方法,包括:
检测将流量路由到与应用相关联的服务的请求;
识别与所述应用相关联的应用标识符;
使用所述应用标识符从包含在路由表中的多个标签中选择标签,其中所述标签包括一条或多条路线;以及
使用所述标签将所述流量路由到与所述应用相关联的所述服务,
其中,所述标签是通过以下操作来生成的:使用数据库中的查找将所述应用的类型和版本映射成整数,并且将所述整数合并到流标签中以生成所述标签。
9.如权利要求8所述的方法,其中:
所述标签支持具有内联安全服务的外联网服务;并且
所述内联安全服务包括以下中的至少一项:
防火墙服务;
入侵检测服务;
入侵防御服务;或者
云访问安全代理(CASB)服务。
10.如权利要求8或9所述的方法,其中头端节点:
接收所述标签;
在策略表中维护一个或多个策略;并且
使用所述一个或多个策略和所述标签将所述流量路由到与所述应用相关联的所述服务。
11.如权利要求8所述的方法,还包括:
接收域名系统(DNS)请求;以及
使用所述应用标识符将所述DNS请求映射到所述标签。
12.如权利要求8所述的方法,其中所述标签与以下项中的至少一项相关联:
软件定义广域网(SD-WAN);
虚拟私有网络(VPN);
多协议标签交换(MPLS)标签;
网络服务标头(NSH)标签;或者
通用网络虚拟化封装(GENEVE)隧道标签。
13.如权利要求8所述的方法,其中所述服务与以下项中的至少一项相关联:
公共基础设施即服务(IaaS);
私有IaaS;
公共软件即服务(SaaS);
私有SaaS;或者
私有企业服务。
14.如权利要求8所述的方法,还包括:
维护包括一个或多个策略的策略表;以及
使用所述一个或多个策略将与所述应用相关联的所述应用标识符映射到所述标签。
15.一种或多种计算机可读非暂态存储介质,包含指令,所述指令当被处理器执行时使所述处理器执行操作,所述操作包括:
检测将流量路由到与应用相关联的服务的请求;
识别与所述应用相关联的应用标识符;
使用所述应用标识符从包含在路由表中的多个标签中选择标签,其中所述标签包括一条或多条路线;和
使用所述标签将所述流量路由到与所述应用相关联的服务,
其中,所述标签是通过以下操作来生成的:使用数据库中的查找将所述应用的类型和版本映射成整数,并且将所述整数合并到流标签中以生成所述标签。
16.如权利要求15所述的一种或多种计算机可读非暂态存储介质,其中:
所述标签支持具有内联安全服务的外联网服务;并且
所述内联安全服务包括以下项中的至少一项:
防火墙服务;
入侵检测服务;
入侵防御服务;或者
云访问安全代理(CASB)服务。
17.如权利要求15或16所述的一种或多种计算机可读非暂态存储介质,其中头端节点:
接收所述标签;
在策略表中维护一个或多个策略;并且
使用所述一个或多个策略和所述标签将所述流量路由到与所述应用相关联的所述服务。
18.如权利要求15所述的一种或多种计算机可读非暂态存储介质,所述操作还包括:
由所述移动代理接收域名系统(DNS)请求;以及
使用所述应用标识符将所述DNS请求映射到所述标签。
19.如权利要求15所述的一种或多种计算机可读非暂态存储介质,其中所述标签与以下项中的至少一项相关联:
软件定义广域网(SD-WAN);
虚拟私有网络(VPN);
多协议标签交换(MPLS)标签;
网络服务标头(NSH)标签;或者
通用网络虚拟化封装(GENEVE)隧道标签。
20.如权利要求15所述的一种或多种计算机可读非暂态存储介质,其中所述服务与以下项中的至少一项相关联:
公共基础设施即服务(IaaS);
私有IaaS;
公共软件即服务(SaaS);
私有SaaS;或者
私有企业服务。
21.一种设备,包括:
用于检测将流量路由到与应用相关联的服务的请求的装置;
用于识别与所述应用相关联的应用标识符的装置;
用于使用所述应用标识符从包含在路由表中的多个标签中选择标签的装置,其中所述标签包括一条或多条路线,并且所述标签是通过以下操作来生成的:使用数据库中的查找将所述应用的类型和版本映射成整数,并且将所述整数合并到流标签中以生成所述标签;和
用于使用所述标签将所述流量路由到与所述应用相关联的服务的装置。
22.如权利要求21所述的设备,还包括用于实施根据权利要求9至14中任一项所述的方法的装置。
23.一种计算机可读介质,包括指令,所述指令当由计算机执行时使所述计算机执行如权利要求8至14中任一项所述的方法的步骤。
CN202080048806.1A 2019-06-06 2020-05-29 使用标签路由网络流量的系统和方法 Active CN114080784B (zh)

Applications Claiming Priority (7)

Application Number Priority Date Filing Date Title
US201962858207P 2019-06-06 2019-06-06
US201962858245P 2019-06-06 2019-06-06
US62/858,207 2019-06-06
US62/858,245 2019-06-06
US16/750,139 US11277337B2 (en) 2019-06-06 2020-01-23 Systems and methods for routing network traffic using labels
US16/750,139 2020-01-23
PCT/US2020/035045 WO2020247248A1 (en) 2019-06-06 2020-05-29 Systems and methods for routing network traffic using labels

Publications (2)

Publication Number Publication Date
CN114080784A CN114080784A (zh) 2022-02-22
CN114080784B true CN114080784B (zh) 2023-07-25

Family

ID=73650140

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202080048806.1A Active CN114080784B (zh) 2019-06-06 2020-05-29 使用标签路由网络流量的系统和方法

Country Status (8)

Country Link
US (1) US11277337B2 (zh)
EP (1) EP3981119A1 (zh)
JP (1) JP7439137B2 (zh)
KR (1) KR20220016979A (zh)
CN (1) CN114080784B (zh)
AU (1) AU2020287848A1 (zh)
CA (1) CA3142937A1 (zh)
WO (1) WO2020247248A1 (zh)

Families Citing this family (9)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
FR3093837A1 (fr) * 2019-03-14 2020-09-18 Orange Mitigation d’attaques informatiques
US10938717B1 (en) * 2019-09-04 2021-03-02 Cisco Technology, Inc. Policy plane integration across multiple domains
US11271777B2 (en) 2019-09-24 2022-03-08 Pribit Technology, Inc. System for controlling network access of terminal based on tunnel and method thereof
US11652801B2 (en) 2019-09-24 2023-05-16 Pribit Technology, Inc. Network access control system and method therefor
US11381557B2 (en) * 2019-09-24 2022-07-05 Pribit Technology, Inc. Secure data transmission using a controlled node flow
US11349932B2 (en) 2020-06-30 2022-05-31 Cisco Technology, Inc. Policy-based connection provisioning using domain name system (DNS) requests
US11463343B2 (en) * 2020-10-07 2022-10-04 Hewlett Packard Enterprise Development Lp SDWAN overlay routing service
CN112995310B (zh) * 2021-02-10 2023-02-21 中国工商银行股份有限公司 基于自定义路由的多分层调用灰度发布方法及装置
US11861373B2 (en) * 2021-10-05 2024-01-02 Oracle International Corporation Techniques for providing cloud services on demand

Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2013172819A1 (en) * 2012-05-15 2013-11-21 Siemens Enterprise Communications Gmbh & Co. Kg Method and apparatus for high performance low latency real time notification delivery
EP2154834B1 (en) * 2008-08-14 2017-10-04 Juniper Networks, Inc. Routing device having integrated MPLS-Aware firewall

Family Cites Families (15)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2002024211A (ja) * 2000-06-30 2002-01-25 Hitachi Ltd 文書管理方法およびシステム並びにその処理プログラムを格納した記憶媒体
WO2007048023A2 (en) * 2005-10-22 2007-04-26 Revnx, Inc. A method and system for device mobility using application label switching in a mobile communication network
CN103516610B (zh) * 2012-06-18 2017-12-15 华为技术有限公司 业务处理方法、设备和系统
US9246874B2 (en) * 2012-06-29 2016-01-26 Verizon Patent And Licensing Inc. Virtual domain name system
US9274843B2 (en) * 2012-09-14 2016-03-01 Ca, Inc. Multi-redundant switchable process pooling for cloud it services delivery
JP5993817B2 (ja) 2013-08-01 2016-09-14 日本電信電話株式会社 キャリア網における経路制御システム及び方法
US9369435B2 (en) 2013-09-30 2016-06-14 Cisco Technology, Inc. Method for providing authoritative application-based routing and an improved application firewall
CN104702502B (zh) * 2013-12-09 2019-11-26 中兴通讯股份有限公司 网络路径计算方法及装置
WO2015100530A1 (zh) 2013-12-30 2015-07-09 华为技术有限公司 一种业务路由的方法、设备及系统
US10652798B2 (en) * 2014-11-14 2020-05-12 Motorola Mobility Llc Method and device for routing traffic of applications installed on a mobile device
US10320739B2 (en) * 2014-12-12 2019-06-11 Donuts Inc. Communication using DNS repurposing
JP6367732B2 (ja) 2015-02-13 2018-08-01 日本電信電話株式会社 転送装置及び転送方法
KR102264437B1 (ko) * 2015-03-09 2021-06-15 삼성전자 주식회사 웹 서비스 제공 방법 및 장치
US10637889B2 (en) * 2015-07-23 2020-04-28 Cisco Technology, Inc. Systems, methods, and devices for smart mapping and VPN policy enforcement
US11489943B2 (en) * 2019-02-13 2022-11-01 Red Hat, Inc. Automatic version routing among multiple instances of an application

Patent Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
EP2154834B1 (en) * 2008-08-14 2017-10-04 Juniper Networks, Inc. Routing device having integrated MPLS-Aware firewall
WO2013172819A1 (en) * 2012-05-15 2013-11-21 Siemens Enterprise Communications Gmbh & Co. Kg Method and apparatus for high performance low latency real time notification delivery

Also Published As

Publication number Publication date
EP3981119A1 (en) 2022-04-13
CA3142937A1 (en) 2020-12-10
KR20220016979A (ko) 2022-02-10
WO2020247248A1 (en) 2020-12-10
JP7439137B2 (ja) 2024-02-27
CN114080784A (zh) 2022-02-22
JP2022537645A (ja) 2022-08-29
AU2020287848A1 (en) 2022-02-03
US20200389393A1 (en) 2020-12-10
US11277337B2 (en) 2022-03-15

Similar Documents

Publication Publication Date Title
CN114080784B (zh) 使用标签路由网络流量的系统和方法
US20220174042A1 (en) Network Architecture for Cloud Computing Environments
US11799831B2 (en) Intelligent service layer for separating application from physical networks and extending service layer intelligence over IP across the internet, cloud, and edge networks
US11129023B2 (en) Systems and methods for distributing SD-WAN policies
US20170264622A1 (en) Providing a virtual security appliance architecture to a virtual cloud infrastructure
JP7012896B1 (ja) クラウドベースのセキュリティサービスのための大規模なローカル化
US8713628B2 (en) Method and system for providing cloud based network security services
US11533197B2 (en) Network layer performance and security provided by a distributed cloud computing network
CN114051714B (zh) 用于生成上下文标签的系统和方法
WO2019246331A1 (en) System and method for creating a secure hybrid overlay network
US20200351306A1 (en) Configuring security policies in response to detecting a pivot of an intrusion
EP4066454A1 (en) Group-based policies for inter-domain traffic
EP3949329A1 (en) Systems and methods for determining secure network paths
US20240056388A1 (en) Supporting overlapping network addresses universally
JP7496414B2 (ja) ドメイン間トラフィックのグループベースのポリシー
US20240022579A1 (en) System to terminate malicious process in a data center

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