NetApp loadbalancing algorithm for determining ethernet load balancing (vifs) differs from Cisco, so it’s normal to see unbalanced traffic in Netapp vifs.

The Cisco method for determining load balancing is : http://www.cisco.com/warp/public/473/4.html

 
The NetApp method is described as:

((source_address XOR destination_address) % number_of_links)  —  where source and destination take the last byte of the IP or MAC address to perform the calculation.

Example :

Filer IP is 10.128.60.1
clients are 10.128.60.[3-6]

(1 xor 3) % 3 == 2 % 3 == link#2 (e0d)
(1 xor 4) % 3 == 5 % 3 == link#2 (e0d)
(1 xor 5) % 3 == 4 % 3 == link#1 (e0c)
(1 xor 6) % 3 == 7 % 3 == link#1 (e0c)
 
If a client used 10.128.60.2 or 10.128.60.9, then we would see outgoing traffic on e0b.  MAC address hashing calculation it would be more imbalanced than the IP address method:

(0xB6 xor 0x4E) % 3 == 0xF8 % 3 == 248 % 3 == link#2 (e0d)
(0xB6 xor 0xD8) % 3 == 0x6E % 3 == 110 % 3 == link#2 (e0d)
(0xB6 xor 0x56) % 3 == 0xE0 % 3 == 224 % 3 == link#2 (e0d)
(0xB6 xor 0x80) % 3 == 0x36 % 3 == 54 % 3 == link#0 (e0b)

Leave a Reply

Your email address will not be published. Required fields are marked *