DETAILED ACTION
1. This Office Action is in response to application 19/056224 filed on 02/18/2025. Claims 1-20 are pending.
Notice of Pre-AIA or AIA Status
2. The present application, filed on or after March 16, 2013, is being examined under the first inventor to file provisions of the AIA .
Double Patenting
3. The nonstatutory double patenting rejection is based on a judicially created doctrine grounded in public policy (a policy reflected in the statute) so as to prevent the unjustified or improper timewise extension of the “right to exclude” granted by a patent and to prevent possible harassment by multiple assignees. A nonstatutory double patenting rejection is appropriate where the conflicting claims are not identical, but at least one examined application claim is not patentably distinct from the reference claim(s) because the examined application claim is either anticipated by, or would have been obvious over, the reference claim(s). See, e.g., In re Berg, 140 F.3d 1428, 46 USPQ2d 1226 (Fed. Cir. 1998); In re Goodman, 11 F.3d 1046, 29 USPQ2d 2010 (Fed. Cir. 1993); In re Longi, 759 F.2d 887, 225 USPQ 645 (Fed. Cir. 1985); In re Van Ornum, 686 F.2d 937, 214 USPQ 761 (CCPA 1982); In re Vogel, 422 F.2d 438, 164 USPQ 619 (CCPA 1970); In re Thorington, 418 F.2d 528, 163 USPQ 644 (CCPA 1969).
A timely filed terminal disclaimer in compliance with 37 CFR 1.321(c) or 1.321(d) may be used to overcome an actual or provisional rejection based on nonstatutory double patenting provided the reference application or patent either is shown to be commonly owned with the examined application, or claims an invention made as a result of activities undertaken within the scope of a joint research agreement. See MPEP § 717.02 for applications subject to examination under the first inventor to file provisions of the AIA as explained in MPEP §2159. See MPEP §§ 706.02(l)(1) - 706.02(l)(3) for applications not subject to examination under the first inventor to file provisions of the AIA . A terminal disclaimer must be signed in compliance with 37 CFR 1.321(b).
The USPTO Internet website contains terminal disclaimer forms which may be used. Please visit www.uspto.gov/patent/patents-forms. The filing date of the application in which the form is filed determines what form (e.g., PTO/SB/25, PTO/SB/26, PTO/AIA /25, or PTO/AIA /26) should be used. A web-based eTerminal Disclaimer may be filled out completely online using web-screens. An eTerminal Disclaimer that meets all requirements is auto-processed and approved immediately upon submission. For more information about eTerminal Disclaimers, refer to www.uspto.gov/patents/process/file/efs/guidance/eTD-info-I.jsp.
Claims 1, 8, 15, are rejected on the ground of nonstatutory double patenting as being unpatentable over claims 1, 8, 15, of U.S. Patent No. 12,260,261 (Patent ‘261) in view of Herle et al. (US 10,917,358).
In the chart below, the examiner is utilizing independent claim 1 (independent claims 8, 15, are similar in scope) of the instant application, as exemplary, with independent claim 1 (independent claims 8, 15, are similar in scope) of Patent '261 in view of Herle.
Instant Application 19/056224
Patent No. 12,260,261
1. A method comprising:
deploying, by a remote function invocation service provided by a first cloud environment, a first agent in the first cloud environment;
deploying, by the remote function invocation service, a second agent in a second cloud environment, wherein the first cloud environment is provided by a first cloud services provider, and the second cloud environment is provided by a second cloud services provider, the first cloud services provider being different than the second cloud services provider;
receiving, by the second agent deployed in the second cloud environment, a notification from a cloud resource deployed in the second cloud environment, wherein the notification corresponds to a request to utilize a function deployed in the first cloud environment; and
responsive to receiving the notification, transmitting by the second agent, a message to the first agent, wherein the message triggers the first agent to invoke the function deployed in the first cloud environment.
1. A method comprising:
deploying, by a remote function invocation service provided by a target cloud environment, a target agent in a dataplane of a target service tenancy instantiated in the target cloud environment;
deploying, by the remote function invocation service provided by the target cloud environment, a source agent in a corresponding dataplane of a source service tenancy instantiated in a source cloud environment, wherein the target cloud environment is provided by a first cloud service provider and the source cloud environment is provided by a second cloud service provider that is different than the first cloud service provider;
obtaining, by the target agent, a notification from the source agent, wherein the source agent receives the notification from a cloud resource that is deployed in a source customer tenancy of the source cloud environment and requests to utilize a function deployed in a target customer tenancy of the target cloud environment, wherein the target agent is configured to: (i) obtain an identifier associated with the notification, and (ii) query a mapping database to obtain the function associated with the identifier, wherein the mapping database is preconfigured with a plurality of mappings, each mapping identifying a particular function that is to be invoked with respect to a particular identifier;
determining, by the target agent, the function that is to be invoked based on the notification;
verifying whether the target agent that is deployed in the target service tenancy of the target cloud environment is permitted to invoke the function that is deployed in the target customer tenancy of the target cloud environment; and
responsive to a successful verification, invoking by the target agent the function in the target customer tenancy of the target cloud environment.
Regarding claims 1, 8, 15, Patent ‘261 disclosed:
A method comprising: deploying, by a remote function invocation service provided by a first cloud environment, a first agent in the first cloud environment (Patent ‘261, claim 1, 1st deploying limitation);
deploying, by the remote function invocation service, a second agent in a second cloud environment, wherein the first cloud environment is provided by a first cloud services provider, and the second cloud environment is provided by a second cloud services provider, the first cloud services provider being different than the second cloud services provider (Patent ‘261, 2nd deploying limitation);
receiving, by the second agent deployed in the second cloud environment, a notification from a cloud resource deployed in the second cloud environment, wherein the notification corresponds to a request to utilize a function deployed in the first cloud environment (Patent ‘261, obtaining limitation);
triggers the first agent to invoke the function deployed in the first cloud environment (Patent ‘261, invoking limitation).
Patent ‘261 did not explicitly disclose responsive to receiving the notification, transmitting by the second agent, a message to the first agent, wherein the message triggers the first agent to invoke the function deployed in the first cloud environment.
However, in an analogous art, Herle disclosed responsive to receiving the notification, transmitting by the second agent, a message to the first agent, wherein the message triggers the first agent to invoke the function deployed in the first cloud environment (Column 10, Lines 35-63, data center 18A requests execution of script 226 of an automation 220, the instructions (i.e., notification) are sent to the CBS 234 of data center 18A for analysis. When the script 226 references data or instructions hosted by cloud 16B, the CBS 234 of cloud 16A routes requests for the resources to CBS 234 of cloud 16B. CBS 234 of cloud 16B responds by providing the data (i.e., invoking the function) to CBS 234 of cloud 16A (see Figure 4)).
One of ordinary skill in the art would have been motivated to combine the teachings of Patent ‘261 with Herle because the references involve cross cloud services, and as such, are within the same environment.
Therefore, it would have been obvious to one of ordinary skill in the art before the effective filing date of the claimed invention to incorporate the message triggering invocation of Herle with the teachings of Patent ‘261 in order to provide a considerable gain in efficiency, cost reduction, and error reduction (Herle, Column 2, Lines 46-51).
Regarding claims 8, 15, the claims are substantially similar to claim 1 and are rejected under the same rationale.
Claim Rejections - 35 USC § 103
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 (i.e., changing from AIA to pre-AIA ) 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.
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.
The factual inquiries for establishing a background for determining obviousness under 35 U.S.C. 103 are summarized as follows:
1. Determining the scope and contents of the prior art.
2. Ascertaining the differences between the prior art and the claims at issue.
3. Resolving the level of ordinary skill in the pertinent art.
4. Considering objective evidence present in the application indicating obviousness or nonobviousness.
4. Claims 1, 2, 4, 5, 7-9, 11, 12, 14-16, 18, 19, are rejected under 35 U.S.C. 103 as being unpatentable over Herle et al. (US 10,917,358) in view of Harper et al. (US 2020/0336570).
Regarding claim 1, Herle disclosed:
A method comprising:
deploying, by a remote function invocation service (Column 4, Lines 47-51, multi-instance framework) provided by a first cloud environment (Figure 4, cloud-based platform 16A), a first agent (Figure 4, cloud orchestrator service (COS) 232 in 16A) in the first cloud environment (Column 4 Lines 47-51, providing services to an organization in a multi-instance framework. Column 8, Line 63 – Column 9, Line 29, each of clouds 16A and 16B is supported and hosted by data centers 18A and 18B. The clouds can be hosted by different cloud-based enterprises, companies, services, or technologies. Column 9, Lines 30-67, enabling cross cloud data exchange and cross cloud execution of automations by having both datacenters host a respective cloud service (CS) 230 that includes cloud orchestrator service (COS) 232 and cloud broker service (CBS) 234 for each cloud (see Figure 4);
deploying, by the remote function invocation service, a second agent (Figure 4, cloud orchestrator service (COS) 232 in 16B) in a second cloud environment (Figure 4, cloud 16B) (Column 8, Line 63 – Column 9, Line 29, each of clouds 16A and 16B is supported and hosted by data centers 18A and 18B. The clouds can be hosted by different cloud-based enterprises, companies, services, or technologies. Column 9, Lines 30-67, enabling cross cloud data exchange and cross cloud execution of automations by having both datacenters host a respective cloud service (CS) 230 that includes cloud orchestrator service (COS) 232 and cloud broker service (CBS) 234 for each cloud (see Figure 4). Being that the communication can occur between COS 232 of either cloud, which COS 232 is the first/second is irrelevant as the COS 232’s can each transmit/receive);
receiving, by the second agent deployed in the second cloud environment, a notification (Column 10, Lines 35-40, requesting execution of a script) from a cloud resource (Column 10, Lines 35-40, request coming from data center 18A) deployed in the second cloud environment, wherein the notification corresponds to a request to utilize a function (Column 10, Lines 43-45, data or instructions) deployed in the first cloud environment (Column 10, Lines 35-63, when the execution of a script 226 of an automation 220 is requested by the data center 18A, the instructions to be executed are provided to the CBS 234 of data center 18A for analysis. When the script 226 references data or instructions hosted by cloud 16B, the CBS 234 routes requests for the resources to data center 18B); and
responsive to receiving the notification, transmitting by the second agent, a message to the first agent, wherein the message triggers the first agent to invoke the function deployed in the first cloud environment (Column 10, Lines 35-63, data center 18A requests execution of script 226 of an automation 220, the instructions (i.e., notification) are sent to the CBS 234 of data center 18A for analysis. When the script 226 references data or instructions hosted by cloud 16B, the CBS 234 of cloud 16A routes requests for the resources to CBS 234 of cloud 16B. CBS 234 of cloud 16B responds by providing the data (i.e., invoking the function) to CBS 234 of cloud 16A (see Figure 4). As said above, being that the communication can occur between COS 232 of either cloud, which COS 232 is the first/second is irrelevant as the COS 232’s can each transmit/receive).
While Herle disclosed that the clouds can be hosted by different cloud based enterprises or companies (Column 8, Line 63 – Column 9, Line 29), Herle did not explicitly disclose wherein the first cloud environment is provided by a first cloud services provider, and the second cloud environment is provided by a second cloud services provider, the first cloud services provider being different than the second cloud services provider.
However, in an analogous art, Harper disclosed wherein the first cloud environment is provided by a first cloud services provider, and the second cloud environment is provided by a second cloud services provider, the first cloud services provider being different than the second cloud services provider (Paragraph 33, providing interoperability between data providers which includes multiple cloud servers 120 and 122 located in one or more clouds. Each cloud server is owned and operated by a different data provider (e.g., asset vendor) and each cloud server 120, 122, utilize a different protocol. A common protocol is implemented so that the different data providers can communicate between disparate cloud servers).
One of ordinary skill in the art would have been motivated to combine the teachings of Herle with Harper because the references involve interoperability between multiple clouds, and as such, are within the same environment.
Therefore, it would have been obvious to one of ordinary skill in the art before the effective filing date of the claimed invention to incorporate the different cloud service providers of Harper with the teachings of Herle in order to provide efficient service to the customer (Harper, Paragraph 39).
Regarding claims 8, 15, the claims are substantially similar to claim 1. Claim 8 recites a non-transitory computer readable medium (Herle, Column 3, Lines 59-62, non-transitory computer readable physical media). Claim 15 recites a processor and memory (Herle, Column 3, Lines 54-65, computers with memory). Therefore, the claims are rejected under the same rationale.
Regarding claims 2, 9, 16, the limitations of claims 1, 8, 15, have been addressed. Herle and Harper disclosed:
wherein the first agent is deployed in a dataplane of a first service tenancy instantiated in the first cloud environment, and the second agent is deployed in a corresponding dataplane of a second service tenancy instantiated in the second cloud environment (Herle, Figure 4, cloud service 230 in 16A and cloud service 230 in 16B. As the cloud services forward data back and forth from each other, this is considered the dataplane).
Regarding claims 4, 11, 18, the limitations of claims 1, 8, 15, have been addressed. Herle and Harper disclosed:
wherein the second agent is configured to: (i) register with the cloud resource deployed in a customer tenancy of the second cloud environment (Herle, Column 10, Lines 60-67, the COS 232 of each data centers 18 maintains a collection of authentication credentials (i.e., registers)), and/or (ii) poll a queue associated with the cloud resource so as to receive the notification.
Regarding claims 5, 12, 19, the limitations of claims 1, 8, 15, have been addressed. Herle and Harper disclosed:
receiving, by the second agent (Herle, COS 232 in 16B), a plurality of notifications from one or more cloud resources deployed in the second cloud environment (Harper, Paragraph 34, collects data (i.e., notifications) shared by the plant compute device from the compute device 10 from vendors); and
filtering the plurality of notifications based on information maintained in a database associated with the second agent (Herle, COS 232 in 16B) (Harper, Paragraph 45, the data is then filtered based on an agreement for QoS).
For motivation, please refer to claim 1.
Regarding claims 7, 14, the limitations of claims 1, 8, have been addressed. Herle and Harper disclosed:
wherein the first agent is communicatively coupled with the second agent by a secure communication channel (Herle, Column 9, Lines 42-47, COS 232 of data center 18A and COS 232 of data center 18B establish suitable encrypted communication routes between the data centers 18).
5. Claims 3, 10, 17, are rejected under 35 U.S.C. 103 as being unpatentable over Herle et al. (US 10,917,358) in view of Harper et al. (US 2020/0336570) and Anand et al. (US 2016/0006821).
Regarding claims 3, 10, 17, the limitations of claims 1, 8, 15, have been addressed. Herle and Harper disclosed:
further comprising: creating, by the second agent, the message based on the notification (Herle, Column 10, Lines 35-63, data center 18A requests execution of script 226 of an automation 220, the instructions (i.e., notification) are sent to the CBS 234 of data center 18A for analysis. When the script 226 references data or instructions hosted by cloud 16B, the CBS 234 of cloud 16A routes requests for the resources to CBS 234 of cloud 16B (i.e., message)).
While Herle and Harper disclosed using URIs to identify targets (Herle, Column 13, Lines 24-28), Herle and Harper did not explicitly disclose wherein the message includes metadata information including a first identifier of the notification and a second identifier of the cloud resource.
However, in an analogous art, Anand disclosed wherein the message includes metadata information including a first identifier of the notification and a second identifier of the cloud resource (Paragraphs 11-12, 35, the identity generation module generates a service location ID that identifies the source end point (i.e., first identifier of notification). Then a correlation ID is created that is based off the service location ID, the correlation ID is analogous to an IP address that identifies a destination end point within the cloud environment (i.e., second identifier of cloud resource). The client then requests the service within the cloud environment).
One of ordinary skill in the art would have been motivated to combine the teachings of Herle and Harper with Anand because the references involve interoperability between multiple clouds, and as such, are within the same environment.
Therefore, it would have been obvious to one of ordinary skill in the art before the effective filing date of the claimed invention to incorporate the first and second identifiers of Anand with the teachings of Herle and Harper in order to efficiently execute the intended purpose in a complex datacenter environment (Anand, Paragraph 5).
6. Claims 6, 13, 20, are rejected under 35 U.S.C. 103 as being unpatentable over Herle et al. (US 10,917,358) in view of Harper et al. (US 2020/0336570) and Newman et al. (US 2021/0067423).
Regarding claims 6, 13, 20, the limitations of claims 1, 8, 15, have been addressed. Herle and Harper did not explicitly disclose:
wherein the first agent obtains a token from an identity management service of the first cloud environment, and forwards the token to a serverless functions service deployed in the first cloud environment, the serverless functions service causing the function to be executed in the first cloud environment.
However, in an analogous art, Newman disclosed wherein the first agent obtains a token from an identity management service of the first cloud environment, and forwards the token to a serverless functions service deployed in the first cloud environment, the serverless functions service causing the function to be executed in the first cloud environment (Paragraph 34, using a credential (i.e., token) in order to be granted privileges within the cloud infrastructure. The credential is from an identify and access management (IAM) service (i.e., identity management service). Paragraph 136, a user that is authorized to launch instances and consume available capacity in a tenancy).
One of ordinary skill in the art would have been motivated to combine the teachings of Herle and Harper with Newman because the references involve multi-cloud infrastructures, and as such, are within the same environment.
Therefore, it would have been obvious to one of ordinary skill in the art before the effective filing date of the claimed invention to incorporate the token of Newman with the teachings of Herle and Harper in order to easily and efficiently provision resources (Newman, Paragraph 11).
Conclusion
Any inquiry concerning this communication or earlier communications from the examiner should be directed to Steven C. Nguyen whose telephone number is (571)270-5663. The examiner can normally be reached M-F 7AM - 3PM and alternatively, through e-mail at Steven.Nguyen2@USPTO.gov.
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, Christopher Parry can be reached at 571-272-8328. 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.
/S.C.N/ Examiner, Art Unit 2451
/Chris Parry/ Supervisory Patent Examiner, Art Unit 2451