CN102655503B - 使用共享资源池的资源分配 - Google Patents
使用共享资源池的资源分配 Download PDFInfo
- Publication number
- CN102655503B CN102655503B CN201110358566.8A CN201110358566A CN102655503B CN 102655503 B CN102655503 B CN 102655503B CN 201110358566 A CN201110358566 A CN 201110358566A CN 102655503 B CN102655503 B CN 102655503B
- Authority
- CN
- China
- Prior art keywords
- server
- resource
- request
- bandwidth
- pool
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Active
Links
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F9/00—Arrangements for program control, e.g. control units
- G06F9/06—Arrangements 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/46—Multiprogramming arrangements
- G06F9/50—Allocation of resources, e.g. of the central processing unit [CPU]
- G06F9/5005—Allocation of resources, e.g. of the central processing unit [CPU] to service a request
- G06F9/5011—Allocation of resources, e.g. of the central processing unit [CPU] to service a request the resources being hardware resources other than CPUs, Servers and Terminals
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F2209/00—Indexing scheme relating to G06F9/00
- G06F2209/50—Indexing scheme relating to G06F9/50
- G06F2209/5011—Pool
Landscapes
- Engineering & Computer Science (AREA)
- Software Systems (AREA)
- Theoretical Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Data Exchanges In Wide-Area Networks (AREA)
Abstract
本发明涉及使用共享资源池的资源分配,描述了用于管理资源的方法和系统,例如,与系统中呼叫允许控制或其他通信或事务有关。特别地,多个资源池被建立。至少一个第一资源或优先资源与一个最小资源量有关,而至少一个第二资源或普通资源池与一个最大资源量有关。从系统的资源池,为多个系统服务器的每一个做出分配。假如服务器接收优先资源的一个请求,其不能从为该服务器所做出的优先资源分配中满足,则该服务器可以从普通资源分配中借用。资源也能够在服务器间共享。相应地,假如所需资源对接收该资源请求的服务器所做出的分配不可用,则该服务器请求来自另一个服务器的资源。响应于对于共享资源的请求,服务器会尝试满足该请求,如同原先是为该服务器做出了该请求。
Description
技术领域
公开的发明涉及多个资源分配认证器(resource allocation authorities)之间的资源共享。
背景技术
资源受限的系统通常可基于优先顺序、子类型、服务质量或其他考虑被细分。例如,许多计算机和通信系统所具有的可用于在系统组件之间传递数据的带宽量是有限的。为了保证需要的服务质量水平,系统带宽可以被优先分配到某些用户或用途。因此,已经开发了如下的系统,在该系统中为某些用户或用途预留了一定比例的可用带宽。然而,这种安排会导致可用的带宽从未使用。
在各种系统中,并且特别地在复杂的系统中和/或在承受高需求或处理大量事务的系统中,可以包括多个服务器或其他认证器。在整个系统与整个系统资源限制相关联的场合,中心认证器需要被建立以实施这些限制。可替代地,整个系统资源可用信息可在系统中的所有服务器上被分布。然而,这些解决方案会导致各系统对于管理者来说是复杂的。另外,这样的解决方案会导致如下的需求:分配资源以适应与系统管理相关联的网络通信量。
发明内容
公开的发明用来解决现有技术中的这些以及其他问题和弊端。本发明的实施例可应用到资源分配可能受限的任何环境中以防止性能下降。与本发明的实施例一致,提出了一种具有分布式资源分配控制和共享资源池的资源受限系统。总的来说,该系统包括多个资源池。至少一个资源池可具有与总的系统资源容量相等的最大池尺寸。包含在多个池中的第二池可以具有小于系统的总资源容量的最大池尺寸。另外,该系统包括多个认证器(authorities)或服务器。来自池的资源在包含的认证器之间被分配。
与本发明实施例一致的,每一个服务器维护与多个池中的每一个对应的可用资源的记录。更特别地,用于池的资源的总量的记录可以由服务器来分配,以及由服务器从池分配的资源的实际的量由该服务器维护。与本发明的进一步实施例一致,在多个资源池中的第一资源池是优先资源池,并且服务器可以从第二资源池(普通资源池)借用(borrow)资源来给所述优先资源池分配资源。与本发明其他实施例一致,不能从当前分配给该认证器的资源满足资源请求的认证器可以请求在系统中的其他认证器中的一个或多个认证器与发出请求的认证器共享另外的资源。
与本发明的实施例一致的方法包括定义多个资源池。例如,所述多个资源池可以包括第一、优先资源池,和第二、普通资源池。所述方法包括允许从所述普通资源池借用资源以给所述优先资源池使用。另外,所述方法支持在系统中的认证器之间共享资源。总的系统资源保持恒定,并且分配给优先资源池的最小资源可以被实施,即使在允许借用和共享资源的同时也是如此。另外,不需要包括中心认证器来实施与借用和共享资源有关的限制和规则。
本发明实施例的其他特征和优点将从以下的描述变得更加明显,尤其当与附图结合在一起时。
附图说明
图1描述了与本发明实施例一致的分布式系统的组件;
图2描述了与本发明实施例一致的服务器的组件;
图3描述了与本发明实施例一致的在服务器的带宽分配控制表格中维护的内容;
图4为与本发明的实施例一致的针对共享带宽的请求的内容;
图5为与本发明的实施例一致的对于共享带宽请求的响应的内容;
图6为与本发明的实施例一致的用于实现对带宽请求的方法的各方面的流程图;
图7为与本发明的实施例一致的用于重新分配带宽的方法的各方面的流程图;
图8A-J为与本发明的实施例一致的在系统中的服务器的示例性的带宽分配。
具体实施方式
具有与本发明实施例一致的共享资源池100的系统被显示在图1中。尽管说明书的某些部分所讨论的资源分配包括计算机或通信网络或处理资源,但是应当知道在充分考虑本发明之后,本发明的实施例可以应用到任何资源以及任何资源分配可能被限制的环境中。系统100的组件可以是硬件、软件、固件等,或它们的组合。系统100包括多个认证器或服务器104。每一个服务器104通常用来管理与资源请求对应的资源,这里指带宽。每一个服务器104可以直接地或者通过网络108与系统100中的其他服务器104通信。例如,每一个服务器104可以管理针对相关分支112的电话呼叫、或其他通信或数据传输。相应地,服务器104可以包括通信服务器或会话管理器。分支112可包括多个资源用户的集合。例如,在带宽用户的情况下,分支可以包括多个通信装置。可以包括在分支112中的通信装置的例子包括电话、视频电话、计算机或其他通信装置。因此,示例分支112可以是企业网络的呼叫中心或站点。典型地,但不是必要地,分支112包括因特网协议(IP)地址、电话号码和/或其他通信系统标识符或地址的集合。而且,每个分支112可以包括相关的服务器104或者直接地或通过分支网络114与相关的服务器104相连。尽管这里是单独提及的,但是分支网络114可以包括将服务器104互连的通信网络108或者与该通信网络108相连。相应地,网络108或分支网络114可以包含因特网和/或私人内联网、广域网和/或局域网。
系统100管理来自一个或多个端点或节点的通信或带宽请求,所述一个或多个端点或节点包括但不限制为在一个或多个分支112之处的通信装置。例如,电话呼叫可以从第一分支112a被请求。该请求可通过互连网络A 114a被发送到服务器A 104a,该服务器为负责分支1112a的控制器。在允许呼叫进行之前,服务器A 104a必须确定系统100是否有足够带宽来允许呼叫。通常,系统100是资源(例如,带宽)受限的。因此,与本发明的实施例一致,系统100管理带宽限制。特别地,可针对不同的通信定义不同的资源或带宽池。而且,在通信能够进行之前,服务器104必须授予通信所需的带宽。因此,每个服务器104必须能够所请求的通信所需的带宽在系统100中是否可用。与本发明的实施例一致,系统100的资源可以根据用户的优先级状态或将要使用所请求资源的通信的类型被划分。因此,该确定也必须在不同类型或类别的资源之间进行分配。例如,资源可在优先用户和用图以及普通用户和用途之间被分配。例如,优先用户可以是需要音频通信会话带宽的用户,而普通或非优先用户可以是需要音频-视频(下文中简称为“视频”)通信的带宽的用户。
资源也可以根据资源类型被分类和被指定给不同的资源池。例如,系统100也可以配置为在分配属于第二池的资源之前从代表属于第一池的可用资源的第一池分配系统资源。举例说明这一点,在系统100的资源为电力时,第一池可以包括来自可再生能量资源的电力,而第二池可包括来自化石燃料源的电力。而且,资源和/或用户的其他池(类别)可以被包括在系统100中。例如,当第二池为来自天然气源的电力分配时,第三池可以是来自煤炭源的电力分配。在供电的系统的例子中,可以预留某一最小的量以供包括在为优先用户(例如,医院和其他紧急装置)而预留的池中,而小于系统100总资源的最大值可以是对于普通用户可用的电力的限制。
系统100资源或带宽在服务器104之间共享。例如,服务器104被分配系统100带宽的量。而且,来自多个带宽池中每一个带宽池的带宽量可以被分配给每个服务器104。当每个服务器104管理或控制通信时,分配的带宽的一部分被使用。然而,在一些情况下,服务器104所需的用来满足请求(例如,管理呼叫)的带宽多于该服务器从相关的带宽池可获得的带宽。在这样的情况下,如这里所述,服务器104可以在池之间通过借用过程重新分配带宽。另外,服务器104可以向其他服务器104发出请求以共享系统100的带宽。
图2为描述了与本发明的实施例一致的服务器104的组件的方框图。一般来说,每一个服务器104包括处理器204,该处理器能够执行程序指令或软件。相应地,处理器104可以包括用于执行应用程序或指令的任何通用可编程处理器或控制器。如进一步的示例,处理器204可以包括专门配置的专用集成电路(ASIC)。处理器204通常用来运行实施由服务器104执行的各种功能的程序编码或指令。如将在这里更加详细的描述的,这样的功能可以包括来自合适的池的与通信会话有关的带宽分配。
服务器104还可包括存储器208,其用于与处理器204执行程序相关联的用途和用于临时或长期存储程序指令和/或数据。例如,存储器208可以包括RAM、SDRAM或其他固态存储器。可替代地或另外地,数据存储器212可以被提供。与本发明的实施例一致,数据存储器212可以包含实施由服务器104实行或执行的各种应用程序或功能的程序代码或指令,以及被与应用程序的执行和/或功能实现相关地使用和/或产生的数据。像存储器208一样,数据存储器212可以包括固态存储装置。可替代地或另外地,数据存储器212可以包括硬盘驱动器或其他随机存取存储器。
能够被存储在数据存储器212中的应用程序或指令的例子包括各种通信应用程序或用于管理通信216的应用程序。例如,由服务器104支持或管理的通信可以包括,但不限制为语音电话、视频电话、电子邮件、即时消息或其他通信。如另一个例子,服务器104的数据存储器212可以包含会话管理应用程序220以例如用来给正在进行的通信会话提供支持和服务。与本发明的实施例一致,服务器104的数据存储器212包括带宽或其他资源分配应用程序224。如这里公开所述,带宽分配应用224从合适的池进行分配或指定带宽以支持所请求的通信。另外,与本发明实施例一致的带宽分配应用224支持在带宽池之间的带宽借用和服务器104之间的带宽共享。数据存储器212还可以包括用于维护与由服务器104管理的带宽状态有关的信息的一个或多个控制表格228。如这里所述,这样的信息可以包括来自多个带宽池的当前带宽分配、用于多个带宽池的最大带宽分配值,和指示借用的带宽量的值。
服务器104还可包括一个或多个用户输入装置232。用户输入装置232的例子包括触摸屏显示器、键盘、与显示屏或其他定位编码器组合的指示装置、麦克风或其他音频输入装置,和小键盘。另外,服务器104通常包括一个或多个用户输出装置236。用户输出装置236的例子包括显示器、音频输出装置、和指示灯。用户输入232和用户输出装置236可以直接与服务器104相连,或可以通过互连装置来提供,例如用来支持服务器104的远程管理。服务器104通常还包括一个或多个通信网络接口240。通信网络接口240通常用来直接地或通过一个或多个网络108和114将服务器104与其他服务器104和分支112装置相连。可以用来作为服务器104一部分的通信网络接口240的例子包括诸如有线或无线以太网接口的分组数据网络接口、电话网络接口和/或无线或有线接口。
图3显示了与本发明的实施例一致的由服务器104维护的资源分配控制表格228的内容。所述控制表格228通常包括资源(例如,带宽)分配表格304,该表格包括与维护所述控制表格228的服务器104相关的当前资源分配和使用的记录。特别地,与不同的资源池对应的资源的分配被记录。在图3中,与包括两个带宽池BW1和BW2的资源对应的分配被显示。对于每一个带宽池,X/Y符号指示来自该池的正在使用的带宽(X)相对于该池中对该服务器可用的总带宽(Y)。对池的带宽分配(在该例子中为BW1和BW2)可以作为初始的管理或提供的过程或步骤的一部分对系统100中的服务器104实施。正如本领域技术人员在考虑本发明之后所知,从池到个别服务器104的带宽分配可以执行以便不会超过系统100的总的或全部的带宽。而且,与本发明实施例一致的用于优先带宽池(例如,BW1)的最小系统100的带宽分配被保持。带宽分配记录304还包括借用(B)值,其用于跟踪已经被借用作为优先(例如,BW1)池的一部分的普通(例如,BW2)带宽。
与本发明实施例一致的系统100还支持服务器104之间的资源共享。例如,向第一服务器104的带宽请求不能被该服务器满足时,所述第一服务器104可以向系统中的其他服务器104请求另外的带宽。图4描述了与本发明的实施例一致的在该示例性带宽中用于共享资源的请求404的内容。特别地,请求404可包括在第一字段408中的请求服务器104的标识。另外,请求404将包含值,该值指示用于请求服务器104可用的每一个带宽池的带宽量,以及请求服务器104可用的借用带宽量。这可以使用符号{BW1,BW2,B}进行指示,其中BW1为请求向第一池分配的带宽量的数值;BW2为请求向第二池分配的带宽量的数值;B为可以由请求服务器104应用的借用带宽量。这些值可以是零或非零。例如,假如请求服务器104需要优先带宽,则第二字段412将包括非零值以指示所需的来自所述第一带宽池的带宽量。假如请求服务器104请求普通带宽,则请求404将包括在第二字段412的非零值,和涉及来自所述普通带宽池的带宽分配的在第三字段416的非零值。与来自第二或普通池的带宽请求有关,请求404可以包括在第四字段420的零值或非零值,指示请求服务器104可以在满足请求时使用的借用带宽的量。如本领域技术人员在考虑本发明之后所知,请求404可以包括经由互连网络108在系统100内的服务器104之间发送的数据分组或消息。
图5为与本发明的实施例一致的在该示例性带宽中对针对共享资源的请求的响应504的内容。响应504可包括关于数据是对针对共享带宽的请求的响应的指示,并可以在第一字段508指示出应答服务器104的身份。其他字段512、516和520可以包含应答服务器104响应于请求而能够共享的带宽量。例如,第二字段512可以指示共享的来自第一池(BW1)的带宽量,第三字段516可以指示来自第二池(BW2)的共享的带宽量,第四字段520可以指示共享的借用带宽(B)的量。这可以使用符号{BW1,BW2,B}进行指示,其中在响应504中的BW1为指示从所述第一带宽池提供的带宽量的数值;BW2为指示从所述第二带宽池提供的带宽量的数值;B为指示由应答服务器104提供的借用带宽量的数值。这些值可以是零或非零。像请求404一样,响应504可以作为由互连网络108承载的数据分组或消息而在系统100中的服务器104之间通信。
图6为与本发明的实施例一致的用于完成资源(这里指带宽)请求的方法的各个方面的流程图。开始,在步骤604,带宽份额从系统100的带宽池被分配给服务器104。这可包括给每一个服务器104提供与系统100相关的每一个带宽池的一部分。而且,所述带宽池可以包括优先带宽池和普通带宽池。与本发明的实施例一致,优先带宽池与一最小带宽值相关。用于所述优先带宽池的所述最小带宽值将一直被保持。相反地,普通带宽池具有决不可能被超过的最大带宽值。然而,所公开系统的实施例允许从所述普通带宽池中进行借用以服务于优先带宽需求。而且,如这里所述,在系统100操作期间,对系统100的服务器104的初始的带宽分配不需要保持。特别地,在任何特定的时刻对于服务器104可用的各种池中的带宽会与初始分配的不同,这是在服务器104之间共享带宽的结果。
在步骤606中,带宽请求在服务器104被接收。如示例所述并且不是为了限制,服务器104可以包括通信服务器,以及所述带宽请求可以用来支持包括在服务器104所服务于的分支112中的装置或节点将会参与的通信。响应于该请求,服务器104最初确定带宽请求是否可以由在那个服务器104上当前可用的带宽来满足(步骤608)。假如确定所述服务器104自身不能满足该请求,则接下来可确定是否另一个服务器潜在地可用(步骤612)。假如另一个服务器104潜在地可用(即,请求服务器104还没有向系统中的每一个服务器104做出请求),则该下一个另外的服务器104被选择,以及带宽请求304被发送到所选择的服务器104(步骤616)。然后确定来自该下一个服务器的带宽是否可用(步骤620)。假如请求的带宽不可用,过程就可返回到步骤612,以及假如带宽可用,则请求304可被发送到下一个服务器104。
假如在步骤608确定来自对请求发起的分支112负责的服务器104的带宽可用,或者假如在步骤620确定来自另一个服务器104的带宽可用,则所请求的带宽的所有或一部分被分配以服务于原请求(步骤624)。在步骤628,确定为了使得与带宽请求相关的通信或其他事务可以进行是否需要另外的带宽。假如需要另外的带宽,则过程可以返回到步骤608。假如不需要另外的带宽,则准许由分支112做出的带宽请求(步骤632),并且需要带宽的通信或事务可以进行。
假如在步骤608中确定来自接收来自分支112的请求的服务器104的所需带宽不可用,和假如在步骤612还确定没有其他服务器104可以用来提供另外的带宽,则来自分支112的请求被拒绝(步骤636)。在准许(步骤632)或拒绝(步骤636)该请求之后,处理可结束。
图7为与本发明的实施例一致的重新分配诸如带宽的资源的方法的各个方面的流程图。开始,在步骤704,由接收该请求的服务器104确定该请求是用于普通还是优先带宽。即,确定应满足该请求的带宽池的身份。接收该请求的服务器104可以是对发起请求的分支112负责的服务器104。可替代地,服务器104可以是已经接收来自另一个服务器104的共享带宽请求304的服务器。
假如该请求包括普通带宽请求,则确定普通带宽份额是否可用(步骤708)。假如普通带宽份额可用,则所请求的普通份额被分配给用户(步骤712)。接下来确定是否需要另外的带宽(步骤716)。
在步骤716中确定需要另外的普通带宽之后,或者在步骤708确定服务器没有可用的普通带宽之后,可确定先前由优先用户借用的普通带宽是否现在可用(步骤720)。假如先前由优先用户借用的普通带宽现在可用,则先前借用的普通带宽被重新分配(步骤724)。相应地,使得先前借用的普通份额再次作为普通带宽池的一部分而可用。在重新分配借用的带宽份额之后,在对象服务器104中的重新分配处理可结束。
假如在步骤704带宽请求被确定为优先带宽请求,则确定优先带宽是否可用(步骤728)。假如优先带宽可用,则所请求的优先带宽被分配或使之对优先用户或用途可用(步骤732)。在步骤736,确定是否需要另外的优先带宽来满足该请求。假如不需要另外的带宽,则该处理可结束。假如确定需要另外的带宽,或假如确定在服务器104上优先带宽不可用,则接下来可确定普通的带宽在服务器104上是否可用(步骤740)。假如普通的带宽不可用,则处理可结束。假如普通带宽可用,则所请求的普通带宽被分配给优先用户,并且借用带宽的计数被增加(步骤744)。除了增加借用份额的计数以外,优先带宽的计数也被增加所借用的量,并且普通带宽的计数被减少所借用的量。在步骤716或736中确定不需要另外的份额之后,或在步骤720或740确定普通的带宽不可用之后,或在步骤724或744重新分配或分配份额之后,处理可结束。
接下来的示例仅仅是用来阐述的目的,并且不是用来对本发明范围的限制。
示例1
在该示例中,参考如图8A所示的包括带宽分配的资源的基本配置或开始点。特别地,该图显示了用于第一和第二带宽池的初始的总体带宽分配,分别表示为BW1和BW2。而且,在带宽池之后的值的分子指示已使用的分配量,而该值的分母指示分配给所述池的总的带宽(即,总体或系统100的带宽)。另外,不同的事务(例如,呼叫)的成本的指示被给出。在该示例中,一需要来自第一池的带宽的事务的成本,即BW1C为1。相应地,需要来自第一池的带宽的事务与来自该池的一个单为的带宽的成本相关。例如,并且不是限制,所述第一带宽池BW1可以包括优先池,其为音频呼叫预留。继续该示例,在该示例中的第二池BW2具有两个单位的带宽成本,并且在该示例中,可以对应于视频呼叫。表格808a、808b和808c显示在系统100中的给服务器104做出的初始带宽分配。特别地,用于由单个服务器104使用的、来自两个带宽池的每一个的带宽量的值被给出。另外,与每一个带宽池对应的总的可用带宽被指出。显然,总的系统带宽(等于优先带宽的初始分配,或在该示例中为5,加上普通带宽的初始分配,在该示例中为4,得到总数为9)没有被超过。另外,每一个表格808包括所借用带宽(B)的量的指示。
在图8B中,系统100的操作状态的示例被显示。特别地,所有的系统100的带宽被完全利用。另外,来自第二带宽池BW2的用作第一带宽池BW1的一部分的带宽借用也发生了。
从图8B的配置开始,在该第一示例中,服务器2104b的音频呼叫结束了,其导致一个单位的音频带宽(BW1)变得可用。服务器1104a现在需要进行音频呼叫。响应于服务器1104a确定没有可用的音频带宽,其试图从其普通或视频带宽(BW2)的分配中借用带宽,但是在那儿也没有可用的带宽。相应地,服务器1104a发送具有值{1,0,0}(即,请求一个单位的优先带宽和零单位的普通或借用带宽)的请求404到服务器2104b。服务器2104b发送一个响应504,该响应具有指示给出来自优先池BW1的一个单位的带宽到服务器1104a的值{1,0,0}。服务器1104a然后使用共享的带宽以允许该呼叫。在示例1中描述的借用和使用之后,整个本系统的带宽分配在图8C中显示。
继续该示例,在服务器3104c上的视频呼叫结束。另外,服务器1104a需要进行另一个音频呼叫。服务器1104a没有可用的A或V带宽。相应地,其发送携带值{1,0,0}的请求404到服务器2104b。然而,服务器2104b没有可用的音频带宽。另外,服务器2104b没有任何可以借用的普通带宽。相应地,服务器2104b发送携带值{0,0,0}的响应504。服务器1104a然后发送携带值{1,0,0}的请求404到服务器3104c。服务器3104c没有可用的音频带宽,但是可以从其视频带宽中借用带宽。相应地,其从所述视频池BW2借用一个单位带宽,在处理中增加所借用的值B。然后,其使用包含值{1,0,0}的响应504来对服务器1104a进行应答。服务器1104a使用来自所述第一带宽池BW1的该新的带宽来完成呼叫。最终结果显示在图8D。
示例2
从图8B中显示的配置开始,服务器1104a和服务器3104c结束了他们的音频呼叫,因此它们每一个都具有一个单元的可用的音频带宽(BW1)。服务器1104a现在需要进行视频呼叫。服务器1104a确定它没有可用的视频带宽(BW2)。其试图从它的优先带宽BW1中归还,但其借用值为零。相应地,其发送携带值{1,2,2}的请求404到服务器2104b。这里,因为服务器1104a仅能够使用来自所述优先池的最多再一个单位的带宽,所以只请求来自第一带宽池BW1的一个单位的带宽。服务器2104b发送携带值{0,0,2}的响应504到服务器1104a,以指示给出两个单位的借用带宽。服务器1104a重新评估其当前的分配,并且假定其有一个单位的可用的BW1,没有来自BW2的可用带宽,以及两个可用的借用单位,则服务器1104a使用共享借用带宽将一个单位的BW1转化为BW2,产生在图8E显示的分配。
服务器1104a仍然需要一个另外的单位带宽以完成视频呼叫。相应地,其发送携带值{1,1,0}的请求404到服务器3104c。这是因为需要来自普通池BW2的一个单位的带宽,因为服务器1104a可以使用一个单位的优先带宽,但是不能使用任何借用的带宽来满足该请求。服务器3104c发送携带值{1,0,0}的响应504。服务器1104a再次重新评估其带宽分配,并通过应用借用的带宽将在优先池BW1中的单位带宽转化为普通带宽BW2的单位。服务器1104a现在可以完成其视频呼叫。在应用带宽到视频呼叫之后的结果在图8F中显示。
示例3
再从图8B显示的配置开始,服务器1104a结束了其音频呼叫,以及服务器3104c结束了其所有的呼叫。服务器2104b需要进行一个视频呼叫。服务器2104b确定它没有可用的视频带宽BW2,并且不能从本地音频带宽BW1中归还。因为服务器2104b不能使用任何借用的带宽,所以其发送携带值{2,2,0}的请求404到服务器1104a。服务器1104a发送携带值{1,0,0}的响应504,其提供一个单位的音频带宽BW1。服务器2104b重新评估自身,通过减少B来转化一个单位的优先带宽BW1为普通带宽BW2。在服务器2104b的转化之后,系统100的带宽分配的结果显示在图8G中。
服务器2104b仍然需要一个另外单位的普通带宽BW2以完成所述视频呼叫。相应地,其发送携带值{1,1,0}的请求404到服务器3104c。因为服务器2104b需要一个单位的普通带宽BW2,所以该请求404被发送,它可以使用一个单位的优先带宽BW1,而不能使用任何借用的带宽。因为当优先BW1和普通BW2带宽两者被请求时,普通带宽BW2是优选的,因此服务器3104c发送响应{0,1,0}。服务器2104b重新评估它的带宽分配,并且现在能够完成视频呼叫。在由服务器2104b的视频呼叫完成(即,提供了服务)之后,系统100带宽的分配结果显示在图8H中。
示例4
再从显示在图8B中的配置开始,服务器1104a和服务器2104b的每一个都结束了音频呼叫。服务器3104c现在需要进行视频呼叫。服务器3104c确定它没有可用的视频带宽,并且不能归还本地音频带宽。它发送携带值{2,2,2}的带宽请求404到服务器1104a。服务器1104a发送携带值{1,0,0}的响应504,以提供一个单位的优先或音频带宽BW1。服务器3104c重新评估它的带宽分配,但是不能对其可用的普通或视频带宽BW2作任何改动。该点的系统100带宽分配显示在图8I中。
接下来,服务器3104c发送携带值{1,2,2}的请求404到服务器2104b。这是因为服务器3104c需要两个单位的视频或普通带宽BW2,并且仅能使用一个单位的优先或音频带宽BW1,和使用两个单位借用的带宽。服务器2104b首先通过内部的从音频或优先带宽BW1归还视频或普通带宽,并减少借用的值来应答。服务器2104b然后返回携带值{0,1,1}的响应504,来放弃最新创建的普通或视频带宽BW2的份额,以及它的其他借用的带宽份额。服务器3104c再重新评估它的带宽分配。现在它可以通过减少借用的值来转化优先或音频带宽份额BW1为普通或视频带宽份额BW2。这允许服务器3104c完成视频呼叫。具有正在进行的最新完成的视频呼叫的系统100的分配结果的显示在图8J中。
通过以上的示例,应当了解,如反映在总体带宽分配804表格中的总的系统带宽100保持不变。特别地,总的可用带宽决不会超过9。另外,优先带宽BW1的总体最小分配3被一直保持或被超过,以及普通带宽BW2的总体最大值6决不会被超过。相应地,本发明的实施例考虑系统100带宽参数的保持,以及服务器104之间的带宽共享,而不需要中心认证器来实现和管理对应于各个服务器的灵活的带宽分配。
如前所述,本发明的实施例可连同任何资源受限系统而被应用。特别地,在利用资源的任何系统,其中这些资源或这些资源的使用者可以划分为两个或更多类别,本发明的实施例可以用来分配这些资源。更特别地,本发明的实施例允许在具有多个认证器的系统中进行这样的资源分配,而允许执行对系统的总的资源限制。而且,资源和/或用户类别之间的借用和认证器之间的分配资源的共享被支持。
本发明的前述讨论是为了演示和描述的目的。进一步,该描述不是将本发明限制在这里公开的形式。因此,在相关技术的手段或知识范围内具有上述教导的相称的改变或修改将在本发明的范围内。以上描述的实施例将进一步用来解释当前已知的实施本发明的最好的模式,并且使得本领域技术人员能够以这样的或其他实施例的方式和使用由特定应用的请求或本发明的使用的各种修改来利用本发明。附带的权利要求用来解释包括可替代实施例的现有技术允许的延伸。
本申请要求以2010年10月18日提交的美国临时专利申请US61/394025的利益,该申请作为参考被完全引用。
Claims (7)
1.一种用于分配资源的方法,包括:
定义多个资源池,其中所述多个资源池中的第一资源池为优先资源池,其中所述优先资源池具有第一最大池尺寸,其中所述多个资源池中的第二资源池为普通资源池,其中所述普通资源池具有第二最大池尺寸,并且其中所述第一最大池尺寸大于所述第二最大池尺寸;
给多个服务器的每一个指定来自所述多个资源池的初始资源分配;
在包括在所述多个服务器中的第一服务器处接收资源请求;
识别与该请求有关的所述第一或第二资源池中的第一个资源池;
响应于确定所述第一服务器没有可用的当前分配自与所述请求相关的资源池的资源,进行如下两项操作的至少其中之一:
将来自所述第一或第二资源池的中的第二个资源池的所请求资源中的至少一部分重新分配至所述第一和第二资源池中的所述第一个资源池;
向包括在所述多个服务器中的第二服务器请求所请求资源中的至少一部分;
响应于确定所述请求不能从当前分配至所述第一服务器的资源满足,执行如下操作:
向包括在所述多个服务器中的第三服务器发送对共享资源的第一请求;
其中,对共享资源的请求包括所述第一服务器能够使用的优先资源的最大量、所述第一服务器能够使用的普通资源的最大量、以及所述第一服务器能够使用的借用资源的最大量。
2.如权利要求1所述的方法,其中响应于确定所述第一服务器没有可用的从与所述请求相关的资源池分配的资源,所述方法包括:
重新分配来自另一个带宽池的资源,其中重新分配来自另一个资源池的资源包括:
确定与所述请求相关的资源池为所述优先资源池;
确定来自所述普通资源池的对所述第一服务器做出的分配的资源是可用的;
增加与所述第一服务器相关的优先资源计数;
增加与所述第一服务器相关的借用资源计数;
减少与所述第一服务器相关的普通资源计数。
3.如权利要求2所述的方法,其中重新分配来自另一个资源池的资源包括:
确定与所述请求相关的资源池为所述普通资源池;
确定与所述第一服务器相关的借用资源计数大于零;
确定用于所述第一服务器的可用优先资源计数大于零;
减少用于所述第一服务器的所述借用资源计数;
减少用于所述第一服务器的可用优先资源计数;
增加用于所述第一服务器的总的普通资源计数,其中资源从用于所述第一服务器的所述优先资源分配被重新分配到用于所述第一服务器的所述普通资源分配。
4.如权利要求1所述的方法,进一步包括:
响应于接收所述针对共享资源的第一请求,所述第三服务器向所述第一服务器释放未使用的资源,其中在所述第一服务器和第三服务器之间重新分配资源,其中所述优先资源池具有最小池尺寸,其中所述优先资源池的最小池尺寸与所述普通资源池的最大池尺寸的总和等于总的系统资源,并且其中在所述第一服务器和第三服务器之间资源的重新分配不会改变所述总的系统资源。
5.如权利要求4所述的方法,其中所述第三服务器重新分配未使用的资源给所述第一服务器包括所述第三服务器:
确定可以被重新分配给所述第一服务器的所请求的普通资源的量;
确定可以被重新分配给所述第一服务器的所请求的借用资源的量;
确定可以被重新分配给所述第一服务器的所请求的优先资源的量。
6.如权利要求5所述的方法,进一步包括:
响应于接收的已分配资源不足以满足对所述第一服务器做出的资源请求,所述第一服务器发送针对共享资源的第二请求到第四服务器。
7.一种用于管理资源的系统,包括:
至少第一网络;
两个或更多个分支;
多个服务器,其中每一个服务器与所述分支之一相关,并且其中所述服务器彼此通信,并且与所述第一网络相互连接,每一个服务器包括:
数据存储器,其包括:
控制表格,所述控制表格定义多个资源池,其中所述多个资源池中的第一资源池为优先资源池,其中所述优先资源池具有第一最大池尺寸,其中所述多个资源池中的第二资源池为普通资源池,其中所述普通资源池具有第二最大池尺寸,并且其中所述第一最大池尺寸大于所述第二最大池尺寸;
资源分配应用,其中所述资源分配应用从所述多个资源池中对多个服务器中的每个服务器进行初始资源分配,在所述多个服务器中的第一服务器处接收资源请求,识别与所述请求相关联的所述第一或第二资源池中的第一个资源池,并且响应于确定所述第一服务器没有可用的分配自与所述请求相关的资源池的资源,所述资源分配应用进行如下操作中的至少其中之一:
将来自所述第一或第二资源池的中的第二个资源池的所请求资源中的至少一部分重新分配至所述第一和第二资源池中的所述第一个资源池;
向包括在所述多个服务器中的第二服务器请求所述资源中的至少一部分;以及
响应于确定所述请求不能从当前分配至所述第一服务器的资源满足,资源应用在所述第一网络上向第三服务器发送请求消息,其中所述请求消息包括所述第一服务器能够使用的优先资源的最大量、所述第一服务器能够使用的普通资源的最大量、以及所述第一服务器能够使用的借用资源的最大量。
Applications Claiming Priority (4)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US39402510P | 2010-10-18 | 2010-10-18 | |
US61/394,025 | 2010-10-18 | ||
US13/079,593 | 2011-04-04 | ||
US13/079,593 US8782240B2 (en) | 2010-10-18 | 2011-04-04 | Resource allocation using shared resource pools |
Publications (2)
Publication Number | Publication Date |
---|---|
CN102655503A CN102655503A (zh) | 2012-09-05 |
CN102655503B true CN102655503B (zh) | 2015-09-16 |
Family
ID=45935096
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201110358566.8A Active CN102655503B (zh) | 2010-10-18 | 2011-09-30 | 使用共享资源池的资源分配 |
Country Status (2)
Country | Link |
---|---|
US (1) | US8782240B2 (zh) |
CN (1) | CN102655503B (zh) |
Families Citing this family (46)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
EP2533152A1 (en) * | 2011-06-08 | 2012-12-12 | Astrium Ltd. | Command and control system integrated with network management |
US9009317B2 (en) * | 2011-10-10 | 2015-04-14 | Verizon Patent And Licensing Inc. | System for and method of managing network resources |
US9104491B2 (en) * | 2012-02-21 | 2015-08-11 | Disney Enterprises, Inc. | Batch scheduler management of speculative and non-speculative tasks based on conditions of tasks and compute resources |
US9584598B2 (en) | 2013-04-04 | 2017-02-28 | Ericsson Ab | Methods, apparatus, and computer program products for allocating bandwidth for push and pull content requests in a content delivery network |
US9225771B2 (en) * | 2012-05-09 | 2015-12-29 | Cisco Technology, Inc. | Sharing excess committed network appliance resources |
US9466036B1 (en) * | 2012-05-10 | 2016-10-11 | Amazon Technologies, Inc. | Automated reconfiguration of shared network resources |
US9201693B2 (en) | 2012-09-04 | 2015-12-01 | Microsoft Technology Licensing, Llc | Quota-based resource management |
SE537197C2 (sv) * | 2012-10-05 | 2015-03-03 | Elastisys Ab | Metod, nod och datorprogram för möjliggörande av automatiskanpassning av resursenheter |
WO2014114727A1 (en) * | 2013-01-25 | 2014-07-31 | Nokia Solutions And Networks Oy | Unified cloud resource controller |
GB2512900A (en) * | 2013-04-10 | 2014-10-15 | Nec Corp | Communication system |
US10581687B2 (en) | 2013-09-26 | 2020-03-03 | Appformix Inc. | Real-time cloud-infrastructure policy implementation and management |
US9385959B2 (en) | 2013-09-26 | 2016-07-05 | Acelio, Inc. | System and method for improving TCP performance in virtualized environments |
US10355997B2 (en) | 2013-09-26 | 2019-07-16 | Appformix Inc. | System and method for improving TCP performance in virtualized environments |
US10291472B2 (en) | 2015-07-29 | 2019-05-14 | AppFormix, Inc. | Assessment of operational states of a computing environment |
US20150249580A1 (en) * | 2014-03-03 | 2015-09-03 | Korcett Holdings, Inc. | System and method for providing uncapped internet bandwidth |
EP3186996A4 (en) * | 2014-07-24 | 2017-12-27 | Rivada Networks LLC | Broadband orthogonal resource grouping |
US9906454B2 (en) | 2014-09-17 | 2018-02-27 | AppFormix, Inc. | System and method for providing quality of service to data center applications by controlling the rate at which data packets are transmitted |
US10025684B2 (en) * | 2014-09-24 | 2018-07-17 | Microsoft Technology Licensing, Llc | Lending target device resources to host device computing environment |
US9769227B2 (en) | 2014-09-24 | 2017-09-19 | Microsoft Technology Licensing, Llc | Presentation of computing environment on multiple devices |
US10635296B2 (en) | 2014-09-24 | 2020-04-28 | Microsoft Technology Licensing, Llc | Partitioned application presentation across devices |
US10448111B2 (en) | 2014-09-24 | 2019-10-15 | Microsoft Technology Licensing, Llc | Content projection |
CN104301312A (zh) * | 2014-09-29 | 2015-01-21 | 四川长虹电器股份有限公司 | 统一用户系统与第三方应用对接方法及装置 |
US20160157254A1 (en) * | 2014-11-26 | 2016-06-02 | Samsung Electronics Co., Ltd. | Methods and apparatus for control information resource allocation for d2d communications |
WO2016093828A1 (en) * | 2014-12-10 | 2016-06-16 | Hewlett Packard Enterprise Development Lp | Firmware-based provisioning of operating system resources |
US10983831B2 (en) | 2014-12-10 | 2021-04-20 | Hewlett Packard Enterprise Development Lp | Firmware-based provisioning of operating system resources |
CN104901903B (zh) * | 2015-04-07 | 2019-05-07 | 北京邮电大学 | 软件定义网络多域资源处理方法及系统 |
WO2017081513A1 (en) * | 2015-11-11 | 2017-05-18 | Telefonaktiebolaget Lm Ericsson (Publ) | Systems and methods relating to a smart home manager |
CN108370575A (zh) * | 2016-01-05 | 2018-08-03 | 富士通株式会社 | 信息传输方法、装置和系统 |
CN107222430A (zh) * | 2016-03-22 | 2017-09-29 | 阿里巴巴集团控股有限公司 | 一种资源分配方法及装置 |
US10581992B2 (en) * | 2016-03-30 | 2020-03-03 | Cisco Technology, Inc. | Allocating bandwidth between network computing devices for pushing data to a client computing device |
CN108235342A (zh) * | 2016-12-21 | 2018-06-29 | 中兴通讯股份有限公司 | 一种通信装置和基站 |
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 |
US10868742B2 (en) | 2017-03-29 | 2020-12-15 | Juniper Networks, Inc. | Multi-cluster dashboard for distributed virtualization infrastructure element monitoring and policy control |
US11323327B1 (en) | 2017-04-19 | 2022-05-03 | Juniper Networks, Inc. | Virtualization infrastructure element monitoring and policy control in a cloud environment using profiles |
CN110363319B (zh) * | 2018-03-26 | 2023-09-29 | 阿里巴巴集团控股有限公司 | 资源分配方法、服务器、资源申领方法和客户端 |
US11190599B2 (en) | 2018-06-27 | 2021-11-30 | Oracle International Corporation | Method and system for cloud service pre-provisioning |
US10911367B2 (en) | 2018-06-27 | 2021-02-02 | Oracle International Corporation | Computerized methods and systems for managing cloud computer services |
US11115344B2 (en) | 2018-06-27 | 2021-09-07 | Oracle International Corporation | Computerized methods and systems for migrating cloud computer services |
US10785129B2 (en) | 2018-06-27 | 2020-09-22 | Oracle International Corporation | Computerized methods and systems for maintaining and modifying cloud computer services |
US11201828B2 (en) | 2018-10-08 | 2021-12-14 | EMC IP Holding Company LLC | Stream allocation using stream credits |
CN111580951B (zh) * | 2019-02-15 | 2023-10-10 | 杭州海康威视数字技术股份有限公司 | 一种任务分配方法及资源管理平台 |
US11907743B2 (en) | 2019-05-21 | 2024-02-20 | Oracle International Corporation | System and method for relocating customer virtual machine instances in a multi-tenant cloud service |
US10860381B1 (en) * | 2020-05-14 | 2020-12-08 | Snowflake Inc. | Flexible computing |
US11907764B2 (en) * | 2020-05-20 | 2024-02-20 | GE Precision Healthcare LLC | Managing computer resources for clinical applications |
CN113448726B (zh) * | 2021-05-28 | 2022-11-04 | 山东英信计算机技术有限公司 | 一种资源调度方法和装置 |
CN114430373A (zh) * | 2021-12-22 | 2022-05-03 | 天翼云科技有限公司 | 一种动态调整带宽的方法及装置 |
Citations (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US5996013A (en) * | 1997-04-30 | 1999-11-30 | International Business Machines Corporation | Method and apparatus for resource allocation with guarantees |
CN101227696A (zh) * | 2007-01-18 | 2008-07-23 | 日本电气株式会社 | 能够根据数据种类有效使用无线资源的无线基站装置 |
Family Cites Families (12)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US7260060B1 (en) * | 1997-06-07 | 2007-08-21 | Nortel Networks Limited | Call admission control |
US20020002609A1 (en) * | 1999-12-29 | 2002-01-03 | Chung David W. | Telecommunications operating system |
US8095620B2 (en) * | 2002-06-13 | 2012-01-10 | Elbit Systems Land and C41-Tadiran Ltd. | System and method for dynamic allocation of a resource |
US7512683B2 (en) * | 2003-05-15 | 2009-03-31 | At&T Intellectual Property I, L.P. | Systems, methods and computer program products for managing quality of service, session, authentication and/or bandwidth allocation in a regional/access network (RAN) |
US7380039B2 (en) * | 2003-12-30 | 2008-05-27 | 3Tera, Inc. | Apparatus, method and system for aggregrating computing resources |
US20060195578A1 (en) * | 2005-02-28 | 2006-08-31 | Fujitsu Limited | Resource allocation method for network area and allocation program therefor, and network system |
WO2009140979A1 (en) | 2008-05-21 | 2009-11-26 | Telefonaktiebolaget L M Ericsson (Publ) | Resource pooling in a blade cluster switching center server |
US8311207B2 (en) * | 2009-05-04 | 2012-11-13 | Avaya Inc. | Efficient and cost-effective distribution call admission control |
JP5400482B2 (ja) * | 2009-06-04 | 2014-01-29 | 株式会社日立製作所 | 管理計算機、リソース管理方法、リソース管理プログラム、記録媒体および情報処理システム |
US8578026B2 (en) | 2009-06-22 | 2013-11-05 | Citrix Systems, Inc. | Systems and methods for handling limit parameters for a multi-core system |
US8463908B2 (en) | 2010-03-16 | 2013-06-11 | Alcatel Lucent | Method and apparatus for hierarchical management of system resources |
US8520541B2 (en) * | 2010-08-20 | 2013-08-27 | Shoretel, Inc. | Managing network bandwidth |
-
2011
- 2011-04-04 US US13/079,593 patent/US8782240B2/en active Active
- 2011-09-30 CN CN201110358566.8A patent/CN102655503B/zh active Active
Patent Citations (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US5996013A (en) * | 1997-04-30 | 1999-11-30 | International Business Machines Corporation | Method and apparatus for resource allocation with guarantees |
CN101227696A (zh) * | 2007-01-18 | 2008-07-23 | 日本电气株式会社 | 能够根据数据种类有效使用无线资源的无线基站装置 |
Also Published As
Publication number | Publication date |
---|---|
CN102655503A (zh) | 2012-09-05 |
US20120096167A1 (en) | 2012-04-19 |
US8782240B2 (en) | 2014-07-15 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN102655503B (zh) | 使用共享资源池的资源分配 | |
CN109618002B (zh) | 一种微服务网关优化方法、装置及存储介质 | |
US20200045115A1 (en) | Collaboration techniques between parties using one or more communication modalities | |
US9037508B2 (en) | Formation and rearrangement of ad hoc networks | |
EP2852156B1 (en) | Method, device, and system for establishing concatenation between multipoint controllers | |
EP2913978A1 (en) | Business scheduling method and apparatus and convergence device | |
US7843861B2 (en) | Coalition formation and service provisioning of bandwidth sharing AD HOC networks | |
CN1622549A (zh) | 用于使用对等网络协议共享应用程序的方法和设备 | |
US7944878B2 (en) | Filtering in bandwidth sharing ad hoc networks | |
CN110225146B (zh) | 内外网映射方法、装置、电子设备、介质及视频会议系统 | |
CN103581245A (zh) | 一种内容分发网络内容分发的方法及系统 | |
CN104170337A (zh) | 无线网络之上的多模态通信优先级 | |
US9729347B2 (en) | System and method for selection of a conference bridge master server | |
CN110430386B (zh) | 一种基于云资源池技术的视频会议系统及其工作方法 | |
CN102195851A (zh) | 负载分担方法、系统和接入服务器 | |
US20150156231A1 (en) | Method and a server of reserving conference hardware resources | |
US8856350B2 (en) | Efficient connection management and data synchronization | |
CN109413117B (zh) | 分布式数据计算方法、装置、服务器及计算机存储介质 | |
CN107438098B (zh) | 一种动态内容分发方法及其系统 | |
US20090157822A1 (en) | System and method for high efficiency tunnelling for agile meetings | |
CN110769023B (zh) | 一种基于智能家庭网关的点对点内容分发网络系统 | |
CN109670691A (zh) | 用于客服队列管理及客服分配的方法、设备与客服系统 | |
CN112925946B (zh) | 一种业务数据存储方法、装置及电子设备 | |
RU2522995C2 (ru) | Способ и устройство создания одноранговой группы в одноранговом приложении и способ применения одноранговой группы | |
US11736553B1 (en) | Selecting hosting servers for interactive electronic activities |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
C06 | Publication | ||
PB01 | Publication | ||
C10 | Entry into substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
C14 | Grant of patent or utility model | ||
GR01 | Patent grant |