Evolutionary algorithms for optimized SDN controllers

Jean-Michel SANNER 1, MERYEM OUZZIF 1, Y.HADJADJ-AOUL 2 ,Jean-Emile DARTOIS 3
1 ORANGE-LABS 1 2 University of Rennes 1 3 B<>COM
Evolutionary algorithms for optimized SDN controllers &
NVFs’ placement in SDN networks
ABSTRACT
Telco & cloud operators need to conform to SLA constraints negotiated with customers such as latency, reliability, downtime, affinity, response time or
duplication… Placement of virtual machines in a data center and placing Virtual Network Function or SDN controllers in telco networks to fulfill theses SLA, is a multiobjective problem.
Evolutionary algorithms are considered as ones of the most efficient approach for generating Pareto optimal solutions to multi-objective optimization problems (for
example optimizing consumption & global bandwidth simultaneously….)
In this presentation we illustrate the use of a genetic algorithm with an ad hoc cross-over operator designed to solve a mono-objective controller placement problem.
At a second step, we demonstrate a B<>COM designed generic framework for solving multi-objective optimization problems based on the state-of-the -art algorithms
such as NSGA-II, NSGA-III, PESA2,eMOEA...
Objective of the controllers’ placement algorithm
G(V,E) is the network graph with a set of vertices V & a set of edges E and their associated latencies. The number of controllers is fixed to K. The goal is to minimize
each associated cluster maximum diameter i.e. the maximum distance between the controller and the nodes it controls.
Let define C as the set of potential controllers nodes, where C is a subset of V. Let also define c ∈ C as a potential controller with
We want to minimize: max
∈ , ∈
Where
,
a node attached to the controller c.
,
represents the shortest path between controller c and node
.
Random initialization of a population of N
individuals with K clusters
Evaluation of each individual in the
population
Light elitism
Selection
Random tournament selection of N*K parents
P selection pressure
Cross over step
N children are built with K parents,
A cluster is randomly taken from each parent and
attributed to the children,
Local optimization
Redundant or missing nodes are reallocated or
allocated
Mutation step
Some nodes are randomly exchanged between
clusters using a mutation rate based on the global
number of nodes
Stop after I iterations and selection of the
best individual
Evaluation
Comparison with an ILP modeling approach and results
produced by an open source solver.
•
Solving this particular problem converges quickly with
the solver. However, the addition of a new constraint
increases significantly the algorithm convergence delay.
•
The incidence of the population size seems low. It is a
strong point for convergence speed. We don’t need to
have a large population.
•
20 iterations are sufficient for all tested network
instances.
•
A mutation rate is useful to prevent local minima. It must
be low to act only on some nodes and to maintain
convergence.
•
Solutions produced are often optimal and on all tests are
close to optimal.
•
Complexity is bounded by: O( I∙
∙| | )
Max diameter: tens of µs
Conclusions
•
Using a simple genetic algorithm with local
optimization produces good solutions compared to
Integer Linear Programming.
•
Can be used with a multi-constraint and a multiobjective approach.
•
Pave the road for multi-objective technics like NSGA-II
with local optimization.
Population: 50
Nb iterations: 20
Networks: Nb
of nodes