Line-rate selective load balancing of permitted network traffic
US-9444744-B1 · Sep 13, 2016 · US
US10193809B1 · US · B1
| Field | Value |
|---|---|
| Publication number | US-10193809-B1 |
| Application number | US-201514871561-A |
| Country | US |
| Kind code | B1 |
| Filing date | Sep 30, 2015 |
| Priority date | Sep 30, 2015 |
| Publication date | Jan 29, 2019 |
| Grant date | Jan 29, 2019 |
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 one embodiment, a network element that performs network traffic bridging receives load balancing criteria comprising an indication of at least one transport layer port number and an indication of a plurality of network nodes. A plurality of forwarding entries are created based on the load balancing criteria. A forwarding entry specifies the at least one transport layer port number and a network node of the plurality of network nodes. The network element applies the plurality of forwarding entries to network traffic to load balance, among the plurality of network nodes, network traffic that matches the at least one transport layer port number.
Opening claim text (preview).
What is claimed is: 1. A method comprising: receiving, at a network element that performs network traffic bridging, load balancing criteria comprising an indication of at least one transport layer port number and an indication of a plurality of network nodes; creating a plurality of forwarding entries based on the load balancing criteria, a forwarding entry specifying the at least one transport layer port number and a network node of the plurality of network nodes; constructing, based on the plurality of forwarding entries and network traffic, a key representing the at least one transport layer port number; determining whether the network traffic is to be load balanced, wherein when the network element uses a destination port based load balancing scheme, the network traffic is load balanced when a source port of the network traffic matches a predetermined list of source ports; when the network traffic is to be load balanced: using the key, performing, by the network element, a lookup to identify a matching forwarding entry from the plurality of forwarding entries, wherein when the network element uses the destination port based load balancing scheme, the matching forwarding entry specifies that an egress port of the network traffic is based on a destination port of the network traffic, and when the network element uses a source port based load balancing scheme, the matching forwarding entry specifies that an egress port of the network traffic is based on the source port of the network traffic; and using the matching forwarding entry to load balance, among the plurality of network nodes, the network traffic used to construct the key. 2. The method of claim 1 , wherein the load balancing criteria further specifies that the at least one transport layer port number corresponds to a source port. 3. The method of claim 2 , wherein each forwarding entry further specifies a distinct plurality of transport layer destination port numbers. 4. The method of claim 1 , wherein the load balancing criteria further specifies that the at least one transport layer port number corresponds to a destination port. 5. The method of claim 4 , wherein each forwarding entry further specifies a distinct plurality of transport layer source port numbers. 6. The method of claim 1 , further comprising: detecting that a network node of the plurality of network nodes has become unavailable; creating a second plurality of forwarding entries based on the load balancing criteria, a forwarding entry of the second plurality of forwarding entries specifying the at least one transport layer port number and a network node of the remaining available network nodes; constructing, based on the second plurality of forwarding entries and network traffic, a key representing the at least one transport layer port number; using the key, performing, by the network element, a lookup to identify a matching forwarding entry from the second plurality of forwarding entries; and using the matching forwarding entry from the second plurality of forwarding entries to load balance, among the plurality of remaining available network nodes, network traffic used to construct the key. 7. The method of claim 1 , wherein the network element performs a lookup to identify the matching forwarding entry of the plurality of forwarding entries within a single clock cycle of the network element. 8. The method of claim 1 , wherein the network traffic is load balanced at a line rate of the network element. 9. The method of claim 1 , wherein the plurality of forwarding entries are stored in a ternary content-addressable memory (TCAM) of the network element. 10. The method of claim 1 , further comprising accessing a forwarding table of the network element to determine an egress port for network traffic that does not meet the load balancing criteria. 11. An apparatus comprising: an interface to receive load balancing criteria comprising an indication of at least one transport layer port number and an indication of a plurality of network nodes; at least one memory element to store a plurality of forwarding entries based on the load balancing criteria, a forwarding entry specifying the at least one transport layer port number and a network node of the plurality of network nodes; and forwarding logic containing a processor to: receive network traffic; perform network traffic bridging on a first portion of the network traffic; construct, based on the plurality of forwarding entries and a second portion of the network traffic, a key representing the at least one transport layer port number; determine whether the network traffic is to be load balanced, wherein when a destination port based load balancing scheme is used, the network traffic is load balanced when a source port of the network traffic matches a predetermined list of source ports; when the network traffic is to be load balanced: using the key, perform a lookup using the key to identify a matching forwarding entry from the plurality of forwarding entries, wherein when the forwarding logic uses the destination port based load balancing scheme, the matching forwarding entry specifies that an egress port of the network traffic is based on a destination port of the network traffic, and when the forwarding logic uses a source port based load balancing scheme, the matching forwarding entry specifies that an egress port of the network traffic is based on the source port of the network traffic; and use the matching forwarding entry to load balance, among the plurality of network nodes, the second portion of the network traffic used to construct the key. 12. The apparatus of claim 11 , wherein the load balancing criteria further specifies that the at least one transport layer port number corresponds to a source port. 13. The apparatus of claim 11 , wherein each forwarding entry further specifies a distinct plurality of transport layer destination port numbers. 14. The apparatus of claim 11 , wherein the load balancing criteria further specifies that the at least one transport layer port number corresponds to a destination port. 15. The apparatus of claim 11 , wherein each forwarding entry further specifies a distinct plurality of transport layer source port numbers. 16. A computer-readable non-transitory medium comprising one or more instructions that when executed by a processor configure the processor to cause programmable logic to perform operations comprising: receiving, at a network element that performs network traffic bridging, load balancing criteria comprising an indication of at least one transport layer port number and an indication of a plurality of network nodes; creating a plurality of forwarding entries based on the load balancing criteria, a forwarding entry specifying the at least one transport layer port number and a network node of the plurality of network nodes; constructing, based on the plurality of forwarding entries and network traffic, a key representing the at least one transport layer port number; determining whether the network traffic is to be load balanced, wherein when the network element uses a destination port based load balancing scheme, the network traffic is load balanced when a source port of the network traffic matches a predetermined list of source ports; when the network traffic is to be load balanced: using the key, performing, by the network element, a lookup to identify a matching forwarding entry from the plurality of forwarding entries, wherein when the network element uses the destination port based load balancing scheme, the matching forwarding entry speci
by balancing the load, e.g. traffic engineering · CPC title
Arrangements for connecting between networks having differing types of switching systems, e.g. gateways · CPC title
Related publications grouped by family.
Answers are generated from the same data shown on this page.