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 .
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, 5-6, 8-9, 13-14, 18 and 20 is/are rejected under 35 U.S.C. 103 as being unpatentable over Barton et al., US 20230236899 A1 (hereafter referred to as Barton) in view of Huang et al., US 20200076902 A1 (hereafter referred to as Huang)
A. Claim 14, Barton teaches an apparatus (p. 5, “a system that uses an energy telemetry engine to help dynamically place workloads in different cloud services.” And p. 10, “The ETE can be used to rank the different host locations (e.g., different data according to their EEQ.”) comprising:
a memory to store instructions (p. 62, “The chipset 506 can further provide an interface to a computer-readable storage medium such as a read-only memory (“ROM”) 510 or non-volatile RAM (“NVRAM”) for storing basic routines …”) and a local resource pool; and
a processor, coupled to the memory (p. 62, “The chipset 506 can provide an interface to a RAM 508, used as the main memory in the computer 500.” … ), to execute the instructions (p. 62, “The ROM 510 or NVRAM can also store other software components necessary for the operation of the computer 500 in accordance with the configurations described herein.”) to receive one or more updates to a global resource pool of a hybrid cloud (p. 10, “The ETE [Energy Telemetry Engine] can be used to rank the different host locations (e.g., different data according to their EEQ. In some examples, one or more other metrics (e.g., latency, bandwidth, . . . ) may be used to identify any POPs that do not meet specified conditions (e.g., latency constraints, bandwidth constraints, . . . ). “ The updates of resources represented by their metrics. And p. 22, “… other metrics may also be used to assist in determining a suitable candidate. These metrics may include but are not limited to … network reachability, path changes, availability metrics, … and the like.” Availability information providing indication of status.) and updating the local resource pool with the one or more updates to the global resource pool (p. 49, “the host locations may be one or more cloud services, such as cloud services 102A-102N as illustrated in FIG. 1 and FIG. 2, and/or one or more data centers of one or more cloud service providers.” The “other metrics” for availability information and “location information” will reflect local resources. And p. 47, “These preferences can include but are not limited to prefer a workload with a lower EEQ … choose the nearest host location…”);
intercept a service request from an application (p. 11, “… a ‘workload’ refers to any application, service, or other amount of work that is executed by one or more computing resources of a data center.” And p. 12, “… a ‘workload’ refers to any application, service, or other amount of work that is executed by one or more computing resources of a data center.” Requests from the workload requiring more resources.);
redirect deployment of the service request to a resource provider of the hybrid cloud (p. 53, “…[T]he ETE 108 may cause a workload to be migrated to computing resources of a selected data center of a cloud service provider 102.” ) with available computing resources to fulfill the service request based at least in part on the local resource pool and by using a webhook (p. 56, “the EEQs for the different host locations are generated. “ Host locations correlated to the resource providers. p. 57, “other metric data may be obtained/accessed. As discussed above, the metric(s)107 may be obtained through public means (e.g. an API, a webhook, etc.) … “ By using webhooks events of the metrics and other metrics are notified as registered. In Barton the “other metrics” include location information. “The metric(s) 107 may include but are not limited to packet loss metrics, latency metrics, jitter metrics, available bandwidth, capacity, response time metrics, network reachability, path changes, availability metrics, connect time metrics, and the like.”);
receive an Internet Protocol (IP) address of the resource provider (Huang, p. 122, Steps 801-803, “In particular, the register message for the first resource 725 may include an IP address for the connector 727 and an IP address for the host 729, a network address (e.g., IP or multicast address) for a resource group associated with the first resource 725, and an identifier for the resource group associated with the first resource 725. Resources may also register with the broker 714 (not shown).”);
redirect a domain name service (DNS) of the application to the location information of the resource provider (p. 46, “When a Domain Name System (DNS) request 204 is received for connecting to the workload, a DNS resolver associated with SIG 220 accesses the telemetry data 210 from the ETE 108 to determine the location of the workload.” p. 44, “a Secure Internet Gateway (SIG) 220 that may be used to assist in dynamically placing workloads using cloud service 102 energy efficiency quotients and/or other data.”); and
send the service request to the resource provider (p. 58, “…[t]he ETE 108 may select the host locations that are candidate host locations when a host location is within a specified efficiency and when the host location performs at the specified parameters (e.g., less than a specified latency).”). Barton does not specifically teach the location information is an IP address. However, in the same field of endeavor, Huang teaches the location information is an Internet Protocol (IP) address. It would have been obvious to one of ordinary skill in the art before the effective filing date of the claimed invention to modify Barton to incorporate address location information from Huang as an equivalent substitution. The motivation would have been Huang registers resources from a connector using the associated IP address.
Claim 1 is method comprising steps similar to the operations of the apparatus of claim 14 above. Claim 1 is rejected on a similar rationale.
Claim 9 is at least one least one non-transitory machine-readable storage medium comprising instructions that, when executed, cause at least one processor to perform operations of the apparatus of claim 14 above. Claim 9 is rejected on as similar rationale.
B. Claim 6, Barton-Huang teaches the method of claim 1, wherein the resource provider comprises a computing system of the hybrid cloud (p. 59, “a cloud may be configured as a private cloud to be used by one or more particular customers or client computers 411-414 and/or over a private network. In other embodiments, public clouds or hybrid public-private clouds may be used by other customers over an open or hybrid networks.” And p. 62, “Referring now to the physical hardware layer of a cloud computing environment, availability zones 401-402 (or zones) may refer to a collocated set of physical computing resources.” See also p. 63, “each zone 401-402 may include an arrangement of various physical hardware components (or computing resources) 403-405, for example, physical hosting resources (or processing resources), physical network resources, physical storage resources, switches, and additional hardware resources that may be used to provide cloud computing services to customers.”).
C. Claim 18, Barton-Huang teaches the apparatus of claim 14, wherein the global resource pool and the local resource pool comprise a plurality of computing resources at a plurality of resource providers in the hybrid cloud available to fulfill service requests from the application (Barton, p. 47, “These preferences can include but are not limited to prefer a workload with a lower EEQ, choose a workload with a lower EEQ with conditions (e.g. if within latency requirements for the workload), choose the nearest host location, and the like.”).
Claim 5 is method comprising steps similar to the operations of the apparatus of claim 18 above. Claim 5 is rejected on a similar rationale.
Claim 13 is at least one least one non-transitory machine-readable storage medium comprising instructions that, when executed, cause at least one processor to perform operations of the apparatus of claim 18 above. Claim 13 is rejected on as similar rationale.
D. Claim 20, Barton-Huang teaches the apparatus of claim 14, wherein the hybrid cloud comprises the apparatus and a plurality of resource providers situated in a same local computing environment (Barton, one cloud service provider, p. 49, “the host locations may be one or more cloud services, such as cloud services 102A-102N as illustrated in FIG. 1 and FIG. 2, and/or one or more data centers of one or more cloud service providers.”).
Claim 8 is method comprising steps similar to the operations of the apparatus of claim 20 above. Claim 8 is rejected on a similar rationale.
Claim(s) 2-4, 10-12 and 15-17 is/are rejected under 35 U.S.C. 103 as being unpatentable over Barton and Huang as applied to claims 1, 9 and 14 above, and further in view of Cherukuri et al., US 20180267990 A1 (hereafter referred to as Cherukuri).
A. Claim 15, Barton-Huang teaches the apparatus of claim 14 comprising the processor to set up a secure gateway between a cloud manager and the apparatus when the hybrid cloud is initiated (Barton, p, 45, “the SIG 220 includes security component 216 that integrates a secure web gateway, a firewall, DNS-layer security, and cloud access security broker (CASB) functionality. A Cloud Access Security Broker (CASB) acts as an intermediary between cloud providers and cloud consumers to enforce an organization's security policies for cloud application access and usage.”). Barton-Huang does not specifically teach a establishing a secure connection. However, in the same field of endeavor, Cherukuri teaches establishing a secure connection ( p. 22, “Cloud gateway 20 can be responsible for establishing secure tunnel 18 for interconnecting enterprise network 12 (including components and resources within enterprise network 12) with cloud gateway 22.” And p. 30, “a hybrid cloud facilitates interaction between a private cloud (such as that provided by enterprise network 12) and a public cloud (such as that provided by cloud 14), where the private cloud can join the public cloud to utilize the public cloud's resources in a secure and scalable way.” See also p. 26, “cloud manager 36 facilitates hybrid cloud operations in cloud 14, manages network resources in cloud 14 that are allocated to enterprise network 12, dynamically instantiates cloud gateway 20 and/or cloud gateway 22,…”). It would have been obvious to one of ordinary skill in the art before the effective filing date of the claimed invention to modify Barton-Huang to incorporate secure connections from Cherukuri to facilitate protected connections between cloud components. The motivation would have to utilize the security features available and thereby protect network data.
Claim 2 is method comprising steps similar to the operations of the apparatus of claim 15 above. Claim 2 is rejected on a similar rationale.
Claim 10 is at least one least one non-transitory machine-readable storage medium comprising instructions that, when executed, cause at least one processor to perform operations of the apparatus of claim 15 above. Claim 10 is rejected on as similar rationale.
B. Claim 16, Barton-Huang- Cherukuri teaches the apparatus of claim 15 comprising the processor to register to receive the one or more updates to the global resource pool from the cloud manager (Huang, p. 122, “For example, the register message for the first resource 725 may include one or more network addresses or host names for the first resource 725.” And p. 123, “At 805, the configuration 712 may determine, based on the register messages transmitted at 801-803, resource information. The resource information may include the address information for the resources and/or the resource groups. As one example, the resource information may include an IP address for the connector 727, an IP address for the host 729, an IP address for the connector 732, an IP address for the host 734, an IP address for the connector 752, and an IP address for the host 754, and network addresses for each of the three resource groups associated with the resources 725, 730 and 750.”).
Claim 3 is method comprising steps similar to the operations of the apparatus of claim 16 above. Claim 3 is rejected on a similar rationale.
Claim 11 is at least one least one non-transitory machine-readable storage medium comprising instructions that, when executed, cause at least one processor to perform operations of the apparatus of claim 16 above. Claim 11 is rejected on as similar rationale.
C. Claim 17, Barton-Huang- Cherukuri teaches the apparatus of claim 16 comprising the processor to receive the one or more updates to the global resource pool using one or more webhooks (Barton, p. 32, “According to some examples, these EEMs 106 and/or the metric(s) 107 may be obtained through public means such as an application programming interface (API), a webhook …” Availability interpreted as updates to global pool.).
Claim 4 is method comprising steps similar to the operations of the apparatus of claim 17 above. Claim 4 is rejected on a similar rationale.
Claim 12 is at least one least one non-transitory machine-readable storage medium comprising instructions that, when executed, cause at least one processor to perform operations of the apparatus of claim 17 above. Claim 12 is rejected on as similar rationale.
Claim(s) 7 and 19 is/are rejected under 35 U.S.C. 103 as being unpatentable over Barton and Huang as applied to claims 1 and 14 above, and further in view of Moroski et al., US 20220237053 A1 (hereafter referred to as Moroski).
A. Claim 19, Barton-Huang teaches the apparatus of claim 14, as cited above. Barton-Huang does not specifically teach wherein the hybrid cloud comprises a software defined network. However, Moroski teaches wherein the hybrid cloud comprises a software defined network (p. 34, “The private cloud computing environment 302 and the public cloud computing environment 304 of the hybrid cloud system 300 include computing and/or storage infrastructures to support a number of virtual computing instances 308A and 308B in the form of virtual machines.” And p. 43, “at least some of the virtual computing environments 336 may be configured as software-defined data centers (SDDCs).”). It would have been obvious to one of ordinary skill in the art before the effective filing date of the claimed invention to modify Barton-Huang to incorporate software defined networks from Moroski to expand industrial applicability. The motivation would have been to expand ability to provide resources from other types of networks that provide virtualized environments.
Claim 7 is method comprising steps similar to the operations of the apparatus of claim 19 above. Claim 7 is rejected on a similar rationale.
Conclusion
The prior art made of record and not relied upon is considered pertinent to applicant's disclosure.
Bandarupalli et al., US 20220156102 A1 (hereafter referred to as Bandarupalli), teaches adopting the tenant cluster 144 and the one or more applications 148 executing on the tenant cluster 144 can comprise installing 505, by the domain cluster 104, on the tenant cluster 144, one or more management software components of the multi-tenant, multi-cluster environment. The domain cluster 104 can spawn 520 a Hierarchical Namespace Controller (HNC) and a webhook on the tenant cluster 144, e.g., within or through node agent 304. The webhook can comprise a listener for the one or more applications 148. The domain cluster 104 can detect 525 an existing user namespace on the tenant cluster 144 and generate 530, on the tenant cluster 144, one or more custom resources in the detected user namespace.
Perreira et al., US 20150295844 A1, teaches a framework service identifies a domain or a region to implement a multitenant cloud configuration, a hybrid cloud configuration, or a heterogeneous cloud configuration. In another example, a plug-in component can be configured for the IaaS layer per the domain or the region. The topology designer 246 supports defined node types and relationships for a given topology. This can also include a binding service that provides methods to specify the binding of abstract topologies to resource pools for input to the topology provisioning service.
Johnson, II et al., US 20190028552 A1, teaches the cloud 102 can include one or more private cloud networks, public cloud networks, and/or hybrid cloud networks. the function delivery network (FDN) can deliver a reliable pool of execution resources for private and/or hybrid implementations of FaaS. The FDN can provide a distributed and balanced approach that results in optimal performance, cost, scalability, etc., for FaaS.
Shankar et al., US 20230059940 A1, teaches hypervisor 301 may present VMs 306 with an abstraction of hardware layer 307, and/or may control how physical capabilities of hardware layer 307 are presented to VMs 306. For example, hypervisor(s) 301 may manage a pool of resources distributed across multiple physical computing devices. The cloud PoP 502 of the environment 500 can be configured to be a collection of cloud resources deployed to a public cloud. An alert service 516 can group similar alerts and transmit the alerts to entities, such as the metrics service 514 or the simulation service 518. The alert service 516 can be configured to transmit the alerts via inter-application messages such as web-hooks or other event status identifiers.
Any inquiry concerning this communication or earlier communications from the examiner should be directed to PATRICE L WINDER whose telephone number is (571)272-3935. The examiner can normally be reached M-F 10am-6pm.
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, KAMAL B DIVECHA can be reached at (571)272-5863. 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.
/Patrice L Winder/Primary Examiner, Art Unit 2453