IP Library Granted Patent US 11,522,951
Granted Patent B2
US 11,522,951 · App. 17/006,286 · Granted Dec 6, 2022

Configuring service mesh networking resources for dynamically discovered peers or network functions

Inventors: Akash Baid (Boston, MA); Nitish Malhotra (Billerica, MA); Michael Anthony Brown (McKinney, TX)
Assignee: Microsoft Technology Licensing, LLC
H04L67/104G06F16/2379H04W84/18
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 11,522,951
App. No.
17/006,286
Granted
Dec 6, 2022
Kind
B2
Abstract

The present disclosure relates to methods and systems for configuring service mesh networking resources for dynamically discovered external entities. The methods and systems create custom resource objects for services provided by the external entities and dynamically create service mesh network resources for the custom resource objects. The methods and systems enable communications with the external entities using the service mesh network resources.

Claims (59)

1. A system, comprising:

one or more processors;

memory in electronic communication with the one or more processors;

a data store; and

instructions stored in the memory, the instructions being executable by the one or more processors to:

receive a request, at a service mesh network, from a consumer entity to register with an external entity that provides a service, wherein the service is discovered by the consumer entity using a network repository function in a 5G network, and wherein the service is unknown to the service mesh network prior to receiving the request from the consumer entry;

create a record in the datastore for the service to maintain an association of the consumer entity using the service;

create, in response to receiving the request from the consumer entity, a custom resource object for the service provided by the external entity, wherein the custom resource object includes custom resource definitions that define characteristics of the service and routing requirements for communications with the service;

provide the custom resource object to a Kubernetes control plane that manages network resources of the service mesh network and instruct the Kubernetes control plane to dynamically create one or more service mesh network resources for the custom resource object and configure the one or more service mesh network resources using the custom resource definitions; and

enable communications from the consumer entity to access the service provided by the external entity by using the one or more service mesh network resources.

2. The system of claim 1 , wherein the instructions are further executable by the one or more processors to:

monitor the custom resource object; and

perform one or more actions relating to the one or more service mesh network resources in response to a change of the custom resource object, wherein the change includes one or more of a creation, a modification, or a deletion.

3. The system of claim 2 , wherein the instructions are further executable by the one or more processors to:

delete the one or more service mesh network resources for the custom resource object in response to the deletion of the custom resource object,

wherein the communications between the consumer entity and the external entity are not enabled in response to the one or more service mesh network resources being deleted.

4. The system of claim 1 , wherein the instructions are further executable by the one or more processors to:

update the record in the data store for the service with the custom resource object; and

increase a reference count for the custom resource object by one, wherein the reference count is used to identify the association with the consumer entity using the service.

5. The system of claim 4 , wherein the instructions are further executable by the one or more processors to:

receive a second request from a second consumer entity to register with the service provided by the external entity;

determine that the record for the service exists in the data store; and

increase the reference count for the custom resource object in the data store by one and update the association to the service to include the second consumer entity.

6. The system of claim 4 , wherein the instructions are further executable by the one or more processors to:

enable the second consumer entity access to the service by using the one or more service mesh network resources for the custom resource object for the service.

7. The system of claim 1 , wherein the service mesh network resources include one or more of service entries, virtual services, destination rules, route rules, gateways, or quotas.

8. The system of claim 1 , wherein the custom resource definitions are created specifically for the service.

9. A method, comprising:

receiving a request, at a service mesh network, from a consumer entity to register with an external entity that provides a service, wherein the service is discovered by the consumer entity using a network repository function in a 5G network, and wherein the service is unknown to the service mesh network prior to receiving the request from the consumer entity;

creating a record in a datastore for the service to maintain an association of the consumer entity using the service;

creating, in response to receiving the request from the consumer entity, a custom resource object for the service provided by the external entity, wherein the custom resource object includes custom resource definitions that define characteristics of the service and routing requirements for communications with the service;

providing the custom resource object to a Kubernetes control plane that manages network resources of the service mesh network and instructs the Kubernetes control plane to dynamically create one or more service mesh network resources for the custom resource object and configure the one or more service mesh network resources using the custom resource definitions; and

enabling communications from the consumer entity to access the service provided by the external entity by using the one or more service mesh network resources.

10. The method of claim 9 , further comprising:

monitoring the custom resource object; and

performing one or more actions relating to the one or more service mesh network resources in response to a change of the custom resource object, wherein the change includes one or more of a creation, a modification, or a deletion.

11. The method of claim 10 , further comprising:

deleting the one or more service mesh network resources for the custom resource object in response to the deletion of the custom resource object,

wherein the communications between the consumer entity and the external entity are not enabled in response to the one or more service mesh network resources being deleted.

12. The method of claim 9 , further comprising:

updating the record in a data store for the service with the custom resource object; and

increasing a reference count for the custom resource object by one, wherein the reference count is used to identify the association with the consumer entity using the service.

13. The method of claim 12 , further comprising:

receiving a second request from a second consumer entity to register with the service provided by the external entity;

determining that the record for the service exists in the data store; and

increasing the reference count for the custom resource object in the data store by one and updating the association to the service to include the second consumer entity.

14. The method of claim 13 , further comprising:

enabling the second consumer entity access to the service by using the one or more service mesh network resources for the custom resource object for the service.

15. The method of claim 9 , wherein the service mesh network resources include one or more of service entries, virtual services, destination rules, route rules, gateways, or quotas.

16. The method of claim 9 , wherein the custom resource definitions are created specifically for the service.

17. A computer-readable medium storing instructions executable by a computer device, comprising:

at least one instruction for causing the computer device to receive a request, at a service mesh network, from a consumer entity to register with an external entity that provides a service, wherein the service is discovered by the consumer entity using a network repository function in a 5G network, and wherein the service is unknown to the service mesh network prior to receiving the request from the consumer entity;

at least one instruction for causing the computer device to create a record in a datastore for the service to maintain an association of the consumer entity using the service;

at least one instruction for causing the computer device to create, in response to receiving the request from the consumer entity, a custom resource object for the service provided by the external entity, wherein the custom resource object includes custom resource definitions that define characteristics of the service and routing requirements for communications with the service;

at least one instruction for causing the computer device to provide the custom resource object to a Kubernetes control plane that manages network resources of the service mesh network and instruct the Kubernetes control plane to dynamically create one or more service mesh network resources for the custom resource object and configure the one or more service mesh network resources using the custom resource definitions; and

at least one instruction for causing the computer device to enable communications from the consumer entity to access the service provided by the external entity using the one or more service mesh network resources.

18. The computer-readable medium of claim 17 , further comprising:

at least one instruction for causing the computer device to monitor the custom resource object; and

at least one instruction for causing the computer device to perform one or more actions relating to the one or more service mesh network resources in response to a change of the custom resource object, wherein the change includes one or more of a creation, a modification, or a deletion.

Assignments (1)
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Aug 28, 2020
From: BAID, AKASH; MALHOTRA, NITISH; BROWN, MICHAEL ANTHONY
To: MICROSOFT TECHNOLOGY LICENSING, LLC
Reel/Frame 053632/0540 →
Continuity (1)
Related Publication 20220070250A1 · Mar 3, 2022
Cited By (1)
US 12,666,279