Detecting and handling elephant flows
US-2015163144-A1 · Jun 11, 2015 · US
US11962518B2 · US · B2
| Field | Value |
|---|---|
| Publication number | US-11962518-B2 |
| Application number | US-202016890890-A |
| Country | US |
| Kind code | B2 |
| Filing date | Jun 2, 2020 |
| Priority date | Jun 2, 2020 |
| Publication date | Apr 16, 2024 |
| Grant date | Apr 16, 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.
In some embodiments, a method receives a packet for a flow associated with a workload. Based on an indicator for the flow, the method determines whether the flow corresponds to one of an elephant flow or a mice flow. Only when the flow is determined to correspond to an elephant flow, the method enables a hardware acceleration operation on the packet. The hardware acceleration operation may include hardware operation offload, receive side scaling, and workload migration.
Opening claim text (preview).
What is claimed is: 1. A method comprising: receiving a packet for a flow associated with a workload; based on an indicator for the flow, determining whether the flow corresponds to one of an elephant flow or a mice flow; and based on a determination that the flow corresponds to an elephant flow, enabling a hardware acceleration operation on the packet. 2. The method of claim 1 , wherein enabling the hardware acceleration operation comprises: offloading an operation on the packet from a network stack to a physical network interface card when the flow is associated with the elephant flow; and performing the hardware acceleration operation using the physical network interface card. 3. The method of claim 1 , wherein enabling the hardware acceleration operation comprises: receiving the packet at a physical network interface card; and performing the hardware acceleration operation in the physical network interface card. 4. The method of claim 1 , wherein enabling the hardware acceleration operation comprises: storing identification information for a set of flows associated with a set of workloads in a table based on network traffic associated with respective flows or workloads; and determining that identification information for the flow is found in the table, wherein the flow table identifies the flow as being associated with the elephant flow. 5. The method of claim 1 , wherein enabling the hardware acceleration operation comprises: storing the packet in a queue associated with a physical network interface card, wherein the queue is associated with packets from one or more flows corresponding to elephant flows. 6. The method of claim 5 , wherein: a first queue stores packets for one or more flows corresponding to elephant flows, and a second queue stores packets for one or more flows corresponding to mice flows. 7. The method of claim 1 , wherein enabling the hardware acceleration operation comprises: tagging a workload to indicate that the workload is associated with elephant flows; and migrating the workload to a device, wherein information indicating the workload is associated with elephant flows is sent to the device to allow the device to identify a flow associated with the workload as corresponding to the elephant flow. 8. A non-transitory computer-readable storage medium storing a first program for executing by a processing unit of a computer, the program comprising sets of instructions for: receiving a packet for a flow associated with a workload; based on an indicator for the flow, determining whether the flow corresponds to one of an elephant flow or a mice flow; only when the flow is determined to correspond to an elephant flow, directing the packet to a physical network interface card (PNIC) of the computer for the PNIC to perform an a operation on the packet; and when the flow is determined to correspond to a mice flow, directing the packet to a second program executing on the computer to perform the operation on the packet. 9. The non-transitory computer-readable storage medium of claim 8 , wherein the second program is a network stack of the computer, wherein directing the packet to the PNIC comprises: offloading the operation on the packet from the network stack to the PNIC; and performing the operation using the PNIC. 10. The non-transitory computer-readable storage medium of claim 8 , the program further comprising sets of instructions for: storing identification information for a set of flows associated with a set of workloads in a table based on network traffic associated with respective flows or workloads; and determining that identification information for the flow is found in the table, wherein the flow table identifies the flow as being associated with the elephant flow. 11. The non-transitory computer-readable storage medium of claim 8 , wherein directing the packet to the PNIC comprises: storing the packet in a queue associated with the PNIC, wherein the queue is associated with packets from one or more flows corresponding to elephant flows. 12. The non-transitory computer-readable storage medium of claim 11 , wherein: a first queue stores packets for one or more flows corresponding to elephant flows, and a second queue stores packets for one or more flows corresponding to mice flows. 13. The non-transitory computer-readable storage medium of claim 8 , the program further comprising sets of instructions for: tagging a workload to indicate that the workload is associated with elephant flows; and migrating the workload to a device, wherein information indicating the workload is associated with elephant flows is sent to the device to allow the device to identify a flow associated with the workload as corresponding to the elephant flow. 14. An apparatus comprising: one or more computer processors; and a non-transitory computer-readable storage medium comprising instructions, that when executed, control the one or more computer processors to be operable for: receiving a packet for a flow associated with a workload; based on an indicator for the flow, determining whether the flow corresponds to one of an elephant flow or a mice flow; and only when the flow is determined to correspond to an elephant flow, enabling a hardware acceleration operation on the packet. 15. The apparatus of claim 14 , wherein enabling the hardware acceleration operation comprises: offloading an operation on the packet from a network stack to a physical network interface card when the flow is associated with the elephant flow; and performing the hardware acceleration operation using the physical network interface card. 16. The apparatus of claim 14 , wherein enabling the hardware acceleration operation comprises: receiving the packet at a physical network interface card; and performing the hardware acceleration operation in the physical network interface card. 17. The apparatus of claim 14 , wherein enabling the hardware acceleration operation comprises: storing identification information for a set of flows associated with a set of workloads in a table based on network traffic associated with respective flows or workloads; and determining that identification information for the flow is found in the table, wherein the flow table identifies the flow as being associated with the elephant flow. 18. The apparatus of claim 14 , wherein enabling the hardware acceleration technique operation comprises: storing the packet in a queue associated with a physical network interface card, wherein the queue is associated with packets from one or more flows corresponding to elephant flows. 19. The apparatus of claim 14 , wherein: a first queue stores packets for one or more flows corresponding to elephant flows, and a second queue stores packets for one or more flows corresponding to mice flows. 20. The apparatus of claim 14 , wherein enabling the hardware acceleration operation comprises: tagging a workload to indicate that the workload is associated with elephant flows; and migrating the workload to a device, wherein information indicating the workload is associated with elephant flows is sent to the device to allow the device to identify a flow associated with the workload as corresponding to the elephant flow.
Architecture of open systems interconnection [OSI] 7-layer type protocol stacks, e.g. the interfaces between the data link level and the physical level · CPC title
Buffering arrangements · CPC title
by balancing the load, e.g. traffic engineering · CPC title
Protocol engines · CPC title
Implementation details of TCP/IP or UDP/IP stack architecture; Specification of modified or new header fields · CPC title
Related publications grouped by family.
Answers are generated from the same data shown on this page.