Designing a Network Intrusion Detection System Based on Machine Learning for Software Defined Networks
Software-defined Networking (SDN) has recently developed and been put forward as a promising and encouraging solution for future internet architecture. Managed, the centralized and controlled network has become more flexible and visible using SDN. On the other hand, these advantages bring us a more...
Main Authors: | , |
---|---|
Format: | Article |
Language: | English |
Published: |
MDPI AG
2021-04-01
|
Series: | Future Internet |
Subjects: | |
Online Access: | https://www.mdpi.com/1999-5903/13/5/111 |
id |
doaj-b21f583624134e4e8df3148def681419 |
---|---|
record_format |
Article |
spelling |
doaj-b21f583624134e4e8df3148def6814192021-04-28T23:02:30ZengMDPI AGFuture Internet1999-59032021-04-011311111110.3390/fi13050111Designing a Network Intrusion Detection System Based on Machine Learning for Software Defined NetworksAbdulsalam O. Alzahrani0Mohammed J. F. Alenazi1Department of Computer Engineering, CCIS, King Saud University, Riyadh 11461, Saudi ArabiaDepartment of Computer Engineering, CCIS, King Saud University, Riyadh 11461, Saudi ArabiaSoftware-defined Networking (SDN) has recently developed and been put forward as a promising and encouraging solution for future internet architecture. Managed, the centralized and controlled network has become more flexible and visible using SDN. On the other hand, these advantages bring us a more vulnerable environment and dangerous threats, causing network breakdowns, systems paralysis, online banking frauds and robberies. These issues have a significantly destructive impact on organizations, companies or even economies. Accuracy, high performance and real-time systems are essential to achieve this goal successfully. Extending intelligent machine learning algorithms in a network intrusion detection system (NIDS) through a software-defined network (SDN) has attracted considerable attention in the last decade. Big data availability, the diversity of data analysis techniques, and the massive improvement in the machine learning algorithms enable the building of an effective, reliable and dependable system for detecting different types of attacks that frequently target networks. This study demonstrates the use of machine learning algorithms for traffic monitoring to detect malicious behavior in the network as part of NIDS in the SDN controller. Different classical and advanced tree-based machine learning techniques, Decision Tree, Random Forest and XGBoost are chosen to demonstrate attack detection. The NSL-KDD dataset is used for training and testing the proposed methods; it is considered a benchmarking dataset for several state-of-the-art approaches in NIDS. Several advanced preprocessing techniques are performed on the dataset in order to extract the best form of the data, which produces outstanding results compared to other systems. Using just five out of 41 features of NSL-KDD, a multi-class classification task is conducted by detecting whether there is an attack and classifying the type of attack (DDoS, PROBE, R2L, and U2R), accomplishing an accuracy of 95.95%.https://www.mdpi.com/1999-5903/13/5/111network intrusion detection system (NIDS)software defined network (SDN)NSL-KDDXGBoostmachine learningfeature scaling |
collection |
DOAJ |
language |
English |
format |
Article |
sources |
DOAJ |
author |
Abdulsalam O. Alzahrani Mohammed J. F. Alenazi |
spellingShingle |
Abdulsalam O. Alzahrani Mohammed J. F. Alenazi Designing a Network Intrusion Detection System Based on Machine Learning for Software Defined Networks Future Internet network intrusion detection system (NIDS) software defined network (SDN) NSL-KDD XGBoost machine learning feature scaling |
author_facet |
Abdulsalam O. Alzahrani Mohammed J. F. Alenazi |
author_sort |
Abdulsalam O. Alzahrani |
title |
Designing a Network Intrusion Detection System Based on Machine Learning for Software Defined Networks |
title_short |
Designing a Network Intrusion Detection System Based on Machine Learning for Software Defined Networks |
title_full |
Designing a Network Intrusion Detection System Based on Machine Learning for Software Defined Networks |
title_fullStr |
Designing a Network Intrusion Detection System Based on Machine Learning for Software Defined Networks |
title_full_unstemmed |
Designing a Network Intrusion Detection System Based on Machine Learning for Software Defined Networks |
title_sort |
designing a network intrusion detection system based on machine learning for software defined networks |
publisher |
MDPI AG |
series |
Future Internet |
issn |
1999-5903 |
publishDate |
2021-04-01 |
description |
Software-defined Networking (SDN) has recently developed and been put forward as a promising and encouraging solution for future internet architecture. Managed, the centralized and controlled network has become more flexible and visible using SDN. On the other hand, these advantages bring us a more vulnerable environment and dangerous threats, causing network breakdowns, systems paralysis, online banking frauds and robberies. These issues have a significantly destructive impact on organizations, companies or even economies. Accuracy, high performance and real-time systems are essential to achieve this goal successfully. Extending intelligent machine learning algorithms in a network intrusion detection system (NIDS) through a software-defined network (SDN) has attracted considerable attention in the last decade. Big data availability, the diversity of data analysis techniques, and the massive improvement in the machine learning algorithms enable the building of an effective, reliable and dependable system for detecting different types of attacks that frequently target networks. This study demonstrates the use of machine learning algorithms for traffic monitoring to detect malicious behavior in the network as part of NIDS in the SDN controller. Different classical and advanced tree-based machine learning techniques, Decision Tree, Random Forest and XGBoost are chosen to demonstrate attack detection. The NSL-KDD dataset is used for training and testing the proposed methods; it is considered a benchmarking dataset for several state-of-the-art approaches in NIDS. Several advanced preprocessing techniques are performed on the dataset in order to extract the best form of the data, which produces outstanding results compared to other systems. Using just five out of 41 features of NSL-KDD, a multi-class classification task is conducted by detecting whether there is an attack and classifying the type of attack (DDoS, PROBE, R2L, and U2R), accomplishing an accuracy of 95.95%. |
topic |
network intrusion detection system (NIDS) software defined network (SDN) NSL-KDD XGBoost machine learning feature scaling |
url |
https://www.mdpi.com/1999-5903/13/5/111 |
work_keys_str_mv |
AT abdulsalamoalzahrani designinganetworkintrusiondetectionsystembasedonmachinelearningforsoftwaredefinednetworks AT mohammedjfalenazi designinganetworkintrusiondetectionsystembasedonmachinelearningforsoftwaredefinednetworks |
_version_ |
1721503069657628672 |