DETAILED ACTION
1. The present application, filed on or after March 16, 2013, is being examined under the first inventor to file provisions of the AIA .
This action is responsive to the amendment filed 04/15/2026.
Claims 1-3, 5-11, and 13-21 are pending in this application.
Examiner’s Note
2. The following set of rejections regarding the claims are based upon the examiner’s interpretation of “and/or” equal “or”.
Claim Objections
3. Claim 15 is objected to because of the following informalities: “the side car” should read “the sidecar”.
Appropriate correction is required.
Claim Rejections - 35 USC § 102
4. In the event the determination of the status of the application as subject to AIA 35 U.S.C. 102 and 103 (or as subject to pre-AIA 35 U.S.C. 102 and 103) is incorrect, any correction of the statutory basis for the rejection will not be considered a new ground of rejection if the prior art relied upon, and the rationale supporting the rejection, would be the same under either status.
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-11, and 13-21 are rejected under 35 U.S.C. 102(a)(2) as being anticipated by Wangde et al. (US 20220291973).
It is noted that any citations to specific, pages, columns, paragraphs, lines, or figures in the prior art references and any interpretation of the reference should not be considered to be limiting in any way. A reference is relevant for all it contains and may be relied upon for all that it would have reasonably suggested to one having ordinary skill in the art. See MPEP 2123.
As to claim 18:
Wangde teaches a method comprising:
receiving a request to execute at least one process and executing at least one process in-process with a sidecar, wherein the executing the at least one process in-process with the sidecar comprises the at least one process and the sidecar executing in a same process and/or same container ([0025]: In a service mesh, requests for a particular microservice are routed between the microservices through proxies in their own infrastructure layer. The individual proxies that are used to run the microservices may collectively form a service mesh. The proxies are sometimes referred to as sidecars, such as in the Kubernetes architecture for example, because they run alongside a microservice rather than within a microservice. Sidecars may handle communication between microservices and other services, monitoring of microservice performance, and microservice security related matters... Envoy is one example of a microservice sidecar proxy that may form a transparent communication mesh in which a microservice, and/or the application that includes the microservice, is able to send and receive messages to and from a localhost without having to have an awareness of the network topology; [0031]: With continued reference to FIG. 1, the CaaS 102 may take the form, for example, of a cloud service that may enable developers or operators to scale, organize, and manage containers using container-based virtualization. Once the container is deployed, the service mesh proxy 118 may be deployed as a respective microservice sidecar proxy alongside each of a plurality of microservices. For example, a platform such as the Envoy platform (https://www.envoyproxy.io/) may be used in this process as a deployable sidecar proxy to a microservice, and such a platform may help to add and remove microservice sidecar proxies dynamically which, in turn, may lend flexibility and responsiveness to the management of a containerized application infrastructure; [0053-0056]: The method 200 may begin at 202 where a service request is received 202, such as by a service mesh proxy from a control plane of a CaaS. The service request may specify, among other things, the particular service needed, such as a translation service for example, and an API of the CSP that provides the requested service... At 204, the service mesh proxy, which may take the form of sidecar proxy to the CaaS, may parse the service request to identify the API....When the endpoint evaluation 208 reveals that an endpoint other than the one implicated by the initial service request has been determined to provide the best performance...provide the best service; see also [0075]).
As to claim 19:
Wangde teaches the at least one process performing a network function, wherein the network function comprises one or more of: firewall, load balancer, Network Address Translation (NAT), or gateway ([0035] and [0039]).
As to claim 20:
Wangde teaches the at least one process is allocated to a processor based on data dependency with another process ([0015] and [0022-0023]).
As to claim 21:
Wangde teaches the at least one process executing on at least one platform comprising a cluster and/or co-located machines ([0026] and [0031]).
As to claim 1:
Wangde teaches at least one non-transitory computer-readable medium ([0069]: A non-transitory storage medium) comprising instructions stored thereon, that if executed by one or more processors on a platform, cause the one or more processors on the platform to ([0069]: A non-transitory storage medium having stored therein instructions that are executable by one or more hardware processors to perform operations comprising the operations):
during runtime of at least one process, cause the one or more processors to execute the at least one process in-process with a sidecar, wherein the sidecar is to communicate with a service mesh to communicate with one or more microservices of a cloud native application and wherein to execute the at least one process in- process with the sidecar, the at least one process and the sidecar are to execute in a same process and/or same container ([0025]: In a service mesh, requests for a particular microservice are routed between the microservices through proxies in their own infrastructure layer. The individual proxies that are used to run the microservices may collectively form a service mesh. The proxies are sometimes referred to as sidecars, such as in the Kubernetes architecture for example, because they run alongside a microservice rather than within a microservice. Sidecars may handle communication between microservices and other services, monitoring of microservice performance, and microservice security related matters... Envoy is one example of a microservice sidecar proxy that may form a transparent communication mesh in which a microservice, and/or the application that includes the microservice, is able to send and receive messages to and from a localhost without having to have an awareness of the network topology; [0031]: With continued reference to FIG. 1, the CaaS 102 may take the form, for example, of a cloud service that may enable developers or operators to scale, organize, and manage containers using container-based virtualization. Once the container is deployed, the service mesh proxy 118 may be deployed as a respective microservice sidecar proxy alongside each of a plurality of microservices. For example, a platform such as the Envoy platform (https://www.envoyproxy.io/) may be used in this process as a deployable sidecar proxy to a microservice, and such a platform may help to add and remove microservice sidecar proxies dynamically which, in turn, may lend flexibility and responsiveness to the management of a containerized application infrastructure; [0053-0056]: The method 200 may begin at 202 where a service request is received 202, such as by a service mesh proxy from a control plane of a CaaS. The service request may specify, among other things, the particular service needed, such as a translation service for example, and an API of the CSP that provides the requested service... At 204, the service mesh proxy, which may take the form of sidecar proxy to the CaaS, may parse the service request to identify the API....When the endpoint evaluation 208 reveals that an endpoint other than the one implicated by the initial service request has been determined to provide the best performance...provide the best service).
As to claim 2:
Wangde teaches the at least one process and a microservice of the one or more microservices share access to data, the microservice is to execute on a different platform than that of the platform and the different platform is coupled to the platform using a network ([0015] and [0041]).
As to claim 3:
Wangde teaches the microservice is to execute on a different processor than the one or more processors ([0018-0019] and [0072-0073]).
As to claim 5:
Wangde teaches the at least one process is to perform a network function ([0039] and [0041]).
As to claim 6:
Wangde teaches the network function comprises one or more of: firewall, load balancer, Network Address Translation (NAT), or gateway ([0035] and [0039]).
As to claim 7:
Wangde teaches the execution of the at least one process in- process with the sidecar comprises the at least one process and the sidecar are to execute on a same core and share memory and cache ([0031] and [0040]).
As to claim 8:
Wangde teaches dependency data indicates whether the at least one process shares access to data with the one or more microservices and the one or more processors are to translate dependency data to a format for processing by the platform ([0039-0040]).
As to claim 9:
Wangde teaches the at least one process has an associated indicator of logical core permitted to execute the at least one process and wherein the indicator is based on data dependency with the one or more microservices ([0028] and [0045]).
As to claim 10:
Wangde teaches an apparatus ([0012]: systems) comprising:
a memory comprising instructions stored thereon and at least one processor, that based on execution of the instructions stored in the memory ([0069]: A non-transitory storage medium having stored therein instructions that are executable by one or more hardware processors to perform operations comprising the operations), is to:
cause at least one platform to: execute a first service of multiple services on a processor that executes a side car and share memory between the first service and the side car, wherein to execute the first service on the processor that executes the side car comprises execution of the first service and the side car in a same process and/or same container ([0025]: In a service mesh, requests for a particular microservice are routed between the microservices through proxies in their own infrastructure layer. The individual proxies that are used to run the microservices may collectively form a service mesh. The proxies are sometimes referred to as sidecars, such as in the Kubernetes architecture for example, because they run alongside a microservice rather than within a microservice. Sidecars may handle communication between microservices and other services, monitoring of microservice performance, and microservice security related matters... Envoy is one example of a microservice sidecar proxy that may form a transparent communication mesh in which a microservice, and/or the application that includes the microservice, is able to send and receive messages to and from a localhost without having to have an awareness of the network topology; [0031]: With continued reference to FIG. 1, the CaaS 102 may take the form, for example, of a cloud service that may enable developers or operators to scale, organize, and manage containers using container-based virtualization. Once the container is deployed, the service mesh proxy 118 may be deployed as a respective microservice sidecar proxy alongside each of a plurality of microservices. For example, a platform such as the Envoy platform (https://www.envoyproxy.io/) may be used in this process as a deployable sidecar proxy to a microservice, and such a platform may help to add and remove microservice sidecar proxies dynamically which, in turn, may lend flexibility and responsiveness to the management of a containerized application infrastructure; [0053-0056]: The method 200 may begin at 202 where a service request is received 202, such as by a service mesh proxy from a control plane of a CaaS. The service request may specify, among other things, the particular service needed, such as a translation service for example, and an API of the CSP that provides the requested service... At 204, the service mesh proxy, which may take the form of sidecar proxy to the CaaS, may parse the service request to identify the API....When the endpoint evaluation 208 reveals that an endpoint other than the one implicated by the initial service request has been determined to provide the best performance...provide the best service; see also [0075] ).
As to claim 11:
Wangde teaches the first service is to execute on a different platform than that of at least one other of a second service of the multiple services ([0015] and [0041]).
As to claim 13:
Wangde teaches the first service is to execute on a same processor as that of a second service of the multiple services ([0022-0023]).
As to claim 14:
Wangde teaches the at least one platform comprises a cluster and/or co- located machines ([0026] and [0031]).
As to claim 15:
Wangde teaches the sidecar provides communications among different services of the multiple services ([0025] and [0040]).
As to claim 16:
Wangde teaches a data dependency graph is to indicate data dependency between the first service and a second service of the multiple services and the at least one processor, based on execution of the instructions stored in the memory, is to: cause the at least one platform to translate the data dependency graph to a format for processing by the at least one platform ([0015] and [0039-0040]).
As to claim 17:
Wangde teaches provide an indicator of at least one logical core permitted to execute the first service and wherein the indicator is based on a dependency graph that is to indicate data dependency among the first service and other of the multiple services ([0015], [0028], and [0045]).
Response to Arguments
5. Applicants' arguments filed 04/15/2026 have been fully considered but they are not persuasive.
Claim Rejection under 35 USC § 101:
The 101 rejection has been withdrawn in view of Applicant's amendment.
Claim Rejection under 35 USC § 102:
Applicant argues that “Wangde does not disclose that a process and sidecar execute in a same process and/or same container”.
In response, under broadest reasonable interpretation, Wangde meets the limitations as claimed. Wangde teaches the at least one process and the sidecar executing in a same process and/or same container ([0025]: In a service mesh, requests for a particular microservice are routed between the microservices through proxies in their own infrastructure layer. The individual proxies that are used to run the microservices may collectively form a service mesh. The proxies are sometimes referred to as sidecars, such as in the Kubernetes architecture for example, because they run alongside a microservice rather than within a microservice. Sidecars may handle communication between microservices and other services, monitoring of microservice performance, and microservice security related matters... Envoy is one example of a microservice sidecar proxy that may form a transparent communication mesh in which a microservice, and/or the application that includes the microservice, is able to send and receive messages to and from a localhost without having to have an awareness of the network topology; [0031]: With continued reference to FIG. 1, the CaaS 102 may take the form, for example, of a cloud service that may enable developers or operators to scale, organize, and manage containers using container-based virtualization. Once the container is deployed, the service mesh proxy 118 may be deployed as a respective microservice sidecar proxy alongside each of a plurality of microservices. For example, a platform such as the Envoy platform (https://www.envoyproxy.io/) may be used in this process as a deployable sidecar proxy to a microservice, and such a platform may help to add and remove microservice sidecar proxies dynamically which, in turn, may lend flexibility and responsiveness to the management of a containerized application infrastructure; [0053-0056]: The method 200 may begin at 202 where a service request is received 202, such as by a service mesh proxy from a control plane of a CaaS. The service request may specify, among other things, the particular service needed, such as a translation service for example, and an API of the CSP that provides the requested service... At 204, the service mesh proxy, which may take the form of sidecar proxy to the CaaS, may parse the service request to identify the API....When the endpoint evaluation 208 reveals that an endpoint other than the one implicated by the initial service request has been determined to provide the best performance...provide the best service; see also [0075]).
During patent examination, the pending claims must be “given their broadest reasonable interpretation consistent with the specification.” In re Hyatt 21 1 F.3d 1367, 1372, 54 USPQ2d 1664, 1667 (Fed. Cir. 2000).
Conclusion
6. THIS ACTION IS MADE FINAL. Applicant is reminded of the extension of time policy as set forth in 37 CFR 1.136(a).
A shortened statutory period for reply to this final action is set to expire THREE MONTHS from the mailing date of this action. In the event a first reply is filed within TWO MONTHS of the mailing date of this final action and the advisory action is not mailed until after the end of the THREE-MONTH shortened statutory period, then the shortened statutory period will expire on the date the advisory action is mailed, and any extension fee pursuant to 37 CFR 1.136(a) will be calculated from the mailing date of the advisory action. In no event, however, will the statutory period for reply expire later than SIX MONTHS from the mailing date of this final action.
Contact Information
9. Any inquiry concerning this communication or earlier communications from the examiner should be directed to VAN H. NGUYEN whose telephone number is (571) 272-3765. The examiner can normally be reached on Monday- Friday from 9:00AM to 5:30 PM.
If attempts to reach the examiner by telephone are unsuccessful, the examiner’s supervisor, LEWIS BULLOCK, can be reached at telephone number (571) 272-3759. The fax phone number for the organization where this application or proceeding is assigned is 571-273-8300.
Information regarding the status of an application may be obtained from Patent Center and the Private Patent Application Information Retrieval (PAIR) system. Status information for published applications may be obtained from Patent Center or Private PAIR. Status information for unpublished applications is available through Patent Center or Private PAIR to authorized users only. Should you have questions about access to Patent Center or the Private PAIR system, contact the Electronic Business Center (EBC) at 866-217-9197 (toll-free).
Examiner interviews are available via telephone, in-person, and video conferencing using a USPTO supplied web-based collaboration tool. To schedule an interview, applicant is encouraged to use the USPTO Automated Interview Request (AIR) Form at https://www.uspto.gov/patents/uspto-automated- interview-request-air-form.
/VAN H NGUYEN/Primary Examiner, Art Unit 2199