Enhanced hashing for LAG member selection
FortiGate models that have an internal switch that supports modifying the distribution algorithm can use enhanced hashing to help distribute traffic evenly, or load balance, across links on the Link Aggregation (LAG) interface.
The enhanced hashing algorithm is based on a 5-tuple of the IP protocol, source IP address, destination IP address, source port, and destination port.
Different computation methods allow for more variation in the load balancing distribution, in case one algorithm does not distribute traffic evenly between links across different XAUIs. The available methods are:
xor16 |
Use the XOR operator to make a 16 bit hash. |
xor8 |
Use the XOR operator to make an 8 bit hash. |
xor4 |
Use the XOR operator to make a 4 bit hash. |
crc16 |
Use the CRC-16-CCITT polynomial to make a 16 bit hash. |
The following NP6 non-service FortiGate models support this feature: 1500D, 1500DT, 3000D, 3100D, 3200D, 3700D, and 5001D. |
To configure the enhanced hashing:
config system npu set lag-out-port-select {enable | disable} config sw-eh-hash set computation {xor4 | xor8 | xor16 | crc16} set ip-protocol {include | exclude} set source-ip-upper-16 {include | exclude} set source-ip-lower-16 {include | exclude} set destination-ip-upper-16 {include | exclude} set destination-ip-lower-16 {include | exclude} set source-port {include | exclude} set destination-port {include | exclude} set netmask-length {0 - 32} end end
For example, to use XOR16 and include all of the fields in the 5-tuple to compute the link in the LAG interface that the packet is distributed to:
config system npu set lag-out-port-select enable config sw-eh-hash set computation xor16 set ip-protocol include set source-ip-upper-16 include set source-ip-lower-16 include set destination-ip-upper-16 include set destination-ip-lower-16 include set source-port include set destination-port include set netmask-length 32 end end