DETAILED ACTION
Notice of Pre-AIA or AIA Status
The present application, filed on or after March 16, 2013, is being examined under the first inventor to file provisions of the AIA .
Specification
The disclosure is objected to because of the following informalities: it recites verbatim as claim language. Appropriate correction is required.
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-20 are rejected under 35 U.S.C. 101 because
As per claims 1, 8 and 15
under Step 2A, Prong 1,
Claims 1, 8 and 15 recite
A computer-implemented method for managing placements of software components in host computers of a computing environment, the method comprising:
receiving user input for a software component at a managed entity in the computing environment, the user input containing user-selected preferences relating to placement of the software component in a host computer of the computing environment;
automatically generating placement rules for the software component based on the user input;
transmitting the placement rules to a management entity that controls placement and migration of software components in the computing environment using a resource scheduler; and
providing the placement rules for the software component to the resource scheduler by the management entity to be applied to the software component for placement operations.
Under its broadest reasonable interpretation,
receiving user input for a software component at a managed entity in the computing environment, the user input containing user-selected preferences relating to placement of the software component in a host computer of the computing environment;
automatically generating placement rules for the software component based on the user input;
transmitting the placement rules to a management entity that controls placement and migration of software components in the computing environment using a resource scheduler, as drafted is a process that recite the abstract idea of mental processes. These limitations encompass a human mind carrying out these functions through observation, evaluation, judgment and /or opinion, or even with the aid of pen and paper. Thus, these limitations recite and fall within the “Mental Processes” grouping of abstract ideas.
Under Step 2 A prong 2
The judicial exception is not integrated into a practical application. The claims recite the following additional elements,
A system, at least one processors and memory, receiving user input for a software component at a managed entity in the computing environment, the user input containing user-selected preferences relating to placement of the software component in a host computer of the computing environment; automatically generating placement rules for the software component based on the user input; transmitting the placement rules to a management entity that controls placement and migration of software components in the computing environment using a resource scheduler,. The additional elements a system, one or more processors; and memory, a non-transitory readable medium instruction to implement as abstract idea on a computer or merely using a generic computer of computer components as a tool to perform the abstract idea. See MPEP 2106(f).
Under Step 2 B
The additional elements providing the placement rules for the software component to the resource scheduler by the management entity to be applied to the software component for placement operations, cause operations does nothing more than additional insignificant extra solution activity to the judicial expectation, such as data gathering see MPEP 2106(g). Accordingly, the additional elements don’t integrate the abstract idea into practical application because it does not impose any meaningful limits on practicing the abstract idea thus fail to integrate the abstract idea into practical application.
The claims do not include additional elements that are sufficient to amount to significantly more than judicial expectation. As discussed above with respect to integration of the abstract idea into practical application, the additional elements. A system, memory, a readable medium are generic computer components and instructions are use as the tool to perform abstract idea. As to the additional elements providing the placement rules for the software component to the resource scheduler by the management entity to be applied to the software component for placement operations, the courts have identified data gathering is well understood routine and conventional activity see MPEP 2106(d). Accordingly, the additional elements recited in the claims are mental process concept. Thus, claims are not patent eligible.
Claims 2-7, 9-14 and 16-20 as drafted, recite a process that under its broadest reasonable interpretation covers steps that could reasonably be performed in the mind, including with the aid of pen and paper, but for the recitation of generic computer components, “managing…preference…sensing…” as drafted is a process that under its broadest interpretation, recite that abstract idea of mental process. These limitations encompass a human carrying out this function through observation, evaluation even with the aid of pen and paper. Thus, these limitations recite and fall with in Mental Process grouping of abstract idea, furthermore the additional elements “providing…’ fail to integrate the abstract idea into a practical application and fail to amount the abstract idea as discussed above. Thus, the claims are not patent eligible.
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.
Claim(s) 1-20 is/are rejected under 35 U.S.C. 103 as being unpatentable over Ahmad et al US 2013/0097464 in view of Nair et al 2023/0155955.
Regarding claims 1, 8 and 15
Ahmad et al teaches
receiving user input for a software component at a managed entity in the computing environment, the user input containing user-selected preferences relating to placement of the software component in a host computer of the computing environment [0024] When executed by processor 102, rule component 122 causes processor 102 to receive via an input interface a placement rule, such as an affinity rule indicating that a first software application is to be co-located with a second software application during execution of the first and second software applications, or an anti-affinity rule indicating that the first software application is to be separated from the second software application during execution of the first and second software applications. Rule component 122 also causes processor 102 to select failure correlations corresponding to a first computing resource, which is associated with the first software application, and to select one of the plurality of computing resources other than the first computing resource that corresponds to a lowest failure correlation among the selected failure correlations. In addition, or alternatively, rule component 122 causes processor 102 to select a target computing resource container based on the placement rule and a computing resource container that is associated with the first software application. When executed by processor 102, placement component 124 causes processor 102 to associate the second software application with the selected computing resource based on the anti-affinity rule. In addition, or alternatively, placement component 124 may cause processor 102 to transmit a placement request associated with the second software application to the target computing resource container via a communication interface, and to transmit the placement rule to the target computing resource container via the communication interface];
automatically generating placement rules for the software component based on the user input [0014] embodiments described herein facilitate enforcing placement rules based on information about failure correlation between computing resources and/or by delegating enforcement of a placement rule to a computing resource container in which software applications are placed];
transmitting the placement rules to a management entity that controls placement and migration of software components in the computing environment using a resource scheduler [0025] when executed by processor 102, placement component 124 causes processor 102 to associate the second software application with the selected computing resource based on the anti-affinity rule. In addition, or alternatively, placement component 124 may cause processor 102 to transmit a placement request associated with the second software application to the target computing resource container via a communication interface, and to transmit the placement rule to the target computing resource container via the communication interface];
providing the placement rules for the software component to the resource scheduler by the management entity to be applied to the software component for placement operations [0024] When executed by processor 102, rule component 122 causes processor 102 to receive via an input interface a placement rule, such as an affinity rule indicating that a first software application is to be co-located with a second software application during execution of the first and second software applications, or an anti-affinity rule indicating that the first software application is to be separated from the second software application during execution of the first and second software applications. Rule component 122 also causes processor 102 to select failure correlations corresponding to a first computing resource, which is associated with the first software application, and to select one of the plurality of computing resources other than the first computing resource that corresponds to a lowest failure correlation among the selected failure correlations. In addition, or alternatively, rule component 122 causes processor 102 to select a target computing resource container based on the placement rule and a computing resource container that is associated with the first software application.]. Ahmad et al teaches rule and placement but doesn’t teach explicitly scheduler, However Nair et al teaches (see fig 2, [0030] the SDDC level resource scheduler 212 can include a portion of a distributed resource scheduling (DRS) service. The SDDC level resource scheduler 212 can monitor the hosts 115 of each cluster 145 of the hyper-converged SDDC 151 for resource usage, total resource capacity, and available capacity for each host 115, for the cluster 145, and for the SDDC 151 overall. The SDDC level resource scheduler 212 can initially place, migrate, and remove enterprise processes that are to be executed using the cluster 145. The SDDC level resource scheduler 212 can also expand and contract the number of hosts 115 that are deployed by or provisioned to the cluster 145]. Therefore, it would have been obvious to a person of ordinary skill in the art before the effective filing date of the claimed invention to incorporate schedular. The modification would have been obvious because one of ordinary skill in the art would have been motivated to combine teaching into managing placement of software components increased efficiency, faster development, easier maintenance, and improved collaboration and by reusing existing components, developers can save time and effort, leading to quicker software releases.
Regarding claims 2, 9 and 16
Ahmad et al teaches
the management entity is a cluster management center that is configured to create at least one cluster of host computers in the computing environment and wherein the resource scheduler is a module in the cluster management center [0036] Cluster system 300 may also include a resource manager 350 that is coupled to network 315 and/or to storage network 345. Resource manager 350 is associated with (e.g., monitors and/or manages) computing resources, such as hosts 305 and/or datastores 330, 335, 340. In exemplary embodiments, resource manager 350 maintains, and provides to management device 320, a configuration hierarchy that indicates hardware associated with computing resources monitored and/or managed by resource manager 350. For example, a configuration hierarchy may indicate the datacenters included in a facility, the server racks included in a datacenter, the server enclosures included in a rack, the hosts included in a server enclosure, and the disks included in a host. Similarly, a configuration hierarchy may indicate communication links (e.g., network paths) that are used by computing resources]. The feature of providing cluster management… would be obvious for the reasons set forth in the rejection of claim 1.
Regarding claims 3, 10 and 17
Ahmad et al teaches
the user-selected preferences include at least one of host, cluster and data store options for the software component [0022] In exemplary embodiments, memory 104 stores computer-executable instructions for performing one or more of the operations described herein. Memory 104 may include one or more computer-readable storage media that have computer-executable components embodied thereon. In the example of FIG. 1, memory 104 includes a correlation component 120, a rule component 122, and a placement component 124]. The feature of providing datastore… would be obvious for the reasons set forth in the rejection of claim 1.
Regarding claims 4, 11 and 18
Nair et al teaches
the user-selected preferences include at least one of host network performance, host security and host application priority preferences for the software component [0033] The host level management components 221 can include a hypervisor such as VMware ESXi™ that enables virtualization and management options including DRS, high availability for virtual machines and other workloads, fault tolerance, and virtual machine and workload migration. The host level management components 221 can also include a networking and security virtualization component such as VMware NSX®, and a datastore virtualization component such as VMware vSAN™.]. The feature of providing security… would be obvious for the reasons set forth in the rejection of claim 1.
Regarding claims 5, 12 and 19
Ahmad et al teaches
the host network performance of the user- selected preferences includes at least one of bandwidth, delay and jitter [0043] In some embodiments, management device determines 407 (e.g., accesses and/or receives) performance metrics associated with a pair of computing resources and determines 410 a failure correlation based on the performance metrics. For example, a performance correlation indicated by such performance metrics (e.g., concurrent performance degradations) may be used to infer a failure correlation. Performance metrics may include input/output (I/O) latency, I/O throughput, network latency, network bandwidth, and/or any other measurement indicating the performance of a computing resource. Performance metrics may be collected during normal operation of a computing resource. In addition, or alternatively, performance metrics may be collected while intentionally inducing a performance degradation of one or more computing resources, such as by saturating a communication link used by a computing resource with I/O traffic and/or network traffic. In some embodiments, a performance correlation corresponding to a first computing resource and a second computing resource is calculated by creating a parallel time series of the first and second performance metrics associated with the first and second computing resources, respectively. The failure correlation may be determined 410 based on (e.g., may be equal to) the performance correlation]. The feature of providing bandwidth… would be obvious for the reasons set forth in the rejection of claim 1.
Regarding claims 6, 13 and 20
Ahmad et al teaches
sensing the host computers in the computing environment to retrieve information with respect to the user-selected preferences of at least one of the host network performance, the host security and the host application priority [0017] FIG. 1 is a block diagram of an exemplary computing device 100. Computing device 100 includes a processor 102 for executing instructions. In some embodiments, executable instructions are stored in a memory 104. Memory 104 is any device allowing information, such as executable instructions, software applications, placement rules (e.g., affinity rules and/or anti-affinity rules), failure correlations, performance correlations, performance metrics, configuration hierarchies, associations of software applications with computing resources and/or computing resource containers, and/or other data, to be stored and retrieved. For example, memory 104 may include one or more random access memory (RAM) modules, flash memory modules, hard disks, solid state disks, and/or optical disks] and [0033] sosts 305 communicate with each other via a network 315. Cluster system 300 also includes one or more management devices 320, which are coupled in communication with hosts 305 via network 315. In exemplary embodiments, a management device 320 monitors and controls hosts 305. For example, management device 320 may monitor performance metrics (e.g., application performance metrics and/or host performance metrics) associated with hosts 305 and may further coordinate the execution of VMs and/or other software applications by hosts 305 based on the performance metrics. One or more client devices 325 are coupled in communication with network 315, such that client devices 325 may submit requests to hosts 305. For example, hosts 305 may execute instances of software applications that provide data in response to requests from client devices 325]. The feature of providing performance… would be obvious for the reasons set forth in the rejection of claim 1.
Regarding claims 7 and 14
Ahmad et al teaches
the software component is a virtual machine (see fig 2, [0026] Embodiments are described herein with reference to virtual machines (VMs). However, it is contemplated that the methods described may be applied to any type of software application]. The feature of providing virtual machine…would be obvious for the reasons set forth in the rejection of claim 1.
Relevant Prior Art
US 9135018 B2 Britsch et al teaches Computer Cluster And Method For Providing A Disaster Recovery Functionality For A Computer Cluster
US 9213579 B2 Allam et al teaches Software Component Placement On Execution Platforms
US 8429630 B2 Nickolov et al teaches Globally Distributed Utility Computing Cloud
Conclusion
Any inquiry concerning this communication or earlier communications from the examiner should be directed to Anil Khatri whose telephone number is (571)272-3725. The examiner can normally be reached M-F 8:30-5:00.
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) at http://www.uspto.gov/interviewpractice.
If attempts to reach the examiner by telephone are unsuccessful, the examiner’s supervisor, Bradley Teets can be reached at 571-272-3338. The fax phone number for the organization where this application or proceeding is assigned is 571-273-8300.
Information regarding the status of published or unpublished applications may be obtained from Patent Center. Unpublished application information in Patent Center is available to registered users. To file and manage patent submissions in Patent Center, visit: https://patentcenter.uspto.gov. Visit https://www.uspto.gov/patents/apply/patent-center for more information about Patent Center and https://www.uspto.gov/patents/docx for information about filing in DOCX format. For additional questions, contact the Electronic Business Center (EBC) at 866-217-9197 (toll-free). If you would like assistance from a USPTO Customer Service Representative, call 800-786-9199 (IN USA OR CANADA) or 571-272-1000.
/ANIL KHATRI/Primary Examiner, Art Unit 2197