Surveyinderscience10 1504IJIE 2020 104642
Surveyinderscience10 1504IJIE 2020 104642
Surveyinderscience10 1504IJIE 2020 104642
net/publication/339771452
CITATIONS READS
0 537
2 authors:
All content following this page was uploaded by K. Muthamil Sudar on 27 May 2020.
1 Introduction
2 Architecture of SDN
Application
Layer Business Applications
NBI
Control
Layer SDN Controller
SBI
Infrastructure
Layer
Network Devices
Providing security and managing security in computer networks is quiet a complex task.
Network administrator has to provide security in all means and to prevent the network
from both internal and external intruders. By applying firewalls in the application layer,
we can restrict unauthorised access within the network. But, firewalls help to prevent the
network environment only by applying predefined security policies.
Even though we have effective mechanisms to handle the security issues, centralised
controller (Abubakar and Pranggono, 2017) leads to security threat for SDN architecture.
In control plane, the controller gives an abstract view to applications so that the
applications can make use of the resources available in the data plane. If the controller
gets compromised, an attacker can modify the rules in the network controller and disrupts
the legitimate users to access the available resources. The major security issues caused by
the attackers in the controller are denial of service, data modification, data leakage,
illegitimate access to the network. In unauthorised access and data modification, an
attacker pretended as a controller, then the attacker could able to manipulate, modify the
network operation and then it would completely take the control over entire network.
In data plane, each OpenFlow switch has its own forwarding table which contains
rules for packet handling. It is possible for an intruder to suspect the action applied for
each packet with the help of packet processing time analysis. For example, time taken by
the single packet to be processed from one port to another port will be smaller than for a
packet to be processed from one port to controller. After identifying the nature of the
packet, an attacker could determine more information about the network. By applying
these techniques, an attacker can generate more number of fake requests towards the
controller. This causes the legitimate users to stop accessing the network resources. This
kind of attack is called data leakage.
In application plane, any third party application can be integrated in the application
layer. So, it is possible to impose malicious application to gain control over the
controller. And also poorly designed applications or buggy applications may cause
serious security issues in SDN architecture. One of the effective mechanisms to handle
the common security issues in the SDN is to integrate the IDS in the SDN architecture
itself.
An IDS plays an important role in providing security for a network infrastructure. The
main function of IDS (Hamed et al., 2018) is to monitor the network environment and
detect malicious activities in that network. An IDS can be generally categorised into two
types namely anomaly detection method and misuse detection method. Both of the
detection mechanisms can classify given data into normal and abnormal data. In misuse
detection method, intrusions can be defined based on the pattern of attacks that are
predefined with the history of previous attacks. This leads to low false positive rate in
prediction. But the problem is misuse detection cannot detect new attacks unless we
update it with new patterns. On the other hand, anomaly detection methods can detect
attacks based on change in normal behaviour of the network. This helps to detect new
Comparative study on IDS using machine learning approaches 19
attacks also. At the same time, anomaly detection leads to high false positive rate.
Generally, misuse detection helps to identify known attacks and anomaly detection helps
to identify unknown attacks based on different features.
The general factors to consider the IDS as efficient one are accuracy, reliability,
detection speed. There are many ways to provide successful IDS such as data mining
techniques, machine learning techniques etc. In that, machine learning provides flexible
solutions for network-based IDS because it can allow the network to take decision such
as whether it is attack or normal without any external interference (Dayal et al., 2016).
Machine learning (Sultana et al., 2018) is the process of making a machine that can
automatically learn from the data and improve with the prior experience. It is categorised
into different types based on the learning style and the functionality of how they work on
new data. Machine learning techniques are commonly categorised into supervised
learning, unsupervised learning and semi-supervised learning. In supervised learning,
machine is trained with labelled data to predict the unknown cases. Supervised learning
algorithms are used for both classification and regression problems. Some examples are
support vector machines, random forest algorithm, linear regression algorithm. In
unsupervised learning, machine is trained with unlabelled data to predict the unknown
cases. Some examples are K-means clustering, association rules, principal component
analysis. In semi-supervised learning, machine is trained with both labelled and
unlabelled data. Some examples are semi-supervised SVM, spectral graph transducer,
Gaussian fields approach. Machine learning techniques (Dayal et al., 2016) are regarded
as one of the prominent solution for effective development of IDS by providing improved
detection rate, low false alarm rate, high positive alarm rate.
6 Datasets background
The commonly used datasets for IDS are DARPA98/99, KDD99 and NSL-KDD. In
KDD99 (Knowledge Discovery and Data Mining) (http://kdd.ics.uci.edu/databases/
kddcup99/kddcup99.html), each connection is labelled as either attack or normal
connection. Totally this dataset contains 39 attack types. Among these, 14 types will be
available in test data only. This dataset contains 41 attributes for each connection. These
41 attributes come under any one of the three following categories namely basic features,
content features and traffic feature. NSL-KDD is a new dataset that was derived from
KDD99. In case of large number of records, experiments can be done using random
samples. Some records are redundant in nature.
To overcome problems identified in KDD99 dataset, a derived dataset, NSL-KDD
was introduced. In NSL-KDD, number of samples is reasonable in case of both testing
and training. Also, there are no redundant records. This helps the experiments to run the
complete set rather than working with only random samples. Attacks defined in this
dataset can be in any one of the following categories.
20 K. Muthamil Sudar and P. Deepalakshmi
In Aung and Min (2017), the authors have used 10% of samples from KDD’99
dataset by applying two algorithms which are K-means and random forest algorithm.
They used K-means algorithm to generate homogeneous dataset and random forest
algorithm to classify the sample as either normal or attack. They have compared the
performance against single random forest versus combination of K-means algorithm and
random forest algorithm. They concluded that prediction accuracy is same for both the
methods but the training time will be comparatively less for K-means than random forest
model as indicated in Table 1.
Table 1 Comparison of performance measures for random forest
Dataset
Methodology used Techniques used Performance
used
Random forest with 10% of Down sampling is used Unbalanced dataset:
feature selection KDD’99 to make the balanced 1.92% error rate
algorithm (Zhang dataset. Balanced dataset:
et al., 2008) Appropriate feature 0.05% error rate
selection technique.
K-means algorithm 10% of K-means algorithm to Training time:
for feature KDD’99 generate homogeneous For single RF:
selection, random dataset. 11,939.73 seconds
forest for Random forest algorithm
classification (Aung For RF-based K-means:
for classification. 5,420.45 seconds
and Min, 2017)
Figure 2 Prediction accuracy of NBC and modified NBC (see online version for colours)
In Wang et al. (2017), the authors have proposed advanced naive Bayes classification
(NBC-A). Naive Bayes classifier model works well for uncertain probabilistic events.
They stated that detecting an intrusion using IDS is also an uncertain behaviour and
hence IDS using NBC is a reasonable one. But independence assumption is difficult in
real time network situations. Each network has its own attributes and also has complex
relationships. So detection is critical one. In order to overcome this problem, they have
implemented attribute-weighted NBC. By applying this method, they have assigned
different weights for each attributes. To determine the weight for the attributes, they have
proposed ReliefF algorithm. This algorithm mainly focuses on determining relationships
between the attributes and the final classification class. A weight is then assigned to each
attribute based on the level of relation between an attribute and classification class.
Higher the relation, large value will be set for the attribute. After that they determined the
Comparative study on IDS using machine learning approaches 23
network behaviour by the classification NBC-A module. They have used KDD’99
dataset. Since it is a large dataset they have used only 10% of KDD’99.
They made a comparison with NBC and NBC-A in terms of accuracy and error-rate.
Average prediction accuracy for NBC-A is 98.50% while in case of NBC, it is 91.73 %.
Average error rate for NBC-A is 5.79% whereas for NBC, it is 11.98%. From that they
concluded, attribute selection using ReliefF algorithm in NBC-A efficiently determines
intrusion attacks compared to Naive Bayes classification as indicated in Table 2 and
Figure 2.
Figure 3 Prediction accuracy of ID3, C4.5, C5.0, DT (see online version for colours)
24 K. Muthamil Sudar and P. Deepalakshmi
In Kumar et al. (2012), the authors have experimented with three algorithms in decision
tree learning such as ID3, C4.5 and C5.0. ID3 algorithm uses information theory to build
the decision tree and selects the attributes with highest information gain (IG) as splitting
attribute. In C4.5 algorithm, they have used gain ratio (GR) as a component to select the
splitting attribute. In C5.0 algorithm, they have used boosting technique to improve the
performance of building trees by combining different classifiers. The outcome of the
C4.5 and C5.0 will be either rule sets or decision trees. To evaluate the performance of
intrusion detection algorithm, they have used KDD’99 dataset. After comparison with the
three algorithms, they concluded that C5.0 performs well compared to C4.5 and ID3 in
terms of both prediction accuracy and false positive. According to Figure 3, prediction
accuracy of decision tree is high compared to C5.0, C4.5, and ID3 as we shown in
Table 3 and Figure 3.
Table 3 Comparison of performance measures for decision tree
1 select the architecture (identify the number of layers and neurons that each neuron
should contain)
2 train the network (appropriate weight of each neuron and its threshold).
Too many layers can create too many decision regions and in such cases perceptron loses
the ability to generalise the samples. They experimented with 10% of KDD’99 dataset.
To choose the essential features, they have considered greedy stepwise and bestfit
algorithm. They concluded that their proposed model achieves highest classification
accuracy, low error rate and scalability but at the cost of higher training time.
In Esmaily et al. (2015), the authors have randomly taken 43,000 train records,
21,000 test records from KDD’99 dataset. Among these, 10,000 records belong to normal
and remaining are of attacks. By applying random sampling, they have removed the
redundant records. To achieve better results they have combined both decision tree (DT)
and multilayer perceptron (MLP) to train the model. Further they experimented in two
separate phases. In the first phase, they have considered 41 features as an input layer, two
hidden layers with eight neurons of each layer which maps the input features and output
layer as the classification of attacks or normal. In the second phase, the output of the first
phase is taken as an input and processed through the hidden layer and finally done with
classification. They observed that prediction accuracy for DT is 98.01% and for MLP, it
is 99.89%. The error rate for DT is 2.19% and for MLP, it is 0.12%. In Table 4,
performance measures for multilayer perceptron algorithms are listed
Table 4 Comparison of performance measures for multilayer perceptron
In our survey work, we have considered four machine learning-based techniques such as
Random forest, naïve Bayes, decision tree, multilayer perceptron for the creation of IDS.
Naïve Bayes algorithm can make independent assumptions to classify the instances and a
widely used method. Decision tree and random forest can classify the instances based on
available attributes (i.e., dependent). Multilayer perceptron can classify in linearly
inseparable instances. We have compared every method with its modified version.
Random forest with K-means clustering shows the best result in terms of time taken to
26 K. Muthamil Sudar and P. Deepalakshmi
build and prediction accuracy compared to simple random forest technique (Zhang et al.,
2008; Aung and Min, 2017). Naïve Bayes algorithm with FVBM feature selection
technique shows the best result in terms of prediction accuracy compared to simple naïve
Bayes algorithm (Mukherjee and Sharma, 2012; Wang et al., 2017). Decision tree using
binary classifier shows a high accuracy in prediction, but it needs more training time to
train the model (Peddabachigari et al., 2004). Another comparison shows that decision
tree technique C5.0 provides better prediction accuracy compared to C4.5 and ID3
(Kumar et al., 2012). Multilayer perceptron using feature selection techniques shows high
prediction accuracy but it requires more training time (Amato et al., 2017). Another
comparison shows that Multilayer perceptron works well compared to decision tree in
term of prediction accuracy and error rate (Esmaily et al., 2015). By choosing necessary
datasets, appropriate features selection techniques, performance can be improved in terms
of prediction accuracy, error rate, time taken to build the model.
9 Conclusions
Machine learning-based techniques have been used to detect malicious attacks in normal
networks and it is also a promising technique to secure a SDN. It can classify the normal
network from malicious network. By applying machine learning techniques, we can
define security rules for SDN controller to prevent the network from malicious users. In
this paper, we provided overview of SDN and also its security issues and the possible
machine learning approaches for creation of IDS. Classification accuracy will vary for
each machine learning techniques based on the datasets used, feature selection methods.
From our survey, we identified that the dataset to be considered for testing and training
phase should be a balanced one in the aspects of Normal, DoS, U2R, R2L, Probe attacks.
So, we could apply techniques like downsampling, random sampling and K-means to
make it as a balanced and redundant-free one. Also training and testing with all the
available features is a time consuming one. So, we should train our model with essential
features only. For that, we could employ suitable techniques like FVBM, greedy
stepwise, best fit, IG, GR, boosting techniques to identify the essential features. We
should use relevant metrics to evaluate the performance of constructed model. In this
survey work, we have identified that the important metrics to be considered are prediction
accuracy, error rate and time taken to build the model. Prediction accuracy should be high
and error rate, time taken to build the model should be low in both testing and training
phases. Finally, we conclude that by constructing ML-based IDS with greater accuracy in
prediction and high scalability will help to secure the real time centralised SDN control
plane from various attacks and intrusions.
References
Abubakar, A. and Pranggono, B. (2017) ‘Machine learning based intrusion detection system for
software defined networks’, 2017 Seventh International Conference on Emerging Security
Technologies (EST), pp.138–143, IEEE.
Amato, F. et al. (2017) ‘Multilayer perceptron: an intelligent model for classification and intrusion
detection’, 2017 31st International Conference on Advanced Information Networking and
Applications Workshops (WAINA), IEEE.
Comparative study on IDS using machine learning approaches 27
Aung, Y.Y. and Min, M.M. (2017) ‘An analysis of random forest algorithm based network
intrusion detection system’, 2017 18th IEEE/ACIS International Conference on Software
Engineering, Artificial Intelligence, Networking and Parallel/Distributed Computing (SNPD),
IEEE.
Dayal, N., Maity, P., Srivastava, S. and Khondoker, R. (2016) ‘Research trends in security and
DDoS in SDN’, Security and Communication Networks, Vol. 9, No. 18, pp.6386–6411.
Esmaily, J., Moradinezhad, R. and Ghasemi, J. (2015) ‘Intrusion detection system based on
multi-layer perceptron neural networks and decision tree’, 2015 7th Conference on
Information and Knowledge Technology (IKT), IEEE.
Hamed, T., Ernst, J.B. and Kremer, S.C. (2018) ‘A survey and taxonomy of classifiers of intrusion
detection systems’, Computer and Network Security Essentials, pp.21–39, Springer, Cham.
http://kdd.ics.uci.edu/databases/kddcup99/kddcup99.html (accessed 12 May 2018).
http://kdd.ics.uci.edu/databases/kddcup99/task.html (accessed 12 May 2018).
https://machinelearningmastery.com/classification-and-regression-trees-for-machine-learning/
(accessed 12 May 2018).
https://machinelearningmastery.com/naive-bayes-for-machine-learning/ (accessed 12 May 2018).
Kumar, M., Hanumanthappa, M. and Kumar, T.V.S. (2012) ‘Intrusion detection system using
decision tree algorithm’, 2012 IEEE 14th International Conference on Communication
Technology (ICCT), IEEE.
Mukherjee, S. and Sharma, N. (2012) ‘Intrusion detection using naive Bayes classifier with feature
reduction’, Procedia Technology, Vol. 4, No. 1, pp.119–128.
Peddabachigari, S., Abraham, A. and Thomas, J. (2004) ‘Intrusion detection systems using decision
trees and support vector machines’, International Journal of Applied Science and
Computations, Vol. 11, No. 3, pp.118–134, , USA.
Scott-Hayward, S., Natarajan, S. and Sezer, S. (2016) ‘A survey of security in software defined
networks’, IEEE Communications Surveys & Tutorials, Vol. 18, No. 1, pp.623–654.
Sultana, N., Chilamkurti, N., Peng, W. and Alhadad, R. (2018) ‘Survey on SDN based network
intrusion detection system using machine learning approaches’, Peer-to-Peer Networking and
Applications, pp.1–9, ISSN 1936-6450.
Wang, Y. et al. (2017) ‘A novel intrusion detection system based on advanced naive Bayesian
classification’, International Conference on 5G for Future Wireless Networks, Springer,
Cham.
Zhang, J. and Zulkernine, M. (2005) ‘Network intrusion detection using random forests’,
PST 2005, October.
Zhang, J., Zulkernine, M. and Haque, A. (2008) ‘Random-forests-based network intrusion detection
systems’, IEEE Transactions on Systems, Man, and Cybernetics, Part C (Applications and
Reviews), Vol. 38, No. 5, pp.649–659.