System and method for hierarchical link aggregation
View Patent ↗Systems and methods for hierarchical link aggregation are disclosed. A system for hierarchical link aggregation may include a network interface having a plurality of physical ports. A first plurality of the physical ports may be configured as member ports of a first link aggregation group (LAG). A second plurality of the physical ports may be configured as member ports of a second LAG. The first LAG and second LAG may be configured as member logical ports of a third LAG.
1. A system for hierarchical link aggregation, comprising a network interface device communicatively coupled to a processor, the network interface device having a plurality of physical ports comprising:
a first link aggregation group (LAG);
a second LAG;
wherein the first LAG and the second LAG are designated by the processor as member logical ports of a third LAG;
wherein data communicated to the third LAG is distributed between the first LAG and the second LAG in accordance with a first hashing algorithm;
wherein data communicated to the third LAG and distributed to the first LAG is distributed among the members of the first LAG in accordance with a second hashing algorithm; and
wherein data communicated to the third LAG and distributed to the second LAG is distributed among the members of the second LAG in accordance with a third hashing algorithm, wherein the first hashing algorithm is different from the second hashing algorithm.
2. The system of claim 1 , wherein:
the first LAG is configured such that the first LAG is represented to components of the system external to the first LAG as a single logical port; and
the second LAG is configured such that the second LAG is represented to components of the system external to the second LAG as a single logical port.
3. The system of claim 1 , wherein the third LAG is configured such that the third LAG is represented to components of the system external to the third LAG as a single logical port.
4. The system of claim 1 , wherein the second hashing algorithm and the third hashing algorithm are identical.
5. The system of claim 1 , wherein the second hashing algorithm and the third hashing algorithm are different.
6. The system of claim 1 , wherein the second LAG comprises a first plurality of physical ports.
7. The system of claim 1 , wherein a fourth LAG and a fifth LAG are designated by the processor as member logical ports of the second LAG.
8. The system of claim 1 , wherein a fourth LAG and a physical port are designated by the processor as member logical ports of the second LAG.
9. An information handling system comprising:
a processor;
a network interface device communicatively coupled to the processor, the network interface device having a plurality of physical ports, wherein a first LAG and a second LAG are designated by the processor as member logical ports of a third LAG;
a memory communicatively coupled to the processor and having stored thereon computer-executable instructions that, when executed by the processor are configured to:
distribute data communicated to the third LAG between the first LAG and the second LAG in accordance with a first hashing algorithm;
distribute data communicated to the third LAG and distributed to the first LAG among the members of the first LAG in accordance with a second hashing algorithm, the second hashing algorithm different from the first hashing algorithm; and
distribute data communicated to the third LAG and distributed to the second LAG among the members of the second LAG in accordance with a third hashing algorithm.
10. The information handling system of claim 9 , wherein:
the first LAG is configured such that the first LAG is represented to components of the information handling system external to the first LAG as a single logical port; and
the second LAG is configured such that the second LAG is represented to components of the information handling system external to the second LAG as a single logical port.
11. The information handling system of claim 9 , wherein the third LAG is configured such that the third LAG is represented to components of the information handling system external to the third LAG as a single logical port.
12. The information handling system of claim 9 , wherein the second hashing algorithm and the third hashing algorithm are identical.
13. The information handling system of claim 9 , wherein the second hashing algorithm and the third hashing algorithm are different.
14. The information handling system of claim 9 , wherein the second LAG comprises a first plurality of physical ports.
15. The information handling system of claim 9 , wherein a fourth LAG and a fifth LAG are designated by the processor as member logical ports of the second LAG.
16. The information handling system of claim 9 , wherein a fourth LAG and a physical port are designated by the processor as member logical ports of the second LAG.
17. A method for hierarchical link aggregation, comprising:
receiving a packet of information at an information handling system;
determining that a third link aggregation group (LAG) is a first outgoing logical port of the packet based on a destination address of the packet;
determining that a first LAG or a second LAG is a second outgoing logical port of the packet based on information contained in the packet, wherein the first LAG and the second LAG are member logical ports of the third LAG;
determining that a physical port is a third outgoing logical port of the packet based on information contained in the packet, wherein the physical port is a member port of the first LAG or the second LAG;
transmitting the packet to the physical port;
wherein determining that the first LAG or the second LAG is the second outgoing logical port of the packet includes applying a first hashing algorithm that selects a logical port of the first LAG based on information contained in the packet; and
wherein determining that the physical port is the third outgoing logical port of the packet includes applying a second hashing algorithm that selects a logical port of the first LAG or the second LAG based on information contained in the packet, wherein the first hashing algorithm is different from the second hashing algorithm.