CN106464742A - 用于基于云的服务交换的可编程网络平台 - Google Patents

用于基于云的服务交换的可编程网络平台 Download PDF

Info

Publication number
CN106464742A
CN106464742A CN201680001701.4A CN201680001701A CN106464742A CN 106464742 A CN106464742 A CN 106464742A CN 201680001701 A CN201680001701 A CN 201680001701A CN 106464742 A CN106464742 A CN 106464742A
Authority
CN
China
Prior art keywords
service
cloud
network
cloud service
provider
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
Application number
CN201680001701.4A
Other languages
English (en)
Other versions
CN106464742B (zh
Inventor
拉温德拉·拉奥
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.)
Equinix Inc
Original Assignee
Equinix 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 Equinix Inc filed Critical Equinix Inc
Priority to CN202010138860.7A priority Critical patent/CN111371669B/zh
Priority claimed from PCT/US2016/031943 external-priority patent/WO2016183253A1/en
Publication of CN106464742A publication Critical patent/CN106464742A/zh
Application granted granted Critical
Publication of CN106464742B publication Critical patent/CN106464742B/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
    • H04L12/00Data switching networks
    • H04L12/28Data switching networks characterised by path configuration, e.g. LAN [Local Area Networks] or WAN [Wide Area Networks]
    • H04L12/46Interconnection of networks
    • H04L12/4633Interconnection of networks using encapsulation techniques, e.g. tunneling
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L12/00Data switching networks
    • H04L12/28Data switching networks characterised by path configuration, e.g. LAN [Local Area Networks] or WAN [Wide Area Networks]
    • H04L12/46Interconnection of networks
    • H04L12/4641Virtual LANs, VLANs, e.g. virtual private networks [VPN]
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L41/00Arrangements for maintenance, administration or management of data switching networks, e.g. of packet switching networks
    • H04L41/08Configuration management of networks or network elements
    • H04L41/0803Configuration setting
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L41/00Arrangements for maintenance, administration or management of data switching networks, e.g. of packet switching networks
    • H04L41/08Configuration management of networks or network elements
    • H04L41/0803Configuration setting
    • H04L41/0806Configuration setting for initial configuration or provisioning, e.g. plug-and-play
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L41/00Arrangements for maintenance, administration or management of data switching networks, e.g. of packet switching networks
    • H04L41/08Configuration management of networks or network elements
    • H04L41/0803Configuration setting
    • H04L41/0813Configuration setting characterised by the conditions triggering a change of settings
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L41/00Arrangements for maintenance, administration or management of data switching networks, e.g. of packet switching networks
    • H04L41/12Discovery or management of network topologies
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L41/00Arrangements for maintenance, administration or management of data switching networks, e.g. of packet switching networks
    • H04L41/20Network management software packages
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L41/00Arrangements for maintenance, administration or management of data switching networks, e.g. of packet switching networks
    • H04L41/40Arrangements for maintenance, administration or management of data switching networks, e.g. of packet switching networks using virtualisation of network functions or resources, e.g. SDN or NFV entities
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L41/00Arrangements for maintenance, administration or management of data switching networks, e.g. of packet switching networks
    • H04L41/50Network service management, e.g. ensuring proper service fulfilment according to agreements
    • H04L41/5003Managing SLA; Interaction between SLA and QoS
    • H04L41/5019Ensuring fulfilment of SLA
    • H04L41/5025Ensuring fulfilment of SLA by proactively reacting to service quality change, e.g. by reconfiguration after service quality degradation or upgrade
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L41/00Arrangements for maintenance, administration or management of data switching networks, e.g. of packet switching networks
    • H04L41/50Network service management, e.g. ensuring proper service fulfilment according to agreements
    • H04L41/5041Network service management, e.g. ensuring proper service fulfilment according to agreements characterised by the time relationship between creation and deployment of a service
    • H04L41/5051Service on demand, e.g. definition and deployment of services in real time
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L45/00Routing or path finding of packets in data switching networks
    • H04L45/58Association of routers
    • H04L45/586Association of routers of virtual routers
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L45/00Routing or path finding of packets in data switching networks
    • H04L45/64Routing or path finding of packets in data switching networks using an overlay routing layer
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L49/00Packet switching elements
    • H04L49/10Packet switching elements characterised by the switching fabric construction
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L49/00Packet switching elements
    • H04L49/25Routing or path finding in a switch fabric
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/01Protocols
    • H04L67/10Protocols in which an application is distributed across nodes in the network
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/01Protocols
    • H04L67/10Protocols in which an application is distributed across nodes in the network
    • H04L67/1097Protocols in which an application is distributed across nodes in the network for distributed storage of data in networks, e.g. transport arrangements for network file system [NFS], storage area networks [SAN] or network attached storage [NAS]
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/14Session management
    • H04L67/142Managing session states for stateless protocols; Signalling session states; State transitions; Keeping-state mechanisms
    • 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/51Discovery or management thereof, e.g. service location protocol [SLP] or web services
    • 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/53Network services using third party service providers
    • 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/56Provisioning of proxy services
    • H04L67/566Grouping or aggregating service requests, e.g. for unified processing
    • 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
    • H04L41/00Arrangements for maintenance, administration or management of data switching networks, e.g. of packet switching networks
    • H04L41/50Network service management, e.g. ensuring proper service fulfilment according to agreements
    • H04L41/508Network service management, e.g. ensuring proper service fulfilment according to agreements based on type of value added network service under agreement
    • H04L41/5096Network service management, e.g. ensuring proper service fulfilment according to agreements based on type of value added network service under agreement wherein the managed service relates to distributed or central networked applications
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L69/00Network arrangements, protocols or services independent of the application payload and not provided for in the other groups of this subclass
    • H04L69/18Multiprotocol handlers, e.g. single devices capable of handling multiple protocols

Landscapes

  • Engineering & Computer Science (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Computer Security & Cryptography (AREA)
  • Quality & Reliability (AREA)
  • Data Exchanges In Wide-Area Networks (AREA)

Abstract

在一些示例中,网络数据中心包括:基于云的服务交换点,包括网络,该基于云的服务交换点由操作网络数据中心的云交换提供商操作;和可编程网络平台,包括至少一个可编程处理器,被配置成:接收指定由相应的云服务提供商操作的相应的云服务提供商网络所提供的多个云服务的服务请求,其中,服务请求还指定用于多个云服务的拓扑;以及响应于服务请求来供应基于云的服务交换点,从而根据用于多个云服务的拓扑转发用于多个云服务的服务流量。

Description

用于基于云的服务交换的可编程网络平台
本申请要求2015年5月12日提交的美国临时申请第62/160,547的权益,该申请的全部内容以引证方式结合于此。本申请涉及美国专利申请第15/001,766;15/001,822;15/001,839;15/001,862;15/001,875和15/001,919;每个提交于2016年1月20日,各个申请的全部内容以引证方式结合于此。
技术领域
本发明涉及计算机网络,并且更具体地涉及有利于在云服务客户和云服务提供商之间的服务供应和传递。
背景技术
云计算是指经由网络(诸如互联网)可访问的动态可扩展的计算资源的用途。该计算资源常常被称为“云”,为使用者提供一个或多个服务。可以根据服务类型分类这些服务,该服务类型可以包括(例如)应用/软件、平台、基础设施、虚拟化和服务器和数据存储。服务类型的名称通常加在短语“即服务(as-a-Service)”前,由此使得例如应用/软件和基础设施的传递可以称为软件即服务(SaaS)、平台即服务(PaaS)和基础设施即服务(IaaS)。
术语“基于云的服务”或者更简单的“云服务”不仅指由云提供的服务,而且指服务提供的形式,其中云客户与云服务提供商签订用于在线传递由云提供的服务的合同。云服务提供商管理公共、私有或混合云,以有利于将云服务在线传递给一个或多个云客户。
发明内容
一般来讲,本公开描述用于动态编程基于云的服务交换(“云交换”)以响应地和可靠地履行服务请求的可编程网络平台,所述服务请求封装针对由云交换和/或耦合到云交换的云服务提供商提供的服务的业务要求。因此,如本文所述的可编程网络平台可以根据明确定义的服务策略、服务质量、服务水平协议和成本并且进一步根据用于业务水平服务的服务拓扑来在异构云服务提供商之间编配业务水平服务。
可编程网络平台使得支配云交换的云服务提供商能够动态地配置和管理云交换,以便(例如)有利于虚拟连接以便从多个云服务提供商到一个或多个云客户的云服务传递。云交换可以使云客户绕过公共互联网直接连接到云服务提供商,以便改进性能、降低成本、增加连接的安全性和隐私、利用云计算用于附加应用。这样,例如企业、网络运营商和SaaS客户可以至少在一些方面将云服务与其内部应用集成,如同此类服务是它们所拥有数据中心网络的一部分或者以其他方式直接耦合到它们所拥有的数据中心网络。
在一些方面,本文所述的可编程网络平台根据分布式模型操作,其中集中式网络控制器(CNC)以网络字段单元(NFU)的形式管理全局分布式和智能逻辑。CNC可以经由接口接收业务服务请求并将该业务服务请求转换成作为云交换内的业务服务将要被传递和保证的业务例示参数和网络供应参数。因此,CNC操作成可编程网络平台的中央智能处理单元。可编程网络平台的每个例示可以具有这种智能逻辑(即,CNC)的一个逻辑实例。CNC可以使用监视、分析、计划和执行(MAPE)循环方法来提供服务保证,并且被实现以确保服务所遵守的服务水平协议。
各种NFU分布在支配可编程网络平台的云交换提供商的全局分布式云交换点中。每个NFU从CNC接收网络例示命令/参数,并实例化和配置传递服务所需要的网络资源。NFU具有根据CNC请求传递和保证网络服务的智能。在一些方面,如果服务请求需要,则UFN还具有与第三方编配系统通信的能力。UFN应用独立的MAPE循环以确保由该单元传递的网络服务保证服务的生命周期。
在一些方面,本文描述的可编程网络平台可以将涉及本地组件和第三方组件这两者的编配服务提供成单个服务,同时确保策略、安全性和SLA一致性。可编程网络平台可以使用第三方(或“伙伴”)编配模块(或“插件”)来编配第三方服务组件。第三方编配模块允许第三方编配系统向可编程网络平台注册其能力(例如,服务目录、策略、安全性和SLA)。作为服务所有者的云服务提供商可以使用可编程网络平台经由对应第三方编配模块来引导第三方编配系统作为用于服务传递的工作流的一部分,以便支持并且传递用于服务的第三方服务。
在一些方面,本文描述的可编程网络平台可以供应云交换以传递由多个不同的云服务提供商提供的多个构成服务组成的服务。这些构成服务中的每一个在本文称为“微服务”,因为它是应用于服务流量的整体服务的一部分。即,可以将多个微服务应用到在特定“布置”、“排序”或“拓扑”中的服务流量,以便组成服务流量的整体服务。微服务本身可以由云服务提供商应用或提供。
可编程网络平台可以这样在异构云服务提供商之间编配业务水平服务。可编程网络平台暴露接口,门户、控制台(例如,用户界面应用)或其他应用可以通过该接口定义由不同云提供商(或“云供应商”)提供的微服务组成的协同服务拓扑的服务策略、质量、SLA和成本。作为整体端到端业务服务定义的一部分,每个微服务可以具有对应的服务策略、质量、SLA和成本。当被提供有用于具有多个组件微服务的端到端服务的服务定义时,可编程网络平台编配云交换内的每个微服务并且根据所定义的拓扑将微服务联结在一起以便具体化在云交换数据平面(例如,用于云交换的边缘网络)内的端到端服务。因此,代表和为了云交换的客户利益,云交换在数据平面中互连由相应云服务提供商所提供的微服务。这样做,云交换提供商可以促进在云服务提供商和客户之间的业务交易。
在一些方面,当被提供有用于具有多个组件微服务的端到端服务的服务定义时,本文所描述的可编程网络平台可以根据定义的拓扑编配云交换内的每个微服务并且将微服务联结在一起,以便在云交换内具体化端到端服务。根据本公开的技术,用于端到端服务的服务定义可以使得可编程网络平台的用户不仅以此类方式定义端到端服务而且定义服务拓扑,以便确保微服务链的正确排序。封装在用于服务定义的数据模型中的数据还可以包括用于商业目的(例如,计费和SLA保证)的授权服务所有者。“用户”可以指客户、云交换提供商或作为授权服务所有者的云服务提供商。
通过使用本文所述的用于多个云、多个服务的服务定义的数据模型,可以使得可编程网络平台(和/或其他编配系统,诸如软件定义网络(SDN)控制器或编配器)能够将服务请求识别为对于组成整个服务的一组微服务的请求。在一些示例中,服务定义包括若干部分,其使得可编程网络平台能够提供链接若干服务(无论是由云交换提供商提供的本地服务还是由一个或多个云服务提供商提供的云服务的服务)。即,支配可编程网络平台的云交换提供商能够提供链接服务,当给定用于多个微服务的相应定义和用于多个微服务的拓扑(或序列)时,该链接服务根据拓扑互连微服务以有利于端到端的服务。因此,数据模型提供了数据,借助该数据,可编程网络平台可以有效地实例化所请求的服务链并且还确保因此呈现的服务链接在正确拓扑中。数据模型可以由可编程网络平台划分成一个或多个服务请求,用于云交换的本地可编程网络平台可以将该一个或多个服务请求发布到其他服务编配系统以便完成。其他服务编配系统可以包括例如用于云服务提供商的SDN控制器和/或编配系统,其有利于NFV实例化和路由到NFV例示/从NFV实例路由的NFV例示和服务流量。
在一些示例中,一种方法包括,由用于在数据中心内的基于云的服务交换点的可编程网络平台接收包括根据数据模型的服务定义的服务请求,其中该服务定义指定由相应云服务提供商操作的相应云服务提供商网络提供的多个云服务,其中该服务请求还指定用于多个云服务的拓扑;和由可编程网络平台响应于服务请求而供应基于云的服务交换点,以根据用于多个云服务的拓扑转发用于多个云服务的服务流量。
在一些示例中,网络数据中心包括基于云的服务交换点,其包括网络、由操作网络数据中心的云交换提供商操作;以及可编程网络平台,其包括至少一个可编程处理器,其被配置成接收包括根据数据模型的服务定义的服务请求,其中服务定义指定由相应云服务提供商操作的相应云服务提供商网络提供的多个云服务,其中服务请求还指定用于多个云服务的拓扑;并且其中服务定义根据公共微服务定义指定多个云服务中的每个;并且响应于服务请求而供应基于云的服务交换点以根据用于多个云服务的拓扑转发用于多个云服务的服务流量。
在一些示例中,一种方法包括,由用于在数据中心内的基于云的服务交换点的可编程网络平台接收指定由相应云服务提供商操作的相应云服务提供商网络提供的多个云服务的服务请求,其中该服务请求还指定用于多个云服务的拓扑;和由可编程网络平台响应于服务请求而供应基于云的服务交换点以根据用于多个云服务的拓扑转发用于多个云服务的服务流量。
在一些示例中,网络数据中心包括基于云的服务交换点,其包括网络、由操作网络数据中心的云交换提供商操作;以及可编程网络平台,其包括至少一个可编程处理器,其被配置成接收指定由相应云服务提供商操作的相应云服务提供商网络提供的多个云服务的服务请求,其中所述服务请求还指定用于所述多个云服务的拓扑;并且响应于所述服务请求而供应基于云的服务交换点以根据用于多个云服务的拓扑转发用于多个云服务的服务流量。
在一些示例中,可编程网络平台包括至少一个可编程处理器;第三方编配模块,其被配置成由至少一个可编程处理器执行以与云服务提供商编配系统通信;以及集中式网络控制器,其被配置成由至少一个可编程处理器执行以接收服务请求,该服务请求指定由云服务提供商网络所应用的云服务,该云服务提供商网络由云服务提供商在由云服务提供商操作的云交换的网络上操作,其中集中式网络控制器还被配置成响应于服务请求调用第三方编配模块来与云服务提供商编配系统通信,以请求云服务提供商在云交换的网络上编配云服务,并且其中,集中式网络控制器在数据中心内供应云交换的网络,以将云服务从附接到云交换的网络的云服务提供商网络传递到附接至云交换的网络的客户网络。
在一些示例中,一种方法包括,由可编程网络平台的集中式网络控制器接收指定云服务的服务请求,该云服务由云服务提供商操作的云服务提供商网络在由云交换提供商操作的云交换的网络上应用;由集中式网络控制器响应于服务请求而调用第三方编配模块以与云服务提供商编配系统通信,以请求云服务提供商在云交换的网络上编配云服务;以及由集中式网络控制器将在数据中心内的云交换的网络从附接到基于云的服务交换点的云服务提供商网络供应到附接于基于云的服务交换点的客户网络。
在一些示例中,网络数据中心包括包含网络的云交换,其由云交换提供商操作;和包括至少一个可编程处理器的可编程网络平台;与云服务提供商编配系统通信的第三方编配模块;以及集中式网络控制器,其被配置成由至少一个可编程处理器执行以接收服务请求,该服务请求指定由云服务提供商网络应用的云服务,该云服务提供商网络由云服务提供商在云交换的网络上操作,其中集中式网络控制器还被配置成响应于服务请求调用第三方编配模块来与云服务提供商编配系统通信,以请求云服务提供商在云交换的网络上编配云服务,并且其中,集中式网络控制器供应云交换的网络以将云服务从附接到云交换的网络的云服务提供商网络传递到附接于云交换的网络的客户网络。
在一些示例中,一种方法包括,由集中式网络控制(CNC)系统提供软件接口以接收服务请求,该服务请求用于由CNC系统控制的一个或多个网络数据中心的边缘网络内的服务配置;由CNC系统并且经由软件接口接收服务请求,以在网络数据中心的边缘网络内配置服务,其中,在一个或多个网络数据中心内的边缘网络通过一个或多个网络数据中心的一个或多个交换结构连接;由CNC系统并基于服务请求生成指定一个或多个服务要求的网络服务定义以实现服务;由CNC系统并基于网络服务定义来确定能够服务于该服务请求的至少一个网络字段单元,其中,网络字段单元控制边缘网络的一部分,其中,网络服务定义可由至少一个网络字段单元使用以配置边缘网络的一部分从而提供服务;以及由CNC系统发送网络服务定义到至少一个网络字段单元,以在边缘网络的一部分处配置服务的至少一个网络服务。
在一些示例中,集中式网络控制(CNC)系统包括一个或多个计算机处理器;和包含指令的存储器,当由一个或多个计算机处理器执行时该指令使得一个或多个计算机处理器提供软件接口以接收服务请求,该服务请求针对由CNC系统控制的一个或多个网络数据中心的边缘网络内的服务配置;经由软件接口接收服务请求以在网络数据中心的边缘网络内配置服务,其中,在一个或多个网络数据中心内的边缘网络通过一个或多个网络数据中心的一个或多个交换结构连接;基于服务请求生成指定一个或多个服务要求的网络服务定义以实现服务;基于网络服务定义来确定能够服务于该服务请求的至少一个网络字段单元,其中,网络字段单元控制边缘网络的一部分,其中网络服务定义可由至少一个网络字段单元使用以配置边缘网络的一部分从而提供服务;以及发送网络服务定义到至少一个网络字段单元以在边缘网络的一部分处配置服务的至少一个网络服务。
在一些示例中,一种方法包括,由至少一个网络字段单元接收指定一个或多个服务要求的网络服务定义以在一个或多个网络数据中心的边缘网络的一部分内实现网络服务,其中,网络服务定义可由至少一个网络字段单元用于配置边缘网络的一部分以提供网络服务,其中,在一个或多个网络数据中心内的边缘网络的一部分通过一个或多个网络数据中心的一个或多个交换结构连接;由网络字段单元并且基于网络服务定义来确定可用于提供服务的边缘网络的一个或多个特定物理设备;以及由网络字段单元配置边缘网络的一个或多个特定物理设备以提供网络服务。
在一些示例中,网络字段单元包括一个或多个计算机处理器;以及包含指令的存储器,当由一个或多个计算机处理器执行时所述指令使一个或多个计算机处理器接收指定一个或多个服务要求的网络服务定义,从而在一个或多个网络数据中心的边缘网络的一部分内实现网络服务,其中网络服务定义可由至少一个网络字段单元使用来配置边缘网络的一部分以提供网络服务,其中在一个或多个网络数据中心内的边缘网络的所述部分通过一个或多个网络数据中心的一个或多个交换结构连接;基于网络服务定义确定可用于提供服务的边缘网络的一个或多个特定的物理设备;并且
配置边缘网络的一个或多个特定物理设备以提供网络服务。
在一些示例中,一种方法包括,由可编程网络平台(PNP)提供软件接口以接收服务请求,该服务请求针对由PNP控制的一个或多个网络数据中心的边缘网络内的服务配置;由PNP系统并且经由软件接口接收服务请求以在一个或多个网络数据中心的边缘网络内配置网络服务,其中在一个或多个网络数据中心内的边缘网络通过一个或多个网络数据中心的一个或多个交换结构连接;由PNP系统并基于服务请求生成指定一个或多个服务要求的网络服务定义以实现服务;由PNP并基于网络服务定义来确定能够服务于该服务请求的至少一个网络字段单元,其中网络字段单元控制边缘网络的一部分,其中网络服务定义可由至少一个网络字段单元使用以配置边缘网络的一部分从而提供服务;由至少一个网络字段单元和基于网络服务定义确定可用于提供服务的边缘网络的一个或多个特定物理设备;和由至少一个网络字段单元配置边缘网络的一个或多个特定物理设备以提供服务。
在一些示例中,可编程网络平台(PNP)包括一个或多个计算机处理器;以及包含指令的存储器,当由一个或多个计算机处理器执行时所述指令使得一个或多个计算机处理器提供软件接口以接收针对在PNP控制的一个或多个网络数据中心的边缘网络内的服务的配置;接收服务请求以在一个或多个网络数据中心的边缘网络内配置网络服务,其中在一个或多个网络数据中心内的边缘网络通过一个或多个网络数据中心的一个或多个交换结构连接;生成指定一个或多个服务要求以实现网络服务的网络服务定义;由PNP并基于网络服务定义来确定能够服务于该服务请求的至少一个网络字段单元,其中网络字段单元控制边缘网络的一部分,其中网络服务定义可由至少一个网络字段单元使用以配置边缘网络的一部分以提供服务;基于网络服务定义来确定可用于提供服务的边缘网络的一个或多个特定的物理设备;以及配置边缘网络的一个或多个特定物理设备以提供服务。
本发明的一个或多个实施例的细节在下面的附图和说明书中阐述。本发明的其它特征、目的和优点通过说明书和附图以及权利要求书将是显而易见的。
附图说明
图1为框图,其示出提供用于基于云的服务交换的操作环境的数据中心的高级视图。
图2为框图,其示出根据本文所述技术的提供用于基于云的服务交换的操作环境的数据中心的高级视图。
图3A至图3B是框图,其示出根据本公开中描述的技术的用于云交换的可编程网络平台的示例网络基础设施和服务供应的框图,所述云交换聚合多个云服务提供商的云服务以便供应到云交换提供商的客户,并且将多个客户的访问聚合到一个或多个云服务提供商。
图4为根据本文所述技术的基于数据中心的云交换点的示例的框图,其中云交换点的路由器由具有VPN路由和转发实例的可编程网络平台配置以便从多个云服务提供商网络到客户网络路由和转发聚合的服务流量。
图5是示出用于软件控制的网络的平台的框图,该平台根据本公开的一种或多种技术操作。
图6是示出根据本公开的一种或多种技术的示例服务供应引擎的框图。
图7是示出根据本公开的一种或多种技术的示例服务保证引擎的框图。
图8是示出根据本公开的一种或多种技术的示例网络供应引擎的框图。
图9是示出根据本公开的一种或多种技术的示例网络保证引擎的框图。
图10是示出根据本公开的一种或多种技术的可编程网络平台的框图。
图11是示出根据本公开的一种或多种技术的请求服务的示例用户界面的框图。
图12是示出根据本公开的一种或多种技术的显示用于服务的成本估计的示例用户界面的框图。
图13是示出根据本公开中描述的技术操作的用于可编程网络平台的示例组件的概念图。
图14A是示出可编程边缘网络的示例配置的框图,该可编程边缘网络已经被配置成将多个本地服务应用到云服务流量,该云服务流量由云交换从多个云服务提供商聚合以便传递到客户。
图14B是示出可编程边缘网络的示例配置的框图,该可编程边缘网络已经被配置成提供由相应云服务提供商应用的多个构成的微服务的序列的端到端服务。
图15是示出根据本公开中描述的技术使用可编程网络平台对云交换进行编程的组件之间的接口的概念图。
图16是示出根据本公开中描述的技术的包含接口的可编程网络平台的框图,外部应用可以通过该接口配置云交换以有利于传递来自云服务提供商的云服务。
图17是示出根据本公开的一种或多种技术操作的计算设备的一个示例的进一步细节的框图。
贯穿附图和文本,相同参考标号指代相同元件。
具体实施方式
一般来讲,本公开描述用于实时配置和管理基于云的服务交换(“云交换”)的可编程网络平台。如本文所述,互连平台为交换客户(例如企业、网络运营商和SaaS客户)全球性提供与多个云服务提供商(CSP)的安全、专用和虚拟连接。多个CSP通过在云交换中具有至少一个可访问端口来参与云交换,客户可以通过这些端口分别连接到由CSP提供的一个或多个云服务。
根据本文描述的各种示例,描述了云交换,其允许任何客户的专用网络在公共点直接交叉连接到任何其他客户,从而允许在客户网络之间的网络流量的直接交换。客户可以包括由一个或多个云服务提供商提供的云服务的网络运营商(或网络服务提供商)、企业和其他用户。
图1示出了根据本文所描述技术的具有提供多个云交换点的基于城域的云交换的网络系统2的概念图。基于云的服务交换100(“云交换100”)的每个基于云的服务交换点128A至128D(以下描述为“云交换点”并统称为“云交换点128”)可以表示地理上位于相同大都市区域的不同数据中心(“基于城域的”,例如在纽约州纽约市;加利福尼亚州硅谷;华盛顿州西雅图-塔科马;明尼苏达州明尼阿波利斯-圣保罗;英国的伦敦等)以提供灵活及独立的基于云的服务交换,基于云的服务客户(“云客户”)和基于云的服务提供商(“云提供商”)通过该服务交换连接以分别接收和提供云服务。在各种示例中,云交换100可以包括更多或更少的云交换点128。在一些情况下,云交换100仅包括一个云交换点128。如本文所用的,对“云交换”或“基于云的服务交换”的引用可以指云交换点。云交换提供商可以在多个不同大都市区域中部署云交换100的实例,云交换100的每个实例具有一个或多个云交换点128。
每个云交换点128包括网络基础设施和操作环境,通过该网络基础设施和操作环境,云客户108A至108D(统称为“云客户108”)从多个云服务提供商110A至110N(统称为“云服务提供商110”)接收云服务。云客户108可以经由与云交换点128之一的层3对等和物理连接直接接收基于云的服务,或者经由网络服务提供商106A至106B之一(统称为“NSP106”或者“载体106”)间接接收基于云的服务。NSP 106通过在来自一个或客户108的云交换点128和聚合层3访问中的一个或多个内维持物理存在来提供“云传送”。NSP 106可以在层3直接与一个或多个云交换点128对等,并且这样做提供间接层3连接性并对等于一个或多个客户108,客户108可以通过该连接性从云交换100获得云服务。在图1的示例中,每个云交换点128被分配不同的自主系统号(ASN)。例如,云交换点128A被分配ASN 1,云交换点128B被分配ASN 2,等等。因此,每个云交换点128为从云服务提供商110到客户108的路径向量路由协议(例如,BGP)路径中的下一跳。因此,每个云交换点128可以(虽然不是具有一个或多个广域网络链路和伴随的互联网访问和传送策略的发送网络)经由外部BGP(eBGP)或其他外部网关路由协议与多个不同自主系统对等,以便从一个或多个云服务提供商110到客户交换、聚合和路由服务流量。换句话讲,云交换点128可以使云eBGP对等关系内部化,其中服务提供商110和客户108将维持在成对基础上。相反,客户108可以配置与云交换点128的单个eBGP对等关系,并且经由云交换从一个或多个云服务提供商110接收多个云服务。虽然本文主要对于在云交换点与客户、NSP或云服务提供商网络之间对等的eBGP或其他层3路由协议进行描述,但是云交换点可以以其他方式从这些网络获知路由,诸如通过静态配置或经由路由信息协议(RIP)、开放最短路径优先(OSPF)、中间系统到中间系统(IS-IS)或其他路由分配协议。
作为以上内容的示例,客户108C被示出为与用于云交换100的云交换提供商签订合同以便经由云交换点128C直接访问层3云服务。以这种方式,例如,客户108D接收到云服务提供商110A的冗余层3连接性。相比之下,客户108C被示出为已经与用于云交换100的云交换提供商签订合同以便经由云交换点128C直接访问层3云服务并且还与NSP 106B签订合同以经由NSP 106B的传送网络访问层3云服务。客户108B被示出为已经与多个NSP 106A、106B签订合同以具有经由NSP 106A、106B的相应传送网络到云交换点128A、128B的冗余云访问。上述合同通过在NSP 106和云交换点128的交换设备内的L3对等配置以及在云交换点128内建立的L3连接(例如层3虚拟电路)而在云交换点128的网络基础设施中实例化,以将云服务提供商110网络互连到NSP 106网络和客户108网络,全部具有在云交换点128的一个或多个内提供连接性的至少一个端口。
在一些示例中,云交换100允许任何网络服务提供商(NSP)或“运营商”106A至106B(统称为“运营商106”)或包括客户108C的其他云客户中的客户108A、客户108B中的对应一个经由到任何其他客户网络和/或CSP 110中的任何一个的虚拟层2(L2)连接或层3(L3)连接交叉连接,从而允许在客户网络和CSP 110之间直接交换网络流量。
运营商106可以各自表示与传送网络相关联的网络服务提供商,通过该传送网络,运营商106的网络订户可以经由云交换100访问由CSP 110提供的云服务。
一般来讲,CSP 110的客户可以包括用于经由云交换100通过CSP 110提供此类基于云的服务的网络运营商、大型企业、管理服务提供商(MSP)以及软件即服务(SaaS)、平台aaS(PaaS)、基础设施aaS(IaaS)虚拟化aaS(VaaS)和数据存储aaS(dSaaS)客户。
以这种方式,云交换100以透明和中立方式精简和简化使CSP 110和客户(经由运营商106或直接)合作的过程。云交换100的一个示例应用为协同定位和互连数据中心,其中CSP 110和运营商106和/或客户108可以诸如通过具有可用于在数据中心内互连的一个或多个可访问端口而已经具有网络存在,其可以表示任何云交换点128。这允许参与的运营商、客户和CSP具有在相同设施内的广泛互连性选项。以这种方式,运营商/客户可以具有创建多对多互连的选项,其中仅一次性的钩接到一个或多个云交换点128。换句话讲,云交换100允许客户互连到多个CSP和云服务,而非必须在传送网络上建立独立连接以访问不同的云服务提供商或一个或多个云服务提供商的不同云服务。
根据本文所述的技术,云交换100包括用于动态地编程云交换100的可编程网络平台120以响应地及可靠地履行封装由云交换100和/或耦合到云交换100的云服务提供商110提供的服务的业务要求的服务请求。因此,如本文所述的可编程网络平台120可以根据明确定义的服务策略、服务策略质量、服务水平协议和成本并且进一步根据用于业务水平服务的服务拓扑来在异构云服务提供商110之间编配业务水平服务。
可编程网络平台120使得支配云交换100的云服务提供商能够动态地配置和管理云交换100,以便例如有利于虚拟连接以便从多个云服务提供商到一个或多个云客户的基于云的服务传递。云交换100可以使云客户108绕过公共互联网直接连接到云服务提供商110,以便改进性能、降低成本、增加连接的安全性和隐私、利用云计算用于附加应用。这样,例如企业、网络运营商和SaaS客户可以至少在一些方面将云服务与其内部应用集成,如同此类服务是云服务内部应用的自身的数据中心网络的一部分或直接耦合到云服务内部应用的自身的数据中心网络。
可编程网络平台120可以表示在云交换100的一个或多个数据中心内执行的应用,或者另选地在云提供商(例如)的后台或分支离场。可编程网络平台120可以全部或部分地分布在数据中心之间,每个数据中心与不同的云交换点128相关联以组成云交换100。虽然示出为支配单个云交换100,但是可编程网络平台120可以控制用于多个不同云交换的服务供应。另选地或附加地,可编程网络平台120的多个独立实例可以控制用于相应多个不同云交换的服务供应。
在所示的示例中,可编程网络平台120包括定义方法、字段和/或其他软件基元的服务接口(或“服务API”)114,应用可以通过该服务接口调用可编程网络平台120。服务接口114可以允许运营商106、客户108、云服务提供商110和/或云交换提供商可编程地访问云交换100的能力和资产。
例如并且如本文进一步描述的,服务接口114可以有利于机器到机器通信,以允许在云交换中的虚拟电路的动态供应以便互连客户和云服务提供商网络。以这种方式,可编程网络平台120允许云服务供应的各方面的自动化。例如,服务接口114可为客户提供自动化和无缝的方式以建立、卸载和管理与参与云交换的多个不同的云提供商的互连。
基于云的服务交换的进一步示例细节可以在2015年4月17日提交的命名为“Cloud-Based Services Exchange”的美国临时专利申请62/149,374和于2014年10月30日提交并且命名为“INTERCONNECTIONPLATFORM FOR REAL-TIME CONFIGURATION ANDMANAGEMENTOF A CLOUD-BASED SERVICES EXCHANGE”的美国临时专利申请62/072,976中发现,每个通过引引证方式全部结合于此。
图2为框图,其示出根据本文所述技术的提供用于基于云的服务交换200的操作环境的数据中心201的高级视图。基于云的服务交换200(“云交换200”)允许任何NSP 106A至106C中的客户网络204D、204E和NSP网络204A至204C(统称为“‘专用’或‘运营商’网络204”)或包括客户108A、108B的其他云客户中的对应一个经由层3(L3)或层2(L2)而直接交叉连接到任何其他客户网络和/或任何云服务提供商110A至110N,从而允许在客户网络和CSP 110之间交换云服务流量。数据中心201可以完全位于集中式区域(诸如仓库或本地化数据中心综合体)内,并且将电源、电缆、安全和其他服务提供到NSP、客户和云服务提供商,其中NSP、客户和云服务提供商使得它们各自的网络位于数据中心201内(例如,用于共同定位)和/或通过一个或多个外部链路连接到数据中心201。
网络服务提供商106可以各自表示与传送网络相关联的网络服务提供商,通过该传送网络,NSP 106的网络订户可以经由云交换200访问由CSP110提供的云服务。一般来讲,CSP 110的客户可以包括用于经由云交换200通过CSP 110提供此类基于云的服务的网络运营商、大型企业、管理服务提供商(MSP)以及软件即服务(SaaS)、平台aaS(PaaS)、基础设施aaS(IaaS)、虚拟化aaS(VaaS)和数据存储aaS(dSaaS)客户。
以这种方式,云交换200以透明和中立的方式精简和简化使CSP 110和客户108(间接经由NSP或直接)合作的过程。云交换200的一个示例应用为协同定位和互连数据中心,其中CSP 110、NSP 106和/或客户108可以诸如通过具有可用于在数据中心内互连的一个或多个可访问端口已经具有网络存在。这允许参与的运营商、客户和CSP具有在相同设施中的广泛互连性选项。数据中心201的云交换200包括提供L2/L3交换结构的网络基础设施222,CSP110和客户/NSP通过该网络基础设施互连。这允许NSP/客户具有创建多对多互连的选项,其仅具有呈现云交换200的互连平台的交换网络和底层网络基础设施222的一次性钩接。换句话讲,云交换200允许客户使用数据中心201内的网络基础设施222互连到多个CSP和云服务,其可以呈现在本公开至少在一部分中的边缘网络中的任何一个,而非必须建立在传送网络之间的连接以访问不同云服务提供商或一个或多个云服务提供商的不同云服务。
通过连接到并利用云交换200,客户可以购买服务并且在许多不同的地理区域中接触到许多终端用户,而不会招致通常与安装和维护多个CSP110的多个虚拟连接相关联的相同花费。例如,NSP 106A可以使用NSP106B的网络204B来扩大其服务。通过连接到云交换200,NSP 106能够通过将其网络服务出售给其他运营商来产生额外的收入。例如,NSP 106C可以提供将NSP网络204C用于其他NSP的机会。
云交换200包括暴露至少一个服务接口的可编程网络平台120,在一些示例中该服务接口可以包括并且在本文中可替代地称为应用编程接口(API),因为API定义方法、字段和/或其他软件基元,应用可以通过方法、字段和/或其他软件基元调用可编程网络平台120。软件接口允许NSP206和客户108可编程地访问云交换200的能力和资产。可编程网络平台120可以另选地被称为控制器、供应平台、供应系统、服务编配系统等,其用于根据本文所描述技术建立端到端服务,包括例如在客户和云服务提供商之间的连接性。
在买方侧,由底层互连平台呈现的软件接口提供可扩展的框架,其允许与云交换200的客户(例如,客户108和NSP 206)相关联的软件开发者创建允许和利用访问可编程网络平台120的软件应用,应用可以通过该可编程网络平台120请求云交换200在客户和由任一个CSP 110提供的云服务之间建立连接性。例如,这些买家侧软件接口可以允许用于NSP和企业客户的客户应用(例如)获得访问云交换的授权,获得关于可用云服务的信息,获得用于客户的活动端口和城市区域细节,创建变化的带宽的虚拟电路来访问云服务,包括基于购买的云服务来动态选择带宽以创建云服务提供商的按需求的虚拟电路,删除虚拟电路,获得活动的虚拟电路信息,获得围绕与云交换提供商合作的CSP的细节,获得定制的分析数据,验证互连资产的伙伴访问并确保服务交付。
在云服务提供商(卖方)侧,软件接口可以允许与云提供商相关联的软件开发商管理他们的云服务并且允许客户连接到他们的云服务。例如,这些卖方侧软件接口可以允许云服务提供商应用获得访问云交换的授权,获得关于可用云服务的信息,获得供应商的活动端口和城市区域细节,在用于提供商的给定数据中心中获得活动端口细节,批准或拒绝由客户用于访问云服务创建的变化带宽的虚拟电路,获得等待添加的虚拟电路并确认添加虚拟电路,获得等待删除的虚拟电路并确认删除虚拟电路,获得定制的分析数据,验证互连资产的伙伴访问以及确保服务传递。
如本文进一步描述的,服务接口114有利于机器到机器通信以允许动态服务供应和服务传递保证。以这种方式,可编程网络平台120允许云服务供应的各方面的自动化。例如,软件接口可以为客户提供自动化和无缝的方式来建立、卸载和管理与参与云交换的多个不同的云提供商的互连。在各种示例中,可编程网络平台120可以在数据中心201的一个或多个虚拟机和/或真实服务器上执行,或离场执行。
在图2的示例中,网络基础设施222表示云交换交换结构并包括可以通过例如调用可编程网络平台120的服务接口114而与虚拟电路动态互连的多个端口。每个端口与运营商106、用户108和CSP 110中的一个相关联。
图3A至3B是框图,其示出根据本公开中描述的技术的用于云交换的可编程网络平台的示例网络基础设施和服务供应的框图,所述云交换聚合多个云服务提供商的云服务以便供应到云交换提供商的客户,并且将多个客户的访问聚合到一个或多个云服务提供商。在该示例中,每个与不同客户相关联的客户网络308A至308C(统称为“客户网络308”)访问在数据中心300内的云交换点,以便从一个或多个云服务提供商网络(每个与不同的云服务提供商110相关联)接收聚合的云服务320。客户网络308各自包括消费由云服务提供商网络320提供的云服务的端点设备。示例端点设备包括服务器、智能电话、电视机顶盒、工作站、膝上型计算机/平板计算机、视频游戏系统、电话会议系统、媒体播放器等。
客户网络308A至308B包括相应的提供商边缘/自主系统边缘路由器(PE/ASBR)310A至310B。PE/ASBR 310A、310B中的每一个可以执行外部网关路由协议以通过访问链路316A至316B(统称为“访问链路316”)中的一个与PE路由器302A至302B(“PE路由器302”或更简单地“PE302”)中的一个对等。在所示的示例中,每个访问链路316表示在客户网络308的边缘路由器与云交换点303的边缘路由器(或自主统边缘路由器)之间的传送链路。例如,PE310A和PE 302A可以经由外部网关协议(例如外部BGP)直接对等,以在访问链路316A上交换L3路由且以及在客户网络308A和云服务提供商网络320之间交换L3数据流量。在一些情况下,访问链路316可以表示并且另选地被称为用于在IP/MPLS结构301中配置的IP至VPN的附接电路,如下面进一步详细描述的。在一些情况下,访问链路316各自可以包括在客户网络308的至少一个端口和云交换点303的至少一个端口之间的直接物理连接,而没有中间传送网络。访问链路316可以在VLAN或堆叠VLAN(例如,QinQ)、VxLAN、LSP、GRE隧道或其他类型隧道中操作。
虽然示出并且主要关于L3连接性描述,但是PE路由器302可以经由访问链路316另外在客户网络308和云服务提供商网络320之间提供L2连接性。例如,PE路由器302A的端口可以配置有L2接口,该L2接口经由访问链路316A将L2连接性提供到客户网络308A和云服务提供商320A,其中云服务提供商320A路由器312A耦合到也配置有L2接口的PE路由器304A的端口。PE路由器302A的端口可以另外配置有L3接口,该L3接口经由访问链路316A将L3连接性提供到客户网络308A和云服务提供商320B。PE 302A可以被配置有多个L2和/或L3子接口,由此使得可以由云交换提供商向客户308A提供到多个云服务提供商320的一到多连接。
在一些示例中,为了在客户网络308和云服务提供商网络320之间创建L2互连,IP/MPLS结构301被配置有L2桥域(例如,L2虚拟专用网络(L2VPN),诸如虚拟专用LAN服务(VPLS)、E-LINE或E-LAN)以桥接在PE 302的面向客户的端口和云服务提供商320的面向CSP的端口之间的L2流量。在一些情况下,云服务提供商320和客户308可以具有到相同PE路由器302、304的访问链路,其使用桥域来桥接L2流量。
在一些示例中,为了在客户网络308和云服务提供商网络320之间创建L3互连,IP/MPLS结构301被配置有L3虚拟路由和转发实例(VRF),如以下参考图4详细描述的。
访问链路316和聚合链路322中的每一个可以包括网络接口设备(NID),其将客户网络308或云服务提供商328连接到在NID与PE路由器302、304中的一个之间的网络链路。访问链路316和聚合链路322中的每一个可以表示或包括提供L2和/或L3连接的多个不同类型的链路中的任何一个。
在该示例中,客户网络308C不是具有自主系统号的自主系统。客户网络308C可以表示企业、网络服务提供商或在云交换点的路由范围内的其他客户网络。客户网络包括可以执行外部网关路由协议以通过访问链路316C与PE路由器302B对等的客户边缘(CE)设备311。在各种示例中,PE 310A至310B中的任一个可以另选地为或以其他方式表示CE设备。
访问链路316包括物理链路。PE/ASBR 310A至310B、CE设备311和PE路由器302A至302B经由访问链路316交换L2/L3分组。在这方面,访问链路316构成经由云交换点303的用于云访问的传输链路。云交换点303可以表示任何云交换点128的示例。数据中心300可以表示数据中心201的示例。
在一些示例中,云交换点303将客户308访问聚合到云交换点303及因此到任何一个或多个云服务提供商320。图3A至3B例如示出将相应客户网络308A至308B连接到云交换点303的PE路由器302A的访问链路316A至316B和将客户网络308C连接到PE路由器302B的访问链路316C。PE路由器302、304中的任何一个或多个可以包括ASBR。PE路由器302、304和IP/MPLS结构301可以根据本文所描述的技术来配置以将访问链路316中的任一个互连到云聚合链路322中的任一个。因此,云服务提供商网络320A例如仅需要配置单个云聚合链路(这里为访问链路322A)以便将服务提供到多个客户网络308。即,操作云服务提供商网络302A的云服务提供商不需要供应和配置从云服务提供商网络302A到每个PE路由器310、311的独立服务链路,例如,以便为每个客户网络308提供服务。云交换点303可以相反将云服务提供商网络320A的云聚合链路322A和PE 312A交叉连接到多个云接入链路316以提供用于云服务传递的层3对等和网络能达性。
另外,单个客户网络(例如,客户网络308A)仅需要将单个云访问链路(这里是访问链路316A)配置到数据中心300内的云交换点303,以便从经由云交换点303提供云服务的多个云服务提供商网络320获得服务。即,操作客户网络308A的客户或网络服务提供商不需要供应和配置将客户网络308A连接到不同PE路由器312的独立服务链路,例如以便从多个云服务提供商网络320获得服务。云交换点303可以替代地将云访问链路316A(再次,例如)交叉连接到多个云聚合链路322,以提供用于向客户网络308A传递云服务的层3对等和网络能达性。
云服务提供商网络320各自包括被配置成向用户提供一个或多个云服务的服务器。这些服务可以根据服务类型来分类,服务类型可以包括例如应用/软件、平台、基础设施、虚拟化以及服务器和数据存储。示例云服务可以包括内容/媒体传递、基于云的存储、云计算、在线游戏、IT服务等。
云服务提供商网络320包括各自执行外部网关路由协议(例如eBGP)的PE路由器312A至312D,以与云交换点303的PE路由器304A至304B(统称为“PE路由器304”)交换路由。每个云服务提供商网络320可以表示公共云、专用云或混合云。云服务提供商网络320中的每一个可以具有所分配的自主系统号或者是云交换点303的自主系统范围的一部分。
在所示的示例中,互联网协议/多协议标记交换(IP/MPLS)结构301将PE 302和PE304互连。IP/MPLS结构301包括一个或多个交换和路由设备,包括PE 302、304,其提供交换和路由IP分组的IP/MPLS以形成IP主干。在一些示例中,IP/MPLS架构301可以实现一个或多个不同的隧道协议(即,非MPLS)以在PE路由器之间路由流量和/或将流量与不同IP-VPN相关联。根据本文所描述的技术,IP/MPLS结构301实现IP虚拟专用网络(IP-VPN)以将任何客户308与多个云服务提供商网络320连接,以提供基于数据中心的“传输”连接和层3交叉连接。然而,基于服务提供商的IP主干网络要求具有有限带宽的广域网络(WAN)连接以从层3服务提供商到客户传输服务流量,本文描述的云交换点303“传输”服务流量并将云服务提供商交叉连接到客户308,该客户308在由基于数据中心的IP/MPLS结构301提供的数据中心300的高带宽本地环境内。在一些示例中,IP/MPLS结构301使用在以下文献中描述的技术来实现IP-VPN,该文献为Rosen&Rekhter所著的“BGP/MPLS IP Virtual Private Networks(VPNs),”Request for Comments 4364,February 2006,Internet Engineering TaskForce(IETF)Network Working Group,其全部内容通过引证结合于此。在一些示例配置中,客户网络308和云服务提供商网络320可以经由相应链路连接到IP/MPLS结构301的相同PE路由器。
访问链路316和聚合链路322可以包括附接电路,其将与所连接用户网络308或云服务提供商网络320交换的流量与在PE 302、304中配置的并对应于在IP/MPLS结构301上操作的IP-VPN的虚拟路由和转发实例(VRF)相关联。例如,PE 302A可以与PE 310A在由访问链路316A操作的双向标记交换路径(LSP)上交换IP分组,该LSP为用于在PE 302A中配置的VRF的附接电路。又如,PE 304A可以与PE 312A在由访问链路322A操作的双向标记交换路径(LSP)上交换IP分组,该LSP为用于在PE 304A中配置的VRF的附接电路。每个VRF可以包括或表示具有区别路由的不同路由和转发表。
IP/MPLS结构301的PE路由器302、304可以被配置在用于云服务的相应中心辐射状布置中,其中PE 304实现云服务中心且PE 302被配置为中心的分支(用于各种中心辐射状实例/布置)。中心辐射状布置确保服务流量能够在中心PE和任何分支PE之间流动,但不直接在不同的分支PE之间流动。如下面进一步描述的,在用于基于数据中心的IP/MPLS结构301和用于南向服务流量(即,从CSP到客户)的中心辐射状布置中,PE 302将从PE 310接收的路由通知到PE 304,其将路由通知到PE 312。对于北向服务流量(即,从客户到CSP),PE304将从PE 312接收的路由通知到PE 302,其将路由通知到PE 310。
对于云交换点303的一些客户,云交换点303提供商可以配置完全网格布置,由此一组PE 302、304各自耦合到用于客户的不同客户站点网络。在这种情况下,IP/MPLS结构301实现用于笼对笼或冗余流量(也被称为东至西或水平流量)的层3VPN(L3VPN)。L3VPN可以实行闭合的用户组,由此每个客户站点网络可以向彼此发送流量,但是不发送或接收L3VPN外部的流量。
PE路由器可以在不使用覆盖网络的情况下根据对等模型彼此耦合。即,PE 310和PE 312可以不直接彼此对等以交换路由,而是经由IP/MPLS结构301间接交换路由。在图3B的示例中,云交换点303被配置成实现多个层3虚拟电路330A至330C(统称为“虚拟电路330”)以将客户网络308和云服务提供商网络322与端到端IP路径互连。云服务提供商320和客户308中的每一个可以是用于多个虚拟电路330的端点,其中多个虚拟电路330遍历用于IP/MPLS结构301的PE/PE或PE/CE对和CSP/客户之间的一个或多个附接电路。虚拟电路330表示通过在将客户网络连接到结构301的附接电路和将云服务提供商网络连接到结构301的附接电路之间的IP/MPLS的层3路径。每个虚拟电路330可以包括在PE 302、304具有端点的至少一个隧道(例如,LSP和/或通用路由封装(GRE)隧道)。PE 302、304可以建立彼此互连的隧道的完全网格。
每个虚拟电路330可以包括在IP/MPLS网络301中配置的不同中心辐射状网络,该IP/MPLS网络301具有使用边缘网关协议对等会话的全部或部分网格(在本示例中是多协议内部边缘网关协议(MP-iBGP)对等会话的全网状网络)交换路由的PE路由器302、304。MP-iBGP或简单MP-BGP为协议的示例,路由器通过该协议交换标记的路由以实现基于MPLS的VPN。然而,PE 302、304可以交换路由以使用其他技术和/或协议实现IP-VPN。
在虚拟电路330A的示例中,云服务提供商网络320A的PE路由器312A可以经由与PE304A对等连接的路由协议(例如eBGP)将用于云服务提供商网络320A的路由发送到PE304A。PE 304A将该路由与可具有相关联的VRF的中心辐射状的网络相关联,该中心辐射状网络包括分支PE路由器302A。然后,PE 304A将路由导出到PE路由器302A;PE路由器304A可以将指定PE路由器304A的路由作为下一跳由器,以及识别中心辐射状网络的标记。PE路由器302A经由与PE 310B的路由协议连接将路由发送到PE路由器310B。在添加云交换点303的自主系统号(例如,添加到BGP自主系统路径(AS_PATH)属性)并且指定PE路由器302A作为下一跳路由器之后,PE路由器302A可以发送路由。因此,云交换点303为在从客户308到云服务提供商320的自主系统的路径中的自主系统“跳”(且反之亦然),即使云交换点303可以在数据中心内作为基础。PE路由器310B将路由安装到路由数据库(诸如BGP路由信息库(RIB))以将层3可达性提供到云服务提供商网络320A。以这种方式,云交换点303“泄露”从云服务提供商网络320到客户网络308的路由,而非云服务提供商网络320到要求直接层对等连接的客户网络308。
PE路由器310B、302A、304A和312A可以在相反方向上实施相似操作,以将由客户网络308B发起的路由转发到PE 312A,并且因此提供从云服务提供商网络320A到客户网络308B的连接性。在虚拟电路330B的示例中,PE路由器312B、304A、302A和310B以与上述用于建立虚拟电路330B相似的方式交换用于客户网络308B和云服务提供商320B的路由。因此,在数据中心300内的云交换点303内部化另外建立在PE 310B与PE 312A、312B中的每一个之间的对等连接,以便实施用于由不同云服务提供商网络320A、320B提供的多个层3云服务的云聚合并将多个聚合的层3云服务传递到具有到云交换点303的单个访问链路316B的客户网络308B。缺少本文描述的技术,完全互连的客户网络308和云服务提供商网络320将要求在用于每个云服务提供商网络320的每个PE 310和至少一个PE 312之间的3×3对等连接。例如,PE 310A将要求与每个PE 312的层3对等连接。利用本文描述的技术,云交换点303可以通过内部化层3对等并在云访问和云聚合接口之间提供基于数据中心的“传输”来借助一个对等连接/站点PE(即,对于PE 310和PE 312中的每一个)而将客户网络308和云服务提供商网络320互连。
在其中IP/MPLS结构301实现使用路由目标来在IP主干内控制路由分配的BGP/MPLS IP VPN或其他IP-VPN的示例中,PE 304可以被配置成使用不同的非对称路由目标从PE 302导入路由及导出从PE 312接收的路由。同样,PE 302可以被配置成使用非对称路由目标从PE 304导入路并且导出从PE 310接收的路由。因此,PE 302、304可以被配置成实现高级的L3VPN,每个包括IP/MPLS结构301的基础主干L3VPN以及附接到基础主干L3VPN的客户网络308中任一个和云服务提供商网络320的任一个的外联网。每个高级L3VPN构成从云服务提供商网络320到一个或多个客户网络308的云服务传递网络,反之亦然。以这种方式,云交换点303使任何云服务提供商网络320能够与任何客户网络308交换云服务流量,同时内部化层3路由协议对等连接,其将以其他方式建立在客户网络308和云服务提供商网络320的对之间建立以便在给定对之间的任何云服务连接。换句话讲,云交换点303允许客户网络308和云服务提供商网络320中的每个建立与基于数据中心的层3交叉连接的单个(或由于冗余或其他原因的多个)层3路由协议对等连接。通过对从云服务提供商网络320到客户网络308的路由进行过滤(反之亦然),从而PE 302、304控制虚拟电路330的建立以及在客户网络308和数据中心300内的云服务提供商网络320之间的相关云服务流量的流动。分布到MP-iBGP网格318中的路由可为VPN-IPv4路由且与路由区分器相关联以区分路由与具有重叠的地址空间的不同站点。
可编程网络平台120可以接收用于创建、读取、更新和/或删除云交换点303的端对端服务的服务请求。作为响应,可编程网络平台120可以配置PE 302、304和/或IP/MPLS结构301的其他网络基础设施以供应或获得关于服务的性能或其他操作信息。用于供应服务并由可编程网络平台120实施的操作可以包括配置或更新VRF、安装SDN转发信息、配置LSP或其他隧道、配置BGP、配置访问链路316和聚合链路322或者另外修改IP/MPLS结构301的配置。其他操作可以包括向用于云服务提供商网络320的编配系统作出服务请求,如下面进一步详细描述的。
图4为根据本文所述的技术的基于数据中心的云交换点的示例的框图,其中云交换点的路由器由具有VPN路由和转发实例的可编程网络平台120配置以便从多个云服务提供商网络到客户网络路由和转发聚合的服务流量。在该实施例中,为了建立虚拟电路330A至330B,IP/MPLS结构301的PE路由器302A和304A被配置有VRF。PE 302A被配置有VRF420A和404A,而PE 304A被配置有VRF 402B和404B。VRF 402A被配置成导入由VRF 402B导出的路由,而VRF 402B被配置成导入由VRF402A导出的路由。该配置可以包括用于在VRF 402A、402B之间的导入/导出的非对称路由目标。VRF 404A被配置成导入由VRF 402B导出的路由,而VRF 402B被配置成导入由VRF 402A导出的路由。该配置可以包括用于在VRF 402A、402B之间的导入/导出的非对称路由目标。由于这种配置,客户能够访问来自不同CSP(每个CSP与独立VRF相关联)的多个层3服务,以访问提供隔绝与CSP交换的相应流量的层3服务。在一些示例中,PE 302A可以配置有单个VRF以导入由VRF 402B和VRF 404B这两者导出的路由。如上面关于图3A至3B指出的,PE 302、304可以进一步被配置成桥接在客户308B和云服务提供商320之间的层2流量。
在该示例中,PE 304A操作与相应PE 312A、312B的BGP或其他路由分配协议对等连接406B、408B,以与相应云服务提供商网络320A、320B交换路由。PE 302A操作与PE 310B的BGP或其他路由分布协议对等连接410以与客户网络308B交换路由。在一些示例中,PE302A、304A可以静态地配置有用于站点网络的路由。
用于云交换点303的本文描述的管理员或可编程网络平台可以借助VRF 402A至402B、404A至404B配置PE 302A、304A,以便泄漏PE 312和PE 310B之间的路由,并有利于用于这里由虚拟电路330示出的端到端IP路径的层3连接性,同时通过促进基于数据中心或至少基于城域的连接性而潜在地优化端到端IP路径。因此,云交换点303可以通过用于云服务提供商网络320的专用和/或公共路由来提供专有云服务提供商对客户网络308B的访问。在北向方向上,云交换点303可以通过用于客户网络308的专用和/或公共路由来提供专有云服务提供商对多个客户网络308B的访问。PE 310B或PE 302A、304A中的任一个都不需要访问完整互联网BGP路由表,以便到达云服务提供商网络320或客户网络308。此外,PE302A、304A可被配置成基于物理、IP、服务和VRF中的任何一个或多个来聚合客户/CSP路由和/或服务流量。
图5是示出用于软件控制的网络的平台的框图,根据本公开的一种或多种技术操作该平台。图5示出包括多个组件的可编程网络平台10000,其共同地提供基于云的服务交换或“云交换”的动态配置和管理。这些组件可以提供用于从多个云服务提供商到一个或多个云客户的云服务传递的虚拟连接。可编程网络平台10000包括集中式网络控制(CNC)系统10002、一个或多个网络字段单元(NFU)10004、软件定义的网络(SDN)控制器10006、硬件配置器10008、基础设施数据收集器10010和信息技术系统(10010)。
可编程网络平台10000可以提供跨多个服务提供商的服务编配且允许服务提供商之一在服务监视、保证和计费方面是服务所有者。可编程网络平台10000可为多个服务提供商编配系统提供过程和装置以安全地彼此通信,从而按需求以单点击方式传递组合的服务。可编程网络平台10000可以表示可编程网络平台120或另一可编程网络平台,或者用于供应服务和确保服务传递的本文所述的控制器或系统的示例实例。
在图5的示例中,CNC系统10002允许云服务供应的各方面的自动化。因此,CNC系统10002可以提供一个或多个软件接口,其允许客户以自动和无缝方式建立、卸载和管理参与云交换的多个不同云提供商的互连。CNC系统10002可以包括逻辑以经由API调用接收业务服务请求并将其转换成待传递和保证为业务服务的必要业务例示参数和网络供应参数。CNC系统10002可以是编配系统(例如,可编程网络平台10000)的中央智能处理单元且可以存在每个例示一个地这种智能逻辑的逻辑实例。如果服务请求需要,则CNC系统10002还具有与第三方编配系统通信的能力。CNC系统10002可以使用监视、分析、计划和执行(MAPE)循环方法(如在本公开中进一步讨论的)来提供服务保证,并且被实现以确保服务所遵守的服务水平协议。
在一些示例中,NFU 10004实现为从CNC系统10002接收请求或指令的自我包含单元,以配置用于一个或多个服务的云交换点的网络基础设施。例如,NFU 10004可以包括硬件和软件的组合。在一些示例中,NFU10004可为虚拟机器。在任何情况下,NFU 10004基于提交到CNC系统10002的客户请求接收请求或指令CNC系统10002。如以下进一步描述的,NFU10004可以确定是否存在足够资源,以提供由CNC系统10001请求的服务。如果存在足够的资源,则NFU 10004可以与SDN控制器10006、硬件配置器10008和基础设施数据收集器10010通信或以另外方式互操作来配置网络基础设施以提供所请求服务。NFU 10004可以表示全局分布式智能逻辑单元,其从CNC系统10002接收网络例示命令并且实例化及配置传递服务所需要的网络资源。NFU 10004可以具有智能以按照CNC系统10002的请求而传递和确保网络服务。NFU 10004可以具有其自身的MAPE循环(例如,图9所示)以确保由该单元传递的网络服务保证服务的生命周期。
在一些示例中,多个云交换点可以在地理上分散。每个地理上定位的云交换点可以具有在地理上定位在与相应云交换点相同的位置处的对应NFU。对应NFU可以配置和以其他方式管理位于特定地理位置的云交换点的网络基础设施。以这种方式,特定NFU可以从CNC系统10002接收请求或指令,并配置由特定NFU管理的云交换点的网络基础设施。在一些情况下,大都市区域的多个云交换点组成由单个NFU管理的基于城域的云交换。
因此,NFU 10004可以表示可编程网络平台10000的分布式处理单元,其向可编程网络平台10000提供水平扩展和传递及确保服务的能力。NFU10004为可编程网络平台10000的组件,其可以提供以供应商不可知和形式因素不可知方式传递服务的功能性。如图5所示,NFU 10004具有使得分布式处理单元能够传递服务的若干软件组件。
为了将服务和虚拟连接供应到云客户和云服务提供商,CNC系统10002包括服务选择器10012。在一些示例中,服务选择器10012可以作为API网关操作。例如,服务选择器10012可以暴露根据一个或多个API定义的软件接口。由服务选择器10012接收的请求和/或指令可以包括关于由云交换提供和/或传递的服务作出的创建、读取、更新和/或删除(CRUD)请求的形式。应用可以调用由服务选择器10012提供的API的端点,该服务选择器10012可以转而调用服务供应引擎10014。例如,服务选择器10012可以在一个或多个虚拟机和/或真实服务器上执行。虽然在图5中示出为单个元件,但是服务选择器10012可以包括在一个或多个物理处理器上执行的一个或多个物理和/或虚拟计算机器的集群。在一些方面,服务选择器10012提供服务目录,其描述可用服务和可用服务的提供商。
服务供应引擎10014可以接收请求以供应来自服务选择器10012的服务。服务供应引擎10014以及网络字段单元10004组织、引导和整合底层硬件和软件子系统,其用于管理在网络基础设施以及云服务管理内的服务供应的各种方面。例如,服务供应引擎10014可以提供规则驱动的工作流引擎,其在服务选择器10012和由网络字段单元10004配置的云交换的底层互连平台之间操作。以这种方式,可以经由服务选择器10012通过客户所拥有应用、基于云提供商的客户入口和/或云服务提供商系统来调用服务供应引擎10014,以便直接参与由网络字段单元10004配置的云交换网络基础设施的可编程网络平台。如以下参考图6等更加详细地描述的,服务供应引擎10014可以包括第三方服务连接器,其与第三方编配系统通信以确保服务充分地联网在一起以供应端对端基于云的服务履行。如以下进一步描述的,NFU 10004可以接收从CNC系统10002接收指令和/或请求,NFU 10004使用该指令和/或请求来在一个或多个云交换点供应服务。
服务供应引擎10014可以在一个或多个数据存储中查询和存储服务遥测和分析数据(STAD)10016。STAD 10016可以包括关于由服务供应引擎10014配置的服务的数量、类型、定义和消费者的度量。STAD 10016可以包括基于来自NFU 10004的原始度量数据的分析信息。例如,举例来说,STAD 10016的分析信息可以包括历史统计数据和/或实时统计数据,其可以在各种维度(举例来说,诸如消费者、服务类型、服务使用)上分析。
CNC系统10002还可以包括财务逻辑10018。财务逻辑10018可以存储客户的账单信息。例如,财务逻辑10019可以存储客户的计费信息,举例来说,诸如姓名、地址、电话号码、电子邮箱。当服务供应引擎10014为客户配置包括服务费的服务时,财务逻辑10018可以存储此类花费信息。以这种方式,财务逻辑10018可以提供由客户购买的服务的账单并且提供此类服务的计费。
CNC系统10002可以包括与IT系统100022接口的信息技术(IT)网关10020。IT系统100022可以包括一个或多个计算设备,举例来说,诸如台式计算机、平板电脑、智能电话和服务器。IT系统100022可以向管理员提供一个或多个用户界面,管理员可以使用IT系统100022来管理CNC系统10002。IT系统100022可以例如接收用于配置CNC系统10002和/或NFU10004的用户输入。基于用户输入,IT系统100022可以向CNC系统10002发送由IT网关10020接收的请求和/或指令。在一些示例中,CNC系统10002可以提供或另外暴露一个或多个休眠的接口,其可以由IT系统100022呼叫或另外调用。IT网管10020可以将此类指令或请求路由到在CNC系统10002内的其它组件用于基于请求和/或指令的类型的进一步处理。
如上所述,NFU 10014可以从CNC系统10002接收请求或指令以供应一个或多个服务。网络供应引擎10024可以从服务供应引擎10014接收请求和/或指令。网络供应引擎10024可以确定是否存在足够资源来满足在云交换点待配置的服务的请求。在一些实施例中,网络供应引擎10024可以查询一个或多个组件,诸如SDN控制器10066、硬件配置器10008和/或网络遥测和分析数据(NTAD)10026。如果存在足够资源来供应请求的服务,则网络供应引擎10024可以将指令和/或请求发送到SDN控制器和/或硬件配置器10008中的一个或多个,该指令和/或请求可以使得每个相应组件被配置成供应请求的服务。这样,网络供应引擎10024提供选择供应商以及其中服务被传递的形式因素的功能性。网络供应引擎10024还提供策略管理器功能性以确保服务以正确操作顺序被传递。
在一些实施例中,NFU 10004的网络供应引擎10024可以包括网络器件尺寸调节引擎(未示出),其提供功能性:确保网络器件被适当地设定尺寸以便合适的SLA由器件传递。在一些示例中,NFU 10004可以包括设备选择和处置器(未示出),其提供选择正确设备来传递服务的功能性,并将网络命令转换成用于所选择的设备的适当配置命令。例如,NFU10014可以访问描述在用于提供本地服务的云交换内的虚拟和/或专有器件的能力的列表,诸如防火墙(FW)、网络地址转换(NAT),和深度数据包检测(DPI),从而为遍历云交换的流量服务。NFU 10004可以从列表选择设备以满足服务请求,例如以下参考图8进一步详细描述的。
网络供应引擎10024可以在一个或多个数据存储中查询和存储网络遥测和分析数据(NTAD)10016。NTAD 10026可以包括关于由NFU 10004配置的网络和资源配置的数量、类型、定义的度量。NTAD 10026可以包括来自基础设施数据收集器10010的基于在特定服务中使用的资源的原始度量数据的分析信息。例如,NTAD 10026的分析信息可以包括历史统计和/或实时统计。
如图5所示,一个或多个SDN控制器10006可以配置网络资源,诸如路由器、交换机、网桥等,它们提供物理基础设施以通过云交换点承载网络流量。一个或多个硬件配置器10008可以配置硬件资源,诸如服务器或上述网络资源;在服务器和网络资源内的资源,包括处理器分配、存储器分配;存储器件;其他硬件资源;以及可以被配置向客户供应服务的软件配置。一个或多个基础设施数据收集器10010可以收集关于由NFU10004配置的网络和资源配置的数量、类型、定义的度量。例如,基础设施数据收集器10010可以监视和测量被配置为向客户供应服务的网络资源和任何其他资源的度量。基础设施数据收集器10010可以在NTAD 10026中存储此类度量。
NFU 10004和CNC系统10002可以分别包括网络保证引擎10028和服务保证引擎10030。网络保证引擎10028可以基于NTAD 10026确定被配置成提供服务的基础设施是否提供令人满意的服务水平。例如,中断、资源消耗超限、硬件和/或软件故障或问题以及其他事件可以影响在云交换点由网络基础设施提供的服务的质量。网络保证引擎10028可以监视NTAD 10026,并且在一些情况下将信息发送到服务保证引擎10030。在一些示例中,如果不满足服务水平,则信息可以包括警报,或者更具体地针对中断、资源消耗超限、硬件和/或软件故障或问题的警报。在一些示例中,由网络保证引擎10028发送到服务保证引擎10030的信息可为信息性的而非基于具体事件。例如,网络保证引擎10028可以按照特定安排或间隔和/或在连续或实时基础上将关于基础设施的性能的信息发送到服务保证引擎。在一些示例中,NTAD 10026可以包含一组结构化和/或非结构化数据库,其使得服务供应引擎10014和网络保证引擎10028适当地存储和检索数据以支持可编程网络平台10000的操作。
网络保证引擎10028可以提供功能性,其保证网络配置被保证为由CNC系统10002请求的每个网络SLA。网络保证引擎由通过MAPE循环提供保证的若干子组件组成,该子组件包括:(1)监视,由被编程用于监视和采集用于给定服务的数据的若干数据收集器实施;(2)分析,分析由数据收集器收集的数据以比较并确保服务符合请求的SLA;(3)计划,在服务或一组服务不符合的事件中,计划模块将作出是否可以本地减缓当前不符合的服务或者需要升级到CNC系统10002以便进一步处理的决定;和(4)执行,基于计划模块作出的决定来在可以本地减缓不符合的服务的事件中执行动作。
服务保证引擎10030可以从网络保证引擎10028接收信息,并且可以将该信息与包括在STAD 10016中的服务水平信息(诸如服务水平协议)进行比较。通过将关于基础设施的性能的信息与在STAD 10016中的服务水平信息进行比较,服务保证引擎可以使用一个或多个服务保证API将服务水平信息发送到客户,以及是否满足此类服务水平协议。以这种方式,客户可以监视或另外评估由一个或多个云交换点提供的服务的质量。
如上所述,可编程网络平台10000可以将业务系统(诸如客户和云服务提供商)与操作系统(诸如一个或多个云交换点的网络基础设施)桥接以改进操作效率。因此,可编程网络平台10000可以提供改进的可见性以监视和确保端到端服务及其组件。因此,与传统系统不同,可编程网络平台10000可以包括实施跨越用于多个云提供商的多个编配系统的服务的供应和确保的能力。CNC系统10002可以操作为主控制器,其实施接收封装用于服务的业务要求的服务请求的功能,以及使用业务、网络和伙伴子系统逻辑来实例化和确保服务的功能。如图5所示,CNC系统10002由实施履行服务请求的不同功能的多个不同软件模块组成。可编程网络平台10000可以提供分布式编配系统用于创建服务和分布传递和确保服务的智能。另外,可编程网络平台10000可以提供能够与第三方服务编配系统通信并传递分布式服务的分布式系统,如以下关于图6进一步详细描述的。
可编程网络平台10000可以提供跨越异构服务提供商的业务水平服务的服务编配。可以在可编程网络平台10000提供作为协调服务拓扑的服务策略、质量、服务水平协议和成本的定义。可编程网络平台10000可以在规格和施行方面定义单个子组件水平拓扑、策略、SLA和成本。
可编程网络平台10000是智能集中服务传递和保证系统,其带有具有故障缓解监视/分析/平面/执行(MAPE)循环的能力,如图7和9所示。,其将确保系统传递的服务被保证为遵守服务水平协议长达用于服务的生命周期。可编程网络平台10000不仅传递可以由其自身传递基础设施提供的服务,而且还具有跨越其他第三方编配系统进行通信以传递组合的同质服务的能力。可编程网络平台10000或更具体地讲CNC系统10002可为用于与待实施的功能相关的操作和业务的中央控制中心。
NFU 10004和CNC系统10002还可以履行对具有分布式编配系统的需要,该分布式编配系统用于创建服务和分布传递和确保服务的智能。另外,NFU 10004和CNC系统10002可以履行对于分布式系统的需要以便能够与第三方服务编配系统通信以传递分布式服务。可编程网络平台10000提供优点:提供分布式水平扩展的架构。CNC 10002和一个或多个NFU10004可以提供这样的功能性:将业务服务传递和保证为两个截然独立的功能,(1)CNC-可以处理将业务请求转换为服务参数的功能,(2)NFU-可以处理将服务参数转换成网络参数并实例化服务的功能。
图6是更详细示出根据本公开的一种或多种技术的图5的服务供应引擎10014的框图。如图6所示,服务供应引擎10014可以包括服务策略管理器10400。服务策略管理器10400可以从CNC系统10002的其他组件(诸如服务选择器10012、服务保证引擎10030,财务逻辑10018和IT网关10020)接收服务请求和/或指令。由服务策略管理器10400接收的请求和/或指令可以采取创建、读取、更新和/或删除(CRUD)请求的形式。服务策略管理器10400可以提供允许CNC系统1000的其他组件将服务请求和/或指令发送到服务策略管理器10400的一组API。服务策略管理器10400可以将此类服务请求和/或指令引导到在服务策略管理器10400内的其他组件。
服务供应引擎10014可以包括本地服务10402和经由第三方编配模块10404编配的第三方服务。本地服务10402可以包括由CNC系统10002的操作者设计和/或实现的服务。例如,本地服务可以用于在一个或多个云交换点配置虚拟电路。本地服务10402的示例可以包括但不限于端口服务10402A、一个或多个层3(L3)连接性服务10402B、一个或多个层2(L2)连接性服务10402C以及在OSI层(其大于L3)提供的一个或多个连接性服务,诸如应用、呈现、会话和传输层服务(“L3+服务10402D”)。端口服务10402A可以识别和/或配置一个或多个端口以在云交换点处提供一个或多个服务。L2、L3和L3+服务可以指在其处应用特定服务的OSI或TCP/IP层。
在一些示例中,本文描述的可编程网络平台可以提供将涉及本地组件和第三方组件这两者的服务编配成单个服务,同时确保策略、安全性和服务水平协议(SLA)一致性。可编程网络平台可以使用第三方(或“伙伴”)编配模块(或“插件”)来编配第三方服务组件。第三方编配模块允许第三方编配系统向可编程网络平台注册其能力(例如,服务目录、策略、安全性和SLA)。作为服务所有者的云服务提供商可以使用可编程网络平台经由对应第三方编配模块来引导第三方编配系统作为用于服务传递的工作流的一部分,以便支持并且传递用于服务的第三方服务。
因此,可以通过注册(或更新)用于任何第三方编配系统的第三方编配模块来适配和扩展可编程网络平台。这可以允许支配可编程网络平台的云服务提供商提供在客户和云服务提供商之间的互连性,以代理并将云服务提供商的层3服务传递到客户。
如图6所示,服务供应引擎10014可以包括一个或多个第三方编配模块10404,以使得可以通过服务供应引擎10014编配云服务。在一些示例中,第三方编配模块10404可以由云交换点的相应云服务提供商设计和/或实现,而不是管理员。虽然由第三方设计和实现,但是在云交换点托管和执行第三方编配模块10404。以这种方式,第三方可以设计和实现在云交换点托管和执行的第三方编配模块10404。
每个第三方编配模块10404可以向服务供应引擎10014呈现公共接口以便从云服务提供商请求云服务。该接口可以包括目录接口,云服务提供商可以通过该目录接口将其可用云服务的列表以及可用策略、安全性、SLA参数和云服务的成本发布到可编程网络平台。可编程网络平台可以经由客户门户将用于各种云服务提供商的可用云服务的列表复制到客户。例如,用于相应第三方编配模块10404的云服务提供商可以各自提供数据存储服务并且经由第三方编配模块10404发布该提供。接下来,可编程网络平台(给定的第三方编配模块10404可以向可编程网络平台注册)可以调用公共接口以请求编配提供的云服务之一。第三方编配模块10404响应地与对应云服务提供商的编配系统通信,以使云服务提供商网络根据请求中的服务参数而设立请求的层3云服务。此类服务参数可以包括在专用于层3云服务类型(例如,用于daSaS服务的数据存储大小)的策略、特定服务信息,连接性信息(例如,用于客户或另一个云服务提供商网络的L3地址)、在其他参数中的QoS信息。
(例如)在经由第三方编配模块10404A实例化由服务供应引擎请求的云服务时,第三方编配模块10404A可以接收使云交换能够连接到实例化的云服务的连接信息。该连接性信息或“网络处理”可以包括例如至服务的层3路由;VxLAN、VLAN或其他隧道标识符,其可由网络面向用于访问云服务的云交换路由器的云服务提供商使用(例如,将服务流量转发到云服务或识别用于由云交换点从云服务提供商网络接收的云服务的服务流量)。在10410,第三方编配模块10404A将连接性信息1405(例如,经由公共接口)提供到服务供应引擎10014,其使用连接性信息和STAD10406来获取服务数据并且最终生成网络供应数据。STAD10406向服务供应引擎10014提供所提供的服务的指示。以这种方式,云交换提供商被免除必须经由对应云服务提供商API或云服务提供商门户建立云服务。相反,第三方编配模块10404响应于由服务供应供引擎10014经由公共接口作出的服务请求来管理设立。
第三方编配模块10404可以被配置有连接性信息,其用于与相应云服务提供商(包括相应云服务提供商编配系统)通信。云服务提供商可以通过推送最新的新的或修改的服务目录和服务定价信息来更新第三方编配模块10404。因此,可以避免云交换提供商必须从云服务提供商拉取该信息。
每个第三方编配模块10404可以表示在云交换的一个或多个数据中心服务器上执行的并由云交换提供商支配的应用;软件插件、模块或链接库;或结合可编程网络平台可执行的并且能够以上述方式满足对于第三方编配的服务请求的另一个机器可执行的代码。
通过在可编程网络平台内使得能够整合建立和管理来自第三方云服务提供商的云服务,第三方编配模块10404允许云服务提供商变成端到端服务(其包括由云服务提供商提供的至少一个构成服务(或“微服务”))的授权所有者。在一些情况下,端到端服务可以包括来自多个不同云服务提供商的多个微服务,每个云服务提供商与一不同的第三方编配模块10404相关联。端到端服务还可以包括由云交换应用的一个或多个本地服务(诸如本文描述的任何NFV)。整合服务供应允许云交换提供商向客户提供统一的计费,由此云交换提供商根据从云服务提供商接收的成本信息为客户针对云服务提供商提供的服务进行计费并将款项传到云服务提供商。云交换提供商向客户针对任何本地服务(包括层3或其他连接性、NFV等)进行计费。
图6示出服务供应,描述如下。服务策略管理器10400可以接收用于配置特定服务的服务请求。该请求可以指定第三方服务10404中的一个,例如第三方服务10404A。该请求可以要求使用一个或多个端口,从而调用端口服务10402A。该请求还可以要求L3服务,从而调用L3服务10402B。服务供应引擎10014可以实施一组操作10406至10410以配置请求的服务。
服务供应引擎10014可以实施获取用于请求的服务的服务数据的一个或多个操作10406。为了获取服务数据,服务供应引擎10014可以借助商业网关10412和/或STAD 10016查询和/或存储数据,如图5中先前描述的。业务网关10412可以包括用于与财务逻辑10018接口的一个或多个API,如在图5中示出的。例如,服务供应引擎10014可以将所请求服务的计费信息发送到业务网关10412,其可以将该信息发送到财务逻辑10018。财务逻辑10018可以将用于服务的计费信息与特定账户相关联。服务供应引擎10014还可以在STAD 10016中存储识别服务和服务的一个或多个属性的信息。例如,如果服务包括特定地理位置、特定服务水平请求等,则此类细节连同服务的标识符可以存储在STAD 10016中。在已经实现以及正在使用服务之后,可以在STAD 10016中更新和存储针对该服务的STAD 10016度量。
在获取服务数据以实现所请求的服务时,服务供应引擎10014可以实施一个或多个操作10408以选择一个或多个NFU。服务供应引擎10014可以基于从服务选择器10012接收的初始请求或指令来选择一个或多个NFU。例如,如果请求指定特定地理位置,则服务供应引擎10014可以选择用于特定地理位置的NFU。如果该请求指定特定数量或类型的资源,则服务供应引擎10014可以使用足够的资源来确定管理一个或多个云交换点的一个或多个NFU,以满足所请求资源的特定数量和/或类型。服务供应引擎10014可以查询STAD 10016以确定由不同的NFU管理的资源的数量和/或类型。
一旦服务供应引擎10014已经选择NFU来供应所请求的服务,则在10410服务供应引擎10014可以实施一个或多个操作以生成网络供应数据。例如,服务供应引擎10014可以将从客户接收的更高级别服务请求翻译成网络供应数据,该网络供应数据包括服务供应引擎10014发送到一个或多个NFU的更具体一组指令和/或请求。接收网络供应数据的NFU可以基于网络供应数据来配置网络基础设施以提供所请求的服务。
图7为根据本公开的一个或多个技术的进一步详细示出图5的服务保证引擎10030的框图。如图5所述,服务保证引擎10030可以从网络保证引擎10028接收信息,并且可以将该信息与包括在STAD 10016中的服务水平信息(诸如服务水平协议)进行比较。通过比较关于基础设施的性能的信息与在STAD 10016中的服务水平信息,服务保证引擎可以使用一个或多个服务保证API将服务水平信息发送到客户,以及是否满足此类服务水平协议或其他性能阈值。
为了确定是否满足此类服务水平协议或其他性能阈值,服务保证引擎10030可以实施一个或多个操作16000至10608。服务保证引擎10030可以检索服务数据1600。服务数据可以包括已经由客户请求并且在一个或多个云交换点处供应的服务的定义和/或描述。基于服务数据,服务保证引擎10030可以监视提供请求的服务的云交换点的实际性能。为了确定云交换点的实际性能,服务保证引擎10030可以从STAD 10030查询或另外接收性能数据10602,该STAD 10030由CNC系统10002借助来自一个或多个组件(诸如NFU 10004)的数据来填充。
服务保证引擎10030可以结合服务数据来分析性能数据从而识别与由云交换点10604供应的服务相关联的异常、问题或性能不足。例如,服务保证引擎10030可以确定,满足指示异常、问题或性能不足的一个或多个条件、标准和/或阈值10604。如果满足此类条件、标准和/或阈值,则服务保证引擎10030可以实施一个或多个补救动作。
服务保证引擎10030可以存储一个或多个补救动作10606。在一些示例中,补救动作可以指一个或多个操作,其可以由CNC系统10002的一个或多个组件采取以补救异常、问题或性能不足。补救动作可以在服务保证引擎10030与一个或多个条件相关联。例如,当服务保证引擎10030确定满足一个或多个条件、标准和/或阈值时,服务保证引擎10030可以确定与一个或多个条件、标准和/或阈值相关联的补救动作。仅举几个例子,补救动作的示例可以包括重新分配资源以在云交换点继续提供特定服务,以及将一个或多个通报发送到一个或多个接收者。在一些情况下,管理员和/或客户可以在云交换点供应服务之前或之时配置补救动作和/或一个或多个条件、标准和/或阈值。以这种方式,如果关于云交换点满足一个或多个条件、标准和/或阈值,则服务保证引擎10030可以确定对应补救动作。
如图7所示,如果关于云交换点,满足一个或多个条件、标准和/或阈值,则服务保证引擎10030可以执行一个或多个补救动作10608。为了执行补救动作,服务保证引擎10030可以将补救动作通信到服务供应引擎10014,该服务供应引擎10014执行由补救动作定义的操作。以这种方式,服务保证引擎10030可以通过执行一个或多个补救动作以自动方式监视并响应异常、问题或性能不足。
图8是进一步详细示出根据本公开的一种或多种技术的图5的网络供应引擎10024的框图。网络供应引擎10024可以从CNC系统10002的服务供应引擎10014接收网络服务定义、指令和/或请求。网络供应引擎10024使用网络服务定义、指令和/或请求来配置由NFU10004管理的基础设施,以便在一个或多个云交换点供应网络服务。本文所使用的“网络服务定义”为这样的数据,其定义用于通过配置提供网络服务的网络设备的网络来供应至少部分地可实例化的网络服务的参数。网络服务可以包括由(本地服务)提供的或者由(云服务或第三方服务)云交换传递到一个或多个前述网络服务的消费者的网络服务。
为了进一步示出,在图8中,在接收到网络服务定义、一个或多个指令和/或请求时,网络供应引擎10024可以验证网络服务定义、指令和/或请求10800的内容和格式。例如,网络供应引擎10024可以确定网络服务定义、指令和/或请求是否有效。如果内容和/或格式无效,则网络供应引擎10024可以将指示内容和/或格式的无效性的响应发送到服务供应引擎10014。
如果网络服务定义、指令和/或请求的内容和格式是有效的,则网络供应引擎10802可以基于网络服务定义、指令和/或请求来选择供应商以提供服务。例如,CNC系统10002可以允许客户或云服务提供商从一组供应商装备中选择一个或多个特定类型供应商装备以提供特定服务。例如,云服务提供商可以指定特定供应商以提供防火墙服务。由网络供应引擎10024从CNC系统10002接收的网络服务定义、指令和/或请求可以指定提供服务的特定供应商。网络供应引擎10024可以确定用于特定供应商的装备是否可用于提供服务。如果不可用,则网络供应引擎10024可以将指示供应商装备不可用的响应发送到服务供应引擎10014。
如果特定供应商的装备可用,则网络供应引擎10024可以为供应商装备10804选择特定形式因素。在一些示例中,形式因素可以基于由网络供应引擎10024从服务供应引擎10014接收的网络服务定义、指令和/或请求而指定。在其他示例中,网络供应引擎10024可以基于在网络服务定义、指令和/或请求中的一个或多个参数而自动确定供应商装备的形式因素。例如,一个或多个参数可以不指定形式因素;然而,网络供应引擎10024可以基于参数确定供应商装备的特定形式因素将满足网络服务定义、指令和/或请求的要求。例如,参数可以指定功能性和/或资源要求的特定类型,网络供应引擎10024可以使用该功能性和/或资源要求来确定供应商装备的哪种形式因素可以满足要求。
网络供应引擎10024可以确定供应商设备的大小和/或验证供应商装备的容量10806。在一些示例中,网络供应引擎10024可以查询NTAD10026以确定由网络供应引擎10024管理的云交换点的基础设施的当前资源分配和用途。基础设施可以包括由用于网络服务定义、指令和/或请求的网络供应引擎10024识别的供应商设备,该网络服务定义、指令和/或请求从服务供应引擎10014接收。基于从CNC 10002接收的指令和/或请求的要求以及来自NTAD 10026的当前资源分配和用途,网络供应引擎10024可以确定在由网络供应引擎10024确定的供应商设备是否存在足够的资源来供应请求的服务。如果供应商设备的大小和/或容量对于从服务供应引擎10014接收的指令和/或请求是不足的,则网络供应引擎10024可以将指示供应商设备的大小和/或容量不足的响应发送到服务供应引擎10014。
如果供应商设备的大小和/或容量对于从服务供应引擎10014接收的网络服务定义、指令和/或请求是足够的,则网络供应引擎10024可以获得对于特定供应商设备10808的设备处置器。在一些示例中,设备处置器可为唯一地识别特定设备的标识符。此类设备可以包括供应商设备,其包括在一个或多个云交换点的基础设施中。在选择设备处置器时,网络供应引擎10024可以配置或另外将一个或多个请求和/或指令发送到SDN控制器10006和/或硬件配置器10008,以配置由设备处置器10810识别的设备。在一些示例中,请求可以指定创建、读取、更新或删除操作以对于由设备处置器识别的设备实施。
图9是进一步详细示出根据本公开的一种或多种技术的图5的网络保证引擎10028的框图。如图5所示,网络保证引擎10028可以将信息发送到服务保证引擎10030,其可以将该信息与包括在STAD 10016中的服务水平信息(诸如服务水平协议)进行比较。网络保证引擎10030可以用服务保证引擎10030查询STAD 10016的相似方式查询NTAD 10026。通过比较关于基础设施的性能的信息与在NTAD 10026中的服务水平信息,网络保证引擎可以使用一个或多个网络保证API将网络水平信息发送到客户,以及是否满足此服务水平协议或其他性能阈值。
为了确定是否满足此类服务水平协议或其他性能阈值,网络保证引擎10028可以实施一个或多个操作11000至110010。网络保证引擎10028可以检索网络数据11000。仅举几个例子,网络数据可以包括实际带宽、丢弃的数据包、延迟、正常运行时间。基于网络数据,网络保证引擎10028可以监视提供请求的服务的云交换点的实际性能。10004,为了确定云交换点的实际性能,网络保证引擎10028可以从由NFU填充的NTAD 10026查询或另外接收性能数据11002。
网络保证引擎10028可以结合服务数据来分析性能数据从而识别与云交换点11004的网络基础设施相关的异常、问题或性能不足。例如,网络保证引擎10028可以确定,满足指示异常、问题或性能不足的一个或多个条件、标准和/或阈值11004。如果满足此类条件、标准和/或阈值,则网络保证引擎11004可以实施一个或多个补救动作。
网络保证引擎10028可以存储一个或多个补救动作11006。在一些示例中,补救动作可以指一个或多个操作,其可以由CNC系统10002的一个或多个组件采取以补救异常、问题或性能不足。补救动作可以在网络保证引擎10028与一个或多个条件相关联。例如,当网络保证引擎10028确定满足一个或多个条件、标准和/或阈值时,网络保证引擎10028可以确定与一个或多个条件、标准和/或阈值相关联的补救动作。仅举几个例子,补救动作的示例可以指示重新分配资源以在云交换点继续提供特定服务和/或将一个或多个通报发送到一个或多个接收者。在一些情况下,管理员和/或客户可以在云交换点供应服务之前或之时配置补救动作和/或一个或多个条件、标准和/或阈值。以这种方式,如果关于云交换点满足一个或多个条件、标准和/或阈值,则网络保证引擎10028可以确定对应补救动作。
如图9所示,如果关于云交换点满足一个或多个条件、标准和/或阈值,则网络保证引擎10028可以执行一个或多个补救动作11008。为了执行补救动作,网络保证引擎10028可以将补救动作通信到网络供应引擎10024,该网络供应引擎10014执行由补救动作定义的操作。以这种方式,网络保证引擎10028可以通过实施一个或多个补救动作以自动方式监视并响应异常、问题或性能不足。
图10是示出根据本公开的一种或多种技术的可编程网络平台11600的框图。可编程网络平台11600可以表示可编程网络平台120或可编程网络平台10000,或者在本公开中描述的其他可编程网络平台的示例。如图10所示,可编程网络平台11600可以包括控制数据结构11614的集中式网络控制(CNC)系统11601。数据结构11614可以由CNC系统11601配置以提供包括虚拟连接的一个或多个服务,其允许客户11610使用由云服务提供商11616提供的服务。
客户11610可以期望在公共点(诸如数据结构11614)直接交叉连接到云服务提供商11616,从而允许在客户的网络和云服务提供商之间直接交换网络流量。在一些示例中,一个或多个服务可以由数据架构11614应用到在客户11610和云服务提供商11616之间转发的网络流量。例如,客户可以使用数据结构11614在客户和云服务提供商之间配置具有防火墙的L3连接服务。
如图16中进一步所示,实现数据结构11614的基础设施可以在逻辑上被划分成边缘网络基础设施和核心网络基础设施。边缘网络基础设施可以包括将数据结构11614的核心网络耦合到客户和云服务提供商网络的网络设备。核心网络基础设施可以包括通过数据结构11614的核心网络转发网络流量的网络设备。在图10的示例中,CNC系统11601包括边缘网络控制模块11618,其在网络设备配置和供应服务,该网络设备包括在数据结构11614的边缘网络基础设施中。CNC系统11601还包括核心网络控制模块11620,其在网络络设备配置和供应服务,该网络设备包括在数据结构11614的核心网络基础设施中。虽然在CNC系统11601中示出,但是边缘核心网络控制模块11618和/或核心网络控制模块11620的功能可以包括在一个或多个NFU中和/或分布在NFU和CNC系统11601之间。
在一个示例中,客户11610中的客户可以期望访问由云服务提供商11616提供的一个或多个服务。例如,客户可以期望访问云服务提供商11616的办公生产力服务。因此,客户可以使用用于在数据结构11614提供的L3连接和防火墙的用户门户11602提交请求,其允许在客户和办公生产力服务的云服务提供商之间直接交换网络流量。由用户门户11602提供的示例用户界面在图11和图12中示出。
CNC系统11601接收对于L3连接服务的请求。边缘网络控制模块11618和核心网络控制模块11620各自可分别为L3连接服务配置边缘网络基础设施和核心网络基础设施。在一些示例中,边缘网络控制模块11618和核心网络控制模块11620可以识别将配置网络基础设施以提供L3连接服务的一个或多个NFU。例如,边缘网络控制11618可以识别用于配置边缘网络基础设施的一个或多个NFU的第一集合,而核心网络控制模块11620可以识别用于配置核心网络基础设施的一个或多个NFU的第二集合。
在一些示例中,网络控制11618可以直接配置边缘网络基础设施,其将客户网络耦合到数据结构11614的核心网络并将云服务提供商11616耦合到数据结构11614的核心网络。在其他示例中,边缘网络控制模块11618可以将对于L3连接服务和防火墙服务的指令和/或请求发送到一个或多个NFU,该NFU配置边缘网络基础设施,其将客户网络耦合到数据结构11614的核心网络并将云服务提供商11616耦合到数据结构11614的核心网络。相似地,核心网络控制模块11620可以将针对L3连接服务和防火墙的指令和/或请求发送到一个或多个NFU,该NFU配置数据结构11614的核心网络基础设施并将云服务提供商11616配置到数据结构11614的核心网络。在为了提供L3连接服务和防火墙而配置边缘网络基础设施和核心网络基础设施时,客户11610中的请求L3连接服务的客户可以经由网络服务提供商和数据结构11614直接连接到办公生产力服务。
在一些示例中,一个或多个IT系统11604可以耦合到CNC系统11601。IT系统11604可以包括一个或多个计算设备,举例来说,诸如台式计算机、平板电脑、智能电话和服务器。IT系统11604可以向管理员提供一个或多个用户界面,管理员可以使用IT系统11604来管理11601。IT系统11604可以例如接收用户输入以配置CNC系统11601。基于用户输入,IT系统11604可以向CNC系统11601发送请求和/或指令。在一些示例中,CNC系统11601可以提供或另外暴露可由IT系统11604调用的一个或多个休眠的接口。
图11是示出根据本公开的一种或多种技术的请求服务的示例用户界面12200的框图。在一些示例中,集中式网络控制系统(诸如CNC系统10002或CNC系统11601,或用于诸如系统的门户)可以生成用于显示的用户界面12200。在一些示例中,用户界面12200可以实现为可以在web浏览器中渲染的一个或多个HTML文档。用户界面12200可以在单独应用中实现,该应用可在移动计算设备、台式计算设备或膝上型设备(仅仅列举几个示例)上执行且以本文所述的方式调用可编程网络平台。为了示例的目的,在图11中的web浏览器中示出用户界面(interface)12200。
如图11所示,用户界面12200可以允许用户配置L3连接服务。用户界面12200可以包括侧菜单12202,其列出可以由用户配置的每种不同类型的服务。侧菜单12202可以包括一个或多个元素(element),其中每个相应的元素对应于特定类型的服务。元素可以由用户选择,该元素显示对应的用户界面以配置与该元素相关联的服务的类型。例如,如图11所示,用户已经选择了对应于配置L3连接服务的元素。因此,用户界面12200包括用于配置L3连接服务的用户界面元素。
在一些示例中,用户界面12200包括用户界面元素12004(例如标记),其显示由用户配置的服务定义的类型。在图11的示例中,用户界面元素12004包括作为服务定义类型由用户配置的“L3连接”,其可以对应于L3连接服务。如本文用的,术语“服务定义”是指这样的数据,其定义用于在云交换内为一个或多个网络服务供应业务水平服务的参数,该一个或多个网络服务由(本地服务)提供或由(云服务或第三方服务)提供到前述一个或多个服务的消费者。服务定义可以定义在整体服务内的多个服务,包括实现服务的一个或多个服务要求中的每个。实现服务可以包括例如服务编配和网络供应这两者。本地服务可以包括例如端口服务、L3连接性服务、L2服务、L3+服务、防火墙、NAT、DPI和其他本地服务(其在云交换内应用到来自云服务提供商网络的云服务流量)以修改、检查、成形(例如,过滤或应用QoS)和/或传递云服务流量。云服务可以包括软件即服务(SaaS)、平台aaS(PaaS)、基础设施aaS(IaaS)、虚拟化aaS(VaaS)和数据存储aaS(dSaaS)服务,诸如内容/媒体传递、基于云的存储、云计算、在线游戏、IT服务等。服务定义可以指定例如云交换端点和连接到云服务的其他连接性信息、策略、用于服务的SLA和/或QoS、发起者、所有者、服务标识符、目的地。服务定义的其他示例在以下描述。用于待在云交换内应用的服务的服务定义的某些参数(诸如带宽、策略、SLA和QoS)可以任选地称为“服务要求”,因为请求者要求服务以此类方式被应用/传递以满足此类要求。
在一些示例中,用户界面12200可以包括用户界面元素12006,其使用户能够选择或另外指定地理位置。地理位置可为客户站点的位置和/或云交换点的位置。例如,在图11中,用户可以使用用户界面元素12006来提供在加利福尼亚州圣何塞市(San Jose,CA)的地理位置。仅举几个例子,用户界面元素12006可以实现为预填充有可用位置的下拉菜单,或者可以实现为其中用户可以输入位置的文本录入字段。
用户界面12200可以包括用户界面元素12008,其使得用户能够选择或另外指定用于客户的L3连接服务的网络区段。在一些示例中,网络区段由层3地址(诸如互联网协议(IP)地址12008)的范围定义。例如,在图11中,用户可以使用用户界面元素12008来提供IP地址范围10.10.10.0/24。仅举几个例子,用户界面元素12008可以实现为预填充有可用网络区段值的下拉菜单,或者可以实现为其中用户可以输入网络区段值的文本录入字段。
用户界面12200可以包括一个或多个用户界面元素12010,其使得用户能够选择或另外指定用于L3连接服务的最小性能要求和/或最大性能要求。例如,各种带宽可以与一个或多个用户界面元素12010相关联,用户可以从该一个或多个用户界面元素12010选择服务的最小性能要求和/或最大性能要求。在图11的示例中,用户可选择的示例性能要求包括1Mbps、10Mbps、100Mbps、1Gbps、10Gbps、40Gbps和100Gbps。仅举几个例子,用户界面元素12010可以实现为预填充有可用带宽的下拉菜单,一组单选按钮或检查表(其中每个可选元件具有对应带宽),或者可以实现为其中用户可以输入带宽的文本录入字段。
用户界面12200可以包括一个或多个用户界面元素12012、12014和12016,其使得用户能够分别指定带宽是否是可突发的、指定过度信息速率(EIR)和/或指定最大延迟。如图11所示,用户界面元素12012可以实现为检查表,用户界面元素12012可以实现为文本输入字段,而用户界面元素12016可以实现为文本输入字段,但是也可以使用其他类型的用户界面元素。
用户界面12200可以包括一个或多个用户界面元素12018,其使得用户能够选择或另外指定用于L3连接服务的正常运行时间或可用性要求。例如,各种可用性水平可以与一个或多个用户界面元素12018相关联,用户可以从该一个或多个用户界面元素12010选择服务的正常运行时间或可用性要求。在图11的示例中,用户可选择的示例正常运行时间或可用性要求包括99.9999%、99.999%、99.995%、99.99%、99%和90%的正常运行时间。仅举几个例子,用户界面元素12018可实现为预先填充有正常运行时间或可用性值的下拉菜单,一组单选按钮或检查表(其中每个可选元件具有对应正常运行时间或可用性),或者可以实现为其中用户可以录入正常运行时间或可用性文本输入字段。
用户界面12200可以包括一个或多个用户界面元素12020,其使得用户能够选择或另外指定用于L3连接服务的云服务提供商。例如,客户可以选择一个或多个云服务提供商,其提供客户可以使用L3连接服务消费的服务。仅举几个例子,用户界面元素12020可实现为预先填充有云服务提供商的下拉菜单,一组单选按钮或检查表(其中每个可选元件具有对应云服务提供商),或者可以实现为其中用户可以录入云服务提供商的文本输入字段。用户界面12200可以包括用户界面元素12022,其使得用户能够选择或另外指定用于云服务提供商的L3连接服务的网络区段。在一些示例中,网络区段由层3地址(诸如互联网协议(IP)地址12022)的范围定义。
用户界面12200可以包括一个或多个用户界面元素12012、12014和12028,其使得用户能够分别选择用于服务的分布式拒绝服务保护、分布式拒绝服务保护提供商和/或重定向IP地址。如图11所示,用户界面元素12024可以实现为单选按钮或检查表,用户界面元素12026可以实现为下拉菜单,而用户界面元素12028可以实现为文本输入字段,但是也可以使用其他类型的用户界面元素。
用户界面12200可以包括用户界面元素12030以提交用户界面12200的选择和/或输入的值用于进一步处理。用户界面元素12030实现为图11中的按钮。当选择用户界面元素12030时,用户界面12200的选择和/或输入的值可被验证且可以被进一步处理以实现服务和/或在实际实现服务之前将实现服务的成本的估计提供给用户。
图12是示出根据本公开的一种或多种技术的显示用于服务的成本估计的示例用户界面12400的框图。在一些示例中,集中式网络控制系统(诸如CNC系统10002或CNC系统11601或用于诸如系统的门户)可以生成用于显示的用户界面12400。在一些示例中,用户界面12400可以实现为可以在web浏览器中渲染的一个或多个HTML文档。用户界面12400可以在单独应用中实现,该应用可在移动计算设备、台式计算设备或膝上型设备(仅仅列举几个示例)上执行且以本文所述的方式调用可编程网络平台。为了示例目的,在图12中的web浏览器中示出用户界面124001。
如图12所示,用户界面12400可以基于在图11中针对用户界面12200提供的用户输入而提供用于服务的成本信息。在一些示例中,用户界面12400可以包括一个或多个用户界面元素12402,其包括由用户在图11的用户界面12200中提供的输入值。因此,用户可以查看输入值以确定该值是正确的。如果用户期望改变一个或多个值,则用户可以选择用户界面元素12204,这使得用户界面12200再次显示有输入值,从而允许用户更新或另外改变此类输入值。在其他示例中,用户界面元素12204可以包括用户界面元素,其允许用户在不返回到用户界面12200的情况下更新或另外对在用户界面12204中的输入值作出改变。
用户界面12400可以包括一个或多个用户界面元素,其包括所请求服务的一个或多个成本。例如,用户界面12400可以包括显示所请求服务的每月成本的用户界面元素12406。通过输出所请求服务的每月成本,用户可以评估服务的成本。在一些示例中,其他成本值可以包括在用户界面12400中。例如,用户界面12400可以包括与用户界面元素12402的一个或多个输入值相对应的汇总成本。在一些示例中,用于另选输入值的另选汇总成本值也可以包括在用户界面12400中。例如,用于99.999%正常运行时间的另选成本可以包括在用户界面12400中。在查看成本信息时,用户可以选择用户界面元素12406(例如按钮)来提交用于服务的请求。在选择用户界面元素时,CNC系统10002可以基于在用户界面12400中示出的输入值而配置一个或多个云交换点以供应由用户请求的服务。
图13是示出根据本公开中描述的技术操作的用于可编程网络平台的示例组件的概念图。在该示例中,可编程网络平台12500包括集中式网络控制组件12504(“CNC12504”),其与多个分散式网络字段单元12508A至12508C接口以供应边缘网络12600的设备并保证将层3云服务传递到客户。每个NFU 12508可以供应不同设备子集或边缘网络12600的“一部分”。例如,边缘网络12600可以包括分布在多个云交换点或基于城域的云交换中的设备,每个云交换点或基于城域的云交换由不同NFU 12508供应服务。
可编程网络平台12500可以表示(例如)可编程网络平台120的示例实例。CNC12504可以表示CNC 1002或CNC 11601的示例实例。NFU12508各自可以表示NFU 1004的示例实例。用户门户12502表示用于与可编程网络平台12500接口的客户端软件,并且可以表示客户门户、客户应用、云交换提供商应用、控制台(诸如命令行界面或图形用户界面)和/或云服务提供商开发的应用。用户/顾客可以包括客户、云交换提供商和云服务提供商。
在一些方面,本文描述的控制器(诸如可编程网络平台)可以供应云交换与由多个云服务提供商提供的多个构成服务组成的服务。这些构成服务中的每一个在本文称为“微服务”,因为它是应用于服务流量的整体服务的一部分。即,可以将多个微服务应用到在特定“布置”、“排序”或“拓扑”中的服务流量,以便组成服务流量的整体服务。微服务可以由云服务提供商应用或在云交换内应用。
可编程网络平台可以这样在异构服务提供商之间编配业务水平服务。可编程网络平台暴露接口,门户、控制台(例如,用户界面应用)或其他应用可以通过该接口定义由不同云提供商(或“云供应商”)提供的微服务组成的协同服务拓扑的服务策略、质量、服务水平协议(SLA)和成本。作为整体端到端业务服务定义的一部分,每个微服务可以具有对应的服务策略、质量、SLA和成本,如以下更详细描述的。当被提供有用于具有多个组件微服务的端到端服务的服务定义时,可编程网络平台可以编配云交换内的每个微服务并且根据所定义的拓扑将微服务联结在一起,以便具体化在云交换(或包括云交换的边缘网络)内的端到端服务。因此,代表云交换的客户利益或者至少一个云服务提供商的客户利益,云交换在数据平面中互连由相应云服务提供商所提供的微服务。
图14A是示出可编程边缘网络的示例配置的框图,该可编程边缘网络已经被配置成将多个本地服务应用到云服务流量,该云服务流量由云交换从多个云服务提供商聚合以便传递到客户。边缘网络12600可以包括本文描述的基于数据中心的云交换或云交换点的任何一个,诸如图1的云交换点128、图2的云交换200和包括数据结构11614的图10的云交换点。
边缘网络12600包括包含层3(L3)转发元件12622A至12622B(统称为“转发元件12622”)的网络基础设施,其可以包括一个或多个路由器、交换机和其他L3转发设备。虽然未示出,但是边缘网络12600还可以包括例如一个或多个非边缘(核心)交换机、路由器、集线器、网关、安全设备(诸如防火墙、入侵检测和/或入侵防止设备)、计算机终端、笔记型计算机、打印机、数据库、无线移动设备(诸如蜂窝电话或个人数字助理)、无线访问点、网桥、电缆调制解调器、应用加速器或其他网络设备。
边缘网络12600还包括提供一个或多个计算/计算场的服务器12640A至12640B(统称为“服务器12640”),边缘网络12600可以通过该计算/计算场将服务提供到客户12604和/或将服务应用到用于客户12604的服务流量。服务器12640可以表示被配置成将服务应用和/或提供到客户的x86或其他真实服务器或通用服务器。服务器12640还可以包括用于将服务应用到在客户和云服务提供商12606之间的服务流量的专用器件或容器。此类服务可以包括例如可以由云交换提供商控制的云交换边缘网络12600应用并且可以由可编程网络平台12500配置的NAT、DPI、FW、DDOS缓解和其他本地服务。
例如,管理、支配和配置边缘网络12600的云交换提供商促进将此类本地服务应用到在客户12604与云服务提供商12606A至12606D(“CSP12606”)中的任何一个之间交换的服务流量,云服务提供商12606A至12606D中的每个可以表示云服务提供商110中的任一个。边缘网络12600配置有用于应用到源于或去往CSP 12606A的服务流量的虚拟NAT(vNAT)服务12614、用于应用到源于或去往CSP 12606B的服务流量的虚拟深度分组检测(vDPI)服务12616、用于应用到源于或去往CSP 12606C的服务流量的虚拟防火墙(vFW)服务12618,所有此类服务流量源于或去往客户12604。服务12614、12616和12618可以表示网络功能虚拟化(NFV)服务,因为服务虚拟化功能由采用专用服务器件(例如NAT、DPI和防火墙设备,无论是独立采用还是通过集成统一威胁管理(UMT)设备)的网络服务提供商频繁提供。虽然该示例示出和描述了虚拟服务(或NFV),但是服务可以由云交换提供商支配的控制器、设备或容器来应用。
在该示例中,PE路由器12602表示真实或虚拟PE路由器,其聚合来自多个云服务提供商12606的服务流量以传递到单个客户12604。可编程网络平台12500配置PE路由器12602以导入和导出用于云服务提供商12606的L3路由,从而使得所聚合的层3云服务云服务传递,如以上关于图1至4所述。另外,可编程网络平台12500允许客户、云服务提供商和/或云交换提供商为边缘网络12600配置服务12614、12616和12618,以便确保传递来自相应云服务提供商12606A至12606C的云服务流量。
在一些方面,本文所描述的控制器(诸如可编程网络平台)可以提供L3基于云的服务交换(“云交换”)来传递由不同云服务提供商及在一些情况下由云交换本身提供的多个构成服务组成的服务。这些构成服务中的每一个在本文称为“微服务”,因为它是应用于服务流量的整体服务的一部分。即,可以将多个微服务应用到在特定“布置”、“排序”或“拓扑”中的服务流量,以便组成服务流量的整体服务。微服务本身可以由云服务提供商应用或提供。
可编程网络平台可以这样在异构云服务提供商之间编配业务水平服务。可编程网络平台暴露应用编程接口(API),门户、控制台(例如,用户界面应用)或其他应用可以通过该API定义由不同云提供商(或“云供应商”)提供的微服务组成的协同服务拓扑的服务策略、质量、服务水平协议(SLA)和成本。作为整体端到端业务服务定义的一部分,每个微服务可以具有对应的服务策略、质量、SLA和成本,如以下更详细描述的。当被提供有用于具有多个组件微服务的端到端服务的服务定义时,可编程网络平台编配云交换内的每个微服务并且根据所定义的拓扑将微服务联结在一起,以便具体化在云交换数据平面(例如,用于云交换的边缘网络)内的端到端服务。因此,代表云交换的客户的利益,云交换在数据平面中互连由相应云服务提供商提供的微服务。这样做时,云交换提供商可以促进在云服务提供商和客户之间的业务交易。
图14B是示出可编程边缘网络的示例配置的框图,该可编程边缘网络已经被配置成提供由相应云服务提供商应用的多个构成微服务序列的端到端服务。边缘网络12600可以包括本文所述的基于数据中心的云交换或云交换点中的任何一个,诸如图1的云交换点128、图2的云交换200和包括数据结构11614的图10的云交换点。
用于为客户建立的整体服务的微服务可以包括任何排序的软件即服务(SaaS)、平台aaS(PaaS)、基础设施aaS(IaaS)、虚拟化aaS(VaaS)和数据存储aaS(dSaaS)服务的混合。例如,不同的云服务提供商12606可以执行分析服务流量12612的应用数据的应用以生成报告数据,存储应用数据,生成用于作为附加服务流量12612沿着微服务序列发送的新应用数据等。
根据本文描述的技术,云服务提供商12606中的每一个提供/执行微服务,边缘网络12600布置(或“链”)在一起以形成用于客户12604的整体多云服务。更具体地,在一些方面,可编程网络平台12500配置路由器(或转发器)12602以将由相应各种云服务提供商12606提供的微服务联结到整体服务中,以应用到服务流12612的分组。
客户12604可以使用可编程网络平台12500来选择和布置云服务提供商12606的微服务,其用于由客户12604网络发起或接收的服务流量中的至少一些。如上所述,可编程网络平台12500可以将客户连接性提供到多个不同的云服务提供商。在选择提供微服务和用于微服务的拓扑的云服务提供商时,可编程网络平台12500配置边缘网络12600从而为客户12604供应用于微服务的连接性。选择云服务提供商可以包括录入由云服务提供商提供的微服务的连接性参数。此类连接性参数可以包括L3路由和带宽或其他QoS要求。
在所示的示例中,路由器12602接收用于每个云服务提供商12606网络的L3路由,该云服务提供商使得路由器12602能够沿着整体端到端服务路径转发服务流量12612。为了实现路由器12602,可编程网络平台12500可以例如配置一个或多个服务器12620A以执行虚拟路由器(或配置专用路由器),该虚拟路由器包括用于每个云服务提供商12606网络的VRF。如以上参考图4所述的,例如,VRF可以与路由目标相关联,以建立用于借助路由器12602向和从提供微服务的云服务提供商12606网络发送和接收服务流量12612的中心辐射状拓扑。
因此,支配边缘网络12600的云交换提供商使用可编程网络平台12500可以减轻客户12604建立、支配并且至少在某些情况下保证由云服务提供商12606的微服务组成的端到端服务。客户12604例如可以根据云交换提供商路由将服务流量12612转发到边缘网络12600,且不需要与云服务提供商12606网络对等以便获得用于那些网络中的每一个的路由。相反,边缘网络12600的云交换点将与云服务提供商12606网络对等布置的L3路由协议内部化,并将L3路由导入云服务提供商12606网络,以便沿整体服务的拓扑转发服务流量。
路由器12602可以包括由可编程网络平台配置的VRF,以导入和导出用于由云服务提供商12606提供的服务的相应L3路由。在一些情况下,路由器12602可以从可编程网络平台接收路由,或者经由对等会话借助边缘网络12600的提供商边缘(PE)路由器接收路由,所述边缘网络12600将云交换连接到云服务提供商12606网络中的任一个。
边缘网络12600可以将通过云交换借助云服务提供商12606网络而NAT化(NATed)的云交换点自主系统的L3路由,用于vNAT服务12614(在本示例中其包括NAT服务)的L3路由,或云服务提供商12606D网络的L3路由通知到客户12604。以这种方式,边缘网络12600可以将多云L3服务的传递聚合到客户12604。
图14B示出了由边缘网络12600将由多个微服务组成的端到端服务传递到服务流量12612。客户12604网络将服务流量12612发送到边缘网络12600,并且将去往由边缘网络12600通知为L3路由的前缀内的网络地址发送到客户12604网络。服务流量12612可以包括一个或多个分组流,每个分组流与一个或多个分组相关联,该一个或多个分组包括由客户12604网络内执行的应用生成和/或消费的应用层数据。虽然在图14B示出为由客户12604网络发起并且朝向云服务提供商向上游进行,但是所述技术相似地可适用于去往客户12604网络的下游服务流量以及由云服务提供商12606网络之一发起的下游服务流量以及去往云服务提供商12606网络之一。例如,云服务提供商12606D可以经由路由器12602将应用数据注入到云服务提供商12606C网络执行的应用以分析应用数据,其将所分析的应用数据发送到云服务提供商12606B网络,其继而发送用于存储的应用程序数据到提供dSaaS的云服务提供商12606A网络。
然而,在所示的示例中,路由器12602接收服务流量12612,确定用于服务流量12612的第一微服务,并将服务流量12612引导到云服务提供商12606A网络。云服务提供商12606A网络将其微服务返回服务流量12612应用(该服务流量12612可以根据由云服务提供商12606A应用的微服务从由客户12604发起的服务流量修改)到路由器12602。
路由器12602确定用于服务流量12612的下一个微服务,并将服务流量12612转发到云服务提供商12606B。云服务提供商12606B网络应用其微服务,并将服务流量12612(其可以根据由云服务提供商12606B应用的微服务修改)返回到路由器12602。
路由器12602确定用于服务流量12612的下一个微服务,并将服务流量12612转发到云服务提供商12606C。云服务提供商12606C网络应用其微服务,并将服务流量12612(其可以根据由云服务提供商12606C应用的微服务修改)返回到路由器12602。路由器12602确定用于服务流量12612的下一个微服务,并将服务流量12612转发到云服务提供商12606D。
再次,在一些示例中,CSP 12606可以发起,而边缘网络12600可以将服务流量向下游传递到客户12604,其中边缘网络12600将一组微服务应用于此类下游服务流量。例如,云服务提供商12606D网络可以包括或另外表示内容传递网络(CDN)。CDN可以将流视频、流音频、流多媒体、游戏内容或其他内容传递服务提供到客户,且在这种情况下将这些内容经由云交换提供到客户12604。
因此,代表云交换的客户利益或者至少一个云交换服务提供商的客户12604的利益,包括云交换的边缘网络12600在数据平面中互连由相应云服务提供商12606提供的微服务。
当被提供有用于具有多个组成微服务的端到端服务的服务定义时,本文所描述的可编程网络平台可以编配云交换内的每个微服务并且根据定义的拓扑将微服务联结在一起,以便在云交换(或包括云交换的边缘网络)内具体化端到端服务。根据本公开的技术,用于端到端服务的服务定义可以使得可编程网络平台的用户不仅以此类方式定义端到端服务而且定义服务拓扑,以便确保微服务链的正确排序。封装在用于服务定义的数据模型中的数据还可以包括用于商业目的(例如,计费和SLA保证)的授权服务所有者。“用户”可以指客户、云交换提供商或作为授权服务所有者的云服务提供商。
通过使用本文所述的用于多个云、多个服务的服务定义的数据模型,可以使得可编程网络平台(或其他编配系统,诸如SDN控制器或编配器)能够将服务请求识别为组成整个服务的一组微服务的请求。在一些示例中,服务定义包括若干部分,其使得可编程网络平台能够提供链接若干服务(无论是由云交换提供商提供的本地服务还是由一个或多个云服务提供商提供的云服务的服务)。即,支配可编程网络平台的云交换提供商能够提供服务链,当给定用于多个微服务的相应定义和用于多个微服务的拓扑(或序列)时,该服务链互连根据拓扑的微服务以有利于端到端的服务。因此,数据模型提供了数据,借助该数据,可编程网络平台可以有效地实例化所请求的服务链并且还确保因此呈现的服务链接在正确拓扑中。数据模型可以由可编程网络平台划分成一个或多个服务请求,用于云交换的本地可编程网络平台可以将该一个或多个服务请求发布到其他服务编配系统以便完成。其他服务编配系统可以包括例如用于云服务提供商的SDN控制器和/或编配系统,其有利于路由到NFV实例/来自NFV实例的NFV例示和服务流量。
符合所描述的技术的多个云、多个服务的数据模型的服务定义可以指定与以下中的一个或多个相关联的总体端到端服务:(1)发起者,(2)所有者,(3)标识符,(4)目的地和(5)拓扑。发起者指端到端服务请求者,通常但不排除云交换的客户。所有者是指授权服务所有者,其例如代表云服务提供商的利益,处理并响应于对于发起者/客户的计费和充值。标识符唯一地识别云交换内的端到端服务。目的地是指云交换,其中请求的服务被实例化。拓扑确定包括在服务目的地中的微服务的阵列的序列。
在服务定义内限定的每个微服务可为微服务的阵列的元。微服务可以在数据模型中与以下中的一个或多个相关联:(1)描述性信息,(2)第一或“客户”端点,(3)第二或“云服务提供商”端点,(4)待由用于微服务的云交换应用的策略,(5)用于微服务的服务质量(QoS)参数,以及(6)用于微服务的时间范围。
描述性信息可以包括用于云交换内的微服务的唯一标识符。用于数据模型的第一端点可以指定客户标识符和服务密钥,云交换附加到该客户标识符以便服务传递。服务密钥为许可密钥,其由客户获得用于实例化和激活所请求服务的目的。在云交换本身临时请求服务的事件中,云交换可以从云服务提供商获得服务密钥,并使用服务密钥来实例化和激活服务。用于数据模型的第二端点可以指定云服务提供商标识符和服务密钥,云交换附加到云服务提供商标识符以便服务传递。用于第一端点和第二端点的每个端点描述还可以包括端点具体数据,诸如城市位置标识符、端口标识符、数据中心标识符、虚拟电路和虚拟电路带宽、配置文件和配置等。
策略可以识别在对应微服务上待应用的配置和设定。例如,策略可以包括用于服务链内的防火墙微服务的防火墙规则。另一个策略可以包括用于DPI微服务的分组检查规则。另一个策略可以指定待应用于QoS微服务的QoS。时间范围用于指定当查询服务状态时待报告的服务度量的持续时间。在一些示例中,仅在服务的读取操作期间使用时间范围。
可编程网络服务数据模型可以由本文所描述的可编程网络平台的任何示例的服务接口使用,以允许外部应用定义微服务的拓扑。以下MS_API定义是根据本文所描述的技术的可编程网络服务数据模型的示例:
MS_API端到端服务定义数据模型包括SRVC_Tag和SRVC_Value容器。SRVC_Tag容器包括与整体服务定义相关联的值。具体地,SRVC_Orig指定发起者,SRVC_Owner指定服务的授权所有者,SRVC_accID将属于识别发起者的服务发起者的账户标识符指定到云交换提供商,SRVC_Dest指定实例化所请求服务的云交换,而SRVC_Topology指定在SRVC_Value容器中指定的微服务阵列的序列。
SRVC_Value是微服务定义容器,并且包括用于相应微服务的一个或多个微服务定义。以下SRVC_API数据模型为例如用于以上MS_API定义模型的微服务定义的示例。
以上服务定义包括用于经由可编程网络平台指定和获得微服务的特性的服务定义(“Srvc_Defn”)、策略(“Policy”)、服务质量(“QOS”)和时间范围(“TimeRange”)。服务定义容器指定用于微服务的描述性信息,包括Srvc_AccID、Srvc_Type、Srvc_Oper_Type、Srvc_ID、Target_SP、Srvc_Vendor。Srvc_AccID是借助特定目标服务提供商Target_SP唯一地识别特定服务发起者的唯一帐户标识符。Srvc_Type可以仅当提供本地云交换服务时适用,并且定义正被传递的云交换服务的类型。Srvc_Oper_Type指定操作类型,即CRUD操作之一。Srvc_ID由发起者为已经存在的(例如,已经创建的)服务的发起者提供,对该存在的服务实施读取、更新或删除操作。Target_SP为提供所请求服务的目标服务提供商。
端点1容器定义用于微服务的云交换的第一端点且指定服务提供商标识符(SP_ID),云交换附接到服务提供商标识符(SP_ID)以便使用服务密钥或许可密钥传递服务。端点2容器定义用于微服务的云交换的第二端点且指定云服务提供商标识符(CSP_ID)和服务密钥,云交换附接到云服务提供商标识符(CSP_ID)以便服务传递。用于第一端点和第二端点的每个端点描述还包括端点具体数据,诸如城市位置标识符、端口标识符、数据中心标识符等。
策略容器中的策略可以识别需要应用到被实例化的服务的配置设定,用于所述服务的策略的示例包括防火墙规则、NAT规则、加密策略,WAN优化策略等。换句话讲,策略确定所应用的服务将被配置以便应用到在微服务的第一端点和第二端点之间的服务流量。QoS容器中的QoS参数指定待应用到用于微服务的微服务流量的QoS。TimeRange容器中的时间范围指定了定义微服务的持续时间的开始时间和结束时间,在此期间可编程网络平台可以使用服务标识符(“Srvc_ID”)向始发者和/或所有者提供保证。
用于根据数据模型通信服务定义的接口可以包括通过HTTP/HTTPS的可扩展标记语言(XML)或JavaScript对象表示法(JSON)。即,云交换提供商可以定义根据上述示例性服务数据模式接收服务定义的XML/JSON接口,并且暴露用于接收此类服务定义的HTTP端点。
图15是示出根据本公开中描述的技术使用可编程网络平台对云交换进行编程的组件之间的接口的概念图。可编程网络平台12500暴露用于服务传递和数据访问的服务API12710。在本公开中其它地方描述的用于与可编程网络平台12500的实施例通信的API和其他接口的各种实施例可以全部表示服务API 12710的示例。服务API 12710可以使用可编程网络服务数据模型(诸如上述MS_API)来定义由微服务的拓扑组成的端到端服务。
元控制台12704表示由云服务提供商制造的平台,其可由云服务提供商技术人员或操作者使用,例如调用可编程网络平台12500的服务API12710。“CX”或客户门户12702表示由云服务提供商制造的平台,其可由企业/客户/CSP技术人员或操作者使用,例如,其调用可编程网络平台12500的服务API 12710。云交换开发者(CX API)12700表示由调用服务API12710以从可编程网络平台12500请求服务的第三方开发者(例如CSP或客户开发者)或云交换提供商开发者创建的第三方开发的或云服务提供商开发的平台。
业务应用12706可以存储客户的账单信息。例如,业务应用10019可以存储客户的计费信息,举例来说,诸如姓名、客户标识符、地址、电话号码、电子邮箱。当可编程网络平台12500为客户配置包括服务费的服务时,业务应用12706可以存储此类花费信息。以这种方式,业务应用12706可以提供由客户购买的服务的账单并且提供此类服务的计费。在业务应用12706和可编程网络平台12500之间的API可以包括PACE集成。
图16是示出根据本公开中描述的技术的包含接口的可编程网络平台的框图,外部应用可以通过该接口配置云交换以有利于传递来自云服务提供商的云服务。在该示例中,可编程网络平台12500暴露用于服务传递和数据访问的服务API 12820。API的各种实施例和在本公开其他地方描述的用于与可编程网络平台12500的实施例通信的其他接口可以全部表示服务API 12820的示例。
在该示例中,服务API 12820包括至少一个第三方插件12810,其由云服务提供商开发并由可编程网络平台12500执行以从云服务提供商请求和建立层3云服务。插件12810可以表示第三方编配模块10404中的任一个。插件12810可以实现用于可编程网络平台12500的公共插件接口,并且将接口方法、字段等翻译成用于CSP编配的云服务提供商接口。例如,可编程网络平台12500可以调用插件12810以从云交换提供商的云服务提供商请求服务实例(例如,60GB数据存储服务)。用于云服务提供商的插件12810接收请求并调用CSP编配系统12800以允许云服务提供商编配所请求的服务的例示。然后,CSP编配12800经由插件12810以“网络句柄(network handle)”的形式将连接性信息返回到可编程网络平台12500。网络句柄包括信息,云交换通过该信息可以连接到实例化的、所请求服务。例如,网络句柄可以包括VxLAN或VLAN标识符、层3路由或网络地址、隧道信息和/或云聚合链路信息。可编程网络平台12500使用网络句柄来配置边缘网络12600以连接到实例化的所请求服务,并且将至少一个客户网络互连到实例化的所请求服务。
操作门户12804表示由云服务提供商制造的平台,其由云服务提供商技术人员或操作者使用,例如,其调用可编程网络平台12500的服务API12820。CSP编配系统12800表示由云服务提供商开发并且可由可编程网络平台12500使用以从云服务提供商请求层3服务的一个或多个系统。API网关12802提供高级API,客户开发的平台或云服务提供商开发的客户门户可以通过该高级API从可编程网络平台12500请求服务。API网关和高级API的另外细节在美国临时专利申请第62/072,976中可见,该申请结合于上文。
图17是示出根据本公开的一种或多种技术操作的计算设备的一个示例的进一步细节的框图。图17可以示出服务器或其他计算设备13500的特定示例,该服务器或其他计算设备13500包括用于执行本文描述的可编程网络平台的任何一个或多个或者任何其他系统、应用或模块的一个或多个处理器13502。可以在其他实例中使用计算设备13500的其他示例。虽然仅作为示例而在图12中示出为单独计算设备13500,但是计算设备可为包括用于执行软件指令的一个或多个处理器或其他合适计算环境的任何组件或系统,且例如不必要包括在图17中示出的一个或多个元件(例如,通信单元13506;并且在一些示例中诸如一个或多个存储设备13508的组件可以不共同定位或在相同底座中作为其他组件)。
如在图17的具体示例中所示,计算设备13500包括一个或多个处理器13502、一个或多个输入设备13504、一个或多个通信单元13506、一个或多个输出设备13512、一个或多个存储设备13508和用户界面(UI)设备13510以及通信单元13506。在一个示例中,计算设备13500还包括可由计算设备13500执行的一个或多个应用程序13522,一个或多个可编程网络平台应用程序13524和操作系统13516。组件13502、13504、13506、13508、13510和13512中的每一个被耦合(物理地、通信地和/或操作地)用于组件间通信。在一些示例中,通信信道13514可以包括系统总线、网络连接、进程间通信数据结构或用于使数据通信的任何其它方法。例如,组件13502、13504、13506、13508、13510和13512可以通过一个或多个通信信道13514耦合。
在一个示例中,处理器13502被配置成实现用于在计算设备13500内执行的功能性和/或处理指令。例如,处理器13502能够处理存储在存储设备13508中的指令。处理器13502的示例可以包括以下中的任一个或多个:微处理器、控制器、数字信号处理器(DSP)、专用集成电路(ASIC)、现场可编程门阵列(FPGA)或等效分立或集成逻辑电路。
一个或多个存储设备13508可以被配置成在操作期间于计算设备13500内存储信息。在一些示例中,存储设备13508被描述为计算机可读存储介质。在一些示例中,存储设备13508是临时存储器,这意味着存储设备13508的主要目的不是长期存储。在一些示例中,存储设备13508被描述为易失性存储器,意味着当计算机关闭时存储设备13508不保持存储的内容。易失性存储器的示例包括本领域公知的随机存取存储器(RAM)、动态随机存取存储器(DRAM)、静态随机存取存储器(SRAM)和其它形式的易失性存储器。在一些示例中,存储设备13508用于存储由处理器13502执行的程序指令。在一个示例中,存储设备13508由在计算设备13500上运行的软件或应用程序使用,以在程序执行期间临时存储信息。
在一些示例中,存储设备13508还包括一个或多个计算机可读存储介质。存储设备13508可以被配置成比易失性存储器存储更大量的信息。存储设备13508还可以被配置成用于信息的长期存储。在一些示例中,存储设备13508包括非易失性存储元件。这种非易失性存储元件的示例包括磁硬盘、光盘、软盘、闪存,或电可编程存储器(EPROM)或电可擦除可编程(EEPROM)存储器的形式。
在一些示例中,计算设备13500还包括一个或多个通信设备13506。在一些示例中,计算设备13500利用通信设备13506经由一个或多个网络(诸如一个或多个有线/无线/移动网络)与外部设备通信。通信单元13506可以包括网络接口卡(诸如以太网卡)、光收发器、射频收发器或者可以发送和接收信息的任何其他类型的设备。在一些示例中,计算设备13500使用通信单元13506与外部设备通信。
在一个示例中,计算设备13500还包括一个或多个用户界面设备13510。在一些示例中,用户界面设备13510被配置成通过触觉、音频或视频反馈从用户接收输入。一个或多个用户界面设备13510的示例包括用于检测来自用户的命令的存在敏感显示器、鼠标、键盘、语音响应系统、摄像机、麦克风或任何其他类型的设备。在一些示例中,存在敏感显示器包括触摸屏幕。
一个或多个输出设备13512也可以包括在计算设备13500中。在一些示例中,输出设备13512被配置成使用触觉、音频或视频刺激将输出提供到用户。在一个示例中,输出设备13512包括用于将信号转换成可由人或机器理解的适当形式的存在敏感显示器、声卡、视频图形适配器卡或任何其他类型的设备。输出设备13512的另外示例包括可产生用户可理解的输出的扬声器、阴极射线管(CRT)监视器、液晶显示器(LCD)或任何其它类型的设备。
计算设备13500可以包括操作系统13516。在一些示例中,操作系统13516控制计算设备13500的组件的操作。例如,在一个示例中,操作系统13516有利于一个或多个应用13522及一个或多个可编程网络平台应用13524与处理器13502、通信单元13506、存储设备13508、输入设备13504、用户界面设备13510以及输出设备13512的通信。
应用522和一个或多个可编程网络平台应用13524还可以包括可由计算设备13500执行的程序指令和/或数据。可由计算设备13500执行的示例性可编程网络平台应用13524可以包括集中式网络控制应用13550(“CNC13550”)和网络字段单元应用13552(“NFU13552”)中的任何一个或多个,每个用虚线示出以指示这些可以由或可以不由计算设备13500中的任何给定示例执行。
集中式网络控制13550可以包括用于使计算设备13500实施在本公开中关于集中式网络控制描述的操作和动作中的一个或多个的指令。例如,CNC 13550可以包含指令,该指令使计算设备13500以自动和无缝方式建立、卸载和管理与参与云交换的多个不同云服务提供商的互连。
网络字段单元13552可以包括用于使计算设备13500实施在本公开中关于网络字段单元描述的操作和动作中的一个或多个的指令。例如,NFU13552可以包括这样的指令,该指令使计算设备13500从在另一个服务器上执行的CNC(例如在不同的地理位置,诸如不同的数据中心)接收请求或指令,以配置云交换点的网络基础设施以便供应一个或多个服务。
用于基于云的服务交换的可编程网络平台
在以下条款中描述各种示例。根据本文所描述的技术,在下面任一条款中阐述的示例可以并入贯穿本公开描述的任何其它示例并且结合贯穿本公开描述的任何其它示例来实现。
条款1.一种方法包括,由用于在数据中心内的基于云的服务交换点的可编程网络平台接收包括根据数据模型的服务定义的服务请求,其中所述服务定义指定由相应云服务提供商操作的相应云服务提供商网络提供的多个云服务,其中所述服务请求还指定用于所述多个云服务的拓扑;和由所述可编程网络平台响应于所述服务请求而供应所述基于云的服务交换点以根据用于所述多个云服务的所述拓扑转发用于所述多个云服务的服务流量。
条款2.根据条款1所述的方法,其中所述服务定义将所述服务请求识别为用于所述多个云服务的请求。
条款3.根据条款1所述的方法,其中所述服务定义包括用于包括所述多个云服务的整体服务的授权服务所有者。
条款4.根据条款3所述的方法,其中所述授权服务所有者为操作所述基于云的服务交换的云交换提供商。
条款5.根据条款1所述的方法,其中所述服务定义包括用于包括所述多个云服务的整体服务的服务标识符。
条款6.根据条款1所述的方法,其中所述服务请求由所述基于云的服务交换的客户发起。
条款7.根据条款1所述的方法,其中所述服务定义包括指定所述多个云服务的数量的值。
条款8.根据条款1所述的方法,其中所述服务定义根据公共微服务定义指定所述多个云服务中的每个。
条款9.根据条款8所述的方法,其中所述公共微服务定义指定第一端点和第二端点,所述第一端点识别用于云服务的第一云服务提供商,所述第二端点识别第二云服务提供商和客户中的一个。
条款10.根据条款8所述的方法,其中所述公共微服务定义指定定义应用到云服务的策略的策略定义。
条款11.根据条款8所述的方法,其中所述公共微服务定义指定多个服务定义,其定义应用到云服务的服务的质量。
条款12.根据条款8所述的方法,其中所述公共微服务定义指定定义时间范围的时间范围定义,在所述时间范围期间所述基于云的服务交换通过基于云的服务交换提供保证与服务的传递。
条款13.根据条款1所述的方法,其中为了指定所述多个云服务,所述服务定义包括定义所述多个云服务中的对应云服务的多个微服务定义的阵列。
条款14.一种网络数据中心,包括包含网络的基于云的服务交换点,其由操作网络数据中心的云交换提供商操作;以及可编程网络平台,其包括至少一个可编程处理器,其被配置成接收包括根据数据模型的服务定义的服务请求,其中所述服务定义指定由相应云服务提供商操作的相应云服务提供商网络提供的多个云服务,其中所述服务请求还指定用于所述多个云服务的拓扑;并且其中所述服务定义根据公共微服务定义指定所述多个云服务中的每个;以及响应于所述服务请求而供应所述基于云的服务交换点以根据用于所述多个云服务的所述拓扑转发用于所述多个云服务的服务流量。
条款15.根据条款14所述的网络数据中心,其中所述公共微服务定义指定第一端点和第二端点,所述第一端点识别用于云服务的第一云服务提供商,所述第二端点识别第二云服务提供商和客户中的一个。
条款16.根据条款14所述的网络数据中心,其中所述公共微服务定义指定定义应用到云服务的策略的策略定义。
条款17.根据条款14所述的网络数据中心,其中所述公共微服务定义指定多个服务定义,其定义应用到云服务的多个服务。
条款18.根据条款14所述的网络数据中心,其中所述公共微服务指定定义时间的范围的时间范围定义,在所述时间的范围期间所述基于云的服务交换通过所述基于云的服务交换提供云服务的所述传递的保证。
条款19.根据条款14所述的网络数据中心,其中为了指定所述多个云服务,所述服务定义包括定义所述多个云服务中的对应云服务的多个微服务定义的阵列。
条款20.一种包含指令的非易失性计算机可读介质,当执行时所述指令使得用于基于数据中心的云交换的可编程网络平台的至少一个可编程处理器实施包括接收服务请求的操作,所述服务请求包括根据数据模型的服务定义,其中所述服务定义指定由相应云服务提供商操作的相应云服务提供商网络提供的多个云服务,其中所述服务请求还指定用于所述多个云服务的拓扑;和将所述基于云的服务交换点供应到所述服务请求以根据用于所述多个云服务的所述拓扑转发用于所述多个云服务的服务流量。
通过云交换的多个云服务传递
在以下条款中描述各种示例。根据本文所描述的技术,在下面任一条款中阐述的示例可以并入贯穿本公开描述的任何其它示例并且结合贯穿本公开描述的任何其它示例来实现。
条款1.一种方法,包括由用于在数据中心内的基于云的服务交换点的可编程网络平台接收服务请求,其指定由相应云服务提供商操作的相应云服务提供商网络提供的多个云服务,其中所述服务请求还指定用于所述多个云服务的拓扑;和由所述可编程网络平台响应于所述服务请求而供应所述基于云的服务交换点以根据用于所述多个云服务的所述拓扑转发用于所述多个云服务的服务流量。
条款2.根据条款1所述的方法,其中供应所述基于云的服务交换点包括,由所述可编程网络平台配置所述基于云的服务交换点的虚拟路由器以接收用于所述云服务提供商网络的相应层3路由,且其中所述虚拟路器根据用于所述多个云服务的所述拓扑转发根据用于所述云服务提供商网络的所述层3路由的所述服务流量。
条款3.根据条款2所述的方法,其中所述基于云的服务交换点包括由云交换提供商操作并位于数据中心内的层3(L3)自主系统,其中所述L3自主系统包括通过多个隧道与多个提供商边缘(PE)路由器互连的互联网协议网络,并且其中为了供应所述基于云的服务交换点,所述可编程网络平台配置所述多个PE路由器以包括所述多个隧道中的一个的建立端到端L3路径,和在层3将每个所述云服务提供商网络连接到所述虚拟路由器。
条款4.根据条款3所述的方法,其中为了供应所述基于云的服务交换点,所述可编程网络平台借助定义相应虚拟专用网络路由和转发用于所述多个云服务的实例(VRF)的配置数据来配置所述多个PE路由器,其中所述多个PE路由器经由第一路由协议接收用于所述云服务提供商网络的相应层3路由路由,并且其中所述虚拟路由器经由第二路由协议从所述多个PE路由器接收用于所述云服务提供商网络的层3路由。
条款5.根据条款1所述的方法,其中供应所述基于云的服务交换点包括,由所述可编程网络平台借助用于所述云服务提供商网络的相应层2虚拟专用网络配置所述基于云的服务交换点的虚拟路由器,且其中所述虚拟路器根据用于所述多个云服务的所述拓扑转发根据用于所述云服务提供商网络的所述相应层2虚拟专用网络的所述服务流量。
条款6.根据条款1所述的方法,其中所述服务请求符合将所述服务请求标识为用于所述多个云服务的请求的服务定义。
条款7.根据条款1所述的方法,其中所述服务请求指定用于包括所述多个云服务的整体服务的授权服务所有者。
条款8.根据条款7所述的方法,其中所述授权服务所有者为操作所述基于云的服务交换的云交换提供商。
条款9.根据条款1所述的方法,其中所述服务请求指定用于包括所述多个云服务的整体服务的服务标识符。
条款10.根据条款1所述的方法,其中所述服务请求由所述基于云的服务交换的客户发起。
条款11.根据条款1所述的方法,还包括由用于所述多个云服务中的每个云服务的所述可编程网络平台将用于所述云服务的服务请求发送到用于所述对应云服务提供商网络的编配系统,从而使所述编配系统在所述云服务提供商网络内编配所述云服务。
条款12.根据条款1所述的方法,其中所述服务请求还指定由所述基于云的服务交换点应用的本地服务,所述方法还包括由所述可编程网络平台响应于所述服务请求供应所述基于云的服务交换点以将所述本地服务应用到用于所述多个云服务中的至少一个的服务流量。
条款13.一种网络数据中心,包括包含网络的基于云的服务交换点,所述基于云的服务交换点由操作网络数据中心的云交换提供商操作;以及可编程网络平台,其包括至少一个可编程处理器,其被配置成接收指定由相应云服务提供商操作的相应云服务提供商网络提供的多个云服务的服务请求,其中所述服务请求还指定用于所述多个云服务的拓扑;并且响应于所述服务请求而供应基于云的服务交换点以根据用于多个云服务的拓扑转发用于多个云服务的服务流量。
条款14.根据条款13所述的网络数据中心,其中供应所述基于云的服务交换点包括,由所述可编程网络平台配置所述基于云的服务交换点的虚拟路由器以接收用于所述云服务提供商网络的相应层3路由,且其中所述虚拟路器根据用于所述多个云服务的所述拓扑转发根据用于所述云服务提供商网络的所述层3路由的所述服务流量。
条款15.根据条款14所述的网络数据中心,其中所述基于云的服务交换点包括由云交换提供商操作并位于所述网络数据中心内的层3(L3)自主系统,其中所述L3自主系统包括通过多个隧道与多个提供商边缘(PE)路由器互连的互联网协议网络,并且其中为了供应所述基于云的服务交换点,所述可编程网络平台配置所述多个PE路由器以建立包括所述多个隧道中的一个的端到端L3路径,以及在层3将每个所述云服务提供商网络连接到所述虚拟路由器。
条款16.根据条款13所述的网络数据中心,其中供应所述基于云的服务交换点包括,由所述可编程网络平台借助用于所述云服务提供商网络的相应层2虚拟专用网络配置所述基于云的服务交换点的虚拟路由器,且其中所述虚拟路器根据用于所述多个云服务的所述拓扑转发根据用于所述云服务提供商网络的所述相应层2虚拟专用网络的所述服务流量。
条款17.根据条款13所述的网络数据中心,其中所述服务请求符合将所述服务请求标识为用于所述多个云服务的请求的服务定义。
条款18.根据条款13所述的网络数据中心,其中所述服务请求指定用于包括所述多个云服务的整体服务的授权服务所有者。
条款19.根据条款13所述的网络数据中心,其中所述服务请求指定用于包括所述多个云服务的整体服务的服务标识符。
条款20.一种包含指令的非易失性计算机可读介质,当执行时所述指令使得用于基于数据中心的云交换的可编程网络平台的至少一个可编程处理器实施包括以下各项的操作:接收服务请求,所述服务请求指定由相应云服务提供商操作的相应云服务提供商网络提供的多个云服务,其中所述服务请求还指定用于所述多个云服务的拓扑;和将所述基于云的服务交换点供应到所述服务请求以根据用于所述多个云服务的所述拓扑转发用于所述多个云服务的服务流量。
用于云交换可编程网络平台的第三方编配模块
在以下条款中描述各种示例。根据本文所描述的技术,在下面任一条款中阐述的示例可以并入贯穿本公开描述的任何其它示例并且结合贯穿本公开描述的任何其它示例来实现。
条款1.一种可编程网络平台,包括至少一个可编程处理器;第三方编配模块,其被配置成由所述至少一个可编程处理器执行以与云服务提供商编配系统通信;以及集中式网络控制器,其被配置成由所述至少一个可编程处理器执行以接收服务请求,所述服务请求指定由云服务提供商网络应用的云服务,所述云服务提供商网络由云服务提供商在由云服务提供商操作云交换的网络上操作,其中所述集中式网络控制器还被配置成响应于所述服务请求调用所述第三方编配模块来与所述云服务提供商编配系统通信,以请求所述云服务提供商在所述云交换的所述网络上编配所述云服务,并且其中所述集中式网络控制器在数据中心内供应所述云交换的所述网络以将所述云服务从附接到所述云交换的所述网络的所述云服务提供商网络传递到附接到所述云交换的所述网络的客户网络。
条款2.根据条款1所述的可编程网络平台,其中所述第三方编配模块向所述可编程网络平台注册以发布由所述云服务提供商网络应用的服务的列表或目录。
条款3.根据条款2所述的可编程网络平台,其中所述集中式网络控制器还被配置成将所述服务的列表或目录发送到客户门户应用,以便向操作所述客户网络的客户显示。
条款4.根据条款1所述的可编程网络平台,其中所述第三方编配模块由所述云交换提供商制造。
条款5.根据条款1所述的可编程网络平台,其中所述集中式网络控制器还被配置成从所述第三方编配模块接收所述云服务的连接性信息,并且其中为了供应所述云交换的所述网络以传递所述云服务,所述集中式网络控制器还被配置成基于所述连接性信息而供应所述云交换的所述网络,以允许在所述云交换的所述网络和所述云服务提供商网络之间的网络连接性以便传递所述云服务。
条款6.根据条款5所述的可编程网络平台,其中所述连接性信息包括以下各项中的至少一个:虚拟局域网(VLAN)标识符、Vx局域网(VxLAN)标识符、指定所述云服务提供商网络的网络地址的路由和在云交换的网络中的端口。
条款7.根据条款1所述的可编程网络平台,其中所述第三方编配模块包括第一第三方编配模块,其中云服务提供商编配系统包括第一云服务提供商编配系统,其中所述云服务提供商包括第一云服务提供商,其中所述云服务提供商网络包括第一云服务提供商网络,并且其中所述云服务包括第一云服务,其中所述服务请求包括第一服务请求,所述可编程网络平台还包括第二第三方编配模块用于由所述至少一个可编程处理器执行以与第二云服务提供商编配系统通信,其中所述集中式网络控制器还被配置成由所述至少一个可编程处理器执行以接收第二服务请求,其指定由第二云服务提供商网络在所述云交换的所述网络上应用的第二云服务,其中所述集中式网络控制器还被配置成响应于所述第二服务请求调用所述第二第三方编配模块来与所述第二云服务提供商编配系统通信,以请求所述第二云服务提供商在所述云交换的所述网络上编配所述第二云服务,并且其中所述集中式网络控制器供应所述云交换的所述网络以将来自附接到所述云交换的所述第二云服务提供商网络的所述第二云服务传递到所述客户网络。
条款8.根据条款7所述的可编程网络平台,其中所述第一第三方编配模块和所述第二第三方编配模块向所述集中式网络控制器注册公共接口,所述集中式网络控制器可以通过所述公共接口调用所述第一第三方编配模块和所述第二第三方编配模块以便编配服务。
条款9.根据条款1所述的可编程网络平台,其中所述云交换包括由所述云交换提供商操作的边缘网络,并且其中为了供应所述云交换的所述网络,所述集中式网络控制器还被配置成供应所述边缘网络以接收用于所述云服务和用于分布到所述客户网络的云服务流量。
条款10.根据条款1所述的可编程网络平台,其中所述云交换的所述网络包括由所述云交换提供商操作并位于数据中心内的层3(L3)自主系统;多个附接电路,其被配置成在所述数据中心内将多个云服务提供商网络连接到所述L3自主系统,所述多个云服务提供商网络包括所述云服务提供商网络;以及一个或多个附接电路,其被配置为在所述数据中心内将一个或多个客户网络连接到所述L3自主系统,所述一个或多个客户网络包括所述客户网络,其中所述集中式网络控制器供应所述L3自主系统,以通过在所述多个云服务提供商网络和所述一个或多个客户网络之间建立端到端网络路径将所述多个云服务提供商网络和所述一个或多个客户网络互连,每个端到端网络路径包括将所述相应多个云服务提供商网络连接到所述L3自主系统的所述多个附接电路中的一个,并且还包括将所述相应的一个或多个客户网络连接到所述L3自主系统的所述一个或多个附接电路中的一个,并且其中L3自主系统被配置成转发在所述多个附接电路上接收的云服务流量,所述多个附接电路将所述相应多个云服务提供商网络沿着所述端到端网络路径连接到将所述相应一个或多个客户网络连接到所述L3自主系统的所述一个或多个附接电路。
条款11.根据条款1所述的可编程网络平台,其中所述服务请求包括指定所述云服务的一个或多个服务要求的服务定义。
条款12.根据条款1所述的可编程网络平台,其中用于所述云服务的服务流量包括网络分组,其中为了供应所述云交换的所述网络,所述集中式网络控制器还被配置成配置所述云交换的所述网络的边缘网络以转发所述网络分组。
条款13.根据条款1所述的可编程网络平台,其中所述云交换的所述网络包括由所述云交换提供商操作并位于数据中心内的层3(L3)自主系统,其中所述L3自主系统包括通过多个隧道互连多个提供商边缘(PE)路由器的互联网协议网络,并且其中为了供应所述云交换的所述网络,所述集中式网络控制器还被配置成配置所述多个PE路由器以建立端到端L3路径,其包括所述多个隧道中的一个和在层3将所述云服务提供商网络连接到所述客户网络。
条款14.一种方法,包括,由可编程网络平台的集中式网络控制器接收指定云服务的服务请求,所述云服务由云服务提供商操作的云服务提供商网络在由云交换提供商操作的云交换的网络上应用;由所述集中式网络控制器响应于所述服务请求而调用第三方编配模块以与所述云服务提供商编配系统通信,以请求所述云服务提供商在所述云交换的所述网络上编配所述云服务;以及由所述集中式网络控制器供应在数据中心内的所述云交换的所述网络,以将所述云服务从附接到所述基于云的所述服务交换点的所述云服务提供商网络传递到附接到所述基于云的服务交换点的客户网络。
条款15.根据条款14所述的方法,还包括由所述集中式网络控制器从所述第三方编配模块接收由所述云服务提供商网络提供的服务的列表。
条款16.根据条款14所述的方法,其中所述集中式网络控制器还被配置成将所述服务的列表发送到客户门户应用,以便向操作所述客户网络的客户显示。
条款17.根据条款14所述的方法,还包括由所述集中式网络控制器从所述第三方编配模块接收用于所述云服务的连接性信息,其中为了供应所述云交换的所述网络以传递所述云服务,所述集中式网络控制器基于所述连接性信息而供应所述云交换的所述网络,以允许在所述云交换的所述网络和所述云服务提供商网络之间的网络连接性以便传递所述云服务。
条款18.根据条款17所述的方法,其中所述连接性信息包括以下各项中的至少一个:虚拟局域网(VLAN)标识符、Vx局域网(VxLAN)标识符、指定所述云服务提供商网络的网络地址的路由和在基于云服务交换点中的端口。
条款19.根据条款14所述的方法,其中用于所述云交换的所述网络包括由所述云交换提供商操作的边缘网络,并且其中为了供应用于所述云交换的所述网络,所述集中式网络控制器还供应所述边缘网络以接收用于所述云服务和用于分布到所述客户网络的云服务流量。
条款20.一种网络数据中心,包括包含网络的云交换,所述云交换由云交换提供商操作;和包括至少一个可编程处理器的可编程网络平台;与云服务提供商编配系统通信的第三方编配模块;以及集中式网络控制器,其被配置成由所述至少一个可编程处理器执行以接收服务请求,所述服务请求指定由云服务提供商网络应用的云服务,所述云服务提供商网络由云服务提供商在云交换的网络上操作,其中所述集中式网络控制器还被配置成响应于所述服务请求调用所述第三方编配模块来与所述云服务提供商编配系统通信,以请求所述云服务提供商在所述云交换的所述网络上编配所述云服务,并且其中所述集中式网络控制器供应所述云交换的所述网络以将所述云服务从附接到所述云交换的所述网络的所述云服务提供商网络传递到附接到所述云交换的所述网络的客户网络。
用于基于云的服务交换的集中式网络控制
在以下条款中描述各种示例。根据本文所描述的技术,在下面任一条款中阐述的示例可以并入贯穿本公开描述的任何其它示例并且结合贯穿本公开描述的任何其它示例来实现。
条款1.一种方法,包括,由集中式网络控制(CNC)系统提供软件接口以接收服务请求,所述服务请求用于由所述CNC系统控制的一个或多个网络数据中心的边缘网络内的服务配置;由所述CNC系统并且经由所述软件接口接收服务请求以在所述网络数据中心的所述边缘网络内配置服务,其中在所述一个或多个网络数据中心内的所述边缘网络通过所述一个或多个网络数据中心的一个或多个交换结构连接;由所述CNC系统并基于所述服务请求生成指定一个或多个服务要求的网络服务定义以实现服务;由所述CNC系统并基于所述网络服务定义来确定能够服务于所述服务请求的至少一个网络字段单元,其中所述网络字段单元控制所述边缘网络的一部分,其中所述网络服务定义可由所述至少一个网络字段单元使用以配置所述边缘网络的所述一部分从而提供服务;以及由所述CNC系统发送所述网络服务定义到所述至少一个网络字段单元以在所述边缘网络的所述一部分处配置所述服务的至少一个网络服务。
条款2.根据条款1所述的方法,还包括由所述CNC系统监视用于从所述至少一个网络字段单元接收的所述服务的性能数据;由所述CNC系统将所述性能数据与由所述CNC系统存储的服务要求和服务遥测及分析数据中的至少一个进行比较,以确定所述服务要求是否由所述边缘网络的所述一部分的性能满足;由所述CNC系统响应于确定不满足用于所述服务的所述服务要求而确定至少一个补救动作以满足用于所述服务的所述服务要求;以及由所述CNC系统执行所述至少一个补救动作。
条款3.根据条款2所述的方法,其中执行所述至少一个补救动作包括将一个或多个指令发送到所述至少一个网络字段单元以重新配置所述边缘网络的至少所述一部分或所述边缘网络的不同部分。
条款4.根据条款1所述的方法,其中所述一个或多个服务要求指定以下至少一个:服务类型、用于所述服务的地理位置、用于所述服务的带宽、所述带宽是否可突发的指示、过量信息速率(EIR)、用于所述带宽的最大延迟、所述服务的最小可用性水平、用于所述服务的云服务提供商或用于所述服务的一个或多个安全特性。
条款5.根据条款1所述的方法,其中所述服务包括以下中的至少一个:层3互连服务、防火墙服务、数据存储服务、软件即服务(SaaS)服务、分析服务、网络地址翻译服务或深度包检查服务。
条款6.根据条款1所述的方法,还包括响应于在所述边缘网络的所述部分配置服务的所述至少一个网络服务,由所述CNC系统存储指示用于将服务供应到所述服务的请求者的费用的计费信息;以及由所述CNC系统将所述计费信息的指示发送到所述服务的所述请求者。
条款7.根据条款1所述的方法,其中所述一个或多个网络数据中心在地理上分散,并且其中多个网络字段单元分别借助所述一个或多个地理上分散的网络数据中心而在地理上分散,所述多个网络字段单元中的每个控制所述边缘网络的相应部分。
条款8.根据条款1所述的方法,其中所述服务定义的所述服务要求不指定所述边缘网络的特定物理设备,并且其中所述网络服务定义可由所述至少一个网络字段单元使用以配置所述边缘网络的所述特定物理设备。
条款9.根据条款1所述的方法,其中所述服务是第一服务,其中发送所述网络服务定义以在所述边缘网络的所述部分配置所述第一服务的所述至少一个网络服务,还包括配置所述边缘网络以聚合由第一云服务提供商发起的第一云服务流量和由第二云服务提供商发起的第二云服务流量;以及配置所述边缘网络以传递所述聚合的云服务流量。
条款10.一种集中式网络控制(CNC)系统,包括一个或多个计算机处理器;和包含指令的存储器,当由一个或多个计算机处理器执行时所述指令使得一个或多个计算机处理器提供软件接口以接收服务请求,所述服务请求用于由所述CNC系统控制的一个或多个网络数据中心的边缘网络内的服务配置;经由所述软件接口接收服务请以在所述网络数据中心的所述边缘网络内配置服务,其中在所述一个或多个网络数据中心内的所述边缘网络通过所述一个或多个网络数据中心的一个或多个交换结构连接;基于所述服务请求生成指定一个或多个服务要求的网络服务定义以实现服务;基于所述网络服务定义来确定能够服务于所述服务请求的至少一个网络字段单元,其中所述网络字段单元控制所述边缘网络的一部分,其中所述网络服务定义可由所述至少一个网络字段单元使用以配置所述边缘网络的所述一部分从而提供服务;以及发送所述网络服务定义到所述至少一个网络字段单元以在所述边缘网络的所述一部分处配置所述服务的至少一个网络服务。
条款11.根据条款10所述的CNC系统,其中所述存储器包含指令,当由所述一个或多个计算机处理器执行时所述指令使得所述一个或多个计算机处理器监视用于从所述至少一个网络字段单元接收的所述服务的性能数据;将所述性能数据与由所述CNC系统存储的所述服务要求和所述服务遥测及所述分析数据中的至少一个进行比较,以确定所述服务要求是否由所述边缘网络的所述部分的性能满足;响应于确定不满足用于所述服务的所述服务要求而确定至少一个补救动作以满足用于所述服务的所述服务要求;以及执行所述至少一个补救动作。
条款12.根据条款11所述的CNC系统,其中执行所述至少一个补救动作包括将一个或多个指令发送到所述至少一个网络字段单元以重新配置所述边缘网络的至少所述部分或所述边缘网络的不同部分。
条款13.根据条款10所述的CNC系统,其中所述一个或多个服务要求指定以下至少一个:服务类型、用于所述服务的地理位置、用于所述服务的带宽、所述带宽是否可突发的指示、过量信息速率(EIR)、用于所述带宽的最大延迟、所述服务的最小可用性水平、用于所述服务的云服务提供商或用于所述服务的一个或多个安全特性。
条款14.根据条款10所述的CNC系统,其中所述服务包括以下中的至少一个:层3互连服务、防火墙服务、数据存储服务、软件即服务(SaaS)服务、分析服务、网络地址翻译服务或深度包检查服务。
条款15.根据条款10所述的CNC系统,其中所述存储器包含指令,当由所述一个或多个计算机处理器执行时所述指令使得所述一个或多个计算机处理器响应于在所述边缘网络的所述部分配置服务的所述至少一个网络服务,存储指示用于将所述服务供应到所述服务的请求者的费用的计费信息;以及将所述计费信息的指示发送到所述服务的所述请求者。
条款16.根据条款10所述的CNC系统,其中所述一个或多个网络数据中心在地理上分散,并且其中多个网络字段单元分别借助所述一个或多个地理上分散的网络数据中心而在地理上分散,所述多个网络字段单元中的每个控制所述边缘网络的相应部分。
条款17.根据条款10所述的CNC系统,其中所述服务定义的所述服务要求不指定所述边缘网络的特定物理设备,并且其中所述网络服务定义可由所述至少一个网络字段单元使用以配置所述边缘网络的所述特定物理设备。
条款18.根据条款10所述的CNC系统,其中所述服务为第一服务,其中所述存储器包含指令,当由所述一个或多个计算机处理器执行时所述指令使得所述一个或多个计算机处理器配置所述边缘网络以聚合由所述第一云服务提供商发起的第一云服务流量和由第二云服务提供商发起的第二云服务流量;以及配置所述边缘网络以传递所聚合的云服务流量。
条款19.一种包含指令的非易失性计算机可读介质,当执行时所述指令使得集中式网络控制(CNC)系统中的至少一个可编程处理器实施操作,所述操作包括提供软件接口以接收服务请求,所述服务请求用于由所述CNC系统控制的一个或多个网络数据中心的边缘网络内的服务配置;经由所述软件接口接收服务请求以在所述网络数据中心的所述边缘网络内配置服务,其中在所述一个或多个网络数据中心内的所述边缘网络通过所述一个或多个网络数据中心的一个或多个交换结构连接;基于所述服务请求生成指定一个或多个服务要求的网络服务定义以实现服务;基于所述网络服务定义来确定能够服务于所述服务请求的至少一个网络字段单元,其中网络字段单元控制边缘网络的一部分,其中所述网络服务定义可由所述至少一个网络字段单元使用以配置所述边缘网络的所述一部分从而提供所述服务;以及发送所述网络服务定义到所述至少一个网络字段单元以在所述边缘网络的所述一部分配置所述服务的至少一个网络服务。
条款20.根据条款19所述的包含指令的非易失性计算机可读介质,当执行时所述指令使得所述至少一个可编程处理器实施操作,所述操作包括监视用于从所述至少一个网络字段单元接收的所述服务的性能数据;将所述性能数据与所述CNC系统存储的服务要求和服务遥测及分析数据中的至少一个进行比较,以确定所述服务要求是否由所述边缘网络的所述一部分的性能满足;响应于确定不满足用于所述服务的所述服务要求而确定至少一个补救动作以满足用于所述服务的所述服务要求;以及执行所述至少一个补救动作。
用于基于云的服务交换的网络字段单元
在以下条款中描述各种示例。根据本文所描述的技术,在下面任一条款中阐述的示例可以并入贯穿本公开描述的任何其它示例并且结合贯穿本公开描述的任何其它示例来实现。
条款1.一种方法,包括,由至少一个网络字段单元接收指定一个或多个服务要求的网络服务定义以在一个或多个网络数据中心的边缘网络的一部分内实现网络服务,其中所述网络服务定义可由所述至少一个网络字段单元用来配置所述边缘网络的一部分以提供所述网络服务,其中在一个或多个网络数据中心内的所述边缘网络的所述一部分通过所述一个或多个网络数据中心的一个或多个交换结构连接;由所述网络字段单元并且基于所述网络服务定义来确定可用于提供所述服务的所述边缘网络的一个或多个特定物理设备;以及由所述网络字段单元配置所述边缘网络的所述一个或多个特定物理设备以提供所述网络服务。
条款2.根据条款1所述的方法,其中配置所述边缘网络的所述一个或多个特定物理设备还包括由所述网络字段单元将可由所述SDN控制器或所述硬件配置器中的至少一个使用的一个或多个指令发送到软件定义网络(SDN)控制器或硬件配置器中的至少一个以配置所述边缘网络的所述一个或多个特定的物理设备以提供所述网络服务。
条款3.根据条款1所述的方法,其中所述一个或多个网络数据中心在地理上分散,并且其中包括所述网络字段单元的多个网络字段单元分别借助所述一个或多个地理上分散的网络数据中心而在地理上分散,所述多个网络字段单元中的每个控制所述边缘网络的相应部分。
条款4.根据条款1所述的方法,还包括由所述网络字段单元监视用于从SDN控制器、硬件配置器或基础设施数据收集器中的至少一个接收的所述网络服务的性能数据;由所述网络字段单元比较所述性能数据与由所述CNC系统存储的性能条件或网络遥测和分析数据中的至少一个,以确定用于所述网络服务的所述服务要求是否由所述边缘网络的所述一部分的性能满足;由所述网络字段单元响应于确定不满足用于所述网络服务的所述服务要求而确定至少一个补救动作以满足用于所述网络服务的所述服务要求;以及由所述CNC系统执行所述至少一个补救动作。
条款5.根据条款4所述的方法,其中执行所述至少一个补救动作包括重新配置所述边缘网络的至少所述一部分或所述边缘网络的不同部分。
条款6.根据条款4所述的方法,还包括响应于确定不满足用于所述网络服务的所述服务要求,由所述网络字段单元将指示不满足用于所述网络服务的所述服务要求的信息发送到CNC系统。
条款7.根据条款1所述的方法,其中配置所述边缘网络的一个或多个特定物理设备以提供所述网络服务还包括配置包括在所述边缘网络的所述一部分中的多个提供商边缘路由器,以定义一个或多个虚拟专用网络路由和用于所述网络服务的转发实例(VRF)。
条款8.一种网络字段单元,包括一个或多个计算机处理器;和
一种包含指令的存储器,当由所述一个或多个计算机处理器执行时所述指令使得所述一个或多个计算机处理器接收指定一个或多个服务要求的网络服务定义,从而在一个或多个网络数据中心的边缘网络的一部分内实现网络服务,其中所述网络服务定义可由所述至少一个网络字段单元使用来配置所述边缘网络的所述一部分以提供所述网络服务,其中在一个或多个网络数据中心内所述边缘网络的所述一部分通过所述一个或多个网络数据中心的一个或多个交换结构连接;基于所述网络服务定义确定可用于提供所述服务的所述边缘网络的一个或多个特定的物理设备;以及
配置边缘网络的一个或多个特定物理设备以提供网络服务。
条款9.根据条款8所述的网络字段单元,其中所述存储器包含指令,所述指令在由所述一个或多个计算机处理器执行时使得所述一个或多个计算机处理器向软件定义网络(SDN)控制器或硬件配置器中的至少一个发送可由所述SDN控制器或所述硬件配置器中的至少一个使用的一个或多个指令来配置所述边缘网络的所述一个或多个特定的物理设备以提供所述网络服务。
条款10.根据条款8所述的网络字段单元,其中所述一个或多个网络数据中心在地理上分散,并且其中包括所述网络字段单元的多个网络字段单元借助所述一个或多个地理上分散的网络数据中心而在地理上分散,所述多个网络字段单元中的每一个控制所述边缘网络的相应部分。
条款11.根据条款8所述的网络字段单元,其中所述存储器包含指令,所述指令在由所述一个或多个计算机处理器执行时使得所述一个或多个计算机处理器监视用于从SDN控制器、硬件配置器或基础设施数据收集器中的至少一个接收的所述网络服务的性能数据;比较所述性能数据与由所述CNC系统存储的性能条件或网络遥测和分析数据中的至少一个,以确定用于所述网络服务的所述服务要求是否由所述边缘网络的所述一部分的性能满足;响应于确定不满足用于所述网络服务的所述服务要求而确定至少一个补救动作以满足用于所述网络服务的所述服务要求;以及执行所述至少一个补救动作。
条款12.根据条款8所述的网络字段单元,其中执行所述至少一个补救动作包括重新配置所述边缘网络的至少所述一部分或所述边缘网络的一不同部分。
条款13.根据条款8所述的网络字段单元,其中所述存储器包含指令,所述指令在由所述一个或多个计算机处理器执行时使得所述一个或多个计算机处理器响应于确定不满足用于所述网络服务的所述服务要求而将指示不满足用于所述网络服务的所述服务要求的信息发送到CNC系统。
条款14.根据条款8所述的网络字段单元,其中所述存储器包含指令,所述指令在由所述一个或多个计算机处理器执行时使得所述一个或多个计算机处理器配置包括在所述边缘网络的所述一部分中的多个提供商边缘路由器,以定义一个或多个虚拟专用网络路由和用于所述网络服务的转发实例(VRF)。
条款15.一种包含指令的非易失性计算机可读介质,所述指令在执行时使得网络字段单元的至少一个可编程处理器实施包括接收指定一个或多个服务要求的网络服务定义的操作以在一个或多个网络数据中心的边缘网络的一部分内实现网络服务,其中所述网络服务定义可由所述至少一个网络字段单元用来配置所述边缘网络的所述一部分以提供所述网络服务,其中在一个或多个网络数据中心内的所述边缘网络的所述一部分通过所述一个或多个网络数据中心的一个或多个交换结构连接;基于所述网络服务定义来确定可用于提供所述服务的所述边缘网络的一个或多个特定物理设备;以及配置所述边缘网络的所述一个或多个特定物理设备以提供所述网络服务。
条款16.根据条款15所述的包含指令的非易失性计算机可读介质,当执行时所述指令使得所述网络字段单元的所述至少一个可编程处理器实施操作,所述操作包括向软件定义网络(SDN)控制器或硬件配置器中的至少一个发送可由所述SDN控制器或所述硬件配置器中的至少一个使用的一个或多个指令,从而配置所述边缘网络的所述一个或多个特定的物理设备以提供所述网络服务。
条款17.根据条款15所述的非易失性计算机可读介质,其中所述一个或多个网络数据中心在地理上分散,并且其中包括所述网络字段单元的多个网络字段单元借助所述一个或多个地理上分散的网络数据中心而在地理上分散,所述多个网络字段单元中的每一个控制所述边缘网络的相应部分。
条款18.根据条款15所述的包含指令的非易失性计算机可读介质,当执行时所述指令使得所述网络字段单元的所述至少一个可编程处理器实施包括监视用于从SDN控制器、硬件配置器或基础设施数据收集器中的至少一个接收的所述网络服务的性能数据;将所述性能数据与由所述CNC系统存储的性能条件或网络遥测和分析数据中的至少一个进行比较,以确定用于所述网络服务的所述服务要求是否由所述边缘网络的所述一部分的性能满足;响应于确定不满足用于所述网络服务的所述服务要求而确定至少一个补救动作以满足用于所述网络服务的所述服务要求;以及执行所述至少一个补救动作。
条款19.根据条款15所述的非易失性计算机可读介质,其中执行所述至少一个补救动作包括重新配置所述边缘网络的至少所述一部分或所述边缘网络的不同部分。
条款20.根据条款15所述的包含指令的非易失性计算机可读介质,当执行时所述指令使得所述网络字段单元的所述一个或多个可编程处理器实施操作,所述操作包括响应于确定不满足用于所述网络服务的所述服务要求而将指示不满足用于所述网络服务的所述服务要求的信息发送到CNC系统。
软件控制的云交换
在以下条款中描述各种示例。根据本文所描述的技术,在下面任一条款中阐述的示例可以并入贯穿本公开描述的任何其它示例并且结合贯穿本公开描述的任何其它示例来实现。
条款1.一种方法包括,由可编程网络平台(PNP)提供软件接口以接收服务请求,所述服务请求用于由所述PNP控制的一个或多个网络数据中心的边缘网络内的服务配置;由所述PNP系统并且经由所述软件接口接收服务请求以在所述一个或多个网络数据中心的所述边缘网络内配置网络服务,其中所述在一个或多个网络数据中心内的所述边缘网络通过所述一个或多个网络数据中心的一个或多个交换结构连接;由所述PNP系统并基于所述服务请求生成指定一个或多个服务要求的网络服务定义以实现服务;由所述PNP并基于所述网络服务定义来确定能够服务于所述服务请求的至少一个网络字段单元,其中所述网络字段单元控制所述边缘网络的一部分,其中所述网络服务定义可由所述至少一个网络字段单元使用以配置边缘网络的所述一部分从而提供所述服务;由所述至少一个网络字段单元和基于所述网络服务定义确定可用于提供所述服务的所述边缘网络的一个或多个特定物理设备;和由所述至少一个网络字段单元配置所述边缘网络的所述一个或多个特定物理设备以提供所述服务。
条款2.根据条款1所述的方法,还包括由所述PNP监视用于从所述至少一个网络字段单元接收的所述服务的性能数据;由所述PNP将所述性能数据与由所述PNP存储的服务的服务要求和服务遥测及分析数据中的至少一个进行比较,以确定用于所述服务的所述服务要求是否由所述边缘网络的所述一部分的性能满足;由所述PNP响应于确定不满足用于所述服务的所述服务要求而确定至少一个补救动作以满足用于所述服务的所述服务要求;以及由所述PNP执行所述至少一个补救动作。
条款3.根据条款2所述的方法,其中执行所述至少一个补救动作包括将一个或多个指令发送到所述至少一个网络字段单元以重新配置所述边缘网络的至少所述一部分或所述边缘网络的其他互连资产的不同部分。
条款4.根据条款1所述的方法,其中所述一个或多个服务要求指定以下至少一个:服务类型、用于所述服务的地理位置、用于所述服务的带宽、所述带宽是否可突发、过量信息速率(EIR)、用于所述带宽的最大延迟、所述服务的最小可用性水平、用于所述服务的云服务提供商或用于所述服务的一个或多个安全特性。
条款5.根据条款1所述的方法,其中所述服务包括以下中的至少一个:层3互连服务、防火墙服务、数据存储服务、软件即服务(SaaS)服务、分析服务、网络地址翻译服务或深度包检查服务。
条款6.根据条款1所述的方法,还包括响应于所述至少一个网络字段单元在所述边缘网络的所述一部分配置所述服务,由所述PNP存储指示用于将所述服务供应到所述服务的请求者的费用的计费信息;以及由所述PNP将所述计费信息的指示发送到所述服务的所述请求者。
条款7.根据条款1所述的方法,其中所述一个或多个网络数据中心在地理上分散,并且其中多个网络字段单元分别借助所述一个或多个地理上分散的网络数据中心而在地理上分散,所述多个网络字段单元中的每个控制所述多个网络数据中心中的一个的相应互连资产。
条款8.根据条款7所述的方法,其中所述服务请求不指定所述互连资产的特定的物理设备,并且其中所述网络服务定义可由所述至少一个网络字段单元使用以配置所述互连资产的所述特定物理设备。
条款9.根据条款1所述的方法,还包括配置所述边缘网络的所述一部分以聚合由第一云服务提供商发起的第一云服务流量和由第二云服务提供商发起的第二云服务流量;以及配置所述边缘网络的所述一部分以传递所述聚合的云服务流量。
条款10.根据条款1所述的方法,其中配置所述边缘网络的所述一个或多个特定物理设备还包括由所述网络字段单元将可由所述SDN控制器或所述硬件配置器中的至少一个使用的一个或多个指令发送到软件定义网络(SDN)控制器或硬件配置器中的至少一个以配置所述边缘网络的所述一个或多个特定的物理设备以提供所述服务。
条款11.根据条款1所述的方法,其中所述一个或多个网络数据中心在地理上分散,并且其中包括所述网络字段单元的多个网络字段单元借助所述一个或多个地理上分散的网络数据中心而在地理上分散,所述多个网络字段单元中的每一个控制所述多个网络数据中心中的一个的相应互连资产。
条款12.根据条款1所述的方法,其中配置所述边缘网络的一个或多个特定物理设备以提供所述服务还包括配置包括在所述边缘网络的所述一部分中的多个提供商边缘路由器,以定义一个或多个虚拟专用网络路由和用于所述服务的转发实例(VRF)。
条款13.一种可编程网络平台(PNP),包括一个或多个计算机处理器;以及包含指令的存储器,当由所述一个或多个计算机处理器执行时所述指令使得所述一个或多个计算机处理器提供软件接口以接收用于配置在所述PNP控制的一个或多个网络数据中心的边缘网络内的服务;接收服务请求以在所述一个或多个网络数据中心的所述边缘网络内配置网络服务,其中所述在一个或多个网络数据中心内的所述边缘网络通过所述一个或多个网络数据中心的一个或多个交换结构连接;生成指定一个或多个服务要求的网络服务定义以实现所述网络服务;由所述PNP并基于所述网络服务定义来确定能够服务于所述服务请求的至少一个网络字段单元,其中所述网络字段单元控制所述边缘网络的一部分,其中所述网络服务定义可由所述至少一个网络字段单元使用以配置所述边缘网络的所述一部分以提供所述服务;基于所述网络服务定义来确定可用于提供所述服务的所述边缘网络的一个或多个特定的物理设备;以及
配置所述边缘网络的所述一个或多个特定物理设备以提供所述服务。
条款14.根据条款13所述的PNP,其中所述存储器包括在由所述一个或多个计算机处理器执行时使得所述一个或多个计算机处理器监视从所述至少一个网络字段单元接收的用于所述服务的性能数据的指令;将所述性能数据与由所述PNP存储的所述服务的所述服务要求和服务遥测及分析数据中的至少一个进行比较,以确定用于所述服务的服务要求是否由所述边缘网络的所述一部分的性能满足;响应于确定不满足用于所述服务的服务要求,确定至少一个补救动作以满足用于所述服务的服务要求;并执行所述至少一个补救动作。
条款15.根据条款14所述的PNP,其中执行所述至少一个补救动作包括将一个或多个指令发送到所述至少一个网络字段单元以重新配置所述边缘网络的至少所述一部分或所述边缘网络的其他互连资产的不同部分。
条款16.根据条款13所述的PNP,其中所述一个或多个服务要求指定以下至少一个:服务类型、用于所述服务的地理位置、用于所述服务的带宽、所述带宽是否可突发、过量信息速率(EIR)、用于所述带宽的最大延迟、所述服务的最小可用性水平、用于所述服务的云服务提供商或用于所述服务的一个或多个安全特性。
条款17.根据条款13所述的PNP,其中所述服务包括以下中的至少一个:层3互连服务、防火墙服务、数据存储服务、软件即服务(SaaS)服务、分析服务、网络地址翻译服务或深度包检查服务。
条款18.根据条款13所述的PNP,其中所述存储器包含指令,所述指令在由所述一个或多个计算机处理器执行时使得所述一个或多个计算机处理器响应于在所述边缘网络的所述一部分配置所述服务的所述至少一个网络字段单元,存储指示用于将所述服务供应到所述服务的请求者的费用的计费信息;以及将所述计费信息的指示发送到所述的所述请求者。
条款19.根据条款13所述的PNP,其中所述一个或多个网络数据中心在地理上分散,并且其中多个网络字段单元分别借助所述一个或多个地理上分散的网络数据中心而在地理上分散,所述多个网络字段单元中的每个控制所述多个网络数据中心中的一个的相应互连资产。
条款20.根据条款13所述的PNP,其中所述服务请求不指定所述互连资产的特定物理设备,并且其中所述网络服务定义可由所述至少一个网络字段单元使用以配置所述互连资产的所述特定物理设备。
条款1A.在本公开中描述的方法的任何组合。
条款2A.至少一种计算设备,其被配置成实施根据条款1A所述的方法。
本文所描述的技术(包括前述部分中的任一者中的技术)可以在硬件、软件、固件或它们的任何组合中实现。被描述为模块、单元或组件的各种特征可以在集成逻辑设备中或者独立实现为离散但可以互操作的逻辑设备或其他硬件设备中一起实现。在一些情况下,电子电路系统的各种特征可实现为一个或多个集成电路设备,诸如集成电路芯片或芯片组。
如果以硬件实现,则本发明可以涉及装置诸如处理器或集成电路设备(诸如集成电路芯片或芯片组)。另选地或附加地,如果在软件或固件中实现,则技术可以至少部分地由包含指令的计算机可读数据存储介质实现,所述指令在被执行时使得处理器实施上述方法中的一个或多个。例如,计算机可读数据存储介质可以存储由处理器执行的此类指令。
计算机可读介质可以形成计算机程序产品的一部分,计算机程序产品可以包括封装材料。计算机可读介质可以包括计算机数据存储介质,诸如随机存取存储器(RAM)、只读存储器(ROM)、非易失性随机存取存储器(NVRAM)、电可擦除可编程只读存储器(EEPROM)、闪存、磁或光数据存储介质等。在一些示例中,制品可以包括一个或多个计算机可读存储介质。
在一些示例中,计算机可读存储介质可以包括非暂态介质。术语“非瞬态”可以指示存储介质未体现在载波或传播信号中。在某些示例中,非暂态存储介质可以(例如,在RAM或高速缓存中)存储随时间可改变的数据。
代码或指令可为软件和/或固件,该软件和/或固件由包括一个或多个处理器(诸如一个或多个数字信号处理器(DSP)、通用微处理器、专用集成电路(ASIC)、现场可编程门阵列(FPGA))的处理电路系统或其他等效集成或离散逻辑电路系统执行。因此,如本文所使用的术语“处理器”可以指代任何前述结构的任一个或适于实现本文所描述的技术的任何其它结构。此外,在一些方面,本公开中描述的功能可以在软件模块或硬件模块内提供。
已经描述了各种实施例。这些和其它实施例在以下示例的范围内。

Claims (29)

1.一种方法,包括:
由用于在数据中心内的基于云的服务交换点的可编程网络平台接收指定由相应的云服务提供商操作的相应的云服务提供商网络所提供的多个云服务的服务请求,其中,所述服务请求还指定用于所述多个云服务的拓扑;以及
由所述可编程网络平台响应于所述服务请求来供应所述基于云的服务交换点,从而根据用于所述多个云服务的拓扑转发用于所述多个云服务的服务流量。
2.根据权利要求1所述的方法,
其中,供应所述基于云的服务交换点包括:由所述可编程网络平台配置所述基于云的服务交换点的虚拟路由器以接收用于所述云服务提供商网络的相应的层3路由,以及
其中,所述虚拟路由器根据用于所述多个云服务的拓扑转发根据用于所述云服务提供商网络的所述层3路由的所述服务流量。
3.根据权利要求2所述的方法,
其中,所述基于云的服务交换点包括由云交换提供商操作并位于数据中心内的层3(L3)自主系统,
其中,所述L3自主系统包括通过多个隧道互连多个提供商边缘(PE)路由器的互联网协议网络,以及
其中,为了供应所述基于云的服务交换点,所述可编程网络平台配置多个所述PE路由器以建立包括所述多个隧道的一者的端到端L3路由,并且在层3将每个所述云服务提供商网络连接到所述虚拟路由器。
4.根据权利要求3所述的方法,
其中,为了供应所述基于云的服务交换点,所述可编程网络平台借助配置数据配置多个所述PE路由器,所述配置数据定义用于所述多个云服务的虚拟专用网络路由和转发实例(VRF),
其中,多个所述PE路由器经由第一路由协议接收用于所述云服务提供商网络的相应的所述层3路由,并且
其中,所述虚拟路由器经由第二路由协议从多个所述PE路由器接收用于所述云服务提供商网络的相应的所述层3路由。
5.根据权利要求1所述的方法,
其中,供应所述基于云的服务交换点包括:由所述可编程网络平台借助用于所述云服务提供商网络的相应的层2虚拟专用网络来配置所述基于云的服务交换点的虚拟路由器,并且
其中,所述虚拟路由器根据用于所述多个云服务的所述拓扑转发根据用于所述云服务提供商网络的相应的所述层2虚拟专用网络的服务流量。
6.根据权利要求1所述的方法,
其中,所述服务请求包括服务定义,所述服务定义与数据模型一致,并且所述服务定义将所述服务请求识别为针对所述多个云服务的请求,
其中,所述服务定义指定用于所述多个云服务的所述拓扑。
7.根据权利要求6所述的方法,其中,所述服务定义指定用于包括所述多个云服务的整体服务的授权服务所有者。
8.根据权利要求7所述的方法,其中,所述授权服务所有者为操作所述基于云的服务交换的云交换提供商。
9.根据权利要求6所述的方法,其中,所述服务定义指定用于包括所述多个云服务的整体服务的服务标识符。
10.根据权利要求6所述的方法,
其中,所述服务定义根据公共微服务定义指定所述多个云服务中的每一者,并且
其中,用于所述多个云服务中的第一云服务的所述公共微服务定义指定第一端点和第二端点,所述第一端点识别用于所述第一云服务的第一云服务提供商,所述第二端点识别客户和第二云服务提供商中的一者。
11.根据权利要求1所述的方法,其中,所述服务请求由所述基于云的服务交换的客户发起。
12.根据权利要求1所述的方法,还包括:
由用于所述多个云服务中的每个云服务的所述可编程网络平台将针对所述云服务的服务请求发送到用于对应的云服务提供商网络的编配系统,从而使所述编配系统在所述云服务提供商网络内编配所述云服务。
13.根据权利要求1所述的方法,其中,所述服务请求还指定由所述基于云的服务交换点应用的本地服务,所述方法还包括:
由所述可编程网络平台响应于所述服务请求来提供所述基于云的服务交换点,从而将所述本地服务应用到用于所述多个云服务中的至少一者的服务流量。
14.根据权利要求1所述的方法,还包括:
由所述可编程网络平台响应于所述服务请求来调用第三方编配模块,以与所述云服务提供商中的第一云服务提供商的云服务提供商编配系统进行通信,以请求所述第一云服务提供商在所述云服务提供商网络中的第一云服务提供商网络中编配用于所述服务请求的所述多个云服务中的第一云服务;和
由所述可编程网络平台供应所述基于云的服务交换点,以将所述第一云服务从附接到所述基于云的服务交换点的所述第一云服务提供商网络传递到附接至所述基于云的服务交换点的客户网络。
15.根据权利要求14所述的方法,还包括:
由所述可编程网络平台从所述第三方编配模块接收用于所述第一云服务的连接性信息,
其中,供应所述基于云的服务交换点以传递所述第一云服务包括:由所述可编程网络平台并且基于所述连接性信息来供应所述基于云的服务交换点,以实现所述基于云的服务交换点与所述第一云服务提供商之间的网络连接性用于传递所述第一云服务。
16.一种网络数据中心,包括:
基于云的服务交换点,包括网络,所述基于云的服务交换点由操作所述网络数据中心的云交换提供商操作;和
可编程网络平台,包括至少一个可编程处理器,被配置成:
接收指定由相应的云服务提供商操作的相应的云服务提供商网络所提供的多个云服务的服务请求,其中,所述服务请求还指定用于所述多个云服务的拓扑;以及
响应于所述服务请求来供应所述基于云的服务交换点,从而根据用于所述多个云服务的拓扑转发用于所述多个云服务的服务流量。
17.根据权利要求16所述的网络数据中心,
其中,为了供应所述基于云的服务交换点,所述可编程处理器被配置成:配置所述基于云的服务交换点的虚拟路由器以接收用于所述云服务提供商网络的相应的层3路由,以及
其中,所述虚拟路由器根据用于所述多个云服务的拓扑转发根据用于所述云服务提供商网络的所述层3路由的所述服务流量。
18.根据权利要求17所述的网络数据中心,
其中,所述基于云的服务交换点包括由云交换提供商操作并位于数据中心内的层3(L3)自主系统,
其中,所述L3自主系统包括通过多个隧道互连多个提供商边缘(PE)路由器的互联网协议网络,以及
其中,为了供应所述基于云的服务交换点,所述可编程网络平台被配置为:配置多个所述PE路由器以建立包括所述多个隧道的一者的端到端L3路由,并且在层3将每个所述云服务提供商网络连接到所述虚拟路由器。
19.根据权利要求16所述的网络数据中心,
其中,为了供应所述基于云的服务交互点,所述可编程网络平台被配置成:借助用于所述云服务提供商网络的相应的层2虚拟专用网络来配置所述基于云的服务交换点的虚拟路由器,并且
其中,所述虚拟路由器被配置为根据用于所述多个云服务的所述拓扑转发根据用于所述云服务提供商网络的相应的所述层2虚拟专用网络的服务流量。
20.根据权利要求16所述的网络数据中心,
其中,所述服务请求包括服务定义,所述服务定义与数据模型一致,并且所述服务定义将所述服务请求识别为针对所述多个云服务的请求,
其中,所述服务定义指定用于所述多个云服务的所述拓扑。
21.根据权利要求20所述的网络数据中心,其中,所述服务定义指定用于包括所述多个云服务的整体服务的授权服务所有者。
22.根据权利要求20所述的网络数据中心,其中,所述服务定义指定用于包括所述多个云服务的整体服务的服务标识符。
23.根据权利要求20所述的网络数据中心,
其中,所述服务定义根据公共微服务定义指定所述多个云服务中的每一者,并且
其中,用于所述多个云服务中的第一云服务的所述公共微服务定义指定第一端点和第二端点,所述第一端点识别用于所述第一云服务的第一云服务提供商,所述第二端点识别客户和第二云服务提供商中的一者。
24.根据权利要求16所述的网络数据中心,其中所述服务请求由所述云交换提供商的客户发起。
25.根据权利要求16所述的网络数据中心,
其中,由用于所述多个云服务中的每个云服务的所述可编程网络平台将针对所述云服务的服务请求发送到用于对应的云服务提供商网络的编配系统,从而使所述编配系统在所述云服务提供商网络内编配所述云服务。
26.根据权利要求16所述的网络数据中心,
其中,所述服务请求还指定由所述基于云的服务交换点应用的本地服务,
其中,所述可编程网络平台被配置成:响应于所述服务请求来供应所述基于云的服务交换点,从而将所述本地服务应用到用于多个所述云服务中的至少一者的服务流量。
27.根据权利要求16所述的网络数据中心,
其中,所述可编程网络平台包括第三方编配模块,
其中,所述可编程网络平台被配置成响应于所述服务请求来调用所述第三方编配模块,以与所述云服务提供商中的第一云服务提供商的云服务提供商编配系统进行通信,以请求所述第一云服务提供商在所述云服务提供商网络中的第一云服务提供商网络中编配用于所述服务请求的多个所述云服务中的第一云服务;和
其中,所述可编程网络平台被配置成供应所述基于云的服务交换点,以将所述第一云服务从附接到所述基于云的服务交换点的所述第一云服务提供商网络传递到附接至所述基于云的服务交换点的客户网络。
28.根据权利要求27所述的网络数据中心,
其中,所述可编程网络平台被配置成从所述第三方编配模块接收用于所述第一云服务的连接性信息,并且
其中,所述可编程网络平台被配置成基于所述连接性信息供应所述基于云的服务交换点,以实现在所述基于云的服务交换点与所述第一云服务提供商之间的网络连接性用于传递所述第一云服务。
29.一种包含指令的非暂态计算机可读介质,所述指令在被执行时使得用于基于数据中心的基于云的服务交换点的可编程网络平台中的至少一个可编程处理器实施操作,所述操作包括:
接收指定由相应的云服务提供商操作的相应的云服务提供商网络所提供的多个云服务的服务请求,其中,所述服务请求还指定用于所述多个云服务的拓扑;以及
响应于所述服务请求来供应所述基于云的服务交换点,从而根据用于所述多个云服务的拓扑转发用于所述多个云服务的服务流量。
CN201680001701.4A 2015-05-12 2016-05-11 用于基于云的服务交换的可编程网络平台 Active CN106464742B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN202010138860.7A CN111371669B (zh) 2015-05-12 2016-05-11 用于基于云的服务交换的可编程网络平台

Applications Claiming Priority (15)

Application Number Priority Date Filing Date Title
US201562160547P 2015-05-12 2015-05-12
US62/160,547 2015-05-12
US15/001,862 2016-01-20
US15/001,919 2016-01-20
US15/001,875 US10291726B2 (en) 2015-05-12 2016-01-20 Network field unit for a cloud-based services exchange
US15/001,766 2016-01-20
US15/001,839 2016-01-20
US15/001,766 US10015268B2 (en) 2015-05-12 2016-01-20 Multi-cloud, multi-service data model
US15/001,839 US9967350B2 (en) 2015-05-12 2016-01-20 Third-party orchestration module for a cloud exchange programmable network platform
US15/001,875 2016-01-20
US15/001,862 US10250699B2 (en) 2015-05-12 2016-01-20 Centralized network control for a cloud-based services exchange
US15/001,822 2016-01-20
US15/001,822 US10021197B2 (en) 2015-05-12 2016-01-20 Multiple cloud services delivery by a cloud exchange
US15/001,919 US10237355B2 (en) 2015-05-12 2016-01-20 Software-controlled cloud exchange
PCT/US2016/031943 WO2016183253A1 (en) 2015-05-12 2016-05-11 Programmable network platform for a cloud-based services exchange

Related Child Applications (1)

Application Number Title Priority Date Filing Date
CN202010138860.7A Division CN111371669B (zh) 2015-05-12 2016-05-11 用于基于云的服务交换的可编程网络平台

Publications (2)

Publication Number Publication Date
CN106464742A true CN106464742A (zh) 2017-02-22
CN106464742B CN106464742B (zh) 2020-01-31

Family

ID=57276229

Family Applications (2)

Application Number Title Priority Date Filing Date
CN201680001701.4A Active CN106464742B (zh) 2015-05-12 2016-05-11 用于基于云的服务交换的可编程网络平台
CN202010138860.7A Active CN111371669B (zh) 2015-05-12 2016-05-11 用于基于云的服务交换的可编程网络平台

Family Applications After (1)

Application Number Title Priority Date Filing Date
CN202010138860.7A Active CN111371669B (zh) 2015-05-12 2016-05-11 用于基于云的服务交换的可编程网络平台

Country Status (7)

Country Link
US (7) US10237355B2 (zh)
EP (3) EP4236252A3 (zh)
JP (1) JP6495949B2 (zh)
CN (2) CN106464742B (zh)
AU (1) AU2016262538B2 (zh)
CA (1) CA2951944C (zh)
SG (1) SG11201610055VA (zh)

Cited By (13)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN107483447A (zh) * 2017-08-24 2017-12-15 广州中道电子科技有限公司 一种云信息交换系统
CN107566355A (zh) * 2017-08-24 2018-01-09 广州中道电子科技有限公司 一种云信息交换系统
CN109952744A (zh) * 2016-09-26 2019-06-28 河谷控股Ip有限责任公司 云网络中的虚拟电路
CN110249611A (zh) * 2017-02-27 2019-09-17 华为技术有限公司 流量工程业务映射
CN110474797A (zh) * 2019-07-25 2019-11-19 北京旷视科技有限公司 Api业务系统、主备切换的方法及装置
CN110798504A (zh) * 2019-09-10 2020-02-14 华为技术有限公司 跨区域共享服务的方法、装置、管理设备及存储介质
CN110809875A (zh) * 2017-06-13 2020-02-18 环球互连及数据中心公司 服务对等交换
CN111130908A (zh) * 2019-12-31 2020-05-08 中信百信银行股份有限公司 基于调用流量分析预测的微服务动态聚合拆分系统
CN113220284A (zh) * 2021-05-19 2021-08-06 陕西大唐高科机电科技有限公司 一种基于云的自动控制系统网络编程平台
US11288604B2 (en) 2016-12-23 2022-03-29 Advanced New Technologies Co., Ltd. Resource processing method and apparatus
CN115134245A (zh) * 2018-03-30 2022-09-30 英特尔公司 用于云与电信网络之间的网络分组处理的技术
CN116803117A (zh) * 2020-12-10 2023-09-22 亚马逊科技公司 管理基于无线电的专用网络
US11844016B2 (en) 2020-02-26 2023-12-12 Rakuten Symphony Singapore Pte. Ltd. Computer system and network service construction method

Families Citing this family (200)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US10230571B2 (en) * 2014-10-30 2019-03-12 Equinix, Inc. Microservice-based application development framework
FR3030966A1 (fr) * 2014-12-23 2016-06-24 Orange Systeme de generation d'une fonction reseau virtualisee
US10706970B1 (en) 2015-04-06 2020-07-07 EMC IP Holding Company LLC Distributed data analytics
US10122806B1 (en) 2015-04-06 2018-11-06 EMC IP Holding Company LLC Distributed analytics platform
US10404787B1 (en) 2015-04-06 2019-09-03 EMC IP Holding Company LLC Scalable distributed data streaming computations across multiple data processing clusters
US10348810B1 (en) 2015-04-06 2019-07-09 EMC IP Holding Company LLC Scalable distributed computations utilizing multiple distinct clouds
US10511659B1 (en) 2015-04-06 2019-12-17 EMC IP Holding Company LLC Global benchmarking and statistical analysis at scale
US10528875B1 (en) 2015-04-06 2020-01-07 EMC IP Holding Company LLC Methods and apparatus implementing data model for disease monitoring, characterization and investigation
US10270707B1 (en) 2015-04-06 2019-04-23 EMC IP Holding Company LLC Distributed catalog service for multi-cluster data processing platform
US10791063B1 (en) 2015-04-06 2020-09-29 EMC IP Holding Company LLC Scalable edge computing using devices with limited resources
US10505863B1 (en) 2015-04-06 2019-12-10 EMC IP Holding Company LLC Multi-framework distributed computation
US10496926B2 (en) 2015-04-06 2019-12-03 EMC IP Holding Company LLC Analytics platform for scalable distributed computations
US10509684B2 (en) 2015-04-06 2019-12-17 EMC IP Holding Company LLC Blockchain integration for scalable distributed computations
US10541938B1 (en) 2015-04-06 2020-01-21 EMC IP Holding Company LLC Integration of distributed data processing platform with one or more distinct supporting platforms
US10425350B1 (en) * 2015-04-06 2019-09-24 EMC IP Holding Company LLC Distributed catalog service for data processing platform
US10776404B2 (en) 2015-04-06 2020-09-15 EMC IP Holding Company LLC Scalable distributed computations utilizing multiple distinct computational frameworks
US10366111B1 (en) 2015-04-06 2019-07-30 EMC IP Holding Company LLC Scalable distributed computations utilizing multiple distinct computational frameworks
US10812341B1 (en) 2015-04-06 2020-10-20 EMC IP Holding Company LLC Scalable recursive computation across distributed data processing nodes
US10541936B1 (en) 2015-04-06 2020-01-21 EMC IP Holding Company LLC Method and system for distributed analysis
US10331380B1 (en) 2015-04-06 2019-06-25 EMC IP Holding Company LLC Scalable distributed in-memory computation utilizing batch mode extensions
US10860622B1 (en) 2015-04-06 2020-12-08 EMC IP Holding Company LLC Scalable recursive computation for pattern identification across distributed data processing nodes
US10515097B2 (en) 2015-04-06 2019-12-24 EMC IP Holding Company LLC Analytics platform for scalable distributed computations
US9948552B2 (en) * 2015-04-17 2018-04-17 Equinix, Inc. Cloud-based services exchange
US10237355B2 (en) 2015-05-12 2019-03-19 Equinix, Inc. Software-controlled cloud exchange
US10701037B2 (en) 2015-05-27 2020-06-30 Ping Identity Corporation Scalable proxy clusters
US9787560B2 (en) * 2015-06-04 2017-10-10 Microsoft Technology Licensing Llc Effective service node traffic routing
US11070395B2 (en) * 2015-12-09 2021-07-20 Nokia Of America Corporation Customer premises LAN expansion
US10656861B1 (en) 2015-12-29 2020-05-19 EMC IP Holding Company LLC Scalable distributed in-memory computation
US9866637B2 (en) 2016-01-11 2018-01-09 Equinix, Inc. Distributed edge processing of internet of things device data in co-location facilities
US10892942B2 (en) * 2016-01-22 2021-01-12 Equinix, Inc. Container-based cloud exchange disaster recovery
US10367655B2 (en) * 2016-01-25 2019-07-30 Alibaba Group Holding Limited Network system and method for connecting a private network with a virtual private network
US10572650B2 (en) * 2016-02-29 2020-02-25 Intel Corporation Technologies for independent service level agreement monitoring
WO2017150642A1 (ja) * 2016-03-02 2017-09-08 日本電気株式会社 ネットワークシステム、制御装置、仮想ネットワーク機能の構築方法及びプログラム
US10158727B1 (en) 2016-03-16 2018-12-18 Equinix, Inc. Service overlay model for a co-location facility
US10742721B1 (en) 2016-04-01 2020-08-11 Equinix, Inc. Inter-metro connectivity network connect
US10878483B1 (en) 2016-04-07 2020-12-29 Equinix, Inc. Method, system, and medium for asset-based permissions management for resellers of cloud exchange assets
US10819630B1 (en) 2016-04-20 2020-10-27 Equinix, Inc. Layer three instances for a cloud-based services exchange
US10491462B1 (en) 2016-05-06 2019-11-26 Equinix, Inc. Port verification for customer interconnection in a data center
US11128669B2 (en) * 2016-05-13 2021-09-21 Nec Corporation Method and system for introducing in-network services in an end-to-end communication path
US10542077B1 (en) 2016-05-19 2020-01-21 Equinix, Inc. Event-driven notification and network service bus for a cloud exchange
US10063666B2 (en) 2016-06-14 2018-08-28 Futurewei Technologies, Inc. Modular telecommunication edge cloud system
US10873521B2 (en) * 2016-07-22 2020-12-22 Intel Corporation Methods and apparatus for SDI support for fast startup
WO2018026380A1 (en) * 2016-08-05 2018-02-08 Intel Corporation Systems and methods for data service request classification and routing
US20180041578A1 (en) * 2016-08-08 2018-02-08 Futurewei Technologies, Inc. Inter-Telecommunications Edge Cloud Protocols
US11502972B2 (en) * 2016-08-28 2022-11-15 Vmware, Inc. Capacity optimization in an automated resource-exchange system
US10120734B1 (en) 2016-08-29 2018-11-06 Equinix, Inc. Application programming interface and services engine with application-level multi-tenancy
US10200311B2 (en) * 2016-09-08 2019-02-05 Cisco Technology, Inc. Computer network control for application instantiation
US10681133B2 (en) * 2016-09-19 2020-06-09 Tego, Inc. Methods and systems for endpoint device operating system in an asset intelligence platform
US10587580B2 (en) 2016-10-26 2020-03-10 Ping Identity Corporation Methods and systems for API deception environment and API traffic control and security
US10284730B2 (en) 2016-11-01 2019-05-07 At&T Intellectual Property I, L.P. Method and apparatus for adaptive charging and performance in a software defined network
US10454836B2 (en) 2016-11-01 2019-10-22 At&T Intellectual Property I, L.P. Method and apparatus for dynamically adapting a software defined network
US10110500B2 (en) * 2016-11-03 2018-10-23 Ciena Corporation Systems and methods for management of cloud exchanges
US10469376B2 (en) * 2016-11-15 2019-11-05 At&T Intellectual Property I, L.P. Method and apparatus for dynamic network routing in a software defined network
US10382558B2 (en) * 2016-11-17 2019-08-13 Nokia Of America Corporation Edge resource sharing
CN109361719B (zh) * 2016-12-13 2021-03-09 上海仪电(集团)有限公司中央研究院 一种基于微服务的操作系统SaaS应用自动整合方法
CN106533804A (zh) * 2016-12-22 2017-03-22 成都西加云杉科技有限公司 一种网络运营支撑系统
US10567252B1 (en) 2016-12-28 2020-02-18 Equinix, Inc. Network connection service high availability evaluation for co-location facilities
US10374968B1 (en) 2016-12-30 2019-08-06 EMC IP Holding Company LLC Data-driven automation mechanism for analytics workload distribution
US10568231B1 (en) 2016-12-30 2020-02-18 Equinix, Inc. Power supply and distribution skid frames for data centers
US11057498B1 (en) 2016-12-30 2021-07-06 Equinix, Inc. Inter-data center data transfer using unmanned vehicles
US10642879B2 (en) 2017-01-06 2020-05-05 Oracle International Corporation Guaranteed file system hierarchy data integrity in cloud object stores
US10264075B2 (en) 2017-02-27 2019-04-16 At&T Intellectual Property I, L.P. Methods, systems, and devices for multiplexing service information from sensor data
US10469286B2 (en) 2017-03-06 2019-11-05 At&T Intellectual Property I, L.P. Methods, systems, and devices for managing client devices using a virtual anchor manager
US10042685B1 (en) 2017-03-17 2018-08-07 Accenture Global Solutions Limited Extensible single point orchestration system for application program interfaces
US10749760B2 (en) * 2017-03-28 2020-08-18 Intraway R&D S.A. Method and system for managing a service provider infrastructure
US10749841B2 (en) * 2017-04-10 2020-08-18 At&T Intellectual Property I, L.P. Border gateway protocol multipath scaled network address translation system
US10225140B2 (en) 2017-04-26 2019-03-05 Oracle International Corporation Portable instance provisioning framework for cloud services
US10382291B2 (en) * 2017-04-26 2019-08-13 Oracle International Corporation Provisioning framework for binding related cloud services
US10212289B2 (en) 2017-04-27 2019-02-19 At&T Intellectual Property I, L.P. Method and apparatus for managing resources in a software defined network
US10693913B2 (en) 2017-04-28 2020-06-23 Cisco Technology, Inc. Secure and policy-driven computing for fog node applications
US10498810B2 (en) * 2017-05-04 2019-12-03 Amazon Technologies, Inc. Coordinating inter-region operations in provider network environments
US10594829B2 (en) 2017-05-24 2020-03-17 At&T Intellectual Property I, L.P. Cloud workload proxy as link-local service configured to access a service proxy gateway via a link-local IP address to communicate with an external target service via a private network
US10348638B2 (en) 2017-05-30 2019-07-09 At&T Intellectual Property I, L.P. Creating cross-service chains of virtual network functions in a wide area network
CN107392414B (zh) * 2017-06-06 2020-04-03 华为技术有限公司 一种产品资料集成编排的方法及云服务装置
US10873628B2 (en) * 2017-06-13 2020-12-22 Oracle International Corporation System and method for non-intrusive context correlation across cloud services
US10623259B2 (en) * 2017-06-19 2020-04-14 Cisco Technology, Inc. Validation of layer 1 interface in a network
US11178063B2 (en) * 2017-06-30 2021-11-16 Intel Corporation Remote hardware acceleration
US10742447B2 (en) * 2017-07-10 2020-08-11 Level 3 Communications, Llc Connecting to multiple cloud instances in a telecommunications network
US10454812B2 (en) * 2017-07-28 2019-10-22 Juniper Networks, Inc. Service level agreement based next-hop selection
US10523560B2 (en) 2017-07-28 2019-12-31 Juniper Networks, Inc. Service level agreement based next-hop selection
US10608841B2 (en) * 2017-07-28 2020-03-31 Level 3 Communications, Llc Autonomous system bridge connecting in a telecommunications network
WO2019055601A1 (en) * 2017-09-13 2019-03-21 Walmart Apollo, Llc SYSTEMS AND METHODS FOR CALCULATING AN INFRASTRUCTURE RESOURCE ALLOCATION
JP7100967B2 (ja) * 2017-09-20 2022-07-14 エヌ・ティ・ティ・コミュニケーションズ株式会社 ネットワーク制御装置、通信システム、ネットワーク制御方法、及びプログラム
US11546207B2 (en) * 2017-09-25 2023-01-03 Sophos Limited Access point registration in a network
US10530632B1 (en) 2017-09-29 2020-01-07 Equinix, Inc. Inter-metro service chaining
EP4020282A1 (en) 2017-10-13 2022-06-29 Ping Identity Corporation Methods and apparatus for analyzing sequences of application programming interface traffic to identify potential malicious actions
US10659326B2 (en) * 2017-10-27 2020-05-19 Microsoft Technology Licensing, Llc Cloud computing network inspection techniques
US10958711B1 (en) * 2017-10-31 2021-03-23 Virtustream Ip Holding Company Llc Platform to deliver enterprise cloud resources and services using composable processes
US10885135B1 (en) 2017-10-31 2021-01-05 Virtustream Ip Holding Company Llc Cloud resources platform incorporating a dynamic offering catalog
US11475337B1 (en) 2017-10-31 2022-10-18 Virtustream Ip Holding Company Llc Platform to deliver artificial intelligence-enabled enterprise class process execution
US10846638B1 (en) 2017-10-31 2020-11-24 Virtustream Ip Holding Company Llc Platform including a decision-support system providing an interactive interface into cost and revenue analyses and forecasting thereof
US10715620B2 (en) * 2017-11-08 2020-07-14 Google Llc Streaming network monitoring caching infrastructure
US10884975B2 (en) * 2017-11-30 2021-01-05 Samsung Electronics Co., Ltd. Differentiated storage services in ethernet SSD
US11049033B2 (en) * 2018-01-12 2021-06-29 Cisco Technology, Inc. Deriving highly interpretable cognitive patterns for network assurance
EP3747167B1 (en) * 2018-02-19 2022-08-31 Huawei Technologies Co., Ltd. Multi-cloud vpc routing and registration
US11228573B1 (en) * 2018-03-09 2022-01-18 Equinix, Inc. Application programming interface exchange
US20190317824A1 (en) * 2018-04-11 2019-10-17 Microsoft Technology Licensing, Llc Deployment of services across clusters of nodes
US11611491B2 (en) * 2018-04-12 2023-03-21 Intel Corporation Edge computing service global validation
US11513910B2 (en) * 2018-04-26 2022-11-29 EMC IP Holding Company LLC Compliance as a service for multi-cloud backup systems
US10874941B2 (en) 2018-06-01 2020-12-29 At&T Intellectual Property I, L.P. Virtualized gaming emulation as a network service
US10880743B1 (en) 2018-06-05 2020-12-29 Equinix, Inc. Interconnection and activation for internet of things devices in multi-tenant data center facilities
US11249781B2 (en) * 2018-06-11 2022-02-15 Vmware, Inc. Cloud agnostic blueprint
US10771252B1 (en) * 2018-06-12 2020-09-08 Equinix, Inc. Data center security services
EP3811568A1 (en) * 2018-06-20 2021-04-28 NEC Laboratories Europe GmbH Multi-access edge computing, mec, system and method for operating the same
US11019027B2 (en) * 2018-06-27 2021-05-25 Cisco Technology, Inc. Address translation for external network appliance
US11012431B2 (en) * 2018-07-31 2021-05-18 International Business Machines Corporation Secure sharing of peering connection parameters between cloud providers and network providers
US11159569B2 (en) * 2018-08-20 2021-10-26 Cisco Technology, Inc. Elastic policy scaling in multi-cloud fabrics
US11539581B2 (en) 2018-08-27 2022-12-27 At&T Intellectual Property I, L.P. Autonomous cloud design and control
US11252192B1 (en) * 2018-09-28 2022-02-15 Palo Alto Networks, Inc. Dynamic security scaling
US20200117531A1 (en) * 2018-10-10 2020-04-16 Microsoft Technology Licensing, Llc Error source module identification and remedial action
US10749768B2 (en) * 2018-11-02 2020-08-18 Cisco Technology, Inc. Using a multi-network dataset to overcome anomaly detection cold starts
US10826874B2 (en) 2018-11-29 2020-11-03 Mastercard International Incorporated Direct production network access using private networks and encapsulation
US10817157B2 (en) 2018-12-20 2020-10-27 Nutanix, Inc. User interface for database management services
US10965547B1 (en) 2018-12-26 2021-03-30 BetterCloud, Inc. Methods and systems to manage data objects in a cloud computing environment
US10467426B1 (en) * 2018-12-26 2019-11-05 BetterCloud, Inc. Methods and systems to manage data objects in a cloud computing environment
US20200210310A1 (en) * 2018-12-27 2020-07-02 Hewlett Packard Enterprise Development Lp Analytics-based architecture compliance testing for distributed web applications
US11816066B2 (en) 2018-12-27 2023-11-14 Nutanix, Inc. System and method for protecting databases in a hyperconverged infrastructure system
US11010336B2 (en) 2018-12-27 2021-05-18 Nutanix, Inc. System and method for provisioning databases in a hyperconverged infrastructure system
EP3678348A1 (en) 2019-01-04 2020-07-08 Ping Identity Corporation Methods and systems for data traffic based adpative security
US10778535B2 (en) 2019-01-15 2020-09-15 Hewlett Packard Enterprise Development Lp Multilayered compliance management for cloud environments
US10819579B2 (en) * 2019-01-16 2020-10-27 Vmware, Inc. Prioritizing capacities based on priority parameters
US11429440B2 (en) 2019-02-04 2022-08-30 Hewlett Packard Enterprise Development Lp Intelligent orchestration of disaggregated applications based on class of service
WO2020190256A1 (en) * 2019-03-15 2020-09-24 Hewlett-Packard Development Company, L.P. Functional tuning for cloud based applications and connected clients
US11206095B1 (en) 2019-03-22 2021-12-21 Equinix, Inc. Timing synchronization for clock systems with asymmetric path delay
US10542586B2 (en) 2019-03-29 2020-01-21 Intel Corporation Technologies for providing hardware resources as a service with direct resource addressability
US11115268B2 (en) * 2019-04-08 2021-09-07 International Business Machines Corporation Assistance in service provision
US11129159B2 (en) 2019-04-11 2021-09-21 Servicenow, Inc. Programmatic orchestration of cloud-based services
US11388273B2 (en) 2019-05-05 2022-07-12 International Business Machines Corporation Achieving atomicity in a chain of microservices
US10635642B1 (en) * 2019-05-09 2020-04-28 Capital One Services, Llc Multi-cloud bi-directional storage replication system and techniques
US11032396B2 (en) * 2019-05-17 2021-06-08 Citrix Systems, Inc. Systems and methods for managing client requests to access services provided by a data center
US11206306B2 (en) 2019-05-21 2021-12-21 Cobalt Iron, Inc. Analytics based cloud brokering of data protection operations system and method
US11095644B2 (en) 2019-06-04 2021-08-17 Bank Of America Corporation Monitoring security configurations of cloud-based services
US11489930B2 (en) * 2019-06-11 2022-11-01 At&T Intellectual Property I, L.P. Telecommunication network edge cloud interworking via edge exchange point
US10826775B1 (en) * 2019-06-19 2020-11-03 Cisco Technology, Inc. Policy plane integration across multiple domains
US11075824B2 (en) 2019-06-19 2021-07-27 128 Technology, Inc. In-line performance monitoring
US11635990B2 (en) 2019-07-01 2023-04-25 Nutanix, Inc. Scalable centralized manager including examples of data pipeline deployment to an edge system
US11501881B2 (en) 2019-07-03 2022-11-15 Nutanix, Inc. Apparatus and method for deploying a mobile device as a data source in an IoT system
US11108654B2 (en) 2019-07-15 2021-08-31 Bank Of America Corporation Re-deployable elastic framework
US11635995B2 (en) 2019-07-16 2023-04-25 Cisco Technology, Inc. Systems and methods for orchestrating microservice containers interconnected via a service mesh in a multi-cloud environment based on a reinforcement learning policy
US11321787B2 (en) 2019-08-07 2022-05-03 Kyndryl, Inc. Automonous multi-cloud solution design and fulfillment via crowdsourcing
US11228539B2 (en) * 2019-08-14 2022-01-18 Intel Corporation Technologies for managing disaggregated accelerator networks based on remote direct memory access
US11082526B2 (en) 2019-08-19 2021-08-03 International Business Machines Corporation Optimizing large parameter passing in a service mesh
US11343247B1 (en) 2019-08-30 2022-05-24 Equinix, Inc. Local delegation of remote key management service
US11757928B2 (en) 2019-09-17 2023-09-12 Equinix, Inc. Distributed denial-of-service mitigation
EP4037263A4 (en) * 2019-09-24 2023-06-14 NTT Communications Corporation NETWORK SYSTEM
JPWO2021059352A1 (zh) 2019-09-24 2021-04-01
US11044172B2 (en) 2019-09-25 2021-06-22 Level 3 Communications, Llc Network service activation system
CN112702372B (zh) * 2019-10-22 2024-04-05 中兴通讯股份有限公司 一种云服务管理方法、云服务管理装置及可读存储介质
US11336721B2 (en) 2019-11-29 2022-05-17 Amazon Technologies, Inc. Dynamic resource movement in heterogeneous computing environments including cloud edge locations
US11171843B2 (en) * 2019-11-29 2021-11-09 Amazon Technologies, Inc. Multi-carrier access to provider substrate extensions
US11418995B2 (en) * 2019-11-29 2022-08-16 Amazon Technologies, Inc. Mobility of cloud compute instances hosted within communications service provider networks
US11588731B1 (en) 2020-01-17 2023-02-21 Equinix, Inc. Cloud-to-cloud interface
US11520372B1 (en) 2020-02-12 2022-12-06 Equinix, Inc. Time synchronization using skew estimation
US11444828B2 (en) * 2020-02-12 2022-09-13 Ciena Corporation Identifying border gateway protocol (BGP) anomalies at scale
US11671429B1 (en) 2020-02-26 2023-06-06 Equinix, Inc. Authorization automation in procurement of interconnections within a data center
US11304115B2 (en) 2020-03-18 2022-04-12 Equinix, Inc. Network defined edge routing for an application workload
US11985534B2 (en) 2020-03-18 2024-05-14 Equinix, Inc. Application workload routing and interworking for network defined edge routing
JP7389351B2 (ja) 2020-03-23 2023-11-30 富士通株式会社 移動対象コンテナ決定方法および移動対象コンテナ決定プログラム
CN115769518A (zh) * 2020-03-24 2023-03-07 环球互连及数据中心公司 使用虚拟化来隔离时间同步业务
WO2021211906A1 (en) * 2020-04-15 2021-10-21 Gunuganta Ramakanth Application-agnostic tenant onboarding onto a multi-tenant system
US11063738B1 (en) 2020-04-27 2021-07-13 Equinix, Inc. Time synchronization using a weighted regression analysis
US11212171B1 (en) 2020-06-30 2021-12-28 Oracle International Corporation Customer self-service cloud application provisioning
US11178041B1 (en) * 2020-07-07 2021-11-16 Juniper Networks, Inc. Service chaining with physical network functions and virtualized network functions
US11604705B2 (en) 2020-08-14 2023-03-14 Nutanix, Inc. System and method for cloning as SQL server AG databases in a hyperconverged system
US11907167B2 (en) 2020-08-28 2024-02-20 Nutanix, Inc. Multi-cluster database management services
US11489721B2 (en) * 2020-09-22 2022-11-01 Vmware, Inc. Dynamic compliance management
CN112328318B (zh) * 2020-09-27 2024-05-14 北京华胜天成科技股份有限公司 专有云平台自动规划的方法、装置及存储介质
US11601471B2 (en) * 2020-10-02 2023-03-07 Cisco Technology, Inc. Integrated service mesh control plane management
US11640340B2 (en) 2020-10-20 2023-05-02 Nutanix, Inc. System and method for backing up highly available source databases in a hyperconverged system
US12081563B2 (en) * 2020-10-27 2024-09-03 Level 3 Communications, Llc Autonomous network security scaling
US11726764B2 (en) 2020-11-11 2023-08-15 Nutanix, Inc. Upgrade systems for service domains
US11665221B2 (en) 2020-11-13 2023-05-30 Nutanix, Inc. Common services model for multi-cloud platform
US11483379B2 (en) * 2020-11-16 2022-10-25 At&T Intellectual Property I, L.P. Enhancing network services based on edge clouds
US11604806B2 (en) 2020-12-28 2023-03-14 Nutanix, Inc. System and method for highly available database service
JP2024502009A (ja) * 2020-12-30 2024-01-17 レベル スリー コミュニケーションズ,エルエルシー エッジコンピュート環境構成ツール
US11900158B2 (en) 2021-02-04 2024-02-13 Red Hat, Inc. Setting task permissions for software services in distributed computing environments
US11736585B2 (en) * 2021-02-26 2023-08-22 Nutanix, Inc. Generic proxy endpoints using protocol tunnels including life cycle management and examples for distributed cloud native services and applications
US11892918B2 (en) 2021-03-22 2024-02-06 Nutanix, Inc. System and method for availability group database patching
US11496556B1 (en) * 2021-04-26 2022-11-08 Cisco Technology, Inc. Service provider selection for application-driven routing
US20220335563A1 (en) * 2021-07-06 2022-10-20 Intel Corporation Graphics processing unit with network interfaces
US11687399B2 (en) * 2021-07-15 2023-06-27 International Business Machines Corporation Multi-controller declarative fault management and coordination for microservices
US11444871B1 (en) * 2021-07-26 2022-09-13 Cisco Technology, Inc. End-to-end path selection using dynamic software-defined cloud interconnect (SDCI) tunnels
US11614925B1 (en) * 2021-09-27 2023-03-28 Sap Se Data model infrastructure as a service
US20230116163A1 (en) * 2021-09-29 2023-04-13 Juniper Networks, Inc. Opportunistic mesh for software-defined wide area network (sd-wan)
US12034652B2 (en) * 2021-10-04 2024-07-09 Juniper Networks, Inc. Virtual network routers for cloud native software-defined network architectures
US11755317B2 (en) * 2021-10-15 2023-09-12 Salesforce, Inc. Extensible platform as a service platform for use by multiple enterprises
US12105683B2 (en) 2021-10-21 2024-10-01 Nutanix, Inc. System and method for creating template for database services
WO2023107925A1 (en) * 2021-12-07 2023-06-15 Amazon Technologies, Inc. Provisioning radio-based networks with locality rules
WO2023150528A1 (en) 2022-02-02 2023-08-10 Oracle International Corporation Architecture of a multi-cloud control plane -network adaptor
US20230269114A1 (en) * 2022-02-24 2023-08-24 Cyxtera Data Centers, Inc. Automated cloud on-ramp in a data center
US11831498B1 (en) 2022-05-23 2023-11-28 Cisco Technology, Inc. Integrating an existing cloud network into a target environment
US11853176B1 (en) * 2022-06-09 2023-12-26 Sap Se Service-compatible fault tolerance and acclimation
US12107915B2 (en) * 2022-06-20 2024-10-01 Electronics And Telecommunications Research Institute Distributed cloud system, data processing method of distributed cloud system, and storage medium
US12028660B2 (en) 2022-08-15 2024-07-02 Equinix, Inc. Cascaded optical switch
US20240073147A1 (en) * 2022-08-23 2024-02-29 Cisco Technology, Inc. Application acceleration on cloud networks
WO2024081841A1 (en) * 2022-10-14 2024-04-18 Oracle International Corporation Network link establishment in a multi-cloud infrastructure
TWI833501B (zh) * 2022-12-15 2024-02-21 中華電信股份有限公司 用於多個公有雲之資產與組態管理系統、資產與組態管理方法及其電腦程式產品
US20240220389A1 (en) * 2022-12-30 2024-07-04 Juniper Networks, Inc. Third-party service and application data for quality of service
US12124351B2 (en) * 2023-01-10 2024-10-22 Dell Products L.P. System and method for distributed management of hardware based on performance validation
US11924036B1 (en) * 2023-04-10 2024-03-05 Cisco Technology, Inc. Automatic SAAS optimization

Citations (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20120147894A1 (en) * 2010-12-08 2012-06-14 Mulligan John T Methods and apparatus to provision cloud computing network elements
CN102904961A (zh) * 2012-10-22 2013-01-30 浪潮(北京)电子信息产业有限公司 一种云计算资源调度方法及系统
US20130142201A1 (en) * 2011-12-02 2013-06-06 Microsoft Corporation Connecting on-premise networks with public clouds
CN103581325A (zh) * 2013-11-11 2014-02-12 中国联合网络通信集团有限公司 一种云计算资源池系统及其实现方法
WO2014147197A1 (en) * 2013-03-20 2014-09-25 Wolting Holding B.V. Compiler for and method for software defined networks
US20150100696A1 (en) * 2013-10-04 2015-04-09 Electronics And Telecommunications Research Institute Communication system, converged communication node, and method for supporting cloud service

Family Cites Families (52)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US8650320B1 (en) * 1998-03-23 2014-02-11 Software Ag Integration server supporting multiple receiving channels
JP2000322288A (ja) 1999-05-06 2000-11-24 Fujitsu Ltd 分散オブジェクト開発システム、および、分散オブジェクト開発をコンピュータに実行させるためのプログラムを記録したコンピュータ読み取り可能な記録媒体
US20020152305A1 (en) 2000-03-03 2002-10-17 Jackson Gregory J. Systems and methods for resource utilization analysis in information management environments
US20020083146A1 (en) 2000-10-31 2002-06-27 Glenn Ferguson Data model for automated server configuration
JP3918697B2 (ja) 2001-12-27 2007-05-23 日本電気株式会社 サーバ構築支援システム及びサーバ構築支援方法並びにプログラム
US7284039B2 (en) * 2002-12-17 2007-10-16 International Business Machines Corporation Apparatus and method for flexible web service deployment
US8122106B2 (en) 2003-03-06 2012-02-21 Microsoft Corporation Integrating design, deployment, and management phases for systems
US7890543B2 (en) 2003-03-06 2011-02-15 Microsoft Corporation Architecture for distributed computing system and automated design, deployment, and management of distributed applications
US8135795B2 (en) * 2003-04-03 2012-03-13 International Business Machines Corporation Method to provide on-demand resource access
ATE381199T1 (de) 2004-08-25 2007-12-15 Ericsson Telefon Ab L M Dynamische umkonfiguration verteilter zusammengesetzter automaten
US7343364B2 (en) * 2005-02-04 2008-03-11 Efunds Corporation Rules-based system architecture and systems using the same
US20110016214A1 (en) 2009-07-15 2011-01-20 Cluster Resources, Inc. System and method of brokering cloud computing resources
US8554916B2 (en) * 2005-04-11 2013-10-08 Accenture Global Services Gmbh Service delivery platform and development of new client business models
US20070073771A1 (en) 2005-09-28 2007-03-29 Baikov Chavdar S Method and system for directly mapping web services interfaces and java interfaces
US7899903B2 (en) 2005-09-30 2011-03-01 Microsoft Corporation Template based management system
US20070168349A1 (en) 2005-09-30 2007-07-19 Microsoft Corporation Schema for template based management system
US8321832B2 (en) 2006-03-31 2012-11-27 Sap Ag Composite application modeling
US20100293360A1 (en) 2007-10-05 2010-11-18 Schneider Electric Automation Gmbh Automation device with control program and method for programming thereof
US8230050B1 (en) * 2008-12-10 2012-07-24 Amazon Technologies, Inc. Providing access to configurable private computer networks
US8583503B2 (en) * 2009-09-04 2013-11-12 Equinix, Inc. On line web portal for private network service providers
US8725847B2 (en) 2009-09-22 2014-05-13 Sap Ag Asynchronous invocation of web services using mobile client applications
US8627426B2 (en) * 2010-04-26 2014-01-07 Vmware, Inc. Cloud platform architecture
US20110295646A1 (en) 2010-05-26 2011-12-01 Sap Ag Service delivery management for brokered service delivery of service groups
US10715457B2 (en) 2010-06-15 2020-07-14 Oracle International Corporation Coordination of processes in cloud computing environments
JP2012175198A (ja) 2011-02-17 2012-09-10 Nippon Telegr & Teleph Corp <Ntt> 流通経路設定システム及び方法
US9336060B2 (en) 2011-06-17 2016-05-10 Microsoft Technology Licensing, Llc Middleware services framework for on-premises and cloud deployment
US9450838B2 (en) 2011-06-27 2016-09-20 Microsoft Technology Licensing, Llc Resource management for cloud computing platforms
US8972487B2 (en) 2011-08-03 2015-03-03 Sap Se Automated framework for testing enterprise services consumer technologies
US20130085242A1 (en) 2011-08-30 2013-04-04 Basf Se Preparation of polymers by controlled free-radical polymerization
US8914843B2 (en) 2011-09-30 2014-12-16 Oracle International Corporation Conflict resolution when identical policies are attached to a single policy subject
US9392010B2 (en) 2011-11-07 2016-07-12 Netflow Logic Corporation Streaming method and system for processing network metadata
CN104335179B (zh) 2012-02-13 2018-01-23 甲骨文国际公司 云计算环境中的过程的协调
US9331938B2 (en) 2012-04-13 2016-05-03 Nicira, Inc. Extension of logical networks across layer 3 virtual private networks
US8843943B2 (en) 2012-04-23 2014-09-23 Red Hat, Inc. Generating a service definition in view of service activity events
US9292351B2 (en) 2012-06-15 2016-03-22 Verizon Patent And Licensing Inc. Distributed fabric architecture in a cloud computing environment
US8817625B1 (en) 2013-09-13 2014-08-26 Telefonaktiebolaget L M Ericsson (Publ) Service placement for inline services chaining with multiple instances
US8893291B2 (en) * 2012-10-30 2014-11-18 Samsung Sds Co., Ltd. Security through metadata orchestrators
US9929919B2 (en) 2012-10-30 2018-03-27 Futurewei Technologies, Inc. System and method for virtual network abstraction and switching
JP6007799B2 (ja) 2013-01-16 2016-10-12 富士通株式会社 集中管理型網制御システム
US9258198B2 (en) * 2013-02-12 2016-02-09 International Business Machines Corporation Dynamic generation of policy enforcement rules and actions from policy attachment semantics
US9454294B2 (en) * 2013-03-15 2016-09-27 International Business Machines Corporation Creating, provisioning and managing virtual data centers
US9584445B2 (en) 2013-05-07 2017-02-28 Equinix, Inc. Direct connect virtual private interface for a one to many connection with multiple virtual private clouds
US9137161B2 (en) 2013-05-29 2015-09-15 Telefonaktiebolaget L M Ericsson (Publ) Method and system of bandwidth-aware service placement for service chaining
US20150067171A1 (en) 2013-08-30 2015-03-05 Verizon Patent And Licensing Inc. Cloud service brokering systems and methods
US20150244771A1 (en) 2014-02-21 2015-08-27 Bat Blue Networks System and method for interconnecting and enforcing policy between multiple disparate providers of application functionality and data centers and/or end-users
US10230571B2 (en) 2014-10-30 2019-03-12 Equinix, Inc. Microservice-based application development framework
WO2016071736A1 (en) 2014-11-04 2016-05-12 Telefonaktiebolaget L M Ericsson (Publ) Network function virtualization service chaining
US20160197834A1 (en) 2015-01-02 2016-07-07 Siegfried Luft Architecture and method for traffic engineering between diverse cloud providers
WO2016109845A1 (en) * 2015-01-02 2016-07-07 Siaras, Inc. Architecture and method for traffic engineering between diverse cloud providers
US9948552B2 (en) 2015-04-17 2018-04-17 Equinix, Inc. Cloud-based services exchange
US10237355B2 (en) 2015-05-12 2019-03-19 Equinix, Inc. Software-controlled cloud exchange
US20170070387A1 (en) 2015-09-09 2017-03-09 Telefonaktiebolaget L M Ericsson (Publ) Method for pro-active traffic redirection in multi-hop wireless networks using software defined networking

Patent Citations (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20120147894A1 (en) * 2010-12-08 2012-06-14 Mulligan John T Methods and apparatus to provision cloud computing network elements
US20130142201A1 (en) * 2011-12-02 2013-06-06 Microsoft Corporation Connecting on-premise networks with public clouds
CN102904961A (zh) * 2012-10-22 2013-01-30 浪潮(北京)电子信息产业有限公司 一种云计算资源调度方法及系统
WO2014147197A1 (en) * 2013-03-20 2014-09-25 Wolting Holding B.V. Compiler for and method for software defined networks
US20150100696A1 (en) * 2013-10-04 2015-04-09 Electronics And Telecommunications Research Institute Communication system, converged communication node, and method for supporting cloud service
CN103581325A (zh) * 2013-11-11 2014-02-12 中国联合网络通信集团有限公司 一种云计算资源池系统及其实现方法

Cited By (23)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN109952744A (zh) * 2016-09-26 2019-06-28 河谷控股Ip有限责任公司 云网络中的虚拟电路
CN109952744B (zh) * 2016-09-26 2021-12-14 河谷控股Ip有限责任公司 云网络中提供虚拟电路的方法和设备
US11934975B2 (en) 2016-12-23 2024-03-19 Advanced New Technologies Co., Ltd. Resource processing method and apparatus
US11288604B2 (en) 2016-12-23 2022-03-29 Advanced New Technologies Co., Ltd. Resource processing method and apparatus
CN110249611B (zh) * 2017-02-27 2020-11-03 华为技术有限公司 流量工程业务映射
US10708083B2 (en) 2017-02-27 2020-07-07 Futurewei Technologies, Inc. Traffic engineering service mapping
CN110249611A (zh) * 2017-02-27 2019-09-17 华为技术有限公司 流量工程业务映射
CN110809875A (zh) * 2017-06-13 2020-02-18 环球互连及数据中心公司 服务对等交换
US11758007B2 (en) 2017-06-13 2023-09-12 Equinix, Inc. Service peering exchange
CN110809875B (zh) * 2017-06-13 2022-12-16 环球互连及数据中心公司 服务对等交换
CN107483447A (zh) * 2017-08-24 2017-12-15 广州中道电子科技有限公司 一种云信息交换系统
CN107566355A (zh) * 2017-08-24 2018-01-09 广州中道电子科技有限公司 一种云信息交换系统
CN115134245B (zh) * 2018-03-30 2024-04-05 英特尔公司 网络装置、方法、计算机化的系统和机器可读存储介质
CN115134245A (zh) * 2018-03-30 2022-09-30 英特尔公司 用于云与电信网络之间的网络分组处理的技术
CN110474797A (zh) * 2019-07-25 2019-11-19 北京旷视科技有限公司 Api业务系统、主备切换的方法及装置
WO2021047227A1 (zh) * 2019-09-10 2021-03-18 华为技术有限公司 跨区域共享服务的方法、装置、管理设备及存储介质
CN110798504B (zh) * 2019-09-10 2021-06-15 华为技术有限公司 跨区域共享服务的方法、装置、管理设备及存储介质
CN110798504A (zh) * 2019-09-10 2020-02-14 华为技术有限公司 跨区域共享服务的方法、装置、管理设备及存储介质
CN111130908B (zh) * 2019-12-31 2022-09-06 中信百信银行股份有限公司 基于调用流量分析预测的微服务动态聚合拆分系统
CN111130908A (zh) * 2019-12-31 2020-05-08 中信百信银行股份有限公司 基于调用流量分析预测的微服务动态聚合拆分系统
US11844016B2 (en) 2020-02-26 2023-12-12 Rakuten Symphony Singapore Pte. Ltd. Computer system and network service construction method
CN116803117A (zh) * 2020-12-10 2023-09-22 亚马逊科技公司 管理基于无线电的专用网络
CN113220284A (zh) * 2021-05-19 2021-08-06 陕西大唐高科机电科技有限公司 一种基于云的自动控制系统网络编程平台

Also Published As

Publication number Publication date
EP3155759A1 (en) 2017-04-19
CN111371669B (zh) 2021-06-11
US10237355B2 (en) 2019-03-19
CA2951944A1 (en) 2016-11-17
US20160337473A1 (en) 2016-11-17
US20160337175A1 (en) 2016-11-17
CA2951944C (en) 2020-06-30
EP3155759B1 (en) 2019-09-18
CN106464742B (zh) 2020-01-31
EP4236252A2 (en) 2023-08-30
EP3588861B1 (en) 2023-06-14
US9967350B2 (en) 2018-05-08
US10021197B2 (en) 2018-07-10
US10027768B2 (en) 2018-07-17
US10015268B2 (en) 2018-07-03
US20160337179A1 (en) 2016-11-17
US10291726B2 (en) 2019-05-14
US10250699B2 (en) 2019-04-02
BR112016029203A2 (pt) 2017-08-22
AU2016262538A1 (en) 2016-12-22
US20160337193A1 (en) 2016-11-17
CN111371669A (zh) 2020-07-03
US20160337474A1 (en) 2016-11-17
AU2016262538B2 (en) 2018-06-14
JP2017527151A (ja) 2017-09-14
US20170078410A1 (en) 2017-03-16
SG11201610055VA (en) 2017-11-29
JP6495949B2 (ja) 2019-04-03
US20160337180A1 (en) 2016-11-17
EP4236252A3 (en) 2023-10-04
EP3588861A1 (en) 2020-01-01

Similar Documents

Publication Publication Date Title
CN106464742A (zh) 用于基于云的服务交换的可编程网络平台
US11973686B1 (en) Virtual performance hub
AU2020384311B2 (en) Secure artificial intelligence model training and registration system
US11228641B1 (en) Inter-metro connectivity network connect
CN107147509B (zh) 虚拟专用网业务实现方法、装置及通信系统
WO2016183253A1 (en) Programmable network platform for a cloud-based services exchange
CN110120934A (zh) 应用防火墙策略的方法、软件定义网络控制器和介质
US10439888B2 (en) Interconnect engine for interconnection facilities
Nimkar et al. Towards full network virtualization in horizontal IaaS federation: security issues
US12058206B1 (en) Performance-based recommendation services for workload orchestration
KR20180094580A (ko) 클라우드 네트워크에서 서비스 능력 조합 기반 서비스 제어 방법 및 장치
Hu et al. Virtualized Network Functions Placement Scheme in Cloud Network Collaborative Operation Platform
BR112016029203B1 (pt) Plataforma de rede programável para troca de serviços com base em nuvem

Legal Events

Date Code Title Description
C06 Publication
PB01 Publication
C10 Entry into substantive examination
SE01 Entry into force of request for substantive examination
GR01 Patent grant
GR01 Patent grant