Contributions to the algorithms and methodologies for virtual infrastructure provisioning
Authors:   , Ferrer Riera Jordi 
Published: September 2023

Virtualization is defined as the process consisting of building a virtual resource on top of one or several physical resources, depending on the selected paradigm: aggregation or partitioning. From the net- working perspective, over the recent years virtualization became a hot topic in networking research, although the term is not new, neither for networking nor for Information Technology (IT). In virtualization environments, the most significant challenge to be addressed is the virtual infrastructure allocation or embedding one. The problem appears over any networking technology, from wired to wireless domains, including converged physical infrastructures as well as coupled IT and networking infrastructures. This problem has re-gained importance in the last years due to the emergence of novel software- based abstractions, which provide fully-operational interfaces on top of those virtual resources, enabling the emergence of novel business models.
The election of the physical resources upon which the virtual infrastructure will be instantiated becomes fundamental for the virtual infrastructure operation in those virtualized environments, i.e. the election of the physical resources over which the virtual ones will be allocated. In fact, the virtual infrastructure allocation system might be seen as a policy-based system, where, based on the physical infrastructure available, and the set of requests, it will create different virtual infrastructures as a function of the policy, which will indicate the metric to optimize when creating those Virtual Infrastructures (VIs). For example, the infrastructure provider, who is responsible for leasing those virtual infrastructures, may want to optimize the economical cost of the different instantiated virtual slices, or even the overall energy consumption of the slices.
The problem acquires different dimensions when considering heterogeneous resources (e.g. optical network resources and wireless resources) in order to create cross-domain virtual infrastructures; or when it includes IT resources connected at the edges of the different network domains. The first part of the thesis provides an insight on the problem, and different contributions on the algorithms utilized in order to solve the problem. It considers different optical substrate technologies, wireless and wired resources, and it tries to optimize either the total number of virtual infrastructures to be created or either the energy consumed by the resources.
Furthermore, the work proposed in the second part of the dissertation includes a dynamic re-planning approach, which is responsible of dynamically updating already provisioned virtual infrastructures in order to adapt them to the Cloud-based services. Those services are unpredictable; basically, information regarding the volume and type of service requests is not precisely available in advance of the requests to the VI providers. Cloud services can scale up and down on demand. Therefore, that dynamic adaptation of the infrastructure to the elasticity of the Cloud services requires constant changes. Dynamic re-planning becomes fundamental for virtual infrastructures supporting cloud-based services.
Virtualization can be indistinctly applied to IT servers, network re- sources, and even network functions. The last part of the work de- fines the additional scheduling problem, specific for Network Function Virtualization (NFV), which is complementary to the allocation or embedding. NFV aims at decoupling the network functions from the actual hardware where they are executed. Thus, most of the network functions will run on standard virtualized servers by means of soft- ware, which is expected to significantly reduce capital expenditures, while at the same time the software automation reduces operational expenditures. The solution for the scheduling aims at minimizing the total execution time for chains of network services running over IT infrastructures.

La virtualización se define como el proceso consistente en la construcción de recursos lógicos o virtuales sobre uno o varios elementos físicos, dependiente del paradigma seleccionado: agregación o partición. Desde la perspectiva de la red, en los últimos años la virtualización se ha convertido en un tema recurrente, aunque el término virtualización no sea algo nuevo en entornos de red y entornos IT. El problema más significativo a resolver, aunque no el único, en entornos donde se considera la virtualización es el problema de asignación de recursos virtuales sobre los físicos, esto es, decidir qué recursos de la capa física se asignan a las distintas peticiones de infraestructuras virtuales. El problema aparece sobre distintas tecnologías de red, desde redes fijas hasta redes de acceso sin cable, incluyendo dominios integrados acceso metro, y recursos de computación y almacenamiento integrados con la red. El problema ha vuelto a actualizarse y ganar más importancia aún en los últimos años con la aparición de nuevas abstracciones basadas en software, las cuáles proveen interfaces completamente operables sobre los recursos virtuales, al mismo tiempo que se habilitan nuevos modelos de negocio.Por lo tanto, la selección de los recursos físicos sobre los que se construirán e instanciarán las infraestructuras virtuales se convierte en un elemento fundamental para la operación efectiva y eficiente en entornos virtualizados. De hecho, el sistema de virtualización se puede entender cómo un sistema basado en políticas, en el cuál, a partir de una descripción de la infraestructura física y un conjunto de peticiones de infraestructuras virtuales, se crearán diferentes infraestructuras virtuales en función de la política, que en esencia indicará la métrica a ser optimizada en el sistema cuándo se crean las distintas infraestructuras virtuales. Además del análisis del estado del arte del problema de la virtualización, centrado en redes ópticas y entornos donde los recursos IT se encuentran integrados con los recursos de red, la primera parte de las actividades de la tesis se centra en distintas contribuciones en el entorno de la virtualización de red. En ellas se analiza desde el impacto de las distintas tecnologías físicas consideradas en el problema, hasta la posibilidad de pre-procesar las diferentes demandas con el fin de mejorar el rendimiento en función de la política considerada para la virtualización. La primera parte considera los problemas de tipo offline, en los cuáles se consideran conocidas todas las demandas desde un principio. Por otro lado, la segunda parte de las actividades se centran en afrontar el problema online, en el cuál las peticiones no son conocidas de antemano. En este sentido, se ha propuesto un sistema de re-planificación dinámica de las infraestructuras virtualizadas, el cuál es responsable directo de actualizar los recursos de las mismas con tal de adaptarlas a los servicios cloud. Estos servicios son impredecibles, tanto en volumen como en tipo de servicio, además de la flexibilidad y elasticidad que les permite escalar constantemente en recursos. Como consecuencia, el sistema de re-planificación se convierte en fundamental para la eficiente creación y operación de las infraestructuras virtuales. Finalmente, la última propuesta de las actividades enmarcadas dentro de la tesis doctoral abren la puerta a la definición de un nuevo problema relacionado con la virtualización: virtualización de funciones específicas de red. Se presenta un sistema de gestión y orquestración que incluye la solución de scheduling para distintas funciones de red virtualizadas, el cuál tiene por objetivo minimizar el tiempo de ejecución total de las distintas cadenas de servicio.