[PhD thesis] Towards virtualized network functions as a service

[PhD thesis] Towards virtualized network functions as a service

[PhD thesis] Towards virtualized network functions as a service

Author: Windhya Rankothge

Supervisor: Jorge Lobo

Abstract

Network Function Virtualization (NFV) is a promising technology that proposes to move packet processing from dedicated hardware middle-boxes to software running on commodity servers. As such, NFV brings the possibility of outsourcing enterprise Network Function (NFs) processing to the cloud. However, for a Cloud Service Provider (CSP) to offer such services, several research problems still need to be addressed. When an enterprise outsources its NFs to a CSP, the CSP is responsible for deciding: (1) where initial Virtual NFs (VNFs) should be instantiated, and (2) what, when and where additional VNFs should be instantiated to satisfy the traffic changes (scaling), (3) how to update the network configurations with minimum impact on network performances, etc. This brings the requirement of a cloud management framework for VNFs and the cloud infrastructure related operations: provisioning, configuring, maintaining and scaling of the VNFs, as well as configuring and updating of the cloud network. In this thesis we explore three aspects of a cloud management framework for VNF: (1) dynamic resource allocation, (2) VNFs scaling methods and (3) dynamic load balancing. In the context of dynamic resource allocation for VNFs, we explore two resource allocation algorithms for: (1) the initial placement of VNFs, and (2) the scaling of VNFs to support traffic changes. We propose two approximation approaches (heuristic based): (1) Iterated Local Search (ILS) and (2) Genetic Programming (GP) to implement the resource allocation algorithms. We compare these heuristic based approaches with a traditional resource allocation approach: Integer Linear Programming (ILP). In the context of VNFs scaling methods, we explored three different scaling approaches: (1) vertical scaling, (2) migration and (3) horizontal. We analyse the three scaling methods in-terms of their practical implementation aspects as well as the optimization aspects with respect to the management. In the context of dynamic load balancing, we explore load balancing approaches that maintain affinity and handle states and sessions of the traffic, so that the requirement of state migration is avoided. We propose a session-aware load balancing algorithm based on consistent hashing.

Additional material:

Datasets

  • Data Modelling for the Evaluation of Virtualized Network Functions Resource Allocation Algorithms. Updates in Github and version for phd thesis at UPF repository

Software

Modules available at Windhya Rankothge's Github account