计算环境中的策略实施的制作方法

文档序号:6532624阅读:121来源:国知局
计算环境中的策略实施的制作方法
【专利摘要】实施例可以包括策略引擎电路,后者可以至少部分地执行云计算环境中的一个或多个平台资源管理策略。所述一个或多个策略可以至少部分地基于所述云计算环境的服务布置。所述一个或多个策略可以在所述云计算环境中建立要由相应用户使用的相应的独立计算环境。所述一个或多个策略的执行可以导致所述相应的独立计算环境彼此虚拟隔离并且在减少所述一个或多个策略的情况下防止彼此相互干扰。可以至少部分地经由至少一个管理进程与所述电路的一个或多个应用程序接口的交互来建立所述一个或多个策略。许多修改是可能的。
【专利说明】计算环境中的策略实施【技术领域】
[0001 ] 本公开内容涉及计算环境中的策略实施。
【背景技术】
[0002]在一个常规的布置中,分布式计算系统的资源是在多个用户之间共享的。所述资源是根据从用户服务协议派生的使用策略,利用虚拟化和/或其他(例如基于物理的)技术进行共享的。在该常规 布置中,这样的使用策略要么以集中式的方式通过远离系统中单个相应计算节点的集中式控制机制设置,要么以本地化的方式通过相应本地化的控制机制在每个相应的计算节点设置,但执行可能发生在本地计算节点。在该常规布置中,在这些机制中采用例如虚拟机虚拟交换(vSwitch)进程的软件进程来控制系统中虚拟机与各种基础设施组件的交互。
[0003]遗憾的是,这种常规机制和/或软件(例如vSwitch)进程的使用可能会导致在系统的计算节点中过度的、不一致的、和/或显著波动的中央处理单元(CPU)开销。这可能对CPU和/或计算节点性能产生不利影响(例如增加的延迟和延迟偏差(又称为抖动))。此外,随着网络带宽、网络传输速度、提供的服务、和/或系统中计算节点和/或策略的数目的增加,将难以扩展该常规机制和/或软件进程的使用而不导致不想要的虚拟化处理开销、网络传输损耗的风险、和/或处理延迟的大量增加。
[0004]上述常规布置遭受附加的缺点和/或不足的影响。例如,由于工作负载和/或利用在计算节点中和/或在计算节点之间变化,上述常规系统可能不能够为要做出的服务质量调整提供实时或近实时的良好粒度,和/或提供工作负载和/或资源利用的统计准确的可视性。当遵照用户服务协议,要在每个用户/工作负载的基础上完成对这些工作负载和/或利用的调整和/或可视性时,这一点尤其如此。此外,在该上述常规布置中,对于将系统基础设施中的安全进程与系统计算和/或存储节点中的安全进程进行整合或紧密耦合没有进行深思熟虑。这些附加的缺点和/或不足可能会限制该常规布置的功能和/或效率,和/或提高它的操作和/或实施的复杂度和/或成本。
[0005]这种常规布置的另外一个不足是可能需要显著量的低级编程(例如在系统的各个节点中的每个节点处有许多不同的接口)来对节点的单个行为进行编程,以设法使得它们遵守和/或一致于、和/或实施所述策略和/或用户协议。由于可能涉及的(例如计算、网络、存储、能量、安全资源等等)、独立设置的(例如经由分离的调度器/管理机制)、和/或在平台中和/或其他共享的基础设施组件中它们的操作和/或利用可能会导致冲突或次优的不同类型的基础设施,这个问题可能被加剧。很容易理解,调整这些接口的编程以使得它们与所述策略和/或服务协议一致可能相当有挑战性,尤其是如果(也正是通常有的情况)系统的用户、节点、应用程序、虚拟机、工作负载、资源、策略、和/或服务频繁地变化的话(例如将它们添加到系统中或从系统中删除)。
[0006]提出的一个涉及网络分组的硬件处理的解决方案是在2010年I月20日公布的、外围组件互连(PCI)特别兴趣小组(SIG)的Single Root Input/OutputVirtualization(SR-1OV)and Sharing Specification Revisionl.1 中公开的(以下简称“SR-1OV规范”)。遗憾的是,提出的该解决方案有效地消除了 vSwitch进程能够直接影响硬件处理分组的能力。该方案消除了添加要与虚拟机管理器和/或vSwitch进行协调的本地控制、服务、和/或策略的能力。该方案降低了该常规布置中的处理灵活性和/或服务,和/或可能涉及使用SR-1OV硬件来提供所有这些服务(这可能是不现实的)。
【专利附图】

【附图说明】
[0007]随着下面详细描述的进行,实施例的特征和优势将变得明显,并且参照附图,其中相同的标号表示相同的部分,以及其中:
[0008]图1示出了系统实施例。
[0009]图2示出了实施例的特征。
[0010]图3示出了实施例的特征。
[0011]尽管下面的详细描述将参照所给的示例性实施例进行,但是对于本领域的技术人员而言,其中许多选择、修改和变化将是显而易见的。从而,它旨在所要求的主题被最广泛地看待。
【具体实施方式】
[0012]图1示出了系统实施例100。系统100可以包括可能包括独立计算环境(ICE) 150A到150N和/或策略引擎电路118的云计算环境(CCE) 102。云计算环境可以通信耦合至一个或多个网络51。
[0013]策略引擎电路118可以包含一个或多个(在本实施例中,为多个)应用程序编程接口(API) 154、一个或多个(在本实施例中,为多个)受保护的计算实体和/或存储器空间202和/或一个或多个(在本实施例中,为多个)开关204。例如,一个或多个受保护的存储器空间202可以包含多个受保护的计算实体和/或存储器空间202A到202N。此外,例如,一个或多个开关204可以包含多个开关204A到204N。在本实施例中,受保护的计算实体和/或受保护的存储器空间可以是或包含处理器、存储器和/或其中可能至少部分地未被一个或多个实体(例如一个或多个虚拟机监视器和/或其他进程)披露给未经授权的访问、使用、入侵和/或检查的一个或多个部分。尽管下面的描述将参照计算实体和/或存储器空间202即受保护的存储器空间进行,应当理解在不脱离本实施例的情况下,它们中的一个或多个可能是或包含计算实体。
[0014]另外地或可选地,在不脱离本实施例的情况下,受保护的存储器空间可以用于附加的网络和/或存储处理、和/或其他和/或附加的控制平面数据处理。例如,为了至少部分地(例如一个或多个报头、其他数据、和/或用于层的完整处理所必须的)通过软件来进行处理,该受保护的存储器空间(和/或独立的受保护存储器空间)可以用于对网络分组进行暂时存储,从而至少部分地实施硬件以这种方式当前可能不能够处理的服务和/或协议。
[0015]策略引擎电路118可以至少部分地执行云计算环境102中的一个或多个平台资源管理策略120。一个或多个策略可以至少部分地基于具有云计算环境102的用户106A到106N的(例如相应的)服务布置104A到104N。所述的一个或多个策略120可以是用于和/或可以导致云计算环境102中相应的独立计算环境150A到150N的建立。例如,由电路118对这些一个或多个策略120的至少部分地执行可能至少部分地导致相应的独立计算环境150A到150N(1)在云计算环境102中被实例化,(2)彼此间物理地和/或虚拟地隔离,和/或(3)在减少一个或多个策略120的情况下防止彼此相互干扰。另外地或可选地,本实施例的这些和/或其他特征可以(I)允许和/或促进对每个用户和每个平台的资源消耗的报告,(2)至少部分地基于测量的/期望的资源利用来支持更好的工作负载分配,和/或
(3)可以许可可用资源与可能由要被置于平台上的新的工作负载所利用的已知的/测量的/期望的资源相匹配。这些和/或其他特征可以导致共同托管的(co-hosted)工作负载之中的资源冲突的减少和/或最小化,可以提高平台效率和/或有用性,和/或可以增强遵从用户服务协议的能力。在本实施例中,相应的独立计算环境150A到150N可以由用户106A到106N中的相应用户使用、旨在由用户106A到106N中的相应用户使用、和/或与用户106A到106N中的相应用户相关联。尽管对本实施例的描述将参照作为或包含虚拟的和/或虚拟化的实体的独立计算环境150A到150N进行,在不脱离本实施例的情况下,这样的环境150A到150N中的一个或多个可以是或包含可能将非虚拟化的实体虚拟隔离的其他类型的实体,例如,在物理机中执行的和/或共享的其他和/或附加(例如物理的)基础设施(例如网络和/或存储系统)的多个应用进程。在本实施例中,该计算环境可以至少部分地实施和/或促进,例如但不限于计算、网络、存储、安全、能量、音频/视频/媒体,和/或其他和/或附加处理和/或服务。
[0016]一个或多个策略120可以包含至少部分地经由一个或多个管理进程152与一个或多个应用程序接口 154的交互所建立的多个平台资源管理策略120A到120N。在本实施例中,一个或多个进程152可以至少部分地是或包含在一个或多个虚拟机管理器151中。另外地或可选地,然而,在不脱离本实施例的情况下,一个或多个进程152可以至少部分地不包含在一个或多个虚拟机管理器151中和/或可以是集中式的(例如在云计算环境102中的一个或多个集中式的管理进程/机制121中)。例如,机制121可以是云计算环境102中的单个的、单一的这样的机制。
[0017]在该实施例中,策略可以至少部分的是和/或包括:(I) 一个或多个规则、指令、命令、进程、程序、许可、和/或禁止,和/或(2)至少部分地作为实施一个或多个规则、指令、命令、进程、程序、许可、和/或禁止的结果而可能实现的和/或将要实现的一个或多个目标和/或结果。还是在本实施例中,策略的执行可以至少部分地包含如下的实施和/或执行:(I) 一个或多个规则、指令、命令、进程、程序、许可、和/或禁止,和/或⑵一个或多个目标和/或结果的至少部分的实现。
[0018]在本实施例中,平台可以是或包含一个或多个物理的、逻辑的和/或虚拟的计算实体,例如一个或多个主机。还是在本实施例中,术语主机计算机、主机、服务器、客户端、网络节点和节点可以互换使用,并且可以意味着,例如但不限于一个或多个终端站、移动因特网设备、智能电话、媒体设备、输入/输出(I/o)设备、平板电脑、设施、中间站、网络接口、客户端、服务器、和/或其中的部分。在本实施例中,网络可以是或包含任意机制、手段、形式、和/或其中许可、促进、和/或至少部分地允许两个或多个实体通信地耦合在一起的部分。
[0019]在本实施例中,如果第一实体能够向第二实体发送和/或从第二实体接收一个或多个命令和/或数据,则第一实体可以是“通信耦合”到第二实体的。在本实施例中,数据和信息可以交换使用,并且可以是或包含一个或多个命令(一个或多个程序指令),和/或一个或多个该命令可以是或包含数据和/或信息。还是在本实施例中,指令可以包括数据和/或一个或多个命令。在本实施例中,分组可以是或包含一个或多个符号和/或值。在本实施例中,通信链路可以是或包含至少部分地能够和/或许可至少两个实体为或变为通信耦合的任意机制。
[0020]在本实施例中,“电路”可以包含例如单个的或任何组合的模拟电路、数字电路、硬件电路、可编程电路、协处理器电路、状态机电路、和/或可能包含可以由可编程电路执行的程序指令的存储器。还是在本实施例中,策略引擎电路可以至少部分地是和/或包含至少部分地能够建立和/或执行一个或多个策略、和/或能够促进建立和/或执行一个或多个策略的电路。在本实施例中,处理器、主机处理器、中央处理元件、处理器内核、内核和控制器中的每一个都可以包含各自的电路,所述各自的电路能够至少部分地进行一个或多个算数的和/或逻辑的操作,和/或能够至少部分地执行一个或多个指令,例如,一个或多个(例如物理的)中央处理单元处理器内核、微控制器、微处理器、网络接口控制器、存储控制器和/或其中的部分。在本实施例中,网络接口控制器可以是或包含通信耦合到网络的电路,例如网络设备。这样的网络设备可以至少部分地是集成在主机中的其他电路中或与主机中的其他电路不同。在本实施例中,芯片组可以至少部分地是或包含至少部分地许可一个或多个存储器和一个或多个处理器例如一个或多个存储器集线器的通信耦合的电路。在本实施例中,存储器、缓存和缓存存储器每个可以包含下述类型存储器中的一个或多个:半导体固件存储器、可编程存储器、非易失性存储器、只读性存储器、电子可编程存储器、随机访问存储器、闪存、磁盘存储器、光盘存储器和/或其他或近期开发的电脑可读和/或可写存储器。
[0021]在本实施例中,实体的一部分或子集可以包含全部的或少于全部的实体。在本实施例中,一个集合可以包含一个或多个元素。还是在本实施例中,进程、线程、守护进程、程序、驱动程序、操作系统、应用程序、内核和/或虚拟机监视器,每个可以(I)至少部分地包含,和/或(2)至少部分地导致一个或多个操作和/或程序指令的执行和/或由一个或多个操作和/或程序指令的执行产生。
[0022]在本实施例中,计算环境可以是或包括这样一种电路,其至少部分地能够单独和/或结合一个或多个其他计算环境和/或实体用来至少部分地执行所涉及的一个或多个操作,促进、实施关于和/或包含在一个或多个算数、布尔、逻辑、存储、网络、输入/输出(I/o)和/或其他与电脑相关的操作中。在本实施例中,存储器可以包含易失的和/或非易失的存储器。在本实施例中,云计算环境可以是或包含能够根据一个或多个服务布置提供一个或多个电脑相关的服务的计算环境。在本实施例中,服务布置可以是或包含位于至少一个来接收至少一个服务的实体和至少另外一个用以提供至少一个服务的实体之间的协议和/或合同。在本实施例中,服务可以包含一个或多个功能、操作、手段、参量、许可、担保、禁止、约束、限制、和/或涉及的、使用的由一个或多个计算环境至少部分地产生和/或实施的特征。这样的服务的例子可以包含但不限于计算、网络、存储、I/o、虚拟主机、多媒体、视频、音频、服务质量、安全、功率使用、网络通信路径选择、网络拥塞避免、和/或其他服务。在本实施例中,服务协议服务可以(但是并不需要)涉及和/或至少部分地引申于一个或多个用户和一个或多个服务提供者实体之间的交互。该交互可以至少部分地包含例如对来自一个或多个用户应用程序、虚拟机、可执行图像、需要的用户策略和/或服务协议(例如服务许可证协议)的用户的一个或多个服务提供者实体的规定。这些可以被所述的一个或多个服务提供者实体至少部分地与一个或多个其他策略、条款和/或可能提供更大的粒度和/或细节(例如计费和/或基础设施限制)的服务的条件结合,并且结果的组合可以作为一个或多个策略至少部分地被执行,例如在平台中和/或云计算环境中。
[0023]在本实施例中,用户可以至少部分地是、包含、和/或包括一个或多个操作人员、操作人员的一个或多个组和/或关联、和/或一个或多个进程(例如应用进程),所述一个或多个进程与一个或多个操作人员、操作人员的一个或多个组和/或关联相关联和/或能够直接或间接地由一个或多个操作人员、操作人员的一个或多个组和/或关联所使用。
[0024]在本实施例中,第一实体与第二实体的交互可以与第一实体和第二实体之间的交互交换使用。还是在本实施例中,该交互至少部分的可以是、包含、促进、和/或涉及:(1)由第一实体向第二实体的一个或多个信号、命令和/或数据的提供、提供的开始、和/或提供的请求,和/或(2)第二实体的状态中至少部分地响应于此的一个或多个动作和/或变化。
[0025]例如,在本实施例中,服务布置104A到104N可以是或包含用户106A到106N中的相应用户(在一方面)与可以至少部分地维持、操作、和/或拥有云计算环境102的一个或多个实体(在另一方面)之间的相应的合同。这些合同可以详细说明将被提供给云计算环境102中的用户106A到106N的服务的相应集合和/或服务的相应集合的参数。策略120A到120N可以至少部分地基于这些服务布置104A到104N和/或合同,因此,这些策略120A到120N的至少部分地执行可以至少部分地导致根据用户的相应服务布置104A到104N和/或其中的参量,将这些相应的服务提供给用户106A到106N。
[0026]例如,由电路118进行的策略120A到120N的至少部分的执行可能导致云计算环境102中的独立计算环境150A到150N的实例化。由于被实例化,这些独立计算环境150A到150N可以彼此相互的、虚拟的隔离,和/或可能向可能与环境150A到150N(例如按照它们相应的服务协议)相关联的用户106A到106N中的相应用户提供服务的相应集合。在本实施例中,第一计算环境与第二计算环境之间的虚拟隔离可能导致这些环境中的相应用户使用相应的资源集合,所述资源可能以如下方式与这些相应的计算环境相关联或包含其中:(1)在减少了相应用户的相应服务协议的情况下,可能(例如全部地)与相应用户的相应服务协议一致和/或(例如完全地)不一致,和/或⑵可能不会干扰(例如以对于用户有意义的方式和/或用户可感知的方式)对于可能在环境中至少部分地共享的资源的相应使用。
[0027]例如,环境150A可以包含和/或至少部分地与存储器250A和/或一个或多个资源302A相关联。环境150B可以包含和/或至少部分地与存储器250B和/或一个或多个资源302A相关联。环境150N可以包含和/或至少部分地与存储器250N和/或一个或多个资源302N相关联。由电路118进行的各个策略120A到120N(例如,特别是,至少策略120AU20BU20N)的执行可能至少部分地导致环境150A、150B、150N彼此间(以及包含在环境150A到150N中的其他的独立的计算环境)相互地、虚拟地隔离。例如,环境150A、150B、150N可以彼此虚拟隔离,因此这些环境150A、150B、150N的相应用户106A、106B、106N可以仅仅被许可以以如下方式使用它们相应的资源集合(例如资源302A和302N,和/或存储250A、250B、250N):(1)在减少了相应用户106A、106B、106N的相应服务协议104A、104B、104N的情况下,可能(例如全部地)与协议一致和/或(例如完全地)不一致,和/或(2)可能不会导致对于共享资源(例如共享资源302A)的用户有意义的和/或用户可感知的干扰。
[0028]在本实施例中,一个或多个应用程序接口 154可以包含多个应用程序接口 153A到153N。在本实施例中,应用程序接口可以是或包含一个或多个物理的、逻辑的和/或虚拟的接口,经由所述接口(I)第一实体向第二实体提供可以至少部分地许可和/或促进控制、监视和/或与第二实体至少部分地交互的数据和/或一个或多个信号、命令、指令,和/或(2)第二实体可以提供其他数据和/或一个或多个其他信号,所述数据和信号可以许可和/或至少部分地促进该控制、监视和/或至少部分的交互(例如关于、包含和/或至少部分关于一个或多个可用资源、资源使用情况、服务协议违反等等)。在本实施例中,一个或多个应用程序接口 154和/或接口 153A到153N的一个或多个可以包含(全部或部分地)主机的多个硬件组件中的嵌入式硬件和/或固件,所述主机可以至少部分地包含和/或包含于云计算环境102中。当然,在不脱离本实施例的情况下许多替代方案是可能的。
[0029]在本实施例中,有利地,一个或多个应用程序接口 154和/或接口 153A到153N可以至少部分地允许(以传统技术中没有考虑的方式)用于服务的不同方面和/或包含和/或设置于环境102中的基础设施的策略120和/或120A到120N的编程的协调。有利地,这可以避免有害的和/或次优的性能,所述性能可能由于如果和/或当例如云计算环境包含可以用来对这些服务的不同方面和/或包含于和/或设置于云计算环境中的基础设施分别进行编程的分离的控制平面。例如,如果使用不同的相应控制平面来对计算资源和能量资源进行编程,那么避免对这些资源进行有冲突的编程可能是困难的和/或有挑战性的(例如,可能对这些计算资源进行编程,以使得对这些资源的使用与对这些资源的断电同时发生)。
[0030]此外有利的是,在本实施例中,一个或多个应用程序接口 154和/或接口 153A到153N可以许可未在常规技术中考虑的一种编程抽象。例如,一个或多个接口 154和/或一个或多个接口 153A到153N可以对低层次执行的细节进行抽象,同时仍然许可对于策略120和/或120A到120N的低层次的良好调适,以便大大地缓解和简化对于策略120和/或120A到120N的编程和/或执行,同时许可云计算环境102能够取得更高的(和/或充分优化的)性能。例如,一个或多个应用程序接口 154和/或接口 153A到153N可以许可在逐个服务协议基础上对CPU内核功率状态进行编程,同时避免需要云环境的控制平面来跟踪硬件实际执行的细节和/或从一代到另一代变化的细节。在本实施例中,对电路118和/或CCE102的编程可以利用CCE102和/或与其相关联的其他基础设施的相应组件的用户的标识,和/或相关联的策略的标识。有利地,这可以允许在多个不同的硬件代上使用给定的应用程序接口,而不涉及具有不断变化的低层次细节的云环境控制平面(其利用API),同时允许披露和利用全新的和新兴的较低层次的硬件特征,因此提高了环境102中的利用率、效率和/或服务协议的有效性。
[0031]例如,如图2所示,云计算环境102可以包含一个或多个(在本实施例中为多个)主机IOA到10N。取决于主机IOA到ION的特定的相应配置和/或由主机IOA到ION(和/或由主机IOA到ION的各个的组件)执行的操作,主机IOA到ION可以配置为和/或以这样一种方式操作,以至少部分地根据它们各自的服务协议104A到104N,来提供要提供给用户106A到106N的各自特定的功能、服务和/或操作。因此,取决于主机IOA到ION的特定的各个配置和/或由主机IOA到ION(和/或由主机IOA到ION的各个组件)执行的操作,主机IOA到ION可以配置为和/或以这样一种方式操作,以至少部分地执行策略120A到120N和/或120和/或至少部分地去建立各个独立的计算环境150A到150N,这样所述环境150A到150N可以彼此虚拟隔离并且可以在策略120A到120N和/或120减少的情况下防止彼此相互干扰。
[0032]例如,主机IOA到ION中的每个主机可以包含相应的硬件组件。每个相应的主机中的这些相应的硬件组件可以包含一个或多个相应的主机处理器(HP)、一个或多个相应的芯片组(CS)、一个或多个相应的存储器、和/或一个或多个相应的网络接口控制器(NIC)。应用程序接口 153A到153N、受保护的存储器空间202A到202N和/或开关204A到204N中相应的一个可以至少部分地包含于、复制和/或分布在每个相应主机中的一个或多个相应主机处理器、芯片组、存储控制器、管理资源、其他共享的或可共享的硬件资源和/或网络接口控制器中。例如,主机IOA可以包含一个或多个相应主机处理器12A、一个或多个相应芯片组15A、一个或多个相应存储器21A和/或一个或多个相应的网络接口控制器50A。主机IOB可以包含一个或多个相应主机处理器12B、一个或多个相应芯片组15B、一个或多个相应存储器21B和/或一个或多个相应的网络接口控制器50B。主机ION可以包含一个或多个相应主机处理器12N、一个或多个相应芯片组15N、一个或多个相应存储器21N和/或一个或多个相应的网络接口控制器50N。
[0033]如前所述,应用程序接口 153A到153N、受保护的存储器空间202A到202N和/或开关204A到204N中相应的一个可以至少部分地被包含、复制和/或分布在每个相应主机中的一个或多个相应主机处理器、芯片组和/或网络接口控制器中。因此,例如,在主机IOA中,一个或多个主机处理器12A、一个或多个芯片组15A和/或一个或多个网络接口控制器50A可以包含(整体或部分地)一个或多个相应的应用程序接口(集体或单独地称为块153A)、一个或多个受保护存储器空间(集体或单独地称为块202A)和/或一个或多个开关(集体或单独地称为块204A)。在本实施例中,所述的一个或多个应用程序接口 153A、一个或多个受保护存储器空间202A和/或一个或多个开关204A可以全部(或至少部分地)构成硬件和/或固件。当然,在不脱离本实施例的情况下,这些组件的一些或全部可以至少部分地包含一个或多个相应的软件组件。
[0034]在本实施例中,一个或多个调度机制121可以至少部分地分布在一个或多个CCE102中的多种主机(例如服务器)和/或服务中和/或中间,和/或其他地方。在该布置中,所述的一个或多个调度机制121可以设置在紧邻(例如,物理地、逻辑地和/或虚拟地)可以受一个或多个调度机制121调度的组件、服务、资源等等的位置。可选地,在不脱离本实施例的情况下,一个或多个调度机制121可以包含在统一的调度机制中。在任何一种布置中,所述的一个或多个调度器121可以接收来自这些组件、服务、资源等等涉及和/或指示它们当前相应状态、操作特征、工作负载、用户等等的信息,并且可以利用这些信息来做调度决定。用于CCE102中的平台上的基础设施的多种方面的策略的这种紧密合作和/或协调可以许可和/或促进更好的调度协调(例如在基础设施资源的分配/放置/调度使用中)。此外,上述邻接的使用可以将风险降低和/或最小化,所述风险为:在紧邻的时间上利用的资源,可能会被放置得彼此相对较远和/或受相关的通信带宽限制。[0035]除此之外,例如,在主机IOB中,一个或多个主机处理器12B、一个或多个芯片组15B和/或一个或多个网络接口控制器50B可以包含(整体或部分地)一个或多个相应的应用程序接口(集体或单独地称为块153B)、一个或多个受保护存储器空间(集体或单独地称为块202B)和/或一个或多个开关(集体或单独地称为块204B)。在本实施例中,所述的一个或多个应用程序接口 153B、一个或多个受保护存储器空间202B和/或一个或多个开关204B可以全部(或至少部分地)构成硬件和/或固件。当然,在不脱离本实施例的情况下,这些组件的一些或全部可以至少部分地包含一个或多个相应的软件组件。
[0036]除此之外,例如,在主机ION中,一个或多个主机处理器12N、一个或多个芯片组15N和/或一个或多个网络接口控制器50N可以包含(整体或部分地)一个或多个相应的应用程序接口(集体或单独地称为块153N)、一个或多个受保护存储器空间(集体或单独地称为块202N)和/或一个或多个开关(集体或单独地称为块204N)。在本实施例中,所述的一个或多个应用程序接口 153N、一个或多个受保护存储器空间202N和/或一个或多个开关204N可以全部(或至少部分地)构成硬件和/或固件。当然,在不脱离本实施例的情况下,这些组件的一些或全部可以至少部分地包含一个或多个相应的软件组件。
[0037]在本实施例中,应用程序接口 153A到153N和/或154可以许可一个或多个管理进程152和/或VMM进程151 (和/或一个或多个未显示的vSwitch进程,如果在系统100中存在的话)能够(I)识别相关电路(例如在CCE102中)的存在和性能,和/或协调相关电路的使用,和/或⑵经由接口 153A到153N和/或154向电路118提供一个或多个授权命令和/或数据。这可能至少部分地导致电路118以全部地和完全地至少部分地实施(和/或不以任何减损或矛盾的方式)策略120A到120N的方式,来至少部分地控制、检测、和/或修改一个或多个受保护的存储器空间202A到202N和/或202、开关204A到204N和/或204、主机处理器12A到12N、芯片组15A到15N和/或主机IOA到ION的相应配置和/或操作和/或存储于其中的数据。类似的,经由一个或多个接口 154和/或153A到153N提供这样一个或多个授权命令和/或数据可能至少部分地导致电路118修改(以授权的方式)策略120A到120N中的一个或多个(和/或环境102的上述组件的一个或多个相应的配置和/或操作),以便落实和/或实施对一个或多个服务布置104A到104N的一个或多个授权的改变(如果它们发生的话)。策略120A到120N和/或120可以针对相应的独立计算环境150A到150N中的每一个定义策略,所述策略可以至少部分地涉及、执行、包括、引申于和/或促进例如主机/主机处理器工作负载的最大或最小许可的、商定的和/或可接受的水平、工作负载共享、服务质量、安全、功率利用、存储,存储管理特征、I/O服务、I/O服务管理特征、网络拥塞避免、和/或上述的(例如在逐个服务协议基础上)控制平面的编程协调和/或抽象。可选地或可替代地,策略120A到120N和/或120可以针对相应的独立计算环境150A到150N中的每一个定义策略,所述策略至少部分地涉及、执行、引申于和/或促进例如该控制平面编程协调和/或抽象。例如,如果已经将给定的工作负载放置在一个或多个主机IOA到ION上,但是其后这些一个或多个主机IOA到ION不能满足或完全执行策略120和/或120A到120N中的一个或多个,则电路118可以根据这些策略120A到120N,来调整(例如通过以集成和/或协调的方式通知一个或多个主机IOA到ION的相应控制平面)工作负载的放置,以使得更充分地满足和/或执行该策略120和/或120A到120N。
[0038]除此之外,有利地,在本实施例中,电路118可以根据这些策略120和/或120A到120N来协调和/或控制(在冲突和/或在其他情况下)通信和/或网络路径选择(例如当经由一个或多个网络51进行通信时使用)。例如,如果多个这样的路径是可用的,这些可以由电路118和/或直接由一个或多个这样的主机IOA到ION进行选择和/或改变(例如通过通知中央控制平面该冲突,例如在一个或多个给定的主机或网络基础设施中)。这可以选择和/或改变可以进行的和/或执行的资源共享的方式和/或其他参量。
[0039]例如,通过根据策略120A到120N和/或120来适当地配置和/或操作开关204A到204N和/或204和/或受保护的存储器空间202A到202N,向和/或介于主机IOA到ION和/或可能驻留在主机系统存储器21A到21N中的多个虚拟机(VM)进程282A到282N、操作系统进程32A到32N、用户106A到106N和/或用户应用进程280A到280N提供单独的硬件执行的虚拟通信电路路径和/或专用存储器空间,使得以前面讨论的方式提供相应的独立计算环境150A到150N是可能的。此外,通过这样做,还可能通过主机IOA到ION和/或多个虚拟机进程282A到282N、操作系统进程32A到32N、用户106A到106N和/或用户应用进程280A到280N,以安全的方式、利用降低的(在一些情况下接近于O)主机处理器软件处理开销,来限制和/或许可接入(在硬件层面)到云计算环境102中的网络连通性、月艮务、存储和/或I/O。还可能将安全主机与另外一个过度共享的网络基础架构进行耦合,以便为了安全地共享数据、共享安全服务、控制数据的位置或处理的位置、以及为了独立网络或存储安全配置需要的潜在消除去扩展主机安全域,与主机安全性不相交,因此降低了所有权的全部开销。有利地,这些虚拟通信路径和/或专用存储器空间还可以建立在硬件层面和/或在硬件层面执行(例如,不是在虚拟开关的情形下在软件层面和/或经由软件层面进行),从而在本实施例中提高了安全性和处理速度。当然,这样的通信路径和/或专用存储器空间可能不是静态分配和/或确定的,而可以是动态分配和/或确定的,或者此外可替代地,以静态和/或动态分配的某种组合来分配和/或确定的。在不脱离本实施例的情形下,许多变化是可能的。
[0040]例如,有利地,在本实施例中,接口 153A到153N和/或154可以构成公共编程接口,该公共编程接口允许包含在云计算环境102中的环境150A到150N、主机IOA到10N、资源和/或存储中的每一个、一个或多个和/或全部的直接编程。该编程可以经由这些接口153A到153N和/或154中的任意一个进行。有利地,这可以提供公共的、集中式的和/或统一的编程接口,该接口可以被一个或多个授权的进程(例如,VMM,管理,和/或未显示的vSwitch进程)用来通过系统100和其中的每个节点和/或资源来设置和/或应用通用的、一致的和/或完全协调的策略。这可以许可对系统100中物理的和/或虚拟资源的无冲突地(或实质上无冲突地)共享,否则(例如由于它们自身的性质)它们中间和/或一个或多个主机的多个工作负载中可能会有冲突。
[0041]此外有利地,在本实施例中,在经由接口 153A到153N和/或154中的一个或多个对策略进行编程之后,策略的实施和/或执行可以全部(或基本上)通过硬件(例如电路118)进行。然而,该策略可以由硬件执行和/或实施的程度可以由策略自身来建立和/或指定。这可以将这些策略的执行和/或实施从VMM、管理和/或vSwitch进程中卸载到硬件,同时仍然许可该进程指定、改变、适应和/或最终控制该执行和/或实施。有利地,这可以许可该实施例来展示和/或提供(I)与其中由软件(例如由vSwitch进程)进行策略执行和/或实施的系统所展示和/或提供的灵活性和/或服务相比类似的(或更好的)灵活性和/或服务,以及⑵与使用SR-1OV规范的系统所展示和/或提供的性能相比类似的(或更好的)性能。
[0042]特别是,本实施例中提供的灵活性和集中式编程/控制可能优于由使用vSwitch的系统所提供的编程/控制,特别是如果对策略的修改是理想的时,例如如果系统用户、节点、应用程序、虚拟机、工作负载、资源、策略和/或服务发生变化(例如由于将它们加到系统中或从系统中删除)。在该情况下,一个或多个授权的进程(例如VMM、管理和/或未显示的vSwitch进程)可以经由一个或多个接口 153A到153N和/或154来至少部分地对这些策略中的一个或多个进行重新编程,以反映该变化。可选地或可替代地,在不脱离本实施例的情况下,在一个或多个计算实体和/或存储器空间202A到202N中驻留的和/或执行的一个或多个未显示的进程和/或程序扩展可以经由一个或多个接口 153A到153N和/或154来至少部分地对这些策略中的一个或多个进行重新编程,以反映该变化。如果该变化发生,同时所导致的工作负载变化中所涉及的主机中的一个或多个主机正在运行(例如在热迁移的情况下),则至少部分地调整这些策略,以反映新的累积的和/或单个工作负载(和/或其他的)的需求和/或以影响这些主机中的上述工作负载可能分布到的主机(例如为了最优化资源利用和/或符合服务协议)。
[0043]此外,可以保护接口 153A到153N和/或154、存储器空间202A到202N和/或202和/或开关204A到204N和/或204以避开未授权的操作系统和/或虚拟机/进程交互。例如,如果一个或多个操作系统进程32A到32N、虚拟机进程282A到282N、应用进程280A到280N、VMM进程151和/或管理进程152试图(经由一个或多个接口 154)对策略120A到120N和/或120中的一个或多个,和/或对开关204A到204N、204和/或存储器空间202A到202N、202中的一个或多个的相应配置和/或操作进行一个或多个未授权的改变,则一个或多个接口 154和/或电路118可以拒绝所述一个或多个未授权的改变。在本实施例中,未授权的改变可以包含的改变可以是(I)与由管理者建立的一个或多个许可和/或参量相反,和/或(2)未被验证为符合该许可和/或参量。该许可和/或参量可以包含例如全球(例如云计算环境范围内的)资源和/或策略冲突解决/使用规则,后者确保策略和/或策略变化彼此不冲突,可以是根据云计算环境的容量等等。另外地或可选地,在本实施例中,如果所述变化将负面地影响一个或多个当前服务协议的承诺,则该许可和/或参量可以阻止和/或拒绝对给定策略的变更(和/或例如对于一个或多个工作负载、应用程序、VM等的增加)。
[0044]另外地或可选地,在本实施例中,只有受信任的实体(例如电路118、虚拟机管理器和/或一个或多个相关的控制进程(例如图1所示的一个或多个调度/管理机制121))可以能够修改一个或多个策略120和/或120A到120N。从而,在本实施例中,给定的用户和/或虚拟机可以被禁止(由于不被信任)能够修改一个或多个策略120和/或120A到120N。因此,如果该布置出现在本实施例中,则策略120和/或120A到120N可以存储在单个受保护的存储器空间,例如,在主机IOA到ION中的单独一个中。在本实施例中,一个或多个机制121可以至少部分地是或包含一个或多个进程,可以由至少部分地被包含在云计算环境102和/或主机IOA到ION中的一个或多个主机中的例如电路118和/或一个或多个组件来至少部分地执行上述进程。另外地或可选地,一个或多个机制121可以被包含在(全部地或部分地)硬件中或被硬件(例如电路118)所包含。[0045]多种有利的使用模式可以由本实施例计划。例如,通过以上述的方式经由一个或多个接口 154适当地控制电路118和/或其中的一个或多个组件,可以许可从一个或多个网络51到计算环境150A到150N中的一个或多个相应计算环境的、对于一个或多个相应分组的一个或多个相应传输TTl到TTN至少部分地发生(或拒绝发生)。该许可可以在逐个传输的(和/或另外地或可选地基于逐个CPU内核、逐个源、逐个分组、逐个数据流、逐个独立计算环境,等等)基础上授予(或者在情况可能的情况下拒绝),至少部分地基于(I)目的为(例如由于由各个的传输接入)接收一个或多个相应的传输TTl到TTN的环境150A到150N中的一个或多个相应环境是否由一个或多个策略120A到120N授权进行上述传输(例如为了和/或用于接收一个或多个相应的传输TTl到TTN),和/或⑵由电路118和/或其中的一个或多个组件进行的对该分组、数据流和/或传输的检查,以用于与一个或多个该策略的参量进行比较。
[0046]另外地或可选地,通过以上述的方式经由一个或多个接口 154适当地控制电路118和/或其中的一个或多个组件,可以许可从计算环境150A到150N中的一个或多个相应计算环境到一个或多个网络51的、对于一个或多个相应分组的一个或多个相应传输TFl到TFN至少部分地发生(或拒绝发生)。该许可可以在逐个传输的(和/或另外地或可选地基于逐个CPU内核、逐个源、逐个分组、逐个数据流、逐个独立计算环境,等等)基础上授予(或者在情况可能的情况下拒绝),至少部分地基于(I)从其发送一个或多个相应的传输TTl到TTN的环境150A到150N中的一个或多个相应环境是否由一个或多个策略120A到120N授权进行上述传输(例如为了和/或用于发出一个或多个相应的传输TTl到TTN),和/或(2)由电路118和/或其中的一个或多个组件进行的对该分组、数据流和/或传输的检查,以用于与一个或多个该策略的参量进行比较。
[0047]另外地或可选地,在不脱离本实施例的情况下,对传输TTl到TTN和/或TFl到TFN中的一个或多个的许可的授予或拒绝可以根据一个或多个策略120A到120N和/或120而至少部分地被延迟、重新优先化、和/或重新调度。此外另外地或可选地,根据一个或多个策略120A到120N和/或120,将传输TTl到TTN和/或TFl到TFN中的一个或多个至少部分地发给一个或多个受保护的存储器空间以用于附加的处理(例如用于硬件输送管道中不是当前可用的服务,例如安全和/或隧道机制)。该处理之后,可以将传输TTl到TTN和/或TFl到TFN中的一个或多个传递到一个或多个vSwitch进程,和/或可以将其发送到一个或多个受保护的存储器空间,并且从此发送到电路118以用于传递到一个或多个VM或应用程序。
[0048]其他有利的使用模式也是可能的。例如,当由适当控制的电路118和/或其中的一个或多个组件经由一个或多个接口 154以上述方式执行时,一个或多个策略120A到120N和/或120可以在云计算环境102中至少部分地建立和/或定义一个或多个(在本实施例中为多个)虚拟计算区260A到260N(参见图3)。相应计算区260A到260N中的每一个可以包含一个或多个相应的服务器264A到264N,所述服务器可以包含一个或多个相应的虚拟机262A到262N。这些一个或多个服务器264A到264N和/或虚拟机262A到262N可以提供一个或多个相应的服务(例如在云计算环境102内和/或经由去往环境102外的一个或多个未显示的服务接受者的一个或多个网络51) SI到SN。在本实施例的该使用模式中,可以至少部分地根据和/或基于一个或多个相应的策略270A到270N,来至少部分地管理、控制、监控和/或建立这些一个或多个服务SI到SN。这些一个或多个相应的策略270A到270N可以在每个相应的区260A到260N之内建立和/或为每个相应的区260A到260N建立,和/或与每个相应的区260A到260N相关联,和/或除了策略120。有利地,这可以许可在环境102 (例如利用主机IOA到ION的组件)内实施虚拟计算区260A到260N,其可以至少部分地基于一个或多个策略270A到270N在环境102内部或外部实施和/或提供服务,其中所述一个或多个策略270A到270N可以不同于其他策略120和/或与其他策略120分开管理,所述策略120用来定义和/或建立云计算环境的用户环境150A到150N。
[0049]在本实施例中,尽管图3示出了服务器可以包含一个或多个虚拟机,但是可选地,在不脱离本实施例的情况下,虚拟机可以至少部分地存在于多个服务器中。在不脱离本实施例的情况下许多备选方案是可能的。
[0050]因此,实施例可以包括可以至少部分地执行云计算环境中一个或多个平台资源管理策略的策略引擎电路。一个或多个策略可以至少部分地基于云计算环境的服务布置(例如具有用户)。一个或多个策略可以在云计算环境中建立可以被相应用户使用的相应的独立云计算环境。一个或多个策略的执行可以导致相应的独立计算环境彼此虚拟隔离并且在减少一个或多个策略的情况下防止彼此相互干扰。可以至少部分地经由至少一个管理进程与电路的一个或多个应用程序接口的交互来建立一个或多个策略。一个或多个策略的执行还可以至少部分地导致:(I)至少部分地分配云计算环境中的一个或多个工作负载,(2)至少部分地协调云计算环境中的资源分配;和/或(3)由云计算环境中的一个或多个调度机制(例如一个或多个调度机制121,或单个调度机制)来至少部分地协调资源分配。一个或多个工作负载可以至少部分地与一个或多个策略相关联,和/或一个或多个工作负载的分配可以至少部分地基于一个或多个策略和/或云计算环境的反馈信息。
[0051]在本实施例中,一个或多个策略可以在一个或多个物理主机上和/或经由一个或多个物理主机建立,经由与一个或多个云计算环境调度、管理和/或执行机制(例如机制121)的交互建立。当被执行和/或实施时,该策略可以能够建立、提供和/或影响云的基础设施和/或服务(例如网络设备,存储设备等等),和/或可能导致(I)来自基础设施、资源、主机和/或服务的反馈信息(例如资源使用情况、可用性和/或资源/策略/冲突/竞争情报)的聚集,和/或(2)至少部分地基于该反馈信息和/或策略120和/或120A到120N的工作负载的分配和/或修改。
[0052]因此,在本实施例中,电路118可以能够向一个或多个控制和/或执行资源供应、分配和/或修改的VMM(和/或中央控制的或分配的云环境调度/管理)进程(例如一个或多个调度/管理机制121)提供硬件辅助,例如根据一个或多个策略。有利地,在本实施例中,作为使用电路118的至少部分的结果,在建立和/或维持独立的计算环境和/或提供云服务时,可能涉及有效降低的和/或基本恒定的CPU(和/或CPU内核)处理开销量。确实,在本实施例的至少某些实施中,该CPU处理开销的量基本上为O。有利地,这可以许可该实施例展示充分提高的CPU、主机和/或服务器性能。此外有利地,这可以许可该实施例随网络带宽、网络传输速度和/或主机、用户和/或策略数目的增加而更容易地和/或更有效率地扩展,而不用遭受虚拟化处理开销、网络传输损耗的风险和/或处理延迟不期望的大的增长的不利影响。
[0053]此外有利地,在本实施例中,至少部分地作为使用电路118的结果,可以用以计算和I/o服务的云计算环境102中所有主机资源的已知部分可能涉及建立和/或维持计算环境和/或提供云服务。有利地,在本实施例中,主机IOA到ION可以被配置来被多个用户根据它们各个的服务协议使用,例如通过将策略120和/或120A到120N披露给主机IOA到10N,从而根据策略120和/或120A到120N的资源使用的执行可以在平台层次“自动地”(例如不需要实时软件参与)发生,但是要在本地(例如虚拟机管理器)和/或远程(例如云环境管理)软件控制下(由一个或多个机制121至少部分地提供)。
[0054]此外有利地,作为使用电路118用于策略的执行和维持本实施例的计算环境之间的隔离的至少部分结果,本实施例可以能够当工作负载在主机中和/或主机之间变化时,提供实时的或近实时的良好粒度的服务质量调整。此外有利地,在本实施例中电路118许可对作为整体的云环境和单个主机以及其中的单个组件的安全考虑(例如在硬件层面)的整合和/或紧密耦合。有利地,这可以许可该实施例获得提高的功能和/或效率,和/或降低其操作和/或实施的复杂度和/或开销。
[0055]此外有利地,在本实施例中,硬件开关204A到204N和/或204可以许可与网络接口控制器50A到50N中的一个或多个和/或其他云计算环境的其他组件的灵活直接的基于硬件的通信(根据一个或多个策略),而不是经由一个或多个虚拟开关(vSwitch)进行通信。这可以大大地提高控制和/或与网络接口控制器和/或其他组件通信的速度和效率,同时在硬件层面集成进行该控制和/或通信的策略的执行。
[0056]另外地或可选地,在本实施例中,如果涉及实施关于分组的给定策略的所有服务和电路是可用的,则电路118可以“自动地”实施该策略,并且可以指示分组去往或来自(如适用)涉及该处理的实体(例如虚拟存储器管理器和/或一个或多个虚拟机和/或应用进程,是否由虚拟存储器管理器控制或其他方式)。相反地,如果涉及实施给定策略的服务的一个或多个和/或电路是不可用的,则分组可以经历如下的一个或多个反复:一个或多个受保护存储器空间的软件处理,并且之后,分组可以被提供回给电路118以用于交付给适当的实体用于进一步的处理。在上述内容中,电路118可以从vSwitch进程卸载,同时受vSwitch进程、涉及上述进程的系统100的组件之间的分组的路由/转发的控制(至少部分地)。涉及上述处理的一个或多个主机IOA到ION可以将它们的容量披露给vSwitch、虚拟机管理进程和/或一个或多个调度机制(和/或其他未显示的控制器),并且vSwitch进程可以披露该策略和标识一个或多个相应的虚拟机,以在策略的基础上处理该分组。这许可一个或多个主机IOA到ION对相应的分组实施适当的策略,和/或实施其他服务。
[0057]另外地或可选地,在不脱离本实施例的情况下,硬件和软件控制可以至少部分地共存于一个或多个相同平台(例如主机)中的操作的混合模式中。在该情况下,可以通知硬件和软件控制机制虚拟机、应用程序、服务、进程等等中的变化,所述虚拟机、应用程序、服务、进程等等对于该平台、平台CPU和/或CPU内核是紧密相关的、置于其中的、分配给它的和/或由之执行的。例如,由于虚拟机是被动态调度以在给定的CPU内核上运行并且之后被删除,因此一个或多个VSwitch进程可以向电路118提供其及时的指示。另外地或可选地,一个或多个vSwitch进程可以指示电路118以控制虚拟机的子集,同时虚拟机的另一个子集可以由软件控制。一个或多个vSwitch进程可以根据策略120将资源、用户、虚拟机和/或由软件控制的应用进程的累计份额通知电路,同时允许电路118来控制其剩余。
[0058]此外有利地,在本实施例中,鉴于利用相对的简易性和速度可以检测(例如通过电路118)本实施例中变化的环境和/或至少部分地由于相同原因而调整策略,随着工作负载和/或使用情况在计算节点中和/或之间变化,本实施例可以能够为要做出的服务质量的调整提供实时或近实时的良好粒度,和/或对于工作负载和/或资源利用的统计准确的可视性。当根据用户服务协议,对这些工作负载和/或利用的调整和/或可视性是在每个用户/工作负载基础上完成时,这一点尤其如此。此外有利地,在本实施例中,做出该调整所涉及的编程的量可以大幅减少和/或可以由统一的但分布式的控制接口进行。
[0059]其他的修改也是可能的。例如,取决于特定的实施,一个或多个虚拟开关可以同开关204A到204N和/或204 —起使用。除此之外,在不脱离本实施例的情况下,数字、类型和/或主机IOA到10N、云环境102、环境150A到150N、计算区260A到260N和/或服务器264A到264N(和/或其中包含的组件的)的配置都可以变化。另外地或可选地,环境102中的网络接口控制器中的一个或多个控制器可以能够进行协议和/或其他网络连接处理的无状态卸载。
[0060]另外地或可选地,在本实施例中,分组处理可以至少部分地在硬件中开始,但是可以至少部分地在软件中实施和/或完成。例如,在本实施例中,电路118和/或一个或多个开关204A到204N可以能够至少部分地实施一个或多个分组处理特征和/或功能。这些特征和/或功能可以包含一个或多个物理的和/或虚拟的功能和/或经由一个或多个物理的和/或虚拟的功能调用。例如,这些一个或多个物理的和/或虚拟的功能可以包含:相应的服务质量、安全、转换、路由和/或分组验证功能,这些功能可以在每个策略、分组流、虚拟机和/或服务协议的基础上关联到和/或分配给相应的分组流、虚拟机和/或服务协议。例如,一个或多个开关204A到204N可以在相应的专用存储器202A到202N中至少部分地维持一个或多个未显示的队列、查询表和/或其他数据结构,其可以存储和/或关联各个接收到的分组和/或与一个或多个相关的各个的分组流一起传输的分组,产生和/或接收虚拟机、服务和/或分组将要经历的(或已经经历的)处理,服务的质量和/或其他参量等可以在一个或多个策略120A到120N和/或120中指定(至少部分地)。一个或多个开关204A到204N可以标识(例如至少部分地基于报头、封装和/或包含在各个分组内的其他信息、和/或一个或多个策略120A到120N和/或120)分组将要经历的各个的处理,并且可以处理和/或路由所述分组以确保它们经历该处理。例如,给定的分组可以在一个或多个开关204A到204N中最初进行硬件处理(根据策略120A到120N和/或120)和/或卸载(未显示)例如包含在一个或多个资源302A到302N (—个或多个未显示的网络接口控制器)中的硬件。此后,如果合适,一个或多个开关204A到204N可以路由给定的分组到一个或多个附加的实体以处理给定的分组。例如,这样一个或多个附加实体可以在一个或多个受保护的空间202A到202N内和/或虚拟机管理器内包含一个或多个软件进程(未显示)。此后,一个或多个开关204A到204N可以直接将给定的分组路由到它的目的虚拟机或其他目的实体,要么在云环境102内要么在一个或多个网络51内。有利地,经由硬件处理可以提供提高的分组处理效率,同时经由软件维持处理的灵活性和丰富性。在本实施例中,VM可能会被告知由如下接收和传输的数据,例如(I) 一个或多个中断,(2)直接提供给VM(当VM可能被调度去运行和指示内核亲和力时,可选地使用提供给电路118的信息)的一个或多个中断,和/或(3)不提供中断,但是,例如使用该信息并且涉及VM和/或电路118定期检查处理队列的状态。[0061]许多其他修改是可能的。例如,本实施例的前述技术可以应用到没有虚拟化的单个物理主机中(至少相对于本实施例的特征)。在该单个主机中,一个或多个未显示的应用程序可以提供类似于由一个或多个虚拟机在虚拟化环境中提供的角色。
[0062]其他修改也是可能的。例如,电路118可以能够至少部分地测量对各个资源的使用情况(例如在每个用户的基础上)。该测量可以用来至少部分地促进对一个或多个各个的策略和/或各个用户的策略需求进行更新和/或修改。例如,可以通知服务提供商和/或用户该测量和/或其他由此产生的数据,以至少部分地促进修改策略的建立,所述修改策略可以更好地适应实际测量的使用模式和/或用于更有效的工作负载分配。
[0063]另外地或可选地,一个或多个vSwitch进程可以能够至少部分地向电路118发出一个或多个命令,所述命令导致电路118至少部分地根据相关策略至少部分地处理基于每个流、流组、VM和/或用户的业务量。它还可以导致电路118操作在这样一种操作模式,其中数据可以是在一个或多个受保护的存储器空间中,和/或一个或多个指令可以在该空间中执行,以促进对业务量的进一步处理,并且此后,可以将业务量发送到电路以用于进一步的处理。它还可以启动部分硬件卸载模式,其中对业务量的某些处理可以在硬件中执行(利用或不利用受保护的存储器),并且此后,可以将业务量发送到一个或多个vSwitch进程。
[0064]因此,在本实施例中,考虑了多种使用模式。例如,业务量的处理可以最初至少部分地由硬件提供,并且此后可以由电路118转发给软件以用于进一步处理,并且此后可能发送回硬件以用于附加的处理。另外地或可选地,本实施例的操作可以根据策略120进行和/或紧密耦合到策略120。除此之外另外地或可选地,可以提供至少部分地可能不受一个或多个VMM进程控制的一个或多个受保护的存储器空间。此外另外地或可选地,在许可由一个或多个VMM进程处理之前,电路118可以能够至少部分地许可业务量和/或其他数据最初由不是所述一个或多个VMM进程的一部分的软件进行处理。
[0065]但其他修改是可能的。从而,本实施例应当被视为具有包含所有这些备选方案、修改和变化的最宽范围。
【权利要求】
1.一种装置,包括: 策略引擎电路,用于至少部分地执行云计算环境中的一个或多个平台资源管理策略,所述一个或多个策略至少部分地基于所述云计算环境的服务布置,所述一个或多个策略在所述云计算环境中建立要由相应用户使用的相应的独立计算环境,所述一个或多个策略的执行导致所述相应的独立计算环境彼此虚拟隔离并且在减少所述一个或多个策略的情况下防止彼此相互干扰,至少部分地经由至少一个管理进程与所述电路的一个或多个应用程序接口的交互来建立所述一个或多个策略; 所述一个或多个策略的执行至少部分地导致下面操作中的一个或多个: 至少部分地分配所述云计算环境中的一个或多个工作负载,所述一个或多个工作负载至少部分地与所述一个或多个策略相关联,所述分配至少部分地基于所述一个或多个策略和所述云计算环境的反馈信息; 至少部分地协调所述云计算环境中的资源分配;以及 由所述云计算环境中的调度机制来至少部分地协调所述资源分配。
2.根据权利要求1所述的装置,其中: 所述一个或多个应用程序接口至少部分地被包括在所述云计算环境中的主机的芯片组和主机处理器中的至少一个中;并且 所述至少一个管理进程被包括在所述云计算环境中的虚拟机管理器和所述调度机制中的至少一个中。
3.根据权利要求2所述的装置,其中: 所述电路包括所述芯片组和所述主机处理器中的至少一个中的至少一个存储器空间和至少一个开关;并且 所述存储器空间受到保护以避开未授权的操作系统和虚拟机管理环境的交互。
4.根据权利要求1所述的装置,其中: 所述相应的用户根据所述一个或多个策略,至少部分地共享一个或多个资源;并且所述一个或多个策略的所述执行导致所述相应的独立计算环境之间的完全的虚拟隔离和无干扰。
5.根据权利要求1所述的装置,其中: 所述一个或多个策略定义了要在所述相应的独立计算环境中使用的相应资源集;并且所述一个或多个策略针对所述相应的独立计算环境中的每一个,定义了与服务质量、安全、功率使用、网络通信路径选择、网络拥塞避免、存储、输入/输出服务、存储器、以及主机处理器相关的策略。
6.根据权利要求1所述的装置,其中: 所述一个或多个应用程序接口被至少部分地包括在下列中: 所述云计算环境中的至少一个主机的芯片组和主机处理器; 所述至少一个主机的网络设备;并且 所述一个或多个应用程序接口允许所述一个或多个策略至少部分地被修改。
7.根据权利要求6所述的装置,其中: 所述云计算环境包括包含所述至少一个主机在内的多个主机; 所述多个主机包括相应芯片组、相应主机处理器、以及相应网络设备;所述电路包括所述相应芯片组中的相应应用程序接口、所述相应主机处理器、以及所述相应网络设备,以允许经由所述接口来建立所述一个或多个策略;并且所述一个或多个策略用来在所述的云计算环境中建立计算区; 每个相应计算区包括一个或多个相应的虚拟机,其中所述虚拟机包括相应服务器以提供一个或多个相应服务;并且 根据建立在所述相应区中的一个或多个其他相应策略来管理所述一个或多个相应服务。
8.根据权利要求6所述的装置,其中: 至少部分地基于所述计算环境中的一个或多个计算环境是否由所述一个或多个策略授权进行相应传输,来至少部分地允许去往所述计算环境中的所述一个或多个计算环境的相应传输以及来自所述计算环境中的所述一个或多个计算环境的其他的相应传输。
9.一种方法包括: 至少部分地执行云计算环境中的一个或多个平台资源管理策略,所述一个或多个策略至少部分地基于所述云计算环境的服务布置,所述一个或多个策略在所述云计算环境中建立要由相应用户使用的相应的独立计算环境,所述一个或多个策略的执行导致所述相应的独立计算环境彼此虚拟隔离并且在减少所述一个或多个策略的情况下防止彼此相互干扰,至少部分地经由至少一个管理进程与所述电路的一个或多个应用程序接口的交互来建立所述一个或多个策略; 所述一个或多个策略的执行至少部分地导致下面操作中的一个或多个: 至少部分地分配所述云计算环境中的一个或多个工作负载,所述一个或多个工作负载至少部分地与所述一个或多个策略相关联,所述分配至少部分地基于所述一个或多个策略和所述云计算环境的反馈信息; 至少部分地协调所述云计算环境中的资源分配;以及 由所述云计算环境中的调度机制来至少部分地协调所述资源分配。
10.根据权利要求9所述的方法,其中: 所述一个或多个应用程序接口至少部分地被包括在所述云计算环境中的主机的芯片组和主机处理器中的至少一个中;并且 所述至少一个管理过程被包括在所述云计算环境中的虚拟机管理器和所述调度机制中的至少一个中。
11.根据权利要求10所述的方法,其中: 所述电路包括所述芯片组和所述主机处理器中的至少一个中的至少一个存储器空间和至少一个开关;并且 所述存储器空间受到保护以避开未授权的操作系统和虚拟机管理环境的交互。
12.根据权利要求9所述的方法,其中: 所述相应的用户根据所述一个或多个策略,至少部分地共享一个或多个资源;并且所述一个或多个策略的所述执行导致所述相应的独立计算环境之间的完全的虚拟隔离和无干扰。
13.根据权利要求9所述的方法,其中: 所述一个或多个策略定义了要在所述相应的独立计算环境中使用的相应资源集;并且所述一个或多个策略针对所述相应的独立计算环境中的每一个,定义了与服务质量、安全、功率使用、网络通信路径选择、网络拥塞避免、存储、输入/输出服务、存储器、以及主机处理器相关的策略。
14.根据权利要求9所述的方法,其中: 所述一个或多个应用程序接口被至少部分地包括在下列中: 所述云计算环境中的至少一个主机的芯片组和主机处理器; 所述至少一个主机的网络设备;并且 所述一个或多个应用程序接口允许所述一个或多个策略至少部分地被修改。
15.根据权利要求14所述的方法,其中: 所述云计算环境包括包含所述至少一个主机在内的多个主机; 所述多个主机包括相应芯片组、相应主机处理器、以及相应网络设备; 所述电路包括所述相应芯片组中的相应应用程序接口、所述相应主机处理器、以及所述相应网络设备,以允许经由所述接口来建立所述一个或多个策略;并且所述一个或多个策略用来在所述的云计算环境中建立计算区; 每个相应计算区包括一个或多个相应的虚拟机,其中所述虚拟机包括相应服务器以提供一个或多个相应服务;并且 根据建立在所述相应区中的一个或多个其他相应策略来管理所述一个或多个相应服务。
16.根据权利要求14所述的方法,其中: 至少部分地基于所述计算环境中的一个或多个计算环境是否由所述一个或多个策略授权进行相应传输,来至少部分地允许去往所述计算环境中的所述一个或多个计算环境的相应传输以及来自所述计算环境中的所述一个或多个计算环境的其他的相应传输。
17.存储一个或多个指令的计算机可读存储器,当由机器执行所述一个或多个指令时导致包括下列操作在内的操作的执行: 至少部分地执行云计算环境中的一个或多个平台资源管理策略,所述一个或多个策略至少部分地基于所述云计算环境的服务布置,所述一个或多个策略在所述云计算环境中建立要由相应用户使用的相应的独立计算环境,所述一个或多个策略的执行导致所述相应的独立计算环境彼此虚拟隔离并且在减少所述一个或多个策略的情况下防止彼此相互干扰,至少部分地经由至少一个管理进程与所述电路的一个或多个应用程序接口的交互来建立所述一个或多个策略; 所述一个或多个策略的执行至少部分地导致下面操作中的一个或多个: 至少部分地分配所述云计算环境中的一个或多个工作负载,所述一个或多个工作负载至少部分地与所述一个或多个策略相关联,所述分配至少部分地基于所述一个或多个策略和所述云计算环境的反馈信息; 至少部分地协调所述云计算环境中的资源分配;以及 由所述云计算环境中的调度机制来至少部分地协调所述资源分配。
18.根据权利要求17所述的计算机可读存储器,其中: 所述一个或多个应用程序接口至少部分地被包括在所述云计算环境中的主机的芯片组和主机处理器中的至少一个中;并且所述至少一个管理进程被包括在所述云计算环境中的虚拟机管理器和所述调度机制中的至少一个中。
19.根据权利要求18所述的计算机可读存储器,其中: 所述电路包括所述芯片组和所述主机处理器中的至少一个中的至少一个存储器空间和至少一个开关;并且 所述存储器空间受到保护以避开未授权的操作系统和虚拟机管理环境的交互。
20.根据权利要求17所述的计算机可读存储器,其中: 所述相应的用户根据所述一个或多个策略,至少部分地共享一个或多个资源;并且所述一个或多个策略的所述执行导致所述相应的独立计算环境之间的完全的虚拟隔离和无干扰。
21.根据权利要求17所述的计算机可读存储器,其中: 所述一个或多个策略定义了要在所述相应的独立计算环境中使用的相应资源集;并且所述一个或多个策略针对所述相应的独立计算环境中的每一个,定义了与服务质量、安全、功率使用、网络通信路径选择、网络拥塞避免、存储、输入/输出服务、存储器、以及主机处理器相关的策略。
22.根据权利要求17所述的计算机可读存储器,其中: 所述一个或多个应用程序接口被至少部分地包括在下列中: 所述云计算环境中的至少一个主机的芯片组和主机处理器; 所述至少一个主机的网络设备;并且 所述一个或多个应用程序接口允许所述一个或多个策略至少部分地被修改。
23.根据权利要求22所述的计算机可读存储器,其中: 所述云计算环境包括包含所述至少一个主机在内的多个主机; 所述多个主机包括相应芯片组、相应主机处理器、以及相应网络设备; 所述电路包括所述相应芯片组中的相应应用程序接口、所述相应主机处理器、以及所述相应网络设备,以允许经由所述接口来建立所述一个或多个策略;并且所述一个或多个策略用来在所述的云计算环境中建立计算区; 每个相应计算区包括一个或多个相应的虚拟机,其中所述虚拟机包括相应服务器以提供一个或多个相应服务;并且 根据建立在所述相应区中的一个或多个其他相应策略来管理所述一个或多个相应服务。
24.根据权利要求22所述的计算机可读存储器,其中: 至少部分地基于所述计算环境中的一个或多个计算环境是否由所述一个或多个策略授权进行相应传输,来至少部分地允许去往所述计算环境中的所述一个或多个计算环境的相应传输以及来自所述计算环境中的所述一个或多个计算环境的其他的相应传输。
25.根据权利要求1所述的装置,其中: 所述电路包括受到保护以避开未授权的操作系统和虚拟机管理器环境的交互的至少一个受保护的计算实体;并且 所述计算实体将执行一个或多个进程,以经由所述一个或多个应用程序接口来至少部分地对所述一个或多个策略进行编程。
26.根据权利要求1所述的装置,其中: 所述电路包括所述芯片组和所述主机处理器中的至少一个中的至少一个开关;并且 所述开关将根据所述一个或多个策略对与一个或多个进程相关联的网络业务量进行管理。
27.根据权利要求1所述的装置,其中: 在所述云计算环 境中工作的一个或多个主机的一个或多个工作负载变化的情况下,一个或多个进程将至少部分地对所述一个或多个策略进行重新编程以反映所述变化。
【文档编号】G06F15/16GK104025073SQ201380004587
【公开日】2014年9月3日 申请日期:2013年6月17日 优先权日:2012年11月13日
【发明者】U·埃尔祖尔 申请人:英特尔公司
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1