Method for dynamic resources allocation and apparatus for implementing the same
US-2022357995-A1 · Nov 10, 2022 · US
US11997022B2 · US · B2
| Field | Value |
|---|---|
| Publication number | US-11997022-B2 |
| Application number | US-202117353219-A |
| Country | US |
| Kind code | B2 |
| Filing date | Jun 21, 2021 |
| Priority date | Jun 21, 2021 |
| Publication date | May 28, 2024 |
| Grant date | May 28, 2024 |
A practical reading order for non-experts. Skip the full description unless you need deep technical detail.
What the patent document calls the invention.
A short plain-language summary of the technical disclosure.
Who owns or filed the patent and who is credited as inventor.
Filing, priority, publication, and grant dates set the timeline.
The legal scope of protection — read this for what is actually claimed.
Technology tags used to group this patent with similar filings.
Prior art links and similar publications in this corpus.
Official abstract text for this publication.
Methods, systems, and computer program products for service-to-service scheduling in container orchestrators are provided herein. A computer-implemented method includes reserving, by a network orchestrator, network resources requested between a plurality of services, wherein each of the services is implemented as one or more replicas running on a set of nodes of a cluster, managed by the network orchestrator, that use the network resources to serve incoming requests to the plurality services; monitoring utilization of the network resources; and scheduling, by the network orchestrator based on the monitoring, one or more new replicas of the plurality of services and the incoming requests to the plurality of services in a collaborative manner to increase at least one network performance characteristic.
Opening claim text (preview).
What is claimed is: 1. A computer-implemented method, the method comprising: obtaining at least one specification indicating network resources requested between a plurality of services, wherein each of the services is implemented as one or more replicas running on a set of nodes of a cluster, managed by a network orchestrator, that use the network resources to serve incoming requests to the plurality services; reserving, by the network orchestrator based at least in part on the at least one specification, the network resources requested between the plurality of services; monitoring utilization of the network resources; and scheduling, by the network orchestrator based on the monitoring, one or more new replicas of the plurality of services and the incoming requests to the plurality of services in a collaborative manner to increase at least one network performance characteristic, wherein said scheduling comprises at least one of: scheduling one or more of the new replicas of a given one of the plurality of services on one or more nodes in the set, and scheduling one or more of the incoming requests for a given one of the plurality of services to one or more of the replicas corresponding to the given service; wherein the method is carried out by at least one computing device. 2. The computer-implemented method of claim 1 , wherein the at least one specification identifies: a first one of the plurality of services as a source service; a second one of the plurality of services as a destination service; a replica count for each of the source service and the destination service; and one or more network requirements for the source and the destination service. 3. The computer-implemented method of claim 2 , wherein the at least one specification further identifies a tag corresponding to a chain of services comprising: the source service, the destination service, and at least another one of the plurality of services, and wherein the reserving comprises using the tag to reserve the network resources for the chain of services. 4. The computer-implemented method of claim 2 , wherein the one or more network requirements comprise at least one of: a threshold latency value specified for the source service and the destination service; a quality-of-service level; and a bandwidth range. 5. The computer-implemented method of claim 4 , wherein the scheduling one or more of the new replicas of a given one of the plurality of services on one or more nodes in the set comprises: performing at least one of an integer linear programming technique and a machine learning technique based at least in part on the one or more network requirements and one or more network constraints. 6. The computer-implemented method of claim 1 , wherein scheduling one or more of the incoming requests for a given one of the plurality of services to one or more of the replicas corresponding to the given service comprises: distributing the one or more incoming requests across the set of nodes by at least one of: adjusting at least one internet protocol table associated with at least one of the nodes in the set based on the monitoring, and automatically dropping one or more of the incoming requests based on one or more network constraints. 7. The computer-implemented method of claim 1 , wherein the at least one network performance characteristics comprises one or more of: decreasing downtime of a network associated with the cluster; and increasing a number of pairs of the plurality of services supported by the network resources. 8. The computer-implemented method of claim 1 , wherein the scheduling comprises: automatically scaling one or more of a number of replicas running on the set of nodes for one or more of the plurality of services, and an amount of network resources reserved for one or more nodes in the set. 9. The computer-implemented method of claim 1 , wherein the monitoring comprises: obtaining, by the network orchestrator, link utilization information of a network associated with the cluster, the network comprising: the set of nodes, at least one switch, and at least one router. 10. The computer-implemented method of claim 1 , wherein the reserving comprises: communicating, by the network orchestrator, with at least one further network orchestrator associated with at least one further cluster to collaboratively reserve network resources requested between one of the plurality services and at least one further service implemented on the at least one further cluster. 11. The computer-implemented method of claim 1 , wherein software is provided as a service in a cloud environment. 12. A computer program product comprising a computer readable storage medium having program instructions embodied therewith, the program instructions executable by a computing device to cause the computing device to: network resources requested between a plurality of services, wherein each of the services is implemented as one or more replicas running on a set of nodes of a cluster, managed by the network orchestrator, that use the network resources to serve incoming requests to the plurality services; reserve, by the network orchestrator based at least in part on the at least one specification, the network resources requested between the plurality of services; monitor utilization of the network resources; and schedule, by the network orchestrator based on the monitoring, one or more new replicas of the plurality of services and the incoming requests to the plurality of services to increase at least one network performance characteristic, wherein said scheduling comprises at least one of: scheduling one or more of the new replicas of a given one of the plurality of services on one or more nodes in the set, and scheduling one or more of the incoming requests for a given one of the plurality of services to one or more of the replicas corresponding to the given service. 13. The computer program product of claim 12 , wherein the at least one specification identifies: a first one of the plurality of services as a source service; a second one of the plurality of services as a destination service; a replica count for each of the source service and the destination service; and one or more network requirements for the source and the destination service. 14. The computer program product of claim 13 , wherein the at least one specification further identifies a tag corresponding to a chain of services comprising: the source service, the destination service, and at least another one of the plurality of services, and wherein the reserving comprises using the tag to reserve the network resources for the chain of services. 15. The computer program product of claim 13 , wherein the one or more network requirements comprise at least one of: a threshold latency value specified for the source service and the destination service; a quality-of-service level; and a bandwidth range. 16. The computer program product of claim 15 , wherein the scheduling one or more new replicas for a given one of the plurality of services on one or more nodes in the set comprises: performing at least one of an integer linear programming technique and a machine learning technique based at least in part on the one or more network requirements and one or more network constraints. 17. The computer program product of claim 12 , wherein the one or more incoming requests for a given one of the plurality of services to one or more corresponding replicas of the given service comprises: distributing the one or more incoming requests across the s
Centralised allocation of resources · CPC title
Machine learning · CPC title
using a combination of thresholds · CPC title
at the destination endpoint, e.g. reservation of terminal resources or buffer space · CPC title
QOS or priority aware · CPC title
Related publications grouped by family.
Answers are generated from the same data shown on this page.