M.Sc. Matteo Pozza defends this doctoral thesis Enabling Network Flexibility by Decomposing Network Functions on Thursday the 22nd of October 2020 at 12 o'clock in the University of Helsinki Physicum building, Auditorium D101 (Gustaf Hällströmin katu 2, 1st floor). His opponent is Professor Serge Fdida (Sorbonne Université, France) and custos Professor Sasu Tarkoma (University of Helsinki). The defence will be held in English. It is possible to follow the defence as a live stream at https://helsinki.zoom.us/j/62326999122?pwd=OWtzTXRDVzYzVmxUMHlWcGQ0MVEvUT09.
The thesis of Matteo Pozza is a part of research done in the Department of Computer Science and in the Content-Centric Structures and Networking research group at the University of Helsinki. His supervisors have been Professor Sasu Tarkoma and Postdoctoral Researcher Ashwin Rao (University of Helsinki).
Enabling Network Flexibility by Decomposing Network Functions
Next-generation networks are expected to serve a wide range of use cases, each of which features a set of diverse and stringent requirements. For instance, video streaming and industrial automation are becoming more and more prominent in our society, but while the first use case requires high bandwidth, the second one mandates sub-millisecond latency. To accommodate these requirements, networks must be flexible, i.e., they must provide cost-efficient ways of adapting to different requirements. For example, networks must be able to scale with the traffic load to support the bandwidth requirements of the video streaming use case. In response to the need for flexibility, the scientific community has proposed Software Defined Networking (SDN), Network Function Virtualization (NFV), and network slicing. SDN simplifies the management of networks by separating control plane and data plane, while NFV allows scaling the network functions with the traffic load. Network slicing provides the operators with virtual networks which can be tailored to meet the requirements of the use cases.
While these technologies pave the way towards network flexibility, the capability of networks to adapt to different use cases is still limited by several inefficiencies. For example, to improve the scalability of network functions, network operators use dedicated systems which manage the state of network functions by keeping it in a data store. These systems are designed to offer specific features, such as reliability or performance, which determine the data store adopted and the Application Programming Interface (API) exposed to the network functions. Network operators need to change the data store depending on the features required by the use case served, but this operation involves refactoring the network functions, thus implying significant costs. Furthermore, network operators need to migrate the network functions, for example to minimize bandwidth usage during traffic peaks. Nevertheless, network slices convey the traffic coming from a multitude of sources through a small set of network functions, which are consequently resource-hungry and difficult to migrate, forcing the network operator to overprovision the network. Due to these inefficiencies, adapting the network to different use cases requires a significant increase in both Capital Expenditure (CapEx) and Operational Expenditure (OpEx), thus resulting in a showstopper for network operators.
Addressing these inefficiencies would lower the costs of adapting networks to different use cases, thus improving network flexibility. To this end, we propose to decompose the network functions into fine-grained network functions, each providing only a subset of the functionalities, or processing only a share of the traffic, thus obtaining network functions which are less resource-hungry, easier to migrate, and easier to upgrade. We examine three directions along which we can perform the decomposition. The first direction is leveraging the networking planes, such as control and data planes, for example separating the functionalities for packet processing from the ones for network management. The second direction is leveraging the sources and destinations of the traffic flowing through each network function and creating a dedicated network function for each source-destination pair. The third direction is decoupling the state management of the network functions from the data store by leveraging an API which is independent from the data store adopted. We show that each decomposition addresses a specific inefficiency. For example, decoupling the state management from the data store enables network operators to change the data store adopted without the need for refactoring the network functions.
Decomposing network functions also brings some drawbacks. For example, it can result in an increase of the number of network functions, thus making network management tasks, such as network reconfiguration, more challenging. We study two key drawbacks and we discuss the solutions we designed to contrast them. In this thesis, we show that decomposing network functions allows improving network flexibility, but it must be complemented with techniques to mitigate any negative side effect.
Availability of the dissertation
An electronic version of the doctoral dissertation is available on the e-thesis site of the University of Helsinki at http://urn.fi/URN:ISBN:978-951-51-6645-6.
Printed copies will be available on request from Matteo Pozza: firstname.lastname@example.org.