| Literature DB >> 35632016 |
Safi Ullah1, Jawad Ahmad2, Muazzam A Khan1,3, Eman H Alkhammash4, Myriam Hadjouni5, Yazeed Yasin Ghadi6, Faisal Saeed7, Nikolaos Pitropakis2.
Abstract
The Internet of Things (IoT) is a widely used technology in automated network systems across the world. The impact of the IoT on different industries has occurred in recent years. Many IoT nodes collect, store, and process personal data, which is an ideal target for attackers. Several researchers have worked on this problem and have presented many intrusion detection systems (IDSs). The existing system has difficulties in improving performance and identifying subcategories of cyberattacks. This paper proposes a deep-convolutional-neural-network (DCNN)-based IDS. A DCNN consists of two convolutional layers and three fully connected dense layers. The proposed model aims to improve performance and reduce computational power. Experiments were conducted utilizing the IoTID20 dataset. The performance analysis of the proposed model was carried out with several metrics, such as accuracy, precision, recall, and F1-score. A number of optimization techniques were applied to the proposed model in which Adam, AdaMax, and Nadam performance was optimum. In addition, the proposed model was compared with various advanced deep learning (DL) and traditional machine learning (ML) techniques. All experimental analysis indicates that the accuracy of the proposed approach is high and more robust than existing DL-based algorithms.Entities:
Keywords: Internet of Things; convolution neural network; cybersecurity; deep learning; intrusion detection
Mesh:
Year: 2022 PMID: 35632016 PMCID: PMC9146064 DOI: 10.3390/s22103607
Source DB: PubMed Journal: Sensors (Basel) ISSN: 1424-8220 Impact factor: 3.847
Figure 1Growth of IoT devices from 2015 to 2025 [5].
A comparison of existing work related to intrusion detection in IoT.
| Authors | Year | Technique | Dataset | Multi-Class Detection | Sub-Categories Multi-Class Detection |
|---|---|---|---|---|---|
| Basati et al. [ | 2022 | DFE | KDDCup99, CICIDS2017, UNSW-NB15 | ✓ | × |
| Rashid et al. [ | 2022 | Ensemble | NSL-KDD, UNSW-NB15 | × | × |
| Fatani et al. [ | 2022 | AQU, PSO | CIC2017, NSL-KDD, BoT-IoT, KDD99 | ✓ | × |
| Alkahtani et al. [ | 2021 | CNN-LSTM | IoTID20 | × | × |
| Keserwani et al. [ | 2021 | GWO–PSO–RF | KDDCup99, NSL–KDD, CICIDS-2017 | ✓ | × |
| Qaddoura et al. [ | 2021 | SLFN-SVM-SMOTE | IoTID20 | ✓ | × |
| Saba et al. [ | 2021 | GA-(SVM, Ensemble, DT) | NSL-KDD | ✓ | × |
| Propose Study | 2022 | CNN-DNN | IoTID20 | ✓ | ✓ |
Label details of IoTID20 dataset.
| Binary | Category | Subcategory |
|---|---|---|
| Normal | Normal | Normal |
| Anomaly | DoS | DoS-Synflooding |
| Mirai | Mirai-Ackflooding | |
| Mirai-HTTP Flooding | ||
| Mirai-Hostbruteforceg | ||
| Mirai-UDP Flooding | ||
| MITM | MITM ARP Spoofing | |
| Scan | Scan Port OS | |
| Scan Hostport |
A detailed distribution of IoTID20 dataset in train and test.
| Type | Class | Instances | Train Set | Test Set |
|---|---|---|---|---|
| Binary | Anomaly | 585,342 | 468,274 | 117,068 |
| Normal | 40,073 | 32,058 | 8015 | |
| Total | 625,415 | 500,332 | 125,083 | |
| Category | Mirai | 415,309 | 332,247 | 83,062 |
| Scan | 75,265 | 60,212 | 15,053 | |
| DoS | 59,391 | 47,513 | 11,878 | |
| MITM ARP Spoofing | 35,377 | 28,302 | 7075 | |
| Normal | 40,073 | 32,058 | 8015 | |
| Total | 625,415 | 500,332 | 125,083 | |
| Sub-Category | Mirai-UDP Flooding | 183,189 | 146,551 | 36,638 |
| Mirai-Hostbruteforceg | 121,178 | 96,943 | 24,235 | |
| Mirai-HTTP Flooding | 55,818 | 44,654 | 11,164 | |
| Mirai-Ackflooding | 55,124 | 44,099 | 11,025 | |
| DoS-Synflooding | 59,391 | 47,513 | 11,878 | |
| Scan Port OS | 53,073 | 42,458 | 10,615 | |
| Scan Hostport | 22,192 | 17,754 | 4438 | |
| MITM ARP Spoofing | 35,377 | 28,302 | 7075 | |
| Normal | 40,073 | 32,058 | 8015 | |
| Total | 625,415 | 500,332 | 125,083 | |
Figure 2Architecture of the proposed DCNN model.
A comparison of CNN layers for multi-class category classification.
| Convolutional Layers | Dense Layers | Accuracy | Precision | Recall | F1-Score |
|---|---|---|---|---|---|
| 1 | 1 | 0.9465 | 0.92 | 0.9297 | 0.9237 |
| 1 | 3 | 0.9798 | 0.9712 | 0.9723 | 0.9716 |
| 2 | 1 | 0.9791 | 0.9756 | 0.9656 | 0.9701 |
| 2 | 2 | 0.9823 | 0.9744 | 0.9753 | 0.9747 |
|
|
|
|
|
|
|
| 2 | 4 | 0.9794 | 0.9697 | 0.9735 | 0.9713 |
| 2 | 5 | 0.9813 | 0.974 | 0.9757 | 0.9744 |
A comparison of CNN layers for multi-class sub-category classification.
| Convolutional Layers | Dense Layers | Accuracy | Precision | Recall | F1-Score |
|---|---|---|---|---|---|
| 1 | 1 | 0.7232 | 0.7056 | 0.6443 | 0.6182 |
| 1 | 3 | 0.7633 | 0.7660 | 0.7157 | 0.6804 |
| 2 | 1 | 0.7690 | 0.7518 | 0.6563 | 0.7008 |
| 2 | 2 | 0.7731 | 0.7955 | 0.7320 | 0.6989 |
|
|
|
|
|
|
|
| 2 | 4 | 0.7732 | 0.7890 | 0.6790 | 0.6541 |
| 2 | 5 | 0.7650 | 0.8499 | 0.6527 | 0.6160 |
A detailed comparison of optimizers for multi-class category classification.
| Optimizer | Accuracy | Precision | Recall | F1-Score |
|---|---|---|---|---|
| SGD | 0.9789 | 0.9676 | 0.9706 | 0.9690 |
| RMSprop | 0.7630 | 0.7457 | 0.7195 | 0.6527 |
| Adam | 0.9801 | 0.9761 | 0.9695 | 0.9725 |
| Nadam | 0.9838 | 0.9773 | 0.9783 | 0.9777 |
| AdaMax | 0.9806 | 0.9726 | 0.9721 | 0.9723 |
A detailed comparison of optimizers for multi-class sub-category classification.
| Optimizer | Accuracy | Precision | Recall | F1-Score |
|---|---|---|---|---|
| SGD | 0.9789 | 0.9676 | 0.9706 | 0.969 |
| RMSprop | 0.7630 | 0.7457 | 0.7195 | 0.6527 |
| Adam | 0.9801 | 0.9761 | 0.9695 | 0.9725 |
| Nadam | 0.9838 | 0.9773 | 0.9783 | 0.9777 |
| Adamax | 0.9806 | 0.9726 | 0.9721 | 0.9723 |
Figure 3Adam optimizer for binary class scenario.
Figure 4Nadam optimizer for binary class scenario.
Figure 5AdaMax optimizer for binary class scenario.
Figure 6Adam optimizer for multi-class category classification scenario.
Figure 7Nadam optimizer for multi-class category classification scenario.
Figure 8AdaMax optimizer for multi-class category classification scenario.
Figure 9Adam optimizer for multi-class sub-category classification scenario.
Figure 10Nadam optimizer for multi-class sub-category classification scenario.
Figure 11AdaMax optimizer for multi-class sub-category classification scenario.
A comparison of DCNN with other DL models on binary-class.
| Models | Accuracy | Precision | Recall | F1-Score |
|---|---|---|---|---|
| LSTM | 0.9952 | 0.9943 | 0.9662 | 0.9797 |
| GRU | 0.9959 | 0.9856 | 0.9807 | 0.9832 |
| DNN | 0.9981 | 0.9983 | 0.9862 | 0.9922 |
| DBN | 0.9969 | 0.9937 | 0.9807 | 0.9871 |
| AE | 0.9974 | 0.9895 | 0.9887 | 0.9891 |
| MLP | 0.9972 | 0.9938 | 0.9832 | 0.9884 |
| DT | 0.9857 | 0.9819 | 0.9861 | 0.9840 |
| LR | 0.9659 | 0.9034 | 0.7879 | 0.8345 |
| NB | 0.6504 | 0.5765 | 0.8093 | 0.6733 |
| SVM | 0.9744 | 0.9199 | 0.8552 | 0.8844 |
| KNN | 0.9983 | 0.9964 | 0.9894 | 0.9929 |
|
|
|
|
|
|
A comparison of DCNN with other DL models on multi-class category.
| Model | Accuracy | Precision | Recall | F1-Score |
|---|---|---|---|---|
| LSTM | 0.9584 | 0.9543 | 0.9201 | 0.9355 |
| GRU | 0.9681 | 0.9576 | 0.9468 | 0.9519 |
| DNN | 0.9547 | 0.9340 | 0.9447 | 0.9367 |
| DBN | 0.9589 | 0.9430 | 0.9549 | 0.9469 |
| AE | 0.9644 | 0.9515 | 0.9440 | 0.9456 |
| MLP | 0.9238 | 0.8933 | 0.8436 | 0.8529 |
| DT | 0.9770 | 0.9744 | 0.9737 | 0.9741 |
| LR | 0.8314 | 0.7728 | 0.7297 | 0.7311 |
| NB | 0.6772 | 0.6628 | 0.7381 | 0.6479 |
| SVM | 0.8557 | 0.8416 | 0.7845 | 0.7883 |
| KNN | 0.9793 | 0.9746 | 0.9699 | 0.9722 |
|
|
|
|
|
|
A comparison of DCNN with other DL models on multi-class sub-category.
| Model | Accuracy | Precision | Recall | F1-Score |
|---|---|---|---|---|
| LSTM | 0.7141 | 0.6993 | 0.5992 | 0.6453 |
| GRU | 0.7615 | 0.7571 | 0.6996 | 0.7272 |
| DNN | 0.7483 | 0.7244 | 0.6610 | 0.6912 |
| DBN | 0.6888 | 0.6916 | 0.6166 | 0.6519 |
| AE | 0.7535 | 0.7805 | 0.7016 | 0.7389 |
| MLP | 0.7065 | 0.7124 | 0.6263 | 0.6665 |
| DT | 0.7530 | 0.7508 | 0.7362 | 0.7413 |
| LR | 0.5481 | 0.4457 | 0.4239 | 0.4142 |
| NB | 0.5298 | 0.4878 | 0.5032 | 0.4481 |
| SVM | 0.6240 | 0.4888 | 0.4741 | 0.4624 |
| KNN | 0.7621 | 0.7634 | 0.7477 | 0.7515 |
|
|
|
|
|
|