CN115943398A - 用于在多个云计算环境之中生成和搜索资源拓扑的系统、方法和设备 - Google Patents

用于在多个云计算环境之中生成和搜索资源拓扑的系统、方法和设备 Download PDF

Info

Publication number
CN115943398A
CN115943398A CN202180044205.8A CN202180044205A CN115943398A CN 115943398 A CN115943398 A CN 115943398A CN 202180044205 A CN202180044205 A CN 202180044205A CN 115943398 A CN115943398 A CN 115943398A
Authority
CN
China
Prior art keywords
network
cloud computing
constructs
gateway
construct
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Pending
Application number
CN202180044205.8A
Other languages
English (en)
Inventor
J·切尔卡斯
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.)
Avidros Systems
Original Assignee
Avidros Systems
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 Avidros Systems filed Critical Avidros Systems
Publication of CN115943398A publication Critical patent/CN115943398A/zh
Pending legal-status Critical Current

Links

Images

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L43/00Arrangements for monitoring or testing data switching networks
    • H04L43/04Processing captured monitoring data, e.g. for logfile generation
    • H04L43/045Processing captured monitoring data, e.g. for logfile generation for graphical visualisation of monitoring data
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L12/00Data switching networks
    • H04L12/66Arrangements for connecting between networks having differing types of switching systems, e.g. gateways
    • 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/12Discovery or management of network topologies
    • H04L41/122Discovery or management of network topologies of virtualised topologies, e.g. software-defined networks [SDN] or network function virtualisation [NFV]
    • 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/22Arrangements for maintenance, administration or management of data switching networks, e.g. of packet switching networks comprising specially adapted graphical user interfaces [GUI]
    • 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/5009Determining service level performance parameters or violations of service level contracts, e.g. violations of agreed response time or mean time between failures [MTBF]
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L43/00Arrangements for monitoring or testing data switching networks
    • H04L43/02Capturing of monitoring data
    • H04L43/028Capturing of monitoring data by filtering
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L43/00Arrangements for monitoring or testing data switching networks
    • H04L43/06Generation of reports
    • H04L43/067Generation of reports using time frame reporting
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L43/00Arrangements for monitoring or testing data switching networks
    • H04L43/08Monitoring or testing based on specific metrics, e.g. QoS, energy consumption or environmental parameters
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L43/00Arrangements for monitoring or testing data switching networks
    • H04L43/08Monitoring or testing based on specific metrics, e.g. QoS, energy consumption or environmental parameters
    • H04L43/0852Delays
    • 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]
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/01Input arrangements or combined input and output arrangements for interaction between user and computer
    • G06F3/048Interaction techniques based on graphical user interfaces [GUI]
    • G06F3/0481Interaction techniques based on graphical user interfaces [GUI] based on specific properties of the displayed interaction object or a metaphor-based environment, e.g. interaction with desktop elements like windows or icons, or assisted by a cursor's changing behaviour or appearance
    • G06F3/04817Interaction techniques based on graphical user interfaces [GUI] based on specific properties of the displayed interaction object or a metaphor-based environment, e.g. interaction with desktop elements like windows or icons, or assisted by a cursor's changing behaviour or appearance using icons
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T11/002D [Two Dimensional] image generation
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L43/00Arrangements for monitoring or testing data switching networks
    • H04L43/08Monitoring or testing based on specific metrics, e.g. QoS, energy consumption or environmental parameters
    • H04L43/0876Network utilisation, e.g. volume of load or congestion level
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L43/00Arrangements for monitoring or testing data switching networks
    • H04L43/10Active monitoring, e.g. heartbeat, ping or trace-route
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L61/00Network arrangements, protocols or services for addressing or naming
    • H04L61/50Address allocation
    • H04L61/5007Internet protocol [IP] addresses

Landscapes

  • Engineering & Computer Science (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Data Mining & Analysis (AREA)
  • Environmental & Geological Engineering (AREA)
  • Human Computer Interaction (AREA)
  • Theoretical Computer Science (AREA)
  • Data Exchanges In Wide-Area Networks (AREA)
  • General Engineering & Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Computer And Data Communications (AREA)

Abstract

公开一种分布式云计算系统,它包括:配置成在第一云计算网络中部署第一网关并在第二云计算网络中部署第二网关的控制器;以及逻辑。逻辑在由一个或多个处理器执行时致使包括以下的操作:从控制器接收与多个构造相关的元数据;从第一网关和第二网关中的每个网关接收网络数据;导出详细说明多个地理位置处的网络业务的密度的热图信息,其中,网络业务跨越多个云计算网络传送;生成图示网络业务的密度的热图可视化,它包括地理区域的地图以及表示网络业务的密度的视觉指示器的叠加;并致使在网络装置的显示屏上呈现热图可视化。

Description

用于在多个云计算环境之中生成和搜索资源拓扑的系统、方法和设备
相关申请的交叉引用
本申请要求享有2020年4月21日提交的美国临时专利申请No. 63/013,529、2020年5月5日提交的美国临时专利申请No. 63/020425、2020年12月18日提交的美国申请No.17/127920、2020年12月18日提交的美国申请No. 17/127927、2020年12月18日提交的美国专利申请No. 17/127955和2020年8月28日提交的美国专利申请No. 17/006657的优先权,这些申请的全部内容以引用的方式并入本文中。
技术领域
本公开的实施例涉及云联网领域。更具体来说,本公开的一个实施例涉及用于提供横跨单个公共云网络或多个公共云网络的企业网络的操作可视性的系统和方法。
背景技术
直到最近,商业已经依赖于安装在驻留于其用户紧密附近的一个或多个电子装置(以下称为“本地部署(on-premises)电子装置”)上的应用软件。这些本地部署电子装置可对应于例如端点装置(例如,个人计算机、蜂窝智能电话、上网本等)、本地维护的大型机、或甚至是本地服务器。取决于商业的规模,购买本地部署电子装置及其对应的软件需要大量的前期资本支出以及大量的持续运营成本以维持这些本地部署电子装置的可操作性。这些运营成本可包括用于部署、管理、维护、升级、维修和更换这些电子装置的成本。
最近,越来越多的商业和个人已经开始依赖公共云网络(以下称为“公共云”)来为用户提供各种服务,从文字处理应用功能性到网络管理。“公共云”是具有多租户架构的完全虚拟化的环境,它为租户(即,用户)提供共享计算和存储资源的能力,而同时在每个用户的云帐户内保留数据隔离。虚拟化的环境包括由一堆物理数据中心提供的按需云计算平台,其中,每个数据中心包括由云提供商托管的众多服务器。不同类型的公共云网络的示例可包括但不限于或不局限于例如AMAZON WEB SERVICES®、MICROSOFT® AZURE®、GOOGLECLOUD PLATFORM™或ORACLE CLOUD™。
对公共云网络的这种日益增长的依赖在很大程度上是因为由这种特定部署提供的多个节省成本的优势。然而,对于诸如例如网络管理之类的许多类型的服务,当商业运营依赖于单个公共云的可操作性或多个公共云网络的可操作性时,网络管理员面临着许多挑战。例如,在由企业所部署的网络依赖于多个公共云网络(以下称为“多个云网络”)的情况下,网络管理员已经无法有效地排查出现在多个云网络中的连接性问题。对于此类无效排查的一个原因是,没有常规的解决方案可供管理员或用户用于可视化其多个云网络部署的连接性。另一个原因是,云网络提供商允许用户仅访问有限数量的构造(construct),从而控制由用户可访问的网络信息的类型和量。因此,网络信息的类型或量很少足以使得管理员或用户能够快速且有效地排查和校正网络连接性问题。
同样地,没有常规的解决方案用于可视地监测不同公共云网络(多个云网络)中的网络装置之间的业务交换并保留与具有多个云网络的网络装置相关联的状态信息,以便更快速地检测可能暗示网络攻击正在进行中或多个云网络的健康受到损害的操作异常。
附图说明
本公开的实施例通过示例的方式而非通过限制的方式图示在附图的图中,在图中,类似的参考指示类似的要素,并且其中:
图1是根据一些实施例的包括控制器的分布式云计算系统的示例性实施例的图,该控制器管理横跨多个云网络的构造;
图2A是根据一些实施例的部署在云计算平台内的控制器的逻辑表示的示例性图示;
图2B是根据一些实施例的部署在云计算平台内的拓扑系统逻辑的逻辑表示的示例性图示;
图3A-3C是根据一些实施例显示可视化平台的仪表板的部分的界面屏幕,其涉及图示与在云计算环境内的网络业务和构造相关的信息;
图4A-4H是根据一些实施例的显示可视化平台的拓扑映射的部分的界面屏幕,其涉及图示与在云计算环境内的构造及其间的连接;
图5A-5G是根据一些实施例的显示可视化平台的一方面的部分的示例性界面屏幕,其涉及图示描述通过云计算环境内的一个或多个构造的网络业务流的信息;
图6是根据一些实施例的在拓扑系统逻辑、控制器和由控制器管理的一个或多个网关之间的示例性通信方法的流程图;
图7A-7B是根据一些实施例的由拓扑系统逻辑执行并在图4A-5A中图示的标记和搜索方法的流程图;
图8是根据一些实施例的由拓扑系统逻辑执行并在图4G-4H中图示的重放功能的示例性方法的流程图;
图9是根据一些实施例部署在云计算平台内的逻辑的逻辑表示的示例性图示;
图10是根据一些实施例包括用于确定云网络内的数据传输路径并生成数据传输路径的可视化的操作的示例性方法的流程图;
图11是根据一些实施例的包括用于确定云网络内的数据传输路径和伴随的网络度量并生成数据传输路径和网络度量的可视化的操作的示例性方法的流程图;以及
图12A-12D是根据一些实施例的显示可视化平台的附加方面的部分的示例性界面屏幕,其涉及图示描述通过云计算环境内的一个或多个构造的网络业务流的信息。
具体实施方式
本公开的实施例涉及配置成提供横跨一个或多个云计算环境的网络的操作可视性的系统。根据一个实施例,该系统可包括软件实例,该软件实例在一个或多个云计算资源中操作,并且配置成收集信息并呈现图形用户界面(GUI),该GUI提供横跨多个(两个或更多个)云计算环境的网络(以下称为“多个云计算环境”或“多个云网络”)的构造之间的连接性的交互式视觉呈现。在其它实施例中,该系统包括软件实例和控制器,控制器配置成管理部署在一个或多个云计算环境中(诸如部署在多个云环境内)的构造,并与软件实例通信。
如下文将进一步详细地讨论,软件实例可使用一个或多个应用编程接口(API)调用(call)来向控制器查询信息,以检索由控制器存储的信息,这些信息详细说明了由控制器管理的每个构造的状态信息。控制器从部署在多个云网络内的一个或多个网关获取此类信息,其中,所述(一个或多个)网关配置成在周期性(或非周期性)的基础上将该信息传送到控制器。应该理解,如本文中所讨论,术语“多个云网络”是指多个云网络,其中,每个云网络可构成由不同的云计算环境资源提供商(以下称为“云提供商”)所提供的公共云网络。
如本领域中已知,控制器可配置成对每个网关进行编程以通过诸如向网关提供关于如何在各种网关之中路由网络业务的指令来控制网络业务的路由。作为说明性示例,控制器可指示网关关于来自一个子网络(以下称为“子网”)的虚拟机(VM)是否可直接与来自另一个子网的VM通信,或者网络业务将如何在由控制器管理的云计算环境内从源流到目的地。另外,本公开的实施例讨论了由软件实例提供给控制器的指令,这些指令随后由控制器传送到一个或多个网关,并且包括用于将网络数据从网关传送到软件实例的可路由地址(例如,互联网协议“IP”地址等)的指令。
因此,作为一般实施例,软件实例可向控制器查询指示由控制器管理的每个构造的状态和元数据的数据,并且还可从一个或多个网关接收网络数据。软件实例包括逻辑,逻辑在由一个或多个处理器(例如,是云计算资源的一部分)执行时生成各种可视化,这些可视化是构造状态和元数据(统称为“构造元数据”)以及网络数据的组合。可视化可以是交互式的,并且提供给诸如网络管理员、信息技术(IT)专业人员等的用户。另外,可视化可配置成接收用户输入,其致使软件实例的逻辑(“拓扑系统逻辑”)改变可视化。如下文所讨论并且如在附图中所图示,可视化可包括但不限于或不局限于:提供网络的总体状态和健康以及特定网络参数的仪表板视图;提供每个构造以及标识构造之间的通信的链路的视觉呈现的动态拓扑映射;以及提供用于详细说明网络业务如何通过由控制器管理的云计算环境正流动(或已经流动)的各种图示的网络流可视化。可视化中的每个可视化都可提供横跨多个云网络的数据。
在一些实施例中,响应于用户输入,拓扑系统逻辑可经由拓扑映射可视化生成用于构造中的一个或多个构造的标签,并存储那些标签以供搜索。例如,可接收另外的用户输入,以致使拓扑系统逻辑搜索由控制器管理的众多构造并经由拓扑映射显示所标记的构造以及其间的任何链路。在又一些实施例中,响应于接收到的包括一个或多个标签的用户输入作为搜索项,拓扑系统逻辑可生成可视化,以图示(一个或多个)对应标记的构造的网络流。
通过向控制器查询构造元数据并从一个或多个网关接收网络数据,拓扑系统逻辑可生成上文所描述的示例性可视化以及附图中所示的那些可视化,其图示了与一个或多个标记的构造相关联的网络业务流。如通篇中所指出的,图示的网络业务流可对应于部署在多个云网络中的构造。与当前技术相比,通过使得用户能够用有意义的标签来标记驻留在不同公共云网络中的一个或多个网关并搜索与该标签相对应的网络业务流、构造参数、构造状态和链路状态,此类可操作性为用户提供了许多优势。
拓扑系统逻辑的附加功能性是生成图示由控制器管理的网络的方面随时间的变化的可视化。例如,并且如下文所讨论,拓扑系统逻辑可存储对于给定的时间点(例如,t1→ti(其中,i>1))与网络相关的接收的数据(网络数据和构造元数据)。一旦接收到与显示两个时间点(例如,t1和t2)之间的变化的请求相对应的用户输入,拓扑系统逻辑便针对t1和t2比较存储的数据,并生成突出在t1和t2的网络之间的(一个或多个)变化的视觉(visual)。术语“突出”可以指任何视觉指示器或视觉指示器的组合,诸如具有变化的参数的颜色编码构造、改变具有变化的参数的构造的大小、在具有变化的参数的构造周围显示图形(例如,环)、显示列出可横跨多个公共云网络的网络的状态在时间t1和时间t2之间的检测到的变化的窗口或其它图像、或其它类型的视觉指示器。
I. 术语
在以下描述中,使用某些术语来描述本发明的特征。在某些情况下,术语“逻辑”代表配置成执行一个或多个功能的硬件、固件和/或软件。作为硬件,逻辑可包括具有数据处理或存储功能性的电路系统。此类电路系统的示例可包括但不限于或不局限于微处理器、一个或多个处理器核、可编程门阵列、微控制器、专用集成电路、无线接收器、传送器和/或收发器电路系统、半导体存储器或组合逻辑。
备选地或与上文所描述的硬件电路系统组合,逻辑可以是以一个或多个软件模块形式的软件。(一个或多个)软件模块可包括可执行应用、应用编程接口(API)、子例程、功能、过程、小应用程序、小服务程序、例程、源代码、共享库/动态加载库、或一个或多个指令。(一个或多个)软件模块可存储在任何类型的合适的非暂时性存储介质或暂时性存储介质(例如,电、光、声或其它形式的传播信号,诸如载波、红外信号或数字信号)中。非暂时性存储介质的示例可包括但不限于或不局限于:可编程电路;半导体存储器;非持久存储设备,诸如易失性存储器(例如,任何类型的随机存取存储器“RAM”);持久存储设备,诸如非易失性存储器(例如,只读存储器“ROM”、电源备份的RAM、闪速存储器、相变存储器等)、固态驱动器、硬盘驱动器、光盘驱动器或便携式存储器装置。作为固件,可执行代码可存储在持久存储设备中。
术语“计算机化”一般表示任何对应的操作由硬件与软件和/或固件的组合进行。
术语“构造”可解释为涉及特定功能性的虚拟或物理逻辑,诸如网关、虚拟私有云网络(VPC)、子网络等。例如,作为说明性示例,构造可对应于以软件(例如,虚拟机)形式的虚拟逻辑,它可向特定IP子网指配由其所支持的IP地址范围内的IP地址和/或装置特定的地址(例如,媒体接入控制“MAC”地址)。备选地,在一些实施例中,构造可对应于物理逻辑,诸如在通信上耦合到网络并指配有(一个或多个)MAC和/或IP地址的电子装置。电子装置的示例可包括但不限于或不局限于个人计算机(例如,桌上型计算机、膝上型计算机、平板电脑或上网本)、移动电话、独立器具、传感器、服务器或信息路由装置(例如,路由器、桥接路由器(“桥路器”)等)。设想,每个构造可至少构成作为公共网络的一部分驻留的逻辑,不过某些构造可部署为“本地部署”(或本地)网络的一部分。
术语“网关”可以指部署在公共云网络内的软件实例或与公共云网络一起部署的虚拟私有云网络,并控制公共云网络内以及来自公共云网络(例如,到一个或多个远程站点,其包括可处理、存储和/或继续路由数据的计算装置)的数据业务流。本文中,每个网关可作为“中转网关”或“辐条(spoke)网关”进行操作,它们是具有相似架构但基于其在云计算环境中的位置/配置不同地标识的网关。例如,“辐条”网关配置成与目标实例交互,而“中枢”网关配置成进一步协助传播指向辐条网关或本地部署网络内的计算装置的数据业务(例如,一个或多个消息)。
术语“网络业务度量”可以指网络业务传输的测量,包括量、频率和/或时延。在一些实施例中,网络业务度量可包括源和/或目的地的标识(例如,IP地址、起源/目的地网关、起源/目的地VPC、起源/目的地地理区域等)。此外,在一些实施例中,网络业务度量还可以指对网络业务传输的测量所执行的分析和/或网络业务传输的测量的过滤。
术语“控制器”可以指部署在云计算环境内的软件实例(例如,公共云网络的资源),它管理跨不同公共云网络(多个云网络)横跨的一个或多个云计算环境的某些方面的可操作性。例如,控制器可配置成收集与每个VPC和/或每个网关实例相关的信息,并配置与横跨多个云网络的一个或多个VPC和/或网关实例相关联的一个或多个路由表,以在不同的源与目的地之间建立通信链路(例如,逻辑连接)。这些源和/或目的地可包括但不局限于或不限于本地部署计算装置、网关实例或其它类型的云资源。
术语“消息”一般指按照适当的递送协议传送的以规定格式的信息。因此,每个消息可以以具有规定格式的一个或多个包(packet)、帧或任何其它位系列的形式。
术语“链路”一般可解释为两个或更多个构造之间的物理或逻辑通信路径。例如,作为物理通信路径,可使用以电气布线、光纤、缆线、总线迹线或使用红外、射频(RF)的无线信道形式的有线和/或无线互连。逻辑通信路径包括使得信息能够在多个构造之间交换的任何通信方案。
最后,如本文中所使用的术语“或”以及“和/或”要解释为包含性或表示任何一个或任何组合。作为示例,“A、B或C”或“A、B和/或C”表示“以下中的任何项:A;B;C;A和B;A和C;B和C;A、B和C”。只有当元件、功能、步骤或动作的组合在某种程度上固有地相互排斥时,才将出现该定义的例外情况。
由于本发明易于有许多不同形式的实施例,所以旨在要将本公开视为是本发明的原理的示例,而不是旨在将本发明限制在所示和所描述的具体实施例。
II. 通用架构–拓扑系统
参考图1,示出了分布式云管理系统100的示例性实施例的图,其中,云计算系统以用于管理驻留在多个云网络中的构造的控制器102和用于可视化受管理的构造的软件实例138(以下称为“拓扑系统逻辑”)为特征。更具体来说,控制器102配置成管理横跨诸如云(网络)A 104和云(网络)B 106之类的多个云网络的多个构造。在示例性图示中,云A 104为与网关1181-1182通信的中转网关114提供计算资源(“资源”),网关1181-1182与虚拟网络(VNET)1161-1162相关联。云B 106为与网关1241-1242通信的中转网关120提供资源,网关1241-1242与虚拟私有云(VPC)1221-1222相关联。云B 106进一步为与VPC 128和130通信的本地中转中枢126提供资源。根据本公开的该实施例,如图1所示,中转网关114、120和本地中转中枢126相互通信。因此,应该清楚地理解,控制器102正在管理横跨多个云网络的若干个构造,诸如所图示的网关。
具体来说,构造的第一分组108部署在云A 104内,而构造的第二分组110和第三分组112部署在云B 106内。控制器102利用一组API来向这些构造中的每个构造提供指令并接收与这些构造中的每个构造相关联的数据(状态信息)以及与这些构造之间的每个连接相关的状态信息(链路状态)。由构造返回的构造元数据可取决于构造的类型(例如,区域、VPC、网关、子网、VPC内的实例等),其中,构造元数据的示例可包括但不限于或不局限于以下构造参数(属性)中的一个或多个:构造名称、构造标识符、启用的加密、与该构造相关联的VPC的属性(例如,VPC名称、标识符和/或区域等)、在其中部署构造的云属性(例如,构造在其中驻留的云供应商、云类型等)等。
另外,云管理系统100包括在云计算资源136上处理的拓扑系统逻辑138。在一些实施例中,拓扑系统逻辑138可以是在用户的基础设施上作为服务(IaaS)云或多个云环境托管的逻辑。作为一个示例,拓扑系统逻辑138可以作为公共云网络内的实例(例如,作为AWS®中的EC2®实例)启动。作为备选示例,拓扑系统逻辑138可作为AZURE®中的虚拟机启动。在启动时,为拓扑系统逻辑138指配诸如例如静态IP地址之类的可路由地址。
如所示,拓扑系统逻辑138经由例如API与控制器102通信,该API使得拓扑系统逻辑138能够经由一个或多个API调用来向控制器102传送查询。拓扑系统逻辑138在由云计算资源136执行时执行操作,该操作包括响应于特定事件经由API调用向控制器102查询构造元数据。特定事件可以根据周期性间隔或非周期性间隔或触发事件,诸如用户经由用户输入请求可视化。
在一些实施例中,响应于经由API调用从拓扑系统逻辑138接收到查询,控制器102访问存储在控制器102上或由控制器102存储的数据,并经由API将所请求的数据返回到拓扑系统逻辑138。例如,拓扑系统逻辑138可向控制器102发起一个或多个查询,以获取与由控制器102管理的构造相关联的拓扑信息(例如,由控制器102管理的所有网关的列表、由控制器102管理的所有VPC或VNET的列表、或从数据库表中采集的其它数据)以及与如上所述的每个构造相关联的状态信息。
一旦接收到所请求的构造元数据,拓扑系统逻辑138便执行一个或多个分析,并确定是否需要请求任何附加的构造元数据。例如,拓扑系统逻辑138可向控制器102提供第一查询,以请求由控制器102管理的所有网关的列表。响应于接收到所请求的构造元数据,拓扑系统逻辑102确定所列出的网关之间的互连。随后,拓扑系统逻辑138可向控制器102提供第二查询,以请求由控制器管理的所有VPC的列表。响应于接收到所请求的构造元数据,拓扑系统逻辑138确定每个VPC与对应网关之间的关联。
例如,在一些实施例中,所接收的构造元数据为每个网关提供详细信息,以使得拓扑系统逻辑138能够生成表示网关的数据对象(例如,构造元数据的数据库表)。对表示所述多个网关的数据对象进行交叉引用,以基于每个网关的参数扩建拓扑映射,这可尤其包括:云网络用户帐户名称;云提供商名称;VPC名称;网关名称;VPC区域;沙盒IP地址;网关子网标识符;网关子网CIDR;网关区;相关联的云计算帐户的名称;VPC标识符;VPC状态;父VPC名称;VPC CIDR;等等。类似地,还利用构造元数据来生成表示每个VPC对象和每个子网对象的数据对象。
另外,为了确定网络内的连接是否在两个中转网关之间,可由拓扑系统逻辑138利用单独的API调用来向控制器102查询所有中转网关的列表。因此,拓扑系统逻辑138接着能够确定第一网关和第二网关之间的连接是否在两个中转网关之间。在一些实施例中,如下文将讨论,中转网关之间的连接以及辐条网关和中转之间的连接可以用两种不同的方法可视地表示。
除了从控制器102接收构造元数据之外,拓扑系统逻辑138还可从由控制器102管理的一个或多个网关接收网络数据。例如,针对每个网络包,网络数据可包括但不限于或不局限于:入口接口、源IP地址、目的地IP地址、IP协议、用于UDP或TCP的源端口、用于UDP或TCP的目的地端口、ICMP的类型和代码、IP“服务类型”等。在一个实施例中,可使用IP协议(例如,UDP)将网络数据从网关传送到拓扑系统逻辑138。在一些实施例中,经由NetFlow网络协议收集和导出网络数据。
为了将网关配置成将网络数据传送到拓扑系统逻辑138,拓扑系统逻辑138可向控制器102提供指令,而控制器102又将指令提供给由控制器102管理的每个网关。指令提供拓扑系统逻辑138的IP地址,其用作用于寻址网络数据的传输的IP地址。
如下文将详细地讨论,拓扑系统逻辑138可生成包括一个或多个交互式显示屏的可视化平台。这些显示屏可包括仪表板、拓扑映射和网络流可视化。另外,可视化平台可配置成接收致使对所显示的数据进行过滤的用户输入。
例如并且仍然参考图1,拓扑系统逻辑138可生成用于链接由控制器102所检测的构造的连接的拓扑映射可视化,其通过由云A 104和云B 106所表示的逻辑区域132内的构造图示。另外,拓扑系统逻辑138可生成各种图形用户界面(GUI),这些GUI图示如由第二逻辑区域134所图示的在由控制器102管理的构造之间流动、流到所述构造以及从所述构造流动的网络业务的网络业务流、业务流热图、包捕获、网络健康、链路时延、加密、防火墙等。
提供图示控制器的参数的仪表板的本公开的实施例提供了与当前系统相比的众多优点,因为当前系统不提供可视化跨多个云网络部署的构造之间的连接、资源的状态和用于多个云的资源之间的连接以及通过横跨多个云的构造的网络数据流的能力。作为一个示例,企业网络可利用部署在多个云网络中的资源,并且企业网络的管理员可期望获取与这些资源相关联的所有构造和连接的状态的可视化。然而,由于企业网络横跨多个云网络,所以常规系统无法提供这样的解决方案。通过仅获取单个云中的每个构造的状态的文本表示(例如,通过命令行界面),管理员无法获取对于整个企业网络的构造、其间的连接以及每个构造的状态的完整视图。此外,以当前系统所提供的方式,对异常或恶意网络业务模式的检测可能是不可检测的。
如本文中所使用,将构造、其间的连接以及每个构造的状态的可视化(或视觉显示)称为拓扑映射。当前系统无法提供跨多个云网络的拓扑映射,并且无法允许管理员跨多个云网络进行搜索,也无法可视化第一个云网络中的构造或连接的状态变化如何影响第二个云网络中的资源或连接的状态。在一些实施例中,拓扑映射可响应于诸如以周期性时间间隔的某些事件而随着构造或连接的状态变化或在接收到构造元数据更新时自动改变(例如,“动态拓扑映射”)。
在一些实施例中,网络可跨使用多个控制器来管理网络的可操作性的多个云网络而进行部署。在一些此类实施例中,每个控制器可从网络以及它所管理的构造采集信息,并且单个控制器可获取所有此类信息,从而使得可视化平台能够跨横跨多个控制器的(一个或多个)网络提供可视性。
参考图2A,根据一些实施例示出了部署在云管理系统100内的控制器102的逻辑表示的示例性图示。如上文所指出的,控制器102可以是部署在云网络内以协助管理多个公共云网络内的构造的可操作性的软件实例。根据该实施例,控制器102可配置有某些逻辑模块,包括VPC网关创建逻辑200、通信接口逻辑202和数据检索逻辑204。控制器102还可包括路由表数据库206。
在一些实施例中,网关创建逻辑200执行操作以:在VPC内创建网关,包括在VPC内创建虚拟机;将配置数据提供给虚拟机;以及基于配置数据提示网关的初始化。在其中所利用的云计算资源是AWS®的一个实施例中,VPC网关创建逻辑200在VPC内启动虚拟机,该虚拟机是AMAZON® EC2实例。使用由控制器102发布的预先配置的虚拟机映像(image)启动虚拟机。在该特定实施例中,虚拟机映像是亚马逊机器映像(AMI)。当启动时,虚拟机能够接收和解译来自控制器102的指令。
通信接口逻辑202可配置成经由API与拓扑系统逻辑138通信。控制器102可经由一个或多个API调用从拓扑系统逻辑138接收查询,并经由API用所请求的数据做出响应。
数据检索逻辑204可配置成访问由控制器102管理的每个构造,并从中获取构造元数据。备选地或另外地,在控制器102没有发起一个或多个查询(例如,API调用)的情况下,数据检索逻辑204可接收从构造传送(或“推送”)的此类构造元数据。
路由表数据库206可存储VPC路由表数据。例如,控制器102可配置与每个VPC相关联的VPC路由表,以在中转网关和与特定实例子网相关联的云实例之间建立通信链路(例如,逻辑连接)。对VPC路由表进行编程以支持不同的源和目的地(诸如本地部署计算装置、特定实例子网内的云实例等)之间的通信链路。因此,控制器102获取并存储在控制器102的权限内揭示资源(例如,诸如网关、子网、VPC、VPC内的实例等的构造)的某些属性的信息以及与这些资源之间的连接(通信链路)相关的状态信息。
参考图2B,根据一些实施例示出了部署在云计算平台内的拓扑系统逻辑138的逻辑表示的示例性图示。拓扑系统逻辑138可以是使用云计算资源136部署的软件实例,并且配置成与控制器102和由控制器102管理的每个网关通信。拓扑系统逻辑138配置有某些逻辑模块,包括标记逻辑208、标签数据库210、界面生成逻辑212、通信接口逻辑214、拓扑快照逻辑216。另外,拓扑系统逻辑138可包括快照数据库218、构造元数据数据库220和网络数据数据库222。
在一些实施例中,标记逻辑208在由一个或多个处理器执行时执行如下文关于图4A-5A和图7A-7B所讨论的操作。在一些实施例中,由标记逻辑208所生成的标签可存储在标签数据库210中。
在一些实施例中,界面生成逻辑212在由一个或多个处理器执行时执行如下所讨论的操作,这些操作致使生成如图4A-5G所图示的示例性交互式用户界面。在一些实施例中,标签由标记逻辑208生成。
在一些实施例中,通信接口逻辑214在由一个或多个处理器执行时执行本文中讨论的与以下项有关的操作:向控制器查询构造元数据、接收所请求的构造元数据以及从由控制器管理的一个或多个网关接收网络数据。在一些实施例中,所接收的构造元数据和网络数据可存储在构造元数据数据库220和网络数据数据库222(其可以是单独的数据库或组合的数据库)中。
在一些实施例中,拓扑快照逻辑216在由一个或多个处理器执行时执行下文关于图4G-4H和图8所讨论的操作。在一些实施例中,由拓扑快照逻辑216所生成的快照(记录的数据)可存储在快照数据库218中。
III. 示例性用户界面–拓扑系统可视化平台
在图3A-5G中所图示的示例性用户界面可由拓扑系统逻辑138配置成在各种显示屏上并且经由各种应用呈现和显示。例如,在图3A-5G中所图示的用户界面中的每个用户界面可配置成在计算机显示屏、膝上型计算机、移动装置或包括web浏览器的任何其它网络装置上通过web浏览器显示。另外,在图3A-5G中所图示的用户界面中的每个用户界面可配置成通过安装在上文所描述的网络装置中的任何网络装置上并配置成在所述任何网络装置上执行的专用软件应用来显示。例如,拓扑系统逻辑138可配置成将本文中所描述的数据和用户界面提供给软件应用(在本领域中称为“app”),该软件应用可安装在网络装置上并配置成由网络装置的一个或多个处理器执行。因此,在执行时,app致使本文所描述的用户界面呈现在网络装置的显示屏(或相关联的显示屏)上。
1. 仪表板
现在参考图3A-3C,根据一些实施例示出显示拓扑系统可视化平台(“可视化平台”)的仪表板的部分的图形用户界面(GUI)屏幕(或“界面屏幕”),其中每个部分配置成图示由拓扑系统所获取或确定的信息。图3A-3C的界面屏幕可共同包括“仪表板”300,“仪表板”300显示与跨一个或多个云提供商(并且特别是跨多个云提供商)部署的网络相关的各种属性。
例如,如图3A所示的仪表板300包括若干个显示部分302、306和308。还示出了导航面板304以作为由拓扑系统逻辑138所生成的可视化平台的部分。显示部分302显示与由控制器(例如,图1的控制器102)管理的构造相关的信息,其中所述构造部署在一个或多个云网络中。所显示的信息可包括但不限于或不局限于:部署的网关的数量,当前的虚拟私有网络(VPN)用户的数量,用户帐户的数量,瞬态网关(TGW)的数量,(可选地根据云计算服务进行过滤的)网络连接的数量,边界网关协议(BGP)连接的数量等。
图3A的显示部分306包括包含同样可选地横跨多个云网络的网络的资源的虚拟数据中心的列表。具体来说,显示部分306包括用户输入字段(例如,复选框),其配置成接收指示以下项的用户输入:由仪表板300的显示是否通过一个或多个特定云网络(例如,AWS®、GOOGLE® CLOUD PLATFORM®(GCP)、AZURE® ORACLE CLOUD INFRASTRUCTURE®(OCI))进行过滤。在一些实施例中,虚拟数据中心是可在公共云上托管的云计算资源池。
此外,显示部分308图示了世界地图,其包括对于在显示部分306中所列出的每个虚拟数据中心的图形表示(例如,诸如图标309)以及世界地图上用于表示其地理位置的位置。显示部分308可根据在显示部分306中所提供的“按云的过滤器(filter)”的选择进行过滤,并且可配置成接收用户输入以调整地图的放大倍率(magnification)(例如,“放大”或“缩小”)。
导航面板l304包括到由可视化平台所提供的一般可视化中的每个一般可视化的链接,该可视化平台包括仪表板300、(图4A-4E的)拓扑映射400和(图5A-5G的)网络流可视化500。
现在参考图3B,通过多个显示部分310和312示出了显示多个图形和图表的仪表板300的一部分的图示。显示部分310和312中的每个显示部分各自显示贯穿多个云部署中的资源分布。
例如,作为说明性实施例,显示部分310以多个条状图形为特征,其图示出了涉及由控制器管理的资源的度量;然而,如通过回顾本公开所附的附图应该理解的是,条状图形仅仅是可用于呈现数据的一种类型的图示,并且本公开并不是要如此限于所示的特定图形表示类型。显示部分310图示,在仪表板上所显示的数据通过具体显示“按云的帐户”、“按云的网关”和“按云的中转网关”而对应于横跨多个云网络的构造和网络业务。类似地,显示部分312提供涉及网关度量的图形表示,其包括“按类型的网关”、“按区域的网关”和“按大小的网关”。在一些实施例中,网关度量包括以下中的一个或多个:部署的网关的总数,虚拟私有网络(VPN)用户的数量,与一个或多个网关相关联的用户帐户的数量,中转网关的数量,由特定云计算资源提供商所部署的网关的数量,边界网关协议(BGP)连接的数量,或瞬态网关附件(attachment)的数量。
图3A-3B图示了网关的各种度量和特性,其中,所述度量可包括以下项中的一个或多个:部署的网关的总数,虚拟私有网络(VPN)用户的数量,用户帐户的数量,中转网关的数量,由特定云计算资源提供商所部署的网关的数量,边界网关协议(BGP)连接的数量,或瞬态网关附件的数量。
另外,一个或多个度量可从网关特性导出或基于网关特性,其可包括以下项中的一个或多个:在其中部署每个网关的云计算网络,每个网关的类型,每个网关的大小,或在其中部署每个网关的地理区域。
现在参考图3C,示出了基于由拓扑系统逻辑138采集和处理并作为仪表板300的部分显示的数据的网络功能性或操作或可操作性的另一图形表示的图示。更具体来说,根据该说明性实施例,显示部分314提供对于可调整的时间周期(例如,24小时)在横跨多个云网络的资源之间的网络业务的图形表示。时间周期可由拓扑系统逻辑138基于接收到用户输入而进行调整。例如,可对应于由用户对所显示的图形的一部分的选择来接收用户输入。响应于此类接收的用户输入,拓扑系统逻辑138可改变图形表示以针对现在可以用更小的时间间隔(例如,15分钟、30分钟、一小时等)表示的所选的部分。
在一些实施例中,仪表板300(以及在图4A-5G中所讨论的其它可视化)作为请求此类可视化的用户输入的结果而生成。在一些实施例中,响应于接收到请求,拓扑系统逻辑138将请求如上文所讨论的构造元数据,并将构造元数据和从网关接收的最新的网络数据存储在数据仓库(诸如构造元数据数据库220和/或网络数据数据库222,如上文所指出的,它们可以是单个数据库)中。另外,拓扑系统逻辑138接着基于所存储的数据生成所请求的可视化。
在一些实施例中,拓扑系统逻辑138将以周期性的时间间隔(例如,每30秒、每1分钟等)自动更新可视化(例如,生成更新的可视化并致使显示屏的重新呈现)。在一些实施例中,更新的可视化将在发生诸如接收到请求刷新显示屏的用户输入之类的触发事件时生成并显示。更新后的可视化将基于自从之前呈现以来新接收或新获取的构造元数据和/或网络数据进行更新。
2. 拓扑映射
现在参考图4A-4E,根据一些实施例示出了显示由拓扑系统逻辑138所生成的可视化平台的拓扑映射400的部分的界面屏幕。具体来说,图4A-4E图示了部署在由控制器102管理的一个或多个云网络中的多个构造以及各个构造之间的连接。
参考图4A,根据一些实施例示出了由拓扑系统逻辑138所生成的拓扑映射400的示例性图示。如所示出的,拓扑映射400包括由控制器(例如,图1的控制器102)管理的构造的图形表示。拓扑映射400使得用户能够可视化可在单个云上或跨多个云网络部署的所有已知的构造。在示例性图示中,看到的是,所显示的构造部署在包括AZURE®、GCP和AWS®的多个云网络上。
拓扑映射400是配置成接收各种形式的用户输入(例如,拖曳和重新定位构造、选择(一个或多个)构造以查看构造参数、输入文本、选择设置、或激活按钮等)的交互式显示屏。所接收的用户输入可配置成:重新定位构造;致使显示构造参数;应用过滤器;搜索构造;运行诊断;应用(一个或多个)标签等。
如图4A所图示,将构造402(例如,网关402)图示为被选择。在所示实施例中,网关402的选择导致在显示部分422中显示网关402的参数。例如,显示部分422可提供所选的构造的名称(即,“网关”(网关402))、配置成接收用户输入的用户输入按钮424和426、以及构造参数的列表428,所述构造参数包括构造是否加密、构造的云提供商、与构造相关联的网关名称、与构造相关联的VPC标识符、构造的云类型、构造的VPC区域、构造是否是中转VPC等。应该指出,构造参数可对应于如上所讨论的由控制器102接收的构造元数据,并且不限于附图中所图示的参数。相反,本公开包括所选构造的所有参数。如本领域中已知,中转VPC进行操作以连接多个VPC和/或远程网络。
拓扑映射400还图示了各个构造(例如,图示为节点或顶点)之间的多个连接。参考所选网关402,图示了若干个连接(通信链路),包括但不限于:到网关404的链路412、到中转网关406的链路414、将网关402间接链接到中转网关410的链路416等。另外,不同的图形标记可指示链路中的差异。例如,在一些实施例中,实线链路可指示两个辐条网关之间的链路或网关到中转网关链路。另外,在一些实施例中,虚线可指示两个中转网关之间的链路。此外,在一些实施例中,链路可进行颜色编码以提供关于链路的状态的视觉指示,例如,绿色表示活动,而红色表示非活动。
拓扑映射400还图示了网关以外的构造,包括子网(诸如子网418)和虚拟数据中心(诸如虚拟数据中心408、420)(例如,分别表示AWS®资源和AZURE®资源)。
参考图4B,根据一些实施例示出了由拓扑系统逻辑138所生成的拓扑映射400的示例性图示,其图示了诊断功能。如图4A所示,拓扑映射400可显示按钮426(例如,标为“诊断”),按钮426配置成接收激活按钮26的用户输入,其致使发起要由拓扑系统逻辑138执行的诊断过程。一旦激活了按钮426,拓扑系统逻辑138便致使呈现显示框430,显示框430包括若干个输入字段432-438,每个输入字段配置成接收规定诊断过程的方面的用户输入。如所示出的,拓扑系统逻辑138配置成在所选构造(网关402)上执行诊断过程;然而,在其它实施例中,显示框430可包括配置成接收将在其上执行(或从中发起)诊断过程的构造的附加用户输入字段。
另外,拓扑系统逻辑138可配置成提供指示位于在图4A中所图示的一个或多个链路上或与所述链路邻近的链路时延的值。拓扑系统逻辑138可配置成自动发送数据包(例如,ping),并通过分析发送数据包的时间以及接收数据包的时间(包含在来自数据包的目的地的响应包中)来确定包在传输中所花费的时间。每个链路的链路时延可以周期性的间隔(例如,每30秒、每60秒等)更新,或者响应于触发事件(例如,接收到指示刷新视觉的用户输入)更新。虽然在图4A中所图示的链路的子集包括链路时延的指示,但是可为所有链路提供此类指示。有利地,可由网络管理员使用链路时延的视觉来重新定位构造(例如,终止并重新启动不同子网中的虚拟机),以便改善链路时延。另外,链路时延的视觉可用于评估与某些服务质量(QoS)等级(例如,如在合同中所规定)的不符合性。此外,拓扑系统逻辑138可设置时延阈值并监测链路时延,以使得当链路时延满足或超过时延阈值(其可对应于上文所提到的某些QoS等级)时,生成通知或改变拓扑映射400。
参考图4B,输入字段432-434配置成分别接收目的地和接口的用户输入。按钮436-438配置成经由分别与ping或跟踪路线中的任一项的诊断过程的选择相对应的用户输入而激活。虽然没有示出,但是在其它实施例中,可提供与其它诊断过程的选择相对应的输入字段,包括例如TCP转储和/或链路时延检查。如图4B所示,响应于用户输入激活按钮436(ping),拓扑系统逻辑138发起这样一个过程,在其中,将ping从所选构造(网关402)传送到在字段432中所提供的目的地地址(例如,IP地址8.8.8.8)。实时图示出ping的结果440。因此,经由由拓扑系统逻辑138通过拓扑映射400所提供的诊断过程,可为用户提供在横跨多个云网络的构造上所执行的各个诊断过程的结果(例如,可在部署在第一云中的第一网关和部署在第二云中的第二网关之间执行ping过程),其中经由可视化平台所提供的结果的视觉由拓扑系统逻辑138生成。
参考图4C,根据一些实施例示出了由拓扑系统逻辑138所生成的拓扑映射400’的示例性图示,其图示了搜索和过滤器功能。由拓扑系统逻辑138所提供的另一功能性是基于所接收的用户输入(例如,搜索项)在拓扑映射400内搜索以及对所显示的构造的过滤(filter)。如所示出的,显示部分422可包括配置成接收与搜索项相对应的用户输入的输入字段442(例如,文本框)。响应于在输入字段442接收到用户输入,拓扑系统逻辑138执行在拓扑映射400中所显示的构造的搜索。搜索可以是对所存储的构造元数据的搜索,其中,搜索包括对图2B的构造元数据数据库220的一个或多个查询。然后,利用从所述一个或多个查询返回的数据来生成拓扑映射400’,拓扑映射400’是拓扑映射400的经过滤的视图,它是仅与搜索项相关联的构造的显示。例如,搜索项可对应于上文所讨论的构造参数中的任何构造参数。拓扑系统逻辑138不需要接收指定的参数,而是可以改为仅在数据库220内搜索所有构造参数以寻找与搜索项相对应的值。
应该理解,本公开的系统可根据多个搜索项或参数进行过滤。此外,将理解,如通篇所讨论的,拓扑系统逻辑138有利地为横跨多个云网络的构造存储构造元数据。因此,作为拓扑系统逻辑138接收到一个或多个搜索项的结果而提供的经过滤的视图可对应于横跨多个云网络的多个构造。
参考图4D,根据一些实施例示出了由拓扑系统逻辑138所生成的拓扑映射400的示例性图示,其图示了所标记的构造。如所示出的,显示部分422包括用户输入按钮424(例如,标为“加标签”),用户输入按钮424对应于由拓扑系统逻辑138所执行的标记功能。响应于接收到激活按钮424的用户输入,显示框444由拓扑系统逻辑138生成并配置成接收对应于要与一个或多个所选构造相关联的标签(例如,字母数字文本)的另外的用户输入。在图4D的说明性示例中,选择单个节点(即,构造)(网关402)。
一旦经由包含在显示框444内的用户输入激活“加”按钮,便将生成标签“ccdata”并使其与所选构造(即,网关402)相关联。标签的生成以及标签与所选的关联包括由拓扑系统逻辑138执行的若干个操作。例如,拓扑系统逻辑138生成并存储表,其中,该表可存储在图2B的标签数据库210中。该表包括所选构造中的每个所选构造的唯一标识符(网关402的唯一标识符)和标签“ccdata”的关联。因此,并且如在下文将更详细地讨论,构造的标记使得用户能够通过其相关联的一个或多个标签在拓扑映射400中搜索构造,这对用户是有利的,因为他们不再需要记住唯一标识符或通过唯一标识符搜索,唯一标识符通常是长字母数字字符串。另外,当用相同的标签标记多个构造时,用户可搜索该标签,并且拓扑系统逻辑138将转而生成显示与作为搜索项所提供的标签相关联的多个构造的显示器。在一些实施例中,如图4E所示,可对拓扑映射400进行过滤以仅显示与作为搜索项所提供的标签相关联的多个构造。然而,在其它实施例中,虽然没有示出,但是仍可显示全部构造,同时与作为搜索项所提供的标签相关联的多个构造以与那些不与标签相关联的构造在视觉上不同的方式(例如,突出、颜色编码等)显示。
参考图4E,根据一些实施例示出了由拓扑系统逻辑138所生成的拓扑映射400’’的示例性图示,其图示了在图4D中所图示的标记功能结合按标记功能的搜索。如上文所讨论,拓扑系统逻辑138执行操作以基于所接收的用户输入生成标签并将该标签与一个或多个所选构造(例如,关于图4D所讨论的网关402)相关联。在如图4E所示的图示中,假设,已经执行了如在图4D中所讨论的一组类似的操作,并且已经用相同的标签(例如,“ccdata”)标记了包括网关402的构造450。
拓扑映射400’’图示了拓扑映射400的视图,其中,通过如由作为用户输入提供给显示框422的文本448所图示的搜索项“ccdata”对所显示的构造进行了过滤。此外,一旦接收到作为用户输入的文本448,拓扑系统逻辑138便在显示框422中图示搜索项(例如,搜索项446)并进一步过滤拓扑映射400以显示拓扑映射400’’,拓扑映射400’’图示与搜索项446相关联的构造。
如上文所提到的,假设已经用“ccdata”对构造的分组450进行了标记;因此,一旦作为用户输入接收到搜索项446,拓扑系统逻辑138便查询标签数据库210以检索通过利用“ccdata”标记的每个构造的唯一标识符。随后,拓扑系统逻辑138生成拓扑映射400’’并致使显示拓扑映射400’’,拓扑映射400’’包括构造的分组450。
另外,图4E图示了要执行操作以在单个实例中标记构造的拓扑系统逻辑138的标记功能性的第二方面。如所示出的,构造的分组450看上去经由用户输入而被选择。拓扑系统逻辑138进一步配置成利用在显示框452中所提供的用户输入标记所选构造,其中的显示是激活“加标签”按钮424的结果,如上文所讨论。具体来说,将显示框452示为接收用户输入454(公司1)。因此,响应于在显示框452内激活“加”按钮,拓扑系统逻辑138将生成“公司1”的标签,并将分组450内的构造中的每个构造关联到“公司1”的标签。
应该指出的是,图4E的所图示的示例公开了拓扑系统逻辑138的标记功能性的又一个方面,其在于构造可与多个标签相关联。如所示出的,分组450的每个构造都与至少两个标签“ccdata”和“公司1”相关联。
应该理解,标签不仅仅替换构造标识符(诸如IP地址),而且由于多个资源可能具有相同的一个或多个标签,所以标记构造允许用户在贯穿整个网络(其可跨多个云网络横跨)部署构造的指定子集的情况下可视化。如图5A-5G中所图示并且将关于图5A-5G所讨论的,按一个或多个标签进行搜索使得用户能够可视化用于与一个或多个标签相关联的构造的特定网络数据。
参考图4F,根据一些实施例示出了由拓扑系统逻辑138所生成的拓扑映射400的示例性图示,其图示了活动用户跟踪功能。图4F的拓扑映射400的“拓扑”方面的视图包括输入按钮454和显示部分456。输入按钮454(例如,标为“获得活动用户”)可配置成接收与可视化(例如,与诸如网关452之类的所选网关相关联的)活动用户的用户请求相对应的用户输入。活动用户可以是登录到有权访问由云网络所提供的资源的虚拟私有网络(VPN)的用户。显示部分456可配置成接收与以下相对应的用户输入:所选活动用户(例如,活动用户458)的跟踪功能的选择和发起,以及在所选用户是源或目的地的情况下跟踪功能是否要跟踪所选活动用户的网络业务。
更具体来说,作为构造元数据的部分,拓扑系统逻辑138接收与活动用户利用由控制器102管理的资源相关的信息。一旦经由用户输入激活输入按钮454,拓扑系统逻辑138便可查询构造元数据数据库220以获得与所选网关相关的活动用户。一旦检索到所选网关的活动用户,拓扑系统逻辑138便通过显示与所选网关相关联的活动用户的其它标记的图形表示来致使改变拓扑映射400。然而,在一些实施例中,不需要选择网关,使得拓扑系统逻辑138为由控制器102管理的每个网关检索活动用户。
在图4F中所图示的示例性实施例中,假设,选择网关452,并且输入按钮454已经经由用户输入激活。将包括活动用户458的多个活动用户示为登录到与网关452相关联的VPN中。此外,图4F图示,显示部分456已经接收到对应于跟踪网络工作的选择的用户输入,以使得具有活动用户458的目的地地址的网络业务将由拓扑系统逻辑138跟踪。网络业务的跟踪可包括监测进入或退出所选网关的每个数据包的源IP地址或目的地IP地址。在一些实施例中,所跟踪的网络业务可使用邻近于和/或连接到活动用户458的图形表示的图形表示来显示。如所示出的,经由图形表示4601-4603图示了具有等于活动用户458的IP地址的目的地IP地址的所跟踪的网络业务,其中每个图形表示包括传入数据包的源IP地址。在备选实施例中,可在与拓扑映射邻近的单独的显示部分中和/或在由拓扑系统逻辑138所存储的日志中提供所跟踪的网络业务。
参考图4G-4H,根据一些实施例示出了由拓扑系统逻辑138所生成的拓扑映射400’’’和400’’’’的示例性图示,其图示了重放功能。拓扑系统逻辑138可配置有用于保存由控制器102管理的每个构造和连接在给定时间实例的状态的功能性,其或者是周期性地或者是在接收到用于指示此类保存操作的用户输入时。对于给定时间实例的每个构造和连接的状态的记录可统称为“快照”。如本文中所讨论的,每个构造的状态可包括与该构造相关联的每个参数的记录。此外,拓扑系统逻辑138可配置成确定对于第一快照和随后的第二快照之间的对应构造和对应连接的状态的差异(如果适用的话)。然后,拓扑系统逻辑138可生成图示状态的差异的界面屏幕。
图4G的图示图示了拓扑映射400在时间实例t1的快照(拓扑映射400’’’),并且图4H的图示图示了界面(拓扑映射400’’’’),其显示拓扑映射400在时间实例t1和t2的快照之间的差异。例如,拓扑映射400’’’’在构造466-470上提供视觉区别,以指示在这两个时间实例之间发生了变化。另外,可包括显示框464,显示框464通过构造提供差异的列表。
3. 网络流可视化
现在参考图5A-5G,根据一些实施例示出了界面屏幕,所述界面屏幕显示图示由拓扑系统逻辑138所生成的网络业务流的部分。具体来说,图5A-5G图示了表示部署在由控制器102管理的一个或多个云网络中的多个构造之中的网络业务流(“网络流可视化500”)以及各个构造之间的连接的可视化。
作为简要回顾,上文所讨论的仪表板300配置成提供诸如以下项之类的云计算环境参数的可视化:活动网关的数量、VPN用户的数量、与由控制器管理的云计算环境相关联的虚拟数据中心的详细信息、虚拟数据中心的位置等。另外,拓扑映射400配置成提供如何连接由控制器管理的每个构造的可视化;因此,提供由控制器管理的整个云计算环境的交互的视觉。最后,网络流可视化500配置成提供在由控制器管理的构造之中流动的网络业务的可视化。因此,由拓扑系统逻辑138所生成的包括仪表板300、拓扑映射400和网络流可视化500的可视化平台提供由控制器管理的整个云计算环境的整体视图,如在本公开通篇中所讨论,整个云计算环境可横跨多个云网络。
i. 概览
现在参考图5A,根据一些实施例示出了由拓扑系统逻辑138所生成的网络流可视化500的示例性图示。如所示出的,网络流可视化500包括多个显示部分502-508,其中显示部分508包括多个图表5101-510i(其中,i≥1)。一般来说,网络流可视化500涉及提供网络业务如何流动通过(或已经流动通过)由控制器(例如,图1的控制器102)管理的云计算环境的各个可过滤视图。
显示部分502表示用于网络流可视化500的标题,其配置成接收与重定向到诸如以下项之类的网络流可视化500的特定方面的选择相对应的用户输入:概览、趋势、地理位置、流和记录,其中,每个都将在下文进一步讨论。特别地,显示部分502指示,“概览”是当前正在显示的网络流可视化500的方面。
显示部分504提供涉及对于其将贯穿网络流可视化500显示网络业务流的时间周期的若干过滤选项。例如,该显示部分包括包含日期选择器的输入字段,日期选择器配置成接收与开始时间和结束时间相对应的用户输入。另外,可提供经由单击实现快速选择的按钮,其在激活时致使拓扑系统逻辑138按诸如但不限于或不局限于以下的项之类的预定时间周期过滤所显示的网络业务流:“上一小时”、“上一天”、“上周”、“上月”等。
显示部分506配置成提供附加的过滤器选项,包括按诸如但不限于或不局限于源地址、目的地地址、流导出(主机)、源端口、目的地部分等的特定类别的过滤器以及对应的搜索项(“过滤器项”)。此外,显示部分506在适用时显示活动过滤器。在所示实施例中,先前在图4E中所讨论的过滤器446(“ccdata”)当前正在应用中,它对应于在显示部分508的图表5101-510i中所图示的数据的过滤。
重要地,如图5A所图示,经由拓扑映射400所生成的标签可用作搜索项并作为过滤器应用于网络流可视化500中。因此,用户可经由拓扑映射400提供用户输入,以致使拓扑系统逻辑138生成标签并将该标签与可部署在多个云网络中的一个或多个所选构造相关联。此外,在生成和关联标签(例如,“ccdata”)之后,拓扑系统逻辑138可经由网络流可视化500接收另外的用户输入,以致使拓扑系统逻辑138过滤所显示的网络业务流并且仅显示用“ccdata”标记的构造之中(例如,在其之间、到其以及从其)的网络业务流。
另外,如图5B-5C所示,显示部分506的图表5101-510i的图示可根据经由显示部分504所接收的输入、显示部分506的类别选择和搜索项输入字段、和/或在图表5101-510i中的一个或多个图表中所显示的数据的选择进行过滤。
现在参考图5B,根据一些实施例示出了由拓扑系统逻辑138所生成的网络流可视化500的可视化的示例性图示。如所示出的,网络流可视化500根据过滤器514进行过滤,过滤器514对应于图5A的图表5102的一部分(例如,目的地IP地址10.101.0.52)的选择。响应于接收到与目的地IP地址10.101.0.52的选择相对应的用户输入,拓扑系统逻辑138过滤在图表5101-510i中的每个图表中所显示的数据,以显示与选择有关的网络业务信息。如所示出的,与图5A的图表5102相比,以改变的视觉显示图表5102’。应该理解,可同时应用多个过滤器。
ii. 趋势
参考图5C,根据一些实施例示出了由拓扑系统逻辑138所生成的网络流可视化500的可视化的示例性图示,其涉及图示网络业务流的“趋势”。图5C图示网络流可视化500的“趋势”方面,它包括关于图5A-5B所讨论的显示部分504-506。另外,“趋势”方面可包括显示部分516-518,显示部分516-518包括根据目的地端口名称的以字节为单位的网络业务随时间的图形以及图示多个目的地端口名称的以字节为单位的网络业务的图表5181。虽然没有示出,但是也可为数据类别(例如,在图5B中所图示的那些数据类别,诸如源IP、目的地IP、目的地端口和IP、源端口和IP、源端口等)显示与显示部分516的那些图形和图表类似的附加图形和图表。
如所示出的,根据过滤器514对网络流可视化500进行过滤,过滤器514经由网络流可视化500的“概览”方面生成和应用,并且如上文所讨论。因此,拓扑系统逻辑138配置成应用贯穿网络流可视化500持久的过滤器,这意味着,在一个方面(例如,“概览”)中应用的过滤器将跨其它方面(例如,“趋势”)维持,并过滤其中所图示的数据。
现在参考图5D,根据一些实施例示出了由拓扑系统逻辑138所生成的网络流可视化500的可视化的示例性图示,其涉及图示如图5C所示的图形的经过滤的视图。如图5C所图示,经由指示器5D-5D选择显示部分516的图形的一部分。图5D图示拓扑系统逻辑138配置成接收与该图形的一部分的选择(如5D-5D)相对应的用户输入,并改变图形的放大倍率(例如,放大)以突出所选部分。由于图5C的图表5181对应于显示部分516的图形,所以在图5D中将图表5181示为是根据按选择5D-5D进行过滤的目的地端口名称显示网络业务数据的经过滤的版本5181’。
iii. 地理位置
参考图5E,根据一些实施例示出了由拓扑系统逻辑138所生成的网络流可视化500的可视化的示例性图示,其涉及图示网络业务流的“地理位置”。图5E图示了网络流可视化500的“地理位置”方面,它至少包括关于图5A-5B所讨论的显示部分506(在一些实施例中,也可包括显示部分504)。另外,“地理位置”方面可包括显示部分520-522。显示部分520图示了“热图”,它包括地理区域的地图(例如世界地图),地图包括关于地图上的各个位置的网络业务的密度的视觉指示器。如在图5E的说明性实施例中所示,热图520包括表示用于图示在由控制器102管理的构造之中流动的网络业务的不同密度的热图的视觉指示器,其中,在构造之中流动的网络业务的密度可包括热图信息。此外,图表5241-5243提供了在热图520中所示的网络业务数据的附加图形表示(例如,每个国家和/或城市的以字节为单位的网络业务、每个目的地端口和源端口的以字节为单位的网络业务、每个目的地IP和源IP的以字节为单位的网络业务)。应当理解,虽然图示了三(3)个图表,但是可图示诸如一(1)个、两(2)个或多于三(3)个之类的备选数字。另外,热图信息可包括将各个过滤器应用于网络业务的结果,如至少在图5E中所图示。
具体来说,拓扑系统逻辑138基于分别从控制器102和由控制器102管理的网关所接收的构造元数据和网络数据确定在构造之中流动的网络业务的密度。在一些实施例中,在图5E中所示的图示可在周期性或非周期性的基础上(例如,响应于诸如接收到的发起刷新的用户输入的触发事件)更新。
以与上文关于图3A-5D的用户界面所讨论的方式类似的方式,热图520和显示部分522的图表可以用各种方式进行过滤,诸如通过经由显示部分506接收用户输入、选择显示部分522的任何图表的一部分、或通过经由网络流可视化500的不同“方面”应用的持久过滤器。
iv. 
参考图5F,根据一些实施例示出了由拓扑系统逻辑138所生成的网络流可视化500的可视化的示例性图示,其涉及图示网络业务的“流”方面。图5F图示了网络流可视化500的“地理位置”方面,它至少包括关于图5A-5B所讨论的显示部分506(在一些实施例中,也可包括显示部分504)。另外,“流”方面可包括显示部分526、530和532。显示部分526图示了多个图表5281-5282,这些图表可类似于显示部分522的图表,但是显示诸如每个源地址的以字节为单位的网络业务和每个目的地地址的以字节为单位的网络业务之类的内容。应该理解,虽然图示了两(2)个图表,但是可图示诸如一(1)个或多于两(2)个之类的备选数字。
显示部分530可以是由控制器102管理的源IP和目的地IP的数量的视觉。另外,显示部分532图示了从源IP流到目的地IP的网络业务的图形表示。在一些实施例(诸如图5F的实施例)中,图形表示可显示从源IP地址到目的地IP地址的一系列流线,其中,每个流线以视觉上不同的方式(例如,对于每个流线不同颜色)图示。图形表示可配置成接收选择源或目的地IP地址的用户输入,并且响应于接收到此类用户输入,拓扑系统逻辑138配置成改变图形表示以强调(或异常地显示)与所选IP地址相关联的(一个或多个)流。另外,在显示部分524和520中的每个中所显示的内容可根据所选IP地址进行过滤和调整,以提供对应于所选IP地址的网络数据。
v. 记录
参考图5G,根据一些实施例示出了由拓扑系统逻辑138所生成的网络流可视化500的可视化的示例性图示,其涉及图示网络业务的“记录”方面。图5F图示了网络流可视化500的“记录”方面,它至少包括关于图5A-5B所讨论的显示部分504-506。
另外,网络流可视化500的“记录”方面包括显示部分534,它图示了关于在图5F中所图示的网络业务流的详细信息的图形表示,例如表格格式。例如,该表可包括提供与以下项相关的数据的列:时间戳、主机、目的地IP地址、源IP地址、在由时间戳所指示的时间在流中的字节数、网络业务流的方向(入口或出口)、在由时间戳所指示的时间所传送的数据包数等。
IV. 逻辑流
现在参考图6,根据一些实施例示出了在拓扑系统逻辑、控制器和由控制器管理的一个或多个网关之间的示例性通信方法的流程图。在图6中所图示的每个方框表示在与控制器交换通信并从由控制器管理的一个或多个网关接收数据的方法600中所执行的操作。在启动方法600之前,可假设,已经部署了诸如在图1中所图示的之类的分布式云管理系统。当拓扑系统逻辑(诸如图1的拓扑系统逻辑138)向控制器(诸如图1的控制器102)查询构造元数据(方框602)时,启动方法600。如上文所讨论,查询可经由一个或多个API调用。随后,拓扑系统逻辑138接收所请求的构造元数据,并将所接收的数据存储在数据库(诸如图2B的构造元数据数据库220)中(方框604)。
此外,拓扑系统逻辑从由控制器管理的一个或多个网关接收网络数据(方框606)。拓扑系统逻辑继续将所接收的网络数据存储在数据库(诸如图2B的网络数据数据库222)中。
在接收构造元数据和网络数据之后,拓扑系统逻辑基于所接收的数据生成一个或多个可视化(方框608)。在图3A-5G中图示了可生成的示例性可视化;然而,可由拓扑系统逻辑生成的可视化不限于所图示的那些。
参考图7A-7B,根据一些实施例示出了由拓扑系统逻辑执行并且在图4A-5A中所图示的标记和搜索方法的流程图。在图7A-7B中所图示的每个方框表示在由拓扑系统逻辑所执行的标记和搜索操作的方法700中所执行的操作。在启动方法700之前,可假设,已经部署了诸如在图1中所图示的之类的分布式云管理系统。当拓扑系统逻辑(诸如图1的拓扑系统逻辑138)生成拓扑映射可视化并致使经由界面用户界面呈现时,启动方法700(方框702)。在生成拓扑映射可视化之后,拓扑系统逻辑经由与一个或多个构造的选择相对应的拓扑映射可视化接收用户输入,并进一步指示标签名称(方框704)。响应于所接收的用户输入,拓扑系统逻辑生成表,该表将所选择的一个或多个构造的唯一标识符与标签名称相关联(方框706)。
在生成该表之后,方法700可继续进行至方框708和/或方框714。参考方框708,拓扑系统逻辑经由拓扑映射可视化接收指示标签名称为搜索项的另外的用户输入。响应于接收到搜索项,拓扑系统逻辑查询存储之前所生成的表的标签数据库,以检索与搜索项相关联的一个或多个标记的构造中的每个构造的唯一标识符(方框710)。在检索唯一标识符之后,拓扑系统逻辑执行致使改变拓扑映射可视化的操作,所述拓扑映射可视化在视觉上区分与搜索项相关联的一个或多个标记的构造和与搜索项不相关联的构造(方框712)。例如,改变可包括提供仅显示与搜索项相关联的标记的构造的图形表示以及包括其间的链路的对应网络数据的可视化。然而,已经考虑了其它改变,诸如相对于其它构造和网络数据增加与搜索项相关联的标记的构造(和对应的网络数据)的大小(或减小非标记的构造的大小)。
现在参考图7B和方框714,在生成该表之后,拓扑系统逻辑生成由控制器管理的一个或多个构造之中(之间、到其和/或从其)的网络业务流的可视化。应该指出的是,在一些实施例中,方框714的操作可在生成该表之前执行。拓扑系统逻辑经由网络业务流的可视化接收指示标签名称为过滤器项的另外的用户输入(方框716)。
响应于接收到过滤器项,拓扑系统逻辑查询标签数据库以检索与过滤器项相关联的一个或多个构造中的每个构造的唯一标识符(方框718)。在检索唯一标识符之后,拓扑系统逻辑执行致使改变网络业务流的可视化以显示仅与过滤器项相关联的一个或多个构造之中的网络业务流的图示的操作(方框720)。例如,示例性可视化在图5A中示出。
现在参考图8,根据一些实施例示出了由拓扑构造系统逻辑执行并在图4G-4H中所图示的重放功能的示例性方法的流程图。在图8中所图示的每个方框表示在由包括重放功能性的拓扑系统逻辑所执行的操作的方法800中所执行的操作。在启动方法800之前,可假设,已经部署了诸如在图1中所图示的之类的分布式云管理系统。当拓扑系统逻辑(诸如图1的拓扑系统逻辑138)在第一时间实例为由控制器管理的所有构造记录构造元数据和可选的网络数据的至少一部分(方框802)时,启动方法800。此外,拓扑系统逻辑在随后的第二时间实例为由控制器管理的所有构造记录构造元数据和可选的网络数据的至少一部分(方框804)。
在第一时间实例和第二时间实例记录数据(例如,存储在诸如图2B的快照数据库218之类的数据库中)之后,并且响应于指示在由控制器管理的构造的状态(及其间的链路)之间启动比较的用户输入,拓扑系统逻辑对在第一时间实例的记录的数据与在第二时间实例的记录的数据之间执行比较(方框806)。
进一步响应于用户输入,copilot逻辑生成图示在第一时间实例和第二时间实例的记录的数据之间的一个或多个差异(如果有的话)的拓扑映射可视化,并致使经由界面用户界面进行呈现(方框808)。示例性可视化在图4G-4G中所示;然而,可生成的可视化不限于所示的那些。
V. 网络操作可视化与度量
现在参考图9,根据一些实施例示出了部署在云计算平台内的逻辑的逻辑表示的示例性图示。如上文所讨论,copilot逻辑138可以是使用云计算资源9001-900n(其中,n≥1)部署的软件实例,其中多个云计算资源9001-900n指示多个云环境的可能性。云计算资源9001-900n还可对应于图1中的云计算资源136。将云计算资源900示为至少包括服务器计算装置902和存储设备904(即,非暂时性计算机可读介质)。
copilot逻辑138配置成与诸如控制器102和由控制器102管理的网关中的每个网关之类的网络装置通信。copilot逻辑138可配置有某些逻辑模块,包括标记逻辑208、标签数据库210、界面生成逻辑212、通信接口逻辑214和拓扑快照逻辑216,如上文所讨论。另外,在一些实施例中,copilot逻辑138可进一步包括路径确定逻辑906和网络度量确定逻辑908。另外,copilot逻辑138可包括之前所讨论的快照数据库218、构造元数据数据库220和网络数据数据库221。
在一些实施例中,路径确定逻辑906在由一个或多个处理器执行时执行包括以下的操作:接收与源构造和目的地构造的选择相对应的用户输入;以及分析所接收的与源和目的地构造相关联的构造元数据和网络数据,以确定源和目的地构造之间的数据传输路径。
在一个特定实施例中,copilot逻辑138获取构造元数据和网络数据,并基于此确定在其中部署控制器的云计算环境内的每个构造以及构造之间的连接。如所指出的,copilot逻辑138可通过调用便于与控制器102通信的API来获取该数据的至少一部分。接着,copilot逻辑138基于构造和连接数据构建拓扑图。然后,路径确定逻辑906可在拓扑图上应用算法以确定两个构造之间的最短路径。在一个实施例中,路径确定逻辑906在拓扑图上应用Dijkstra算法,其中输入包括源构造和目的地构造。路径确定逻辑906可进一步通过查询包含在所得最短路径中的网关以确定该网关是否包括在所得最短路径中所牵连的连接来验证Dijkstra算法的结果。当在所得最短路径中所牵连的所有连接都是实际连接时,路径确定逻辑906确认所得最短路径有效。然而,当不存在所牵连的连接时,所得最短路径视为无效。
在一些实施例中,网络度量确定逻辑908在由一个或多个处理器执行时执行包括以下的操作:计算包含在数据传输路径中的网关之间的时延周期、对于数据传输路径的总时延周期;计算由包含在数据传输路径中的网关中的每个网关的CPU使用和存储器使用;以及计算在包含在数据传输路径中的每个网关的吞吐量。
参考图10,根据一些实施例示出了示例性方法的流程图,该示例性方法包括用于确定云网络内的数据传输路径并生成数据传输路径的可视化的操作。在图10中所图示的每个方框表示在云网络内确定源构造和目的地构造之间的数据传输路径并生成其可视化的方法1000中所执行的操作。在启动方法1000之前,可假设,已经部署了诸如在图1中所图示并且包括图9的逻辑的分布式云管理系统。进一步假设,copilot逻辑138的实例与控制器102和由控制器管理的网关中的每个网关处于活动通信中,以使得copilot逻辑138定期(例如,周期性地或非周期性地)接收构造元数据和网络数据。
当界面生成逻辑212结合拓扑快照逻辑216基于所接收的构造元数据和网络数据生成一个或多个可视化(诸如拓扑映射可视化)时,方法1000开始(方框1002)。关于该操作的示例性可视化在图3A-5G和图12A中所图示;然而,可由copilot逻辑生成的可视化不限于所图示的那些。
copilot逻辑138的路径确定逻辑906可接收与源构造和目的地构造的选择相对应的用户输入(方框1004)。在一些实施例中,用户输入可通过拓扑映射可视化来接收。作为一个示例,图12A的图示可表示拓扑映射可视化,其中,伴随的标题可包括用于接收与源构造和目的地构造相对应的输入的输入字段。应该理解,这些输入字段可位于图形用户界面内的其它位置。
在接收与源构造和目的地构造的选择相对应的用户输入之后,路径确定逻辑906分析分别从控制器和一个或多个构造所接收的构造元数据和网络数据(方框1006)。分析可导致确定源构造和目的地构造之间的数据传输路径。
例如,在一个实施例中,由路径确定逻辑906所执行的分析可包括利用Dijkstra算法(或Dijkstra的最短路径优先算法、SPF算法)来基于构造元数据和网络数据确定源构造和目的地构造之间的最短路径。在此类实施例中,路径确定逻辑906可确定数据传输是每个Dijkstra算法的最短路径,如上文所讨论。
虽然Dijkstra算法在本领域中众所周知,但是重要的是注意,当前的系统无法根据Dijkstra算法或其它方式获取数据以便确定数据传输路径,特别是当涉及多个跳(hop)时。具体来说,部署在分布式云管理系统100中的copilot逻辑138相较于常规解决方案提供了众多技术优势。例如,参考图1,copilot逻辑138从控制器102接收构造元数据,并从每个构造接收网络数据,这使得copilot逻辑138能够确定由控制器建立的网络环境的拓扑以及由此管理的构造,其中,网络环境可以是多个云网络环境。
相较于常规解决方案的一个具体优点在于,copilot逻辑138获取构造元数据和网络数据,这使得copilot逻辑138能够确定网络环境的完整拓扑。相比之下,如上文所讨论,常规解决方案无法获取此类数据,并且没有配置成使得软件实例能够与(1)提供构造元数据的控制器(可能跨多个云网络)以及(2)由控制器管理的每个构造通信,以直接获取与构造相对应的网络数据。
相较于常规解决方案的第二个具体优点在于,copilot逻辑138配置成获取与横跨多个云网络的构造和边(edge)相应的构造元数据和网络数据。云提供商达不到仅通过为客户端(例如,客户)在其云网络上生成显示构造的元数据或统计数据的仪表板来提供本文中所公开的技术优势。例如,利用多个云提供商的客户端无法从单个云提供商的仪表板获取其构造的整个拓扑的可视化。此外,客户端肯定无法从常规解决方案中获取对跨多个云的网络数据的了解。用另外的方式陈述,由呈现其云的元数据或统计数据的云提供商所提供的仪表板不为客户端提供对以下项的了解:部署在多个云中的构造之间的连接或呈现构造之间的数据传输路径的网络度量、每个构造之间的时延、CPU使用、存储器使用或吞吐率。
在确定数据传输路径之后,界面生成逻辑212结合路径确定逻辑906生成可视化,以图示源构造和目的地构造之间的数据传输路径(方框1008)。在一些实施例中,可直接在拓扑映射可视化上图示数据传输路径。例如,参考图12B,拓扑映射可视化的一个示例性实施例包括在其上图示的数据传输路径。应该理解,可以用各种方式图示数据传输路径,并且本公开不旨在局限于将数据传输路径图示为数据传输路径内的构造之间的双箭头线。在其中直接在拓扑映射可视化上图示数据传输路径的实施例中,可以用任何强调或突出的方式图示数据传输路径,以使得数据传输路径在视觉上不同于拓扑映射可视化的其它边。
另外,方法1000可包括通过网络度量确定逻辑908接收与包含在数据传输路径内的边或构造的选择相对应的另外的用户输入的可选操作(方框1010)。在接收数据传输路径内的边或构造的选择之后,界面生成逻辑212结合网络度量确定逻辑908可更新可视化,以显示与所选边或构造相关联的网络度量(方框1012)。
参考图11,根据一些实施例示出了示例性方法的流程图,该示例性方法包括用于确定云网络内的数据传输路径和伴随的网络度量并生成数据传输路径和网络度量的可视化的操作。在图11中所图示的每个方框表示在确定源构造和目的地构造之间的云网络内的数据传输路径并生成其可视化和其报告的方法1100中所执行的操作。指出的是,关于图10所讨论的假设同样适用于方法1100。
当界面生成逻辑212结合拓扑快照逻辑216基于所接收的构造元数据和网络数据生成一个或多个可视化(诸如拓扑映射可视化)时,方法1100开始(方框1102)。此外,路径确定逻辑906可接收与源构造和目的地构造的选择相对应的用户输入,并确定源构造和目的地构造之间的数据传输路径(方框1104)。
在确定数据传输路径(并且,可选地如上文关于图10所讨论地那样图示)之后,网络度量确定逻辑908可接收与对与数据传输路径相关联的网络度量的报告的请求相对应的另外的用户输入(方框1106)。例如,参考图12A,标题部分1202包括若干输入字段,作为一个示例,这些输入字段可包括用于接收源构造和目的地构造的指示的文本字段以及与以下项相对应的按钮:源构造和目的地构造之间的数据传输路径(如图12B中所示)的图示的启动和/或与同数据传输路径相关联的网络度量相关的报告(如图12C-12D所示)的生成的启动。此外,标为“报告”的输入按钮可配置成接收用户输入(例如,激活),并对应于生成此类报告的启动。
响应于接收到对与数据传输路径相关联的网络度量的报告的请求,网络度量确定逻辑908确定对应的度量(方框1108)。例如,网络度量确定逻辑908可执行操作,这些操作包括:计算包含在数据传输路径中的网关之间的时延周期;计算对于数据传输路径的总时延周期;计算包含在数据传输路径中网关中的每个网关的CPU使用和存储器使用;以及计算包含在数据传输路径中的每个网关的吞吐量。
然后,界面生成逻辑212生成可视化,以图示与包含在数据传输路径中的一个或多个边或构造相关联的网络度量(方框1110)。例如,参考图12C-12D,将报告的一个示例性实施例图示为包括隔离的数据传输路径(与图12B的重叠相反)和图示网络度量数据的一个或多个表和/或图表,所述网络度量数据包括但不限于或不局限于构造之间的时延、总时延、CPU使用、存储器使用和吞吐量(“Rx/Tx率”)。
现在参考图12A-12C,根据一些实施例示出了显示可视化平台的附加方面的部分的示例性界面屏幕,其涉及图示描述通过云计算环境中的一个或多个构造的网络业务流的信息。具体来说,图12A图示了与上文至少关于图3A所讨论的仪表板300相似的仪表板1200的示例性图示,其中,仪表板1200包括标题部分1202和导航窗格1203(类似于导航窗格304)。仪表板1200还可显示根据一些实施例由copilot逻辑138所生成的拓扑映射1204。
如所示出的,与图4A的拓扑映射400类似的拓扑映射1204包括由控制器(例如,图1的控制器102)管理的构造的图形表示。拓扑映射1204使得用户能够可视化所有已知的构造,所述构造可部署在单个云上或可跨多个云网络部署。应该理解,拓扑映射1204表示样本映射,并且由copilot逻辑138所生成的此类映射可包括数十、数百、数千等的构造和边。拓扑映射1204是交互式显示屏,其配置成接收各种形式的用户输入(例如,拖曳和重新定位构造、选择(一个或多个)构造以查看构造参数、输入文本、选择设置或激活按钮等)。所接收到的用户输入可配置成重新定位构造、致使显示构造参数、应用过滤器、搜索构造、运行诊断、应用(一个或多个)标签等。
如图12A所图示,标题部分1202包括若干输入字段,作为一个示例,这些输入字段可包括用于接收源构造和目的地构造的指示的文本字段,其中,可在其间确定数据传输路径。如所示出的,样本输入指示,在图示中,“App-1”是源节点,而“DB-2”是目的地节点,其中,节点是指构造。
标题1202进一步包括与以下项相对应的按钮:源构造和目的地构造之间的数据传输路径(如图12B中所示)(“显示路径”)的图示的启动和/或与同数据传输路径相关联的网络度量有关的报告(如图12C-12D中所示))(“报告”)的生成的启动。如上文所讨论,标为“报告”的输入按钮可配置成接收用户输入(例如,激活),并对应于生成此类报告的启动。应该理解,对特定类型的用户输入字段(例如,文本框、按钮等)的讨论并不旨在限制。相反,对特定类型的用户输入字段的图示和引用只是为了清楚起见。
参考图12B,根据一些实施例示出了由copilot逻辑138生成并且包括源构造1210和目的地构造1212之间的数据传输路径1208的拓扑映射1204的一部分1206的示例性图示。在图12A的讨论之后,可响应于接收到激活标题部分1202的“显示路径”按钮的用户输入而生成数据传输路径1208,如上文所讨论。
导致图示数据传输路径1208的操作可包括如上文所讨论的由路径确定逻辑906以及可选地由网络度量确定逻辑908所执行的那些操作。例如,路径确定逻辑906可接收与源构造和目的地构造的选择相对应的用户输入,并分析所接收的与源构造和目的地构造相关联的构造元数据和网络数据,以确定源构造1210和目的地构造1212之间的数据传输路径。
应该理解,可以用各种方式图示数据传输路径1208,并且本公开不旨在限于将数据传输路径1208图示为数据传输路径1208内的构造之间的双箭头线。在其中如同图12B中那样直接在拓扑映射可视化上图示数据传输路径1208的实施例中,可以用任何强调或突出的方式图示数据传输路径1208,以使得数据传输路径1208在视觉上不同于拓扑映射1206的其它边。
在一些实施例中,拓扑映射1206可接收与数据传输路径1208的边的选择相对应的用户输入。响应于此,copilot逻辑138可配置成显示与所选边相关联的时延1214,如所示出的。
参考图12C-12D,在屏幕1216和1226中图示了与数据传输路径相对应的报告的示例性图示,其中,屏幕1226可以是由copilot逻辑138所生成的屏幕1216的扩展。例如,响应于激活关于源构造“App-1”和目的地构造“DB-2”的标题部分1202的“报告”按钮的用户输入,copilot逻辑138可生成包括源构造1210和目的地构造1212之间的隔离的数据传输路径(与图12B的叠加图示相反)的报告。此外,报告可包括具有列1220、1222和1224的表1218,这些列阐述了数据传输路径内的边的源网关和目的地网关以及对于该边的对应的时延时间。因此,IT管理员或其他查看者可快速评估关于给定边的时延时间是否存在任何问题。快速评估可实现快速的解决或者至少识别数据传输路径中的问题(例如,服务质量(QoS)问题)。
如上文所指出的,当部署在分布式云管理系统100内时,copilot逻辑138相较于常规解决方案提供了众多技术优势。图12B-12D中图示了一个这样的技术优势,它包括数据传输路径以及在单个位置中对应于数据传输路径的度量的图示。例如,查看者可获得对相对于特定网络的剩余部分的数据传输路径的了解(图12B)或看到隔离数据传输路径的可视化(图12C)。
参考图12D的屏幕1226,除了包括数据传输路径的边的时延周期之外,还示出了与数据传输路径相关联的另外的度量。可包含在图12C-12D的报告中的一些示例性度量包括数据传输路径内的每个网关的CPU使用、存储器使用和吞吐量(“Rx/Tx率”)。在一个实施例中,度量可以在表格格式中对齐,所述表格格式具有对应于数据传输路径内的网关的行1228、1230和1232以及分别提到CPU使用、存储器使用和Rx/Tx率的列1234、1236和1238。
在前述描述中,参考其特定的示例性实施例描述了本发明。然而,将清楚的是,在不偏离如所附权利要求书中所阐述的本发明的更广泛的精神和范围的情况下,可以对其进行各种修改和改变。

Claims (38)

1. 一种分布式云计算系统,包括:
控制器,所述控制器配置成在第一云计算网络中部署第一网关并在第二云计算网络中部署第二网关,并且其中,多个构造的第一子集与所述第一网关相关联并部署在所述第一云计算网络中,并且所述多个构造的第二子集与所述第二网关相关联并部署在所述第二云计算网络中;以及
逻辑,所述逻辑存储在非暂时性计算机介质上,所述逻辑在由一个或多个处理器执行时致使执行包括以下的操作:
从所述控制器接收与所述第一网关和所述第二网关中的每个网关相关的元数据;
从所述第一网关和所述第二网关中的每个网关接收网络数据,其中,所述元数据和所述网络数据的组合识别所述多个构造中的每个构造、每个构造之间的通信路径以及将每个构造部署在哪个云计算网络中;
生成图示所述多个构造以及所述多个构造之间的通信路径的可视化;以及
致使在网络装置的显示屏上呈现所述可视化。
2.如权利要求1所述的分布式云计算系统,其中,所述可视化包括动态拓扑映射。
3.如权利要求2所述的分布式云计算系统,其中,所述动态拓扑映射包括:图示为节点或顶点的每个构造,以及构造之间图示为链路的每个通信路径。
4. 如权利要求2所述的分布式云计算系统,其中,所述逻辑在由所述一个或多个处理器执行时致使执行包括以下的进一步操作:
接收与构造的选择相对应的用户输入,以及
对图示所选择的构造的参数的显示面板生成更新的可视化。
5. 如权利要求2所述的分布式云计算系统,其中,所述逻辑在由所述一个或多个处理器执行时致使执行包括以下的进一步操作:
基于作为用户输入接收的过滤器经由所述一个或多个构造的元数据的搜索确定所述多个构造的子集;以及
通过根据所述多个构造的所确定的子集过滤所述动态拓扑映射而生成经过滤的可视化。
6.一种告知用户网络拓扑的计算机化方法,所述计算机化方法包括:
从控制器接收与第一网关和第二网关中的每个网关有关的元数据,
其中,所述控制器在第一云计算网络中部署和管理所述第一网关并在第二云计算网络中部署和管理所述第二网关,并且
其中,多个构造的第一子集与所述第一网关相关联并部署在所述第一云计算网络中,并且所述多个构造的第二子集与所述第二网关相关联并部署在所述第二云计算网络中;
从所述第一网关和所述第二网关中的每个网关接收网络数据,其中,所述元数据和所述网络数据的组合识别所述多个构造中的每个构造、每个构造之间的所述通信路径以及将每个构造部署在哪个云计算网络中;
生成图示所述多个构造和正图示的所述多个构造之间的通信路径的可视化;以及
致使在网络装置的显示屏上呈现所述可视化。
7.如权利要求6所述的计算机化方法,其中,所述可视化包括动态拓扑映射。
8.如权利要求7所述的计算机化方法,其中,所述动态拓扑映射包括:图示为节点或顶点的每个构造,以及构造之间图示为链路的每个通信路径。
9. 如权利要求7所述的计算机化方法,进一步包括:
接收与构造的选择相对应的用户输入,以及
对图示所选择的构造的参数的显示面板生成更新的可视化。
10.如权利要求9所述的计算机化方法,其中,所选择的构造的所述参数包括以下中的一个或多个:所选择的构造的名称、所选择的构造是否加密、与所选择的构造相对应的云提供商,与所选择的构造相关联的网关名称、与所选择的构造相关联的虚拟私有云(VPC)标识符、所选择的构造的VPC区域、或所选择的构造是否是中转VPC。
11. 一种分布式云计算系统,包括:
控制器,所述控制器配置成在第一云计算网络中部署第一网关并在第二云计算网络中部署第二网关;以及
逻辑,所述逻辑存储在非暂时性计算机介质上,所述逻辑在由一个或多个处理器执行时致使执行包括以下的操作:
生成图示多个构造以及所述多个构造之间的通信路径的拓扑映射可视化,其中,所述多个构造的第一子集部署在所述第一云计算网络中,并且所述多个构造的第二子集部署在所述第二云计算网络中,
接收与(i)所述多个构造中的一个或多个构造的选择以及(ii)对于所述一个或多个构造的所述选择的标识符相对应的用户输入,
生成所选择的一个或多个构造以及所选择的一个或多个构造之间的任何连接的经过滤的拓扑映射可视化,以及
致使在网络装置的显示屏上呈现所述经过滤的拓扑映射可视化。
12.如权利要求11所述的分布式云计算系统,其中,所述逻辑在由所述一个或多个处理器执行时致使执行包括以下的进一步操作:
存储一个或多个构造的所述选择和所述标识符的指示,包括在数据库内生成将所述标识符与每个所选择的构造相关联的表。
13. 如权利要求11所述的分布式云计算系统,其中,所述逻辑在由所述一个或多个处理器执行时致使在生成所述经过滤的拓扑映射可视化之前执行包括以下的进一步操作:
接收与搜索项相对应的另外的用户输入,其中,所述搜索项是所述标识符,并且
其中,所述经过滤的拓扑映射可视化的所述生成根据所述搜索项。
14.如权利要求11所述的分布式云计算系统,其中,所述逻辑在由所述一个或多个处理器执行时致使执行包括以下的进一步操作:
生成并致使呈现图示网络业务度量的可视化,其中,所述网络业务度量与部署在所述第一云计算网络和所述第二云计算网络中的构造之间的网络业务的传输和接收有关;
接收与搜索项相对应的另外的用户输入,其中,所述搜索项是所述标识符;以及
生成并致使呈现图示根据所述搜索项进行过滤的所述网络业务度量的经过滤的可视化。
15.一种计算机化方法,包括:
生成图示多个构造以及所述多个构造之间的通信路径的拓扑映射可视化,其中,所述多个构造的第一子集部署在第一云计算网络中,并且所述多个构造的第二子集部署在第二云计算网络中;
接收与(i)所述多个构造中的一个或多个构造的选择以及(ii)对于所述一个或多个构造的所述选择的标识符相对应的用户输入;
生成所选择的一个或多个构造以及所选择的一个或多个构造之间的任何连接的经过滤的拓扑映射可视化;以及
致使在网络装置的显示屏上呈现所述经过滤的拓扑映射可视化。
16.如权利要求15所述的计算机化方法,进一步包括:
存储一个或多个构造的所述选择和所述标识符的指示,包括在数据库中生成将所述标识符与每个所选择的构造相关联的表。
17.如权利要求15所述的计算机化方法,进一步包括:
在生成所述经过滤的拓扑映射可视化之前,接收与搜索项相对应的另外的用户输入,其中,所述搜索项是所述标识符,并且其中,生成所述经过滤的拓扑映射可视化根据所述搜索项。
18.如权利要求15所述的计算机化方法,其中,生成所述经过滤的拓扑映射可视化包括:
排除除了所选择的构造和所选择的构造之间的所有通信路径以外的所有构造和通信路径。
19. 一种分布式云计算系统,包括:
控制器,所述控制器配置成在第一云计算网络中部署第一网关并在第二云计算网络中部署第二网关;以及
逻辑,所述逻辑存储在非暂时性计算机介质上,所述逻辑在由一个或多个处理器执行时致使执行包括以下的操作:
从所述控制器接收与对应于多个时间实例的多个构造有关的元数据,
从所述第一网关和所述第二网关中的每个网关接收对应于所述多个时间实例的网络数据,其中,所述元数据和所述网络数据的组合识别所述多个构造中的每个构造、每个构造之间的所述通信路径、以及将每个构造部署在哪个云计算网络中,
生成图示(1)所述第一时间实例的所述网络数据和所述元数据与(2)所述第二时间实例的所述网络数据和所述元数据之间的差异的可视化,以及
致使在网络装置的显示屏上呈现所述可视化。
20.如权利要求19所述的分布式云计算系统,其中,所述可视化是从(1)所述第一时间实例的所述网络数据和所述元数据与(2)所述第二时间实例的所述网络数据和所述元数据的比较中导出的拓扑图。
21.如权利要求19所述的分布式云计算系统,进一步包括:
在接收所述网络数据之前,针对至少所述第一网关和所述第二网关的元数据,向所述控制器传送一个或多个请求。
22.如权利要求19所述的分布式云计算系统,其中,所述可视化包括提供在所述第一时间实例和所述第二时间实例的所建立的通信以及所部署的构造之间的差异的列表的显示面板。
23.如权利要求19所述的分布式云计算系统,其中,所述多个构造的第一子集部署在所述第一云计算网络中,并且所述多个构造的第二子集部署在所述第二云计算网络中。
24.一种计算机化方法,包括:
从控制器接收与对应于多个实例的多个构造有关的元数据,其中,所述控制器配置成:(i)在第一云计算网络中部署和管理第一网关并在第二云计算网络中部署和管理第二网关,以及(ii)管理所述多个构造,其中,所述多个构造的第一子集部署在所述第一云计算网络中,并且所述多个构造的第二子集部署在第二云计算网络中;
从所述第一网关和所述第二网关中的每个网关接收对应于所述多个时间实例的网络数据,其中,所述元数据和所述网络数据的组合识别所述多个构造中的每个构造、每个构造之间的通信路径、以及将每个构造部署在哪个云计算网络中;
生成图示(1)所述第一时间实例的所述网络数据和所述元数据与(2)所述第二时间实例的所述网络数据和所述元数据之间的差异的可视化;以及
致使在网络装置的显示屏上呈现所述可视化。
25.如权利要求24所述的计算机化方法,其中,所述可视化是从(1)所述第一时间实例的所述网络数据和所述元数据与(2)所述第二时间实例的所述网络数据和所述元数据的比较中导出的拓扑图。
26.如权利要求25所述的计算机化方法,其中,所述拓扑图包括多个节点和所述多个节点中的任何节点之间的通信路径。
27.如权利要求25所述的计算机化方法,其中,所述比较指示在所述第二时间实例部署的至少一个构造不是在所述第一时间实例部署,或者在所述第一时间实例部署的至少一个构造不是在所述第二时间实例部署,或者在所述第二时间实例建立的至少一个通信路径不是在所述第一时间实例建立,或者在所述第一时间实例建立的至少一个通信路径不是在所述第二时间实例建立。
28.如权利要求24所述的计算机化方法,其中,所述元数据和所述网络数据与多个云计算网络有关。
29. 一种分布式云计算系统,包括:
控制器,所述控制器配置成在第一云计算网络中部署多个网关;以及
逻辑,所述逻辑存储在非暂时性计算机介质上,所述逻辑在由一个或多个处理器执行时致使执行包括以下的操作:
生成包括多个构造和所述多个构造之间的连接的所述第一云计算网络的拓扑映射,其中,所述多个构造包括所述多个网关,
接收与源构造和目的地构造的选择相对应的输入,
确定所述源构造与所述目的地构造之间的数据传输路径,
生成图示所述数据传输路径的可视化,以及
致使在网络装置的显示屏上呈现所述可视化。
30.如权利要求29所述的分布式云计算系统,其中,所述数据传输路径的所述确定包括确定所述源构造与所述目的地构造之间的最短路径。
31.如权利要求30所述的分布式云计算系统,其中,所述最短路径的确定包括对所述拓扑映射应用Dijkstra算法。
32.如权利要求31所述的分布式云计算系统,其中,所述逻辑在由所述一个或多个处理器执行时致使执行包括以下的进一步操作:
在生成所述可视化之前,验证所述最短路径是所述第一云计算网络内的实际路径,其中,所述验证包括查询在所述最短路径中所牵连的每个网关以确认每个网关包括如在所述最短路径中所阐述的对应连接,其中,所述第一云计算网络中的所述多个网关包括在所述最短路径中所牵连的每个网关。
33.如权利要求29所述的分布式云计算系统,其中,生成所述拓扑映射包括:
针对所述多个网关中的每个网关的元数据,向所述控制器传送一个或多个请求,
从所述多个网关接收与所述多个网关相关联的网络数据,以及
生成所述第一云计算网络的所述拓扑映射。
34.如权利要求29所述的分布式云计算系统,其中,所述控制器配置成在第二云计算网络中部署多个第二网关,并且
其中,生成所述第一云计算网络的所述拓扑映射包括生成所述拓扑映射以包括所述第一云计算网络和所述第二云计算网络两者的构造和连接,
其中,所述第一云计算网络由第一云服务提供商提供,而所述第二云计算由第二云服务提供商提供。
35.一种用于管理云计算网络的方法,所述方法包括:
在一个或多个云计算网络中部署多个网关,其中,控制器部署所述多个网关;
生成包括多个构造和所述多个构造之间的连接的所述一个或多个云计算网络的拓扑映射,其中,所述多个构造包括所述多个网关;
接收与源构造和目的地构造的选择相对应的输入;
确定所述源构造与所述目的地构造之间的数据传输路径;
生成图示所述数据传输路径的可视化;以及
致使在网络装置的显示屏上呈现所述可视化。
36.如权利要求35所述的方法,进一步包括:
接收与对于与所述数据传输路径相关联的网络度量的报告的请求相对应的另外的输入,
生成图示与所述数据传输路径相关联的网络度量的所述报告的报告可视化,其中,所述报告可视化包括与所述数据传输路径相关联的所述网络度量中的一个或多个网络度量的一个或多个图形表示,以及
致使在所述网络装置的所述显示屏上呈现所述报告可视化。
37.如权利要求36所述的方法,其中,所述网络度量包括以下项中的一个或多个:包含在所述数据传输路径中的网关之间的时延周期,所述数据传输路径的总时延周期,由包含在所述数据传输路径中的每个网关的处理器使用和存储器使用,或在包含在所述数据传输路径中的每个网关的吞吐量。
38.如权利要求35所述的方法,其中,所述多个构造中的构造包括以下项中的一个的软件实例:网关、虚拟私有云网络、虚拟机实例或软件应用实例。
CN202180044205.8A 2020-04-21 2021-04-20 用于在多个云计算环境之中生成和搜索资源拓扑的系统、方法和设备 Pending CN115943398A (zh)

Applications Claiming Priority (13)

Application Number Priority Date Filing Date Title
US202063013529P 2020-04-21 2020-04-21
US63/013529 2020-04-21
US202063020425P 2020-05-05 2020-05-05
US63/020425 2020-05-05
US17/006657 2020-08-28
US17/006,657 US11283695B2 (en) 2020-04-21 2020-08-28 System and method for determination of network operation metrics and generation of network operation metrics visualizations
US17/127927 2020-12-18
US17/127,920 US11671337B2 (en) 2020-04-21 2020-12-18 System, method and apparatus for generating and searching a topology of resources among multiple cloud computing environments
US17/127,927 US11159383B1 (en) 2020-04-21 2020-12-18 Systems and methods for deploying a cloud management system configured for tagging constructs deployed in a multi-cloud environment
US17/127,955 US11356344B2 (en) 2020-04-21 2020-12-18 System and method for deploying a distributed cloud management system configured for generating interactive user interfaces of the state of a multi-cloud environment over time
US17/127955 2020-12-18
US17/127920 2020-12-18
PCT/US2021/028243 WO2021216613A2 (en) 2020-04-21 2021-04-20 System, method and apparatus for generating and searching a topology of resources among multiple cloud computing environments

Publications (1)

Publication Number Publication Date
CN115943398A true CN115943398A (zh) 2023-04-07

Family

ID=78081054

Family Applications (2)

Application Number Title Priority Date Filing Date
CN202180044205.8A Pending CN115943398A (zh) 2020-04-21 2021-04-20 用于在多个云计算环境之中生成和搜索资源拓扑的系统、方法和设备
CN202180044189.2A Pending CN115668880A (zh) 2020-04-21 2021-04-20 用于为多云环境生成网络健康数据和其它分析的系统和方法

Family Applications After (1)

Application Number Title Priority Date Filing Date
CN202180044189.2A Pending CN115668880A (zh) 2020-04-21 2021-04-20 用于为多云环境生成网络健康数据和其它分析的系统和方法

Country Status (4)

Country Link
US (13) US11283695B2 (zh)
EP (2) EP4139858A4 (zh)
CN (2) CN115943398A (zh)
WO (2) WO2021216613A2 (zh)

Families Citing this family (22)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US11888738B2 (en) 2019-08-15 2024-01-30 Juniper Networks, Inc. System and method for determining a data flow path in an overlay network
USD970515S1 (en) * 2019-10-07 2022-11-22 Wells Fargo Bank, N.A. Display screen or portion thereof with graphical user interface
US11283699B2 (en) 2020-01-17 2022-03-22 Vmware, Inc. Practical overlay network latency measurement in datacenter
US11388227B1 (en) 2020-02-27 2022-07-12 Aviatrix Systems, Inc. Multi-cloud active mesh network system and method
US11502942B1 (en) 2020-02-27 2022-11-15 Aviatrix Systems, Inc. Active mesh network system and method
US11283695B2 (en) 2020-04-21 2022-03-22 Aviatrix Systems, Inc. System and method for determination of network operation metrics and generation of network operation metrics visualizations
US11695661B1 (en) 2020-04-21 2023-07-04 Aviatrix Systems, Inc. Systems and methods for deploying a cloud management system configured for tagging constructs deployed in a multi-cloud environment
US11444855B2 (en) * 2020-07-07 2022-09-13 Juniper Networks, Inc. System and method for determining a data flow path in an overlay network
US11570090B2 (en) 2020-07-29 2023-01-31 Vmware, Inc. Flow tracing operation in container cluster
US11336533B1 (en) 2021-01-08 2022-05-17 Vmware, Inc. Network visualization of correlations between logical elements and associated physical elements
WO2022250750A1 (en) * 2021-05-27 2022-12-01 Aviatrix Systems, Inc. A multi-cloud active mesh network system and method
US20230198859A1 (en) * 2021-12-22 2023-06-22 Vmware, Inc. Federated network topology visualization
US12101222B2 (en) * 2022-02-02 2024-09-24 Oracle International Corporation Architecture of a multi-cloud control plane-network adaptor
USD1037273S1 (en) * 2022-02-09 2024-07-30 Neutrace Inc. Display screen or portion thereof with a graphical user interface for a medical device
USD1037274S1 (en) * 2022-02-09 2024-07-30 Neutrace Inc. Display screen or portion thereof with a graphical user interface for a medical device
USD1039535S1 (en) * 2022-02-09 2024-08-20 Neutrace Inc. Display screen with transitional graphical user interface for an electro-anatomical mapping study viewer application
USD1037272S1 (en) * 2022-02-09 2024-07-30 Neutrace Inc. Display screen or portion thereof with a graphical user interface for a medical device
WO2024076651A1 (en) * 2022-10-04 2024-04-11 Aviatrix Systems, Inc. Systems and methods for improved monitoring of a network topology and corresponding user interfaces
WO2024116136A1 (en) * 2022-12-01 2024-06-06 Jio Platforms Limited System and method for generating a customer health card
US20240323108A1 (en) * 2023-03-21 2024-09-26 International Business Machines Corporation Visualization tool for network traffic
KR102644891B1 (ko) * 2023-04-14 2024-03-07 신 라파엘 그리드 맵핑에 의한 메타버스 플랫폼 접속 시스템 및 방법
US12040915B1 (en) * 2023-05-05 2024-07-16 Jpmorgan Chase Bank , N.A. Systems and methods for using serverless functions to call mainframe application programing interfaces

Family Cites Families (59)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP4530707B2 (ja) 2004-04-16 2010-08-25 株式会社クラウド・スコープ・テクノロジーズ ネットワーク情報提示装置及び方法
US20090265631A1 (en) * 2008-04-18 2009-10-22 Yahoo! Inc. System and method for a user interface to navigate a collection of tags labeling content
US9300545B2 (en) 2011-10-11 2016-03-29 Google Inc. Page layout in a flow visualization
EP2592550B1 (en) 2011-11-11 2015-04-15 Alcatel Lucent Distributed mapping function for large scale media clouds
US9590876B2 (en) 2012-03-02 2017-03-07 Payoda Inc. Centralized dashboard for monitoring and controlling various application specific network components across data centers
MX2014013791A (es) * 2012-05-14 2015-07-21 Sgrouples Inc Plataforma social con privacidad mejorada y funciones de personalizacion integradas.
US9122552B2 (en) * 2012-06-29 2015-09-01 Bmc Software, Inc. Hybrid cloud infrastructures
US8782265B1 (en) * 2013-03-14 2014-07-15 Dmitry Bokotey Network visualization system and method of using same
US20140280964A1 (en) * 2013-03-15 2014-09-18 Gravitant, Inc. Systems, methods and computer readable mediums for implementing cloud service brokerage platform functionalities
US9374278B2 (en) 2013-03-15 2016-06-21 NETBRAIN Technologies, Inc Graphic user interface based network management system to define and execute troubleshooting procedure
US9438495B2 (en) 2013-04-02 2016-09-06 Amazon Technologies, Inc. Visualization of resources in a data center
US9185007B2 (en) 2013-04-30 2015-11-10 Splunk Inc. Proactive monitoring tree with severity state sorting
US9391801B2 (en) 2013-08-13 2016-07-12 Vmware, Inc. Virtual private networks distributed across multiple cloud-computing facilities
US9674042B2 (en) 2013-11-25 2017-06-06 Amazon Technologies, Inc. Centralized resource usage visualization service for large-scale network topologies
US20150263885A1 (en) 2014-03-14 2015-09-17 Avni Networks Inc. Method and apparatus for automatic enablement of network services for enterprises
US10122605B2 (en) 2014-07-09 2018-11-06 Cisco Technology, Inc Annotation of network activity through different phases of execution
US9762450B2 (en) 2014-09-04 2017-09-12 Accenture Global Services Limited System architecture for cloud-platform infrastructure layouts
US20160197834A1 (en) 2015-01-02 2016-07-07 Siegfried Luft Architecture and method for traffic engineering between diverse cloud providers
US10277512B1 (en) * 2015-02-03 2019-04-30 State Farm Mutual Automobile Insurance Company Method, device, and computer-readable medium for automatic network traffic engineering
US9761119B1 (en) * 2015-03-12 2017-09-12 Alarm.Com Incorporated Mission critical signaling failover in cloud computing ecosystem
US11243505B2 (en) 2015-03-16 2022-02-08 Rockwell Automation Technologies, Inc. Cloud-based analytics for industrial automation
US10255378B2 (en) * 2015-03-18 2019-04-09 Adp, Llc Database structure for distributed key-value pair, document and graph models
US10374904B2 (en) 2015-05-15 2019-08-06 Cisco Technology, Inc. Diagnostic network visualization
US9667439B2 (en) * 2015-05-23 2017-05-30 Cisco Technology, Inc. Determining connections between disconnected partial trees
US10554620B2 (en) 2015-05-29 2020-02-04 Cisco Technology, Inc. Default gateway extension
US10320644B1 (en) 2015-09-14 2019-06-11 Amazon Technologies, Inc. Traffic analyzer for isolated virtual networks
WO2017049439A1 (en) 2015-09-21 2017-03-30 Splunk Inc. Topology map displays of cloud computing resources
US10536356B2 (en) 2015-09-21 2020-01-14 Splunk Inc. Generating and displaying topology map time-lapses of cloud computing resources
US10079877B2 (en) 2016-02-04 2018-09-18 Citrix Systems, Inc. System and method for cloud aware application delivery controller
US10652126B2 (en) 2016-02-26 2020-05-12 Arista Networks, Inc. System and method of a cloud service provider tracer
US9942787B1 (en) 2016-03-22 2018-04-10 Amazon Technologies, Inc. Virtual private network connection quality analysis
US9979596B2 (en) 2016-06-22 2018-05-22 Amazon Technologies, Inc. Configuration discovery service data visualization
US10542100B2 (en) * 2016-09-16 2020-01-21 Oracle International Corporation Systems and methodologies for defining and scheduling custom actions as cloud operations
US10776350B1 (en) 2016-09-26 2020-09-15 Splunk Inc. Field analyzer for event search screen
US12058015B2 (en) * 2016-10-21 2024-08-06 Forward Networks, Inc. Systems and methods for an interactive network analysis platform
US20180131585A1 (en) 2016-11-08 2018-05-10 2Nd Watch, Inc. Cloud Visualization and Management Platform
WO2018140018A1 (en) 2017-01-26 2018-08-02 Hitachi, Ltd. User-driven network traffic shaping
US10565220B2 (en) 2017-01-31 2020-02-18 Splunk Inc. Generating visualizations for search results data containing multiple data dimensions
US11068314B2 (en) 2017-03-29 2021-07-20 Juniper Networks, Inc. Micro-level monitoring, visibility and control of shared resources internal to a processor of a host machine for a virtual environment
US10547521B1 (en) 2017-03-29 2020-01-28 Juniper Networks, Inc. Network dashboard with multifaceted utilization visualizations
EP3603018B1 (en) * 2017-03-31 2023-03-08 Nokia Solutions and Networks Oy Optimizations for cloud storage related data flow
WO2018200756A1 (en) 2017-04-25 2018-11-01 Nutanix, Inc. Systems and methods for networked microservice modeling and visualization
US11468389B2 (en) 2017-05-05 2022-10-11 Servicenow, Inc. Systems and methods for analytics, predictions, and reporting
US11075997B2 (en) * 2017-07-06 2021-07-27 Telefonaktiebolaget Lm Ericsson (Publ) Technique for reliable communication in a cloud robotics system
US20190028909A1 (en) 2017-07-20 2019-01-24 Cisco Technology, Inc. Adaptive health status scoring for network assurance
US10091348B1 (en) * 2017-07-25 2018-10-02 Cisco Technology, Inc. Predictive model for voice/video over IP calls
US11132378B2 (en) 2017-11-16 2021-09-28 Servicenow, Inc. Systems and methods for interactive analysis
US10681095B1 (en) * 2018-01-17 2020-06-09 Sure Market, LLC Distributed messaging communication system integrated with a cross-entity collaboration platform
US10728121B1 (en) 2018-05-23 2020-07-28 Juniper Networks, Inc. Dashboard for graphic display of computer network topology
US11063847B2 (en) 2018-08-21 2021-07-13 Fujitsu Limited Service function chain mapping using multiple parallel microservices instances
US11283754B2 (en) 2018-09-19 2022-03-22 Cisco Technology, Inc. Unique identities of endpoints across layer 3 networks
US11048811B2 (en) 2018-12-19 2021-06-29 Jpmorgan Chase Bank, N. A. Methods for big data usage monitoring, entitlements and exception analysis
EP3939302A4 (en) * 2019-04-30 2023-04-26 Phantom Auto Inc. LOW-LATENCY WIRELESS COMMUNICATION SYSTEM FOR REMOTE-CONTROLLED VEHICLE ENVIRONMENTS
US11888738B2 (en) 2019-08-15 2024-01-30 Juniper Networks, Inc. System and method for determining a data flow path in an overlay network
US10924419B1 (en) 2019-08-15 2021-02-16 Juniper Networks, Inc. Underlay-overlay correlation
US11121985B2 (en) 2019-08-27 2021-09-14 Vmware, Inc. Defining different public cloud virtual networks for different entities based on different sets of measurements
US11640465B2 (en) 2019-11-13 2023-05-02 Vmware, Inc. Methods and systems for troubleshooting applications using streaming anomaly detection
US11729077B2 (en) 2019-11-29 2023-08-15 Amazon Technologies, Inc. Configuration and management of scalable global private networks
US11283695B2 (en) 2020-04-21 2022-03-22 Aviatrix Systems, Inc. System and method for determination of network operation metrics and generation of network operation metrics visualizations

Also Published As

Publication number Publication date
US11671337B2 (en) 2023-06-06
US11265233B2 (en) 2022-03-01
US20230179495A1 (en) 2023-06-08
CN115668880A (zh) 2023-01-31
US20210328875A1 (en) 2021-10-21
US11658890B1 (en) 2023-05-23
WO2021216613A2 (en) 2021-10-28
US11159383B1 (en) 2021-10-26
US11283695B2 (en) 2022-03-22
US20230403212A1 (en) 2023-12-14
WO2021216613A3 (en) 2021-12-23
EP4139858A4 (en) 2024-08-07
US20210328876A1 (en) 2021-10-21
WO2021216616A1 (en) 2021-10-28
US11356344B2 (en) 2022-06-07
US20210328893A1 (en) 2021-10-21
EP4139858A2 (en) 2023-03-01
EP4140101A1 (en) 2023-03-01
EP4140101A4 (en) 2024-06-19
US20230362076A1 (en) 2023-11-09
WO2021216613A4 (en) 2022-02-24
US20210328891A1 (en) 2021-10-21
US20210328883A1 (en) 2021-10-21
US11863410B2 (en) 2024-01-02
US20230403214A1 (en) 2023-12-14
US20210328882A1 (en) 2021-10-21
US20210328892A1 (en) 2021-10-21
US20230379231A1 (en) 2023-11-23
US11469977B2 (en) 2022-10-11
US11722387B1 (en) 2023-08-08

Similar Documents

Publication Publication Date Title
CN115943398A (zh) 用于在多个云计算环境之中生成和搜索资源拓扑的系统、方法和设备
US11218376B2 (en) Algorithmic problem identification and resolution in fabric networks by software defined operations, administration, and maintenance
US11671331B2 (en) Systems and methods for contextual network assurance based on change audits
US11882202B2 (en) Intent based network data path tracing and instant diagnostics
EP4032327B1 (en) Automated access point mapping systems and methods
US10944641B1 (en) Systems and methods for application traffic simulation using captured flows
US10897412B2 (en) Bifocal timeline graphs for network analytics
US10911341B2 (en) Fabric data plane monitoring
US11695661B1 (en) Systems and methods for deploying a cloud management system configured for tagging constructs deployed in a multi-cloud environment
US12132625B2 (en) System and method for determination of network operation metrics and generation of network operation metrics visualizations
WO2024026745A1 (en) Systems and methods for generation of a network topology and corresponding user interfaces
WO2024030588A1 (en) Systems and methods for improved monitoring features for of a network topology and corresponding user interfaces
WO2024030589A1 (en) Systems and methods for generation of a network topology and corresponding user interfaces
WO2024030403A1 (en) Systems and methods for monitoring of a network topology through graphical user interfaces
WO2023154315A1 (en) System and method for anomaly detection in a distributed cloud environment

Legal Events

Date Code Title Description
PB01 Publication
PB01 Publication
SE01 Entry into force of request for substantive examination
SE01 Entry into force of request for substantive examination