SDN is a new design which consists of three layers: data, control, and application plane, with the data and control planes being independent of one another [1]. The data plane is made up of switches and routers that forward network traffic; the control plane is comprised of NOX, POX, Beacon, Floodlight, and Open Daylight controllers; and the application plane contains applications that configure SDN. When the network is under a DDoS attack, the SDN controller was unable to respond to the normal traffic that was coming from the rest of the network, and SDN lose centralized control [2]. As a result, the key benefits of SDN, centralized network control, threatened by DDoS attacks [3].
A New SDN paradigm which is also gained significant attention was developed in order to address the demands of data centers. A single central entity with high processing capacity and good data management techniques required to respond to flow requests from forwarding switches [4, 5]. The centralized controller overwhelmed with flow setup requests arriving at a rapid rate, and risk network changes degrading response times. As per the researchers [6, 7], as the number of switches and end hosts grows, the SDN controller led to a bottleneck. Hackers, cyber extortionists, and cyber terrorists turned to DDoS attacks as a weapon of choice [8]. A new network paradigm is still required to face difficult security challenges. The goal of a DDoS attack is to use multi-source attacks to disrupt the target's services [9]. Due to an increasing number of DDoS attacks and a growing diversity of their forms, detecting, mitigating, and preventing such attacks have become a major security priority [10, 11]. Several researchers had shown interest in building SDN-based network security solutions as a result of recent developments in the network. Since deployment, in large-scale wide area networks, SDN-based solutions have grown greater attention [12, 13].
In this regard, most of the recent works were focusing on detecting and classifying DDoS attacks with a single controller using different mechanisms, and also, focused on either the accuracy or efficiency not both. However, what can be done in data centers with multiple controllers? And how it can improve the accuracy and efficiency at the same time? This will be the interrogation for next. There are multiple controllers in data centers that need to be protected from DDoS attacks. Each of these controllers has a different network traffic tolerance level. Spoofing the source (also called as fake source address) is one approach to hiding the perpetrator's identity when this kind of attacks occur [14, 15]. As result, there will be a flood of inbound packets with random IP addresses. The main benefit of employing a controller is that the first packet's rules to be added and withdrawn from the table.
In a DDoS attack, the compromised computer systems attempt to attack a website, server, or other computing resources, such as RAM and CPU. It causes the unavailability of resources for the users in the targeted system [25]. Messages in bulk Connection requests or malicious packets cause the victim's machine to slow down or even crash, preventing legitimate users from accessing the services they want. Many organizations, including nationalized and private banks, enterprises, and individuals linked to the internet, can be infected by a DDoS attack.
In the last few years, the occurrence of performing a DDoS attack has substantially increased. Although the criminal side of this attack is obvious, the motivation is always unclear [26]. For instance, Lizard Squad, a hacking group, undermined the gaming services of Sony and Microsoft in 2014 on the eve of Christmas day. When the reason behind this attack was investigated, one alleged member statement was “It was for laugh!” It's frequently difficult to figure out what motivates these attacks and why they occur. The fundamental reason for this is that some unknown external sources are in control of the computing resources used in such attacks [27].
While it is difficult to find out who is performing the attacks, at the same time, it is even tougher to guess why. Many reasons for such attacks are hypothetical, which are based on speculation with small amounts of evidence. It is not difficult to carry out a DDoS attack nowadays. A detailed step-by-step process can help someone with low technical skills to start the attack. If not counter-measured, it is a time-consuming and costly process.
The DDoS attack is intended to hinder the available resources in the network, and this is initiated by multiple connected devices. Furthermore, the attackers attempt to overwhelm the target with bogus packets for the malicious packets to be served. The causes of such attacks are [28]: DDoS is a powerful weapon when there is a conflict between two groups or two individuals for obstructing an opponent’s applications and infrastructure; an intentional person may become an attacker and carry out unwanted activities in response to a perceived injustice through this attack; and through cyber warfare (which is motivated by politics or geopolitics), a terrorist cell attempts to attack some of the sensitive zones to destroy the economic system. There are different forms of DDoS attacks which are indicated in Fig. 1.
In the literature, there are several techniques available for detecting, classifying, and mitigating the DDoS attack. As such, the strategies are categorized into: entropy-based, machine learning-based, and deep learning based techniques [27]. With regard to the entropy-based solution, the system evaluates the entropy value of three things throughout the detection process: port address, IP address, and packet count. Entropy is a statistical measure of an entity's randomness over a given period in which high entropy denotes a high level of randomness in an attribute, as well as a low calculation overhead. For example, if all packets are sent to the same host (or the same destination IP), an attack can occur. To reduce the workload of the controller, the detection module runs in the edge switch of the network. The proposed entropy mechanism compared the entropy flow values of source and destination IP addresses that are detected by the SDN controller to predefined entropy threshold values that change adaptively based on network dynamics [26]. In this regard, some of the entropy-based DDoS attack detection solutions are located at [17], [21], [22], [29–33].
The old network, machine learning techniques such as SVM, decision trees, random forests, and others were also employed commonly for anomaly detection. Some of such works are found at [34–39]. Further, deep learning models are also used the packet-based detection to classify the attack into different types of DDoS attacks. These models are used mathematical concept to mimic the human brain as it is meant to solve problems using unstructured data. They are created in form of a neural network that consists of neurons [40]. The input layer (first layer of neural network), hidden layer (middle layer of neural network), and output layer (final layer of neural network) are the three major layers of a neural network. These neural networks are classified based upon types of data as LSTM, RNN, MLP, GRU, etc. Some of the DDoS attack solutions: LSTM [24], [25], [41], [19], RNN [23], MLP [20], and GRU.