Abstract:
With the increase in number of Internet of Things (IoT) devices daily and increasing
dependency on IoT based smart systems, the dire need to make them secure has
emerged. Most common attacks that could be launched against IoT devices are Port
Scanning attack, MITM attack, Code Injection, Brute Force, and DoS/DDoS attack, etc.
Therefore, several researchers are working to make these devices secure. One of the
methods to detect intrusions in IoT applications is Machine Learning based method.
Several researchers have deployed a centralized machine learning based intrusion
detection system at edge, fog or cloud. In previous studies, availability of computational
resources and complexity was overlooked. In this work, a machine learning based
distributed IoT intrusion detection system is proposed to make the intrusion detection
system more efficient and computationally inexpensive. Classifiers are deployed on
Fog and Cloud side to distribute load of classifying the attacks. The TON_IoT 2020
dataset is used for training the classifiers. The dataset is divided into sub datasets
according to the load balancing approach. Different classifiers are trained on these sub
datasets to determine the best classifier to be deployed on fog and cloud side of the IoT
network. Different feature selection techniques are also used to improve results of the
classifiers. To determine the feasibility of a classifier, performance of classifiers is
evaluated in terms of training accuracy, testing accuracy, testing time and F1-score. On
cloud side, LSTM, Conv1d, RF and MLP models are trained. RF showed the best
results with 99.4% detection accuracy and 0.962 F1-score. On fog side of an IoT
network, SVM, LR, DT, NB and RF are trained. DT and RF showed best results with
accuracies above 99% and 0.9 F1-score. Computation time of algorithms was calculated
on Raspberry Pi. In case of DT best accuracy was observed i.e. 99.84% with
computation time 1.186ms