A DDoS Attack Mitigation Scheme in ISP Networks Using Machine Learning Based on SDN †
Abstract
:1. Introduction
- In volume-based attacks, the attacker attempts to create congestion by consuming all available bandwidth between the target and the Internet. A large amount of traffic is sent to a target by using a form of amplification or other means that create massive traffic, such as requests from a botnet [18]. A good example of this categorization is ICMP flood attack [1].
- Protocol-based attacks, also known as a state-exhaustion attack, cause a service disruption by consuming all the available state table capacity of servers or intermediate resources like firewalls and load balancers. Protocol attacks utilize weaknesses in layer 3 and layer 4 of the protocol stack to render the target inaccessible [18], e.g., TCP-SYN flood [1].
- On the other hand, the goal of application layer attacks is to exhaust the resources of the target. The attacker establishes a connection with the target and then exhausts the server resources by monopolizing processes and transactions. The attacker exploits a weakness in the layer 7 protocol stack [18].
- Detection versus mitigation: most of research work focuses on DDoS detection. The number of mitigation research is quite limited as they are more difficult. The main methodology of current detection approaches is mainly based on the difference of network traffic characteristics and patterns during normal and attack states. However, once DDoS attack is detected, it is more difficult to differentiate attack traffic with innocent traffic. That is why DDoS attack is much more difficult to mitigate.
- Complexity of detection and mitigation algorithms: several approaches are based on simulation and offline analysis with complex operations. This makes it difficult to evaluate the performance of detection and mitigation algorithms under real network conditions and real-time.
- Characterizing attack traffic and innocent traffic in Internet Service Provider (ISP) networks: by investigating real traffic traces, we find out important features that can be used to differentiate normal traffic and TCP-SYN, ICMP Flood attacks traffic in ISP network scenarios;
- Proposing novel machine learning mitigation algorithms: based on these features, a machine-learning algorithm integrated in the SDN controller has been developed to detect and drop attack traffic while innocent traffic is almost not affected;
- An adaptive method to optimize the parameters of mitigation algorithms for accuracy improvement: A testbed is deployed to evaluate the approach in real devices and real time. Based on experiments conducted in the testbed, an adaptive mechanism to improve the mitigation accuracy is proposed.
2. Related Work
3. Traffic Analysis
3.1. Traffic Dataset
3.2. Traffic Analysis
4. KNN-Based Approach for DDoS Attack Mitigation
5. Adaptice Monitoring Time Window
6. Performance Evaluation
6.1. Tesbed Setup and Parameter Settings
- We firstly argue the deployment of the KNN algorithm in the proposed approach by comparing the accuracy and complexity of some machine learning algorithms, since they are important trade-off in realtime operations.
- The performance of the KNN algorithm based on accuracy, precision, recall and F1 score is then evaluated.
- The next step is to discuss the mitigation efficiency of the proposed adaptive MTW in both TCP-SYN and ICMP flood cases.
- Finally, behaviour of innocent traffic under DDoS attack is investigated.
6.2. Experimental Results
- Accuracy is the number of correctly detected cases in all tests.
- Precision is how accurate the model is out of those predicted positive, how many of them are actually positive.
- Recall calculates how many of the Actual Positives that the model captures through labeling it as Positive.
- F1-score is a function of Precision and Recall. It balances between Precision and Recall; therefore, F1 might be a better measurement to use.
7. Conclusions
Author Contributions
Conflicts of Interest
References
- Mahjabin, T.; Xiao, Y.; Sun, G.; Jiang, W.D. A Survey of distributed denial-of-service Attack, Prevention, and Mitigation Techniques. SAGE J. 2017, 13, 12. [Google Scholar] [CrossRef] [Green Version]
- Zargar, S.T.; Joshi, J.; Tipper, D. A Survey of Defense Mechanisms Against Distributed Denial of Service (DDoS) Flooding Attacks. IEEE Commun. Surv. Tutor. 2013, 15, 2046–2069. [Google Scholar] [CrossRef] [Green Version]
- Software-Define Networking: The New Norm for Networking. Available online: www.opennetworking.org (accessed on 26 February 2020).
- Sangodoyin, A.; Modu, B.; Awan, I.; Disso, J.P. An Approach to Detecting Distributed Denial of Service Attacks in Software Defined Networks. In Proceedings of the IEEE 6th International Conference on Future Internet of Things and Cloud, Barcelona, Spain, 6–8 August 2018. [Google Scholar]
- Barki, L.; Shidling, A.; Meti, N.; Narayan, D.G.; Mulla, M.M. Detection of Distributed Denial of Service Attacks in Software Defined Networks. In Proceedings of the 2016 International Conference on Advances in Computing, Communications and Informatics (ICACCI), Jaipur, India, 21–24 September 2016. [Google Scholar]
- Conti, M.; Lal, C.; Mohammadi, R.; Rawat, U. Lightweight solutions to counter DDoS attacks in Software Defined Networking. Wirel. Netw. 2019, 25, 2751–2768. [Google Scholar] [CrossRef]
- Hameed, S.; Khan, H.A. SDN Based Collaborative Scheme for Mitigation of DDoS Attacks. Future Internet 2018, 10, 23. [Google Scholar] [CrossRef] [Green Version]
- Lin, H.C.; Wang, P. Implementation of an SDN-based Security Defense Mechanism Against DDoS Attacks. In Proceedings of the 2016 Joint International Conference on Economics and Management Engineering and International Conference on Economics and Business Management, Wuhan, China, 18–19 June 2016; ISBN 978-1-60595-365-6. [Google Scholar]
- Swami, R.; Dave, M.; Ranga, V. Software-defined networking-based DDoS Defense Mechanisms. ACM Comput. Surv. 2019, 52, 36. [Google Scholar] [CrossRef]
- Alshamrani, A.; Chowdhary, A.; Pisharody, S.; Lu, D.; Huang, D. A Defense System for Defeating DDoS Attacks in SDN based Networks. In Proceedings of the 15th ACM International Symposium on Mobility Management and Wireless Access (MobiWac ’17), New York, NY, USA, 21–25 November 2017; pp. 83–92. [Google Scholar] [CrossRef]
- Manso, P.; Moura, J.; Serrão, C. SDN-Based Intrusion Detection System for Early Detection and Mitigation of DDoS Attacks. Information 2019, 10, 106. [Google Scholar] [CrossRef] [Green Version]
- Chin, T.; Mountrouidou, X.; Li, X.Y.; Xiong, K.Q. An SDN-Supported Collaborative Approach for DDoS Flooding Detection and Containment. In Proceedings of the 2015 IEEE Military Communications Conference, Tampa, FL, USA, 26–28 October 2015. [Google Scholar]
- Yang, X.; Han, B.; Sun, Z.; Huang, J. SDN-based DDoS Attack Detection with Cross-plane Collaboration and Lightweight Low Monitoring. In Proceedings of the GLOBECOM 2017—2017 IEEE Global Communications Conference, Singapore, 4–8 December 2017; pp. 1–6. [Google Scholar]
- Xu, Y.; Liu, Y. DDoS Attack Detection Under SDN Context. In Proceedings of the IEEE INFOCOM 2016—The 35th Annual IEEE International Conference on Computer Communications, San Francisco, CA, USA, 10–14 April 2016; pp. 1–9. [Google Scholar]
- Kumar, P.; Tripathi, M.; Nehra, A.; Conti, M.; Lal, C. SAFETY: Early Detection and Mitigation of TCP SYN Flood Utilizing Entropy in SDN. IEEE Trans. Netw. Service Manag. 2018, 15, 1545–1559. [Google Scholar] [CrossRef]
- Hu, D.; Hong, P.; Chen, Y. FADM: DDoS Flooding Attack Detection and Mitigation System in software-defined networking. In Proceedings of the GLOBECOM 2017—2017 IEEE Global Communications Conference, Singapore, 4–8 December 2017. [Google Scholar]
- Malik, M.; Singh, Y. A Review: DoS and DDoS Attacks. Int. J. Comput. Sci. Mob. Comput. 2015, 4, 260–265. [Google Scholar]
- What is a DDoS Attack? Available online: https://www.cloudflare.com/learning/ddos/what-is-a-ddos-attack/ (accessed on 22 December 2019).
- Bogdanoski, M.; Shuminoski, T.; Risteski, A. Analysis of the SYN Flood DoS Attack. I. J. Comput. Netw. Inf. Secur. 2013, 8, 1–11. [Google Scholar] [CrossRef]
- Kupreev, O.; Badovskaya, E.; Gutnikov, A. DDoS Attacks in Q4 2018; Kaspersky Lab Report; Kaspersky Lab: Moscow, Russia, 7 February 2019. [Google Scholar]
- Harshita, R.N. Detection and Prevention of ICMP Flood DDOS Attack. Int. J. New Technol. Res. 2017, 3, 63–69. [Google Scholar]
- Bouyeddou, B.; Harrou, F.; Sun, Y.; Kadri, B. Detection of Smurf Flooding Attacks Using Kullback-Leibler-based Scheme. In Proceedings of the 2018 4th International Conference on Computer and Technology Applications (ICCTA), Istanbul, Turkey, 3–5 May 2018. [Google Scholar] [CrossRef] [Green Version]
- Yusof, M.A.M.; Ali, F.H.M.; Darus, M.Y. Detection and Defense Algorithms of Different Types of DDoS Attacks. Int. J. Eng. Technol. 2017, 9, 410–414. [Google Scholar] [CrossRef] [Green Version]
- Tuan, N.N.; Hung, P.V.; Nghia, N.D.; Tho, N.V.; Thanh, N.H. A Robust TCP-SYN Flood Mitigation Scheme Using Machine Learning Based on SDN. In Proceedings of the 10th International Conference on ICT Convergence (ICTC 2019), Jeju Island, Korea, 16–18 October 2019. [Google Scholar]
- Nam, T.M.; Phong, P.H.; Khoa, T.D.; Huong, T.T.; Nam, P.N.; Thanh, N.H. Self-Organizing Map-Based Approaches in DDOS Flooding Detection Using SDN. In Proceedings of the 2018 International Conference on Information Networking, Chiang Mai, Thailand, 10–12 January 2018. [Google Scholar]
- Yang, L.; Zhao, H. DDos attack identification and defense using SDN based on machine learning method. In Proceedings of the International Symposium on Pervasive Systems, Algorithms and Networks (I-SPAN), Yichang, China, 16–18 October 2018. [Google Scholar]
- Snort. Available online: https://www.snort.org/ (accessed on 26 February 2020).
- Ryu. Available online: https://osrg.github.io/ryu/ (accessed on 26 February 2020).
- CAIDA 2007 Dataset. Available online: https://www.caida.org/data/passive/ddos-20070804_dataset.xml (accessed on 30 July 2019).
- Kato, K.; Klyuev, V. An Intelligent DDoS Attack Detection System Using Packet Analysis and Support Vector Machine. Int. J. Intell. Comput. Res. 2014, 5, 464–471. [Google Scholar] [CrossRef]
- Singh, K.J.; De, T. Mathematical modelling of DDoS attack and detection using correlation. J. Cyber Secur. Technol. 2017, 1, 175–186. [Google Scholar] [CrossRef]
- Hoque, N.; Kashyap, H.; Bhattacharyya, D.K. Real-time DDoS attack detection using FPGA. Comput. Commun. 2017, 110, 48–58. [Google Scholar] [CrossRef]
- Abusitta, A.; Bellaiche, M.; Dagenais, M. An SVM-based framework for detecting DoS attacks in virtualized clouds under changing environment. J Cloud Comp. 2018, 7, 9. [Google Scholar] [CrossRef] [Green Version]
- BoNeSi—The DDoS Botnet Simulator. Available online: https://github.com/Markus-Go/bonesi (accessed on 26 February 2020).
- Cover, T.; Hart, P. Nearest Neighbor Pattern Classification. IEEE Trans. Inf. Theory 1967, 13, 21–27. [Google Scholar] [CrossRef]
- Cheng, D.; Zhang, S.C.; Deng, Z.Y.; Zhu, Y.H.; Zong, M. kNN Algorithm with Data-Driven k Value. In Proceedings of the Advanced Data Mining and Applications, ADMA 2014, Guilin, China, 19–21 December 2014; pp. 499–512. [Google Scholar]
- Chen, T.; Guestrin, C. XGBoost: A Scalable Tree Boosting System. In Proceedings of the 22nd ACM SIGKDD International Conference on Knowledge Discovery and Data Mining (KDD ’16), New York, NY, USA, 13 August 2016; pp. 785–794. [Google Scholar] [CrossRef] [Green Version]
- Friedman, J.H. Greedy Function Approximation: A Gradient Boosting Machine. Annals Stat. 2001, 29, 1189–1232. [Google Scholar] [CrossRef]
- POX. Available online: https://noxrepo.github.io/pox-doc/html (accessed on 26 February 2020).
- OpenVSwitch. Available online: https://www.openvswitch.org/ (accessed on 26 February 2020).
Time (second) | # of IPs (TCP) | # of TCP Ports | # of IPs (ICMP) | # of ICMP Packets |
---|---|---|---|---|
0–20 | 2 | 149 | 9 | 7363 |
20–40 | 72 | 424 | 10 | 7191 |
40–60 | 84 | 946 | 9 | 6646 |
60–80 | 94 | 1291 | 65 | 9580 |
80–100 | 177 | 35702 | 739 | 370873 |
100–120 | 242 | 82685 | 1368 | 983884 |
120–140 | 332 | 134838 | 2126 | 1616179 |
140–160 | 421 | 180078 | 2714 | 2291028 |
160–180 | 504 | 233090 | 3365 | 2905617 |
180–200 | 585 | 186489 | 4020 | 2307083 |
200–220 | 663 | 100631 | 4583 | 1238029 |
220–240 | 747 | 265239 | 5218 | 2970610 |
240–260 | 817 | 262481 | 5817 | 3059760 |
260–280 | 890 | 254574 | 6447 | 3053683 |
280–300 | 1043 | 253794 | 7083 | 3013000 |
Time (second) | # of IPs (TCP) | # of TCP Ports | # of IPs (ICMP) | # of ICMP Packets |
---|---|---|---|---|
0–20 | 30 | 3690 | 31 | 12540 |
20–40 | 31 | 214631 | 31 | 435002 |
40–60 | 30 | 21410 | 31 | 804340 |
60–80 | 30 | 23183 | 31 | 790350 |
80–100 | 30 | 25273 | 31 | 796565 |
100–120 | 30 | 11357 | 31 | 799529 |
120–140 | 30 | 26692 | 31 | 794226 |
140–160 | 30 | 27139 | 31 | 797614 |
160–180 | 31 | 26008 | 31 | 797680 |
180–200 | 31 | 25428 | 31 | 795097 |
200–220 | 31 | 13500 | 31 | 801166 |
F (# of Flows/s; # of Packets/s) | ||
---|---|---|
… | … | … |
… | … | … |
F (# of TCP Flows/s) | ||
---|---|---|
500 | ||
3000 | ||
6000 | ||
9000 | ||
12,000 | ||
15,000 |
F (# of ICMP Packets/s) | ||
---|---|---|
2500 | ||
4000 | ||
15,000 | ||
35,000 | ||
45,000 | ||
80,000 |
OvS | Controller | Traffic Generator | Victim | |
---|---|---|---|---|
Version | 2.5.5 | POX with OpenFlow 1.0 | Bonesi; CAIDA 2007, 5 pcap files, attack | |
CPU | 6 Xeon(R) | 6 Xeon(R) | Xeon(R) | Xeon(R) |
RAM | ||||
Cores | 24 | 16 | 12 | 24 |
OS | Ubuntu 14.04 | Ubuntu 14.04 | Ubuntu 14.04 | Ubuntu 14.04 |
Parameters | KNN | Decision Tree | NeuralNet |
---|---|---|---|
Calculation time (ms) | 0.411 | 0.405 | 14.325 |
Accuracy | 0.982143 | 0.981522 | 0.988425 |
Precision | 0.990291 | 0.976744 | 0.966942 |
Recall | 0.971429 | 0.984375 | 0.983193 |
F1-score | 0.980769 | 0.980544 | 0.975000 |
K-Neighbors | Accuracy | Precision | Recall | F1-Score |
---|---|---|---|---|
3 | 0.964286 | 0.940171 | 0.990991 | 0.964912 |
5 | 0.968750 | 0.947368 | 0.990826 | 0.968610 |
7 | 0.973214 | 0.956897 | 0.991071 | 0.973684 |
9 | 0.991071 | 0.991453 | 0.991453 | 0.991453 |
11 | 0.982143 | 0.990291 | 0.971429 | 0.980769 |
% Blocked ICMP Flood Attack Packets | % Blocked TCP-SYN Flood Attack Flows |
---|---|
99.4% | 98.9% |
© 2020 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 (http://creativecommons.org/licenses/by/4.0/).
Share and Cite
Tuan, N.N.; Hung, P.H.; Nghia, N.D.; Tho, N.V.; Phan, T.V.; Thanh, N.H. A DDoS Attack Mitigation Scheme in ISP Networks Using Machine Learning Based on SDN. Electronics 2020, 9, 413. https://doi.org/10.3390/electronics9030413
Tuan NN, Hung PH, Nghia ND, Tho NV, Phan TV, Thanh NH. A DDoS Attack Mitigation Scheme in ISP Networks Using Machine Learning Based on SDN. Electronics. 2020; 9(3):413. https://doi.org/10.3390/electronics9030413
Chicago/Turabian StyleTuan, Nguyen Ngoc, Pham Huy Hung, Nguyen Danh Nghia, Nguyen Van Tho, Trung Van Phan, and Nguyen Huu Thanh. 2020. "A DDoS Attack Mitigation Scheme in ISP Networks Using Machine Learning Based on SDN" Electronics 9, no. 3: 413. https://doi.org/10.3390/electronics9030413
APA StyleTuan, N. N., Hung, P. H., Nghia, N. D., Tho, N. V., Phan, T. V., & Thanh, N. H. (2020). A DDoS Attack Mitigation Scheme in ISP Networks Using Machine Learning Based on SDN. Electronics, 9(3), 413. https://doi.org/10.3390/electronics9030413