The introduction of programmable SDN switches brings a new dimension to in-network load balancing. In data center scenarios incoming flows are allocated in order to better achieve network scalability, reliability, and performance. This also means that incoming flows may also be split over different paths. However, the underlying technology in charge of forwarding flows to next hops imposes severe limitations on the maximum number of rules (buckets) that can be installed to implement the forwarding. In addition, the use of a discrete set of forwarding rules leads to an inaccurate flow allocation that may cause the rejection of incoming demands. These extra constraints make the problem impossible to solve optimally. In this work, we will present a strategy to carry out a very accurate flow splitting, while taking into consideration the practical limitations due to implementation of the splitting. In particular, we achieve a bandwidth acceptance rate that is very close to that achieved for the optimal unconstrained problem.
Mots clés : Flow splitting, Software-Defined Networking, Bucket constraints, SDN switch