Abstract

With the advancement of Internet of Things (IoT) in recent years, there are increasing numbers of connected IoT devices which consequently grows the size of network traffic and creates a popular arena for a wide-range of cyberattacks including unwanted network intrusions. However, existing net-work intrusion detection techniques are becoming insufficient for IoT networks due to the unique nature of IoT, such as limited computational and storage resources, and heterogeneous data types. In this paper, we propose an ML-based technique that identifies the best combination of preprocessing techniques, feature selection techniques, and classification algorithms to efficiently detect intrusions in IoT networks. Specifically, first, we choose one of the most recent IoT -specific network intrusion detection datasets (MQTT-IoT-IDS-2020) as well as one of the most popular benchmark datasets for traditional networks traffic (NSL-KDD) for this research. Second, we utilize three significant and most popular preprocessing techniques, i.e., Normalization, Oversampling, and Undersampling, with different relevant feature selection techniques (e.g., Naive Bayes & Best First Search, Naive Bayes & Genetic Search, AdaBoost & Best First Search, AdaBoost & Genetic Search, Bagging & Best First Search, Bagging & Genetic Search) to identify the most important features of the dataset. Third, we perform several classification al-gorithms (i.e., Naive Bayes, Bagging, AdaBoost, j48, and Random Forest) and measure the performance of each of them. Finally, we identify the best combination of preprocessing techniques, feature selection techniques, and classification algorithms based on both their time efficiency (lowest) and accuracy (highest). Our experiments show that for the MQTT-IoT-IDS-2020 dataset, the combinations of Normalization as preprocessing technique, AdaBoost & Best First search as a feature selection technique, and J48 as a classification algorithm performs the best (99.86% accuracy in 2.81 seconds).

Full Text
Published version (Free)

Talk to us

Join us for a 30 min session where you can share your feedback and ask us any queries you have

Schedule a call