CN110214311A - 虚拟计算元件的微分段 - Google Patents

虚拟计算元件的微分段 Download PDF

Info

Publication number
CN110214311A
CN110214311A CN201780084828.1A CN201780084828A CN110214311A CN 110214311 A CN110214311 A CN 110214311A CN 201780084828 A CN201780084828 A CN 201780084828A CN 110214311 A CN110214311 A CN 110214311A
Authority
CN
China
Prior art keywords
application
business stream
virtual machine
layer
removable
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
CN201780084828.1A
Other languages
English (en)
Other versions
CN110214311B (zh
Inventor
L·V·贡达
R·克里希纳穆尔蒂
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.)
Nicira Inc
Original Assignee
Nicira 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 Nicira Inc filed Critical Nicira Inc
Publication of CN110214311A publication Critical patent/CN110214311A/zh
Application granted granted Critical
Publication of CN110214311B publication Critical patent/CN110214311B/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
    • H04L63/00Network architectures or network communication protocols for network security
    • H04L63/02Network architectures or network communication protocols for network security for separating internal from external traffic, e.g. firewalls
    • H04L63/0227Filtering policies
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/44Arrangements for executing specific programs
    • G06F9/455Emulation; Interpretation; Software simulation, e.g. virtualisation or emulation of application or operating system execution engines
    • G06F9/45533Hypervisors; Virtual machine monitors
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/44Arrangements for executing specific programs
    • G06F9/455Emulation; Interpretation; Software simulation, e.g. virtualisation or emulation of application or operating system execution engines
    • G06F9/45533Hypervisors; Virtual machine monitors
    • G06F9/45558Hypervisor-specific management and integration aspects
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L63/00Network architectures or network communication protocols for network security
    • H04L63/02Network architectures or network communication protocols for network security for separating internal from external traffic, e.g. firewalls
    • H04L63/0209Architectural arrangements, e.g. perimeter networks or demilitarized zones
    • H04L63/0218Distributed architectures, e.g. distributed firewalls
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/44Arrangements for executing specific programs
    • G06F9/455Emulation; Interpretation; Software simulation, e.g. virtualisation or emulation of application or operating system execution engines
    • G06F9/45533Hypervisors; Virtual machine monitors
    • G06F9/45558Hypervisor-specific management and integration aspects
    • G06F2009/45587Isolation or security of virtual machine instances
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/44Arrangements for executing specific programs
    • G06F9/455Emulation; Interpretation; Software simulation, e.g. virtualisation or emulation of application or operating system execution engines
    • G06F9/45533Hypervisors; Virtual machine monitors
    • G06F9/45558Hypervisor-specific management and integration aspects
    • G06F2009/45595Network integration; Enabling network access in virtual machine instances

Landscapes

  • Engineering & Computer Science (AREA)
  • Software Systems (AREA)
  • General Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Signal Processing (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Computing Systems (AREA)
  • Computer Security & Cryptography (AREA)
  • Computer Hardware Design (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Data Exchanges In Wide-Area Networks (AREA)
  • Computer And Data Communications (AREA)

Abstract

本文公开的技术实现了虚拟计算元件的微分段。在特定实施例中,一种方法提供识别包括多个虚拟机的一个或更多个多层应用程序。一个或更多个多层应用程序的每个应用程序层包括多个虚拟机中的至少一个。该方法还提供维护关于一个或更多个多层应用程序的信息。该信息至少指示多个虚拟机中的每个虚拟机的安全组。另外,该方法提供识别多个虚拟机中的虚拟机之间的通信业务流,并至少部分地基于该信息识别通信业务流中的一个或更多个可移除业务流。该方法然后提供阻止该一个或更多个可移除业务流。

Description

虚拟计算元件的微分段
相关申请
本申请涉及并要求2016年12月22日提交的标题为“虚拟计算元件的微分段(MICRO-SEGMENTATION OF VIRTUAL COMPUTING ELEMENTS)”的美国临时专利申请62/437,891和2017年10月23日提交的标题为“虚拟计算元件的微分段(MICRO-SEGMENTATION OFVIRTUAL COMPUTING ELEMENTS)”的美国非临时专利申请15/790,303的优先权,其全部内容通过引用并入本文。
技术背景
可通过通信网络访问的应用程序可被分段为多个组。对一个组中的应用程序的访问可与访问另一个组中的应用程序不同地控制。控制该访问可以由网络防火墙类型***执行,该***调节在其上运行应用程序的物理和/或虚拟计算***之间交换的网络业务。例如,如果用户不希望一个组中的应用程序与另一个组中的应用程序交换通信,则用户可以创建防火墙规则以防止这种通信。
许多应用程序用多个层(tier)来实现。每个应用程序层可以在不同的***上执行。在一个常见示例中,客户端可以通过因特网访问的基于web的应用程序,可以以三层来实现:web服务器层、应用程序服务器层和数据库层。三层中的每一层执行特定功能以支持向客户端提供基于web的应用程序。虽然三层中的每一层都是应用程序本身,但上面讨论的应用程序分段将它们组合在一起作为一个基于Web的应用程序。因此,不可能基于该分组来控制各个应用程序层之间的访问。
发明内容
本文公开的技术实现了虚拟计算元件的微分段。在特定实施例中,一种方法提供识别包括多个虚拟机的一个或更多个多层应用程序。一个或更多个多层应用程序中的每个应用程序层包括多个虚拟机中的至少一个。该方法还提供维护关于一个或更多个多层应用程序的信息。该信息至少指示多个虚拟机中的每个虚拟机的安全组。另外,该方法提供识别多个虚拟机中的虚拟机之间的通信业务流,并至少部分地基于该信息识别通信业务流中的一个或更多个可移除业务流。该方法然后提供阻止一个或更多个可移除业务流。
在一些实施例中,该方法提供将一个或更多个可移除业务流呈现给用户并从用户接收应当移除可移除业务流的确认。在这些实施例中,响应于所述确认,发生对可移除业务流的阻止。此外,在这些实施例中,呈现可移除业务流包括:呈现图形显示,其将多个虚拟机中的虚拟机可视地分组到相应的应用程序层和相应的安全组中,并显示虚拟机之间的通信业务流。在某些情况下,图形显示标记应用程序层和安全组。另外,在一些情况下,呈现可移除业务流还包括突出显示(highlight)所显示的通信业务流的可移除业务流。
在一些实施例中,阻止一个或更多个可移除业务流包括:实现阻止一个或更多个可移除业务流的一个或更多个防火墙规则。
在一些实施例中,多层应用程序中的每一个包括三个层,其中所述三个层包括web层、应用程序层和数据库层。
在一些实施例中,一个或更多个可移除业务流包括:除了web层和应用程序层之间、应用程序层和数据库层之间以及外部***和web层之间的业务流之外的业务流。
在一些实施例中,识别通信业务流包括在托管多个虚拟机的一个或更多个计算***中,识别进出多个虚拟机中的每个虚拟机的通信业务。
在一些实施例中,该信息还包括用于一个或更多个多层应用程序中的每一个的标识符。
在另一个实施例中,提供了一种***,其具有一个或更多个计算机可读存储介质和与一个或更多个计算机可读存储介质可操作地耦合的处理***。当由处理***读取和执行时,存储在一个或更多个计算机可读存储介质上的程序指令指示处理***识别包括多个虚拟机的一个或更多个多层应用程序。一个或更多个多层应用程序中的每个应用程序层包括多个虚拟机中的至少一个。程序指令还指示处理***维护关于一个或更多个多层应用程序的信息。该信息至少指示多个虚拟机中的每个虚拟机的安全组。而且,程序指令指示处理***识别多个虚拟机中的虚拟机之间的通信业务流。此外,程序指令指示处理***至少部分地基于该信息识别通信业务流中的一个或更多个可移除业务流,并阻止一个或更多个可移除业务流。
附图的简要说明
图1示出了用于微分段虚拟计算元件的计算环境。
图2示出了操作计算环境以微分段虚拟计算元件的方法。
图3示出了计算环境的操作场景以微分段虚拟计算元件。
图4示出了用于微分段虚拟计算元件的另一计算环境。
图5示出了根据一个实施方式的操作其他计算环境以微分段虚拟计算元件的方法。
图6示出了根据一个实施方式的其他计算环境的操作场景以微分段虚拟计算元件。
具体实施方式
本文提供的实施方式实现了虚拟计算元件的微分段。一些虚拟计算元件(诸如虚拟机、容器等)可以作为更高级元件的一部分一起操作。在一个示例中,应用程序可以是使用每个层的一个或更多个虚拟元件实现的多层应用程序。每个虚拟元件可以是执行应用程序层(诸如web服务器或web应用程序)的虚拟机,或者虚拟元件可以是容器化的应用程序,例如可以从Docker公司获得的技术实现的应用程序。而不是简单地对更高级元件(即,多层应用程序)分组,本公开描述了对包括应用程序的一个或更多个层的虚拟元件进行分组,并且根据分组的一部分对每个虚拟元件应用策略(例如,防火墙规则)。将多层应用程序的组件分段为不同的组允许更好地分析在应用程序内交换的以及去往和来自应用程序的通信。也就是说,将作为整体的多层应用程序进行分组只允许分析采用作为整体的应用程序交换的业务。将应用程序微分段为虚拟元件允许分析和策略实施采用每个虚拟元件交换的网络业务以及每个虚拟元件之间的网络业务。可以向用户呈现分析结果以管理虚拟元件之间的网络业务。
图1示出了用于微分段虚拟计算元件的计算环境100。计算环境100包括微分段***101和多层应用程序102。多层应用程序102用应用程序层虚拟元件102.1-N实现。多层应用程序102中的每一层可包括应用程序层虚拟元件102.1-N中的一个或更多个。应用程序层虚拟元件102.1-N通过在其上执行超级管理程序或具有类似功能的一些其他软件元件在物理主机计算***上实现。微分段***101可以类似地实现为一个或更多个虚拟元件本身。在一些情况下,微分段***101可以与一个或更多个应用程序层虚拟元件102.1-N一起在主机计算***上实现。
图2示出了操作计算环境100以微分段虚拟计算元件的方法200。方法200包括微分段***101,其识别一个或更多个多层应用程序,例如多层应用程序102,包括多个虚拟元件,例如应用程序层虚拟元件102.1-N(201)。多层应用程序102中的每个应用程序层以及所标识的任何其他多层应用程序包括多个虚拟元件中的至少一个。可以使用监视在计算环境100中执行的虚拟元件的发现过程来识别多层应用程序102,以确定每个虚拟元件正在其中运行的层。还可以使用识别多层应用程序的其他方式,包括从用户或其他***接收识别多层应用程序的信息。
方法200还提供微分段***101,其在分层应用程序信息121中维护关于一个或更多个多层应用程序的信息(202)。该信息至少指示每个虚拟元件的安全组。安全组可以由用户预定义,使得某些类型的虚拟元件(例如,执行某些功能的虚拟元件)被放置到相应的安全组中。或者,微分段***101可以在监视虚拟元件的同时基于获得的信息为每个虚拟元件推断安全组。也可以使用将虚拟元件放入安全组的其他方式。每个安全组可以定义应该在其中的虚拟元件上实现的网络安全策略(例如,一个安全组中的虚拟元件可以仅被允许与特定其他安全组中的元件通信)。
另外,方法200提供微分段***101,其识别多个虚拟机中的虚拟机之间的通信业务流(203)。对通信流的监视可以在上面的步骤201和202之前、期间或之后开始执行并且持续任何时间量。优选地,该时间量至少是假定捕获所有潜在通信流所必需的时间量。通信流的识别至少识别流来自何处以及流指向何处,例如在两个虚拟元件之间或虚拟元件与计算环境100外部的***、网络或设备之间。
在识别通信业务流之后,方法200提供微分段***101,其至少部分地基于分层应用程序信息121中的信息来识别通信业务流中的一个或更多个可移除业务流(204)。可移除业务流可以是在虚拟元件的正常操作之外的通信业务流,与所涉及的安全组的安全策略相反的流,或者否则不应该被允许前进的流。例如,应用程序层虚拟元件102.1可以位于应该仅与特定其他安全组中的虚拟元件通信的安全组中。如果应用程序层虚拟元件102.1包含在具有不同安全组中的虚拟元件的业务流,则该业务流将被识别为可移除的。
然后,方法200提供微分段***101,其阻止一个或更多个可移除业务流(205)。阻止可移除业务流可以包括实现一个或更多个防火墙规则,其采用将捕获可移除业务流并防止可移除业务流继续的标准。在一些情况下,可以首先向用户呈现至少描述可移除业务流的信息,以便用户可以提供关于是否应该移除可移除业务流的输入。用户可以简单地确认应该阻止可移除业务流,可以选择应该阻止的可移除业务流的子集,将其他通信业务流添加到可移除业务流,或者提供其他输入。在一些示例中,还可以向用户呈现在分层应用程序信息121中维护的虚拟元件的分组,并且可以按照他们的意愿调整该分组。在这种情况下,“用户”可以是网络、***或应用程序管理员(即,负责管理网络、***或应用程序的人员)。或者,用户可以是专家***或其他管理实体,其可以自主地识别应该被阻止的网络流,并且潜在地将这些流标记为异常或违反定义的高级策略。异常或不适当的流可以指示始发虚拟元件中存在恶意软件。在各种实施例中,响应可以是通过实现如上所述的新防火墙规则来简单地阻止该流。对恶意软件指示的附加或替代响应可以是隔离VM(例如,通过将其置于隔离安全组中,该隔离安全组需要来自和去往虚拟元件的所有网络流均被黑洞),或者通过在主机上将其拆除暂停虚拟元件,从而阻止它执行任何新指令,直到可以对其进行分析。
图3示出了计算环境100的操作场景300以微分段虚拟计算元件。在操作场景300中,使用方法200,微分段***101已识别出多层应用程序301、多层应用程序302和多层应用程序303。在该示例中,构成每个多层应用程序的虚拟元件是在一个或更多个主机计算***上实现的虚拟机。这样,微分段***101维护关于包括多层应用程序301-303中的每一个的虚拟机的信息。操作场景300仅示出了多层应用程序302包括的三个虚拟机,但是应当理解,多层应用程序301和多层应用程序303还包括两个或更多个虚拟机。
如图所示,多层应用程序302包括应用程序层虚拟机302.1、应用程序层虚拟机302.2和应用程序层虚拟机302.3。为简单起见,每个虚拟机在不同的层中操作,不同的层也对应于不同的安全组。在操作场景300中识别出三个通信流:通信业务流321、通信业务流322和通信业务流323。在该示例中,微分段***101被配置为识别应用程序层虚拟机302.1的安全组与应用程序层虚拟机302.3的安全组之间的通信流不应该发生。因此,微分段***101确定通信业务流321是可移除业务流。
微分段***101可以自动阻止通信业务流321,或者可以首先向用户通知可移除业务流。在一种情况下,可以向用户呈现类似于图3本身的显示器。用户可以确认应该阻止通信业务流321。或者,用户可以指示微分段***101不阻止通信业务流321,可以指示应用程序层虚拟机302.1和/或应用程序层虚拟机302.3不在正确的安全组中(例如,如果微分段***101最初将它们放置在正确的安全组中,则可以允许通信业务流321),或者基于提供的信息向微分段***101提供一些其他输入。
图4示出了用于微分段虚拟计算元件的计算环境400。计算环境400包括主机计算***421、主机计算***431、通信路由器441、通信网络461和客户端***451。在该示例中,通信路由器441包括开放***互连模型(OSI模型)中的第3层(网络层)路由器,其路由去往/来自主机计算***421和431以及主机计算***421和431之间的通信。通信路由器441还被配置为通过通信网络461与其他***和设备交换通信。通信网络461可以包括因特网、一个或更多个局域网和/或一个或更多个广域网。虽然单独示出,但是在一些示例中,通信路由器441可以被认为是通信网络461的一部分。客户端***451能够经由通信网络461和通信路由器441与主机计算***421和431通信。
在该示例中,主机计算***421执行超级管理程序423以在虚拟机411-414之间分配物理计算资源422。同样地,主机计算***431执行超级管理程序433以在虚拟机415-418之间分配物理计算资源432。物理计算资源422和432可以包括处理资源(例如,CPU时间/核心)、存储器空间、网络接口、用户接口或物理计算***可以包括的任何其他类型的资源。虚拟机411-418中的每一个包括在其中执行的应用程序401-408。具体地,应用程序408是在虚拟机418和主机计算***431上实现微分段***的应用程序。超级管理程序423和433还实现通信业务监视器409和防火墙410。在某些情况下,通信业务监视器409和防火墙410的功能可以相互合并。
应当理解,如图4所示,虚拟机均匀地分布在两个主机计算***上仅仅是示例性的。所示的八个虚拟机可以替代地在从一到八的任何数量的主机计算***上实现。同样地,主机计算***321和331可以托管在该示例中不涉及的附加主机和虚拟机和/或其他虚拟元件。
图5示出了根据一个实现的操作计算环境400以微分段虚拟计算元件的方法500。方法500提供了从虚拟机401-407识别多层应用程序的微分段应用程序408(501)。可以通过向虚拟机401-407查询识别在其上执行的进程的信息,监视与虚拟机401-407交换的业务,从用户接收标识信息,或以某种其他方式(包括其组合)来识别多层应用程序。多层应用程序的识别包括,并且可能源于,识别包括所识别的多层应用程序的分层应用程序。在该示例中,那些分层应用程序是应用程序401-407的某种组合。
微分段应用程序408还维护关于所识别的多层应用程序的信息(502)。该信息可以包括作为整体的多层应用程序和/或包括那些多层应用程序的层的分层应用程序两者的识别信息,关于每个分层应用程序被分组到的安全组的信息,或可能有利于确定是否允许或拒绝通信业务流的任何其他类型的信息。
此外,为此,微分段应用程序408识别分层应用程序401-407之间的业务流(503)。微分段应用程序408采用通信业务监视器409来监视进出每个虚拟机411-417的业务,以识别其中的应用程序401-407之间的通信流业务流。凭借超级管理程序的功能以促进与虚拟机的网络通信,通信业务监视器409的位置作为超级管理程序423和433内的元件允许通信业务监视器409获得关于去往或来自虚拟机411-417的所有网络业务的信息。也就是说,通信业务监视器409的位置作为跨超级管理程序423和433的分布式元件允许通信业务监视器409捕获同一主机计算***上的虚拟机之间的网络业务以及不同主机计算***上的虚拟机之间的网络业务(例如,从虚拟机413到虚拟机417的网络业务)。通信业务监视器409可以仅在微分段应用程序408的请求下监控通信业务,可以被配置为随时间连续监控通信业务,并响应于来自微分段应用程序408的请求提供关于通信业务流的信息,或者可以被配置为在某些其他有利于识别通信业务流的时间增量中监控业务。此外,在一些示例中,可以通过通信业务监视器409获得的业务信息可以用于上述步骤501中的多层应用程序的识别。
然后,将多层应用程序及其组件层应用程序401-407呈现给用户,其具有层应用程序401-407之间的业务流的指示(504)。呈现可以是可视地表示应用程序之间的关系(例如,通过基于安全组、应用程序层等可视地分组应用程序)和通信业务流的图形显示,可以是描述应用程序关系和通信业务流的基于文本的读出,或类似信息的一些其他类型的听觉或视觉表示-包括其组合。无论呈现方式如何,该呈现意味着允许用户至少容易地识别和分析应用程序是否被适当分组以及这些应用程序之间的通信业务流是否适当。因此,呈现还可以包括每个应用程序的标识信息(例如,应用程序名称),应用程序正在其上执行的主机计算***,每个通信业务流发生的频率,或任何其他类型的信息。由于在该示例中微分段应用程序408在虚拟机中实现,因此可以通过主机计算***431的用户界面或通过与主机计算***431通信的计算***的显示(例如,个人用户工作站)来执行呈现。
然后,微分段应用程序408接收来自用户的输入,其修改所显示的信息并指示应该被移除的业务流(505)。例如,用户可以改变应用程序的分组,改变应用程序的层,重命名组或层,指示应该被阻止的通信业务流,或者指示对呈现的任何信息的某种其他类型的修改。对于所请求的信息改变,微分段应用程序408根据用户的请求修改关于多层应用程序维护的信息。如果不能改变某些信息,则微分段应用程序408可以向用户通知该事实,以便用户可以相应地行动。
为了移除通信业务流,微分段应用程序408生成阻止用户指示的通信业务流的一个或更多个防火墙规则(506)。防火墙410从微分段应用程序408接收防火墙规则(或从微分段应用程序408接收规则更新的中间网络控制器/管理器组件),并且实现关于与虚拟机进行的通信业务的规则。在某些情况下,防火墙规则的生成可涉及修改已经存在的防火墙规则,而不是从头开始生成防火墙规则。在该示例中,防火墙410被实现为超级管理程序423和433内的元件,然而,可以使用其他类型的防火墙,包括物理网络元件,只要防火墙被适当定位以阻止在防火墙规则中定义的通信业务。在实施规则之后,可以更新呈现以示出所请求的通信业务流已被阻止。
图6示出了根据一个实施方式的计算环境400的操作场景600以微分段虚拟计算元件。操作场景600是在如上所述的方法500的执行期间如何呈现信息的示例。在操作场景600中,通过微分段应用程序408识别两个多层应用程序:多层应用程序601和多层应用程序602。多层应用程序601和多层应用程序602在该示例中各自是三层应用程序,但是在其他示例中可以包括任意数量的两个或更多个层。多层应用程序601包括应用程序407、应用程序402、应用程序401和应用程序405。多层应用程序602包括应用程序403、应用程序404和应用程序406。
操作场景600还示出了应用程序407和应用程序403位于web服务器层621中,应用程序402和应用程序404位于应用程序层622中,并且应用程序401、应用程序405和应用程序406位于数据库层623中。为简单起见,安全组631-633对应于相应的应用程序层621-623。但是在其他示例中,可以不同地定义安全组。例如,尽管两者都在web服务器层621中,但是应用程序407和应用程序403可以在不同的安全组中,如果每个应用程序可访问的信息的灵敏度不同,则是可期望的。
应用程序401-407之间的通信业务流也在操作场景600中示出。每个通信业务流被示为是双向的,尽管一些示例可以示出每个流的方向,因为方向可能是重要的(即,一个方向的业务可能是所期望的,而另一个方向的业务可能不是期望的)。操作场景600具体地将通信业务流611和通信业务流612突出显示为可移除业务流。在一个示例中,在用户已指示应当移除通信业务流611和通信业务流612之后,可以突出显示通信业务流611和通信业务流612。在其他示例中,微分段应用程序408可以自动确定应当移除通信业务流611和通信业务流612,并向用户指示该确定,以便用户可以确认移除。微分段应用程序408可能够做出这样的确定,因为安全组631和/或安全组633的定义指示两个安全组之间不应发生这样的业务。通信业务流611违反了该定义。此外,即使可以允许安全组632和安全组633之间的通信,通信业务流612也可以是可移除业务流,因为安全组632和安全组633的定义指示仅相同的多层应用程序内的应用程序被允许。通信业务流611和612可移除的其他原因也可以或替代地用于其他示例中。
另外,操作场景600还可以允许用户对显示的其他信息进行改变。例如,用户可以改变一个或更多个应用程序的安全组,或者可以改变放置应用程序的层。响应于每个改变,或响应于多个改变,微分段应用程序408可以改良操作方案600的呈现以考虑改变。例如,用户将应用程序放入不同的安全组现在将显示在该不同的安全组中。同样,也可以显示由于安全组改变而由微分段应用程序408推荐的对可移除业务流的任何改变。
本文包括的描述和附图描绘了要求保护的发明的具体实现方式。出于教导发明原理的目的,已经简化或省略了一些常规方面。另外,可以理解落入本发明的范围内的这些实现的一些变化。还可以理解,上述特征可以以各种方式组合以形成多个实现方式。结果,本发明不限于上述具体实现方式,而是仅由权利要求及其等同物限制。

Claims (20)

1.一种基于在其上运行的应用程序对虚拟计算元件进行微分段的方法,所述方法包括:
识别包括多个虚拟机的一个或更多个多层应用程序,其中所述一个或更多个多层应用程序中的每个应用程序层包括所述多个虚拟机中的至少一个;
维护关于所述一个或更多个多层应用程序的信息,其中所述信息至少指示所述多个虚拟机中的每个虚拟机的安全组;
识别所述多个虚拟机中的虚拟机之间的通信业务流;
至少部分地基于所述信息识别所述通信业务流中的一个或更多个可移除业务流;以及
阻止所述一个或更多个可移除业务流。
2.如权利要求1所述的方法,还包括:
向用户呈现所述一个或更多个可移除业务流;
从所述用户接收应移除所述可移除业务流的确认;以及
其中响应于所述确认,阻止所述可移除业务流。
3.如权利要求2所述的方法,其中呈现所述可移除业务流包括:
呈现图形显示,所述图形显示将所述多个虚拟机中的虚拟机可视地分组到相应的应用程序层和相应的安全组中;以及
显示所述虚拟机之间的所述通信业务流。
4.如权利要求3所述的方法,其中所述图形显示标记所述应用程序层和所述安全组。
5.如权利要求3所述的方法,其中呈现所述可移除业务流还包括:
突出显示所显示的通信业务流的所述可移除业务流。
6.如权利要求1所述的方法,其中阻止所述一个或更多个可移除业务流包括:实现阻止所述一个或更多个可移除业务流的一个或更多个防火墙规则。
7.如权利要求1所述的方法,其中多层应用程序中的每一个包括三层,其中所述三层包括web层、应用程序层和数据库层。
8.如权利要求7所述的方法,其中所述一个或更多个可移除业务流包括:除了所述web层与所述应用程序层之间、所述应用程序层与所述数据库层之间以及外部***与所述web层之间的业务流之外的业务流。
9.如权利要求1所述的方法,其中识别所述通信业务流包括:
在托管所述多个虚拟机的一个或更多个计算***中,识别进出多个虚拟机中的每个虚拟机的通信业务。
10.如权利要求1所述的方法,其中所述信息还包括用于所述一个或更多个多层应用程序中的每一个的标识符。
11.一种用于基于在其上运行的应用程序对虚拟计算元件进行微分段的***,所述***包括:
一个或更多个计算机可读存储介质;
处理***,与所述一个或更多个计算机可读存储介质可操作地耦合;以及
存储在所述一个或更多个计算机可读存储介质上的程序指令,当其由所述处理***读取和执行时,指示所述处理***:
识别包括多个虚拟机的一个或更多个多层应用程序,其中所述一个或更多个多层应用程序中的每个应用程序层包括所述多个虚拟机中的至少一个;
维护关于所述一个或更多个多层应用程序的信息,其中所述信息至少指示所述多个虚拟机中的每个虚拟机的安全组;
识别所述多个虚拟机中的虚拟机之间的通信业务流;
至少部分地基于所述信息识别所述通信业务流中的一个或更多个可移除业务流;以及
阻止所述一个或更多个可移除业务流。
12.如权利要求11所述的***,其中所述程序指令还指示所述处理***:
向用户呈现所述一个或更多个可移除业务流;
从所述用户接收应移除所述可移除业务流的确认;以及
其中响应于所述确认,所述程序指令指示所述处理***阻止所述可移除业务流。
13.如权利要求12所述的***,其中为了呈现所述可移除业务流,所述程序指令指示所述处理***至少:
呈现图形显示,所述图形显示将所述多个虚拟机中的虚拟机可视地分组到相应的应用程序层和相应的安全组中;以及
显示所述虚拟机之间的所述通信业务流。
14.如权利要求13所述的***,其中所述图形显示标记所述应用程序层和所述安全组。
15.如权利要求13所述的***,其中为了呈现所述可移除业务流,所述程序指令还指示所述处理***至少:
突出显示所显示的通信业务流的所述可移除业务流。
16.如权利要求11所述的***,其中为了阻止所述一个或更多个可移除业务流,所述程序指令指示所述处理***至少:
实现阻止所述一个或更多个可移除业务流的一个或更多个防火墙规则。
17.如权利要求11所述的***,其中多层应用程序中的每一个包括三层,其中所述三层包括web层、应用程序层和数据库层。
18.如权利要求17所述的***,其中所述一个或更多个可移除业务流包括:除了所述web层与所述应用程序层之间、所述应用程序层与所述数据库层之间以及外部***与所述web层之间的业务流之外的业务流。
19.如权利要求11所述的***,其中为了识别所述通信业务流,所述程序指令指示所述处理***至少:
使用托管所述多个虚拟机的一个或更多个计算***来识别进出所述多个虚拟机中的每个虚拟机的通信业务。
20.如权利要求11所述的***,其中所述信息还包括用于所述一个或更多个多层应用程序中的每一个的标识符。
CN201780084828.1A 2016-12-22 2017-12-20 虚拟计算元件的微分段 Active CN110214311B (zh)

Applications Claiming Priority (5)

Application Number Priority Date Filing Date Title
US201662437891P 2016-12-22 2016-12-22
US62/437,891 2016-12-22
US15/790,303 US10873565B2 (en) 2016-12-22 2017-10-23 Micro-segmentation of virtual computing elements
US15/790,303 2017-10-23
PCT/US2017/067758 WO2018119164A1 (en) 2016-12-22 2017-12-20 Micro-segmentation of virtual computing elements

Publications (2)

Publication Number Publication Date
CN110214311A true CN110214311A (zh) 2019-09-06
CN110214311B CN110214311B (zh) 2023-07-18

Family

ID=60991611

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201780084828.1A Active CN110214311B (zh) 2016-12-22 2017-12-20 虚拟计算元件的微分段

Country Status (4)

Country Link
US (2) US10873565B2 (zh)
EP (1) EP3542267B1 (zh)
CN (1) CN110214311B (zh)
WO (1) WO2018119164A1 (zh)

Families Citing this family (27)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US10375121B2 (en) * 2016-06-23 2019-08-06 Vmware, Inc. Micro-segmentation in virtualized computing environments
US10536383B2 (en) * 2017-09-19 2020-01-14 Nicira, Inc. Attribute enhancement for handling network packet traffic between micro segmented guests
US11057432B2 (en) * 2018-04-10 2021-07-06 Nutanix, Inc. Creation of security policies using a visual approach
US10812337B2 (en) 2018-06-15 2020-10-20 Vmware, Inc. Hierarchical API for a SDDC
US10942788B2 (en) 2018-06-15 2021-03-09 Vmware, Inc. Policy constraint framework for an sddc
JP7157238B2 (ja) * 2018-08-24 2022-10-19 ヴィーエムウェア, インコーポレイテッド Sddcにおけるマルチセグメントアプリケーションを定義する階層型api
US11086700B2 (en) 2018-08-24 2021-08-10 Vmware, Inc. Template driven approach to deploy a multi-segmented application in an SDDC
US10628144B2 (en) 2018-08-24 2020-04-21 Vmware, Inc. Hierarchical API for defining a multi-segmented application in an SDDC
US11805104B2 (en) 2018-12-14 2023-10-31 Battelle Memorial Institute Computing system operational methods and apparatus
US11743135B2 (en) 2019-07-23 2023-08-29 Vmware, Inc. Presenting data regarding grouped flows
US11340931B2 (en) 2019-07-23 2022-05-24 Vmware, Inc. Recommendation generation based on selection of selectable elements of visual representation
US11436075B2 (en) * 2019-07-23 2022-09-06 Vmware, Inc. Offloading anomaly detection from server to host
US11398987B2 (en) 2019-07-23 2022-07-26 Vmware, Inc. Host-based flow aggregation
US11321213B2 (en) 2020-01-16 2022-05-03 Vmware, Inc. Correlation key used to correlate flow and con text data
CN115380514B (zh) 2020-04-01 2024-03-01 威睿有限责任公司 为异构计算元件自动部署网络元件
US11803408B2 (en) 2020-07-29 2023-10-31 Vmware, Inc. Distributed network plugin agents for container networking
US11863352B2 (en) 2020-07-30 2024-01-02 Vmware, Inc. Hierarchical networking for nested container clusters
US11991187B2 (en) 2021-01-22 2024-05-21 VMware LLC Security threat detection based on network flow analysis
US11785032B2 (en) 2021-01-22 2023-10-10 Vmware, Inc. Security threat detection based on network flow analysis
US11606254B2 (en) 2021-06-11 2023-03-14 Vmware, Inc. Automatic configuring of VLAN and overlay logical switches for container secondary interfaces
US11997120B2 (en) 2021-07-09 2024-05-28 VMware LLC Detecting threats to datacenter based on analysis of anomalous events
US11831667B2 (en) 2021-07-09 2023-11-28 Vmware, Inc. Identification of time-ordered sets of connections to identify threats to a datacenter
US11792151B2 (en) 2021-10-21 2023-10-17 Vmware, Inc. Detection of threats based on responses to name resolution requests
US12015591B2 (en) 2021-12-06 2024-06-18 VMware LLC Reuse of groups in security policy
US11902245B2 (en) 2022-01-14 2024-02-13 VMware LLC Per-namespace IP address management method for container networks
US11848910B1 (en) 2022-11-11 2023-12-19 Vmware, Inc. Assigning stateful pods fixed IP addresses depending on unique pod identity
US11831511B1 (en) 2023-01-17 2023-11-28 Vmware, Inc. Enforcing network policies in heterogeneous systems

Citations (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101410803A (zh) * 2006-01-24 2009-04-15 思杰***有限公司 用于提供对计算环境的访问的方法和***
CN102483707A (zh) * 2009-06-22 2012-05-30 思杰***有限公司 在负载平衡的多核环境中保持源ip的***和方法
CN103038749A (zh) * 2010-07-01 2013-04-10 纽戴纳公司 用于虚拟化及云安全性的***和方法
CN103999052A (zh) * 2011-09-21 2014-08-20 亚马逊技术有限公司 远程进程执行管理
US20140245423A1 (en) * 2013-02-26 2014-08-28 Zentera Systems, Inc. Peripheral Firewall System for Application Protection in Cloud Computing Environments
US20160087859A1 (en) * 2014-09-23 2016-03-24 Chia-Chee Kuan Monitor a data center infrastructure
US20160087861A1 (en) * 2014-09-23 2016-03-24 Chia-Chee Kuan Infrastructure performance monitoring
US20160191463A1 (en) * 2014-12-31 2016-06-30 Symantec Corporation Systems and methods for automatically applying firewall policies within data center applications

Family Cites Families (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CA2467603A1 (en) * 2004-05-18 2005-11-18 Ibm Canada Limited - Ibm Canada Limitee Visualization firewall rules in an auto provisioning environment
US9338134B2 (en) * 2013-03-27 2016-05-10 Fortinet, Inc. Firewall policy management
WO2015108514A1 (en) 2014-01-15 2015-07-23 Hewlett-Packard Development Company, L.P. Security and access control
US9467476B1 (en) 2015-03-13 2016-10-11 Varmour Networks, Inc. Context aware microsegmentation
US10009381B2 (en) 2015-03-30 2018-06-26 Varmour Networks, Inc. System and method for threat-driven security policy controls

Patent Citations (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101410803A (zh) * 2006-01-24 2009-04-15 思杰***有限公司 用于提供对计算环境的访问的方法和***
CN102483707A (zh) * 2009-06-22 2012-05-30 思杰***有限公司 在负载平衡的多核环境中保持源ip的***和方法
CN103038749A (zh) * 2010-07-01 2013-04-10 纽戴纳公司 用于虚拟化及云安全性的***和方法
CN103999052A (zh) * 2011-09-21 2014-08-20 亚马逊技术有限公司 远程进程执行管理
US20140245423A1 (en) * 2013-02-26 2014-08-28 Zentera Systems, Inc. Peripheral Firewall System for Application Protection in Cloud Computing Environments
US20160087859A1 (en) * 2014-09-23 2016-03-24 Chia-Chee Kuan Monitor a data center infrastructure
US20160087861A1 (en) * 2014-09-23 2016-03-24 Chia-Chee Kuan Infrastructure performance monitoring
US20160191463A1 (en) * 2014-12-31 2016-06-30 Symantec Corporation Systems and methods for automatically applying firewall policies within data center applications

Non-Patent Citations (2)

* Cited by examiner, † Cited by third party
Title
KAPIL BAKSHI: "Network considerations for open source based clouds", 《2015 IEEE AEROSPACE CONFERENCE》 *
周晓芬: "云计算虚拟化环境中的安全等级保护", 《信息安全与通信保密》 *

Also Published As

Publication number Publication date
US11706195B2 (en) 2023-07-18
US20180183757A1 (en) 2018-06-28
US20210099425A1 (en) 2021-04-01
WO2018119164A1 (en) 2018-06-28
EP3542267A1 (en) 2019-09-25
US10873565B2 (en) 2020-12-22
EP3542267B1 (en) 2021-04-28
CN110214311B (zh) 2023-07-18

Similar Documents

Publication Publication Date Title
CN110214311A (zh) 虚拟计算元件的微分段
US10333986B2 (en) Conditional declarative policies
EP3399697B1 (en) Operational analytics in managed networks
US20160359911A1 (en) Trusted public infrastructure grid cloud
US11805004B2 (en) Techniques and interfaces for troubleshooting datacenter networks
US20120173728A1 (en) Policy and identity based workload provisioning
JP6661809B2 (ja) 管理対象ネットワークにおける構成項目クラス間の運用上の関連付けの定義及び実行
US11100199B2 (en) Automatically detecting misuse of licensed software
US11693930B2 (en) Remote software usage monitoring and entitlement analysis
US9929969B1 (en) Tenant-based management system and method for distributed computing environments
CN109690545A (zh) Plc虚拟补丁和安全上下文的自动分发
DE102022114391A1 (de) Suchdienst in einem softwaredefinierten Steuerungssystem
DE102022115155A1 (de) Visualisierung eines softwaredefinierten prozesssteuerungsystems für industrielle prozessanlagen
WO2017102035A1 (en) Trust based computing
DE102022114380A1 (de) Sicherheitsdienste in einem softwaredefinierten steuerungssystem
DE102022114542A1 (de) Suchdienst in einem softwaredefinierten steuerungssystem
DE102022115152A1 (de) Visualisierung eines softwaredefinierten prozesssteuerungssystems für industrielle prozessanlagen
DE102022114281A1 (de) Softwaredefiniertes steuerungssystem mit e/a-serverdiensten, die mit containerisierten diensten kommunizieren
DE102022114543A1 (de) Systeme und verfahren zur zuordnung von modulen in einem softwaredefinierten steuerungssystem für industrielle prozessanlagen
DE102022114303A1 (de) Systeme und verfahren zur dynamischen aufrechterhaltung von redundanz und lastausgleich in softwaredefinierten steuerungssystemen für industrielle prozessanlagen
US11494488B2 (en) Security incident and event management use case selection
US11095540B2 (en) Hybrid anomaly detection for response-time-based events in a managed network
US11410101B2 (en) Efficient analysis of user-related data for determining usage of enterprise resource systems
US11283681B2 (en) Enhancing discovery patterns with shell command exit status
Kankola The modern cloud governance model: roles and responsibilities in the cloud centre of excellence function

Legal Events

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