LOAD BALANCING HASH COMPUTATION FOR NETWORK SWITCHES
First Claim
1. A method for avoiding polarization in a communication network, the method comprising:
- receiving a data unit at a network device included in the communication network, the network device associated with a link aggregate group included in the communication network;
determining an initial key based on information included in the data unit;
generating a depolarized initial key based on the initial key by using a depolarizer that is unique, within the communication network, to the network device;
performing a hash function on the depolarized initial key to obtain a hash value for the data unit;
determining, based on the hash value, a communication link in the link aggregate group; and
causing the data unit to be transmitted over the communication link.
1 Assignment
0 Petitions
Accused Products
Abstract
Techniques to avoid polarization in a communication network include a network switch or device having a first interface to receive a data unit or packet, and a second interface via which the packet is transmitted from the network device. The network device includes a hash value generator configured to generate, using a depolarizer, a depolarized key from an initial key (where the initial key is based on contents of the packet and the depolarizer is unique to the network device), and to generate a hash value based on the depolarized key and the packet by using a hash function that is common to all network devices in the network. The hash value may be optionally modified to load balance egress traffic of the network device. The network device selects an egress link or port, such as by determining an index into an egress table based on the (modified) hash value.
80 Citations
21 Claims
-
1. A method for avoiding polarization in a communication network, the method comprising:
-
receiving a data unit at a network device included in the communication network, the network device associated with a link aggregate group included in the communication network; determining an initial key based on information included in the data unit; generating a depolarized initial key based on the initial key by using a depolarizer that is unique, within the communication network, to the network device; performing a hash function on the depolarized initial key to obtain a hash value for the data unit; determining, based on the hash value, a communication link in the link aggregate group; and causing the data unit to be transmitted over the communication link. - View Dependent Claims (2, 3, 4, 5, 6, 7, 8, 9, 10)
-
-
11. A network device for avoiding polarization in a communication network, the network device comprising:
-
a first network interface configured to receive a data unit; a hash value generator configured to generate a hash value based on the data unit, the hash value generator including; a depolarized key generator configured to generate a depolarized initial key based on a depolarizing function applied to an initial key, the initial key based on at least a portion of information included in the data unit, and the depolarizing function defined so that the depolarized initial key is generated for different data units of a same traffic flow; and a hash function configured to generate the hash value based on the depolarized initial key and the data unit; a link selector configured to select, based on the hash value, a communication link; and a second network interface to egress the data unit from the network device via the communication link. - View Dependent Claims (12, 13, 14, 15, 16)
-
-
17. A system for avoiding polarization in a communication network, comprising:
-
a plurality of network devices in the communication network, wherein each network device of the plurality of network devices includes; a network interface to receive a data unit; a hash value generator to generate a hash value based on the data unit, the hash value generator including; a depolarized key generator to generate a depolarized initial key based on a depolarizing function applied to an initial key, the initial key based on at least a portion of information included in the data unit, and the depolarizing function being unique, within the communication network, to the each network device, and a hash function to generate the hash value based on the depolarized initial key and the data unit; and a link selector to select, based on the hash value, a communication link to egress the data unit from the each network device. - View Dependent Claims (18, 19, 20)
-
-
21-60. -60. (canceled)
Specification