Software-Defined Networking (SDN) and Network Function
Virtualization (NFV) are enabling network programmability and the automated provisioning of virtual networking services. Combining these new paradigms can overcome the limitations of traditional clouds and networks by enhancing their dynamic networking capabilities. Since these evolutions have motivated this thesis and our investigations, this chapter on the state of the art will provide an overview of NFV architecture, SDN, resource allocation challenges and reflect the convergence trend between cloud computing, software networks, and the virtualization of networking functions. This chapter provides in the first part an overview of the NFV and SDN architectures. The convergence between cloud computing and both SDN and NFV is discussed in the second part. Finally, the third part describes the relation between the VNF placement and chaining problem and the traditional VNE problem and surveys some existing models and algorithms of resources mapping in network environments. It is important to clarify that the two sub-problems of VNF-FG embedding: i) Initial VNFFG placement, and ii) Elastic VNF-FG placement (Dynamic resource management) are investigated.
Network Function Virtualization (NFV)
Network Services
Before NFV Communication Service Providers (CSPs) go beyond simply providing network connectivity for their enterprise customers. They also offer additional services and network functions like Network address translation (NAT), Firewall, Encryption, Domain Name Service (DNS), Caching, etc. Traditionally, these network functions were deployed using proprietary hardware at the customer premises. This approach provides additional revenue but deploying multiple proprietary devices is costly and makes upgrades difficult (i.e., every time a new network function is added to a service, a truck roll is required to install the dedicated new hardware device). Consequently, service providers began exploring ways to reduce cost and accelerate deployments through Network Function Virtualization (NFV).
What is NFV?
Network Function Virtualization (NFV) [3], [9], [10] is an innovative emerging way to design, deploy, and manage networking services by decoupling functions (such as firewalls, DPIs, load balancers, etc.) from dedicated hardware and moving them to virtual servers. Several use cases of NFV are discussed in . Note that manageability, reliability, stability, and security are considered in as the key performance parameters in both physical and in software based virtualized networks.
- Hardware Flexibility: Because NFV uses regular Commercial-Off-The-Shelf (COTS) hardware, network operators have the freedom to choose and build the hardware in the most efficient way to suit their needs and requirements. • Faster Service Life Cycle: New network services can now be deployed more quickly, in an on-demand and on-need basis, providing benefits for end users as well as the network providers.
- Scalability and Elasticity: New services and capacity-hungry applications keep network operators (especially cloud providers), on their toes to keep up with the fastincreasing demands of consumers.
- Increased Revenue: The combination of introducing new services faster and existing servers in a more dynamic fashion can jointly result in increased revenue. • Reduced Capital Expenditures (CAPEX): The use of industry-standard services, increased hardware utilization and adoption of open source software results in reduced capital expenditures.
- Reduced Operational Expenditures (OPEX): Automation and hardware standardization can substantially slash operational expenditures.
- Improved Customers’ Satisfaction: The combination of service agility and selfservice can result in greater customer satisfaction.
- Reduced Power Consumption and Complexity: Efficiencies in space, power, and cooling. Communications Service Providers (CSPs) may have finite physical space, electrical power, and cooling capacity in a data center, so they will carefully select equipment to efficiently consume those finite and/or costly resources. NFV provides a better energy efficiency resulting from the consolidation of resources, as well as their more dynamic utilization
NFV Infrastructure (NFVI)
Is a kind of cloud data center containing the totality of all hardware and software components that build up the NFV environment on which NFV services are deployed, managed and executed. NFVI includes:
- Physical Hardware: this includes computing hardware (such as servers, RAM), storage hardware (such as disk storage, Network Attached Storage (NAS)), and network hardware (such as switches and routers).
- Virtualisation Layer: abstracts the hardware resources and decouples the VNF software from the underlying hardware, thus ensuring a hardware independent lifecycle for the VNFs. We can use multiple open source and proprietary options for the virtualisation layer (such as KVM, QEMU, and VMware).
- Virtual Infrastructure: this includes virtual compute (virtual machines or containers), virtual storage, and virtual networks (overlay networks).
Virtualised Network Functions (VNFs)
Run on top of the NFVI and represent virtualized instances of different network functions. Each VNF has a corresponding State of the Art 15 Element Management System (EMS) that provides management and control functionality for that VNF.
NFV Management and Orchestration (MANO)
NFV MANO does not act in isolation. It interacts with the Operational and Business Support Systems (OSS/BSS) components of the operator to manage the operational and business aspects of the network. MANO includes:
- Virtualized Infrastructure Manager (VIM): or cloud management software, e.g. OpenStack or Kubernetes. It is responsible for controlling and managing the computing, storage, and network resources, as well as their virtualization.
• VNF Manager(s): it is responsible for VNF life cycle management, including VNF instantiation, update, query, scaling, and termination.
• NFV Orchestrator: it is in charge of the orchestration and management of NFV infrastructure and software resources, and realizing network services on NFVI. It utilizes resource allocation and placement algorithms to ensure optimal usage of both physical and software resources.