Dynamically reconfiguring data plane of forwarding element to account for power consumption
US-10298456-B1 · May 21, 2019 · US
US10877670B1 · US · B1
| Field | Value |
|---|---|
| Publication number | US-10877670-B1 |
| Application number | US-201715683742-A |
| Country | US |
| Kind code | B1 |
| Filing date | Aug 22, 2017 |
| Priority date | Nov 28, 2016 |
| Publication date | Dec 29, 2020 |
| Grant date | Dec 29, 2020 |
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.
Some embodiments of the invention provide a network forwarding element that can be dynamically reconfigured to adjust its data message processing to stay within a desired operating temperature or power consumption range. In some embodiments, the network forwarding element includes (1) a data-plane forwarding circuit (“data plane”) to process data tuples associated with data messages received by the IC, and (2) a control-plane circuit (“control plane”) for configuring the data plane forwarding circuit. The data plane includes several data processing stages to process the data tuples. The data plane also includes an idle-signal injecting circuit that receives from the control plane configuration data that the control plane generates based on the IC's temperature. Based on the received configuration data, the idle-signal injecting circuit generates idle control signals for the data processing stages. Each stage that receives an idle control signal enters an idle state during which the majority of the components of that stage do not perform any operations, which reduces the power consumed and temperature generated by that stage during its idle state.
Opening claim text (preview).
The invention claimed is: 1. A non-transitory machine readable medium storing a control-plane program for configuring a data-plane forwarding circuit of a network forwarding element, the data-plane forwarding circuit to process at least a portion of data tuples associated with data messages received by the forwarding element, the program comprising sets of instructions for: configuring the data-plane forwarding circuit not to process data messages at a rate larger than a first maximum throughput rate; detecting an operating condition of the data-plane forwarding circuit, wherein the operating condition comprises congestion of one or more data message queues used by the data-plane forwarding circuit; and based on the detected operating condition, reconfiguring the data-plane forwarding circuit to allow the data-plane forwarding circuit to process data messages at a rate larger than the first maximum throughput rate. 2. The non-transitory machine readable medium of claim 1 , wherein the set of instructions for reconfiguring the data-plane forwarding circuit comprises a set of instructions for configuring the forwarding circuit not to process data messages at a second maximum throughput rate that is larger than the first maximum throughput rate. 3. The non-transitory machine readable medium of claim 1 , wherein the set of instructions for configuring the data-plane forwarding circuit comprises a set of instructions for configuring an idle-signal generator of the data-plane forwarding circuit to generate idle signals that are interspersed among the received data messages through data processing stages of the data-plane forwarding circuit at a rate that ensures that the data processing stages cannot process data messages at a rate larger than the first maximum throughput rate; and the set of instructions for reconfiguring the data-plane forwarding circuit comprises a set of instructions for configuring the idle-signal generator to reduce the rate at which the idle signals are generated so that the data processing stages are able to process data messages at a rate larger than the first maximum throughput rate. 4. The non-transitory machine readable medium of claim 3 , wherein the reduced rate at which the idle signals are generated ensure that the data message processing stages do not process data messages at a rate larger than a second maximum throughput rate. 5. The non-transitory machine readable medium of claim 1 , wherein an idle signal traverses successively through several data processing stages of the data-plane forwarding circuit. 6. The non-transitory machine readable medium of claim 5 , wherein the data-plane forwarding circuit includes (1) a parsing circuit for generating data tuples from the received data messages and storing the generated data tuples in a set of storages, (2) a data fetcher for retrieving the generated data tuples from the set of storages and passing one or more retrieved data tuple through the several data processing stages, the data fetcher comprising an idle-signal generator and interspersing the idle signals among the data tuples passed through the data processing stages. 7. The non-transitory machine readable medium of claim 1 , wherein the program further comprises a set of instructions for subsequently reconfiguring the data-plane forwarding circuit again a time period of time after the reconfiguring, said subsequent reconfiguring comprises configuring the data-plane forwarding circuit not to process data messages at a rate larger than the first maximum throughput rate. 8. The non-transitory machine readable medium of claim 1 , wherein the detected operating condition is a first condition, wherein the program further comprises sets of instructions for: detecting a second condition; based on the second condition, subsequently reconfiguring the data-plane forwarding circuit again, said subsequent reconfiguration configuring the data-plane forwarding circuit not to process data messages at a rate larger than the first maximum throughput rate. 9. The non-transitory machine readable medium of claim 8 , wherein the second condition is an end of the first condition. 10. The non-transitory machine readable medium of claim 1 , wherein configuring the data-plane forwarding circuit not to process data messages at a rate larger than a first maximum throughput rate is based on idle signals interspersed among the received data messages and reconfiguring the data-plane forwarding circuit to allow the data-plane forwarding circuit to process data messages at a rate larger than the first maximum throughput rate is based on reducing idle signals interspersed among the received data messages. 11. A method for configuring a data-plane forwarding processor of a network forwarding element, the data-plane forwarding processor to process data tuples associated with data messages received by the network forwarding element, the method comprising: configuring the data-plane forwarding processor not to process data messages at a rate larger than a first maximum throughput rate; detecting an operating condition of the data-plane forwarding processor, wherein the operating condition comprises congestion of one or more data message queues used by the data-plane forwarding processor; and based on the detected operating condition, reconfiguring the data-plane forwarding circuit to allow the data-plane forwarding processor to process data messages at a rate larger than the first maximum throughput rate. 12. The method of claim 11 , wherein reconfiguring the data-plane forwarding processor comprises configuring the data-plane forwarding processor not to process data messages at a second maximum throughput rate that is larger than the first maximum throughput rate. 13. The method of claim 11 , wherein configuring the data-plane forwarding processor comprises configuring an idle-signal generator of the data-plane forwarding processor to generate idle signals that are interspersed among the received data messages through data processing stages of the data-plane forwarding processor at a rate that ensures that the data processing stages cannot process data messages at a rate larger than the first maximum throughput rate; and reconfiguring the data-plane forwarding processor comprises configuring the idle-signal generator to reduce the rate at which the idle signals are generated so that the data processing stages are able to process data messages at a rate larger than the first maximum throughput rate. 14. The method of claim 13 , wherein the reduced rate at which the idle signals are generated ensure that the data message processing stages do not process data messages at a rate larger than a second maximum throughput rate. 15. The method of claim 11 , wherein an idle signal traverses successively through several data processing stages of the data-plane forwarding circuit. 16. The method of claim 15 , wherein the data-plane forwarding processor includes (1) a parser for generating data tuples from the received data messages and storing the generated data tuples in a set of storages, (2) a data fetcher for retrieving the generated data tuples from the set of storages and passing at least one retrieved data tuple through the several data processing stages, the data fetcher comprising an idle-signal generator and interspersing the idle signals among the data tuples passed through the data processing stages. 17. The method of claim 11 , comprising subsequently reconfiguring the data-plane forwarding processor again a time period of time after the reconfiguring, said subsequent reconf
Monitoring or testing based on specific metrics, e.g. QoS, energy consumption or environmental parameters · CPC title
Address table lookup; Address filtering · CPC title
for reduction of network energy consumption · CPC title
Energy efficient computing, e.g. low power processors, power management or thermal management · CPC title
Generating or distributing clock signals or signals derived directly therefrom · CPC title
Related publications grouped by family.
Answers are generated from the same data shown on this page.