Dynamic VNF Forwarding graph extension algorithms
Résumé
This paper proposes a set of algorithms to extend initially deployed Virtualized Network Functions Forwarding Graphs (VNF-FG or Service Function Chains - SFCs) previously requested and acquired by tenants. The latter are likely to request extension of their already acquired, deployed, and running dedicated slices to embed additional networking functions to handle for instance new application flows requiring additional classification, authentication, authorization, processing, traffic steering, etc. The tenants (or end-user service providers) are also likely to introduce gradually their services as needs arise and as their consumer base and profiles evolve. Increasing traffic load often will also require extension of the service graphs and chaining such as introducing additional load balancers and servers, new security functions, and simply new VNFs related to new tenant services. The related service graph extension problem is addressed first through an ILP algorithm that serves as a reference for performance comparisons with a set of proposed heuristic algorithms. A heuristic directly inspired by and based on the ILP and the proposed alternative approaches are shown to scale much better than the ILP while providing good solutions. The solutions include an adaptation of an eigendecomposition approach that provides very good performance for highly connected graphs. The problem is also cast into the well know Steiner Tree search problem whose complexity and performance are formally characterized in the literature. The Steiner based algorithm is shown to provide the best overall tradeoff (in rejection rate, complexity, and quality) with performance closest to optimal.