Early Detection of Abnormal Attacks in Software-Defined Networking Using Machine Learning Approaches
Abstract
:1. Introduction
- We proposed a preplanned cloud service based on the network characteristics of the unit and built an SDN topology architecture based on AI-assisted security prediction.
- We adopted public SDN datasets for training 13 ML and DL models to detect abnormal attacks in an SDN environment.
- We designed the HMC architecture to further identify the attack classes and improve multiclass classification in stratification. The architecture is based on a divide-and-conquer strategy to improve the poor performance of minority classes in imbalanced datasets.
- We evaluated a simulation scenario for security verification when the SDN architecture encountered DDoS attacks, and the mechanism involved early detection and traffic mitigation.
2. Related Work
2.1. Challenges and Security Concerns of SDN
2.2. Machine Learning in SDN
- 1.
- Problem: Many studies only focus on the qualitative detection (i.e., normal and abnormal); some studies further conduct quantitative analysis, that is, the performances of multiclass classification, such as DoS, DDoS, PGA, botnet, web attack, probe, U2R, etc. In addition, they discussed further the performance improvement of minority classes under imbalanced datasets. In anomaly detection, selecting relevant features is also a critical research issue; therefore, there are also studies on extracting the features of the SDN environment for anomaly detection. This study compared and validated the above three classification and feature selection problems.
- 2.
- Datasets: Most of the early studies used KDD’99 and NSL-KDD as training data sets; however, using these datasets for anomaly detection in SDN environments may have issues of incompatibility and obsolescence; therefore, researchers rarely used the above datasets in recent years but generated or adopted existing public SDN datasets through simulators. We adopted two datasets derived from DDoS-SDN and InSDN that were published in 2020. Due to related work with different datasets and attack types, it is difficult to evaluate performances directly; however, using these datasets for anomaly detection in SDN environments may have issues of incompatibility and obsolescence; therefore, researchers rarely used the above datasets in recent years but generated or adopted existing public SDN datasets through simulators. We adopted two datasets derived from DDoS-SDN and InSDN that were published in 2020. Due to related work with different datasets and attack types, it is difficult to evaluate performances directly.
- 3.
- Models: Most studies used the current common ML models for performance comparison. In our research, we not only compared the existing ML and DL models but also proposed our HMC model. The core model is based on the best of the above single models and performs multiple binary classifications to improve the performance of multiclass classification under the imbalanced dataset.
- 4.
- SDN topology and scenario verification: In this study, we plan the cloud service system architecture according to practical needs and characteristics, including private cloud customized services, general services, and data centers. To facilitate the setting up of the SDN simulation environment in advance, the details of controllers, switch connections, interfaces, and MACs are described in correspondence with practical equipment. Moreover, after the ML and DL models have been trained, a DDoS attack scenario is used to verify the effectiveness of the architecture design and model prediction for the actual future environment.
- 5.
- Symmetry: In recent related work [49,50], learning-based anomaly detection faces two main challenges: the robustness and the sustainability of the learning model based on the SDN network architecture against ever-changing network attacks. In this study, the sustainable simulation of SDN network architecture and the robustness of experimental results can symmetrically face the challenges in SDN networks and provide specific solutions. The cloud service system we plan adopted an SDN topology design, which provides a general architecture for future sustainable development. Moreover, our proposed HMC architecture for anomaly detection can use any supervised learning models to combine them for the robustness of the architecture to overcome the poor performance of minority classes due to imbalanced datasets in real network environments. From the perspective of symmetric performance evaluation, we perform coarse-grained anomaly detection and further analyze fine-grained classification to predict the multiple types of anomaly attacks.
- 6.
- Sustainability: Machine learning has been successfully applied to studying malware classification over the past several years; however, the distribution of test samples with a new form of malware becomes increasingly different from the original training sample as concept drift occurs. In addition, the malware authors may modify their attack methods to avoid detection; therefore, the classifier uses the inherent training materials to encounter inefficiency, making the prediction results unreliable. There are two ways to solve the problem of concept drift. One is to develop more powerful functions by developing more powerful functions [51] and, for example, using neural networks because potential feature space is better generalized. Despite this, the diversity of malware makes designing such a feature space extremely challenging. Another solution is to adapt to drift, use incremental retraining or online update model learning or reject drift points [52,53]. A key issue is when and how to refuse accurate tests and quantitative drift; therefore, in the topic of sustainability, in addition to maintaining accurate prediction capabilities on multiple training datasets, a key issue is to have the capability to identify aging classification models. The concept differs from retraining methods based on various datasets. For example, Jordaney et al. [54] proposed the Transced framework to identify concept drift to establish prediction indicators. Barbero et al. [55] based on the former framework for performing rejection classification, has improved efficiency and reduced computing expenses. For an ML-based classifier to be highly sustainable, it is critical to understand the underlying features: the ability to distinguish benign applications from malware and extract the changing pattern of those features through evolutionary processes [56]. In this study, facing the deterioration of anomalous attacks, we adopt multiple hierarchical classifiers to overcome the bias or inefficiency of a single classifier.
3. System Architecture
3.1. SDN Topology Design
3.2. AI Module and Machine Learning Models
3.3. Hierarchical Multiclass Classification
3.4. Datasets and Features
4. Experiments
4.1. SDN Simulation
4.2. Measure Evaluation
4.3. Experimental Results
4.4. Case of Attack Simulation
4.5. Feature Importance and Selection
4.6. Discussion
- ML experimental design. We qualitatively compare experimental results with previous related work, exploring model combination performance, feature selection performance, and overall and minority performance.
- 1.
- Single model and multi model. The experimental results show that our HMC model, ensemble voting, random forest, and Adaboost have outstanding performance among many models and can summarize the predictions of multiple models. The performance is better than the prediction of a single model. In practice, the data distribution is often uneven, so the combination of multiple approaches, such as the same classifiers with different samples, and various classifiers combined with different weighted voting, will effectively improve the performance of the minority class under the imbalanced dataset.
- 2.
- All features and selected features. There is no need to consider the feature selection for related work with a small number of features. That is, all of them are selected as the model training classification; however, for datasets with many features, the model complexity and the training time cost increase, so feature selection needs to be considered. There may also be irrelevant features that even degrade performance. The indicators of feature selection are also critical, especially when some features are not uniformly distributed. As a result, they may be biased towards the features with the majority of attributes.
- 3.
- Overall and minority performance. In most studies, we find that accuracy is often used to measure the overall performance, but in the imbalanced datasets, the overall results may be misleading because they may not reveal the performance of minority attacks; therefore, we proposed the HMC model to improve multiclass performance through multiple binary classifiers, reduce the number between the majority class and the minority class, and adopt SMOTE sampling to increase the samples of the minority.
- The advantages and threats of SDN in security. SDN is derived from decoupling the control and forwarding planes of the network so that the complex routing mechanism of the traditional network is responsible for a centralized controller, which works according to the described strategy through an intelligent and programmable logic centralized controller. Due to the core differences between SDN and traditional networks, it brings new solutions to security issues. For example, the global network view can support higher detection of malicious traffic intrusion and help detect the malicious behavior of network switches; however, the SDN architecture itself also faces new security threats. In conclusion, the single point of failure problem (SPOF) is essentially due to centralization; therefore, we briefly discuss the security issues of the SDN environment arising from the forwarding plane, the control plane, and links.
- 1.
- Forwarding plane. Due to the limited storage capacity of the switch, a reactive caching mechanism is used. Whenever the switch does not find a matching rule for its incoming packet flow, the packet will be temporarily stored in the switch buffer and sent to the controller. Sending a query requires missing rules. This reactive caching mechanism makes the switch vulnerable to DoS attacks.
- 2.
- Control plane. The control plane is also vulnerable to DDoS attacks because multiple infected hosts distributed in the network may send packets to the network switch synchronously. Since not all rules are already available in the switch’s table, many queries will be generated and sent to the controller, eventually exploiting the controller’s limited processing power to cause legitimate queries to be delayed or discarded. Replication can be used to address such attacks, with multiple controllers managing the network instead of a single controller; however, when multiple controllers work the network, deciding where to deploy the controllers is a critical issue. In addition, the distance separating the switch from its central controller is a crucial factor to consider when making a placement. Keeping this distance short ensures low latency on the switch controller communication link, improving network responsiveness and making switch DoS attacks more difficult. In addition, SDN also needs to have some resilience against compromised controller attacks. The control duplication workaround described above is resistant to this type of attack. Still, if all controllers are installed on similar platforms, once successfully hacking one of them, an attacker can hack all controllers.
- 3.
- Forwarding the control link. Sending unencrypted communication messages over the link connecting the control and forwarding planes makes the link vulnerable to man-in-the-middle attacks. In this case, an attacker can infer control policies, tamper with rules, and create new rules by eavesdropping on the communications exchanged on the link, giving the attacker full control of the switch; therefore, encryption must prevent eavesdropping, thereby protecting the link layer from such attacks.
- System scalability. According to the technical development and the actual needs of the unit, a preplanned cloud service based on the network characteristics of the unit is proposed, and an SDN topology architecture based on AI-assisted early detection is constructed; therefore, the premise of our study is further to deploy this system for practical use in the future. Considering the lack of labeled datasets in real-time networks, we adopted the two datasets used in this study to provide offline training for ML and DL models. These two SDN datasets were collected by Mininet software and publicly released for research use. The authors labeled the types of abnormal traffic and extracted 22 and 83 features from the SDN environment. According to Elsayed et al., the features of the InSDN dataset can effectively train for traffic anomaly detection in SDN environments. In this study, our final goal is to adopt these datasets for offline training and online prediction. The follow-up work in our research will use transfer learning to use the model parameters of the source domain for fine-tuning models of the target domain; therefore, our AI-based SDN system is scalable and does not depend on the original datasets.
5. Conclusions
Author Contributions
Funding
Institutional Review Board Statement
Informed Consent Statement
Data Availability Statement
Conflicts of Interest
References
- Clemm, A.; Zhani, M.F.; Boutaba, R. Network Management 2030: Operations and Control of Network 2030 Services. J. Netw. Syst. Manag. 2020, 28, 721–750. [Google Scholar] [CrossRef]
- Elsayed, A.M.S.; Le-Khac, N.-A.; Jurcut, A.D. InSDN: A Novel SDN Intrusion Dataset. IEEE Access. 2020, 8, 165263–165284. [Google Scholar] [CrossRef]
- Jahromi, H.Z.; Delaney, D.T. An Application Awareness Framework based on SDN and Machine Learning: Defining the Roadmap and Challenges. In Proceedings of the 10th International Conference on Communication Software and Networks (ICCSN), Chengdu, China, 6–9 July 2018; pp. 411–416. [Google Scholar]
- Ahmed, M.R.; Islam, S.; Shatabda, S.; Muzahidul Islam, A.K.M.; Robin, M.T.I. Intrusion Detection System in Software-Defined Networks Using Machine Learning and Deep Learning Techniques—A Comprehensive Survey. TechRxiv Preprint 2021. [Google Scholar] [CrossRef]
- Thakur, N.; Han, C.Y. A Study of Fall Detection in Assisted Living: Identifying and Improving the Optimal Machine Learning Method. J. Sens. Actuator Netw. 2021, 10, 39. [Google Scholar] [CrossRef]
- Lee, C.; Hong, J.; Heo, D.; Choi, H. Sequential Deep Learning Architectures for Anomaly Detection in Virtual Network Function Chains. In Proceedings of the 2021 International Conference on Information and Communication Technology Convergence (ICTC), Jeju Island, Korea, 20–22 October 2021; pp. 1163–1168. [Google Scholar]
- Fan, C.; Kaliyamurthy, N.M.; Chen, S.; Jiang, H.; Zhou, Y.; Campbell, C. Detection of DDoS Attacks in Software Defined Networking Using Entropy. Appl. Sci. 2022, 12, 370. [Google Scholar] [CrossRef]
- Aslam, M.; Ye, D.; Tariq, A.; Asad, M.; Hanif, M.; Ndzi, D.; Chelloug, S.A.; Elaziz, M.A.; Al-Qaness, M.A.A.; Jilani, S.F. Adaptive Machine Learning Based Distributed Denial-of-Services Attacks Detection and Mitigation System for SDN-Enabled IoT. Sensors 2022, 22, 2697. [Google Scholar] [CrossRef]
- Maheshwari, A.; Mehraj, B.; Khan, M.S.; Idrisi, M.S. An Optimized Weighted Voting Based Ensemble Model for DDoS Attack Detection and Mitigation in SDN Environment. Microprocess. Microsyst. 2022, 89, 104412. [Google Scholar] [CrossRef]
- Liu, Y.; Zhi, T.; Shen, M.; Wang, L.; Li, Y.; Wan, M. Software-Defined DDoS Detection with Information Entropy Analysis and Optimized Deep Learning. Future Gener. Comput. Syst. 2022, 129, 99–114. [Google Scholar] [CrossRef]
- Chetouane, A.; Karoui, K. A Survey of Machine Learning Methods for DDoS Threats Detection Against SDN. In Distributed Computing for Emerging Smart Networks (DiCES-N); Communications in Computer and Information Science; Jemili, I., Mosbah, M., Eds.; Springer: Cham, Switzerland, 6 April 2022; Volume 1564. [Google Scholar] [CrossRef]
- Sudar, K.M.; Beulah, M.; Deepalakshmi, P.; Nagaraj, P.; Chinnasamy, P. Detection of Distributed Denial of Service Attacks in SDN using Machine learning techniques. In Proceedings of the 2021 International Conference on Computer Communication and Informatics (ICCCI), Coimbatore, India, 21 April 2021; pp. 1–5. [Google Scholar]
- KDD Cup 1999. Available online: http://kdd.ics.uci.edu/databases/kddcup99/kddcup99.html (accessed on 25 May 2021).
- Tavallaee, M.; Bagheri, E.; Lu, W.; Ghorbani, A.A. A Detailed Analysis of the KDD CUP 99 Data Set. In Proceedings of the IEEE Symposium on Computational Intelligence for Security and Defense Applications, Ottawa, ON, Canada, 8–10 July 2009; pp. 1–6. [Google Scholar]
- Ahuja, N.; Singal, G.; Mukhopadhyay, D. DDOS attack SDN Dataset. Mendeley Data 2020. [Google Scholar] [CrossRef]
- Benzekki, K.; El Fergougui, A.; Elalaoui, E.A. Software-Defined Networking (SDN): A Survey. Secur. Commun. Netw. 2016, 9, 5803–5833. [Google Scholar] [CrossRef]
- Bedhief, I.; Kassar, M.; Aguili, T.; Foschini, L. Self-Adaptive Management of SDN Distributed Controllers for Highly Dynamic IoT Networks. In Proceedings of the 15th International Wireless Communications & Mobile Computing Conference (IWCMC), Tangier, Morocco, 24–28 June 2019; pp. 2098–2104. [Google Scholar]
- Ochoa-Aday, L.; Cervelló-Pastor, C.; Fernández-Fernández, A. eTDP: Enhanced Topology Discovery Protocol for Software-Defined Networks. IEEE Access 2019, 7, 23471–23487. [Google Scholar] [CrossRef]
- Gyllstrom, D.; Braga, N.; Kurose, J. Recovery from Link Failures in a Smart Grid Communication Network Using Openflow. In Proceedings of the 2014 IEEE International Conference on Smart Grid Communications (SmartGridComm), Venice, Italy, 3–6 November 2014; pp. 254–259. [Google Scholar]
- Naous, J.; Erickson, D.; Covington, G.A.; Appenzeller, G.; McKeown, N. Implementing an OpenFlow Switch on the NetFPGA Platform. In Proceedings of the 4th ACM/IEEE Symposium on Architectures for Networking and Communications Systems (ANCS ’08), New York, NY, USA, 1–9 November 2008; ACM: New York, NY, USA, 2008; pp. 1–9. [Google Scholar]
- Tandon, R. A Survey of Distributed Denial of Service Attacks and Defenses. arXiv 2020, arXiv:2008.01345. [Google Scholar]
- Shin, S.; Gu, G. Attacking Software-Defined Networks: A First Feasibility Study. In Proceedings of the second ACM SIGCOMM Workshop on Hot Topics in Software Defined Networking (HotSDN), New York, NY, USA, 16 August 2013; Foster, N., Sherwood, R., Eds.; ACM: New York, NY, USA, 2013; pp. 165–166. [Google Scholar]
- Shin, S.; Yegneswaran, V.; Porras, P.; Gu, G. Avant-guard: Scalable and Vigilant Switch Flow Management in Software-Defined Networks. In Proceedings of the 2013 ACM SIGSAC Conference on Computer & Communications Security (CCS’13), Berlin, Germany, 4–8 November 2013; Sadeghi, A.-R., Ed.; ACM: New York, NY, USA, 2013; pp. 413–424. [Google Scholar]
- Kandoi, R.; Antikainen, M. Denial-Of-Service Attacks in OpenFlow SDN Networks. In Proceedings of the 2015 IFIP/IEEE International Symposium on Integrated Network Management (IM), Ottawa, ON, Canada, 11–15 May 2015; pp. 1322–1326. [Google Scholar]
- Akhunzada, A.; Ahmed, E.; Gani, A.; Khan, M.K.; Imran, M.; Guizani, S. Securing Software Defined Networks: Taxonomy, Requirements, and Open Issues. IEEE Commun. Mag. 2015, 53, 36–44. [Google Scholar] [CrossRef]
- Zhang, P.; Wang, H.; Hu, C.; Lin, C. On Denial of Service Attacks in Software Defined Networks. IEEE Netw. 2016, 30, 28–33. [Google Scholar] [CrossRef]
- Dover, J.M. A Denial of Service Attack against the Open Floodlight SDN Controller; Dover Networks LLC: Edgewater, MD, USA, 2013. [Google Scholar]
- Singh, J.; Behal, S. Detection and Mitigation of DDoS Attacks in SDN: A Comprehensive Review, Research Challenges and Future Directions. Comput. Sci. Rev. 2020, 37, 100279. [Google Scholar] [CrossRef]
- Khairi, M.H.H.; Ariffin, S.H.S.; Latiff, N.M.A.A.; Yusof, K.M.; Hassan, M.K.; Al-Dhief, F.T.; Hamdan, M.; Khan, S.; Hamzah, M. Detection and Classification of Conflict Flows in SDN Using Machine Learning Algorithms. IEEE Access 2021, 9, 76024–76037. [Google Scholar] [CrossRef]
- Hamdan, M.; Mohammed, B.; Humayun, U.; Abdelaziz, A.; Khan, S.; Ali, M.A.; Imran, M.; Marsono, M.N. Flow-aware Elephant Flow Detection for Software-Defined Networks. IEEE Access 2020, 8, 72585–72597. [Google Scholar] [CrossRef]
- Kuranage, M.P.J.; Piamrat, K.; Hamma, S. Network Traffic Classification Using Machine Learning for Software Defined Networks. In Proceedings of the International Conference on Maching Learning for Netwwork (MLN), Paris, France, 3–5 December 2019; Boumerdassi, S., Renault, É., Mühlethaler, P., Eds.; Springer: Cham, Switzerland, 2020; pp. 28–39. [Google Scholar]
- Khamaiseh, S.; Serra, E.; Li, Z.; Xu, D. Detecting Saturation Attacks in SDN via Machine Learning. In Proceedings of the 2019 4th International Conference on Computing, Communications and Security (ICCCS), Rome, Italy, 10–12 October 2019; IEEE: Piscataway, NJ, USA, 2019; pp. 1–8. [Google Scholar]
- Tang, F.; Zhang, H.; Yang, L.T.; Cheng, L. Elephant Flow Detection and Differentiated Scheduling with Efficient Sampling and Classification. IEEE Trans. Cloud Comput. 2021, 9, 1022–1036. [Google Scholar] [CrossRef]
- Latah, M.; Toker, L. Artificial Intelligence Enabled Software-Defined Networking: A Comprehensive Overview. IET Netw. 2019, 8, 79–99. [Google Scholar] [CrossRef] [Green Version]
- Comaneci, D.; Dobre, C. Securing Networks Using SDN and Machine Learning. In Proceedings of the IEEE International Conference on Computational Science and Engineering (CSE), Bucharest, Romania, 29–31 October 2018; IEEE: Los Alamitos, CA, USA, 2018; pp. 194–200. [Google Scholar]
- Wang, P.; Ye, F.; Chen, X.; Qian, Y. DataNet: Deep Learning based Encrypted Network Traffic Classification in SDN Home Gateway. IEEE Access 2018, 6, 55380–55391. [Google Scholar] [CrossRef]
- Latah, M.; Toker, L. Application of Artificial Intelligence to Software Defined Networking: A Survey. Indian J. Sci. Technol. 2016, 9, 1–7. [Google Scholar] [CrossRef]
- Krishnan, P.; Duttagupta, S.; Achuthan, K. Varman: Multi-plane Security Framework for Software Defined Networks. Comput. Commun. 2019, 148, 215–239. [Google Scholar] [CrossRef]
- Bao, K.; Matyjas, J.D.; Hu, F.; Kumar, S. Intelligent Software-Defined Mesh Networks with Link-Failure Adaptive Traffic Balancing. IEEE Trans. Cognit. Commun. Netw. 2018, 4, 266–276. [Google Scholar] [CrossRef]
- Amaral, P.; Dinis, J.; Pinto, P.; Bernardo, L.; Tavares, J.; Mamede, H.S. Machine Learning in Software Defined Networks: Data Collection and Traffic Classification. In Proceedings of the 2016 IEEE 24th International Conference on Network Protocols (ICNP), Singapore, 11–16 November 2016; pp. 1–5. [Google Scholar]
- Yuan, B.; Zou, D.; Yu, S.; Jin, H.; Qiang, W.; Shen, J. Defending Against Flow Table Overloading Attack in Software-Defined Networks. IEEE Trans. Serv. Comput. 2019, 12, 231–246. [Google Scholar] [CrossRef]
- Rasool, R.U.; Ashraf, U.; Ahmed, K.; Wang, H. Cyberpulse: A Machine Learning based Link Flooding Attack Mitigation System for Software Defined Networks. IEEE Access 2019, 7, 34885–34899. [Google Scholar] [CrossRef]
- Tseng, C.-W.; Wu, L.-F.; Hsu, S.-C.; Yu, S.-W. IPv6 DoS Attacks Detection Using Machine Learning Enhanced IDS in SDN/NFV Environment. In Proceedings of the 2020 21st Asia-Pacific Network Operations and Management Symposium (APNOMS), Daegu, Korea, 22–25 September 2020; pp. 1–10. [Google Scholar]
- Tonkal, Ö.; Polat, H.; Başaran, E.; Cömert, Z.; Kocaoğlu, R. Machine Learning Approach Equipped with Neighbourhood Component Analysis for DDoS Attack Detection in Software-Defined Networking. Electronics 2021, 10, 1227. [Google Scholar] [CrossRef]
- Toupas, P.; Chamou, D.; Giannoutakis, K.M.; Drosou, A. An Intrusion Detection System for Multi-class Classification Based on Deep Neural Networks. In Proceedings of the 18th IEEE International Conference On Machine Learning and Applications (ICMLA), Boca Raton, FL, USA, 16–19 December 2019; Khoshgoftaar, T.M., Ed.; IEEE: Piscataway, NJ, USA, 2019; pp. 1253–1258. [Google Scholar]
- Yu, Y.; Guo, L.; Liu, Y.; Zheng, J.; Zong, Y. An Efficient SDN-based DDoS Attack Detection and Rapid Response Platform in Vehicular Networks. IEEE Access 2018, 6, 44570–44579. [Google Scholar] [CrossRef]
- Huseyin, P.; Polat, O.; Aydin, C. Detecting DDoS Attacks in Software-Defined Networks Through Feature Selection Methods and Machine Learning Models. Sustainability 2020, 12, 1035. [Google Scholar] [CrossRef] [Green Version]
- Khairi, M.H.H.; Ariffin, S.H.S.; Latiff, N.M.A.; Yusof, K.M. Generation and Collection of Data for Normal and Conflicting Flows in Software Defined Network Flow Table. Indonesian J. Electr. Eng. Comput. Sci. 2021, 22, 307–314. [Google Scholar] [CrossRef]
- Dey, S.K.; Rahman, M.M. Effects of Machine Learning Approach in Flow-Based Anomaly Detection on Software-Defined Networking. Symmetry 2020, 12, 7. [Google Scholar] [CrossRef] [Green Version]
- Shinan, K.; Alsubhi, K.; Alzahrani, A.; Ashraf, M.U. Machine Learning-Based Botnet Detection in Software-Defined Network: A Systematic Review. Symmetry 2021, 13, 866. [Google Scholar] [CrossRef]
- Pendlebury, F.; Pierazzi, F.; Jordaney, R.; Kinder, J.; Cavallaro, L. TESSERACT: Eliminating Experimental Bias in Malware Classification across Space and Time. In Proceedings of the 28th USENIX Conference on Security Symposium (SEC’19), Santa Clara, CA, USA, 14–16 August 2019; USENIX Association: Berkeley, CA, USA, 2019; pp. 729–746. [Google Scholar]
- Narayanan, A.; Chandramohan, M.; Chen, L.; Liu, Y. Context-Aware, Adaptive, and Scalable Android Malware Detection through Online Learning. IEEE Trans. Emerg. Top. Comput. Intellig. 2017, 1, 157–175. [Google Scholar] [CrossRef]
- Xu, K.; Li, Y.; Deng, R.; Chen, K.; Xu, J. Droidevolver: Self-Evolving Android Malware Detection System. In Proceedings of the IEEE European Symposium on Security and Privacy (EuroS&P), Stockholm, Sweden, 17–19 June 2019; IEEE: Piscataway, NJ, USA, 2019; pp. 47–62. [Google Scholar]
- Jordaney, R.; Sharad, K.; Dash, S.K.; Wang, Z.; Papini, D.; Cavallaro, L. Transcend: Detecting Concept Drift in Malware Classification Models. In Proceedings of the 26th USENIX Conference on Security Symposium, Vancouver, BC, Canada, 16–18 August 2017; USENIX Association: Berkeley, CA, USA, 2017; pp. 625–642. [Google Scholar]
- Barbero, F.; Pendlebury, F.; Pierazzi, F.; Cavallaro, L. Transcending Transcend: Revisiting Malware Classification in the Presence of Concept Drift. arXiv 2020, arXiv:2010.03856. [Google Scholar]
- Cai, H. Assessing and Improving Malware Detection Sustainability through App Evolution Studies. ACM Trans. Softw. Eng. Methodol. 2020, 29, 8. [Google Scholar] [CrossRef] [Green Version]
- Chawla, N.V.; Bowyer, K.W.; Hall, L.O.; Kegelmeyer, W.P. Smote: Synthetic Minority Over-Sampling Technique. J. Artif. Intell. Res. 2002, 16, 321–357. [Google Scholar] [CrossRef]
- Wang, S.; Chou, C.; Yang, C. EstiNet Openflow Network Simulator and Emulator. IEEE Commun. Mag. 2013, 51, 110–117. [Google Scholar] [CrossRef]
Reference | Problem | Network | Dataset | Model | Topology | Verify |
---|---|---|---|---|---|---|
Yu [46], 2018 | Abnormal detection | Mininet simulated | CAIDA, DDoS | SVM | ✓ | ✓ |
Khamaiseh [32], 2019 | Abnormal detection | Mininet | Physical & simulated | SVM, NB, KNN | ✕ | ✓ |
Rasool [42], 2019 | Abnormal detection | Mininet simulated | UCI | MLP, RF, SLR, NB | ✓ | ✓ |
Elsayed [2], 2020 | Abnormal detection | Mininet simulated | InSDN | KNN, Adaboost, DT, RF, rbf-SVM, lin-SVM, MLP, NB | ✓ | ✓ |
Kuranage [31], 2020 | Flow detection | Mininet simulated | Kaggle | SVM, DT, RF, KNN | ✕ | ✕ |
Hamdan [30], 2020 | Flow detection | Mininet simulated | MAWI, UNI1&2 | VFDT, EDMAR, FlowSeer, BayesNet | ✕ | ✓ |
Huseyin [47], 2020 | Abnormal detection | Docker simulated | Simulated generation | SVM, KNN, ANN, NB | ✓ | ✕ |
Khairi [29], 2021 | Flow detection | Mininet simulated | Simulated generation [48] | DT, SVM, DT-SVM, EFDT | ✓ | ✓ |
Aslam [8], 2022 | Abnormal detection | Mininet real-time | AMLSDM | SVM, NB, RF KNN, LR, EV | ✓ | ✓ |
Fan [7], 2022 | Abnormal detection | Mininet simulated | Simulated generation | Entropy variants | ✓ | ✕ |
Maheshwari [9], 2022 | Abnormal detection | Mininet simulated | CICDDoS2019 | SVM, RF, GBM, MVE | ✓ | ✓ |
Liu [10], 2022 | Abnormal detection | Mininet simulated | CICIDS2017 | RF, SVM, CNN, DNN, PSO-BPNN | ✓ | ✓ |
Our study | Abnormal detection | EstiNet simulated | DDoS-SDN, InSDN | HMC, KNN, NB, DT, RF, Adaboost, Bagging, rbf-SVM, lin-SVM, MLP, CNN, RNN, LSTM, GRU | ✓ | ✓ |
ID | Device | Interface | MAC | IPv4 | Connected Device |
---|---|---|---|---|---|
1 | Controller | eth0 | 00:01:00:00:00:01 | 1.0.1.1 | Controller plane switch |
2 | Controller plane switch | eth0 | 00:01:00:00:00:02 | - | Controller |
eth1 | 00:01:00:00:00:03 | - | S1 | ||
eth2 | 00:01:00:00:00:10 | - | S2 | ||
eth3 | 00:01:00:00:00:14 | - | S4 | ||
eth4 | 00:01:00:00:00:15 | - | S5 | ||
eth5 | 00:01:00:00:00:19 | - | S8 | ||
eth6 | 00:01:00:00:00:1a | - | S9 | ||
eth7 | 00:01:00:00:00:1e | - | S10 | ||
eth8 | 00:01:00:00:00:47 | - | S11 | ||
eth9 | 00:01:00:00:00:48 | - | S12 | ||
eth10 | 00:01:00:00:00:49 | - | S6 | ||
eth11 | 00:01:00:00:00:4a | - | S3 | ||
eth12 | 00:01:00:00:00:4b | - | S13 | ||
eth13 | 00:01:00:00:00:4c | - | S14 | ||
eth14 | 00:01:00:00:00:4d | - | S7 | ||
eth15 | 00:01:00:00:00:4e | - | S15 | ||
3 | OpenFlow Switch S1 | eth0 | 00:01:00:00:00:04 | 1.0.1.2 | Controller plane switch |
eth1 | 00:01:00:00:00:05 | - | S2 | ||
eth2 | 00:01:00:00:00:06 | - | S3 | ||
4 | OpenFlow Switch S2 | eth0 | 00:01:00:00:00:07 | - | S1 |
eth1 | 00:01:00:00:00:08 | - | S2 | ||
eth2 | 00:01:00:00:00:09 | - | S3 | ||
eth3 | 00:01:00:00:00:4f | 1.0.1.3 | Controller plane switch | ||
5 | OpenFlow Switch S3 | eth0 | 00:01:00:00:00:0a | - | S1 |
eth1 | 00:01:00:00:00:0b | - | S6 | ||
eth2 | 00:01:00:00:00:0c | - | S7 | ||
eth3 | 00:01:00:00:00:50 | 1.0.1.12 | Controller plane switch | ||
6 | OpenFlow Switch S4 | eth0 | 00:01:00:00:00:0d | - | S2 |
eth1 | 00:01:00:00:00:0e | - | S8 | ||
eth2 | 00:01:00:00:00:0f | - | S9 | ||
eth3 | 00:01:00:00:00:51 | 1.0.1.3 | Controller plane switch | ||
eth4 | 00:01:00:00:00:5f | - | S5 | ||
7 | OpenFlow Switch S5 | eth0 | 00:01:00:00:00:11 | - | S2 |
eth1 | 00:01:00:00:00:12 | - | S10 | ||
eth2 | 00:01:00:00:00:13 | - | S11 | ||
eth3 | 00:01:00:00:00:52 | 1.0.1.3 | Controller plane switch | ||
eth4 | 00:01:00:00:00:5d | - | S6 | ||
eth5 | 00:01:00:00:00:60 | - | S4 | ||
8 | OpenFlow Switch S6 | eth0 | 00:01:00:00:00:16 | - | S12 |
eth1 | 00:01:00:00:00:17 | - | S13 | ||
eth2 | 00:01:00:00:00:18 | - | S3 | ||
eth3 | 00:01:00:00:00:53 | 1.0.1.11 | Controller plane switch | ||
eth4 | 00:01:00:00:00:5e | - | S5 | ||
eth5 | 00:01:00:00:00:61 | - | S7 | ||
9 | OpenFlow Switch S7 | eth0 | 00:01:00:00:00:1b | - | S3 |
eth1 | 00:01:00:00:00:1c | - | S14 | ||
eth2 | 00:01:00:00:00:1d | - | S15 | ||
eth3 | 00:01:00:00:00:54 | 1.0.1.15 | Controller plane switch | ||
eth4 | 00:01:00:00:00:62 | - | S6 | ||
10 | OpenFlow Switch S8 | eth0 | 00:01:00:00:00:1f | - | S4 |
eth1 | 00:01:00:00:00:20 | - | H1 | ||
eth2 | 00:01:00:00:00:21 | - | H2 | ||
eth3 | 00:01:00:00:00:55 | 1.0.1.6 | Controller plane switch | ||
11 | OpenFlow Switch S9 | eth0 | 00:01:00:00:00:22 | - | S4 |
eth1 | 00:01:00:00:00:23 | - | H3 | ||
eth2 | 00:01:00:00:00:24 | - | H4 | ||
eth3 | 00:01:00:00:00:56 | 1.0.1.7 | Controller plane switch | ||
12 | OpenFlow Switch S10 | eth0 | 00:01:00:00:00:25 | - | S5 |
eth1 | 00:01:00:00:00:26 | - | H5 | ||
eth2 | 00:01:00:00:00:27 | - | H6 | ||
eth3 | 00:01:00:00:00:57 | 1.0.1.8 | Controller plane switch | ||
13 | OpenFlow Switch S11 | eth0 | 00:01:00:00:00:28 | - | S5 |
eth1 | 00:01:00:00:00:29 | - | H7 | ||
eth2 | 00:01:00:00:00:2a | - | H8 | ||
eth3 | 00:01:00:00:00:58 | 1.0.1.9 | Controller plane switch | ||
14 | OpenFlow Switch S12 | eth0 | 00:01:00:00:00:2b | - | S6 |
eth1 | 00:01:00:00:00:2c | - | H9 | ||
eth2 | 00:01:00:00:00:2d | - | H10 | ||
eth3 | 00:01:00:00:00:59 | 1.0.1.10 | Controller plane switch | ||
15 | OpenFlow Switch S13 | eth0 | 00:01:00:00:00:2e | - | S6 |
eth1 | 00:01:00:00:00:2f | - | H11 | ||
eth2 | 00:01:00:00:00:30 | - | H12 | ||
eth3 | 00:01:00:00:00:5a | 1.0.1.13 | Controller plane switch | ||
16 | OpenFlow Switch S14 | eth0 | 00:01:00:00:00:31 | - | S7 |
eth1 | 00:01:00:00:00:32 | - | H13 | ||
eth2 | 00:01:00:00:00:33 | - | H14 | ||
eth3 | 00:01:00:00:00:5b | 1.0.1.14 | Controller plane switch | ||
17 | OpenFlow Switch S15 | eth0 | 00:01:00:00:00:34 | - | S7 |
eth1 | 00:01:00:00:00:35 | - | H15 | ||
eth2 | 00:01:00:00:00:36 | - | H16 | ||
eth3 | 00:01:00:00:00:5c | 1.0.1.16 | Controller plane switch | ||
18 | Host H1 | eth0 | 00:01:00:00:00:37 | 1.0.2.1 | S8 |
19 | Host H2 | eth0 | 00:01:00:00:00:38 | 1.0.2.2 | S8 |
20 | Host H3 | eth0 | 00:01:00:00:00:39 | 1.0.2.3 | S9 |
21 | Host H4 | eth0 | 00:01:00:00:00:3a | 1.0.2.4 | S9 |
22 | Host H5 | eth0 | 00:01:00:00:00:3b | 1.0.2.5 | S10 |
23 | Host H6 | eth0 | 00:01:00:00:00:3c | 1.0.2.6 | S10 |
24 | Host H7 | eth0 | 00:01:00:00:00:3d | 1.0.2.7 | S11 |
25 | Host H8 | eth0 | 00:01:00:00:00:3e | 1.0.2.8 | S11 |
26 | Host H9 | eth0 | 00:01:00:00:00:3f | 1.0.2.9 | S12 |
27 | Host H10 | eth0 | 00:01:00:00:00:40 | 1.0.2.10 | S12 |
28 | Host H11 | eth0 | 00:01:00:00:00:41 | 1.0.2.11 | S13 |
29 | Host H12 | eth0 | 00:01:00:00:00:42 | 1.0.2.12 | S13 |
30 | Host H13 | eth0 | 00:01:00:00:00:43 | 1.0.2.13 | S14 |
31 | Host H14 | eth0 | 00:01:00:00:00:44 | 1.0.2.14 | S14 |
32 | Host H15 | eth0 | 00:01:00:00:00:45 | 1.0.2.15 | S15 |
33 | Host H16 | eth0 | 00:01:00:00:00:46 | 1.0.2.16 | S15 |
Dataset | DDoS-SDN (2020) [15] | InSDN (2020) [2] | ||
The number of features | 22 | 83 | ||
The number of classes | 2 (binary) | 8 (multi-class) | ||
The number of instances per class | Normal | 63,561 | 68,424 | |
Abnormal | DoS | 40,784 | 53,616 | |
DDoS | 121,942 | |||
BFA | 1405 | |||
Botnet | 164 | |||
Web-Attack | 192 | |||
Probe | 98,129 | |||
U2R | 17 | |||
The total number of instances | 104,345 | 343,889 |
ID | Feature | Description | ID | Feature | Description |
---|---|---|---|---|---|
1 | dt | Convert a date and time | 2 | switch | Switch ID |
3 | src | Source IP | 4 | dst | Destination IP |
5 | pktcount | Count of packets | 6 | bytecount | Count of bytes |
7 | dur | Duration | 8 | dur_nsec | Duration in nanoseconds |
9 | tot_dur | Sum of duration in seconds | 10 | flow | Flow amount at an interval |
11 | packetins | # of packets | 12 | pktperflow | Packets during a flow |
13 | byteperflow | Bytes during a flow | 14 | pktrate | Packets per second |
15 | pairflow | Packet per flow in a interval | 16 | protocol | TCP/UDP/ICMP |
17 | prot_no | Port No. | 18 | tx_bytes | Transfer bytes |
19 | rx_bytes | Receiving bytes | 20 | tx_kbps | Transfer kilobytes |
21 | rx_bytes | Receiving kilobytes | 22 | tot_kbps | Total kilobytes |
ID | Feature | Select | ID | Feature | Select | ID | Feature | Select |
---|---|---|---|---|---|---|---|---|
1 | Flow ID | 2 | Src IP | 3 | Src Port | |||
4 | Dst IP | 5 | Dst Port | 6 | Protocol | ✓ | ||
7 | Timestamp | 8 | Flow duration | ✓ | 9 | Tot Fwd Pkts | ✓ | |
10 | Tot Bwd Pkts | ✓ | 11 | Tot Len Fwd Pkts | ✓ | 12 | Tot Len Bwd Pkts | ✓ |
13 | Fwd Pkt Len Max | ✓ | 14 | Fwd Pkt Len Min | ✓ | 15 | Fwd Pkt Len Mean | ✓ |
16 | Fwd Pkt Len Std | ✓ | 17 | Bwd Pkt Len Max | ✓ | 18 | Bwd Pkt Len Min | ✓ |
19 | Bwd Pkt Len Mean | ✓ | 20 | Bwd Pkt Len Std | ✓ | 21 | Flow Byts/s | ✓ |
22 | Flow Pkts/s | ✓ | 23 | Flow IAT Mean | ✓ | 24 | Flow IAT Std | ✓ |
25 | Flow IAT Max | ✓ | 26 | Flow IAT Min | ✓ | 27 | Fwd IAT Tot | ✓ |
28 | Fwd IAT Mean | ✓ | 29 | Fwd IAT Std | ✓ | 30 | Fwd IAT Max | ✓ |
31 | Fwd IAT Min | ✓ | 32 | Bwd IAT Tot | ✓ | 33 | Bwd IAT Mean | ✓ |
34 | Bwd IAT Std | ✓ | 35 | Bwd IAT Max | ✓ | 36 | Bwd IAT Min | ✓ |
37 | Fwd PSH Flags | 38 | Bwd PSH Flags | 39 | Fwd URG Flags | |||
40 | Fwd URG Flags | 41 | Fwd Header Len | ✓ | 42 | Bwd Header Len | ✓ | |
43 | Fwd Pkts/s | ✓ | 44 | Bwd Pkts/s | ✓ | 45 | Pkt Len Min | ✓ |
46 | Pkt Len Max | ✓ | 47 | Pkt Len Mean | ✓ | 48 | Pkt Len Std | ✓ |
49 | Pkt Len Var | ✓ | 50 | FIN Flag Cnt | 51 | SYN Flag Cnt | ||
52 | RST Flag Cnt | 53 | PSH Flag Cnt | 54 | ACK Flag Cnt | |||
55 | URG Flag Cnt | 56 | CWE Flag Count | 57 | ECE Flag Cnt | |||
58 | Down/Up Ratio | 59 | Pkt Size Avg | ✓ | 60 | Fwd Seg Size Avg | ||
61 | Bwd Seg Size Avg | 62 | Fwd Byts/b Avg | 63 | Fwd Pkts/b Avg | |||
64 | Fwd Blk Rate Avg | 65 | Bwd Byts/b Avg | 66 | Bwd Pkts/b Avg | |||
67 | Bwd Blk Rate Avg | 68 | Subflow Fwd Pkts | 69 | Subflow Fwd Byts | |||
70 | Subflow Bwd Pkts | 71 | Subflow Bwd Byts | 72 | Init Fwd Win Byts | |||
73 | Init Bwd Win Byts | 74 | Fwd Act Data Pkts | 75 | Fwd Seg Size Min | |||
76 | Active Mean | ✓ | 77 | Active Std | ✓ | 78 | Active Max | ✓ |
79 | Active Min | ✓ | 80 | Idle Mean | ✓ | 81 | Idle Std | ✓ |
82 | Idle Max | ✓ | 83 | Idle Min | ✓ |
Models | # of Layer | Type | # of Neurons | Activation |
---|---|---|---|---|
MLP | Layer1 | Dense | 80 | Relu |
Layer2 | Dense | 100 | Relu | |
Layer3 | Dense | 8 | Softmax | |
CNN | Layer1 | Conv1D | 64 | Relu |
Layer2 | Conv1D | 64 | Relu | |
Layer3 | MaxPooling1D (pool size = 1) | |||
Layer4 | Dense | 128 | Relu | |
Layer5 | Dropout (p = 0.5) | |||
Layer6 | Dense | 8 | Softmax | |
RNN | Layer1 | SimpleRNN | 64 | Relu |
Layer2 | Dense | 256 | Relu | |
Layer3 | Dropout (p = 0.35) | |||
Layer4 | Dense | 8 | Softmax | |
LSTM | Layer1 | LSTM | 64 | Relu |
Layer2 | Dense | 256 | Relu | |
Layer3 | Dense | 256 | Relu | |
Layer4 | Dense | 8 | Softmax | |
GPU | Layer1 | GRU | 64 | Relu |
Layer2 | Dropout (p = 0.2) | |||
Layer3 | Dense | 256 | Relu | |
Layer4 | Dense | 256 | Relu | |
Layer5 | Dense | 8 | Softmax |
Model | Single Classifier (F1) | HMC Architecture (F1) | Improved (%) |
---|---|---|---|
Decison tree | 0.85 | 0.98 | ↑ 13% |
Random forest | 0.86 | 0.91 | ↑ 5% |
KNN | 0.84 | 0.90 | ↑ 6% |
Naïve Bayes | 0.33 | 0.46 | ↑ 13% |
SVM-RBF | 0.44 | 0.46 | ↑ 2% |
L-SVM | 0.44 | 0.46 | ↑ 2% |
Bagging | 0.86 | 0.93 | ↑ 7% |
AdaBoost | 0.40 | 0.91 | ↑ 51% |
MLP | 0.75 | 0.69 | ↓ 6% |
CNN | 0.66 | 0.72 | ↑ 6% |
RNN | 0.52 | 0.73 | ↑ 21% |
LSTM | 0.63 | 0.74 | ↑ 11% |
GRU | 0.53 | 0.72 | ↑ 19% |
Order | Feature | IG | Order | Feature | IG |
---|---|---|---|---|---|
1 | Dst Port | 0.466337 | 2 | Init Bwd Win Byts | 0.188352 |
3 | Pkt Len Max | 0.184689 | 4 | Bwd Header Len | 0.060474 |
5 | Bwd Pkt Len Max | 0.024999 | 6 | PSH Flag Cnt | 0.024586 |
7 | Src Port | 0.018379 | 8 | Flow IAT Std | 0.018379 |
9 | Flow IAT Max | 0.005798 | 10 | Active Min | 0.004491 |
11 | Idle Min | 0.002452 | 12 | Subflow Fwd Pkts | 0.002375 |
13 | Bwd Pkt Len Mean | 0.002219 | 14 | Subflow Fwd Pkts | 0.001317 |
15 | Flow IAT Mean | 0.000926 | 16 | Fwd Act Data Pkts | 0.000898 |
17 | Down/Up Ratio | 0.000595 | 18 | Protocol | 0.000538 |
19 | RST Flag Cnt | 0.000483 | 20 | Tot Fwd Pkts | 0.000451 |
Publisher’s Note: MDPI stays neutral with regard to jurisdictional claims in published maps and institutional affiliations. |
© 2022 by the authors. Licensee MDPI, Basel, Switzerland. This article is an open access article distributed under the terms and conditions of the Creative Commons Attribution (CC BY) license (https://creativecommons.org/licenses/by/4.0/).
Share and Cite
Chuang, H.-M.; Liu, F.; Tsai, C.-H. Early Detection of Abnormal Attacks in Software-Defined Networking Using Machine Learning Approaches. Symmetry 2022, 14, 1178. https://doi.org/10.3390/sym14061178
Chuang H-M, Liu F, Tsai C-H. Early Detection of Abnormal Attacks in Software-Defined Networking Using Machine Learning Approaches. Symmetry. 2022; 14(6):1178. https://doi.org/10.3390/sym14061178
Chicago/Turabian StyleChuang, Hsiu-Min, Fanpyn Liu, and Chung-Hsien Tsai. 2022. "Early Detection of Abnormal Attacks in Software-Defined Networking Using Machine Learning Approaches" Symmetry 14, no. 6: 1178. https://doi.org/10.3390/sym14061178
APA StyleChuang, H. -M., Liu, F., & Tsai, C. -H. (2022). Early Detection of Abnormal Attacks in Software-Defined Networking Using Machine Learning Approaches. Symmetry, 14(6), 1178. https://doi.org/10.3390/sym14061178