IP Library Granted Patent US 12,335,233
Granted Patent B2
US 12,335,233 · App. 17/847,356 · Granted Jun 17, 2025

Securing metrics for a pod

Inventors: Alex John Hockey (London, GB); James Warren Turner (London, GB)
Assignee: MICROSOFT TECHNOLOGY LICENSING, LLC
H04L63/0236H04L63/0428
View Patent ↗
Loading inventors, assignments & file history…
Monitor This Case
Get email alerts when status or documents change.
Order Certified Copies
Most orders are placed with the USPTO same day — all within 24 business hours.
Order via The Patent Place →
Pre-filled with this patent's details
Quick Facts
Patent No.
US 12,335,233
App. No.
17/847,356
Filed
Jun 23, 2022
Granted
Jun 17, 2025
Kind
B2
Art Unit
2431
USPC
726/13
Abstract

A computer-implemented method, data processing system and computer-readable medium for a pod of a container orchestration platform to secure metrics relating to the pod prior to transmission of metrics to a metrics collection service. The method comprising: receiving a secure request at a pod IP address and forwarding the request to a container of the pod; and receiving an insecure request at the pod IP address; examining the content of the received insecure request; from the examining, determining whether the received insecure request is requesting metrics information; if it was determined that the received insecure request does not request metrics information, passing the request to an original destination within the pod, and if it was determined that the received insecure request does request metrics information, rejecting the received insecure request.

Claims (47)

1. A computer-implemented method for securing metrics relating to a pod orchestrated by a container orchestration platform implementing a service mesh, wherein a sidecar proxy container is installed in the pod along with network routing rules to redirect application traffic via the sidecar proxy container, the metrics secured prior to transmission of the metrics to a metrics collection service, the method comprising:

receiving a secure request having an IP address of the pod;

forwarding the secure request to a container of the pod identified by the IP address;

receiving an unsecure request having the IP address of the pod;

redirecting, via the sidecar proxy container, the unsecure request to an internal router;

examining, by the internal router, content of the received unsecure request;

based on the examining, determining, by the internal router, whether the received unsecure request includes a request for metrics information;

passing, by the internal router, the received unsecure request to an original destination of the received unsecure request within the pod identified by the IP address when the received unsecure request does not include a request for metrics information; and

rejecting, by the internal router, the received unsecure request when the received unsecure request includes a request for metrics information.

2. The computer-implemented method of claim 1 , wherein the secure and unsecure requests received at the pod IP address are received on a port used to serve metrics.

3. The computer-implemented method of claim 1 , wherein the container the secure request is forwarded to is a proxy container.

4. The computer-implemented method of claim 1 , wherein the received unsecure request is a HTTP request.

5. The computer-implemented method of claim 1 , wherein forwarding the secure request to the container of the pod comprises:

decrypting the secure request;

passing the decrypted request to an insecure metrics endpoint within the pod; and

generating, by the metrics endpoint, metrics information relating to the container of the pod.

6. The computer-implemented method of claim 1 , wherein the received unsecure request is directed to a HTTP router component of the pod that performs the determining.

7. The computer-implemented method of claim 1 , wherein a proxy associated with the pod performs HTTP routing within the pod.

8. The computer-implemented method of claim 7 , wherein the received unsecure request and the received secure request are both directed to the proxy by networking rules of the pod.

9. The computer-implemented method of claim 8 , wherein the received unsecure request and the received secure request are directed to a single port of the proxy by networking rules of the pod.

10. A system comprising a computing device and an internal router, the system configured to:

receive a secure request at a pod IP address, wherein the pod is orchestrated by a container orchestration platform implementing a service mesh, wherein a sidecar proxy container is installed in the pod along with network routing rules to redirect application traffic via the sidecar proxy container;

forward the request to a container of the pod associated with the pod IP address;

receive an unsecure request at the pod IP address;

redirect, via the sidecar proxy container, the unsecure request to the internal router;

examine, by the internal router, content of the received unsecure request;

based on the examining, determine, by the internal router, whether the received unsecure request is requesting metrics information; and

in response to determining that the received unsecure request does not request metrics information, pass, by the internal router, the request to an original destination within the pod.

11. The system of claim 10 , wherein the secure and unsecure requests received at the pod IP address are received on a port used to serve metrics.

12. The system of claim 10 , wherein the container the secure request is forwarded to is a proxy container.

13. The system of claim 10 , wherein the received unsecure request is a HTTP request.

14. The system of claim 10 , wherein forwarding the request to a container of the pod comprises:

decrypting the secure request;

passing the decrypted request to an unsecure metrics endpoint within the pod; and

generating, by the metrics endpoint, metrics information relating to the container of the pod.

15. The system of claim 10 , wherein the received unsecure request is directed to a HTTP router component of the pod that performs the determining.

16. The system of claim 10 , wherein a proxy associated with the pod performs HTTP routing within the pod.

17. The system of claim 16 , wherein the received unsecure request and the received secure request are both directed to the proxy by networking rules of the pod.

18. The system of claim 17 , wherein the received unsecure request and the received secure request are both directed to a single port of the proxy by networking rules of the pod.

19. One or more non-transitory computer-readable media comprising computer-executable instructions which, when executed by one or more processors of a system, cause the system to perform operations comprising:

receiving a secure request at a pod IP address and forwarding the request to a container of the pod associated with the IP address, wherein the pod is orchestrated by a container orchestration platform implementing a service mesh, wherein a sidecar proxy container is installed in the pod along with network routing rules to redirect application traffic via the sidecar proxy container;

receiving an unsecure request at the pod IP address; and

redirecting, via the sidecar proxy container, the unsecure request to an internal router configured to;

examine content of the received unsecure request;

based on the examining, determine that the received unsecure request is requesting metrics information; and

in response to determining that the received insecure request does request metrics information, reject the received insecure request.

20. The non-transitory computer-readable media of claim 19 , wherein the secure and unsecure requests received at the pod IP address are received on a port used to serve metrics.

Assignments (1)
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Jun 23, 2022
From: HOCKEY, ALEX JOHN; TURNER, JAMES WARREN
To: MICROSOFT TECHNOLOGY LICENSING, LLC
Reel/Frame 060287/0450 →
Priority Claims (1)
GB 2206224 · Apr 28, 2022 · national
Continuity (1)
Related Publication 20230353535A1 · Nov 2, 2023
References Cited (20)
US 11457080B1 · Meduri · 2022 [cited by examiner]
US 11563636B1 · Kairali · 2023 [cited by examiner]
US 11876692B2 · Mazzitelli · 2024 [cited by examiner]
US 20170251019A1 · Mazzitelli · 2017 [cited by examiner]
US 20180288135A1 · Narayan · 2018 [cited by examiner]
US 20190306231A1 · Shimoga Manjunatha · 2019 [cited by examiner]
US 20200007405A1 · Chitalia · 2020 [cited by examiner]
US 20210019194A1 · Bahl · 2021 [cited by examiner]
US 20210036935A1 · Patwardhan · 2021 [cited by examiner]
US 20210406039A1 · Theimer · 2021 [cited by examiner]
US 20220086157A1 · Masjuan · 2022 [cited by examiner]
US 20230185594A1 · Venkatram · 2023 [cited by examiner]
US 20230259415A1 · Kairali · 2023 [cited by examiner]
CN 101106451A · 2008 [cited by examiner]
CN 112256392A · 2021 [cited by examiner]
WO WO2021050343A1 · 2021 [cited by examiner]
“Kubernetes Security-OWASP Cheat Sheet Series”, Retrieved from: https://cheatsheetseries.owasp.org/cheatsheets/Kubernetes_Security_Cheat_Sheet.html, Retrieved On: May 4, 2023, 29 Pages. [cited by applicant]
“Skipper”, Retrieved from: https://opensource.zalando.com/skipper/, Retrieved On: May 12, 2023, 1 Page. [cited by applicant]
Koschel, et al., “A Look at Service Meshes”, In Proceedings of 12th International Conference on Information, Intelligence, Systems & Applications, Jul. 12, 2021, 8 Pages. [cited by applicant]
“International Search Report and Written Opinion Issued in PCT Application No. PCT/US23/013368”, Mailed Date: May 22, 2023, 10 Pages. [cited by applicant]