Intrusion Detection System in Software Defined Networks Using Machine Learning and Deep Learning Technique-A Comprehensive Survey
Intrusion Detection System in Software Defined Networks Using Machine Learning and Deep Learning Technique-A Comprehensive Survey
LICENSE
CC BY 4.0
09-12-2021 / 10-12-2021
CITATION
Ahmed, Md. Rayhan; Islam, salekul; Shatabda, Swakkhar; Islam, A. K. M. Muzahidul; Robin, Md. Towhidul
Islam (2021): Intrusion Detection System in Software-Defined Networks Using Machine Learning and Deep
Learning Techniques –A Comprehensive Survey. TechRxiv. Preprint.
https://doi.org/10.36227/techrxiv.17153213.v1
DOI
10.36227/techrxiv.17153213.v1
Intrusion Detection System in Software-Defined
Networks Using Machine Learning and Deep
Learning Techniques –A Comprehensive Survey
Md. Rayhan Ahmed, Salekul Islam, Senior Member, IEEE, Swakkhar Shatabda, A. K. M. Muzahidul
Islam, Senior Member, IEEE, Md. Towhidul Islam Robin
Abstract— At present, the Internet is facing numerous attacks of developed and intensified. IDS continuously monitors the
different kinds that put its data at risk. The safety of information network by creating a traffic pattern that enables itself to detect
within the network is, therefore, a significant concern. In order to
prevent the loss of incredibly valuable information, the Intrusion traffic behavior or patterns that deviate from the normal pattern.
Detection System (IDS) was developed to recognize the outbreak of Continuous irregular traffic is deemed a threat that can
a stream of attacks and notify the network system administrator eventually turn into an attack. IDS examines the network traffic
providing network security. IDS is an extrapolative model used to
records on computer networks to mark risky events and actions
detect network traffic as routine or attack. Software-Defined
Networks (SDN) is a revolutionary paradigm that isolates the and warns when such an activity is identified. IDS also assists by
control plane from the data plane, transforming the concept of a detecting external attacks in the network.
software-driven network. Through this data and control plane According to [2], the worldwide market size for SDN is
separation, SDN provides us the opportunity to create a manageable
and programmable network, allowing applications in the top plane estimated to rise from USD 13.7 billion in 2020 to USD 32.7
to access physical devices via the controller. The controller billion by 2025. The transpiring SDN architecture [3] provides
functioning inside the control plane executes network modules and more flexibility and control than traditional network architecture
establishes flow rules to forward packets in the switches residing in by splitting the data plane and the control plane in the SDN,
the data plane. Cyber attackers target the SDN controller to subdue
the control plane, which is considered the brain of the SDN, hence providing more programmability and flexibility. The
providing a plethora of functionalities such as regulating flow significant difference of SDNs with the standard hardware-
control to switches or routers in the data plane below via centric network paradigm is their functionality that varies
southbound Application Programming Interfaces (APIs) and
business and application logic in the application plane above via
according to their architecture. In a traditional hardware-based
northbound APIs to implement sophisticated networks. However, network, it is challenging to deploy new protocols and required
the control plane becomes a tempting prospect for security attacks services since many switches are required to be updated or
from adversaries because of its centralization feature. This paper changed with manual configuration, which is error-prone and
includes an in-depth overview of the notable published articles from
2015 to 2021 that used Machine Learning (ML) and Deep Learning sluggish. In contrast, in SDN, it is configured automatically
(DL) techniques to construct an IDS solution to provide security for along with a centralized authentication process. SDN's improved
SDN. We also present two detailed taxonomic studies regarding performance is based on dynamic global control and cross-layer
IDS, and ML-DL techniques based on their learning categories,
information, whereas a traditional network is static with limited
exploring various IDS solutions to secure the SDN paradigm. We
have also conducted brief research on a few benchmark datasets information within it [4]. Nevertheless, it is necessary to preserve
used to construct IDS in the SDN paradigm. To conclude the survey, a satisfactory security level with the versatility and
we provide a discussion that sheds light on continuous challenges manageability of SDN architecture. In addition to the classical
and IDS issues for SDN security.
Index Terms— Intrusion Detection System, Software Defined IDS and Intrusion Prevention System (IPS), the IDS,
Networks, Machine Learning, Deep Learning, Network Security, incorporated with the SDN paradigm provides an additional
Attacks. security level due to the unique programmability feature of SDN.
With the rapid development of ML and DL-based applications
I. INTRODUCTION in numerous network paradigms, IDS based on ML-DL is
Network security is now one of the most significant concerns gaining much popularity for automated threat and intrusion
with the network's explosive development because it directly detection within a network. Supervised and Unsupervised
influences the interests of the nation, the companies, and the Learning schemes of ML and DL methods enable the IDS to
individuals. Modern IDS[1] in the network needs to cope with a distinguish both known and unidentified attacks by training the
substantial quantity of data being generated every second due to model with improved accuracy. In the literature, a number of
the swift expansion of information technology. The internet IDSs are developed in the SDN paradigm by adopting various
progression and the fast exchange of data brings the threat of ML and DL algorithms. However, there is a shortage of in-depth,
increasing cyber-attacks targeting governments and commercial comprehensive survey that summarizes ML and DL-based recent
enterprises worldwide at a rapid rate. In response to that threat, development of IDS within the SDN that maps each study to a
the need to develop an intrusion detection system has been specific IDS domain. Table I presents a comparative analysis of
1
this survey with previous surveys. We believe it is really • A comprehensive survey of existing IDS in SDN that
important for a study covering IDS solutions in SDN to provide use different ML and DL techniques is carried out. The
a detailed study of various IDS mechanisms. existing works are then broadly categorized into ML,
To detect and prevent attacks in SDN, a taxonomic study of DL, RL and ensemble-based models. In each category,
IDS can play a pivotal role for a developer to design a robust the existing solutions are compared based on the
ML-DL-based IDS solution for the SDN paradigm by providing algorithms for building IDS solution, used dataset, core
several IDS domain knowledge about the anomaly-based, feature selection, SDN controller, and the attack
misuse-based, host-based, and network-based IDS mechanisms, classification type along with their names.
covering statistical analysis, log-data analysis, flow rules • Two taxonomies—taxonomy of IDS and taxonomy of
matching, expert-system development, pattern matching, packet ML-DL algorithms utilized in IDS—are developed.
inspection, session data analysis, and time-series-based Using these two taxonomies summary and comparison
subdomains. One of the significant factors in developing any of existing IDS solutions in SDN are also presented.
ML-DL-based IDS in SDN is the appropriate choice of datasets. • The available benchmark datasets used to construct IDS
There is an apparent lack of study of the datasets used in the ML- in the SDN paradigm are reviewed and a comparative
DL-based IDS-SDN research in the surveys mentioned above. study is presented among those by highlighting their
Ref. [5], [6] provides a brief study about some of the commonly metadata, attack types, features, format, label, network,
used datasets in developing IDS solutions. However, those topology, and class balance issue also the reviewed
surveys are not specific to providing solutions for SDN, neither papers are categorized along with their model
provide a comparative summary among those datasets by evaluation metrics.
differentiating each dataset from other in terms of their data • Open issues and challenges in designing ML-DL-based
collection format, labeling, type of addressing attacks, number of IDS for SDN are also identified.
features, utilized network and topology, etc.; instead, those are The organization of this survey is visually presented in Fig.1.
very generic, leaning towards the traditional network-based IDS Rest of the paper is organized as follows: Section II discusses
solution. Besides no other survey paper, reviews shallow ML, about SDN, OpenFlow (OF) architecture, and various
DL, Reinforcement Learning (RL), and Ensemble Learning (EL) applications of SDN. Section III provides a taxonomic study of
mechanisms specific to provide IDS solutions in SDN in a single IDS. In section IV, we provide a taxonomic discussion about the
survey paper. Some notable surveys [6]–[9] provide a state-of- AI-based IDS approaches that. In section V, we discuss about
the-art review of ML-DL-based IDS. However, those are leaning some frequently used ML-based IDS approach in SDN and
towards the generic network-based IDS solution, not specific to review existing literature adopting this ML-based IDS approach.
SDN, which is the primary field of this study. Therefore, this Section VI provides a literature review of some of the frequently
survey paper aims to review the state-of-the-art shallow ML- used DL-based IDS approach in SDN, along with a brief study
based, DL-based as well as RL-based and ensemble models for of the leveraged DL-based algorithms. In section VII, we review
developing IDS in SDN architecture over the last six years hybrid mechanism-based IDS approaches in SDN. In section
following a taxonomic structure. The major contributions of this VIII, we review Ensemble-based IDS approaches in SDN.
paper are enumerated below: Section IX provides taxonomic summary of all the reviewed
articles of this survey. Section X provides a brief study of the
TABLE I
COMPARISON WITH OTHER SURVEYS (✓: ADDRESSED, X: NOT ADDRESSED)
Number of
Study of AI Based Approaches for SDN-based IDS
ML-DL- reviewed papers
Discussion of Discussion of IDS-based datasets in
based using ML and
Ref. Year SDN OpenFlow taxonomic the
taxonomic DL to develop Shallow Deep Reinforcement Hybrid Ensemble
architecture procedure study reviewed
study IDS solution ML Learning Learning Mechanism Learning
papers
(SDN-specific)
[10] 2017 ✓ x ✓ ✓ 5 x ✓ ✓ x x x
[11] 2018 ✓ ✓ x ✓ 16 x ✓ ✓ x x x
[12] 2020 ✓ x x x 17 x ✓ ✓ x x x
[13] 2020 ✓ x x ✓ 13 x ✓ ✓ x ✓ x
[14] 2020 ✓ x x x 30 x ✓ ✓ x x x
[15] 2021 ✓ ✓ x x 9 x ✓ x x x x
[5] 2021 x x x x 4 ✓ x ✓ x ✓ x
[16] 2021 ✓ x x ✓ 79 x ✓ ✓ x ✓ ✓
[9] 2021 x x x ✓ Not Applicable ✓ ✓ ✓ x x x
This
- ✓ ✓ ✓ ✓ 92 ✓ ✓ ✓ ✓ ✓ ✓
Paper
2
frequently used datasets in IDS research along with their attack NMAP Network Mapper
DoS Denial of Service
mechanism. In section XI, we discuss some of the research issues DDoS Distributed Denial of Service
and underlying challenges in developing IDS solutions for SDN. U2R User to Root
Finally, we conclude the survey in section XII. The acronyms R2L Remote to Local
XSS Cross Site Scripting
that will be followed throughout the paper is listed in Table II. DQN Deep Q Network
PPO Proximal Policy Optimization
TABLE II TMANET Tactical Ad hoc Mobile Network
LIST OF SOME IMPORTANT ACRONYMS TPR True Positive Rate
FAR False Alarm Rate
IDS Intrusion Detection System DDPG Deep Deterministic Policy Gradient
SDN Software Defined Networks DPI Deep Packet Inspection
ML Machine Learning IoMT Internet of Medical Things
DL Deep Learning DRL Deep Reinforcement Learning
IPS Intrusion Prevention System
RL Reinforcement Learning
OF OpenFlow
II. SOFTWARE-DEFINED NETWORKS (SDN)
VoIP Voice over Internet Protocol
ICMP Internet Control Message Protocol Due to the rapid changes of information structure from one
MPTCP Multi-Path Transmission Control Protocol
SSH Secure Shell Protocol
place to another, governments and commercial organizations
IMAP Internet Message Access Protocol change their network configuration as per requirements of the
NFV Network Function Virtualization fast-changing network paradigm on the internet. The intricate
DBM Detection-Based Method
DSBM Data Source-Based Method
routine network creates an obstacle for many data centers to
ABM Anomaly-Based Method apply new services, connect various data centers with
MBM Misuse-Based Method organizations. This is where SDN comes to aid. SDN
NBM Network-Based Method
HBM Host-Based Method architecture empowers the system to be centrally controlled and
AI Artificial Intelligence programmed using software applications rather than changing
SL Supervised Learning the structure of physical appliances [11]. The goal of SDN can
UL Unsupervised Learning
ANN Artificial Neural Network be defined as improving network functions by allowing
Bi-RNN Bi-directional Recurrent Neural Network corporations as well as service providers to adapt rapidly to
CNN Convolutional Neural Network evolving market demands. The control plane is physically
DT Decision Tree
ID3 Iterative Dichotomiser 3 separated from the data plane, and it can intelligently control
DNN Deep Neural Network network resources. This intelligent network control is established
KNN K-Nearest Neighbor when SDN decouples the network setup and traffic engineering
LR Logistic Regression
SOM Self-Organizing Map from their underlying hardware infrastructure.
SVM Support Vector Machine SDN separates network controller and data plane/switch
RNN Recurrent Neural Network activities with a protocol that updates forwarding tables in
RBM Restricted Boltzmann Machine
MLP Multi-Layer Perceptron network switches. This enables on-the-fly network optimization
NB Naive Bayes and rapid response to changes in network traffic without the need
MDP Markov Decision Process
for manual reconfiguration of current infrastructure or the
RF Random Forest
FSLC Few Shots Learning Classifier purchase of new devices. SDN removes the control of network
FCM Fuzzy C-Means devices from the data they transmit and switches to software
BCI Bienaymé-Chebyshev Inequality
applications to regulate the behavior of the network residing
CART Classification and Regression Trees
REPTREE Reduced Error Pruning Tree outside of the networking devices (hardware) that offer physical
LSTM Long Short-Term Memory connectivity. The logically centralized SDN controller which is
Bi-LSTM Bidirectional Long Short-Term Memory
a software entity that plays the central management role and does
KM K-Means
GAN Generative Adversarial Network the job of flow management [17]. In a typical SDN outline,
GRU Gated Recurrent Unit packet handling protocols are sent from a controller to the switch.
AE AutoEncoder
SAE Stacked AutoEncoder
An application program executing somewhere on a server and
VAE Variational AutoEncoder switches request supervision from the controller when required
DBN Deep Belief Network to provide it with traffic information that they manage.
HMM Hidden Markov Model
XGBoost Extreme Gradient Boosting
Controllers and switches typically interact through the
AdaBoost Adaptive Boosting OpenFlow [18] interface. There are three stages or layers in SDN
PCA Principle Component Analysis architecture, which are shown in Fig. 2.
LVQ Learning Vector Quantization
SD-IoT Software Defined Internet of Things
Src/Dst Source/Destination
3
[19], Pantou [20], Indigo [21], and Nettle [22]. Physical switches
are hardware-based such as NetFPGA [23] and multiple vendor
switches. Some of the NetFPGA-based implementations are
[24], [25]. The functions data layer performs are dispatching,
rejecting and transforming data according to the rules or policies
provided by the control layer. The SDN data plane has a variety
of devices that lack intelligence. They just simply carry out the
controller's instructions or rules [26], [27].
4
flow, and a secure channel that connects the switch to the
controller. The highest priority flow resides at the top of the
table. An entry in the flow table consists of rules (matching
fields), priority, counters, actions, timeouts, cookie and flags [38]
as shown in Fig. 3. The flow rules are being applied to a
corresponding flow [39], one entry per each flow. The rule
(matching fields) consists of an algorithm that can be used for
exact or wildcard matches with the information about the packet
header that defines the flow. The information consists of ingress
ports where OF packets are received, packet header fields such
as IP/MAC address of source/destination (src/dst) and VLAN,
switch port, etc., and metadata from the previous table. The
priority field defines the matching priority of the flow entry to
process the rules. When a packet is matched with the rules, the
highest priority flow entry that matches the packet is selected and
the counter is updated. When a switch finds a match according
to the order of the priority flow, it applies the action, which
defines the packet handling process (e.g., forward packets to
ports/controller, drop, modification of source and destination
IP/MAC address, etc.) to the matching packet. If it does not find
a match, it performs the default operation of the packet, which is
to transfer it to the controller. The maximum amount of time or
inactive time before the switch expires a flow entry is defined as Fig. 4. Workflow procedure of OpenFlow-based switches.
a timeout. Cookies are the flow entry identifiers specified by the
OF controller. Flags change the way flow entries are managed by B. Networking Applications Based on SDN
the controller. A brief workflow procedure of an OF switch For a long time, the SDN research community has proposed
scenario in SDN is presented in a stepwise manner in Fig. 4. Flow and analyzed several network applications. These applications
tables of an OF switch are numbered sequentially, starting from can be assembled into network management, inter-domain
zero (0). The packet is first matched against flow entries in flow routing, traffic engineering, SDN security, virtualization of
table 0, which is the first flow table. If the flow entries do not networks, and load balancing of application servers, and control
match with the packet, then the packet is forwarded to the flow of network access [18]. In the following subsections, some of
table with the larger number. them are briefly described.
1) Traffic Engineering and Network Management
Successful network management needs knowledge of the
network’s current state and prompt adjustment in the control area
of the network. Authors in [40] proposed a multi-protocol level
switching traffic engineering network, based on SDN
Data Processing: Collected raw data is generally noisy in V. SHALLOW MACHINE LEARNING (ML) MODELS
nature. It may require some pre-processing tasks like removing BASED IDS IN SDN
duplicate data, identifying anomalies, discarding erroneous data,
ML models can be trained based on different learning
scaling, normalization, feature engineering, transformations, etc.
approaches. They can be categorized as Supervised Learning
Besides, the format of the data may require to be converted for
(SL), Unsupervised Learning (UL), and Reinforcement Learning
some specific ML models. Data processing also enables data
(RL). SL-based models are trained with labeled data, as shown
visualization to identify biases.
in Fig. 9. In IDS, most of the intrusion or anomaly detecting tasks
are classified using different SL-based models. On the other
Model Selection: A specific ML-DL method is selected in this
hand, UL-based models gather information from unlabeled data,
step. Results of different ML models can be varied significantly.
as shown in Fig. 10. In contrast, RL-based models rely on
That is why the model should be chosen carefully.
continuous feedback from critics based on some particular
actions. However, in ML-based IDS, RL-integrated models are
Training: In the training step, the selected ML model is being
relatively rare compared to the other two approaches. An ML-
learned by the collected data. The aim of this training step is to
DL taxonomy is showed in Fig. 7. The taxonomy reflects the
prepare the model to perform better against unseen data.
models which are used commonly in IDS.
(P -Q )
2
E(P,Q) = i i (3)
i=1
based on features, and the leaf nodes of the tree denote the class Here, v= {1,2}
11
Supervised ML Based IDS in SDN detected, the IP addresses of the command-and-control servers
Intrusion detection in SDN using ML techniques has gained were located and excluded.
popularity because of the exceptional upsurge of vast amount of Song et al. [128] propose a risk awareness-based IDS in SDN.
success of ML algorithms in network security. In the following, The proposed model has four steps: i. Data processing, ii. Data
we review some of the supervised ML-based IDS solution in modeling, iii. Decision-making, and iv. Response scheme. Data
SDN paradigm. processing steps are designed to find appropriate features set.
Intricate attacks may inject malicious payloads into the Two supervised ML algorithms (DT and RF) have been used in
packets. By inspecting packets deeply, Cheng et al. [121] the data-modeling step to predict malicious activities. Decision
propose an OpenFlow-based deep packet inspection method on making step analyzes the result from the data-modeling step and
the SDN environment that incorporates the DT, RF, directs a signal to the response scheme to initiate a security
Multinomial-NB, KNN, SVM and RF ML algorithms. First, the response. In the response step, the system changes the flow rules
method introduces a primary recognition mechanism linked with for different network routes. Altering the traffic flow of
the filtering of IP at the flow level. After that, the packets are malicious hosts will guard the system from overwhelming
checked by a deep packet inspection (DPI) engine, which potential traffic. Thus, the system could maintain a balanced flow
comprises two key components: unencrypted traffic inspection among all the routes.
and encrypted traffic inspection. For the unencrypted traffic, the Silva et al. [129] develop ATLANTIC project to detect
proposed system extracts the payload (tri-gram frequency based abnormal traffic streams and classify them using SVM. It is two-
on TF-IDF, linguistic) features. For encrypted traffic, the system phase architecture to detect the anomaly and mitigate the traffic
extracts some prominent features such as TLS cipher suites to to achieve normal flow. In the first phase, tables are maintained
train the classifier to classify malicious encrypted packets. This to record the traffic flow. Further, the table records are utilized
work proposes a customizable packet-driven sampling method to find deviation using different entropy theory. In the second
based on the linear prediction to overcome the resource- phase, SVM is used to categorize the abnormal traffic flow.
performance issue at the packet-level granularity. Nanda et al. [84] propose a system that can identify malicious
Yu et al. [122] also performed DPI-based traffic classification connections using four ML algorithms, namely NB, DT,
on the SDN environment. For the classification task, they have BayesNet, and decision table. The prediction results were
used the Tri-Training mechanism [123] consisting of SVM, utilized by SDN to implement security measures to protect
KNN, and NB classifier after collecting flow features from the vulnerable hosts. For their experiment, they used log data from
network traffic. Several other studies also performed DPI different architectures and classified them into two other classes.
mechanisms to detect attacks in the SDN paradigm. [113], [124]– Peng et al. [130] present an SDN-based IDS that detects an
[126]. In ref. [124] Lin et al. add a two-tier mechanism to classify anomaly in the flow of the network. In their system, the
traffic flow to the traditional SDN architecture. First, rather than controllers' flow collection unit gathers information from the
the controller, it conducts traffic classification on the data plane. flow table of the OF switches, collects the flow data features, pre-
If the initial categorization module cannot handle the traffic, it processes the features, and implements the detection of anomaly
will be forwarded to a DPI module. However, forwarding traffic flow from the normal flow using the KNN algorithm.
to specific DPI engines typically results in global network load Satheesh et al. [131] present a priority-based machine
and link usage problems. However, since malware producers learning approach using SDN to manage data packet flow across
switch their product distribution from HTTP to HTTPS to avoid the network. Their model obtains network information and uses
payload analysis, DPI cannot be relied on to extract the principle of packet classification information and adjusts
characteristics for malware identification. For this reason, flow rules to block malicious information flows.
Cusack et al. [127] proposed a scheme that leverages Abubakar and Pranggono [132] propose a neural network-
programmable forwarding engines (PFE). The flow records based IDS solution for SDN. They first built a simulated testbed,
created by PFEs offer per-packet information and allows to which simulates the actual scenario by offering a mechanism for
extract flow characteristics for ransomware classification. The signature-based attacks. The model is then configured to provide
architecture is divided into two sections: processing of anomaly-based detection and incorporated the later model into
stream and classification. The stream processor reads a PCAP, the signature-based model to detect a previously unseen attack
executes, maintains a customized flow table, and collects flow undetected by the first method. They achieved a 97.3% detection
features for the ML-based classifier. The classifier uses the rate using pattern recognition technique.
retrieved features to train a model that can detect ransomware. Schueller et al. [133] present a two tier hierarchical IDS for
In another study, Cabaj et al. [126] utilized the SDN method SDN by combining the flow based properties and packet based
for ransomware detection by tracking the packet lengths of properties of the network data. They have developed the flow-
HTTP POST messages using DPI. Once the ransomware was based IDS using SVM algorithm with DARPA dataset. It
matches the flows of SDN traffic against the database that
12
comprises flow rules. For advance assessment of packets, DDoS attacks in SDN, their IDS solution was integrated along
irregular flows are then transferred to the packet-based IDS. with the POX controller. They have used KNN, DT, and SVM
Ajaeiya et al. [134] implement a model to determine potential for the IDS. Detection performance was evaluated using KNN,
attacks such as DoS and brute force attack variants such as HTTP DT, and SVM algorithms using the NSL-KDD dataset. Using
credential and SSH. The major benefit of SDN is that OF feature selection, they have selected only six features from the
switches sends statistical information per flow item to the forty-one available features in the dataset.
controller. The proposed approach uses the OF switches’ Boero et al. [112] investigate an SVM-based IDS solution in
statistical features to extract flow patterns, features and combine the SDN for detecting various malware intrusions in the network.
them before labeling for classification model. Using the Entropy-based Information Gain (IG) method, they
Wang et al. [135] presented a flow control-based IDS. Their have selected core features based on probability density
enhanced behavior-based SVM model detects and monitors estimation, contributing more to the intrusion. By ranking the
traffic for abnormal flow. They have used the Support Vector features, they have selected nine major features well suited to
Classifier to select the most qualified features from a set of raw SDN architecture to carry out the IDS solution in this study.
features. By doing this, they have enhanced their detection Elsayed et al. [143] have executed a careful investigation of
accuracy. For feature reduction, they used the ID3 DT algorithm. the common ML methods for identifying attacks in the SDN. A
Using SVM for the DDoS attack detection, Yang and Zhao study about the linearity and non-linearity issues of the datasets
[136] propose a 3-module based IDS model. The first module was carried out in their study. The t-Distributed Stochastic
collects traffic data where a RYU controller extract features Neighbor embedding was used to cluster the dataset's malicious
through statistical flow analysis information, then identifies and normal traffic as a nondeterministic measure. Principal
DDoS attacks on the SDN campus network in the second Component Analysis (PCA) algorithm was then used to reduce
module, and finally adjusts the flow delivery rules in the last the dataset's dimensionality and thus reduced features from 122
module to withstand the DDoS attack. to 20. They have suggested that traditional ML algorithms fail to
By analyzing the current IDS solution’s limitation in the SDN classify a wide range of SDN attacks with precision; hence, the
paradigm, Alshamrani et al. [137] present an ML-based DDoS DL-based approach was suggested to work with complex feature
attack recognition and mitigation scheme. They have studied analysis for the detection task.
misbehavior attack, where an attacker can fool the controller by An ML-based TCP-SYN and ICMP Flood attack mitigation
sending a valid packet as the first packet of a flow, then sends method was proposed by N.N. Tuan et al. [144] in the SDN-
malicious packets later, and NewFlow attack where packets with enabled Internet Service Provider (ISP) networks. For the
new and unseen flows are sent to the controller creating a training dataset, they have used CAIDA 2007 and also generated
bottleneck. NSL-KDD dataset was chosen as the dataset and traffic by using the DDoS traffic generator testbed "Bonesi"
selected subset of features form that dataset using ranker, greedy [145] for additional training of the model. The attacker exploits
and genetic algorithm for the model training combining with the Network Address Translation mechanism of the ISP. When
correlation-based feature selector that ranks the subsets of feature the controller (POX) [30] obtains a “packet_in” message for any
following a correlation heuristic evaluation function [138]. unknown flow of packets, the KNN-based IDS module identifies
Vetriselvi et al. [139] propose a ML based two level IDS the packets as normal or traffic, based on ICMP packets volume
solution for SDN paradigm. They created the IDS by combining and by calculating the port's entropy during TCP traffic. For the
ML and genetic algorithms. Their model is separated into two mitigation part, they have used the time monitoring concept to
levels, the 1st level (deployed in the switch) is used to detect the calculate the port's entropy, based on the number of source IP
attacks and the second level categorizes the attack types. address and their corresponding ports that are open. Two
Leveraging the metaheuristic optimization BAT algorithm XGBoost events were used in the study, one is for the prediction
[140] and ML based RF algorithm, Li et al. [141] project an of monitoring windows, and the other is for predicting the
artificial intelligence based 2-stage IDS solution for Software- threshold value of the monitoring window.
Defined IoT (SD-IoT) networks. They have selected five class Afsaneh et al. [146] propose a model for DDoS attack
flow features from KDD CUP 99 dataset using a modified BAT classification method combining three phases: the collector
algorithm with differential mutation and swarm division process. section, the entropy-based section, and the collection section.
A modified RF algorithm and weighted voting mechanism were The system aims to train the classification model with recent data
then used to adapt the weights of the sample data to categorize to overcome relatively older data dependency. They applied
the flow from the initial stage. Their model achieves lower false three different datasets (UNB-ISCX, CTU-13, and ISOT) to test
alarm rates due to optimal and core feature selection processes the classification model's performance, where the chosen models
regarding attacks in the SD-IoT networks. are J48, BayesNet, Random Tree, REPTree, NB, and LR.
Akbas et al. [142] studied ML algorithms' usage and Pérez-Díaz et al. [147] propose a modular architecture for low
effectiveness in the SDN paradigm to detect intrusion. To detect rate DDoS attacks such as DDoSSim, hulk, Slowloris, etc.
13
detection and prevention in SDN. The first module, the IPS IDS solution, used dataset, core feature selection, chosen SDN
running on top of the ONOS SDN controller, captures the flow controller, and the attack classification type along with their
and sends it to the IDS. In the second module, the ML-based IDS names. In Table XI, we have also provided the summary of each
detects the flows and sends back the detection result. Based on reviewed articles performance based on ML-DL algorithms
the IDS’s flow result, the IPS processes the captured flow learning categories, and evaluation metrics.
according to the prevention strategies. They have performed the
experiments on the CIC DoS dataset using six ML methods and B. Unsupervised Learning (UL) Based Models
achieved 95% accuracy with a very low False Alarm Rate (FAR). UL-based models are used when the class label is unknown.
To identify the Man In The Middle (MITM) attack, Sebbar et In most of the IDS, the UL-based algorithm is used for cluster
al. [148] propose a model using the RF algorithm that selects analysis. As shown in Fig. 10, UL-based algorithms do not
nodes based on the context to identify ARP resolution instances require supervision and are trained using unlabeled data. Rather,
and any eavesdropping or poisoning within the network. Any it investigates the trends and patterns on its own. The
connection request with TTL value greater than 200 milliseconds unsupervised model’s goal is to identify the group and
is considered as an attempt of an MITM attack. Nodes within a categorized them according to their shared attributes. The most
specified period will only be accepted. Then, using some pre- popular example of unsupervised models that are being used for
established policies and the TTL delay, the decision regarding intrusion detection are K-Means and SOM algorithm.
any connection will be made. Any connection requests exceeding
the delay will be considered as an attack, and the system cut off
the connection to that node preventing any approval and
verification process for that node.
Aiken and Scott-Hayward propose an IDS [149] for SDN by
developing an anomaly-based network IDS module named
Neptune motivated by Athena [150] and an adversarial test
module as Hydra. Using Hydra, the authors have tested the
detection accuracy of Neptune by attacking with SYN-Flood
Fig. 10. Unsupervised Learning (UL) method structure.
DDoS attack. Neptune uses SL on flow statistics to train and
categorize live traffic. They have evaluated the model's detection
K-Means Clustering
accuracy using four ML classifiers, where RF achieved the best
K-Means clustering method is used to find groups from given
outcome.
dataset where several groups are represented by variable K.
To assess the performance of different ML algorithms for
Generally, centroids are picked randomly, and K-clusters are
identifying DDoS attacks in SDN, Meti et al. [151] presented
formed. It works iteratively to assign a data point to a particular
their experiment results in real-time data. The dataset is created
cluster. At the end of the iterations, each data point is clustered
from real-time TCP traffic between the experiment lab and the
according to its feature similarity. Each time cluster center (mean
outside world. Mininet is used to create SDN topology. For
of a cluster) is updated; Iterated until the criterion function
classification, they have used SVM, NB, and ANN ML models.
converges. Usually, the squared error measure is used through
Their experiment shows that SVM and ANN both achieved 80%
Eq. 6.
accuracy, however the result substantially varied in precision and
k
recall calculation. E= |x-mi |2 (6)
Santos et al. [152] analyze the performance of four ML i=1 xci
methods, MLP, DT, RF, SVM, in detecting DDoS attacks in the Here, E = sum of the squared errors of all objects, x = point in
Mininet simulated SDN environment. They have used the scapy space representing a given object, and mi = mean of cluster ci.
tool to produce malicious traffic for the attack. The analysis was The findings of the K-Means method are the K cluster centroids
done concerning accuracy in the detection of DDoS attacks and that could be utilized for labeling novel data.
processing time. They also provided a feature analysis to find the
best features for training the model. RF algorithm achieved the Self-Organizing Map (SOM)
best accuracy, whereas DT achieved the best efficiency in terms SOM is an UL method that creates a nonlinear mapping of a
of processing time. Some other studies [153]–[155] mainly high-dimensional data manifold on a regular, low-dimensional
adopted SVM-based IDS solution for SDNs. output space [156]. Using dimensionality reduction, they can
cluster large amounts of data. Compared to the performance of
Table V presents a tabular summarization of the other clustering algorithms, such as K-Means, the SOM output
aforementioned reviewed articles that depicts the objective of the allows for simple visualization.
study, adopted SL based Shallow ML algorithms for building
14
TABLE V
SUMMARY OF THE REVIEWED SUPERVISED LEARNING-BASED SHALLOW ML MODELS TO DETECT INTRUSION IN SDN
Objective Algorithm Dataset Controller Testbed Features Selection FS Approach Classification IDS Domain Ref.
(FS) Type
Deep packet inspection DT, RF, KNN, CTU-BOTNET [157] RYU [29] Mininet Term frequency and Manual Selection Binary Packet-based [121]
based malicious payload SVM, LR, GitHub Payloads Linguistic features. Classification: Flow-based
identification in SDN. Multinomial-NB HTTP CSTC 2010 Normal class and
Anomalous
class.
Develop a QoS-aware Tri-Training Not Mentioned Not Not Mentioned 8 Features – Flow-based Eigenvalue-based Binary Flow-based [122]
traffic classification Mechanism Mentioned Classification:
framework using ML and (SVM, KNN, Normal class and
DPI in SDN environment. NB) Attack class.
ML-based recognition of RF Malware Traffic Not Not Mentioned 28 Features -Flow- Manual selection Binary Packet-based [127]
ransomware in SDN Analysis [158] Mentioned based based on Classification: Flow-based
measuring packet Clean class and
interarrival times. Ransomware
class.
Detection and Mitigation of KNN, SVM Synthetic Data Not Not Mentioned Average byte and Shannon entropy Multiclass Flow-based [159]
DDoS attack in SDN though generated using Mentioned duration. & ϕ-entropy Classification: Statistics-
ϕ-entropy incorporating Hping3 and Nping. Normal, SYN, based
with SVM and KNN ICMP, UDP,
classifier. ACK, TCP
Connection, and
Flash event.
Traffic awareness-based RF KDD’99 Floodlight Mininet 10 Features: Duration, RF Binary Flow-based [128]
IDS to maintain regulated [33] Service, Src. bytes, Dst. Based on vote Classification:
traffic in SDN. bytes, Protocol type, count of correct Normal class and
Flag, Land, Wrong classes. Anomaly class.
fragment, Urgent and
Hot.
Anomalous traffic detection SVM Self-Collected data Floodlight Not Mentioned 2 Features: IP address Based on entropy Binary Flow-based [129]
and flow control from network traffic. and Transport port analysis Classification:
mechanism. number. Normal class and
Anomaly class.
Identify malicious hosts and DT, NB, Log data Not Not Mentioned 3 Features: Invader IP, Not Mentioned Binary Log-based [84]
provide advance security. Decision Table, Mentioned Compromised host and Classification:
BayesNet No. of efforts in an Normal and
outbreak. Attack.
Recognition of DDoS KNN Self-Collected data RYU Mininet 11 Features: Duration, Not Mentioned Binary Flow-based [130]
anomaly flows in SDN. From multiple data Protocol type, Src/Dst. Classification:
centers. bytes, Service and Normal and
Server count, Server DDoS.
SYN error Rate, Dst.
host count, Dst. host
server count, Dst. host
SYN error rate and Dst.
host server REJ error
rate.
Identification of usual and RF, NB, NSL-KDD Floodlight Mininet Nominal, Numeric and Information Gain Multiclass Flow-based [131]
anomalous flow of data BayesNet, Part Binary Feature Set. ratio Classification:
transmission to detect the Normal, DoS,
intruder anomalies. R2L, Probe,
U2R, and
Unknown.
Detection of DDoS attack in Fitting Curve, NSL-KDD OpenDaylight Mininet 5 Features: Duration, Manual Selection Multiclass Flow-based [132]
SDN using a meta-heuristic Pattern [32] Protocol type, Src. Classification:
method. Recognition, bytes, Dst. bytes, Normal, DoS,
Time Series Service and Server R2L, Probe,
count U2R, and
Unknown.
SVM based IDS for SDN in SVM DARPA 1998 RYU Mininet 6 Features: Avg. Manual Selection Multiclass Flow-based [133]
cloud data center. number of packets per Classification: Packet-based
flow, bytes per flow, Normal, DoS, Log-based
avg. duration of a flow, U2R, R2L, and
percentage of Probe.
symmetric paired flows,
rate of increase in the
number of single flows
and growth of new
ports.
Statistical feature analysis SVM, DT, RF, Not mentioned. RYU Not Mentioned 8 Features: Duration, Feature Binary Flow-based [134]
of flow-based IDS in SDN. KNN and Packet count, Byte aggregation based Classification:
Bagged Tress count, Src/Dst IP, on replaying the Normal class and
Anomaly class.
Protocol, Src. and Dst. gathered flows
Multiclass
port. using TCP Replay
Classification:
to the SDN.
Normal, DoS,
HTTP Brute-
Force, SSH
Brute-Force.
Threat detection using flow SVM, KDD’99 RYU sFlow Toolkit 2 Sets of behavioral Information Gain Multiclass Flow-based [135]
control method in SDN. ID3 DT [160] features selected from Classification:
30 features. Normal, DoS,
1ST Set: 23 features
R2L, Probe,
2nd Set: 29 features
U2R.
15
TABLE V (Continued)
Objective Algorithm Dataset Controller Testbed Features Selection (FS) FS Approach Classification IDS Domain Ref.
Type
Analyze flow statistics SVM KDD’99 RYU Mininet 8 Features: Count, Service Not Mentioned Binary Flow-based [136]
and develop an SVM Count, Same Service Count, Classification:
based real-time DDoS Dst. Host Count, Dst. Host Normal class and
attack detection and Service Count, Dst. Host DDoS class.
resistance model. Same Service, Same Port
Rate, Dst. Host SYN and
REJ Error Rate.
Investigates New flow SVM, NSL-KDD POX Mininet 25 Features were selected out Ranker, Multiclass Flow-based [137]
and Misbehavior attack J48, of 41 features using Genetic and Classification:
NB correlation heuristic function Greedy Normal, DoS,
evaluation. algorithm. R2L, Probe,
U2R.
Build a Two-level ML ID3 Not Mentioned. Not Mininet Not Mentioned Genetic Not Mentioned. Flow-based [139]
based IDS in SDN. Mentioned. algorithm Packet-based
Attack detection is Modified KDD’99 Not 32 Features-Flow. Modified BAT Multiclass Flow-based [141]
Software Defined Internet BAT, Mentioned. algorithm Classification:
of Things network using Modified RF Not Mentioned Normal, DoS,
modified BAT and RF R2L, Probe,
algorithm. U2R.
ML algorithms SVM, NSL-KDD POX Mininet 6 Features: Duration, Type of Manual Multiclass Flow-based [142]
performance analysis KNN, the protocol, Src/Dst. bytes, Selection Classification:
using NSL-KDD dataset DT Count, SYN error Rate. Normal, DoS,
for attack detection in R2L, Probe,
SDN paradigm. U2R.
SVM incorporated with SVM NSL-KDD RYU Mininet 9 Features: Manual Binary Flow-based [153]
selective IP traceback- Duration, Type of the Selection Classification:
based IDS mechanism for protocol, Flag, Src/Dst. Normal and
SDN. bytes, Count, Service, Attack.
Srv_count,
Dst_host_same_src_port_rate
Malware intrusions SVM Not Mentioned. Not Not Mentioned 7 Features: No. of packets, Ranker Binary Flow-based [112]
detection in SDN using Mentioned. No. of bytes, Flow duration, algorithm Classification:
SVM based IDS. Byte rate, Avg. length of the Normal and
Malware.
packet, Packet rate, First
packet length.
Performance evaluation SVM, NSL-KDD Not Not Mentioned 20 Features - Flow based. t-SNE Binary Flow-based [143]
of Traditional ML J48, Mentioned. algorithm Classification:
methods regarding attack NB, [161] Normal and
RF Malicious.
detection in SDN.
DDoS attack (TCP-SYN KNN, CAIDA 2007 POX Self-constructed Not Mentioned Based on Time Binary Flow-based [144]
and ICMP Flood) XGBoost window Classification: Statistics-
detection in the SDN monitoring and Normal and based
DDoS.
enabled ISP networks. entropy
calculation
Building a robust J48, BayesNet, UNB-ISCX, CTU Floodlight Mininet 15 Features: Manual Binary Flow-based [146]
classification system to Random Tree, 13, ISOT. Statistical, IP, TCP, UDP and Selection based Classification:
detect DDoS attack by REPTree, NB, Raw Feature Set. on neighboring Normal and
DDoS.
reducing the dependency LR. nodes.
on outdated data.
Low-rate DDoS attack J48, REPTree, CIC-DDoS-2019 ONOS [34] Mininet 44 Features-Flow. Manual Binary Flow-based [147]
detection using ONOS RF Random selection Classification:
controller and ML Tree, SVM, Normal and
DDoS.
methods. MLP
Man In the Middle Attack RF Self-Collected from OpenDaylight Mininet Not Mentioned Not Mentioned Binary Flow-based [148]
recognition in the SDN. SDN traffic. Classification: Session-
Normal and based
MITM.
SYN-Flood DDoS attack RF, LR, KNN, CICIDS, DARPA Faucet [162] Self-Constructed 15 Features – Packet header Ranker Binary Flow-based [149]
detection in SDN. SVM 2009 and Stateful Features. algorithm Classification: Packet-based
Benign and
Malicious.
Evaluating performance NB, SVM, Self-Constructed Not Mininet Two Features: Not Mentioned Binary Flow-based [151]
of different ML ANN from Real-Time Mentioned Host time, No. of requests. Classification:
algorithms Traffic. Normal and
DDoS.
Performance analysis of MLP, DT, Simulated Data. POX Mininet 23 Features – Flow. Experimental Binary Flow-based [152]
four ML algorithms to SVM, RF Trail-based Classification:
identify DDoS attack in Normal and
DDoS.
the SDN.
DDoS Flooding SVM Real-Time Traffic POX Mininet 5 Features: Shannon Binary Flow-based [154]
Occurrence recognition Collected from Source IP, port Entropy Classification:
and mitigation scheme in home office and Destination IP, port Normal and
Protocol DDoS.
SDN. ISP.
Advanced-SVM-based SVM Real-Time Traffic Not Not Mentioned Not Mentioned Manual Binary Flow-based [163]
DDoS Detection in SDN. Mentioned Selection Classification:
Normal and
DDoS.
DDoS attack detection SVM, ANN, Self-Generated POX Self-constructed 12 Features – Flow. Filter, Wrapper Multiclass Flow-based [155]
using feature selection KNN, NB Simulated Data using Open and Classification:
and ML-based techniques vSwitch. Embedded- Normal, TCP,
ICMP, and UDP.
in SDN. based method.
16
The initialization of the weight vectors is the first stage in the signature-based IDS detection system and a progressive IDS
SOM mapping process. Then, a sample vector is chosen at system. They used KNN, K-Means, NB, and K-Medoids
random, and the map of weight vectors is explored for the weight methods for the signature-based IDS. The signature IDS module
that best describes that sample. Every weight vector has weights classifies abnormal traffic and identifies the hosts responsible for
in its immediate vicinity. The chosen weight is rewarded by the generating unusual traffic in the network. The advanced module
ability to become increasingly similar to the randomly picked inspects the packets from suspected hosts and puts a verdict on
sample vector. The neighbors of that particular weight are each host; either it is an authorized host or an irregular host
rewarded as well, as they can become increasingly similar to the responsible for a DDoS attack. The authors also claimed that the
sample vector chosen, allowing the map to expand and take on processing time is reduced as advanced modules only check the
new forms. SOM algorithm is extensively used in developing suspected hosts among all hosts.
unsupervised learning-based intrusion detection solutions for Hurley et al. [167] propose a HMM based IDS that can
SDNs [67], [164]–[166]. monitor the network and learn from the evolving nature of the
network to detect the probability of intrusion inside the network.
Hidden Markov Model (HMM) The HMM defines the likelihood of intrusion by treating features
The Hidden Markov Model is a probabilistic model based on like packet length, src/dst. port number, src/dst. IP addresses as
the Markov processes that have been used in a variety of independent measures.
research fields, including bioinformatics, speech recognition, By creating a virtual testbed for SDN traffic generation,
and network intrusion detection [92], [167]. It enables us to Jankowski and Amanowicz [172] propose an IDS based on SOM
forecast a series of hidden (unknown) states based on a set of and Learning Vector Quantization (LVQ) methods. They have
observed states. HMMs can be applied to detect complicated also experimented with multiple improved versions of both the
internet attacks with a high noise ratio because of the variations algorithm like Multipass SOM, Multipass LVQ-1 and
in action sequence throughout execution of each identical attack Hierarchical LVQ-1 with an average True Positive Rate (TPR)
[168]. value of more than 94%.
Unsupervised ML Based IDS in SDN Table VI presents a tabular summary of the aforementioned
In the following, we analyze some of the unsupervised ML- reviewed articles that depicts the objective of the study, adopted
based IDS in SDN. UL based shallow ML algorithms for building IDS solution, used
In a study by Wang et al. [169], HMM is combined with the dataset for the task, core feature selection, chosen SDN
calculated Renyi entropy of the source and destination IP of the controller, and the attack classification type, corresponding IDS
incoming data packets collected by the SDN controller to create domain along with their simulated testbed.
an HMM-R scheme that detects low-rate DDoS attacks. For the In the next section we discuss those studies which have used
traffic acquisition, the authors have employed an SDN controller. RL-based algorithms to develop IDS solutions specific to SDN.
In order to reduce detection time, the packet_in message is
utilized to set the detection period. The authors then used the C. Reinforcement Learning (RL) Based Models
Renyi entropy as a statistical feature to limit the number of false Reinforcement Learning (RL) is one of three primary ML
positives. Finally, the authors employed the proposed HMM-R paradigms, next to supervised and unsupervised learning. RL is
scheme to define a range of states in the form of probability to concerned about how intelligent agents can achieve a goal in an
identify low-rate DDoS attacks at various rates. Baum–Welch unknown, potentially intricate environment in order to optimize
algorithm was used for training the observation sequence data, the concept of total collective reward. RL can be used to solve
and viterbi algorithm was utilized for detecting low-rate DDoS problems where notable domain information is either
attacks in the HMM-R scheme. inaccessible or prohibitively expensive [173]. In most cases, a
function approximator, such as Neural Network, SVM, etc. is
The DDoS attack is one of the substantial threats to security in used to map state to value. For IDS, designing a reward feature
SDN. Braga et al. [170] present a DDoS attack recognition associated with the detection of intrusions is incredibly
system applied on a NOX controller based SDN. NOX is used challenging because there is no automated approach to
for collecting traffic flow features. These features were utilized distinguish intrusions from the normal traffic flow. Algorithms
using the SOM to detect the fake hosts. Their proposed model such as Q-learning, Deep-Q Network (DQN), and Proximal
provides a guard against fake hosts that could produce many Policy Optimization (PPO) are mostly used in RL-based IDS for
requests to exhaust SDN and limit genuine hosts' resources. SDNs. Q-learning is an off-policy RL algorithm that determines
the optimum course of action given the present situation [174].
Barki et al. [171] design a module-based DDoS attack Because the Q-learning function learns from its actions and isn't
recognition structure. Their offered IDS has two modules: reliant on the existing policy, it's termed off-policy.
17
TABLE VI
SUMMARY OF THE REVIEWED UNSUPERVISED LEARNING-BASED SHALLOW ML MODELS TO DETECT INTRUSION IN SDN
Objective Algorithm Dataset Controller Testbed Features Selection (FS) FS Approach Classification IDS Ref.
Type Domain
Detecting low-rate HMM, Data packets POX Mininet Source and Destination IP Renyi entropy Binary Flow-based [169]
DDoS attacks using SOM, collected from addresses. Classification: Statistics-
HMM at different rates KNN, synthetically Normal and based
in the SDN. Back-Propagation created data center. DDoS.
DDoS attack SOM Self-Collected data NOX Not Mentioned Per flow average of Self-Extracted Binary Flow-based [170]
recognition. from network packets, bytes, duration, Classification: Statistics-
traffic. and percentage of pair- Normal and based
flows. DDoS.
DDoS attack recognition K-Means, Self-Collected data RYU Mininet Not Mentioned. Self-Extracted Binary Flow-based [171]
and identify the attacker K-Medoids, from network classification: Statistics-
hosts. NB, traffic. Normal and based
KNN DDoS. Log-based
Develop an HMM-based HMM Self-collected data Floodlight Mininet Packet length, Src and Dst. Manual Binary Flow-based [167]
IDS for SDN. from port number, Src. and Dst. Selection Classification:
network traffic. IP addresses. Normal and
Anomaly.
Network-based DDoS SOM Simulated data. Floodlight NS-3 Not Mentioned. Manual Binary Flow-based [67]
attack recognition in Selection Classification:
SDN environment. Normal and
DDoS.
Competence Evaluation SOM, Self-collected from OpenDaylight Mininet 9 Features: Packet count in Not Mentioned Multiclass Statistics- [172]
of ML based algorithms LVQ a virtual testbed. a flow, Src. TCP/UDP port, Classification: based
in IDS for SDN. Byte’s count in a flow, Dst. Normal, DoS, Flow-based
TCP/UDP port, Duration,
R2L, Probe,
Flows with diverse ports
from Src/Dst. hosts, Flow U2R.
rate to the host, and Single
flow rate to the host.
Rather than estimating the value function with a greedy They have collected regular traffic from the network and divided
approach, Q-learning updates its value functions using equations them into numerous clusters using K-Means, SOM, FCM
such as the Bellman equation. The letter 'Q' stands for quality in algorithm to train the RL agent. For RL, they have used DQN
Q-learning. In this situation, quality refers to how valuable a and PPO.
specific action is in obtaining a future reward. By combining Q- A Neural Fitted Q-Learning agent-based threat detection
learning with DNN, V. Mnih et al. [175] proposed the DQN mechanism named ATMoS was proposed by Akbari et al. [180]
algorithm that operates within discrete action spaces. A DQN using OpenDayLight, Snort, Docker, etc. This model's three key
agent is a value-based RL-based agent that teaches a critic to components are profiling of the behavior of the host, autonomous
predict future rewards or returns. The OpenAI team launched the management for the RL agent, and SDN infrastructure. APT and
PPO algorithm in 2017 [176], and it immediately became one of TCP SYN-flood attacks were detected using deploying malicious
the most popular RL approaches, overtaking Deep-Q learning. It hosts and variations of benign hosts in the simulated testbed.
is a policy gradient method that is used to train policies in a Q-Learning is also explored by Phan et al. in their DoS defense
variety of prominent RL-based applications [177]. It involves framework named Q-Mind [181] in SDN. The Q- Learning-
gathering a small sample of the environment and using that based agent controls the anomaly classification system based on
sample to update the decision-making policy. SVM, SOM, and RF. A module named application operator and
Sampaio et al. [178] emphasize the use of RL and Network scheduler selects the optimal features from the collected data and
Function Virtualization (NFV) architecture for detecting chooses appropriate ML algorithms to classify each source IP
anomalies in SDN. The authors suggested that network metrics address into a normal or malicious one.
be collected and categorized into profiles, each with a series of Table VII presents a tabular summary of the aforementioned
actions that handle functions through RL, NFV, and an SDN reviewed articles that depicts the objective of the study, adopted
controller. Based on the rewards for individual actions, authors RL based ML-DL algorithms for building IDS solution, used
have set up the anomaly detection policies. They have load dataset for the task, core feature selection, chosen SDN
balanced the traffic flow in an online manner without any controller, and the attack classification type, corresponding IDS
supervision. Their model also detects honeypots by initiating a domain along with their simulated testbed. In the next section,
Linux bot running with secure shell and telnet service. we discuss those studies which have used DL-based algorithms
Zolotukhin et al. [179] propose an RL-based technique for to develop IDS solutions specific to SDN.
attack detection and real-time dynamic reconfiguration of the
network by redirecting the SDN flows to multiple security VI. DEEP LEARNING MODELS BASED IDS IN SDN
middle boxes. They have calculated the maximum number of Feature-based shallow ML detection schemes are incredibly
packets sent to a host and created a set of rules defining threshold resource-intensive, and their efficacy in intrusion detection
values for different processes. The snort virtual appliance detects performances in large-scale SDN is not very reliable [182].
any amount exceeding the threshold volume. They adopted a Recently, DL-based models have gained popularity over
centroid-based clustering method to detect anomalous payload. traditional ML models because of higher accuracy and precision.
18
TABLE VII
SUMMARY OF THE REVIEWED REINFORCEMENT LEARNING-BASED ML MODELS TO DETECT INTRUSION IN SDN
Objective Algorithm Dataset Controller Testbed Features Selection (FS) FS Approach Classification IDS Domain Ref.
Type
Usage of RL and NFV in RL Self-generated POX Mininet Not Mentioned. Not Not Mentioned Flow-based [178]
SDN for Anomaly using Mininet Mentioned.
Detection. platform along with
Docker.
Attack detection and DQN, Self-generated OpenDaylight Not Mentioned Port, TCP flags, Packet size, Manual Multiclass Flow-based [179]
alleviation using SDN PPO using regular Packet count, Security logs Selection. Classification: Packet-based
flow through redirection network traffic. and alerts, Protocol, and SSH password
into virtual appliances. SDN flows. brute-force,
Slowloris DDoS,
DNS Tunneling.
TCP SYN-flood and Neural Fitted Simulated Traffic. OpenDaylight Mininet Not Mentioned. Not Binary Flow-based [180]
Advanced Persistent Q-Learning Mentioned. Classification:
Threats (APT) detection TCP SYN-flood
using RL based agent. class and APT
attack.
Develops a Defense Q-Learning Simulated Traffic. ONOS MaxiNet [183] 10 Features: PCA with Binary Flow-based [181]
mechanism for DoS Average packets/flow, SVM, Classification: Statistics-
attack by incorporating average packet size/flow, Binary BAT Normal and based
packet change ratio, flow with RF. DoS.
the optimal policy
change ratio, average
resulting from the Q- duration/flow, percentage of
Learning agent pair- flows, growth of
different ports, average flow
inter-arrival time, fraction of
TCP flows over total
incoming flows and entropy
of incoming flows.
Deep RL-based traffic DDPG, Generated traffic OpenDaylight Self-Constructed. Not Mentioned. Not Binary Flow-based [184]
sampling for several MDP using Iperf, and Mentioned. Classification: Packet-based
traffic analyzers in SDN. Hping3 tools. Normal and
Malicious.
In IDS, many authors successfully applied deep learning models single layer neural network because, through various layers, each
for classification tasks. DL-based models generally consist of layer creates features that are conceptual and represent the
complex and wide neural networks. DL-based models can extract complex association among those. It also means that the run time
a feature from the input data and do not require feature complexity and training of the model are computationally costly.
engineering. This is one of the significant reasons why DL
models are becoming more popular day by day. DL models can Recurrent Neural Network (RNN)
also be classified as SL-based models and UL-based models. The
most common SL-based DL models are CNN, RNN, DNN, and
DBN. On the other hand, RBM, Stacked Auto Encoder, and
Generative Adversarial Network (GAN) are the UL-based
models.
A. SL Based DL Algorithms
Below, we briefly discuss some commonly used SL-based DL
algorithms and review the existing literature utilizing these
algorithms for IDS solution in SDN.
Deep Neural Network (DNN)
DNN is a feedforward architecture with numerous hidden Fig. 12. A generic RNN structure.
layers. There is only one hidden layer in a shallow neural
network, there are at least two or more hidden layers, as shown RNN is designed to model contextual/sequential data by
in Fig. 11. The performance of DNN is excellent compared to a expanding the functionalities of the conventional feed-forward
ANN. RNN consists of the input unit, hidden and output layers,
where the memory components are the hidden layers. Every unit
in a RNN obtains the current state as well as the previous states
to extract contextual information to model the sequential data.
Without ambiguity as depicted in Fig. 12, if the network's initial
input is X and the output is S, the network is fed both S and X1
(i.e., the next input in the sequential dataset) for the next round
of learning. By doing this, the data context (previous inputs) is
retained along with the network's training. The distributed hidden
layers allow the RNN to store previous information efficiently,
Fig. 11. A generic DNN architecture.
making it a powerful tool. LSTM and GRU are the two variants
19
of RNN that try to overcome the short-term memory problem of have also assessed their model in terms of resource utilization,
RNN by using a mechanism named as Gates. Gates are basically latency and throughput.
neural networks that control the flow of data through the Albahar [189] presents an RNN based DL-based model on a
sequence chain. novel regularization method called RNN-SDR by decaying the
Convolutional Neural Network (CNN) weights according to the calculated standard deviation of weight
CNNs are neural networks with one or more convolutional matrices and then matches the result through its predecessor. The
layers that are primarily used for image processing, detection, proposed system is a 3-part framework collects flow information
segmentation, classification-related tasks. Convolution and at stage-1. At stage-2, using the novel regularization method it
pooling are two primary procedures that are often present in detects anomaly, and based on the detection at stage-2, the
CNN. The convolution operation with multiple filters is capable mitigation module (i.e., stage-3) drops or forwards the packet.
of extracting features (i.e., feature map) from the dataset while Li et al. [190] propose a DL model to distinguish DDoS
preserving their spatial information. Pooling, also known as attacks in the paradigm of SDN. Their system is comprised of an
subsampling, is a technique for reducing the dimensionality of input layer, forward and recursive layer, a fully connected hidden
extracted features (feature maps) created by the convolution layer, and finally, the output layer. In their model, they have
operation. A typical CNN architecture is shown in Fig. 13, where made use of RNN, LSTM, and CNN. They have used the time
every input image is processed through multiple layers of window concept for data inputting to the model.
convolution and pooling of different kinds and filters before Boukria and Guerroumi [191] propose a DNN-based IDS
being passed to the fully connected layers. solution using the CICIDS2017 dataset in a Mininet environment
set up using an ONOS controller [192]. Letteri et al. [193] also
Supervised DL BASED IDS In SDN proposed a MLP-based botnet detection method in SDN with a
Now, we analyze some of the supervised DL-based IDS in subset of SDN-specific HogZilla dataset.
SDN. Kurochkin and Volkov [194] propose a GRU-RNN based
Tang et al. [185] present a DL scheme for flow based anomaly model using a more advanced and practical attack-oriented
recognition method in SDN with an input layer, 3 hidden layers dataset named CSE-CIC-IDS2018. The model achieved an F1-
and lastly an output layer. The model achieved 75.75% accuracy score of 1.00 in detecting DDoS attacks. However, it yields a low
in detecting flow traffic-based anomaly. detection score in web and infiltration labeled attacks.
Tang et al. [186] have extended their previous work [185] by Novaes et al. [195] propose an anomaly recognition and
proposing a GRU-RNN facilitated IDS for the SDN paradigm mitigation oriented modular system for detecting port scan and
and attained an accuracy of 89%, which is improved by 13.25% DDoS attacks by utilizing LSTM and Fuzzy inference logic
from their previous work. The GRU-RNN acquires the long-term algorithm in the SDN environment. The authors quantified the
contextual representations better, which yields higher anomaly network attribute using the entropy measurement and then used
detection rate. LSTM to predict the pattern of each feature of normal traffic
A DL-based botnet detection method is presented by Maeda et [12]. Its 1st module is the classification module that uses LSTM
al. [187]. The proposed system initially detects the infected host to predict ordinary network traffic activity. The 2 nd module is
and then separates that host using SDN. For detecting malware, responsible for detecting anomalous activities, and it uses the
training is conducted using the data obtained from the botnet BCI theorem to dynamically create a normality threshold,
traffic collected on the traditional network and afterward testing followed by Fuzzy logic to classify the presence of an anomaly
the detection performance. Botnet traffic is retransmitted to at a specific point in the analysis. The system's third module is in
isolate a bot-infected device in the SDN, and connectivity with charge of mitigating observed irregularities, intending to
the source IP defined by the ML classifier is clogged and minimize the damage caused by an intruder.
secluded. Gadze et al. [196] analyze the DL-based models' performance
DeepIDS, a flow based Deep Learning based IDS in SDN model for identifying and mitigating DDoS attacks in SDN. The
is proposed by Tang et al. [188]. Using DNN and GRU-RNN primary focus of their investigation is to detect UDP, TCP, and
they have implemented the DeepIDS in a POX controller. They ICMP flood attacks. LSTM and CNN have been used to
B. UL Based DL Algorithms
Fig. 15. A generic architecture of an RBM.
Now we briefly discuss some of the commonly used UL-based
DL algorithms and review the existing literature utilizing these
Unsupervised DL BASED IDS In SDN
algorithms for IDS solution in SDN.
Now we analyze some of the unsupervised DL-based IDS in
SDN.
AutoEncoder (AE) To create a multi-vector DDoS detection method, Niyaz et al.
AEs are unsupervised DL technique that learns a compressed [202] have used a Stacked Auto-Encoder (SAE). Their model
distributed representation of the given data mainly focusing on also outlines whether a received traffic is regular or attack
dimensionality reduction. It can learn Non-Linear (NL) oriented. The model reduced the collection of feature attributes
transformations using NL activation function in multiple layers extracted through the network traffic headers to increase the
providing many representations of diverse dimensions [200], recognition performance and lessen the FAR.
making it an alternative for PCA. It is composed of two An adaptive pooling and sFlow-based sampling scheme for
symmetric modules namely, encoder and decoder, and a code identifying DDoS attacks in IoT network was proposed by Ujjan
segment, as shown in Fig. 14. The encoder collects features from et al. [203]. They have used a snort-based IDS along with SAE
the input data, the decoder recreates the data from the features for the detection process between normal and malicious traffic.
collected. The code segment holds the extracted features. There
21
Dawoud et al. [204] propose an unsupervised method for it produces an accuracy rate of 94%, which is greater than the
anomaly detection in SDN. At the first stage, they have employed PCA and SVM.
AE algorithm to minimize the reconstruction error of input Shu et al. [208] demonstrate an IDS for Vehicular Ad Hoc
samples. In the second stage, clustering was done using K-Means Networks (VANETs) by installing a distributed SDN controller
algorithm to cluster normal and abnormal traffic. on each base station to distinguish regular network traffic and
By exploiting the collective intelligence between the data and malicious network traffic. Using the full network flow
control plane of SDN, Han et al. proposed a framework named information, they used GAN to jointly train numerous SDN
Overwatch [205]. It detects DDoS attacks by utilizing controllers for the entire VANET without directly trading their
autoencoder along with the softmax classifier. The framework sub-network flows. This IDS approach allows distributed SDN
also decreases overhead in the southbound interface of SDN. It controllers to detect their sub-network flows separately, reducing
divides defensive functions collectively between the data and communication and computation overheads.
control planes, allowing both planes to detect and defend against Mohanapriya and Shalinie demonstrate a DDoS detection
DDoS attacks at various levels. method based on RBM [209]. The suggested approach is divided
In another study, Novaes et al. [206] have developed a into two phases: data acquisition and attack detection. Flow
detection and prevention system in SDN based on adversarial collector captures incoming traffic flows from data plane
training, which leverages the GAN framework to identify DDoS switches and saves them in the database during the data
attacks. The adversarial training makes the system less collection step. The hit count and energy consumption rate are
vulnerable to adversarial attacks. They also compared the determined initially in the attack detection step. The RBM model
proposed system's performances to those of other DL- starts for a particular MAC address if the hit count exceeds the
based techniques for detecting DDoS in SDN, such as CNN, average threshold value and the energy consumption rate is
LSTM, and MLP. The system is divided into two phases. They higher than another threshold.
assessed the suggested method for detecting UDP flood attacks
in an SDN environment with high transmission rates in the first Table VIII presents a tabular summary of the aforementioned
stage. The system performance for identifying DDoS attacks reviewed articles that depicts the objective of the study, adopted
against various applications is evaluated in the second stage. DL algorithms for building IDS solution, used dataset for the
In [35], Dawoud et al. demonstrate a reliable anomaly task, core feature selection, chosen SDN controller, and the
detection system for an SDN-based IoT network. IoT devices are attack classification type, corresponding IDS domain along with
positioned at the lowest layer of their proposed architecture, their simulated testbed.
whereas SDN layers such as control and forward layers are
located at the top of the IoT devices. The detection system resides In the next section we discuss those studies which have
at the controller layer and uses RBM to interface directly with adopted hybrid approaches to develop IDS solutions specific to
the network in their proposed system. According to the authors, SDN.
the deployment of IDS at the application layer is unable to avoid
the controller threats. This approach employs a two-layer RBM
network with hidden and visible layers, the latter of which
comprises 41 nodes equal to the characteristics of the KDD'99
dataset. The tests of this anomaly detection system revealed that
TABLE VIII
SUMMARY OF THE REVIEWED DEEP LEARNING-BASED MODELS TO DETECT INTRUSION IN SDN
Objective Algorithm Dataset Controller Testbed Features Selection (FS) FS Classification Type IDS Ref.
Approach Domain
Securing SDN-IoT RBM KDD’99 Not Self-Constructed All 41 Features of KDD’99 NA Binary Classification: Flow-based [35]
network through DL Mentioned dataset. Normal class and
method. Anomaly class.
Detecting Intrusion in DNN NSL-KDD Not Self-Constructed Duration, Protocol type, Manual Multiclass Flow-based [185]
SDN using a DNN. Mentioned. Src/Dst. bytes, Server count Selection Classification:
and Dst. Host Same Source Normal, DoS, R2L,
Port Rate. Probe, U2R and
Unknown Attacks.
DDoS Attack SAE Collected from a POX RIT and GENI 68 features, extracted for NA Multiclass Flow-based [202]
Recognition System. real network [207] TCP flow, UDP flows and Classification: Packet-
scenario and a ICMP flows. Normal and 7 class of based
private network DDoS attacks.
Testbed.
Develop a GRU-RNN GRU-RNN NSL-KDD POX Not Mentioned 6 Features - Duration, NA Binary Classification: Flow-based [186]
based IDS solution in Protocol type, Src/Dst. Legitimate class and
SDN. bytes, Server count, and Anomaly class.
Dst. Host Same Src. Port
Rate.
22
TABLE VIII (Continued)
Objective Algorithm Dataset Controller Testbed Features Selection (FS) FS Classification Type IDS Ref.
Approach Domain
Detecting Botnets in MLP CTU-13 and ISOT RYU Not Mentioned Statistical, IP, TCP, UDP NA Binary Classification: Session- [187]
SDN. and Raw Feature Set. Normal class and Botnet based
class. Flow-based
Deep Learning based DNN NSL-KDD POX Cbench [210] Basic, Traffic and Mixed NA Multiclass Flow-based [188]
IDS solution in SDN. GRU-RNN Feature Set. Classification:
Normal, DoS, R2L,
Probe, U2R.
Developing an RNN RNN KDD99 Beacon [211] Mininet Protocol Type, NA Multiclass Flow-based [189]
based IDS for SDN. NSL-KDD and Service, Duration and Flag. Classification:
UNSW-NB15 Normal, DoS, R2L,
Probe, U2R.
DDoS attack DNN ISCX 2012 Not Not Mentioned 20 Features-Flow based. NA Binary Classification: Flow-based [190]
Detection using Deep Mentioned. Normal class and DDoS Statistics-
Learning Method in attack. based
SDN.
Detection of DDoS SAE Self-Generated RYU Mininet 18 Features – TCP Flows NA Binary Classification: Flow-based [203]
Attack using sFlow and using Mininet 15 Features – UDP Flows Normal class and DDoS
Adaptive polling Virtual IoT 10 Features – ICMP Flows class.
sampling method. Topology.
DNN-based IDS solution MLP CICIDS2017 ONOS Mininet 79 Features-Flow based. Min/Max Multiclass Flow-based [191]
for SDN paradigm. Scaler Classification:
Technique Normal, DDoS, DoS,
PortScan, Web Attack,
Brute force, Bot,
Infiltration.
DNN-based Botnet MLP HogZilla Not Not Mentioned 22 Features-Flow based. Manual Binary Classification: Flow-based [193]
detection Mentioned. Selection Normal and Botnet.
in SDN.
IDS solution for SDN GRU-RNN CSE-CIC-IDS2018 Not Not Mentioned 80 Features-Flow based. NA Multiclass Flow-based [194]
and evaluate different Mentioned. Classification:
ML algorithms Normal, DDoS, DoS,
performance. Infiltration, Web Attack,
Brute force, Bot.
Building a modular LSTM CIC-DDoS2019 Floodlight Mininet Time-stamp Features. LSTM Multiclass Flow-based [195]
architecture to detect FUZZY [212], [213] Classification: Packet-
Port Scan and DDoS INFERENCE Normal, DDoS, Port- based
attack in SDN. LOGIC Scan.
Investigating the RNN Simulated Floodlight Mininet 7 Features: NA Binary Classification: Flow-based [196]
performance of DL- LSTM Src/Dst. IP address, Normal and DDoS. Statistics-
based models in DDoS CNN Transmission protocol, based
Delay, throughput, Number
attack detection
of packets, Number of hosts.
Developing a 3-tier IDS CNN Not mentioned. Not Not Mentioned 6 Features: CNN Binary Classification: Flow-based [197]
and prevention Type-2 Fuzzy Mentioned. Protocol type, Transport Normal and Malicious.
framework through protocol, Src/Dst. IP
address, Src/Dst. port no.
validation of user, packet
and flow of the network
in SDN-IoT paradigm.
CNN-based DoS attack CNN KDD CUP 1999 Not Not Mentioned. 41 Features – KDD CUP NA Binary Classification: Flow-based [198]
detection. RNN CSE-CIC-IDS2018 Mentioned. 1999 Benign & Attack.
78 Features - CSE-CIC-IDS Multiclass
2018 Classification:
Benign, Hulk,
SlowHTTPTest,
GoldenEye, Slowloris,
LOIC-HTTP, HOIC.
Evaluating ML methods RF NSL-KDD Not Not Mentioned Nominal, Numeric and RF Multiclass Flow-based [199]
impact in flow-based GRU-LSTM Mentioned. Binary Feature Set. Classification:
anomaly detection. Normal, DoS, R2L,
Probe, U2R and
Unknown Attacks.
Detection and prevention CNN, LSTM, Self-Generated RYU Not Mentioned Packet length sequence and NA Binary classification: Flow-based [214]
mechanism of SSH MLP, SAE using synthetic packet header information Normal and Attack.
brute-force and DDoS topology.
attacks in SDN.
Synthesized attack GAN Self-Generated Not GENI [215] Not Mentioned. GAN Binary Classification: Flow-based [216]
generation using GAN in KNN using synthetic Mentioned. RF Benign and Suspicious. Packet-
SDN test the IDS against RF topology. based
those attacks.
Evaluating UL based AutoEncoder KDD’99 Not Not Mentioned All 41 Features of KDD’99 NA Binary classification: Flow-based [204]
AutoEncoder, and K- K-Means Mentioned. dataset. Normal and Abnormal.
Means algorithm to
recognize anomalies in
SDN.
Prevent DDoS attacks AutoEncoder Self-generated RYU Self-Constructed 16 Features- TCP, UDP, and NA Multiclass Flow-based [205]
using a cross-plane Softmax real-time network with real ICMP based. Classification:
framework that uses the traffic. hardware setup. Normal, UDP flood,
collective intelligence of SYN flood, ICMP flood.
both the data and control
plane.
23
TABLE VIII (Continued)
Objective Algorithm Dataset Controller Testbed Features Selection (FS) FS Classification Type IDS Ref.
Approach Domain
GAN-based DDoS GAN CIC-DDoS 2019 Floodlight Mininet 6 Features: Manual Multiclass Flow-based [206]
detection and prevention LSTM Quantitative features: Selection Classification:
mechanism in SDN. CNN bits and packets. Normal, NTP, DNS,
MLP Qualitative Features: LDAP, MSSQL,
Source IP & Ports. NetBIOS, SNMP,
Destination IP & Ports. SSDP, UDP, UDP-Lag,
WebDDoS, SYN, and
TFTP.
A DL-based GAN KDD’99 Not Not Mentioned All 41 Features of KDD’99 NA Binary classification: Flow-based [208]
collaborative IDS for NSL-KDD Mentioned dataset Normal and Attack.
VANET.
A GRU-based DL GRU CIC-DDoS 2019 Not Not Mentioned 83 Features Manual Binary classification: Flow-based [217]
system against DDoS FCN CIC-IDS-2018 Mentioned Selection Normal and Attack.
attack in SDN.
RBM-based DDoS attack RBM Self-generated POX Mininet Not Mentioned NA Binary classification: Flow-based [209]
detection in SDN. using synthetic Normal and Attack.
topology.
24
It fuses essential features using the self-attention process and provides feedback to the generator for any modification of
ultimately detects using an FCN. weights to create sufficient samples to dodge the IDS, and an
Elsayed et al. proposed a new hybrid DL-approach based on intrusion detector that manages both OF and Non-OF traffic. The
CNN and SD-Reg, a new regularizer technique [228]. The model generated attacks were used against IDS built with KNN and RF.
incorporates the CNN architecture as well as machine learning The detection performance of the IDS drastically reduced when
methods (SVM, KNN, and RF). CNN is used to extract the tested against GAN-generated attacks.
deeper representations of the data features, while ML methods Combining three supervised and one unsupervised ML
are used to accomplish the classification task. The new algorithm, namely KNN, NB, SVM, and SOM, Deepa et al. [232]
regularization technique avoids the risk of overfitting the model. present an ensemble model for recognizing DDoS attacks in the
A hybrid two-module DL-based model is presented by Garg SDN controller. By creating a Mininet virtual setup and a POX
et al. [229] detects anomaly for abnormal detection of flow in the controller, they have created a virtual network setup, then applied
sector of social multimedia. For anomaly detection module, it the CAIDA 2016 dataset into the network consisting of TCP,
uses enhanced RBM and Gradient Descent based SVM to ICMP, and UDP packets. A time difference of 0.004 sec between
identify anomalous activities. Their module contains two parts, the source and the destination is chosen as the threshold value to
namely selection of features and classification of anomaly. In distinguish between attack and regular traffic. In their system,
addition to the anomaly recognition module, they have also the SL-based models are passed through traffic, and the type of
suggested a method that safeguards the frequently carriage of the traffic is identified. If a novel type of attack is identified, the very
multimedia content over the SDN paradigm. same supervised learning systems is carried through the
Khan and Akhunzada [230] propose a hybrid deep learning unsupervised configuration to recognize traffic, and the
model for the detection of malwares in IoMT. The model is connection is then terminated.
composed of CNN and LSTM. The CNN models extract the local Javed et al. propose a DL-based hybrid method by
features and pass the output to the LSTM model to acquire more incorporating the DNN, LSTM, and GRU algorithms [233] to
independent features to train the hybrid model. detect cyber-attacks in the IoT environment. In their approach,
By configuring the sampling rate for each switch, Kim et al. SDN's programmable control plane accommodates the hybrid
[184] propose a deep reinforcement learning-based traffic intrusion detection model. The proposed model consists of
monitoring system in an SDN environment. They utilized a deep several layers. DNN-LSTM is made up of two layers, having 500
deterministic policy gradient-based method to manage MDPs and 300 neurons, respectively. They've also added a DNN-GRU
with continuous action spaces to address intrusion utilizing real- layer of 200 neurons. In the output layer, Softmax is employed.
time traffic analyzers and monitoring findings dynamically. The The model achieved an efficient and accurate IDS solution by
suggested system learns a sampling resource distribution strategy consuming a very little testing time of 9.33 ms.
based on selected traffic inspection findings received from Tan et al. [234] suggest a hybrid DDoS detection trigger
various traffic analyzers under the uncertainty of flow mechanism by merging K-Means and KNN on the SDN data
distribution. plane. This technique counts the rate at which packet_in
Jiaqi et al. [231] propose an IDS solution for 5G enabled SDN messages are sent on switches by utilizing the CPU resources of
paradigm. For feature selection using sub features of the dataset, the switches. It notifies the controller to identify the abnormality
it utilizes RF and combines K-Means with the AdaBoost when it detects the possibility of a DDoS attack, allowing the
classifier to classify flows. A comparative analysis of balanced controller to respond quickly to the detection trigger mechanism.
and imbalanced data by evaluating cross validation technique It comprises a training data processing module based on the K-
results was also performed. Means algorithm and a traffic detection module based on the
AlEroud and Karabatis [216] propose a GAN-based method KNN algorithm. The K-Means technique is only used to
that generates synthetic attacks in SDN. Their method collects categorize related instances into distinct categories during the
flow entries sent back and forth between the controller and OF training phase. The measured instance is first normalized in the
switches. Similarity analysis of those OFs flow was done against detection phase. The distances between that instance and the
the non-OFs flow. They have hypothesized that the sampling cluster centers are then determined. Finally, the measured
flow entries of OFs and testing those using appropriate IDS can instance is classified as normal or abnormal based on the labels
be used to determine threats on SDN. For data generation, they of the k points nearest to it [16].
have used two samples. The first sample was collected from a By combining entropy and C4.5 algorithm to detect DDoS
dataset of one hour of malicious traffic from a DDoS attack. Only flooding attack in SDN, Sudar and Deepalakshmi [235] have
IP packets are used in the second sample. Both OF and non-OF proposed a two-level IDS. A suspicious detection module and a
data were used to generate attacks. The GAN structure in their C4.5 classification module make up the proposed system. In
study consists of a Generator network which creates an agitated level one, an entropy-based approach is suggested to identify
form of attack examples, a Discriminator network which DDoS flooding attacks early on by temporarily interrupting a
25
specific flow. A C4.5 approach based on ML is presented in level of features make the RF much more precise than the DT
two to identify the attack by assessing additional attributes and algorithm. RF is suitable when we have a larger dataset, and
sending a permanent notification to drop the packets. To identify interpretability is not our core concern.
DDoS attacks, the suspicious detection module analyzes the
entropy of the IP addresses of the source to a threshold. The
retrieved characteristics are evaluated, and a DDoS attack
classification is done in the C4.5 classification module.
Table IX presents a tabular summary of the aforementioned
reviewed articles that depicts the objective of the study, adopted
Hybrid (ML+DL) algorithms for building IDS solution, used
dataset for the task, core feature selection, chosen SDN
controller, and the attack classification type, corresponding IDS
domain along with their simulated testbed.
In the next section, we discuss those studies which have used
ensemble-based approaches to develop IDS solutions specific to
SDN.
SOM-based methods in SOM Caida DDoS POX Not Mentioned 5 Features: Entropy of Manual Binary Classification: Flow-based [164]
DDoS flooding attack KNN Attack 2007 [241] source IP, entropy of source Selection Normal and Attack.
detection using SDN. port, entropy of destination
port, entropy of packet
protocol, total no. of
packets.
Flow‑based 5‑level KNN NSL-KDD POX [30] Not Mentioned 5 Features: Duration, Manual Multiclass Flow-based [220]
hybrid IDS in SDN. Protocol type, Src. bytes, Selection Classification:
Dst. bytes, and Server count. Normal, DoS, R2L,
Probe, U2R and
Unknown Attacks.
Developing a hybrid DL LSTM CICIDS2017 Not Not Mentioned 83 Features-Flow based. NA Multiclass Flow-based [221]
based Reconnaissance CNN Mentioned Classification:
and Surveillance Benign, Botnet, Port
Recognition method on
Scan, Cross Site
the control plane of SDN.
Scripting, Brute force.
A transformer-based Transformer CICDDoS2019 Not Not Mentioned 76- Flow features NA Binary classification: Flow-based [225]
hybrid IDS mechanism in CNN Mentioned Normal and DDoS.
SDN. FCN
Effective Defense SOM, SVM, CAIDA and Not Self-Constructed 10 Features: Not Binary classification: Flow-based [226]
mechanism to detect and History- Synthetic data Mentioned Flow duration, Packet Mentioned Normal and DDoS. Statistics-
DDoS attack in SDN- based IP using BoNeSi. number, Byte number, based
Protocol, Active time,
based cloud. filtering.
Priority, Flag, Flow number
and Transferred packet per
flow.
Deep RL-based traffic DDPG, Generated traffic OpenDaylight Self-Constructed Not Mentioned. Not Binary Classification: Flow-based [184]
sampling for several MDP using Iperf, and Mentioned Normal and Malicious. Packet-based
traffic analyzers in SDN. Hping3 tools.
A hybrid-CNN based CNN UNSW-NB15 Not Not Mentioned 42 – Flow features N/A Multiclass Flow-based [227]
abnormal flow detection FCN KDD’99 Mentioned Classification:
model in the SDN-Based Normal, DoS, R2L,
Smart Grid. Probe, U2R.
A novel hybrid model for CNN InSDN Not Not Mentioned 48 – SDN specific flow NA Both Multiclass and Flow-based [228]
ids in SDN-based on KNN Mentioned features Binary classification.
CNN and a new RF Binary: Normal and
regularization method. SVM Attack.
Multiclass: Normal,
U2R, Web, Probe,
Password guessing, DoS
(HULK, TorshHammer,
HTTP-Flood), DDoS,
and Botnet.
Suspicious Flow RBM Real-time data Not Not Mentioned Real-time: 35 features. 10 RBM Multiclass Flow-based [229]
Recognition in SDN. Gradient traffic and KDD99 Mentioned basic features, 8 content- Classification:
Descent based benchmark dataset. based and 6 host-based Normal, DoS, R2L,
SVM features. Probe, U2R and
KDD99: 41 features. Unknown Attacks.
A hybrid DL-based SDN- CNN IoT-23 [242] Floodlight, Not Mentioned 24 – Flow features NA Binary classification: Flow-based [230]
enabled malware LSTM POX, and Normal and Malware.
detection framework for Open daylight
IoMT.
IDS solution for 5G RF, KDD99, Not Not Mentioned KDD99 - 41 Features RF Multiclass Flow-based [231]
enabled SDN paradigm. K-Means, NSL-KDD Mentioned NSL-KDD - 23 Features Classification:
AdaBoost Normal, DoS, R2L,
Probe, U2R.
DL-based hybrid IDS DNN-LSTM CIC-DDoS-2019 Not Not Mentioned 80 Flow features. N/A Multiclass Flow-based [233]
solution in SDN-IoT + Mentioned Classification:
environment. DNN-GRU Normal, SYN, PortMap,
DrDoS_MSSQL,
DrDoS_SSDP,
WebDDoS, WebDDoS,
DR DoS, DrDoS_UDP,
UDP-Lag.
A hybrid trigger KNN NSL-KDD ONOS Mininet 41 – Flow Features K-Means Binary Classification: Flow-based [234]
mechanism-based DDoS + Normal and DDoS.
detection on SDN data K-Means
plane.
A hybrid entropy and Entropy Self-Generated POX Mininet 6 Features: Average C4.5 Binary Classification: Flow-based [235]
C4.5-based two-level IDS + using synthetic number of Packets per Flow, Normal and Attack. Statistics-
solution for SDN. C4.5 tool. Average number of Bytes based
per Flow, Average of
Duration per Flow, Pair
Flows Percentage, Growth
of Single Flows, and Growth
of Different Ports.
27
Shahzeb et al. [243] present a DL-based ensemble model for attack-generation tools. The XGBoost model is trained and tested
classifying DDoS attacks using the ISCX dataset. They provided using the KDD’99 dataset by selecting nine significant features
an ensemble solution by implementing two CNN models. The out of 41 features from the dataset. The proposed XGBoost
authors also claimed that the proposed models are scalable and model achieved 98.53% accuracy.
cost-effective in terms of CPU utilization. The experiment result Sen et al. [249] propose a DDoS attack recognition model by
shows that the proposed model achieved 99.48% accuracy to creating a Mininet testbed for SDN. They have used the sFlow-
identify DDoS attacks. RT network analyzer for traffic monitoring. Their model
Zwane et al. [244] evaluate different ensemble methods to achieved 93% detection accuracy using the AdaBoost classifier.
detect abnormal flows in SDN and compare their performance Van et al. [250] present an anomaly detection framework
with single classifier models. The experiment is conducted using based on the NetFPGA-10G board, including an anomaly-based
a flow-based CIDDS-001 dataset. They used the DT, NB, and IDS based on the J48 algorithm. The suggested framework is
SVM as a single classifier. On the other hand, Bagging, separated into three sections: Input, Processing, and Output. The
Adaboost, RF, and Majority Voting are used as ensemble data and control input ports on the Input unit are used to receive
methods. The accuracy of the ensemble methods is slightly incoming packets. The processing unit handles incoming packet
greater than the accuracy of the individual SL-based non- processing, OpenFlow processing, security processing, and
ensemble methods. The NB model achieved 69.56% accuracy, outbound packet processing. After being processed by the
whereas the bagging version of NB model achieves 70.74% processing components, the packet is transferred to an output
accuracy. queue. The queue delivers this packet to a relevant data output
Zwane et al. [245] propose an ML-based IDS for Tactical Ad port based on OpenFlow protocol routing information. Initially,
hoc Mobile Network (TMANET) that resembles the concept of they conducted five J48 DT analyses on the KDD CUP 1999
SDN. Their proposed model consists of two SDN controllers: dataset. The Bagging method was then used to generate the
local and global. The global controller manages the overall outcomes of five different DTs, and electoral rules were used to
network and different ML methods. SVM, DT, Bagging, choose the final result.
Adaboost, and RF are used as classification methods. On the To predict attacks and effectively reduce the packet drop
other hand, the local controller deals with D2D connection, roles ratio, Alamri and Thayananthan [251] propose an adaptive
of nodes, embedded sampling agent, etc. A flow-based CIDDS- bandwidth control procedure. Their framework consists of three
001 dataset is used to train and test the ML models. Ensemble phases: monitoring, bandwidth control, and attack detection and
method Adaboost performs best among other models with 90.3% alleviation phase. They used a bandwidth management algorithm
accuracy according to the experiment result. combined with an adaptive threshold to reprimand flows that
Yang et al. [246] present a DL-based UL-based model named exceeded the threshold by using a punishment mechanism that
Griffin, to detect SDN anomaly. Griffin is a packet-based confines the bandwidth by half for flow exceeding the threshold,
anomaly recognition system that can revise the model preventing bandwidth exhaustion and ensuring smooth operation
dynamically to adapt to the recent cyberattacks. Griffin of the network even during an attack. They used the XGBoost
architecture has four parts, which are deployed in SDN, utilizing algorithm to analyze and identify traffic as normal or DDoS
an ensemble of AutoEncoders. These four parts are packet using a trigger-based identification and classification strategy.
capture module, feature extraction module, feature mapper They have tested their model in three datasets: CICDDoS2019,
module, and anomaly detector, respectively. Each packet with CAIDA-DDoS and NSL-KDD. They have performed both
nine characteristics is accumulated in packet capture parts. binary and multiclass classification. The binary module classifies
Feature extractor generates statistically significant features. normal and DDoS attacks. The multiclass classifier classifies
Feature mapper subdivides each feature into several instances for Normal, DNS, LDAP, MSSQL, SYN, UDP, NetBIOS, TFTP,
increasing memory efficiency. The anomaly detector is placed in NTP, UDP-lag, and SSDP attack from CICDDoS2019 dataset
the SDN control plane, where the ensemble of AutoEncoders is and Normal, Apache2, Back, Land, Mailbomb, Smurf, Teardrop,
responsible for filtering out the anomalous packet. The model's Pod, Neptune, and Processtable attack from NSL-KDD dataset.
performance was tested with an open data set contributed by Alzahrani and Alenazi [252] explore the tree-based DT, RF,
Yisroel Mirsky [247]. The dataset contains packets with four and XGBoost algorithm to analyze their performance in
different attack types: DoS, MITM, Recon, and Bot Malware. detecting attacks in SDN using only five features of the NSL-
To detect the DDoS attacks in the SDN cloud, a DT-based KDD dataset. XGBoost performs better with a higher accuracy
ensemble method is proposed by Cheng et al. [248]. The authors rate of 96.55% in the binary classification problem and similar
claimed that their proposed eXtreme Gradient Boosting performances in the multiclass problem.
(XGBoost) models exhibit higher accuracy and provide high- Table X presents a tabular summary of the reviewed literature
speed anomaly detection. The experiment is executed in a based on utilizing ensemble models for developing IDS solution
simulated SDN topology using Mininet, and Hyenae is used as for SDN infrastructure.
28
TABLE X
SUMMARY OF THE REVIEWED ENSEMBLE LEARNING-BASED MODELS TO DETECT INTRUSION IN SDN
Objective Algorithm Dataset Controller Testbed Features Selection (FS) FS Approach Classification Type IDS Ref.
Domain
Intrusion Detection in FSLC, Bot-IoT, UNSW- ONOS Mininet UNSW-NB15- 16 Features. Based on Multiclass Flow-based [239]
SDN using Few Shots SVM NB15, and Bot-IoT - 16 Features. Flow entry Classification: Statistics-
ensemble learning, and proposed SDN SDN dataset – 10 Features statistics. DDoS, DoS, Port based
proposing a novel SDN dataset. (Duration, Mean, Standard Scanning, Fuzzing,
specific dataset. Deviation, Summation, Exploits, Fuzzers,
Minimum, Maximum of Reconnaissance,
records duration, packet Generic,
count from src. to dst. and Os_Fingerprint, OS_and
vice versa, byte count from Service_Detection
src. to dst. and vice versa ). Service_scan, Theft.
Developing voting- CART, MLP, UNSW-NB15, Not Not Mentioned UNSW-NB15-49 Features. Manual Binary Classification: Flow-based [240]
based DDoS attack NB, RF, CICIDS2017, and Mentioned CICIDS2017-78 Features. Selection Normal and DDoS.
detection framework KNN, NB NSL-KDD NSL-KDD-41 Features.
against SDN.
DDoS attack detection SVM, CAIDA 2016 POX Mininet Not Mentioned Manual Binary Classification: Flow-based [232]
performance analysis KNN, Specifically. Extraction of Normal and DDoS.
between individual ML NB, qualitative
SOM
algorithm and ensemble and
learning. quantitative
features.
Detection of DDoS CNN ISCX 2012 Not Not Mentioned 4 Features-Packet length, Z-score Binary Classification: Flow-based [243]
attack using CNN in Mentioned Avg. packet size, duration, normalization. Normal and DDoS
SDN and IAT.
Compare the SVC, NB, CIDDS-001 Not Not Mentioned 14 Features-Flow based. Not Multiclass Flow-based [244]
performance of different DT, RF, Mentioned Mentioned Classification:
ensemble methods with Bagging, 5 Classes (normal,
Adaboost, attacker, victim,
single model classifiers.
Majority suspicious, unknown)
Voting.
Design a flow-based SVM, CIDDS-001 Not Not Mentioned 14 Features-Flow based. Manual Multiclass Flow-based [245]
anomaly classifier for DT, Mentioned Selection Classification:
Tactical Mobile Adhoc Bagging, 5 Classes (normal,
Adaboost, attacker, victim,
Network (TMANET)
RF suspicious, unknown)
incorporating with ML
and SDN.
Develop an Autoencoder Open-Source Not Mininet 23 Features-based on RF Not Mentioned. Flow-based [246]
unsupervised DL-based Dataset Mentioned packets size, jitter,
model to intensify the magnitude, and count.
accuracy through
dynamically train the
model.
Detection of DDoS XGBoost KDD’99 POX Mininet 9 Features: Not Multiclass Flow-based [248]
attack using DT based Service, source bytes, Mentioned Classification:
ensemble method packet count, service count, Normal, DoS, R2L,
dst. host count, dst. host Probe, U2R.
service count, dst. host
service rate, dst. host
service error rate
DDoS attack detection AdaBoost, Self-collected Not Mininet 9 Features: Service, TTL, Not Binary Classification: Flow-based [249]
through various ML Bayes Net, dataset generated Mentioned Header Length, Flags, Mentioned Normal and DDoS.
algorithms. NB, SVM, from synthetic Protocols, Data Bytes,
Land, Epoch Time and
MLP, J48, RF topology.
Reply Response Time
Implementing a 3-phase XGBoost CIC-DDoS-2019, RYU Mininet CICDDoS2019 - 20 Information Both Binary Flow-based [251]
IDS solution in SDN to CAIDA-DDoS, Features Gain Classification and
detect DDoS attack NSL-KDD. NSL-KDD - 24 Features Multiclass
CAIDA - 7 Features Classification:
along with a bandwidth
control method utilizing Normal, DoS, R2L,
a threshold function to Probe, U2R.
penalize the corrupted
flow.
Evaluating the attack DT, RF, NSL-KDD Not Not Mentioned 5 Features: Experimental Both Binary Flow-based [252]
detection performance XGBoost Mentioned Duration, protocol-type, Trial-based. Classification and
of the Tree-based DT, source bytes, and service (Manual) Multiclass
RF and XGBoost count Classification:
classifier. Normal, DoS, R2L,
Probe, U2R.
Anomaly detection J48 KDD’99 Not Not Mentioned 41 Features Statistical Multiclass Packet- [250]
using payload analysis Mentioned Analysis on Classification: based
in OpenFlow switches the features. Normal, DoS, R2L, Statistics-
Probe, U2R. based
Other than the reviewed ML-DL-based IDS solutions in SDN, methods [51], [108], [254], [263], [264], fuzzy evaluations
researchers all over the world also adopted numerous other [265]–[267], inference-based methods [257], [268], blockchain-
technologies to detect various attacks in the context of SDNs. For based methods [269]–[271], and honeynet-based methods [71],
instance, statistics algorithms [37], [111], [253]–[255], [134], [272]–[274].
[144], [159], [167], [170]–[172], [226], similarity-based methods In the next section, we summarize the reviewed studies
[256], graph model-based methods [257]–[259], third-party focusing on the learning categories of ML-DL algorithms,
software like Snort [57], [94], [95], [260]–[262], threshold-based detection and mitigation approach, and hyperparameters of
29
utilized ML-DL models as well as their performance evaluation evaluation metrics such as accuracy, TPR, F1-score, recall, and
metrics. FAR. Among different ML-DL algorithms, different supervised
learning algorithms are commonly used with relatively low or
IX. TAXONOMY BASED SUMMARY OF EXISTING medium complexity. On the other hand, different unsupervised
WORK algorithms, supervised and unsupervised algorithms together and
reinforcement learning algorithms can achieve better accuracy
Not all ML and DL algorithms are being used equally in
with relatively higher complexities.
developing IDS. By studying the literature, we have identified
Based on different IDS techniques we have developed an IDS
the commonly used ML and DL algorithms in designing IDS and
taxonomy that has been presented in Fig. 6. After studying the
thus we have developed a taxonomy of ML-DL algorithms
existing ML-DL based different IDSs, we can classify these IDSs
utilized in IDS. The taxonomy is presented in Fig. 7. After
using the IDS taxonomy presented in Fig. 6. In Table XII, we
reviewing all the existing works that use ML-DL algorithms, we
present the classification of the existing works based on the IDS
have prepared Table XI that presents a comparative analysis of
taxonomy presented in Fig. 6. In this table, all the existing works
the existing works based on the ML-DL taxonomy presented in
are categorized into five IDS types, such as flow-based, log-
Fig. 7.
based, session-based, statistical analysis-based, and packet-
For this summarization, we have considered the learning
based since all the existing works mainly focused on those types.
techniques of the ML-DL algorithms, detection and mitigation
Note that among different types of IDS flow-based IDSs are most
approach, cross validation, train test split ratio, and various
common in SDN.
TABLE XI
A SUMMARIZATION OF THE EXISTING WORKS BASED ON ML-DL TAXONOMY, DETECTION APPROACH, MITIGATION APPROACH AND EVALUATION METRICS
Learning Detection Mitigation Cross- Train-Test Split Classification Accuracy/Detection
ML-DL Method FAR Ref.
Category Approach Approach Validation Ratio (%) Rate/F1- Score/Recall/Fitness
DT Accuracy -98.64%
RF Accuracy -92.19%
KNN Accuracy -97.41%
✓ x 5-Fold 90-10 Not Mentioned [121]
SVM Accuracy -99.26%
Multinomial-NB Accuracy -97.68%
LR Accuracy -98.96%
Heteroid Tri-
Training (KNN, ✓ x Not Mentioned 80-10 Accuracy – 80% Not Mentioned [122]
SVN, NB)
RF ✓ x 10-Fold 70-30 F1-Score -87% 12.5% [127]
DT Accuracy -82.48%
✓ x Not Mentioned Not Mentioned Not Mentioned [128]
RF Accuracy -98.75%
SVM ✓ ✓ Not Mentioned Not Mentioned Accuracy -88.7% 12% [129]
F1-Score-92.8%-KNN-ICMP Flood 0.010%-KNN
KNN, SVM ✓ x Not Mentioned Not Mentioned [159]
F1-Score -90.6%-SVM-ACK Flood 0.009%-SVM
DT Accuracy -86.19%
NB Accuracy -87.78%
✓ x Not Mentioned Not Mentioned Not Mentioned [84]
Bayes Net Accuracy -91.68%
Decision table Accuracy -88.52%
KNN ✓ x 10-Fold Not Mentioned Accuracy -97.8% 5.8% [130]
Performed
KNN ✓ x (Fold-Not Not Mentioned Accuracy -84.29% 6.3% [220]
Mentioned)
KNN, SVM, ANN,
✓ x 10-Fold Not Mentioned Accuracy -98.3% (KNN) Not Mentioned [155]
Supervised NB
(ML and DL) RF Accuracy -82%
✓ x 10-Fold Not Mentioned 0.143% [199]
GRU-LSTM Accuracy -88%
RF Accuracy -82.28% 2.49%
✓ x 10-Fold [131]
PART Not Mentioned Accuracy -79.19% Not Mentioned
Fitting Curve Accuracy -89.5%
Not Mentioned
Pattern Recognition ✓ x Accuracy -97.3% < 1% [132]
Not Mentioned
Time Series Accuracy -33%
Accuracy -Flow IDS – 84.78% Flow IDS – 9.99%
SVM ✓ x Not Mentioned Not Mentioned Packet IDS – [133]
Accuracy -Packet IDS-98.86%
5.12%
SVM F1-Score -85.4% 4.7%
DT F1-Score -89.5% 3.5%
RF ✓ x 10-Fold 90-10 F1-Score -96.3% 0.9% [134]
KNN F1-Score -93.9% 1.9%
Bagged Tress F1-Score -96.0% 1.2%
SVM, ID3 DT ✓ ✓ 10-Fold 90-10 Accuracy -97.55% Not Mentioned. [135]
SVM ✓ ✓ Not Mentioned 75-25 Accuracy – 99.8% < 1% [136]
SVM, J48, NB ✓ ✓ Not Mentioned Not Mentioned F1 Score – 93.3% Not Mentioned. [137]
Accuracy – 95.98% (Full 41 Features)
SVM ✓ ✓ Not Mentioned Not Mentioned Not Mentioned. [153]
Accuracy – 87.74% (Selected 9 Features)
SVM ✓ ✓ Not Mentioned Not Mentioned Detection Rate – 99.95% Not Mentioned [154]
Recall – 93.4% (Adaboost)
Bayes Net, NB, Recall – 85.2% (SVM)
SVM, MLP, ✓ ✓ 20-Fold Not Mentioned Recall – 90.8% (J48) Not Mentioned. [249]
Adaboost, J48, RF Recall – 88.5% (BayesNet)
Recall – 83.6% (MLP)
Modified BAT, RF ✓ x Not Mentioned Not Mentioned Accuracy- 96.03% 1.18% [141]
30
SVM Accuracy – 87.883%
KNN ✓ x Not Mentioned Not Mentioned Accuracy – 90.109% Not Mentioned. [142]
DT Accuracy – 91.206%
Accuracy – 80% for Malware. 5.4% - Malware.
SVM ✓ x 10-Fold Not Mentioned [112]
Accuracy – 95% for Normal traffic. 18.5% - Normal.
SVM Accuracy -75.3%
J48 Accuracy -81.5%
✓ x Not Mentioned Not Mentioned Not Mentioned. [143]
NB Accuracy -76.1%
RF Accuracy -80.4%
KNN
XGBoost ✓ ✓ Not Mentioned Not Mentioned Accuracy – 98.21% Not Mentioned. [144]
DT
MLP ✓ ✓ Not Mentioned 80-20 Accuracy – 99.6% 0.84% [191]
MLP ✓ x Not Mentioned Not Mentioned Accuracy – 96.52% Not Mentioned. [193]
GRU-RNN ✓ x Not Mentioned 70-30 F1-Score – 78.14% Not Mentioned. [194]
LSTM-FUZZY ✓ ✓ Not Mentioned Not Mentioned Accuracy- 96.22% 0.25% [195]
LSTM, CNN ✓ ✓ Not Mentioned 70-30 Accuracy-89.63% (LSTM), 66% (CNN) Not Mentioned. [196]
J48 F1-Score-97.30% 0.06%
BayesNet F1-Score-89.24% 0.12%
REPTree F1-Score-98.28% 0.17%
✓ x 10-Fold Not Mentioned [146]
Random Tree F1-Score-97.95% 0.07%
NB F1-Score-98.28% 0.04%
LR F1-Score-91.53% 0.04%
J48, REPTree, RF
Random Tree, SVM, ✓ ✓ Not Mentioned Not Mentioned Accuracy – 95% - MLP 0.0052% [147]
MLP
RF ✓ ✓ 5-Fold 80-20 F1-Score – 98% Not Mentioned. [148]
Accuracy-99.48%
CNN ✓ x Not Mentioned 80-20 Not Mentioned. [243]
F1-Score-99.63%
Accuracy – 99.14% (RF)
DT, SVC, NB, RF,
Accuracy – 99.15% (Adaboost)
Bagging, AdaBoost, ✓ x Not Mentioned 75-25 Not Mentioned. [244]
Accuracy – 99.08% (Bagging)
Majority Voting
Accuracy – 99.09% (DT)
DT Accuracy - 88.70%
SVM Accuracy -88.20%
Bagging ✓ x Not Mentioned Not Mentioned Accuracy -90.10% Not Mentioned. [245]
Adaboost Accuracy -90.30%
RF Accuracy -90.20%
DNN ✓ x Not Mentioned Not Mentioned Accuracy -75.75% Not Mentioned. [185]
GRU-RNN ✓ ✓ Not Mentioned Not Mentioned Accuracy -89% Not Mentioned. [186]
Performed
MLP ✓ x (Fold-Not Not Mentioned Accuracy -98% Not Mentioned. [187]
Mentioned)
DNN Accuracy -80.7%
✓ ✓ Not Mentioned 94-6 Not Mentioned. [188]
GRU-RNN Accuracy -89%
Accuracy -99.5% - KDD 99
RNN ✓ ✓ Not Mentioned Not Mentioned Accuracy -97.39% - NSL-KDD Not Mentioned. [189]
Accuracy -99.9% - UNSW-NB15
ID3 DT ✓ x 10-Fold Not Mentioned Accuracy -95% 15% [139]
DNN ✓ ✓ Not Mentioned 90-10 Accuracy -98% Not Mentioned. [190]
LSTM+CNN ✓ x 10-Fold Not Mentioned Accuracy -98.6% 2.4% [221]
FSLC, SVM, CNN,
NB, Deep Auto ✓ x 10-Fold Random Selection F1-Score – 94% Not Mentioned. [239]
Encoder.
Accuracy – 89.29%,
Voting-CMN ✓ x 70-30
F1 Score - 99.28%
10-Fold 20.2% [240]
Accuracy – 97.77%,
Voting-RKM ✓ x 70-30
F1 Score-96.36%
RF, KNN, SVM, LR ✓ x Not Mentioned 80-20 Accuracy – 99.79% 1.6% [149]
NB, ANN, SVM ✓ x Not Mentioned Not Mentioned Accuracy- 70% (NB), 80% (ANN, SVM) Not Mentioned. [151]
MLP, DT, RF, SVM ✓ x 10-Fold 70-30 Accuracy – 99.9 % (RF) Not Mentioned.
Unsupervised SAE ✓ x Not Mentioned 70-30 Accuracy -95.65% Not Mentioned. [202]
(ML and DL) SAE ✓ x Not Mentioned 80-20 Accuracy -95% 4% [203]
Autoencoder ✓ x Not Mentioned Not Mentioned Accuracy -98% Not Mentioned. [246]
Autoencoder
✓ x Not Mentioned Not Mentioned Accuracy -99% Not Mentioned. [204]
K-Means
31
Autoencoder
✓ ✓ Not Mentioned 65-35 Accuracy -96% Not Mentioned. [205]
Softmax
Accuracy – 98.40% (KDD’99)
GAN ✓ x Not Mentioned Not Mentioned Not Mentioned [208]
Accuracy – 97.76% (NSK-KDD)
HMM ✓ x Not Mentioned Not Mentioned Not Mentioned. Not Mentioned. [167]
RBM ✓ x Not Mentioned Not Mentioned Accuracy – 94% Not Mentioned [35]
SOM ✓ ✓ Not Mentioned Not Mentioned F1-Score – 98.3% Not Mentioned [67]
NB Accuracy -94%
KNN Accuracy -90%
✓ x Not Mentioned Not Mentioned Not Mentioned. [171]
K-Means Accuracy -86%
K-Medoids Accuracy -88%
SOM TPR-94.4% 3.9%
Hybrid Multipass SOM TPR-94.6% 3.9%
(Multiple LVQ1 ✓ x 10-Fold Not Mentioned TPR-95.6% 3.2% [172]
Models) Multipass LVQ1 TPR-95.6% 3.1%
(ML + DL) Hierarchical LVQ1 TPR-98.1% 1.9%
(Supervised + Accuracy – 94.38% (GAN)
Unsupervised) GAN, LSTM, CNN, Accuracy – 94.08% (CNN)
✓ ✓ Not Mentioned Not Mentioned Not Mentioned. [206]
MLP Accuracy – 90.29% (LSTM)
Accuracy – 92.12% (MLP)
Accuracy – 98% (SAE)
SAE, CNN, LSTM, Accuracy – 96.9% (CNN)
✓ ✓ Not Mentioned Not Mentioned Not Mentioned. [214]
MLP Accuracy – 94.3% (LSTM)
Accuracy – 98.3% (MLP)
SVM, NB, KNN,
✓ x Not Mentioned 67-33 Accuracy – 97.14% - SVM-SOM 2.71% [232]
SOM
RBM, Gradient
✓ x Not Mentioned Not Mentioned Accuracy - 99.98% 1.31% [229]
Descent Based SVM
Entropy, C4.5 ✓ x 10-Fold Not Mentioned Accuracy – 95.056% Not Mentioned [235]
kinds of features: primary, content, host-based statistical aspect DoS Neptune, Pod, Teardrop, HTTP, TCP, Bug, Misuse of
Apache2, Back, Mailbomb, ICMP, Syslog, the feature.
and statistical aspects dependent on time. However, The KDD’99 UDP storm, Smurf, Land, Echo.
is an imbalanced dataset with duplicate data, which brings a bias Process table, Arp poison,
Self ping, TCP reset, Ping of
factor in the result set. The significant amount of data replication death, Dos nuke, SSH
prohibits detection methods from providing precise accuracy in process table, SYN flood,
Crashiis, and Syslogd.
attacks like R2L and U2R.
R2L Sendmail, Multihop, Guess Telnet, Pop, Misuse of the
password, Spy, Xsnoop, Phf, FTP, rlogin, feature, Bug,
NSL-KDD: In the NSL-KDD dataset [278], data records of Imap, Snmpguess, Worm, IMAP, HTTP, Misconfiguration
Warezmaster, Warezclient, SMTP, DNS.
various groups are balanced, which eliminates the issue of bias Xlock, Ftpwrite, ncftp,
problems in the classification task. Data records of NSL-KDD netbus, netcat, ppmacro,
sshtrojan, and named.
were taken from KDD99 without duplication. There are basically Probe Satan, Mscan, Saint, SNMP, ICMP, Misuse of the
four types of features presented in NSL-KDD dataset, namely Portsweep, resetscan, queso, TCP, HTTP. feature.
IPsweep, Insidesniffer,
Basic, Content, Time-based, and Host-based features. Major
Mscan, Ntinfoscan, and Is
drawback of this dataset is that it does not comprise any novel domain.
data items, and its data items are backdated to some extent and U2R HTTP tunnel, Load module, User Session. Buffer overflow,
SQL attack, Rootkit, Perl, Bad management
do not match the present network scenario. Thus, attacks like Xterm, Buffer overflow, ps, of Temporary
DoS can be detected smoothly, however, attacks like R2L and yaga, Eject, anypw, casesen, file.
sechole, ntfsdos, and Xterm.
U2R presents a considerable FAR.
33
UNSW-NB15: This dataset includes nine diverse categories profiles: B-profiles and M-profiles. The B- profiles include user
of attacks and a wide category of regular activities in practical behavior such as distribution of packet sizes, number of packets
life. Training set contains 175,341 records, and 82,332 records in each flow, patterns and size of the payload, and request time
present in the test set collected from various forms, attacks, and distribution of protocols including FTP, HTTP, HTTPS, IMAP,
regular records [279]. This dataset solves many of the problems POP3, SMTP, and SSH. An M-Profile, on the other hand,
faced by researchers using previous datasets resulting in a higher unambiguously depicts a security attack scenario. The
detection rate as well as faster training of the model. dataset includes attack scenarios for security threats such brute-
force, web attacks, botnets, and DDoS. With 80 features, it also
ISCX 2012: To generate the dataset the authors used the contains each machine's log and collected network traffic [5].
concept of profiling [280]. The authors used two profiles: named
Alpha and Beta. Alpha is used to generate traffic related to attack CTU-13: This dataset was generated in CTU University,
and Beta is used to generate regular traffic flow. DoS and Brute Czech Re-public [287]. It is one of the most comprehensive
force attacks are two main attack types presented in this dataset. labeled datasets accessible, containing botnet traffic as well as
It has two formats: packet and flow. It contains data traffic regular and background labeled data [259]. The dataset includes
containing an entire packet payload of the protocols: HTTP, botnet traffic as well as regular and background communication
SSH, IMAP, SMTP, FTP, and Post Office Protocol 3. traffic. The traffic capture procedure comprises 13 separate
Nevertheless, the features that were extracted from ISCX 2012 scenarios of different botnet samples.
dataset are not quite enough for ML algorithm’s proper
evaluation. However, only HTTP traffic is included in the InSDN: The InSDN dataset [228] is regarded as one of the
dataset, which does not represent modern traffic, in which most first to build a comprehensive dataset for evaluating IDSs
existing Internet traces are focused on HTTPS traffic [281]. specific to SDN paradigm. The InSDN dataset's regular traffic
includes standard application services, including HTTP, HTTPS,
CIC-IDS 2017: In [281], the authors proposed a new modern- FTP, DNS, Email, and SSH. DoS, DDoS, Probe, Botnet,
day network traffic-based dataset named CICIDS2017. It spans Exploitation, Password-Guessing, and Web attacks are among
over 80 features of the network traffic. It contains two types of the attack types this dataset addresses. Furthermore, these attacks
network traffic: normal and attack for five days in eight different come from a variety of internal and external sources to mimic
files collecting attack types such as brute force, Botnet, PortScan, real-world attack scenarios. The dataset contains a total of
XSS, Infiltration, SQL injection, along with normal traffic. It 361317 occurrences of normal and attack traffic, where 68424
contains whole packet payload with labeled flows in a PCAP occurrences are normal traffic and 292893 occurrences
format. One major drawback of CICIDS2017 dataset is that it has are attack-oriented traffic [228].
class imbalance issues [282]. The number of benign instances is
way too much than other attack categories, which is almost CIC-DDoS-2019: CIC-DoS-2019 is a novel dataset that
83.34%. Thus, opens up the bias issue towards the benign traffic includes a wide range of DDoS attacks. This dataset includes 28
of the ML-DL-based IDS models in SDN. typical network behaviors as well as the most recent prevalent
forms of DDoS attacks [206]. The data has been divided into two
CIDDS-001: CIDDS-001 [283], [284] is a flow-based labeled sections, one for training and the other for testing. For Training,
dataset. It comprises of three log files: attack logs, client WebDDoS, NetBIOS, LDAP, MSSQL, SNMP, UDP-Lag, DNS,
configuration, client logs, also uses two servers, OpenStack SYN, SSDP, NTP, UDP, and TFTP DDoS attacks were executed
server (e.g. mail, web, etc.) and External server (e.g. file and for testing they have executed the SYN, NetBIOS, MSSQL,
synchronization, web server, etc.) [285] for data collection. DoS, LDAP, UDP, UDP-Lag and PortScan attacks. Some other
PortScan, and Brute Force attacks are carried out on an emulated notable datasets that are used in SDN-IDS research are CAIDA,
business network using the OpenStack environment to generate Hogzilla, and ISOT.
malicious traffic flow.
A summary of the aforementioned public benchmark datasets
CSE-CIC-IDS2018: CSE-CIC-IDS2018 [286] is the newest is presented in Table XIV. The comparison was done based on
dataset made accessible by the Canadian Institute for the data collection process, labeling, formatting, number of
Cybersecurity in 2018/2019. The concept profiling was used to features, attack variant and their class balance issues of the
form this dataset [281]. This dataset takes into account profiles collected data
for human operators or agents responsible for creating network Table XV summarizes the reviewed studies that used the
traffic events for numerous network protocols with varying benchmark public datasets discussed in section X and the
topologies. In the dataset, two profiles were categorized, and five assessment criteria/metrics listed in Table X to evaluate the
distinct attack mechanisms were applied. It employs two sorts of efficacy of their proposed solutions.
34
TABLE XIV
SUMMARY OF THE PUBLIC BENCHMARK DATASETS UTILIZED IN IDS: (✓: YES, x: NO)
Dataset Number of Feature Label Metadata Format Attack Number and Name of Traffic + Balanced Instances Year
Features Extraction Tool Diversity Available Attack Types Network Type Training Testing
DARPA TCP Raw files ✓ x Data, ✓ 4 x Not 201 1998
Connections Features need to Packet, DoS, Probe, U2R, and Mentioned
& High- be extracted by Logs R2L.
level the researchers.
Features.
KDD99 41 Pre-processed ✓ x Other ✓ 4 x 4898431 311029 1998
DoS, Probe, U2R, and Emulated
R2L. Traffic
NSL-KDD 41 Pre-processed ✓ x Other ✓ 4 + x 125973 22544 2009
DoS, Probe, U2R, and Small-Scale
R2L. Network
UNSW- 49 Argus and Bro- ✓ x Packet ✓ 9 x 175341 82332 2015
NB15 IDS Tools [288] + Other Fuzzers, Analysis,
Backdoors, DoS,
Exploits, Generic,
Reconnaissance, Worms,
and Shellcode.
ISCX 2012 20 Not Mentioned ✓ ✓ Packet x 4 Realistic x 1167479 629274 2012
+ Flow Brute Force, SSH, network traffic
Infiltrating, HTTP DoS, + Small-Scale
and DDoS. Network
CIC- 83 CICFlow-Meter ✓ ✓ Packet ✓ 7 Realistic x 2830743 2017
IDS2017 [289] + Flow Web based, Brute force, network traffic
DoS, DDoS, Infiltration, + Small-Scale
Heart-bleed, Bot, and Network
PortScan.
CIDDS-001 14 Not Mentioned ✓ ✓ Flow ✓ 4 Both Emulated x 31959267 2017
PortScan, PingScan, and Realistic
Brute-Force, and DoS. network Traffic
+
Small-Scale
Network
CSE–CIC- 83 CICFlow-Meter ✓ x Packet ✓ 7 Realistic x 4525399 2018
IDS2018 +Flow Web based, Brute force, network traffic
DoS, DDoS, Infiltration, +
Heart-bleed, Bot, and Small-Scale
PortScan. Network
CTU-13 Flow-based Argus [290] ✓ ✓ Packets ✓ 8 Realistic x 2821636 2014
Features IRC, SPAM, CF, PS, network traffic
HTTP, DDoS, P2P +
Botnet, and US. [291] Small-Scale
Network
InSDN 83 CICFlow-Meter ✓ ✓ Packet ✓ 7 Realistic x 343939 2020
+Flow U2R, Web attack, Probe, network traffic
Password guessing, DoS +
(HULK, TorshHammer, Small-Scale
HTTP-Flood), DDoS, Network
and Botnet.
CIC- 87 CICFlow-Meter ✓ ✓ Packets ✓ 12 Realistic x 50063112 2019
DDoS2019 +Flow WebDDoS, NetBIOS, network traffic
LDAP, MSSQL, SNMP, +
UDP-Lag, DNS, SYN, Small-Scale
SSDP, NTP, UDP, and Network.
TFTP.
TABLE XV
SUMMARY OF THE DATASETS AND ASSESSMENT/EVALUATION METRICS UTILIZED IN REVIEWED STUDIES IN SDN-IDS: (✓: YES)
Datasets Assessment/Evaluation Metrics
NSLKDD – NK, KDD CUP’99 – KD, UNSWNB15 – UN, InSDN – IN, CICIDS2017 – C7, Accuracy – ACC, Precision – PR, F-Measure – F1, Recall – RC, Receiver Operating
CSECICIDS2018 – C8, ISCX 2012 – IS, DARPA1998 – DA, CIDDS001 – C1, CTU13 – Characteristic – ROC, Precision Recall Curve – PRC, Area Under the Curve – AUC,
Ref. C9, CICDDoS – C10, Self-Collected/Simulated – SC, Others – OT (HogZilla, ISOT, Fitness – FT, True Positive Rate – TPR, False Alarm Rate – FAR, Others – OT (Mean
CAIDA etc.) Absolute Error, Reward, Root Mean Squared Error, CPU Utilization, Bandwidth
Involvement etc.)
NK KD UN IN DA IS C C C C C OT SC ACC PR F1 RC ROC PRC AUC TPR FAR FT OT
1 7 8 9 10
[67] ✓ ✓ ✓
[121] ✓ ✓ ✓ ✓ ✓ ✓ ✓ ✓ ✓
[122] ✓ ✓ ✓ ✓
[127] ✓ ✓ ✓ ✓ ✓
[128] ✓ ✓ ✓ ✓ ✓
[129] ✓ ✓ ✓ ✓ ✓ ✓ ✓
35
[130] ✓ ✓ ✓ ✓ ✓
[131] ✓ ✓ ✓ ✓ ✓ ✓
[132] ✓ ✓ ✓ ✓
[133] ✓ ✓ ✓ ✓
[134] ✓ ✓ ✓ ✓ ✓
[135] ✓ ✓
[136] ✓ ✓
[137] ✓ ✓ ✓ ✓ ✓
[139] ✓ ✓ ✓ ✓ ✓
[141] ✓ ✓ ✓
[142] ✓ ✓ ✓ ✓ ✓
[143] ✓ ✓ ✓ ✓ ✓
[144] ✓ ✓ ✓ ✓ ✓ ✓
[146] ✓ ✓ ✓ ✓ ✓ ✓ ✓ ✓ ✓
[147] ✓ ✓ ✓ ✓ ✓ ✓
[148] ✓ ✓ ✓ ✓ ✓
[149] ✓ ✓ ✓ ✓
[150] ✓ ✓
[151] ✓ ✓ ✓ ✓
[152] ✓ ✓ ✓
[153] ✓ ✓
[159] ✓ ✓ ✓ ✓
[220] ✓ ✓ ✓ ✓ ✓ ✓
[154] ✓ ✓ ✓
[163] ✓ ✓ ✓
[155] ✓ ✓ ✓ ✓ ✓
[169] ✓ ✓ ✓
[170] ✓ ✓ ✓
[171] ✓ ✓
[167] ✓ ✓
[172] ✓ ✓ ✓ ✓
[164] ✓ ✓ ✓
[178] ✓ ✓
[179] ✓ ✓
[180] ✓ ✓
[181] ✓ ✓ ✓
[184] ✓ ✓
[185] ✓ ✓ ✓ ✓ ✓ ✓
[186] ✓ ✓ ✓ ✓ ✓ ✓ ✓
[187] ✓ ✓ ✓ ✓ ✓ ✓ ✓
[188] ✓ ✓ ✓ ✓ ✓ ✓
[189] ✓ ✓ ✓ ✓ ✓ ✓ ✓
[190] ✓ ✓
[191] ✓ ✓ ✓ ✓ ✓ ✓
[193] ✓ ✓ ✓
[194] ✓ ✓ ✓ ✓
[195] ✓ ✓ ✓ ✓ ✓ ✓
[196] ✓ ✓ ✓ ✓
[197] ✓ ✓ ✓
[198] ✓ ✓ ✓ ✓ ✓ ✓
[199] ✓ ✓ ✓ ✓ ✓ ✓ ✓ ✓
36
[202] ✓ ✓ ✓ ✓ ✓
[203] ✓ ✓ ✓ ✓ ✓ ✓ ✓
[216] ✓ ✓ ✓ ✓
[204] ✓ ✓ ✓ ✓ ✓ ✓ ✓
[205] ✓ ✓ ✓ ✓
[206] ✓ ✓ ✓ ✓ ✓
[208] ✓ ✓ ✓ ✓ ✓ ✓
[209] ✓ ✓ ✓
[218] ✓ ✓ ✓ ✓ ✓ ✓
[221] ✓ ✓ ✓ ✓ ✓ ✓ ✓
[214] ✓ ✓ ✓ ✓ ✓ ✓
[225] ✓ ✓ ✓ ✓ ✓ ✓
[226] ✓ ✓ ✓ ✓
[227] ✓ ✓ ✓ ✓ ✓
[228] ✓ ✓ ✓ ✓ ✓
[229] ✓ ✓ ✓ ✓ ✓ ✓ ✓ ✓
[230] ✓ ✓ ✓ ✓ ✓ ✓
[234] ✓ ✓ ✓
[239] ✓ ✓ ✓ ✓ ✓
[240] ✓ ✓ ✓ ✓ ✓ ✓ ✓
[232] ✓ ✓ ✓ ✓
[243] ✓ ✓ ✓ ✓
[244] ✓ ✓ ✓ ✓ ✓
[245] ✓ ✓
[246] ✓ ✓ ✓ ✓
[248] ✓ ✓ ✓
[249] ✓ ✓ ✓ ✓ ✓
[250] ✓ ✓ ✓ ✓
[231] ✓ ✓ ✓ ✓
[251] ✓ ✓ ✓ ✓ ✓ ✓
[252] ✓ ✓ ✓ ✓
[233] ✓ ✓ ✓ ✓ ✓ ✓ ✓ ✓
[217] ✓ ✓ ✓ ✓ ✓ ✓ ✓