Load balancing

US10892992B2 · US · B2

Patent metadata
FieldValue
Publication numberUS-10892992-B2
Application numberUS-201616310684-A
CountryUS
Kind codeB2
Filing dateJul 1, 2016
Priority dateJul 1, 2016
Publication dateJan 12, 2021
Grant dateJan 12, 2021

How to read this patent

A practical reading order for non-experts. Skip the full description unless you need deep technical detail.

  1. Title

    What the patent document calls the invention.

  2. Abstract

    A short plain-language summary of the technical disclosure.

  3. Assignees and inventors

    Who owns or filed the patent and who is credited as inventor.

  4. Key dates

    Filing, priority, publication, and grant dates set the timeline.

  5. First independent claim

    The legal scope of protection — read this for what is actually claimed.

  6. CPC / IPC classifications

    Technology tags used to group this patent with similar filings.

  7. Citations and related patents

    Prior art links and similar publications in this corpus.

Abstract

Official abstract text for this publication.

Example implementations relate to load balancing network traffic flows in a network switching device. According to an example, in a network switching device, a method to load balance network traffic flows across links of the device includes identifying a flow of the network traffic flows as an elephant flow. In response to identifying the flow as an elephant flow, the method collects remote utilization information for the flow. The method recomputes a path for the flow based on local utilization information and the collected remote utilization information and sends the flow along the recomputed path.

First claim

Opening claim text (preview).

What is claimed is: 1. In a network switching device, a method to load balance network traffic flows across links of the device, the method comprising, by a processing resource: identifying a flow of the network traffic flows as an elephant flow; in response to identifying the flow as an elephant flow, collecting remote utilization information for the flow, wherein the remote utilization information for the flow is received from a second device remote from the network switching device; recomputing a path for the flow based on local utilization information and the collected remote utilization information; and sending the flow along the recomputed path. 2. The method of claim 1 , wherein an elephant flow is a network traffic flow with a size larger than a threshold. 3. The method of claim 2 , wherein size of the network traffic flows is tracked using byte meters or counters. 4. The method of claim 2 , wherein the threshold is configurable via an interface. 5. The method of claim 1 , wherein the path is recomputed for the flow upon detecting a flowlet boundary in the flow. 6. The method of claim 1 , wherein the second device is a downstream switch receiving the flow from the network switching device. 7. The method of claim 1 , further comprising refraining from collecting remote utilization information for a second flow of the network traffic flows if the second flow is not identified as an elephant flow. 8. The method of claim 7 , further comprising: recomputing a second path for the second flow based on local utilization information; and sending the second flow along the recomputed second path. 9. The method of claim 1 , wherein the flow is identified as an elephant flow based on information received from a software defined network controller. 10. The method of claim 1 , wherein the flow is identified as an elephant flow by parsing a transport layer protocol packet field of the flow to determine whether the flow comes from a port known to send elephant flows. 11. A network switching device, comprising: one or more processing resources; a memory storing instruction which, when executed by the one or more processing resources, cause the one or more processing resources to: identify a flow of the network traffic flows as an elephant flow; in response to identifying the flow as an elephant flow, collect remote utilization information for the flow, wherein the remote utilization information for the flow is received from a second device remote from the network switching device; recompute a path for the flow based on local utilization information and the collected remote utilization information; and send the flow along the recomputed path. 12. The device of claim 11 , the instruction further causing the one or more processing resources to: count bytes passing through the network switching device on a per flow basis, wherein a particular flow is identified as an elephant flow when a number of bytes surpasses a threshold number of bytes; wherein bytes passing through the network switching device are counted on a per-flow basis by indexing received flows into individual counters based on a hash of packet fields. 13. The device of claim 11 , wherein the local utilization information comprises utilization information of the links of the network switching device associated with the flow and the remote utilization information comprises utilization information of links of the second device associated with the flow. 14. The device of claim 12 , wherein the instructions further causing the one or more processing resources to: recompute a path of a second flow that does not surpass the threshold number of bytes using a different load balancing technique that does not consider remote utilization information. 15. The device of claim 12 , the instructions further causing the one or more processing resources to: send a packet the second device requesting that the second device provide remote utilization information to the network switching device when the flow passes the threshold number of bytes. 16. The device of claim 12 , the instructions further causing the one or more processing resources to: determine whether activity of the flow drops below a second threshold; and in response to the activity dropping below the second threshold, stop collecting remote utilization information for the flow and use a different load balancing technique for the flow. 17. The device of claim 14 , the instructions further causing the one or more processing resources to: to recompute the path for the flow based additionally on available bandwidth of links of the network switching device. 18. The device of claim 14 , the instructions further causing the one or more processing resources to: apply a default load balancing technique on the flow prior to the flow being monitored by the elephant flow module. 19. The device of claim 12 , the instructions further causing the one or more processing resources to: count bytes of flows relating to unicast traffic but not of flows relating to multicast traffic.

Assignees

Inventors

Classifications

  • H04L45/22Primary

    Alternate routing · CPC title

  • H04L47/125Primary

    by balancing the load, e.g. traffic engineering · CPC title

  • Identifying congestion · CPC title

  • by acting on aggregated flows or links · CPC title

  • with rate being modified by the source upon detecting a change of network conditions · CPC title

Patent family

Related publications grouped by family.

External sources

Frequently asked questions

Answers are generated from the same data shown on this page.

What does patent US10892992B2 cover?
Example implementations relate to load balancing network traffic flows in a network switching device. According to an example, in a network switching device, a method to load balance network traffic flows across links of the device includes identifying a flow of the network traffic flows as an elephant flow. In response to identifying the flow as an elephant flow, the method collects remote uti…
Who is the assignee on this patent?
Hewlett Packard Entpr Dev Lp
What technology area does this patent fall under?
Primary CPC classification H04L45/22. Mapped technology areas include Electricity.
When was this patent published?
Publication date Tue Jan 12 2021 00:00:00 GMT+0000 (Coordinated Universal Time) (B2). Legal status and post-grant events are not shown on this page.
What related patents are in patentsdb?
We list 12 related publications on this page (citations in our corpus or others sharing the same primary CPC).