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 .
General Remarks
This response is considered fully responsive to Applicant’s application filed 08/16/2024.
Application filed: 08/16/2024
Applicant’s PgPUB: 2026/0052178
Claims:
Claims 1-20 are pending.
Claims 1, 9 and 15 are independent.
IDS:
New IDS:
IDS filed 08/16/2024 has been considered.
Claim Rejections - 35 USC § 102
The following is a quotation of the appropriate paragraphs of 35 U.S.C. 102 that form the basis for the rejections under this section made in this Office action:
A person shall be entitled to a patent unless –
(a)(2) the claimed invention was described in a patent issued under section 151, or in an application for patent published or deemed published under section 122(b), in which the patent or application, as the case may be, names another inventor and was effectively filed before the effective filing date of the claimed invention.
Claims 1, 3, 5, 6, 9, 11 and 13-15 are rejected under 35 U.S.C. 102(a)(2) as being anticipated by U.S. Patent Application Publication No. 2016/0094639 A1 to Bhattacharyya et al. (“Bhattacharyya”).
As to claim 1, Bhattacharyya discloses:
a method comprising:
receiving, at a network controller associated with a workload environment network, an indication that a first workload is to be provisioned in the workload environment network (¶0008 – Bhattacharyya teaches r assigning a user workload to an application server includes receiving a user request to initiate execution of a workload assigned to a user. An application server is selected, from among multiple application servers, to execute the workload based on compatibility between respective current states of the application servers and the workload.);
receiving, at the network controller, telemetry data from resources associated with a workload orchestrator allocated to host the first workload (Fig. 4, Fig. 7, ¶0051 – Bhattacharyya teaches a load balancer is configured to determine primary and secondary candidate application servers based on the affinity scores returned by the application servers (and possibly other distribution factors). Where the other distribution factors may include: a current load on available application servers; a location; a capacity of available application servers; and a configuration of the application servers. When the other distribution factors are employed, a load balancer may weight the affinity scores based on the other distribution factors when selecting primary and secondary application servers to execute a workload assigned to a user.) the telemetry data including at least:
first telemetry data from first resources associated with the workload orchestrator allocated to host the first workload, the first resources being located in a first workload environment of the workload environment network (Fig. 4, Fig. 7, ¶0051 – Bhattacharyya teaches a load balancer is configured to determine primary and secondary candidate application servers based on the affinity scores returned by the application servers (and possibly other distribution factors). Where the other distribution factors may include: a current load on available application servers; a location; a capacity of available application servers; and a configuration of the application servers. When the other distribution factors are employed, a load balancer may weight the affinity scores based on the other distribution factors when selecting primary and secondary application servers to execute a workload assigned to a user.); and
second telemetry data from second resources associated with the workload orchestrator allocated to host the first workload, the second resources being located in a second workload environment of the workload environment network that is different from the first workload environment (Fig. 4, Fig. 7, ¶0051 – Bhattacharyya teaches a load balancer is configured to determine primary and secondary candidate application servers based on the affinity scores returned by the application servers (and possibly other distribution factors). Where the other distribution factors may include: a current load on available application servers; a location; a capacity of available application servers; and a configuration of the application servers. When the other distribution factors are employed, a load balancer may weight the affinity scores based on the other distribution factors when selecting primary and secondary application servers to execute a workload assigned to a user.);
receiving, at the network controller, workload rules indicative of configuration data associated with the first workload (Fig. 5, Fig. 6, ¶0051 – Bhattacharyya teaches an affinity provider is configured to transmit a UID to a user assignment analyzer, retrieve a CHTP (i.e., rules) for the user from the user assignment analyzer, and transmit the CHTP to available application servers.);
determining, by the network controller and based at least in part on the telemetry data and the workload rules, that the first resources are more favorable to host the first workload than the second resources (¶0047, ¶0053 – Bhattacharyya teaches a user may be assigned to an application server that provides optimal or near optimal access to desired applications and associated data and identifying an application server that should be optimal for a current workload (assigned to a user via an inbox of a user) of the user.); and
based at least in part on the first resources being more favorable to host the first workload than the second resources (¶0055 – Bhattacharyya teaches Load balancer 404 then determines (based on the affinity scores) primary and secondary application servers for the user request and transmits a service request to the primary application server (i.e., one of application servers 422, 424, and 426) for servicing (i.e., initiation of workload execution).), at least one of:
configuring the first resources to host the first workload (¶0055 – Bhattacharyya teaches Load balancer 404 then determines (based on the affinity scores) primary and secondary application servers for the user request and transmits a service request to the primary application server (i.e., one of application servers 422, 424, and 426) for servicing (i.e., initiation of workload execution).); or
migrating a second workload from the first resources in the first workload environment to the second resources in the second workload environment.
As to claim 3, Bhattacharyya discloses:
method of claim 1, and
wherein determining that the first resources are more favorable to host the first workload than the second resources is based at least in part on at least one of:
determining that the first resources include one or more network components required to execute the first workload;
determining that the first resources have a greater bandwidth than the second resources;
determining that the first resources have a lower latency than the second resources;
determining that the first workload environment is geographically located closer to at least one of a third workload associated with the first workload or a user device associated with the first workload than the second workload environment;
determining that the first resources have a lower operational cost than the second resources; or
determining that a network policy associated with the first workload indicates that the first workload is to be provisioned in the first workload environment.
(Fig. 4, Fig. 7, ¶0051 – Bhattacharyya teaches a load balancer is configured to determine primary and secondary candidate application servers based on the affinity scores returned by the application servers (and possibly other distribution factors). Where the other distribution factors may include: a current load on available application servers; a location; a capacity of available application servers; and a configuration of the application servers. When the other distribution factors are employed, a load balancer may weight the affinity scores based on the other distribution factors when selecting primary and secondary application servers to execute a workload assigned to a user.);
As to claim 5, Bhattacharyya discloses:
method of claim 1, and
wherein the first workload is configured as at least one of a new workload to be provisioned in the workload environment network or an existing workload to be migrated from a workload environment in the workload environment network (¶0008 – Bhattacharyya teaches r assigning a user workload to an application server includes receiving a user request to initiate execution of a workload assigned to a user. An application server is selected, from among multiple application servers, to execute the workload based on compatibility between respective current states of the application servers and the workload.).
As to claim 6, Bhattacharyya discloses:
method of claim 1, and
further comprising:
determining, based at least in part on the workload rules associated with the first workload, minimum operational requirements required by the resources associated with the workload orchestrator allocated to host the first workload (Figs. 4-7, ¶0051 – Bhattacharyya teaches that primary and secondary application servers are selected based on affinity scores and distribution factors which denote the application servers meet the computing needs of the workload);
determining, based at least in part on the first telemetry data, that the first resources satisfy the minimum operational requirements (Figs. 4-7, ¶0051 – Bhattacharyya teaches that primary and secondary application servers are selected based on affinity scores and distribution factors which denote the application servers meet the minimum computing needs of the workload);
determining, based at least in part on the second telemetry data, that the second resources satisfy the minimum operational requirements (Figs. 4-7, ¶0051 – Bhattacharyya teaches that primary and secondary application servers are selected based on affinity scores and distribution factors which denote the application servers meet the minimum computing needs of the workload); and
determining that the first resources are more favorable to host the first workload than the second resources based at least in part on at least one of:
determining that the first resources in the first workload environment currently have a lower operational load than the second resources in the second workload environment;
determining that the first resources in the first workload environment are more resilient to network failures than the second resources in the second workload environment; or
determining that the first resources in the first workload environment are associated with a lower operational cost than the second resources in the second workload environment.
(Figs. 4-7, ¶0051 – Bhattacharyya teaches a load balancer is configured to determine primary and secondary candidate application servers based on the affinity scores returned by the application servers (and possibly other distribution factors). Where the other distribution factors may include: a current load on available application servers; a location; a capacity of available application servers; and a configuration of the application servers. When the other distribution factors are employed, a load balancer may weight the affinity scores based on the other distribution factors when selecting primary and secondary application servers to execute a workload assigned to a user; ¶0051 – Bhattacharyya teaches an affinity provider is configured to transmit a UID to a user assignment analyzer, retrieve a CHTP (i.e., rules) for the user from the user assignment analyzer, and transmit the CHTP to available application servers);
As to claim 9, similar rejection as to claim 1.
As to claim 11, similar rejection as to claim 3.
As to claim 13, similar rejection as to claim 5.
As to claim 14, similar rejection as to claim 6.
As to claim 15, similar rejection as to claim 1.
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 may not be obtained though the invention is not identically disclosed or described as set forth in section 102 of this title, if the differences between the subject matter sought to be patented and the prior art are such that the subject matter as a whole would have been obvious at the time the invention was made to a person having ordinary skill in the art to which said subject matter pertains. Patentability shall not be negatived by the manner in which the invention was made.
Claims 2, 4, 8, 12, 16 and 20 are rejected under 35 U.S.C. 103 as being unpatentable over U.S. Patent Application Publication No. 2016/0094639 A1 to Bhattacharyya et al. (“Bhattacharyya”) in view of U.S. Patent Application Publication No. 2012/0297238 A1 to Watson et al. (“Watson”).
As to claim 2, Bhattacharyya discloses:
method of claim 1,
Watson discloses what Bhattacharyya does not expressly disclose.
Watson discloses:
wherein migrating the second workload from the first resources in the first workload environment to the second resources in the second workload environment comprises:
determining that the first resources in the first workload environment are at an operational capacity (Fig. 3, 320, ¶0039 – Watson teaches determining that computing resources have reached their threshold); and
determining that the second resources in the second workload environment satisfy a threshold optimization for hosting the second workload (Fig. 3, 330, ¶0040 – Watson teaches the system identifies a target computing resource to which to migrate at least some of the running application's load. The target resource may be specified during the planning phase by an administrator or may be dynamically determined based on one or more possible target locations to which to migrate the load. In some cases, the decision may be based on time of day or other factors that affect a cost of offloading loads to another location).
Bhattacharyya and Watson are analogous arts because they are from the same field of endeavor with respect to resource allocation in a cloud environment.
Before the effective filing date, it would have been obvious to a person of ordinary skill in the art to incorporate target migration location as discussed in Watson with workload assignment system as discussed in Bhattacharyya by adding the functionality of Watson to the system/method of Bhattacharyya in order to provide capacity management and disaster recovery by detecting peak load conditions and automatically moving computing to another computing resource (Watson, ¶0004).
As to claim 4, Bhattacharyya discloses:
method of claim 1,
Watson discloses what Bhattacharyya does not expressly disclose.
Watson discloses:
wherein the configuration data associated with the first workload include existing automation tasks associated with the first workload, the existing automation tasks being indicative of at least one of:
a time at which the first workload is configured to migrate from fourth resources of the workload environment network to at least the first resources;
a threshold bandwidth associated with executing the first workload (¶0035 – Watson teaches the system receives one or more load thresholds that indicate a load at which application load migration will automatically occur. The threshold may be in terms of processor utilization, storage capacity, memory usage, network bandwidth, or any other metric that indicates a potential exhaustion or near exhaustion of one or more datacenter resources);
a threshold latency associated with executing the first workload; or
a threshold operational cost of the resources associated with the workload orchestrator allocated to host the first workload.
The suggestion/motivation and obviousness rejection is the same as in claim 3.
As to claim 8, Bhattacharyya discloses:
method of claim 1,
Watson discloses what Bhattacharyya does not expressly disclose.
Watson discloses:
wherein:
the first workload environment of the workload environment network comprises at least one of:
a first private cloud network;
a first public cloud network;
a first enterprise network; or
a first colocation network; and
the second workload environment of the workload environment network comprises at least one of:
a second private cloud network;
a second public cloud network; a second enterprise network; or
a second colocation network.
(¶0004 – Watson teaches cloud migration system monitors loads within a datacenter and detects a threshold that indicates that the current load is nearing the datacenter's capacity. Upon detecting that the threshold will be reached, the cloud migration system facilitates an orderly move of at least some datacenter load to another datacenter or cloud-based resources. Examiner Note: Watson teaches use of multiple datacenters (i.e., colocation networks) to migrated loads.). The suggestion/motivation and obviousness rejection is the same as in claim 3.
As to claim 12, similar rejection as to claim 4.
As to claim 16, similar rejection as to claim 8.
As to claim 20, similar rejection as to claims 3 and 4.
Claim 7 is rejected under 35 U.S.C. 103 as being unpatentable over U.S. Patent Application Publication No. 2016/0094639 A1 to Bhattacharyya et al. (“Bhattacharyya”) in view of U.S. Patent Application Publication No. 2025/0358191 A1 to Liu et al. (“Liu”).
As to claim 7, Bhattacharyya discloses:
method of claim 1,
Liu discloses what Bhattacharyya does not expressly disclose.
Liu discloses:
further comprising at least one of:
reducing the second resources in the second workload environment based at least in part on configuring the first resources to host the first workload (Fig. 7A, Fig. 7B, ¶0020, ¶0076, ¶0085, ¶0096 – Liu teaches where the batch information indicates a quantity of reduced pods of the first cloud service and a quantity of added pods of the second cloud service in each batch. Examiner Note: pods are used to process traffic fragments); or
increasing the second resources in the second workload environment based at least in part on migrating the second workload from the first resources in the first workload environment to the second resources in the second workload environment (Fig. 7A, Fig. 7B, ¶0020, ¶0076, ¶0085, ¶0096 – Liu teaches where the batch information indicates a quantity of reduced pods of the first cloud service and a quantity of added pods of the second cloud service in each batch. Examiner Note: pods are used to process traffic fragments).
Bhattacharyya and Liu are analogous arts because they are from the same field of endeavor with respect to network resource allocation.
Before the effective filing date, it would have been obvious to a person of ordinary skill in the art to incorporate increasing and decreasing network resources as discussed in Liu with workload assignment system as discussed in Bhattacharyya by adding the functionality of Liu to the system/method of Bhattacharyya in order to update resource configuration of a cloud service (Liu, ¶0005).
Claim 10 is rejected under 35 U.S.C. 103 as being unpatentable over U.S. Patent Application Publication No. 2016/0094639 A1 to Bhattacharyya et al. (“Bhattacharyya”) in view of U.S. Patent Application Publication No. 2015/0347183 A1 to Borthakur et al. (“Borthakur”).
As to claim 10, Bhattacharyya discloses:
system of claim 9,
Borthakur discloses what Bhattacharyya does not expressly disclose.
Borthakur discloses:
wherein the telemetry data is received from an external workload analytics tool configured to collect the telemetry data over a period of time (Fig. 2, ¶0035 – Bortakur teaches commands may be issued to a workload analysis service 220 which may be configured to analyze workloads 222 by, for example, receiving measurements 224 from the workload 216 via network 208;. Examiner Note: the analytics tool is external to the datacenter).
Bhattacharyya and Borthakur are analogous arts because they are from the same field of endeavor with respect to migrate workloads within a network.
Before the effective filing date, it would have been obvious to a person of ordinary skill in the art to incorporate monitoring of network resources as discussed in Borthakur with workload assignment system as discussed in Bhattacharyya by adding the functionality of Borthakur to the system/method of Bhattacharyya in order to determine whether those workloads may be suitable candidates for migration to more dynamically scalable computing resource service provider environments (Borthakur, ¶0002).
Claim 17 is rejected under 35 U.S.C. 103 as being unpatentable over U.S. Patent Application Publication No. 2016/0094639 A1 to Bhattacharyya et al. (“Bhattacharyya”) in view of U.S. Patent No. 11,886,926 B1 to Gadalin et al. (“Gadalin”) in further view of U.S. Patent Application Publication No. 2025/0358191 A1 to Liu (“Liu”).
As to claim 17, Bhattacharyya discloses:
one or more non-transitory computer-readable media of claim 15,
the operations further comprising:
Gadalin discloses what Bhattacharyya does not expressly disclose.
Gadalin discloses:
configuring third resources associated with the workload orchestrator to host the first workload in association with the first resources (Fig. 8, 812, col. 22 ll. 56-61 – Gadalin teaches At 810, the service provider network 102 may identify a second virtual computing resource type that is optimized to host the workload during the first timeframe. For instance, the optimization component 126 may map utilization data collected during the first timeframe to the second VM instance type 130.; and
Bhattacharyya and Gadalin are analogous arts because they are from the same field of endeavor with respect to migrating workloads within a network.
Before the effective filing date, it would have been obvious to a person of ordinary skill in the art to incorporate identifying other resources to handle workloads as discussed in Gadalin with workload assignment system as discussed in Bhattacharyya by adding the functionality of Gadalin to the system/method of Bhattacharyya in order to migrate customer workloads between different instance types, for example between a burstable instance type that has a baseline guarantee and then shares resources above that baseline (e.g., for bursting) with other workloads and a dedicated instance type that has guaranteed availability of its full resource allocation (Gadalin, col. ll. 2 ll. 55-67).
Liu discloses what Bhattacharyya and Gadalin do not expressly disclose.
Liu discloses:
reducing the second resources based at least in part on configuring the third resources (Fig. 7A, Fig. 7B, ¶0020, ¶0076, ¶0085, ¶0096 – Liu teaches where the batch information indicates a quantity of reduced pods of the first cloud service and a quantity of added pods of the second cloud service in each batch. Examiner Note: pods are used to process traffic fragments).
Bhattacharyya, Gadalin and Liu are analogous arts because they are from the same field of endeavor with respect to network resource allocation
Before the effective filing date, it would have been obvious to a person of ordinary skill in the art to incorporate increasing and decreasing network resources as discussed in Liu with identifying other resources to handle workloads as discussed in Gadalin with workload assignment system as discussed in Bhattacharyya by adding the functionality of Liu to the system/method of Bhattacharyya and Gadalin in order to update resource configuration of a cloud service (Liui, ¶0005).
Claims 18 and 19 are rejected under 35 U.S.C. 103 as being unpatentable over U.S. Patent Application Publication No. 2016/0094639 A1 to Bhattacharyya et al. (“Bhattacharyya”) in view of U.S. Patent Application Publication No. 2012/0297238 A1 to Watson et al. (“Watson”) in further view of U.S. Patent Application Publication No. 2025/0358191 A1 to Liu (“Liu”).
As to claim 18, Bhattacharyya discloses:
one or more non-transitory computer-readable media of claim 15,
Watson discloses what Bhattacharyya does not expressly disclose.
Watson discloses:
the operations further comprising:
migrating a second workload from the first resources to the second resources based at least in part on configuring the first resources to host the first workload (¶0012 – Watson teaches the cloud migration system may move resources between a datacenter and the cloud on a temporary (i.e., bursting) or permanent (i.e., disaster recovery) basis. Temporary movements include bursting an application or other load for a short time period to handle a peak or other high load that exceeds the datacenter's capacity. A temporary movement may include bursting an entire application or splitting the application's load across two or more locations. Permanent movements include longer-term migration of loads due to a failure of hardware in the datacenter, a more sustained increase in capacity needs, a desire to distribute an application globally with dynamic load balancing, and so forth).; and
Bhattacharyya and Watson are analogous arts because they are from the same field of endeavor with respect to resource allocation in a cloud environment.
Before the effective filing date, it would have been obvious to a person of ordinary skill in the art to incorporate target migration location as discussed in Watson with workload assignment system as discussed in Bhattacharyya by adding the functionality of Watson to the system/method of Bhattacharyya in order to provide capacity management and disaster recovery by detecting peak load conditions and automatically moving computing to another computing resource (Watson, ¶0004).
Liu discloses what Bhattacharyya and Gadalin do not expressly disclose.
Liu discloses:
increasing the second resources based at least in part on migrating the second workload from the first resources to the second resources (Fig. 7A, Fig. 7B, ¶0020, ¶0076, ¶0085, ¶0096 – Liu teaches where the batch information indicates a quantity of reduced pods of the first cloud service and a quantity of added pods of the second cloud service in each batch. Examiner Note: pods are used to process traffic fragments).
Bhattacharyya, Gadalin and Liu are analogous arts because they are from the same field of endeavor with respect to network resource allocation.
Before the effective filing date, it would have been obvious to a person of ordinary skill in the art to incorporate increasing and decreasing network resources as discussed in Liu with incorporate target migration location as discussed in Watson with workload assignment system as discussed in Bhattacharyya by adding the functionality of Liu to the system/method of Bhattacharyya and Watson in order to update resource configuration of a cloud service (Liui, ¶0005).
As to claim 19, similar rejection as to claim 2.
Conclusion
Any inquiry concerning this communication or earlier communications from the examiner should be directed to TAYLOR A ELFERVIG whose telephone number is (571)270-5687. The examiner can normally be reached Monday (10:00 AM CST) - Friday (4:00 PM CST).
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, Oscar Louie can be reached at (571) 270-1684. 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.
/TAYLOR A ELFERVIG/Primary Examiner, Art Unit 2445