There are many algorithms that can be used to for flow-based hashing to provide the best load balancing method over multiple IP or Ethernet connections but I recently learned that Cuckoo Hashing the preferred method.
Since I’ve only known about simpler mechanisms using XOR or similar functions to calculate the path hash I will be adding this to my question for SDN vendors when they offer a multi-path solution. This Wikipedia article explain the Cuckoo Hashing and its reasonably obvious why this works better for networking – odd numbers of paths, faster performance and relatively low memory use.
The basic idea is to use two hash functions instead of only one. This provides two possible locations in the hash table for each key. In one of the commonly used variants of the algorithm, the hash table is split into two smaller tables of equal size, and each hash function provides an index into one of these two tables.