Controlling Resource Allocation in a Data Center
US-2019235922-A1 · Aug 1, 2019 · US
US2018241802A1 · US · A1
| Field | Value |
|---|---|
| Publication number | US-2018241802-A1 |
| Application number | US-201715437565-A |
| Country | US |
| Kind code | A1 |
| Filing date | Feb 21, 2017 |
| Priority date | Feb 21, 2017 |
| Publication date | Aug 23, 2018 |
| Grant date | — |
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.
Technologies for network switch based load balancing include a network switch. The network switch is to receive messages, route messages to destination computing devices, receive a request to perform a workload, and receive telemetry data from a plurality of server nodes in communication with the network switch. The telemetry data is indicative of a present load on one or more resources of each server node. The network switch is further to determine channel utilization data for each of the server nodes, select, as a function of the telemetry data and the channel utilization data, one or more of the server nodes to execute the workload, and assign the workload to the selected one or more server nodes. Other embodiments are also described and claimed.
Opening claim text (preview).
1 . A network switch for managing the distribution of workloads among a set of server nodes, the network switch comprising: one or more processors; one or more memory devices having stored therein a plurality of instructions that, when executed, cause the network switch to: receive a message; route the message to a destination computer; receive a request to perform a workload; receive telemetry data from a plurality of server nodes in communication with the network switch, wherein the telemetry data is indicative of a present load on one or more resources of each server node; determine channel utilization data for each of the server nodes, wherein the channel utilization data is indicative of a present amount of network bandwidth of the server node; select, as a function of the telemetry data and the channel utilization data, one or more of the server nodes to execute the workload; and assign the workload to the selected one or more server nodes. 2 . The network switch of claim 1 , wherein to select the one or more server nodes comprises to select the one or more server nodes further as a function of a target quality of service to be satisfied in the execution of the workload. 3 . The network switch of claim 1 , wherein to receive the request to perform the workload comprises to receive an indication of a resource sensitivity associated with the workload, wherein the resource sensitivity is indicative of one or more resources that the workload will primarily utilize when executed. 4 . The network switch of claim 1 , wherein to select the one or more server nodes comprises to utilize dedicated load balancer logic of the network switch to select the one or more server nodes. 5 . The network switch of claim 4 , wherein the dedicated load balancer logic comprises a field programmable gate array (FPGA) and the network switch is further to: obtain a bit stream indicative of a configuration of the FPGA to perform a load balancing operation; and provide the bit stream to the FPGA to configure the FPGA to perform the load balancing operation. 6 . The network switch of claim 1 , wherein, when executed, the plurality of instructions further cause the network switch to identify one or more inoperative server nodes, and wherein to select one or more server nodes to perform the workload comprises to exclude the one or more inoperative server nodes from the selection. 7 . The network switch of claim 1 , wherein: to receive the request comprises to receive a designation of one or more of the server nodes to perform the workload; and to select the one or more server nodes comprises to select one or more server nodes designated in the request. 8 . The network switch of claim 1 , wherein, when executed, the plurality of instructions further cause the network switch to receive resource registration data from the server nodes, wherein the resource registration data is indicative of a unique identifier for each resource, a type of each resource, and capabilities of each resource. 9 . The network switch of claim 8 , wherein to receive the resource registration data comprise to receive resource registration data associated with one or more physical resources of the server nodes. 10 . The network switch of claim 8 , wherein to receive the resource registration data comprises to receive resource registration data associated with one or more software resources of the server nodes. 11 . The network switch of claim 1 , wherein to receive the telemetry data comprise to receive the telemetry data through a virtual channel with each of the server nodes. 12 . The network switch of claim 1 , wherein to receive the telemetry data comprises to receive load data indicative of a load on one or more physical resources of the one or more server nodes. 13 . One or more machine-readable storage media comprising a plurality of instructions stored thereon that, in response to being executed, cause a network switch to: receive a message; route the message to a destination computer; receive a request to perform a workload; receive telemetry data from a plurality of server nodes in communication with the network switch, wherein the telemetry data is indicative of a present load on one or more resources of each server node; determine channel utilization data for each of the server nodes, wherein the channel utilization data is indicative of a present amount of network bandwidth of the server node; select, as a function of the telemetry data and the channel utilization data, one or more of the server nodes to execute the workload; and assign the workload to the selected one or more server nodes. 14 . The one or more machine-readable storage media of claim 13 , wherein to select the one or more server nodes comprises to select the one or more server nodes further as a function of a target quality of service to be satisfied in the execution of the workload. 15 . The one or more machine-readable storage media of claim 13 , wherein to receive the request to perform the workload comprises to receive an indication of a resource sensitivity associated with the workload, wherein the resource sensitivity is indicative of one or more resources that the workload will primarily utilize when executed. 16 . The one or more machine-readable storage media of claim 13 , wherein to select the one or more server nodes comprises to utilize dedicated load balancer logic of the network switch to select the one or more server nodes. 17 . The one or more machine-readable storage media of claim 16 , wherein the dedicated load balancer logic comprises a field programmable gate array (FPGA) and the plurality of instructions, when executed, further cause the network switch to: obtain a bit stream indicative of a configuration of the FPGA to perform a load balancing operation; and provide the bit stream to the FPGA to configure the FPGA to perform the load balancing operation. 18 . The one or more machine-readable storage media of claim 13 , wherein, when executed, the plurality of instructions further cause the network switch to identify one or more inoperative server nodes, and wherein to select one or more server nodes to perform the workload comprises to exclude the one or more inoperative server nodes from the selection. 19 . The one or more machine-readable storage media of claim 13 , wherein: to receive the request comprises to receive a designation of one or more of the server nodes to perform the workload; and to select the one or more server nodes comprises to select one or more server nodes designated in the request. 20 . The one or more machine-readable storage media of claim 13 , wherein, when executed, the plurality of instructions further cause the network switch to receive resource registration data from the server nodes, wherein the resource registration data is indicative of a unique identifier for each resource, a type of each resource, and capabilities of each resource. 21 . The one or more machine-readable storage media of claim 20 , wherein to receive the resource registration data comprise to receive resource registration data associated with one or more physical resources of the server nodes. 22 . The one or more machine-readable storage media of claim 20 , wherein to receive the resource registration data comprises to receive resource registration data associated with one or more software resources of the server nodes. 23 . The one or more machin
with static server selection, e.g. the same server being selected for a specific client · CPC title
Packet rate · CPC title
based on compliance of requirements or conditions with available server resources · CPC title
based on network conditions · CPC title
using data related to the state of servers by a load balancer · CPC title
Related publications grouped by family.
Answers are generated from the same data shown on this page.