Detailed Action
This action is in response to application filed on 07/03/2023 which claims benefit to foreign application no. IN202341034025 filed on 05/15/2023.
The present application, filed on or after March 16, 2013, is being examined under the first inventor to file provisions of the AIA .
Claims 1-20 are pending.
Claims 1-20 are rejected.
Drawings
The drawings submitted on 07/03/2025 are accepted.
Claim Objections
Claim 18, line 5 should be amended to “in response to determining… ” for clarification purposes.
Claim 18, line 13 should be amended to “stopping the at least one preemptible virtual machine on the third host…” for clarification purposes.
Claim Rejections - 35 USC § 101
35 U.S.C. 101 reads as follows:
Whoever invents or discovers any new and useful process, machine, manufacture, or composition of matter, or any new and useful improvement thereof, may obtain a patent therefor, subject to the conditions and requirements of this title.
Claims 1-12 are rejected under 35 U.S.C. 101 as being directed to abstract idea without significantly more.
Representative claim 1 is directed to a method comprising:
determining when preemption is required to deploy a virtual machine in a computing environment;
when preemption is required to deploy the virtual machine, identifying, in the computing environment, one or more hosts of a plurality of hosts capable of supporting the virtual machine when at least one preemptible virtual machine of one or more preemptible virtual machines is stopped on a corresponding host of the one or more hosts;
prioritizing the one or more hosts based on a quantity of preemptible virtual machines on each of the one or more hosts;
selecting a host from the one or more hosts to deploy the virtual machine based on the prioritization of the one or more hosts;
stopping the at least one preemptible virtual machine on the host; and
deploying the virtual machine on the host.
Per prong 1, Step 2A, the above emphasized element/concepts are not meaningfully different than those concepts found by the courts to be abstract, namely, mental processes including concepts performed in the human mind (including an observation, evaluation, judgment, opinion) and/or humans using pen and paper (see, October 2019 Patent Eligibility Guidance Update, 84 Fed. Reg. 55,942, hereinafter “PEG”). For instance, humans can mentally and/or via aid of pen/paper perform a method comprising: determining mentally based on observation/judgement when preemption is required to deploy a virtual machine/task/work in a environment; when preemption is required to deploy the virtual machine/task/work, identifying mentally based on observation/judgment, in the environment, one or more hosts/workers of a plurality of hosts capable of supporting the virtual machine/task/work when at least one preemptible virtual machine/task/work of one or more preemptible virtual machines is stopped on a corresponding host/worker of the one or more hosts; mentally and/or via pen/paper prioritizing the one or more hosts/workers based on a quantity of preemptible virtual machines/task/jobs on each of the one or more hosts/workers; selecting mentally and/or via pen paper a host/worker from the one or more hosts to deploy the virtual machine/task/work based on the prioritization of the one or more hosts.
Per prong 2, Step 2A, the additional non-emphasized elements as noted above; namely; “computing environment… stopping the at least one preemptible virtual machine on the host; and deploying the virtual machine on the host”; are merely adding words “apply it” (or an equivalent) with the judicial exception/mere instructions to implement an abstract idea on a computer, or merely uses a computer as a tool to perform an abstract idea; Generally linking the use of the judicial exception to a particular technological environment or field of use - see MPEP 2106.05(f, g, h). Additionally, the recited claim limitations do not improve the functionality of the electronic device or achieve improved technical results.
Per Step 2B, the additional non-emphasized elements as noted above; namely; “computing environment… stopping the at least one preemptible virtual machine on the host; and deploying the virtual machine on the host”; are merely adding words “apply it” (or an equivalent) with the judicial exception/mere instructions to implement an abstract idea on a computer, or merely uses a computer as a tool to perform an abstract idea; Generally linking the use of the judicial exception to a particular technological environment or field of use - see MPEP 2106.05(d, f, g, h). Additionally, the recited claim limitations do not improve the functionality of the electronic device or achieve improved technical results. Accordingly, the above limitations singularly or in combination do not result in the claim as a whole amounting to significantly more than the judicial exception.
Accordingly, claim 1 is rejected under 35 U.S.C. 101 as being directed to an abstract idea without significantly more.
Independent claim 7 is system claim corresponding to method claim 1 and is of substantially same scope.
Accordingly, claims 1, and 7 are rejected under the same rational as set forth for claim 1.
Dependent claims 2-6, and 8-12 when considered individually or in combination per steps as noted above are rejected under the same rational as set forth above for claims 1, and 7. In particular, claims 2-6, and 8-12 describe mental steps with aid of paper/pen to mentally prioritizing VM based on resource reservation, mentally selecting VM based on prioritization, mentally determining if test is successful, mentally determining when preemption is required/in response to determining, observing/monitoring information, determining resource desirability satisfy criteria/in response to determining, as well as additional elements of execute VM/stop VM, memory/process reservation data, initiating/starting VM, deploy VM, increase resource shares, decrease resource shares data gathering steps; are merely adding words “apply it” (or an equivalent) with the judicial exception/mere instructions to implement an abstract idea on a computer, or merely uses a computer as a tool to perform an abstract idea; Generally linking the use of the judicial exception to a particular technological environment or field of use - see MPEP 2106.05(f, g, h), which does not impose meaningful limitation to abstract idea (Per prong 2, Step 2A, and Step 2B) and same analysis and conclusion apply as noted for claims 1, and 7.
Accordingly, claims 1- 12 are rejected under 35 U.S.C. 101 as being directed to abstract idea.
Claims 13-20 are rejected under 35 U.S.C. 101 as being directed to abstract idea without significantly more.
Representative claim 13 is directed to a method comprising:
monitoring resource desirability information for a virtual machine on a host of a plurality of hosts;
determining that the resource desirability information for the virtual machine satisfies one or more criteria;
in response to determining that the resource desirability information for the virtual machine satisfies the one or more criteria, determining whether resource shares can be increased for the virtual machine on the host; when the resource shares cannot be increased for the virtual machine,
migrating the virtual machine to a second host of the plurality of hosts;
when the resource shares can be increased for the virtual machine:
increasing resource shares for the virtual machine on the host; and decreasing resource shares of one or more preemptible virtual machines on the host.
Per prong 1, Step 2A, the above emphasized element/concepts are not meaningfully different than those concepts found by the courts to be abstract, namely, mental processes including concepts performed in the human mind (including an observation, evaluation, judgment, opinion) and/or humans using pen and paper (see, October 2019 Patent Eligibility Guidance Update, 84 Fed. Reg. 55,942, hereinafter “PEG”). For instance, humans can mentally and/or via aid of pen/paper perform a method comprising: observing/monitoring resource desirability information for a virtual machine on a host of a plurality of hosts; mentally determining that the resource desirability information for the virtual machine satisfies one or more criteria; in response to determining that the resource desirability information for the virtual machine satisfies the one or more criteria, mentally determining whether resource shares can be increased for the virtual machine/task/job on the host/worker, and when the resource shares cannot be increased for the virtual machine/task/job, assigning job/task to another worker… when the resource shares can be increased for the virtual machine/work/task/job, mentally/via pen paper increasing/allocating resources if possible.
Per prong 2, Step 2A, the additional non-emphasized elements as noted above; namely; “migrating the virtual machine to a second host of the plurality of hosts; increasing resource shares for the virtual machine on the host; and decreasing resource shares of one or more preemptible virtual machines on the host”; are merely adding words “apply it” (or an equivalent) with the judicial exception/mere instructions to implement an abstract idea on a computer, or merely uses a computer as a tool to perform an abstract idea; Generally linking the use of the judicial exception to a particular technological environment or field of use - see MPEP 2106.05(f, g, h). Additionally, the recited claim limitations do not improve the functionality of the electronic device or achieve improved technical results.
Per Step 2B, the additional non-emphasized elements as noted above; namely; “migrating the virtual machine to a second host of the plurality of hosts; increasing resource shares for the virtual machine on the host; and decreasing resource shares of one or more preemptible virtual machines on the host”;; are merely adding words “apply it” (or an equivalent) with the judicial exception/mere instructions to implement an abstract idea on a computer, or merely uses a computer as a tool to perform an abstract idea; Generally linking the use of the judicial exception to a particular technological environment or field of use - see MPEP 2106.05(d, f, g, h). Additionally, the recited claim limitations do not improve the functionality of the electronic device or achieve improved technical results. Accordingly, the above limitations singularly or in combination do not result in the claim as a whole amounting to significantly more than the judicial exception.
Accordingly, claim 13 is rejected under 35 U.S.C. 101 as being directed to an abstract idea without significantly more.
Dependent claims when considered individually or in combination per steps as noted above are rejected under the same rational as set forth above for claim 13. In particular, claims 14-20 describe mental steps with aid of paper/pen for mentally selecting hosts/workers, determining if share for VM is above threshold, determining if shares can be increased, identifying requests, determining preemptions is required, identify hosts, prioritizing hosts, selecting hosts, determining if test successful, determining whether resource reservation is available, as well as additional elements memory/process reservation data, stopping VM, deploy VM, start/initiate/test VM are mere data gathering steps; are merely adding words “apply it” (or an equivalent) with the judicial exception/mere instructions to implement an abstract idea on a computer, or merely uses a computer as a tool to perform an abstract idea; Generally linking the use of the judicial exception to a particular technological environment or field of use - see MPEP 2106.05(f, g, h), which does not impose meaningful limitation to abstract idea (Per prong 2, Step 2A, and Step 2B) and same analysis and conclusion apply as noted for claim 13.
Accordingly, claims 13-20 are rejected under 35 U.S.C. 101 as being directed to abstract idea.
Examiner Notes
Examiner cites particular columns, paragraphs, figures and line numbers in the references as applied to the claims below for the convenience of the applicant. Although the specified citations are representative of the teachings in the art and are applied to the specific limitations within the individual claim, other passages and figures may apply as well. It is respectfully requested that, in preparing responses, the applicant fully consider the references in their entirety as potentially teaching all or part of the claimed invention, as well as the context of the passage as taught by the prior art or disclosed by the examiner.
In the event the determination of the status of the application as subject to AIA 35 U.S.C. 102 and 103 (or as subject to pre-AIA 35 U.S.C. 102 and 103) is incorrect, any correction of the statutory basis for the rejection will not be considered a new ground of rejection if the prior art relied upon, and the rationale supporting the rejection, would be the same under either status.
Claim Rejections - 35 USC § 103
The following is a quotation of 35 U.S.C. 103 which forms the basis for all obviousness rejections set forth in this Office action:
A patent for a claimed invention may not be obtained, notwithstanding that the claimed invention is not identically disclosed as set forth in section 102, if the differences between the claimed invention and the prior art are such that the claimed invention as a whole would have been obvious before the effective filing date of the claimed invention to a person having ordinary skill in the art to which the claimed invention pertains. Patentability shall not be negated by the manner in which the invention was made.
Claims 1-3, 5, 7-9, and 11 are rejected under 35 U.S.C. 103 as being unpatentable over Lenihan et al. (US 20240256353 A1, referred hereinafter as D1) in view of Jayasekara et al. (“A Resource and Policy Aware VM Scheduler for Medium-Scale Clouds”, NPL, pages 1-6, dated August, 2015, retrieved from url:
<https://www.researchgate.net/publication/280884008_A_Resource_and_Policy_Aware_VM_Scheduler_for_Medium-Scale_Clouds>, referred hereinafter as D2).
As per claim 1, D1 discloses,
A method comprising, (D1, abstract).
determining when preemption is required to deploy a virtual machine in a computing environment, (D1, 0016 discloses determining insufficient resources are available to deploy a VM, a preemptible VM executing on a host is identified for preemption, and deploying the VM using recovered resources from the preempted VM which reads on determining when preemption is required to deploy a virtual machine in a computing environment).
when preemption is required to deploy the virtual machine, identifying, in the computing environment, one or more hosts of a plurality of hosts capable of supporting the virtual machine when at least one preemptible virtual machine of one or more preemptible virtual machines is stopped on a corresponding host of the one or more hosts, (D1, figure 1-2 and accompanying text, 0016-0017, 0020 discloses determining insufficient resources are available to deploy a VM, a preemptible VM is identified for preemption, and deploying the VM using recovered resources from the preempted VM which reads on identifying, in the computing environment (e.g. cloud), one or more hosts of a plurality of hosts capable of supporting the virtual machine when at least one preemptible virtual machine of one or more preemptible virtual machines is stopped on a corresponding host of the one or more hosts (e.g. preemptable vm resides on hosts/nodes)).
selecting a host from the one or more hosts to deploy the virtual machine…; stopping the at least one preemptible virtual machine on the host; and deploying the virtual machine on the host, (D1, figure 1-3A, 4A and accompanying text, 0016-0017, 0020 discloses determining insufficient resources are available to deploy a VM, a preemptible VM is identified for preemption, preempting/stopping VM on the host/node, and deploying the VM using recovered resources from the preempted VM which reads on selecting a host from the one or more hosts to deploy the virtual machine…; stopping the at least one preemptible virtual machine on the host; and deploying the virtual machine on the host).
D1 fails to expressly disclose - prioritizing the one or more hosts based on a quantity of preemptible virtual machines on each of the one or more hosts… based on the prioritization of the one or more hosts.
D2 (abstract, page 5) discloses preemptive scheduler prioritizes/selects the host among others on which minimum number of low priority VMs (e.g. preemptible VMs) are running as a candidate host to deploy a VM.
Accordingly, it would have been obvious to one having ordinary skill in the art before the effective filing date of the invention, as disclosed in D1, to include the teachings of D2 as noted above. This would have been obvious with predicable results of prioritizing/selecting hosts meeting resource requirements of a VM to be deployed, and thus improving resource request acceptance rate and increasing the utilization of cloud resources as disclosed by D2 (abstract).
As per claim 2, the rejection of claim 1 further incorporated, D1 discloses,
wherein the host executes the at least one preemptible virtual machine and one or more additional preemptible virtual machines, and wherein stopping that at least one preemptible virtual machine comprises, (D1, figure 1-3A, 4A and accompanying text, 0016-0017, 0020 discloses determining insufficient resources are available to deploy a VM, a preemptible VMs are identified for preemption, preempting/stopping one or more VMs executing on the host/node, and deploying the VM using recovered resources from the preempted VM which reads on selecting a host from the one or more hosts to deploy the virtual machine…; stopping the at least one preemptible virtual machine on the host; and deploying the virtual machine on the host).
selecting the at least one preemptible virtual machine to be stopped to support the virtual machine, wherein the stoppage of the at least one preemptible virtual machine provides resources of the host to support a resource reservation of the virtual machine; and stopping the at least one preemptible virtual machine to provide resources of the host to support a resource reservation of the virtual machine, (D1, figure 1-3A, 4A and accompanying text, 0016-0017, 0020 discloses determining insufficient resources are available to deploy a VM, one or more preemptible VMs are identified for preemption, preempting/stopping one or more VMs from executing on the host/node, and deploying the VM using recovered resources from the preempted VM which reads on selecting the at least one preemptible virtual machine to be stopped to support the virtual machine, wherein the stoppage of the at least one preemptible virtual machine provides resources of the host to support a resource reservation of the virtual machine; and stopping the at least one preemptible virtual machine to provide resources of the host to support a resource reservation of the virtual machine).
D1 fails to expressly disclose - prioritizing the at least one preemptible virtual machine and the one or more additional preemptible virtual machines based on resource reservations by each of the at least one preemptible virtual machine and the one or more additional preemptible virtual machines;… based on the prioritization of the at least one preemptible virtual machine and the one or more additional preemptible virtual machines.
D2 (abstract, page 5) discloses preemptive scheduler prioritizes/selects the host on which minimum number of low priority VMs (e.g. preemptible VMs) are running as a candidate host to deploy a VM, where D2 further discloses “sorts all VMs running on the candidate in the ascending order of their allocation priorities. Starting from the VM with minimum allocation priority, Preemptive Scheduler selects VMs for preemption until the desired amount of memory that can be released exceeds the required amount of space. Once the VMs are selected, they are preempted and queued in the database for later re-allocation. Once the VM list which should be preempted is finalized, the scheduler calls an additional web service implemented in Java, called JVirshService. In this external call, Preemption Scheduler passes the list of VMs to be preempted by a RESTful request and JVirsh service performs the preemption” which clearly reads on prioritizing/ranking the at least one preemptible virtual machine and the one or more additional preemptible virtual machines based on resource reservations (e.g. based allocation priority and desired amount of memory) by each of the at least one preemptible virtual machine and the one or more additional preemptible virtual machines;… based on the prioritization of the at least one preemptible virtual machine and the one or more additional preemptible virtual machines
Accordingly, it would have been obvious to one having ordinary skill in the art before the effective filing date of the invention, as disclosed in D1, to include the teachings of D2 as noted above. This would have been obvious with predicable results of prioritizing/selecting hosts meeting resource requirements (e.g. number of preemptible VMs) for a VM to be deployed, and thus improving resource request acceptance rate and increasing the utilization of cloud resources as disclosed by D2 (abstract).
As per claim 3, the rejection of claim 2 further incorporated, D1 discloses,
wherein the resource reservations comprise memory resource reservations and processing resource reservations, (D1, 0003 discloses resource reservation being processing/storage resources. Additionally, D2 (page 1, page 5) also discloses resource reservation being processing/storage resources).
As per claim 5, the rejection of claim 1 further incorporated, D1 discloses,
wherein determining when preemption is required to deploy the virtual machine in the computing environment comprises determining whether a resource reservation is available in the plurality of hosts to support a resource reservation of the virtual machine, (D1, figure 1-2 and accompanying text, 0016-0017, 0020 discloses determining insufficient resources are available to reserve/deploy a VM, a preemptible VM is identified for preemption, and deploying the VM using recovered resources from the preempted VM which reads on determining when preemption is required to deploy the virtual machine in the computing environment comprises determining whether a resource reservation (e.g. per step 204 of figure 2) is available in the plurality of hosts to support a resource reservation of the virtual machine).
As per claim 7-9, and 11.
Claims 7-9, and 11 are system claims corresponding to method claims 1-3, and 5, and are of substantially same scope.
Accordingly, claims 7-9, and 11 are rejected under the same rational as set forth for claims 1-3, and 5.
Claims 4 and 10 are rejected under 35 U.S.C. 103 as being unpatentable over Lenihan et al. (US 20240256353 A1, referred hereinafter as D1) in view of Jayasekara et al. (“A Resource and Policy Aware VM Scheduler for Medium-Scale Clouds”, NPL, pages 1-6, dated August, 2015, retrieved from url:
<https://www.researchgate.net/publication/280884008_A_Resource_and_Policy_Aware_VM_Scheduler_for_Medium-Scale_Clouds>, referred hereinafter as D2) in view of Shah (US 8966318 B1, referred hereinafter as D5).
As per claims 4, and 10, the rejection of claims 1 and 7 are further incorporated, D1 discloses,
further comprising: after stopping the at least one preemptible virtual machine, and initiating… the virtual machine at the host, wherein deploying the virtual machine on the host occurs in response to…. (D1, figure 1-3A, 4A and accompanying text, 0016-0017, 0020 discloses determining insufficient resources are available to deploy a VM, a preemptible VM is identified for preemption, preempting/stopping VM on the host/node, and deploying the VM using recovered resources from the preempted VM which reads on selecting a host from the one or more hosts to deploy the virtual machine…; stopping the at least one preemptible virtual machine on the host; and deploying/executing the virtual machine on the host).
D1 fails to expressly disclose - initiating a test of the virtual machine at the host; determining when the test is successful;… in response to determining when the test is successful.
However, D5 (col. 4 lines 34-67) discloses initiating a test of the virtual machine at the host; determining when the test is successful;… in response to determining when the test is successful, providing users guarantee of restorability of VM, and restoring/deploying the VM at the host if needed.
Accordingly, it would have been obvious to one having ordinary skill in the art before the effective filing date of the invention, as disclosed in D1, to include the teachings of D5 as noted above. This would have been obvious with predicable results of having a virtual machine instantiated, with/based on guarantee of restorability/execution determined from successful testing of a VM, from a backup image, in response to a client request as disclosed by D5.
Claims 6, and 12 are rejected under 35 U.S.C. 103 as being unpatentable over Lenihan et al. (US 20240256353 A1, referred hereinafter as D1) in view of Jayasekara et al. (“A Resource and Policy Aware VM Scheduler for Medium-Scale Clouds”, NPL, pages 1-6, dated August, 2015, retrieved from url:
<https://www.researchgate.net/publication/280884008_A_Resource_and_Policy_Aware_VM_Scheduler_for_Medium-Scale_Clouds>, referred hereinafter as D2) in view of Esfahany et al. (US 20050262504 A1, referred hereinafter as D3).
As per claims 6 and 12:
The rejection of claims 1 and 7 further incorporated.
As noted above, D1 discloses preemptible virtual machines; however, D1 fails to expressly disclose - monitoring resource desirability information for the virtual machine on the host; determining that the resource desirability information for the virtual machine satisfies one or more criteria; and in response to determining that the resource desirability information for the virtual machine satisfies the one or more criteria: increase resource shares for the virtual machine on the host; and decrease resource shares of one or more other… virtual machines on the host.
However, D3 discloses:
monitoring resource desirability information for the virtual machine on the host, (D3, 0004, 0008, figure 2A-2C discloses plurality of VM may be executed on plurality of hosts, and collecting resource/CPU usage data for VM executing on host/server), determining that the resource desirability information for the virtual machine satisfies one or more criteria, (D3, 0004, 0008, 0025-0026, figure 2A-2C discloses plurality of VM may be executed on plurality of hosts, and collecting resource/CPU usage data for VM executing on host/server, and if the collected usage data above or below processing, increasing or decreasing the shares of resources allocated for the VM), in response to determining that the resource desirability information for the virtual machine satisfies the one or more criteria, (D3, 0004, 0008, 0025-0026, 0030, figure 2A-3 discloses plurality of VM may be executed on plurality of hosts, and collecting resource/CPU usage data for VM executing on host/server, and if the collected usage data above or below processing, increasing or decreasing the shares of resources allocated for the VM, where per step s204 of figure 3, the system of D3 discloses determining whether resource shares can be increased for the virtual machine on the host), increase resource shares for the virtual machine on the host; and decrease resource shares of one or more other… virtual machines on the host, (D3, 0004, 0008, 0025-0026, 0030, figure 2A-4 discloses plurality of VMs may be executed on plurality of hosts, and collecting resource/CPU usage data for one or more VM executing on host/server, and if the collected usage data above or below processing time, increasing or decreasing the shares of resources allocated for the one or more VMs).
Accordingly, it would have been obvious to one having ordinary skill in the art before the effective filing date of the invention, as disclosed in D1, to include the teachings of D3 as noted above. This would have been obvious with predicable results of dynamically assigning resources to various VMs based on real-time requirements as disclosed by D3 (0007).
Claims 13-17 are rejected under 35 U.S.C. 103 as being unpatentable over Esfahany et al. (US 20050262504 A1, referred hereinafter as D3) in view of Lenihan et al. (US 20240256353 A1, referred hereinafter as D1) in view Kumar et al. (US 20200183703 A1, referred hereinafter as D4).
As per claim 13, D3 discloses,
A method comprising, (D3, abstract).
monitoring resource desirability information for a virtual machine on a host of a plurality of hosts, (D3, 0004, 0008, figure 2A-2C discloses plurality of VM may be executed on plurality of hosts, and collecting resource/CPU usage data for VM executing on host/server).
determining that the resource desirability information for the virtual machine satisfies one or more criteria, (D3, 0004, 0008, 0025-0026, figure 2A-2C discloses plurality of VM may be executed on plurality of hosts, and collecting resource/CPU usage data for VM executing on host/server, and if the collected usage data above or below processing, increasing or decreasing the shares of resources allocated for the VM).
in response to determining that the resource desirability information for the virtual machine satisfies the one or more criteria, determining whether resource shares can be increased for the virtual machine on the host, (D3, 0004, 0008, 0025-0026, 0030, figure 2A-3 discloses plurality of VM may be executed on plurality of hosts, and collecting resource/CPU usage data for VM executing on host/server, and if the collected usage data above or below processing, increasing or decreasing the shares of resources allocated for the VM, where per step s204 of figure 3, the system of D3 discloses determining whether resource shares can be increased for the virtual machine on the host).
when the resource shares cannot be increased for the virtual machine, (D3, 0004, 0008, 0025-0026, 0030, figure 2A-3 discloses plurality of VM may be executed on plurality of hosts, and collecting resource/CPU usage data for VM executing on host/server, and if the collected usage data above or below processing, increasing or decreasing the shares of resources allocated for the VM, where per step s204 of figure 3, the system of D3 discloses determining whether resource shares can be increased for the virtual machine on the host or not).
when the resource shares can be increased for the virtual machine: increasing resource shares for the virtual machine on the host, (D3, 0004, 0008, 0025-0026, 0030, figure 2A-4 discloses plurality of VMs may be executed on plurality of hosts, and collecting resource/CPU usage data for VM executing on host/server, and if the collected usage data above or below processing time, increasing or decreasing the shares of resources allocated for the VM, where per step s204 of figure 3, the system of D3 discloses determining whether resource shares can be increased for the virtual machine on the host and accordingly increasing shares cpu for the VM).
and decreasing resource shares of one or more… virtual machines on the host, (D3, 0004, 0008, 0025-0026, 0030, figure 2A-4 discloses plurality of VMs may be executed on plurality of hosts, and collecting resource/CPU usage data for one or more VM executing on host/server, and if the collected usage data above or below processing time, increasing or decreasing the shares of resources allocated for the one or more VMs).
D3 discloses VMs having associated priority; however, D3 fails to expressly disclose - preemptible virtual machines.
However, D1 (0016) discloses determining insufficient resources are available to deploy a VM, a preemptible VM is identified for preemption, and deploying the VM using recovered resources from the preempted VM.
Accordingly, it would have been obvious to one having ordinary skill in the art before the effective filing date of the invention, as disclosed in D3, to include the teachings of D1 as noted above. This would have been obvious with predicable results of freeing up resources and executing jobs/task/VMs in a resource constrained environment as disclosed by D1 (0015).
D1 fails to expressly disclose - migrating the virtual machine to a second host of the plurality of hosts.
D4 (0012, 0056-0060, figure 3) discloses migrating the virtual machine to a second host of the plurality of hosts based of detection resource contention.
Accordingly, it would have been obvious to one having ordinary skill in the art before the effective filing date of the invention, as disclosed in D3, to include the teachings of D4 as noted above. This would have been obvious with predicable results of reducing resource/CPU contention as disclosed by D4 (0014).
As per claim 14:
The rejection of claim 13 further incorporated.
D3 fails to expressly disclose - selecting the second host from a set of hosts based on the resource availability on the set of hosts.
D4 (0012, 0056-0060, figure 3) discloses migrating the virtual machine to a second host of the plurality of hosts based of detection resource contention, and selecting the second host from a set of hosts based on computed/projected resource/CPU availability on the set of hosts.
Accordingly, it would have been obvious to one having ordinary skill in the art before the effective filing date of the invention, as disclosed in D3, to include the teachings of D4 as noted above. This would have been obvious with predicable results of reducing resource/CPU contention as disclosed by D4 (0014).
As per claim 15, the rejection of claim 14 further incorporated, D3 discloses,
wherein the resource availability comprises processing resource availability, (D3, 0004, 0008, 0025-0026, 0030, figure 2A-4 discloses plurality of VMs may be executed on plurality of hosts, and collecting resource/CPU usage data for one or more VM executing on host/server, and if the collected usage data above or below processing time, increasing or decreasing the shares of resources allocated for the one or more VMs).
D3 fails to expressly disclose- and memory resource availability.
However, D1 (0016) discloses determining insufficient resources are available to deploy a VM, a preemptible VM is identified for preemption, and deploying the VM using recovered resources from the preempted VM, where D1 (0003) discloses resource being processing/storage resources.
Accordingly, it would have been obvious to one having ordinary skill in the art before the effective filing date of the invention, as disclosed in D3, to include the teachings of D1 as noted above. This would have been obvious with predicable results of freeing up resources and executing jobs/task/VMs in a resource constrained environment as disclosed by D1 (0015).
As per claim 16, the rejection of claim 13 further incorporated, D3 discloses,
wherein determining whether the resource shares can be increased for the virtual machine comprises determining whether desired resource shares for the virtual machine exceed a threshold, (D3, 0004, 0008, 0025-0026, 0030, 0033, figure 2A-4 discloses plurality of VMs may be executed on plurality of hosts, and collecting resource/CPU usage data for one or more VM executing on host/server, and if the collected usage data above or below processing times/thresholds, increasing or decreasing the shares of resources allocated for the one or more VMs).
As per claim 17, the rejection of claim 13 further incorporated, D1 discloses,
wherein determining whether resource shares can be increased for the virtual machine comprises determining whether resource shares are available from one or more other virtual machines on the host, (D3, 0004, 0008, 0025-0026, 0030, 0033, figure 2A-4 discloses plurality of VMs may be executed on plurality of hosts, and collecting resource/CPU usage data for one or more VM executing on host/server, and if the collected usage data above or below processing time/thresholds, increasing or decreasing the shares of resources allocated for the one or more VMs which reads on determining whether resource shares can be increased for the virtual machine comprises determining whether resource shares are available from one or more other virtual machines on the host (e.g. decreasing shares of underutilized resources by other VMs to be reallocated for VM needing additional resources.)).
Claim 18 and 20 are rejected under 35 U.S.C. 103 as being unpatentable over Esfahany et al. (US 20050262504 A1, referred hereinafter as D3) in view of Lenihan et al. (US 20240256353 A1, referred hereinafter as D1) in view Kumar et al. (US 20200183703 A1, referred hereinafter as D4) in view of Jayasekara et al. (“A Resource and Policy Aware VM Scheduler for Medium-Scale Clouds”, NPL, pages 1-6, dated August, 2015, retrieved from url: < https://www.researchgate.net/publication/280884008_A_Resource_and_Policy_Aware_VM_Scheduler_for_Medium-Scale_Clouds>, referred hereinafter as D2).
As per claim 18:
The rejection of claim 13 further incorporated.
D3 fails to expressly disclose - identifying a request to deploy a second virtual machine in the plurality of hosts, determining that preemption is required to deploy the second virtual machine in the plurality of hosts; in response determining that preemption is required to deploy the second virtual machine, identifying one or more hosts of the plurality of hosts capable of supporting the second virtual machine when at least one preemptible virtual machine of one or more preemptible virtual machines is stopped on a corresponding host of the one or more hosts; prioritizing the one or more hosts based on a quantity of preemptible virtual machines on each of the one or more hosts; selecting a third host from the one or more hosts to deploy the second virtual machine based on the prioritization of the one or more hosts; stopping the at least one preemptible virtual machine on the host; and deploying the second virtual machine on the third host.
However, D1 and D2 discloses the above limitations. For instance, D1 discloses,
identifying a request to deploy a second virtual machine in the plurality of hosts, determining when preemption is required to deploy the second virtual machine in a computing environment, (D1, figure 2, 0016 discloses receiving request to deploy VM, determining insufficient resources are available to deploy a VM, a preemptible VM is identified for preemption, and deploying the VM using recovered resources from the preempted VM which reads on determining when preemption is required to deploy a virtual machine in a computing environment), in response to determining that preemption is required to deploy the second virtual machine, identifying, one or more hosts of a plurality of hosts capable of supporting the second virtual machine when at least one preemptible virtual machine of one or more preemptible virtual machines is stopped on a corresponding host of the one or more hosts, (D1, figure 1-2 and accompanying text, 0016-0017, 0020 discloses determining insufficient resources are available to deploy a VM, a preemptible VM is identified for preemption, and deploying the VM using recovered resources from the preempted VM which reads on identifying, in the computing environment (e.g. cloud), one or more hosts of a plurality of hosts capable of supporting the virtual machine when at least one preemptible virtual machine of one or more preemptible virtual machines is stopped on a corresponding host of the one or more hosts (e.g. preemptable vm resides on hosts/nodes)), selecting a third host from the one or more hosts to deploy the second virtual machine…; stopping the at least one preemptible virtual machine on the host; and deploying the virtual machine on the host, (D1, figure 1-3A, 4A and accompanying text, 0016-0017, 0020 discloses determining insufficient resources are available to deploy a VM, a preemptible VM is identified for preemption, preempting/stopping VM on the host/node, and deploying the VM using recovered resources from the preempted VM which reads on selecting a host from the one or more hosts to deploy the virtual machine…; stopping the at least one preemptible virtual machine on the host; and deploying the virtual machine on the host).
D3/D1 fails to expressly disclose - prioritizing the one or more hosts based on a quantity of preemptible virtual machines on each of the one or more hosts… based on the prioritization of the one or more hosts.
D2 (abstract, page 5, section D) discloses preemptive scheduler prioritizes/selects the host on which minimum number of low priority VMs (e.g. preemptible VMs) are running as a candidate host to deploy a VM.
Accordingly, it would have been obvious to one having ordinary skill in the art before the effective filing date of the invention, as disclosed in D3, to include the teachings of D2 as noted above. This would have been obvious with predicable results of prioritizing/selecting hosts meeting resource requirements for a VM to be deployed, and thus improving resource request acceptance rate and increasing the utilization of cloud resources as disclosed by D2 (abstract).
As per claim 20:
The rejection of claim 18 further incorporated.
D3 fails to expressly disclose - wherein determining when preemption is required to deploy the second virtual machine in the plurality of hosts comprises determining whether a resource reservation is available in the plurality of hosts to support a resource reservation of the second virtual machine.
D1 (figure 1-2 and accompanying text, 0016-0017, 0020) discloses determining insufficient resources are available to deploy a VM, a preemptible VM is identified for preemption, and deploying the VM using recovered resources from the preempted VM which reads on determining when preemption is required to deploy the virtual machine in the computing environment comprises determining whether a resource reservation (e.g. per step 204 of figure 2) is available in the plurality of hosts to support a resource reservation of the virtual machine.
Accordingly, it would have been obvious to one having ordinary skill in the art before the effective filing date of the invention, as disclosed in D3, to include the teachings of D1 as noted above. This would have been obvious with predicable results of freeing up resources and executing jobs/task/VMs in a resource constrained environment as disclosed by D1 (0015).
Claim 19 is rejected under 35 U.S.C. 103 as being unpatentable over Esfahany et al. (US 20050262504 A1, referred hereinafter as D3) in view of Lenihan et al. (US 20240256353 A1, referred hereinafter as D1) in view Kumar et al. (US 20200183703 A1, referred hereinafter as D4) in view of Jayasekara et al. (“A Resource and Policy Aware VM Scheduler for Medium-Scale Clouds”, NPL, pages 1-6, dated August, 2015, retrieved from url: < https://www.researchgate.net/publication/280884008_A_Resource_and_Policy_Aware_VM_Scheduler_for_Medium-Scale_Clouds>, referred hereinafter as D2) in view of Shah (US 8966318 B1, referred hereinafter as D5).
As per claim 19:
The rejection of claim 18 further incorporated, D3 discloses,
D3 fails to expressly disclose- after stopping the at least one preemptible virtual machine, initiating a test of the second virtual machine at the third host; determining when the test is successful; and wherein deploying the second virtual machine on the third host occurs in response to determining when the test is successful.
However, D1 and D5 discloses the above limitations. For instance, D1 discloses,
further comprising: after stopping the at least one preemptible virtual machine, and initiating… the virtual machine at the host, wherein deploying the virtual machine on the host occurs in response to…. (D1, figure 1-3A, 4A and accompanying text, 0016-0017, 0020 discloses determining insufficient resources are available to deploy a VM, a preemptible VM is identified for preemption, preempting/stopping VM on the host/node, and deploying the VM using recovered resources from the preempted VM which reads on selecting a host from the one or more hosts to deploy the virtual machine…; stopping the at least one preemptible virtual machine on the host; and deploying the virtual machine on the host).
Accordingly, it would have been obvious to one having ordinary skill in the art before the effective filing date of the invention, as disclosed in D3, to include the teachings of D1 as noted above. This would have been obvious with predicable results of freeing up resources and executing jobs/task/VMs in a resource constrained environment as disclosed by D1 (0015).
D3/D1 fails to expressly disclose - initiating a test of the virtual machine at the host; determining when the test is successful;… in response to determining when the test is successful.
However, D5 (col. 4 lines 34-67) discloses initiating a test of the virtual machine at the host; determining when the test is successful;… in response to determining when the test is successful, providing users guarantee of restorability of VM, and restoring/deploy the VM to host.
Accordingly, it would have been obvious to one having ordinary skill in the art before the effective filing date of the invention, as disclosed in D3, to include the teachings of D5 as noted above. This would have been obvious with predicable results of having a virtual machine instantiated, with/based on guarantee of restorability/execution determined from successful test of VM, from the backup image, in response to a client request as disclosed by D5.
Conclusion
The prior art made of record and not relied upon is considered pertinent to applicant’s disclosure.
Mechanism For System-Wide Target Host Optimization In Load Balancing Virtualization Systems
DOCUMENT ID
US 20120036515 A1
DATE PUBLISHED
2012-02-09
Abstract
A mechanism for system-wide target host optimization in load balancing virtualization systems is disclosed. A method of the invention includes detecting a condition triggering a load balancing operation, identifying a plurality of candidate target host machines to receive one or more operating virtual machines (VMs) to be migrated, determining a load per resource on each identified candidate target host machine, and scheduling all operating VMs among all of the identified candidate target host machines in view of an expected load per resource on each candidate target host.
RELEASABLE RESOURCE BASED PREEMPTIVE SCHEDULING
DOCUMENT ID
US 20200159587 A1
DATE PUBLISHED
2020-05-21
Abstract
A computer-implemented method, a computer system and a computer program product for releasable resource-based preemptive scheduling. One or more currently running workloads are determined to be preempted by a pending workload. Releasable resources from the one or more currently running workloads meet required resources of the pending workload. The pending workload is dispatched so that it uses at least part of the releasable resources from the one or more currently running workloads to run.
See form 892.
Any inquiry concerning this communication or earlier communications from the examiner should be directed to MUSTAFA A AMIN whose telephone number is (571)270-3181. The examiner can normally be reached on Monday-Friday from 8:00 AM to 5:00 PM.
If attempts to reach the examiner by telephone are unsuccessful, the examiner’s supervisor, Kevin Young, can be reached on 571-270-3180. The fax phone number for the organization where this application or proceeding is assigned is 571-273-8300.
Information regarding the status of an application may be obtained from Patent Center. Status information for published applications may be obtained from Patent Center. Status information for unpublished applications is available through Patent Center for authorized users only. Should you have questions about access to Patent Center, contact the Electronic Business Center (EBC) at 866-217-9197 (toll-free).
Examiner interviews are available via telephone, in-person, and video conferencing using a USPTO supplied web-based collaboration tool. To schedule an interview, applicant is encouraged to use the USPTO Automated Interview Request (AIR) Form at https://www.uspto.gov/patents/uspto-automated- interview-request-air-form.
/MUSTAFA A AMIN/ Primary Examiner, Art Unit 2194