In legacy networks, most of the network functions had to run on dedicated hardware. This caused a level of rigidity in scaling, updating, and even deploying these functions. In today's networks, however, the demand for virtualized versions of the network functions has increased. In order to meet this demand, support for automating the deployment of these services on virtualized or even containerized infrastructure is needed. Furthermore, once these services are deployed, a mechanism to control the lifecycle of these services becomes necessary.
In SONATA, the management and orchestration of the deployed services and functions is facilitated through the use of plugins called Service Specific Managers (SSMs) and Function Specific Managers (FSMs). Service specific managers are responsible for scaling and managing whole services, whereas the function specific managers operate at the level of individual functions. SSMs and FSMs are part of the Network Functions Virtualization Orchestrator (NFVO) and the Virtual Network Function Manager (VNFM), respectively.
Each SSM implements all the features necessary for a specific service. For example, let’s consider SONATA's Personal Security Application (PSA) which implements a security service composed of functions such as firewalls, Virtual Private Network (VPN) gateways, Intrusion Detection Systems (IDS) and anonymous routing as shown in the figure below. To compose functions to form the complete PSA service, the SSM needs to interface with each function available in the service to start/stop/scale on-demand. Since the SSM operates only on the service level and is unaware of the peculiarities of the individual functions, it needs to interact with an FSM that knows how to communicate with the underlying Virtual Network Function (VNF). This way the SSM delegates the function-specific knowledge to each FSM.
To the end-user, this all happens seamlessly. However, a level of control of the deployed services should be provided to the end-user. Therefore, in SONATA, a self-service portal has been developed to grant the end-user control (specifically, start and stop functions) of the running services. Such services are then added or removed from the user’s service chain.
The system supports simultaneous access from multiple users. Separation of multiple customers is handled inside the self-service portal for configuration aspects as well as inside the SONATA Service Platform (SP) for VNF aspects. The self-service portal interfaces with the SONATA Service Platform to relay control messages to the target service plugins. The control messages are handled within the SONATA service platform.