The increasing number of the deployed devices and services of the network has led to the escalation of the complexity of network deployment and management. This has resulted in the necessity for the future network to be more flexible and dynamic than the current network (Alasadi and Al-raweshidy, 2018). Meeting these requirements has given birth to the novel technologies needed to automate the network configuration, management, and maintenance. These technologies have tended to replace hardware devices with software equivalents. The network softwarisation promotes the more
Page | 14 flexible management, deployment, and development of network components (Lara, 2015).
2.2.1. Software Defined Network (SDN)
SDN is an emerging programmable network which has a logically centralised controller that administrates the network switches in cooperation with the management applications. This happens through a new interface between the control and data layers, namely OpenFlow protocol (Cox et al., 2017).
The main reason for the emergence of SDN is that the traditional IP network has a vertical integration between the control plan (which decides how to manage the traffic) and data-plan (which forwards the traffic according to the decision of the control plan). That means both plans are bundled inside network devices (Foundation, 2015)(SDxCentral, 2015), as shown in Figure 2.1 (A). This vertical integration increases the management complexity and produces a very distributed control mechanism which lacks the global view of the network when creating the control decision.
Fortunately, SDN decouples the control and data plans and migrates the controlling functionality to the central software known as a controller, (Stallings, 2013) see Figure 2.1(B). The purpose of that is breaking the vertical integration and moves the complexity away from the hardware to software. This promises for more innovation and flexibility in the software while the hardware becomes a simple device that focuses only on
Figure 2.1: Comparison of the traditional and SDN Network structure.
Page | 15 forwarding traffic. Also, SDN controller provides the management applications with a real-time abstraction of network devices. That enables the management applications to configure the network devices automatically and dynamically. So, the controller simplifies the network configuration, reduces the configuration time and minimises configuration errors. In another words, the application programs can change and manage anything for the SDN to produce a programmable network.
Both the central control and the programmability of SDN allow implementing the network NV and NFV to create the overly multiple virtual networks over the physical infrastructure.
Finally, SDN optimises some capabilities that exist in the traditional network such as the cost, performance, reliability, scalability, centralised monitoring, visualisation and security. Meanwhile, the centric-architecture of SDN creates new capabilities for the network like network programmability and network virtualisation (Cox et al., 2017).
2.2.2. The Virtualization and Its Relation to SDN
The virtualisation is defined as the capability of emulating hardware components like storage, computing machines and network resources, using the software (Ibn-Khedher et al., 2015). Virtualisation creates a virtualised (software) entity mimicking the exact functionality of the original hardware. Meanwhile, virtualisation decouples these entities from the underlay hardware by executing them as isolated instances of software over the Operating System (OS) of these devices. Then, it is possible to create or destroy these
Figure 2.2: The optimisation and the new capabilities of the network after the move from traditional network to SDN.
Page | 16 entities dynamically according to the needs of the system. Also, it could duplicate or migrate these virtualised entities to recover the failure, load balancing or deploy the services dynamically (Ibn-Khedher et al., 2015).
To support the flexibility and to extend the softwarisation abilities of SDN, it should be integrated with the virtualisation. Virtualisation and SDN are different concepts, but they are closely related. This correlation is a consequence of aiding the SDN to the growth and the standardisation of the Network Operating System (NOS), which is the basic ground to run the virtualisation. Furthermore, SDN feeds the centralised control, which makes the management of virtualised equipment much easier and efficient. Vice versa, virtualisation supports SDN programmability and provides powerful tools to simulate and test SDN network innovation (Nakao and Yamada, 2016).
It could categorise the virtualisation in the network into two parts, the Network Function Virtualisation (NFV) and Network Virtualisation (NV). NFV is the virtualisation technology, which allows any network device to be emulated, as a software component and is accommodated over the NOS of the hardware devices (Chiosi et al., 2012). NV is the ability to abstract the connectivity of the logical network ( network services or virtual components) to create the overlay network and decoupling it from the underlay hardware network (Rao, 2014). Therefore, NFV creates the virtual components, while the NV responsible for connecting these components to construct the logical slice of the network (Cox et al., 2017). In another words, both are required to construct a fully virtualised (logical) SDN network, see Figure 2.3.
Page | 17 They enable SDN to: 1) Share a resource; 2) Isolate the shared resource; 3) Aggregate multiple virtualised resources; 4) Dynamically create and destroy the resources; and 5) Extend the management capabilities like migrating a resource (Jain and Paul, 2013). The combination of SDN, NFV and NV are exploited to serve many implementations of the future internet such Information-Centric Networking (ICN), Internet of things (IoT) and the backbone of the 5G mobile network (Service Providers, 2017).
For example, NV and NFV provide multi-tenancy in the data centre (Fekih Ahmed et al., 2015). Furthermore, SDN enables NV to connect (chaining) network services (NFV) according to the requirement of network applications (Mijumbi et al., 2016). Finally, attaching the SDN and NFV to NV improves its limitation for recovering the failure, disaster and big events (Rao, 2014), see Figure 2.4.
Figure 2.4 presents three VN’s which serve three different sectors. Part (A) displays the VN under normal traffic, while part (B) illustrates how the network could respond to recover the troubles and keep a reliable performance by adding the required virtual nodes and links. These capabilities lead vendors and network operators to apply this integration to SD-WAN.