<?xml version="1.0" encoding="UTF-8" standalone="no"?>
<!DOCTYPE article PUBLIC "-//NLM//DTD Journal Publishing DTD v2.3 20070202//EN" "journalpublishing.dtd">
<article xml:lang="EN" xmlns:mml="http://www.w3.org/1998/Math/MathML" xmlns:xlink="http://www.w3.org/1999/xlink" article-type="research-article">
<front>
<journal-meta>
<journal-id journal-id-type="publisher-id">Front. Big Data</journal-id>
<journal-title>Frontiers in Big Data</journal-title>
<abbrev-journal-title abbrev-type="pubmed">Front. Big Data</abbrev-journal-title>
<issn pub-type="epub">2624-909X</issn>
<publisher>
<publisher-name>Frontiers Media S.A.</publisher-name>
</publisher>
</journal-meta>
<article-meta>
<article-id pub-id-type="doi">10.3389/fdata.2023.1081466</article-id>
<article-categories>
<subj-group subj-group-type="heading">
<subject>Big Data</subject>
<subj-group>
<subject>Original Research</subject>
</subj-group>
</subj-group>
</article-categories>
<title-group>
<article-title>Hybridized bio-inspired intrusion detection system for Internet of Things</article-title>
</title-group>
<contrib-group>
<contrib contrib-type="author" corresp="yes">
<name><surname>Singh</surname> <given-names>Richa</given-names></name>
<xref ref-type="corresp" rid="c001"><sup>&#x0002A;</sup></xref>
<uri xlink:href="http://loop.frontiersin.org/people/2070152/overview"/>
</contrib>
<contrib contrib-type="author">
<name><surname>Ujjwal</surname> <given-names>R. L.</given-names></name>
</contrib>
</contrib-group>
<aff><institution>University School of Information, Communication, and Technology, Guru Gobind Singh Indraprastha University, Dwarka</institution>, <addr-line>New Delhi</addr-line>, <country>India</country></aff>
<author-notes>
<fn fn-type="edited-by"><p>Edited by: Namita Gupta, Maharaja Agrasen Institute of Technology, India</p></fn>
<fn fn-type="edited-by"><p>Reviewed by: Sarita Gulia, K.R. Mangalam University, India; Shweta Taneja, Bhagwan Parshuram Institute of Technology, India</p></fn>
<corresp id="c001">&#x0002A;Correspondence: Richa Singh &#x02709; <email>richa.singh081991&#x00040;gmail.com</email></corresp>
<fn fn-type="other" id="fn001"><p>This article was submitted to Data Science, a section of the journal Frontiers in Big Data</p></fn></author-notes>
<pub-date pub-type="epub">
<day>01</day>
<month>02</month>
<year>2023</year>
</pub-date>
<pub-date pub-type="collection">
<year>2023</year>
</pub-date>
<volume>6</volume>
<elocation-id>1081466</elocation-id>
<history>
<date date-type="received">
<day>27</day>
<month>10</month>
<year>2022</year>
</date>
<date date-type="accepted">
<day>12</day>
<month>01</month>
<year>2023</year>
</date>
</history>
<permissions>
<copyright-statement>Copyright &#x000A9; 2023 Singh and Ujjwal.</copyright-statement>
<copyright-year>2023</copyright-year>
<copyright-holder>Singh and Ujjwal</copyright-holder>
<license xlink:href="http://creativecommons.org/licenses/by/4.0/"><p>This is an open-access article distributed under the terms of the Creative Commons Attribution License (CC BY). The use, distribution or reproduction in other forums is permitted, provided the original author(s) and the copyright owner(s) are credited and that the original publication in this journal is cited, in accordance with accepted academic practice. No use, distribution or reproduction is permitted which does not comply with these terms.</p></license>
</permissions>
<abstract>
<p>The Internet of Things (IoT) consists of several smart devices equipped with computing, sensing, and network capabilities, which enable them to collect and exchange heterogeneous data wirelessly. The increasing usage of IoT devices in daily activities increases the security needs of IoT systems. These IoT devices are an easy target for intruders to perform malicious activities and make the underlying network corrupt. Hence, this paper proposes a hybridized bio-inspired-based intrusion detection system (IDS) for the IoT framework. The hybridized sine-cosine algorithm (SCA) and salp swarm algorithm (SSA) determines the essential features of the network traffic. Selected features are passed to a machine learning (ML) classifier for the detection and classification of intrusive traffic. The IoT network intrusion dataset determines the performance of the proposed system in a python environment. The proposed hybridized system achieves maximum accuracy of 84.75% with minimum selected features i.e., 8 and takes minimum time of 96.42 s in detecting intrusion for the IoT network. The proposed system&#x00027;s effectiveness is shown by comparing it with other similar approaches for performing multiclass classification.</p></abstract>
<kwd-group>
<kwd>Internet of Things</kwd>
<kwd>intrusion detection system</kwd>
<kwd>salp swarm algorithm</kwd>
<kwd>sine cosine algorithm</kwd>
<kwd>feature selection</kwd>
</kwd-group>
<counts>
<fig-count count="9"/>
<table-count count="3"/>
<equation-count count="13"/>
<ref-count count="26"/>
<page-count count="8"/>
<word-count count="4285"/>
</counts>
</article-meta>
</front>
<body>
<sec id="s1">
<title>1. Introduction</title>
<p>IoT (Hussain et al., <xref ref-type="bibr" rid="B11">2020</xref>) consist of several interconnecting devices known as things, with limited communication, computation, and storage capability. These devices can vary from simple household devices such as smart bulbs, smart fridges, smart meters, IP cameras, etc. to more complicated devices such as RFID, smart devices used in industry, heartbeat detectors, etc. IoT system (Al-Fuqaha et al., <xref ref-type="bibr" rid="B1">2015</xref>) is gaining importance in every field including smart grid, smart agriculture, smart transportation, smart home, semantic web, etc. The exponential growth of IoT devices gives a platform to intruders to perform malicious activities. The intruder aims to exploit IoT resources by launching cyber-attacks against IoT devices and networks, which is destructive. An IoT system is susceptible to various types of threats (Chaabouni et al., <xref ref-type="bibr" rid="B4">2019</xref>) such as man-in-middle attacks, denial of service, routing attacks, eavesdropping, etc. As a consequence, the IoT system security is of prime importance. An intrusion detection system (IDS) is one of the security methods for the IoT system, which aims to detect and report any breach. Based on the detection strategy (Khraisat and Alazab, <xref ref-type="bibr" rid="B14">2021</xref>), the IDS is classified as signature IDS, anomaly IDS, and hybrid. In signature IDS (Thakkar and Lohiya, <xref ref-type="bibr" rid="B24">2021</xref>), network traffic is examined for the attack signatures stored in the database, any match is considered as malicious. In anomaly IDS, the user profile is created based on analyzing the network usage. Any variance from the usage behavior is considered an anomaly. Hybrid IDS merges the advantages of signature IDS and anomaly IDS. The data produced by the IoT network is voluminous plus heterogeneous. Therefore, having an effective and efficient feature selection (FS) method is important. The FS method selects the best features from the original set based on certain criteria. The FS methods are classified as, filter, wrapper, and hybrid (Balasaraswathi et al., <xref ref-type="bibr" rid="B3">2017</xref>). In the filter method, various statistical measures such as correlation, information measure, and distance are used for selecting the feature subset. However, such methods don&#x00027;t interact with the classifier for the evaluation of feature subsets. The wrapper method interacts with the classifier for the evaluation of the selected feature subset. The hybrid method combines the merits of the filter and wrapper method.</p>
<p>Many works were published where metaheuristic algorithms (MHA) are used for the feature selection tasks of IDS. For instance, Kareem et al. (<xref ref-type="bibr" rid="B12">2022</xref>) proposed an efficient feature selection algorithm for IoT-based IDS. They hybridize the bird swarm algorithm (BSA) with the gorilla troops optimization (GTO) algorithm for the feature selection task. The exploration part of gorilla troops optimization is modified using bird swarm algorithm. The proposed work provides better convergence results compared to other metaheuristic algorithms used for feature selection. An IDS for the IoT-based healthcare systems is proposed by Saif et al. (<xref ref-type="bibr" rid="B22">2022</xref>). The proposed work uses a genetic algorithm, differential evaluation, and partial swarm optimization (PSO) for selecting an optimal feature subset. Afterward, the classification of intrusive traffic is done using k-nearest neighbor, and a decision tree classifier. Haddadpajouh et al. (<xref ref-type="bibr" rid="B9">2020</xref>) proposed a IDS for the IoT edge layer. The feature selection is performed using the bio-inspired gray wolf optimization (GWO) algorithm. A multi-kernel support vector machine is used for the detection of malicious traffic. Another work by Mafarja et al. (<xref ref-type="bibr" rid="B16">2020</xref>) employed a modified whale optimization algorithm for reducing the dimension in IoT-based IDS. The whale optimization algorithm is modified using transfer functions, and its performance is better than the original whale optimization algorithm. Hosseini et al. (<xref ref-type="bibr" rid="B10">2022</xref>) proposed a hybridized bio-inspired algorithm for detection botnets in the IoT network. They hybridized salp swarm algorithm and slime mold algorithm for feature selection of network traffic. Alweshah et al. (<xref ref-type="bibr" rid="B2">2022</xref>) proposed an emperor penguin colony based feature selection approach for the IoT-based IDS. The classification of intrusive traffic is performed using k-nearest neighbor (KNN) classifier.</p>
<p>Work by Fatani et al. (<xref ref-type="bibr" rid="B8">2021</xref>) proposed an aquila optimizer (AO) based feature selection approach for detecting intrusion in the IoT framework. In this paper, feature extraction is performed by convolutional neural network, and afterward, aquila optimizer determines the best features. The proposed work is evaluated against four datasets and the result shows the efficiency of proposed work against other related work. Krishna and Arunkumar (<xref ref-type="bibr" rid="B15">2021</xref>) proposed a GWO and PSO-based IDS for an IoT environment. The random forest classifier performs multiclass classification using the optimal features selected from hybrid PSO and GWO. Experimental result shows the effectiveness of the proposed system against other similar work using the NSL-KDD and N-BaIoT dataset. Furthermore, work by Sarwar et al. (<xref ref-type="bibr" rid="B23">2022</xref>) proposed a feature selection algorithm for IDS. They detect optimal features using an improved dynamic sticky binary partial swarm optimization algorithm. Classification of IoT intrusive traffic is done using random forest (RF). Dahou et al. (<xref ref-type="bibr" rid="B6">2022</xref>) employed a reptile search algorithm for selecting optimal features in IoT framework. The proposed work is evaluated against multiple datasets such as NSL-KDD, BoT-IoT, KDDCup-99, and CICIDS-2017. Work by Priya et al. (<xref ref-type="bibr" rid="B20">2020</xref>) proposed a hybridized principal component analysis and gray wolf optimization based IDS for the Internet of Medical Things. The intrusive traffic is classified using deep neural network. The hybridized bio-inspired-based IDS is proposed by Davahli et al. (<xref ref-type="bibr" rid="B7">2020</xref>) for IoT system. They hybridized genetic algorithm and gray wolf optimization for optimal feature selection. Further, the intrusive traffic is classified using support vector machine classifier. The AWID dataset is used for the performance evaluation of this system. A smart IDS for IoT system is proposed by Keserwani et al. (<xref ref-type="bibr" rid="B13">2021</xref>). They employed hybridized GWO and PSO algorithm for feature selection task. The multiclass classification is performed using random forest classifier. The proposed work is evaluated against multiple datasets.</p>
<p>Hence, this paper proposes hybridized IDS for the IoT system. The feature selection is done by hybridizing the bio-inspired sine cosine algorithm (SCA), and salp swarm algorithm (SSA) for selecting the optimal feature subset. The proposed approach is compared with other bio-inspired algorithms used for the FS task in the IoT-based IDS. The dataset IoTID20 is used to verify and evaluate system performance. Multiclass classification is performed using two machine learning classifiers and afterward, their performance is analyzed. The performance of hybridized SCA-SSA with KNN and XGBoost classifiers is better compared to other metaheuristic algorithms used for feature selection. The paper is formulated as: Section 2 describes the material and methods used by the hybridized IoT-based IDS, and Section 3 describes the implementation result. Section 4 presents the discussion.</p>
</sec>
<sec id="s2">
<title>2. Material and methods</title>
<sec>
<title>2.1. Background</title>
<sec>
<title>2.1.1. Sine cosine algorithm (SCA)</title>
<p>This math-based algorithm is defined by Mirjalili (<xref ref-type="bibr" rid="B17">2016</xref>). SCA is motivated by trigonometric properties of sine and cosine functions for updating individual positions which provide an optimal solution for optimization problems. SCA is easy to implement, flexible and the probability of falling in local optima is low. However, SCA might suffer from premature convergence. The solutions are updated using the following equations:</p>
<disp-formula id="E1"><label>(1)</label><mml:math id="M1"><mml:mtable columnalign='left'><mml:mtr><mml:mtd><mml:msubsup><mml:mi>X</mml:mi><mml:mrow><mml:mi>m</mml:mi><mml:mo>,</mml:mo><mml:mi>n</mml:mi></mml:mrow><mml:mrow><mml:mi>i</mml:mi><mml:mi>t</mml:mi><mml:mi>e</mml:mi><mml:mo>+</mml:mo><mml:mn>1</mml:mn></mml:mrow></mml:msubsup><mml:mo>=</mml:mo><mml:mtext>&#x000A0;</mml:mtext><mml:msubsup><mml:mi>X</mml:mi><mml:mrow><mml:mi>m</mml:mi><mml:mo>,</mml:mo><mml:mi>n</mml:mi></mml:mrow><mml:mrow><mml:mi>i</mml:mi><mml:mi>t</mml:mi><mml:mi>e</mml:mi></mml:mrow></mml:msubsup><mml:mo>+</mml:mo><mml:mi>r</mml:mi><mml:mi>n</mml:mi><mml:msub><mml:mi>d</mml:mi><mml:mn>1</mml:mn></mml:msub><mml:mo>&#x000D7;</mml:mo><mml:mi>sin</mml:mi><mml:mtext>&#x000A0;</mml:mtext><mml:mo stretchy='false'>(</mml:mo><mml:mi>r</mml:mi><mml:mi>n</mml:mi><mml:msub><mml:mi>d</mml:mi><mml:mn>2</mml:mn></mml:msub><mml:mo stretchy='false'>)</mml:mo><mml:mtext>&#x000A0;</mml:mtext><mml:mo>&#x000D7;</mml:mo><mml:mtext>&#x000A0;</mml:mtext><mml:mrow><mml:mo>|</mml:mo><mml:mrow><mml:mi>r</mml:mi><mml:mi>n</mml:mi><mml:msub><mml:mi>d</mml:mi><mml:mn>3</mml:mn></mml:msub><mml:mtext>&#x000A0;</mml:mtext><mml:msubsup><mml:mi>X</mml:mi><mml:mrow><mml:mi>B</mml:mi><mml:mi>e</mml:mi><mml:mi>s</mml:mi><mml:mi>t</mml:mi><mml:mtext>&#x000A0;</mml:mtext><mml:mi>n</mml:mi></mml:mrow><mml:mrow><mml:mi>i</mml:mi><mml:mi>t</mml:mi><mml:mi>e</mml:mi></mml:mrow></mml:msubsup><mml:mo>&#x02212;</mml:mo><mml:mtext>&#x000A0;</mml:mtext><mml:msubsup><mml:mi>X</mml:mi><mml:mrow><mml:mi>m</mml:mi><mml:mo>,</mml:mo><mml:mi>n</mml:mi></mml:mrow><mml:mrow><mml:mi>i</mml:mi><mml:mi>t</mml:mi><mml:mi>e</mml:mi></mml:mrow></mml:msubsup></mml:mrow><mml:mo>|</mml:mo></mml:mrow><mml:mtext>&#x000A0;&#x000A0;&#x000A0;</mml:mtext></mml:mtd></mml:mtr><mml:mtr><mml:mtd><mml:mtext>&#x000A0;&#x000A0;&#x000A0;&#x000A0;&#x000A0;&#x000A0;&#x000A0;&#x000A0;&#x000A0;&#x000A0;&#x000A0;&#x000A0;&#x000A0;&#x000A0;&#x000A0;&#x000A0;&#x000A0;&#x000A0;&#x000A0;&#x000A0;&#x000A0;&#x000A0;&#x000A0;&#x000A0;&#x000A0;&#x000A0;&#x000A0;&#x000A0;&#x000A0;&#x000A0;&#x000A0;&#x000A0;&#x000A0;&#x000A0;&#x000A0;&#x000A0;&#x000A0;&#x000A0;&#x000A0;&#x000A0;&#x000A0;&#x000A0;&#x000A0;&#x000A0;&#x000A0;&#x000A0;</mml:mtext><mml:mi>i</mml:mi><mml:mi>f</mml:mi><mml:mtext>&#x000A0;</mml:mtext><mml:mi>r</mml:mi><mml:mi>n</mml:mi><mml:msub><mml:mi>d</mml:mi><mml:mn>4</mml:mn></mml:msub><mml:mo>&#x0003C;</mml:mo><mml:mn>0.5</mml:mn></mml:mtd></mml:mtr></mml:mtable></mml:math></disp-formula>
<disp-formula id="E2"><label>(2)</label><mml:math id="M2"><mml:mtable columnalign='left'><mml:mtr><mml:mtd><mml:msubsup><mml:mi>X</mml:mi><mml:mrow><mml:mi>m</mml:mi><mml:mo>,</mml:mo><mml:mi>n</mml:mi></mml:mrow><mml:mrow><mml:mi>i</mml:mi><mml:mi>t</mml:mi><mml:mi>e</mml:mi><mml:mo>+</mml:mo><mml:mn>1</mml:mn></mml:mrow></mml:msubsup><mml:mo>=</mml:mo><mml:mtext>&#x000A0;</mml:mtext><mml:msubsup><mml:mi>X</mml:mi><mml:mrow><mml:mi>m</mml:mi><mml:mo>,</mml:mo><mml:mi>n</mml:mi></mml:mrow><mml:mrow><mml:mi>i</mml:mi><mml:mi>t</mml:mi><mml:mi>e</mml:mi></mml:mrow></mml:msubsup><mml:mo>+</mml:mo><mml:mi>r</mml:mi><mml:mi>n</mml:mi><mml:msub><mml:mi>d</mml:mi><mml:mn>1</mml:mn></mml:msub><mml:mtext>&#x000A0;</mml:mtext><mml:mo>&#x000D7;</mml:mo><mml:mtext>&#x000A0;</mml:mtext><mml:mi>cos</mml:mi><mml:mtext>&#x000A0;</mml:mtext><mml:mo stretchy='false'>(</mml:mo><mml:mi>r</mml:mi><mml:mi>n</mml:mi><mml:msub><mml:mi>d</mml:mi><mml:mn>2</mml:mn></mml:msub><mml:mo stretchy='false'>)</mml:mo><mml:mtext>&#x000A0;</mml:mtext><mml:mo>&#x000D7;</mml:mo><mml:mtext>&#x000A0;</mml:mtext><mml:mrow><mml:mo>|</mml:mo><mml:mrow><mml:mi>r</mml:mi><mml:mi>n</mml:mi><mml:msub><mml:mi>d</mml:mi><mml:mn>3</mml:mn></mml:msub><mml:mtext>&#x000A0;</mml:mtext><mml:msubsup><mml:mi>X</mml:mi><mml:mrow><mml:mi>B</mml:mi><mml:mi>e</mml:mi><mml:mi>s</mml:mi><mml:mi>t</mml:mi><mml:mtext>&#x000A0;</mml:mtext><mml:mi>n</mml:mi></mml:mrow><mml:mrow><mml:mi>i</mml:mi><mml:mi>t</mml:mi><mml:mi>e</mml:mi></mml:mrow></mml:msubsup><mml:mo>&#x02212;</mml:mo><mml:mtext>&#x000A0;</mml:mtext><mml:msubsup><mml:mi>X</mml:mi><mml:mrow><mml:mi>m</mml:mi><mml:mo>,</mml:mo><mml:mi>n</mml:mi></mml:mrow><mml:mrow><mml:mi>i</mml:mi><mml:mi>t</mml:mi><mml:mi>e</mml:mi></mml:mrow></mml:msubsup></mml:mrow><mml:mo>|</mml:mo></mml:mrow><mml:mtext>&#x000A0;&#x000A0;&#x000A0;</mml:mtext></mml:mtd></mml:mtr><mml:mtr><mml:mtd><mml:mtext>&#x000A0;&#x000A0;&#x000A0;&#x000A0;&#x000A0;&#x000A0;&#x000A0;&#x000A0;&#x000A0;&#x000A0;&#x000A0;&#x000A0;&#x000A0;&#x000A0;&#x000A0;&#x000A0;&#x000A0;&#x000A0;&#x000A0;&#x000A0;&#x000A0;&#x000A0;&#x000A0;&#x000A0;&#x000A0;&#x000A0;&#x000A0;&#x000A0;&#x000A0;&#x000A0;&#x000A0;&#x000A0;&#x000A0;&#x000A0;&#x000A0;&#x000A0;&#x000A0;&#x000A0;&#x000A0;&#x000A0;&#x000A0;&#x000A0;&#x000A0;&#x000A0;&#x000A0;&#x000A0;</mml:mtext><mml:mi>i</mml:mi><mml:mi>f</mml:mi><mml:mtext>&#x000A0;</mml:mtext><mml:mi>r</mml:mi><mml:mi>n</mml:mi><mml:msub><mml:mi>d</mml:mi><mml:mn>4</mml:mn></mml:msub><mml:mo>&#x02265;</mml:mo><mml:mn>0.5</mml:mn></mml:mtd></mml:mtr></mml:mtable></mml:math></disp-formula>
<p>where, <inline-formula><mml:math id="M3"><mml:msubsup><mml:mrow><mml:mi>X</mml:mi></mml:mrow><mml:mrow><mml:mi>m</mml:mi><mml:mo>,</mml:mo><mml:mi>n</mml:mi></mml:mrow><mml:mrow><mml:mi>i</mml:mi><mml:mi>t</mml:mi><mml:mi>e</mml:mi></mml:mrow></mml:msubsup></mml:math></inline-formula> is a current solution of individual m in <italic>n-</italic>th dimension at iteration <italic>ite</italic>. <inline-formula><mml:math id="M4"><mml:msubsup><mml:mrow><mml:mi>X</mml:mi></mml:mrow><mml:mrow><mml:mi>B</mml:mi><mml:mi>e</mml:mi><mml:mi>s</mml:mi><mml:mi>t</mml:mi><mml:mtext>&#x000A0;</mml:mtext><mml:mi>n</mml:mi></mml:mrow><mml:mrow><mml:mi>i</mml:mi><mml:mi>t</mml:mi><mml:mi>e</mml:mi></mml:mrow></mml:msubsup></mml:math></inline-formula> is the best solution at iteration <italic>ite</italic> in the <italic>n-</italic>th dimension. <italic>rnd</italic><sub>1</sub>, <italic>rnd</italic><sub>2</sub>, <italic>rnd</italic><sub>3</sub>,, <italic>and rnd</italic><sub>4</sub> are random numbers. <italic>rnd</italic><sub>2</sub> lies between[0, 2&#x003C0;]. <italic>rnd</italic><sub>3</sub> controls the search agent mobility direction. <italic>rnd</italic><sub>4</sub> is used to switch between two search methods. <italic>rnd</italic><sub>1</sub> controls the exploration and exploitation phase and is updated using the following equation:</p>
<disp-formula id="E3"><label>(3)</label><mml:math id="M5"><mml:mtable class="eqnarray" columnalign="left"><mml:mtr><mml:mtd><mml:msub><mml:mrow><mml:mi>r</mml:mi><mml:mi>n</mml:mi><mml:mi>d</mml:mi></mml:mrow><mml:mrow><mml:mn>1</mml:mn></mml:mrow></mml:msub><mml:mo>=</mml:mo><mml:mi>k</mml:mi><mml:mo>-</mml:mo><mml:mfrac><mml:mrow><mml:mi>k</mml:mi></mml:mrow><mml:mrow><mml:msub><mml:mrow><mml:mi>i</mml:mi><mml:mi>t</mml:mi><mml:mi>e</mml:mi></mml:mrow><mml:mrow><mml:mo class="qopname">max</mml:mo></mml:mrow></mml:msub></mml:mrow></mml:mfrac><mml:mo>&#x000D7;</mml:mo><mml:mi>i</mml:mi><mml:mi>t</mml:mi><mml:mi>e</mml:mi></mml:mtd></mml:mtr></mml:mtable></mml:math></disp-formula>
<disp-formula id="E4"><label>(4)</label><mml:math id="M6"><mml:mtable class="eqnarray" columnalign="left"><mml:mtr><mml:mtd><mml:msub><mml:mrow><mml:mi>r</mml:mi><mml:mi>n</mml:mi><mml:mi>d</mml:mi></mml:mrow><mml:mrow><mml:mn>2</mml:mn></mml:mrow></mml:msub><mml:mo>=</mml:mo><mml:mn>2</mml:mn><mml:mo>&#x000D7;</mml:mo><mml:mi>&#x003C0;</mml:mi><mml:mo>&#x000D7;</mml:mo><mml:mtext>&#x000A0;</mml:mtext><mml:mi>r</mml:mi><mml:mi>a</mml:mi><mml:mi>n</mml:mi><mml:mi>d</mml:mi><mml:mi>o</mml:mi><mml:mi>m</mml:mi><mml:mtext>&#x000A0;</mml:mtext><mml:mi>n</mml:mi><mml:mi>u</mml:mi><mml:mi>m</mml:mi><mml:mi>b</mml:mi><mml:mi>e</mml:mi><mml:mi>r</mml:mi><mml:mrow><mml:mo stretchy="false">(</mml:mo><mml:mrow><mml:mn>0</mml:mn><mml:mo>,</mml:mo><mml:mn>1</mml:mn></mml:mrow><mml:mo stretchy="false">)</mml:mo></mml:mrow></mml:mtd></mml:mtr></mml:mtable></mml:math></disp-formula>
<p>where, k is constant, <italic>ite</italic><sub>max</sub> is the maximum iteration and <italic>ite</italic> is the current iteration.</p>
</sec>
<sec>
<title>2.1.2. Salp swarm algorithm (SSA)</title>
<p>This algorithm is proposed by Mirjalili et al. (<xref ref-type="bibr" rid="B18">2017</xref>). SSA is motivated by the hunting habits of salps in the sea. They belong to salpidae family, and their movement is alike jellyfish. They form a chain while living in a group. It required a few parameter settings and is simple to implement. However, SSA might suffer from premature convergence. The foremost salp in a chain is the leader, and others are followers. Leader position is determined with the following equation:</p>
<disp-formula id="E5"><label>(5)</label><mml:math id="M7"><mml:mtable class="eqnarray" columnalign="left"><mml:mtr><mml:mtd><mml:msubsup><mml:mrow><mml:mi>X</mml:mi></mml:mrow><mml:mrow><mml:mi>n</mml:mi></mml:mrow><mml:mrow><mml:mn>1</mml:mn></mml:mrow></mml:msubsup><mml:mo>=</mml:mo><mml:msub><mml:mrow><mml:mi>F</mml:mi><mml:mi>P</mml:mi><mml:mi>o</mml:mi><mml:mi>s</mml:mi></mml:mrow><mml:mrow><mml:mi>j</mml:mi></mml:mrow></mml:msub><mml:mo>-</mml:mo><mml:msub><mml:mrow><mml:mi>c</mml:mi><mml:mi>r</mml:mi><mml:mi>n</mml:mi></mml:mrow><mml:mrow><mml:mn>1</mml:mn></mml:mrow></mml:msub><mml:mrow><mml:mo stretchy="true">[</mml:mo><mml:mrow><mml:mrow><mml:mo stretchy="false">(</mml:mo><mml:mrow><mml:mi>U</mml:mi><mml:mi>p</mml:mi><mml:mi>B</mml:mi><mml:mi>n</mml:mi><mml:mo>-</mml:mo><mml:mi>L</mml:mi><mml:mi>o</mml:mi><mml:mi>B</mml:mi><mml:mi>n</mml:mi></mml:mrow><mml:mo stretchy="false">)</mml:mo></mml:mrow><mml:msub><mml:mrow><mml:mi>c</mml:mi><mml:mi>r</mml:mi><mml:mi>n</mml:mi></mml:mrow><mml:mrow><mml:mn>2</mml:mn></mml:mrow></mml:msub><mml:mo>&#x0002B;</mml:mo><mml:mi>L</mml:mi><mml:mi>o</mml:mi><mml:mi>B</mml:mi><mml:mi>n</mml:mi></mml:mrow><mml:mo stretchy="true">]</mml:mo></mml:mrow><mml:mtext>&#x000A0;</mml:mtext><mml:mi>i</mml:mi><mml:mi>f</mml:mi><mml:mtext>&#x000A0;</mml:mtext><mml:msub><mml:mrow><mml:mi>c</mml:mi><mml:mi>r</mml:mi><mml:mi>n</mml:mi></mml:mrow><mml:mrow><mml:mn>3</mml:mn></mml:mrow></mml:msub><mml:mtext>&#x000A0;</mml:mtext><mml:mo>&#x0003C;</mml:mo><mml:mtext>&#x000A0;</mml:mtext><mml:mn>0</mml:mn><mml:mo>.</mml:mo><mml:mn>5</mml:mn></mml:mtd></mml:mtr></mml:mtable></mml:math></disp-formula>
<disp-formula id="E6"><label>(6)</label><mml:math id="M8"><mml:mtable class="eqnarray" columnalign="left"><mml:mtr><mml:mtd><mml:msubsup><mml:mrow><mml:mi>X</mml:mi></mml:mrow><mml:mrow><mml:mi>n</mml:mi></mml:mrow><mml:mrow><mml:mn>1</mml:mn></mml:mrow></mml:msubsup><mml:mo>=</mml:mo><mml:msub><mml:mrow><mml:mi>F</mml:mi><mml:mi>P</mml:mi><mml:mi>o</mml:mi><mml:mi>s</mml:mi></mml:mrow><mml:mrow><mml:mi>j</mml:mi></mml:mrow></mml:msub><mml:mo>&#x0002B;</mml:mo><mml:msub><mml:mrow><mml:mi>c</mml:mi><mml:mi>r</mml:mi><mml:mi>n</mml:mi></mml:mrow><mml:mrow><mml:mn>1</mml:mn></mml:mrow></mml:msub><mml:mrow><mml:mo stretchy="true">[</mml:mo><mml:mrow><mml:mrow><mml:mo stretchy="false">(</mml:mo><mml:mrow><mml:mi>U</mml:mi><mml:mi>p</mml:mi><mml:mi>B</mml:mi><mml:mi>n</mml:mi><mml:mo>-</mml:mo><mml:mi>L</mml:mi><mml:mi>o</mml:mi><mml:mi>B</mml:mi><mml:mi>n</mml:mi></mml:mrow><mml:mo stretchy="false">)</mml:mo></mml:mrow><mml:msub><mml:mrow><mml:mi>c</mml:mi><mml:mi>r</mml:mi><mml:mi>n</mml:mi></mml:mrow><mml:mrow><mml:mn>2</mml:mn></mml:mrow></mml:msub><mml:mo>&#x0002B;</mml:mo><mml:mi>L</mml:mi><mml:mi>o</mml:mi><mml:mi>B</mml:mi><mml:mi>n</mml:mi></mml:mrow><mml:mo stretchy="true">]</mml:mo></mml:mrow><mml:mtext>&#x000A0;</mml:mtext><mml:mi>i</mml:mi><mml:mi>f</mml:mi><mml:mtext>&#x000A0;</mml:mtext><mml:msub><mml:mrow><mml:mi>c</mml:mi><mml:mi>r</mml:mi><mml:mi>n</mml:mi></mml:mrow><mml:mrow><mml:mn>3</mml:mn></mml:mrow></mml:msub><mml:mtext>&#x000A0;</mml:mtext><mml:mo>&#x02265;</mml:mo><mml:mtext>&#x000A0;</mml:mtext><mml:mn>0</mml:mn><mml:mo>.</mml:mo><mml:mn>5</mml:mn></mml:mtd></mml:mtr></mml:mtable></mml:math></disp-formula>
<p>where, <inline-formula><mml:math id="M9"><mml:msubsup><mml:mrow><mml:mi>X</mml:mi></mml:mrow><mml:mrow><mml:mi>n</mml:mi></mml:mrow><mml:mrow><mml:mn>1</mml:mn></mml:mrow></mml:msubsup></mml:math></inline-formula> is the leader position, <italic>FPos</italic><sub><italic>j</italic></sub> food position. <italic>UpBn</italic> is upper bound. <italic>LoBn</italic> is lower bound. <italic>crn</italic><sub>2</sub> is a random number between [0,1] used to control the mobility step of the leader. <italic>crn</italic><sub>3</sub> controls the switch between two position-updating equations. <italic>crn</italic><sub>1</sub> is the control parameter that balances SSA execution. It is defined by the following equation:</p>
<disp-formula id="E7"><label>(7)</label><mml:math id="M10"><mml:mtable class="eqnarray" columnalign="left"><mml:mtr><mml:mtd><mml:msub><mml:mrow><mml:mi>c</mml:mi><mml:mi>r</mml:mi><mml:mi>n</mml:mi></mml:mrow><mml:mrow><mml:mn>1</mml:mn></mml:mrow></mml:msub><mml:mo>=</mml:mo><mml:mn>2</mml:mn><mml:msup><mml:mrow><mml:mi>e</mml:mi></mml:mrow><mml:mrow><mml:mo>-</mml:mo><mml:mrow><mml:mo stretchy="true">(</mml:mo><mml:mrow><mml:mfrac><mml:mrow><mml:mn>4</mml:mn><mml:mtext>&#x000A0;</mml:mtext><mml:mi>i</mml:mi><mml:mi>t</mml:mi><mml:mi>e</mml:mi></mml:mrow><mml:mrow><mml:msub><mml:mrow><mml:mi>i</mml:mi><mml:mi>t</mml:mi><mml:mi>e</mml:mi></mml:mrow><mml:mrow><mml:mo class="qopname">max</mml:mo></mml:mrow></mml:msub></mml:mrow></mml:mfrac></mml:mrow><mml:mo stretchy="true">)</mml:mo></mml:mrow></mml:mrow></mml:msup></mml:mtd></mml:mtr></mml:mtable></mml:math></disp-formula>
<p>The follower position is determined using the following equation:</p>
<disp-formula id="E8"><label>(8)</label><mml:math id="M11"><mml:mtable class="eqnarray" columnalign="left"><mml:mtr><mml:mtd><mml:msubsup><mml:mrow><mml:mi>X</mml:mi></mml:mrow><mml:mrow><mml:mi>n</mml:mi></mml:mrow><mml:mrow><mml:mi>m</mml:mi></mml:mrow></mml:msubsup><mml:mo>=</mml:mo><mml:mfrac><mml:mrow><mml:mn>1</mml:mn></mml:mrow><mml:mrow><mml:mn>2</mml:mn></mml:mrow></mml:mfrac><mml:mrow><mml:mo stretchy="true">(</mml:mo><mml:mrow><mml:msubsup><mml:mrow><mml:mi>X</mml:mi></mml:mrow><mml:mrow><mml:mi>n</mml:mi></mml:mrow><mml:mrow><mml:mi>m</mml:mi></mml:mrow></mml:msubsup><mml:mo>&#x0002B;</mml:mo><mml:msubsup><mml:mrow><mml:mi>X</mml:mi></mml:mrow><mml:mrow><mml:mi>n</mml:mi></mml:mrow><mml:mrow><mml:mi>m</mml:mi><mml:mo>-</mml:mo><mml:mn>1</mml:mn></mml:mrow></mml:msubsup></mml:mrow><mml:mo stretchy="true">)</mml:mo></mml:mrow></mml:mtd></mml:mtr></mml:mtable></mml:math></disp-formula>
<p>where <inline-formula><mml:math id="M12"><mml:msubsup><mml:mrow><mml:mi>X</mml:mi></mml:mrow><mml:mrow><mml:mi>n</mml:mi></mml:mrow><mml:mrow><mml:mi>m</mml:mi></mml:mrow></mml:msubsup></mml:math></inline-formula> represents the <italic>m</italic>-th follower in <italic>n-</italic>th dimension.</p>
</sec>
</sec>
<sec>
<title>2.2. Proposed system</title>
<p>A hybridized IDS for the IoT framework has been proposed in this section. <xref ref-type="fig" rid="F1">Figure 1</xref> depicts the proposed system and it is divided into the following parts including, data preparation, feature selection using SCA-SSA, classification, and detection, and performance evaluation.</p>
<fig id="F1" position="float">
<label>Figure 1</label>
<caption><p>Proposed system framework.</p></caption>
<graphic mimetype="image" mime-subtype="tiff" xlink:href="fdata-06-1081466-g0001.tif"/>
</fig>
<sec>
<title>2.2.1. IoTID20 dataset</title>
<p>The IoTID20 (Ullah and Mahmoud, <xref ref-type="bibr" rid="B25">2020</xref>) dataset is used as collected data in this paper. The IoTID20 is the result of the testbed configuration of the smart home. Smart home devices such as laptops, tablets, Wi-Fi cameras, smartphones, and other devices are used to generate network flow data for the IoTID20 dataset. These devices are divided into categories of victim devices i.e., EZVIZ Wi-Fi camera, SKT NGU, and the attacking devices including smartphones, tablets, etc. all other IoT devices. This labeled dataset includes 83 features. The five attack category instances of the IoTID20 dataset used for performance evaluation are shown in <xref ref-type="table" rid="T1">Table 1</xref>.</p>
<table-wrap position="float" id="T1">
<label>Table 1</label>
<caption><p>IoTID20 dataset instances.</p></caption>
<table frame="box" rules="all">
<thead>
<tr style="background-color:#919497; color:#ffffff;">
<th valign="top" align="left"><bold>Category</bold></th>
<th valign="top" align="center"><bold>Instances</bold></th>
<th valign="top" align="center"><bold>Category</bold></th>
<th valign="top" align="center"><bold>Instances</bold></th>
<th valign="top" align="center"><bold>Category</bold></th>
<th valign="top" align="center"><bold>Instances</bold></th>
</tr>
</thead>
<tbody>
<tr>
<td valign="top" align="left">Mirai</td>
<td valign="top" align="center">415,677</td>
<td valign="top" align="center">DoS</td>
<td valign="top" align="center">59,391</td>
<td valign="top" align="center">MITM ARP Spoofing</td>
<td valign="top" align="center">35,377</td>
</tr>
<tr>
<td valign="top" align="left">Scan</td>
<td valign="top" align="center">75,265</td>
<td valign="top" align="center">Normal</td>
<td valign="top" align="center">40,073</td>
<td/>
<td/>
</tr>
</tbody>
</table>
</table-wrap>
</sec>
<sec>
<title>2.2.2. Data preparation</title>
<p>The performance of the learning algorithm depends upon the type of data provided as input. Therefore, various data preparation techniques such as transformation, normalization, and sampling are employed to improve the quality of data. A vast amount of heterogeneous data is collected from IoT devices with numerous features. However, not all features are useful for the classification task, few of them are irrelevant and redundant. Therefore, these redundant and irrelevant attributes are eliminated. Afterward, categorical feature values are transformed into numerical values using the Label encoder function. The numerical feature value of the dataset might vary. Therefore, normalization is performed so that the values lie within a range of (0, 1).</p>
<p>In this paper, the standard scaler function is used for this purpose. The IoTID20 dataset is unbalanced. The instances of intrusive traffic are much more than instances of normal traffic. The unbalanced dataset degrades the performance of the classifier. Therefore, random sampling is used to make the IoTID20 dataset balanced.</p>
</sec>
<sec>
<title>2.2.3. Feature selection using hybrid SCA-SSA</title>
<p>The hybrid SCA-SSA that merges SCA with SSA is described in this section. The first part of SSA is enhanced using the SCA algorithm for updating the salp positions. During these modifications, the trigonometric functions of SCA are used to update the salp leader position. This enhances SSA flexibility for exploring search space and leads to providing optimal solutions. Afterward, the exploitation capability of salp is enhanced by adding the levy flight (LF) (Chawla and Duhan, <xref ref-type="bibr" rid="B5">2018</xref>) to it. The follower position is updated using LF. LF controls the size of a step taken by salps. These enhancements lead to better convergence speed and avoid local optima. Therefore, the hybridization of SCA-SSA is shown in <xref ref-type="table" rid="T3">Algorithm 1</xref> and is described as follows.</p>
<table-wrap position="float" id="T3">
<label>Algorithm 1</label> 
<caption><p>Hybrid SCA-SSA</p></caption>
<table frame="hsides" rules="groups">
<tbody>
<tr>
<td valign="top" align="left">1. Population initialization as i = 1,2,&#x02026;.,n<break/>2. For each salp compute fitness function <inline-formula><mml:math id="M13"><mml:msubsup><mml:mrow><mml:mi>X</mml:mi></mml:mrow><mml:mrow><mml:mi>n</mml:mi></mml:mrow><mml:mrow><mml:mi>i</mml:mi><mml:mi>t</mml:mi><mml:mi>e</mml:mi></mml:mrow></mml:msubsup><mml:mo>=</mml:mo></mml:math></inline-formula> the best searchagent<break/>3. While(<italic>ite</italic> &#x02264; <italic>ite</italic><sub>max</sub>)<break/>4. Update LF, <italic>crn</italic><sub>1</sub>, <italic>rnd</italic><sub>2</sub>, <italic>crn</italic><sub>4</sub>, <italic>rnd</italic><sub>3</sub>, and <italic>crn</italic><sub>3</sub><break/>5. If (<italic>ite</italic> &#x0003D; =1)<break/>6. If (<italic>crn</italic><sub>3</sub>&#x02265;0.5)<break/>7. Use Eq. (9) to update salp position &#x00023;SALP LEADER<break/>8. else if (<italic>crn</italic><sub>3</sub> &#x0003C; 0.5)<break/>9. Use eq. (10) to update salp position &#x00023;SALP LEADER<break/>10. else if (<italic>ite</italic> &#x02265; 2)<break/>11. Use Eq. (11) to update salp positon &#x00023;SALP FOLLOWER<break/>12. end if<break/>13. <italic>ite</italic> = <italic>ite</italic> &#x0002B;1<break/>14. end while<break/>15. return optimal feature subset</td>
</tr>
</tbody>
</table>
</table-wrap>
<sec>
<title>2.2.3.1. First part</title>
<p>The first part of SSA is enhanced by using the trigonometric functions of SCA, and inertia weight, which improves the exploring capability of SSA. The leader position in SSA is updated the using following equation:</p>
<disp-formula id="E9"><label>(9)</label><mml:math id="M14"><mml:mtable columnalign='left'><mml:mtr><mml:mtd><mml:msubsup><mml:mi>X</mml:mi><mml:mi>n</mml:mi><mml:mn>1</mml:mn></mml:msubsup><mml:mo>=</mml:mo><mml:mi>w</mml:mi><mml:mo>&#x000D7;</mml:mo><mml:mi>F</mml:mi><mml:mi>P</mml:mi><mml:mi>o</mml:mi><mml:msub><mml:mi>s</mml:mi><mml:mi>j</mml:mi></mml:msub><mml:mo>+</mml:mo><mml:mi>c</mml:mi><mml:mi>r</mml:mi><mml:msub><mml:mi>n</mml:mi><mml:mn>1</mml:mn></mml:msub><mml:mo>&#x000D7;</mml:mo><mml:mi>sin</mml:mi><mml:mtext>&#x000A0;</mml:mtext><mml:mo stretchy='false'>(</mml:mo><mml:mi>r</mml:mi><mml:mi>n</mml:mi><mml:msub><mml:mi>d</mml:mi><mml:mn>2</mml:mn></mml:msub><mml:mo stretchy='false'>)</mml:mo><mml:mo>&#x000D7;</mml:mo><mml:mtext>&#x000A0;</mml:mtext><mml:mrow><mml:mo>|</mml:mo><mml:mrow><mml:mi>r</mml:mi><mml:mi>n</mml:mi><mml:msub><mml:mi>d</mml:mi><mml:mn>3</mml:mn></mml:msub><mml:mtext>&#x000A0;</mml:mtext><mml:msubsup><mml:mi>X</mml:mi><mml:mrow><mml:mi>B</mml:mi><mml:mi>e</mml:mi><mml:mi>s</mml:mi><mml:mi>t</mml:mi><mml:mtext>&#x000A0;</mml:mtext><mml:mi>n</mml:mi></mml:mrow><mml:mrow><mml:mi>i</mml:mi><mml:mi>t</mml:mi><mml:mi>e</mml:mi></mml:mrow></mml:msubsup><mml:mo>&#x02212;</mml:mo><mml:mtext>&#x000A0;</mml:mtext><mml:msubsup><mml:mi>X</mml:mi><mml:mi>n</mml:mi><mml:mrow><mml:mi>i</mml:mi><mml:mi>t</mml:mi><mml:mi>e</mml:mi></mml:mrow></mml:msubsup></mml:mrow><mml:mo>|</mml:mo></mml:mrow><mml:mtext>&#x000A0;&#x000A0;&#x000A0;</mml:mtext></mml:mtd></mml:mtr><mml:mtr><mml:mtd><mml:mtext>&#x000A0;&#x000A0;&#x000A0;&#x000A0;&#x000A0;&#x000A0;&#x000A0;&#x000A0;&#x000A0;&#x000A0;&#x000A0;&#x000A0;&#x000A0;&#x000A0;&#x000A0;&#x000A0;&#x000A0;&#x000A0;&#x000A0;&#x000A0;&#x000A0;&#x000A0;&#x000A0;&#x000A0;&#x000A0;&#x000A0;&#x000A0;&#x000A0;&#x000A0;&#x000A0;&#x000A0;&#x000A0;&#x000A0;&#x000A0;&#x000A0;&#x000A0;&#x000A0;&#x000A0;&#x000A0;&#x000A0;&#x000A0;&#x000A0;&#x000A0;&#x000A0;&#x000A0;</mml:mtext><mml:mi>i</mml:mi><mml:mi>f</mml:mi><mml:mtext>&#x000A0;</mml:mtext><mml:mi>c</mml:mi><mml:mi>r</mml:mi><mml:msub><mml:mi>n</mml:mi><mml:mn>3</mml:mn></mml:msub><mml:mtext>&#x000A0;</mml:mtext><mml:mo>&#x02265;</mml:mo><mml:mtext>&#x000A0;</mml:mtext><mml:mn>0.5</mml:mn></mml:mtd></mml:mtr></mml:mtable></mml:math></disp-formula>
<disp-formula id="E10"><label>(10)</label><mml:math id="M15"><mml:mtable columnalign='left'><mml:mtr><mml:mtd><mml:msubsup><mml:mi>X</mml:mi><mml:mi>n</mml:mi><mml:mn>1</mml:mn></mml:msubsup><mml:mo>=</mml:mo><mml:mi>w</mml:mi><mml:mo>&#x000D7;</mml:mo><mml:mi>F</mml:mi><mml:mi>P</mml:mi><mml:mi>o</mml:mi><mml:msub><mml:mi>s</mml:mi><mml:mi>j</mml:mi></mml:msub><mml:mo>&#x02212;</mml:mo><mml:mi>c</mml:mi><mml:mi>r</mml:mi><mml:msub><mml:mi>n</mml:mi><mml:mn>1</mml:mn></mml:msub><mml:mo>&#x000D7;</mml:mo><mml:mi>cos</mml:mi><mml:mtext>&#x000A0;</mml:mtext><mml:mo stretchy='false'>(</mml:mo><mml:mi>r</mml:mi><mml:mi>n</mml:mi><mml:msub><mml:mi>d</mml:mi><mml:mn>2</mml:mn></mml:msub><mml:mo stretchy='false'>)</mml:mo><mml:mo>&#x000D7;</mml:mo><mml:mrow><mml:mo>|</mml:mo><mml:mrow><mml:mi>r</mml:mi><mml:mi>n</mml:mi><mml:msub><mml:mi>d</mml:mi><mml:mn>3</mml:mn></mml:msub><mml:mtext>&#x000A0;</mml:mtext><mml:msubsup><mml:mi>X</mml:mi><mml:mrow><mml:mi>B</mml:mi><mml:mi>e</mml:mi><mml:mi>s</mml:mi><mml:mi>t</mml:mi><mml:mtext>&#x000A0;</mml:mtext><mml:mi>n</mml:mi></mml:mrow><mml:mrow><mml:mi>i</mml:mi><mml:mi>t</mml:mi><mml:mi>e</mml:mi></mml:mrow></mml:msubsup><mml:mo>&#x02212;</mml:mo><mml:mtext>&#x000A0;</mml:mtext><mml:msubsup><mml:mi>X</mml:mi><mml:mi>n</mml:mi><mml:mrow><mml:mi>i</mml:mi><mml:mi>t</mml:mi><mml:mi>e</mml:mi></mml:mrow></mml:msubsup></mml:mrow><mml:mo>|</mml:mo></mml:mrow><mml:mtext>&#x000A0;&#x000A0;</mml:mtext></mml:mtd></mml:mtr><mml:mtr><mml:mtd><mml:mtext>&#x000A0;&#x000A0;&#x000A0;&#x000A0;&#x000A0;&#x000A0;&#x000A0;&#x000A0;&#x000A0;&#x000A0;&#x000A0;&#x000A0;&#x000A0;&#x000A0;&#x000A0;&#x000A0;&#x000A0;&#x000A0;&#x000A0;&#x000A0;&#x000A0;&#x000A0;&#x000A0;&#x000A0;&#x000A0;&#x000A0;&#x000A0;&#x000A0;&#x000A0;&#x000A0;&#x000A0;&#x000A0;&#x000A0;&#x000A0;&#x000A0;&#x000A0;&#x000A0;&#x000A0;&#x000A0;&#x000A0;&#x000A0;&#x000A0;&#x000A0;&#x000A0;&#x000A0;&#x000A0;</mml:mtext><mml:mi>i</mml:mi><mml:mi>f</mml:mi><mml:mtext>&#x000A0;</mml:mtext><mml:mi>c</mml:mi><mml:mi>r</mml:mi><mml:msub><mml:mi>n</mml:mi><mml:mn>3</mml:mn></mml:msub><mml:mo>&#x0003C;</mml:mo><mml:mtext>&#x000A0;</mml:mtext><mml:mn>0.5</mml:mn></mml:mtd></mml:mtr></mml:mtable></mml:math></disp-formula>
<p>where, <italic>w</italic> = 0.9 is the inertia weight, <italic>FPos</italic><sub><italic>j</italic></sub> food position in <italic>j</italic>-th dimension. <italic>crn</italic><sub>1</sub> is obtained from Eq. (7). <italic>rnd</italic><sub>2</sub> is obtained using Eq. (4). <italic>rnd</italic><sub>3</sub> and <italic>crn</italic><sub>3</sub> are random numbers. <inline-formula><mml:math id="M16"><mml:msubsup><mml:mrow><mml:mi>X</mml:mi></mml:mrow><mml:mrow><mml:mi>B</mml:mi><mml:mi>e</mml:mi><mml:mi>s</mml:mi><mml:mi>t</mml:mi><mml:mtext>&#x000A0;</mml:mtext><mml:mi>n</mml:mi></mml:mrow><mml:mrow><mml:mi>i</mml:mi><mml:mi>t</mml:mi><mml:mi>e</mml:mi></mml:mrow></mml:msubsup></mml:math></inline-formula> is best solution at iteration <italic>ite</italic> in <italic>n-</italic>th dimension, and <inline-formula><mml:math id="M17"><mml:msubsup><mml:mrow><mml:mi>X</mml:mi></mml:mrow><mml:mrow><mml:mi>n</mml:mi></mml:mrow><mml:mrow><mml:mi>i</mml:mi><mml:mi>t</mml:mi><mml:mi>e</mml:mi></mml:mrow></mml:msubsup></mml:math></inline-formula> is current solution of individual.</p>
</sec>
<sec>
<title>2.2.3.2. Second part</title>
<p>The second part of SSA is enhanced by introducing levy flight function. Therefore, the follower position is determined by</p>
<disp-formula id="E11"><label>(11)</label><mml:math id="M18"><mml:mtable class="eqnarray" columnalign="left"><mml:mtr><mml:mtd><mml:msubsup><mml:mrow><mml:mi>X</mml:mi></mml:mrow><mml:mrow><mml:mi>n</mml:mi></mml:mrow><mml:mrow><mml:mi>m</mml:mi></mml:mrow></mml:msubsup><mml:mo>=</mml:mo><mml:mfrac><mml:mrow><mml:mn>1</mml:mn></mml:mrow><mml:mrow><mml:mn>2</mml:mn></mml:mrow></mml:mfrac><mml:mrow><mml:mo stretchy="true">(</mml:mo><mml:mrow><mml:msubsup><mml:mrow><mml:mi>X</mml:mi></mml:mrow><mml:mrow><mml:mi>n</mml:mi></mml:mrow><mml:mrow><mml:mi>m</mml:mi></mml:mrow></mml:msubsup><mml:mo>&#x0002B;</mml:mo><mml:msubsup><mml:mrow><mml:mi>X</mml:mi></mml:mrow><mml:mrow><mml:mi>n</mml:mi></mml:mrow><mml:mrow><mml:mi>m</mml:mi><mml:mo>-</mml:mo><mml:mn>1</mml:mn></mml:mrow></mml:msubsup></mml:mrow><mml:mo stretchy="true">)</mml:mo></mml:mrow><mml:mo>&#x0002B;</mml:mo><mml:mn>0</mml:mn><mml:mo>.</mml:mo><mml:mn>01</mml:mn><mml:mo>&#x000D7;</mml:mo><mml:mi>L</mml:mi><mml:mi>F</mml:mi><mml:mo>&#x000D7;</mml:mo><mml:mtext>&#x000A0;</mml:mtext><mml:msub><mml:mrow><mml:mi>c</mml:mi><mml:mi>r</mml:mi><mml:mi>n</mml:mi></mml:mrow><mml:mrow><mml:mn>4</mml:mn></mml:mrow></mml:msub></mml:mtd></mml:mtr></mml:mtable></mml:math></disp-formula>
<p>where, <italic>crn</italic><sub>4</sub> is random number between [0,1], <inline-formula><mml:math id="M19"><mml:msubsup><mml:mrow><mml:mi>X</mml:mi></mml:mrow><mml:mrow><mml:mi>n</mml:mi></mml:mrow><mml:mrow><mml:mi>m</mml:mi></mml:mrow></mml:msubsup></mml:math></inline-formula> represents the <italic>m</italic>-th follower in <italic>n-</italic>th dimension. LF function is defined by following equation:</p>
<disp-formula id="E12"><label>(12)</label><mml:math id="M20"><mml:mtable class="eqnarray" columnalign="left"><mml:mtr><mml:mtd><mml:mi>L</mml:mi><mml:mi>F</mml:mi><mml:mo>=</mml:mo><mml:mtext>&#x000A0;</mml:mtext><mml:mfrac><mml:mrow><mml:mi>f</mml:mi><mml:mtext>&#x000A0;</mml:mtext><mml:mo>&#x000D7;</mml:mo><mml:mtext>&#x000A0;</mml:mtext><mml:mi>&#x003C3;</mml:mi></mml:mrow><mml:mrow><mml:mo>|</mml:mo><mml:mi>g</mml:mi><mml:msup><mml:mrow><mml:mo>|</mml:mo></mml:mrow><mml:mrow><mml:mfrac><mml:mrow><mml:mn>1</mml:mn></mml:mrow><mml:mrow><mml:mi>&#x003B2;</mml:mi></mml:mrow></mml:mfrac></mml:mrow></mml:msup></mml:mrow></mml:mfrac><mml:mo>,</mml:mo><mml:mtext>&#x000A0;</mml:mtext><mml:mtext class="textrm" mathvariant="normal">where&#x000A0;</mml:mtext><mml:mi>&#x003C3;</mml:mi><mml:mo>=</mml:mo><mml:mtext>&#x000A0;</mml:mtext><mml:msup><mml:mrow><mml:mrow><mml:mo stretchy="true">(</mml:mo><mml:mrow><mml:mtext>&#x000A0;</mml:mtext><mml:mfrac><mml:mrow><mml:mi>&#x00393;</mml:mi><mml:mrow><mml:mo stretchy="true">(</mml:mo><mml:mrow><mml:mn>1</mml:mn><mml:mo>&#x0002B;</mml:mo><mml:mi>&#x003B2;</mml:mi></mml:mrow><mml:mo stretchy="true">)</mml:mo></mml:mrow><mml:mo>&#x000D7;</mml:mo><mml:mo class="qopname">sin</mml:mo><mml:mrow><mml:mo stretchy="true">(</mml:mo><mml:mrow><mml:mfrac><mml:mrow><mml:mi>&#x003C0;</mml:mi><mml:mi>&#x003B2;</mml:mi></mml:mrow><mml:mrow><mml:mn>2</mml:mn></mml:mrow></mml:mfrac></mml:mrow><mml:mo stretchy="true">)</mml:mo></mml:mrow></mml:mrow><mml:mrow><mml:mi>&#x00393;</mml:mi><mml:mrow><mml:mo stretchy="true">(</mml:mo><mml:mrow><mml:mfrac><mml:mrow><mml:mn>1</mml:mn><mml:mo>&#x0002B;</mml:mo><mml:mi>&#x003B2;</mml:mi></mml:mrow><mml:mrow><mml:mn>2</mml:mn></mml:mrow></mml:mfrac></mml:mrow><mml:mo stretchy="true">)</mml:mo></mml:mrow><mml:mo>&#x000D7;</mml:mo><mml:mtext>&#x000A0;</mml:mtext><mml:mi>&#x003B2;</mml:mi><mml:mo>&#x000D7;</mml:mo><mml:msup><mml:mrow><mml:mn>2</mml:mn></mml:mrow><mml:mrow><mml:mrow><mml:mo stretchy="true">(</mml:mo><mml:mrow><mml:mfrac><mml:mrow><mml:mi>&#x003B2;</mml:mi><mml:mo>-</mml:mo><mml:mn>1</mml:mn></mml:mrow><mml:mrow><mml:mn>2</mml:mn></mml:mrow></mml:mfrac></mml:mrow><mml:mo stretchy="true">)</mml:mo></mml:mrow></mml:mrow></mml:msup></mml:mrow></mml:mfrac></mml:mrow><mml:mo stretchy="true">)</mml:mo></mml:mrow></mml:mrow><mml:mrow><mml:mfrac><mml:mrow><mml:mn>1</mml:mn></mml:mrow><mml:mrow><mml:mi>&#x003B2;</mml:mi></mml:mrow></mml:mfrac></mml:mrow></mml:msup></mml:mtd></mml:mtr></mml:mtable></mml:math></disp-formula>
<p>where, &#x003B2; = 1.25. f and g are the random numbers, between [0, 1].</p>
</sec>
</sec>
<sec>
<title>2.2.4. Classification and detection</title>
<p>With the feature subset obtained from the feature selection phase, classification and detection is performed using machine learning classifier. In this paper, multiclass classification is done i.e., detecting each attack category. In this paper, KNN and XGBoost classifier is used to identify intrusive network flow traffic. This sub-section describes these machine learning classifiers briefly.</p>
<sec>
<title>2.2.4.1. KNN</title>
<p>The KNN is one the simplest supervised machine learning classifier. This classification method uses statistical measures to determine the instances proximity. K represents the number of neighbors. The data instances with high similarity belongs to same class. KNN allows new instances to be labeled using the previously labeled instances. However, it is highly sensitive to noise.</p>
</sec>
<sec>
<title>2.2.4.2. XGBoost</title>
<p>This machine learning classifier allows to create sequential decision trees. This classifier is widely used for classification and regression task. XGBoost is used to speed-up the classification task and improving the classification performance. However, this classifier doesn&#x00027;t work well with unstructured data.</p>
</sec>
</sec>
</sec>
</sec>
<sec id="s3">
<title>3. Result</title>
<p>The experiment is conducted on MAC Catalina OS with 8GB RAM. The implementation of classifiers and feature selection algorithms is done using python programming language. The formula of metrics used to evaluate performance is given in <xref ref-type="table" rid="T2">Table 2</xref>.</p>
<table-wrap position="float" id="T2">
<label>Table 2</label>
<caption><p>Metric formula.</p></caption>
<table frame="hsides" rules="groups">
<thead><tr>
<th valign="top" align="left"><bold>Metric</bold></th>
<th valign="top" align="center"><bold>Formula</bold></th>
<th valign="top" align="center"><bold>Metric</bold></th>
<th valign="top" align="center"><bold>Formula</bold></th>
</tr>
</thead>
<tbody>
<tr>
<td valign="top" align="left">Accuracy</td>
<td valign="top" align="center"><inline-formula><mml:math id="M21"><mml:mfrac><mml:mrow><mml:mrow><mml:mo stretchy="false">(</mml:mo><mml:mrow><mml:mi>T</mml:mi><mml:mi>P</mml:mi><mml:mi>S</mml:mi><mml:mo>&#x0002B;</mml:mo><mml:mi>T</mml:mi><mml:mi>N</mml:mi><mml:mi>S</mml:mi></mml:mrow><mml:mo stretchy="false">)</mml:mo></mml:mrow></mml:mrow><mml:mrow><mml:mrow><mml:mo stretchy="false">(</mml:mo><mml:mrow><mml:mi>T</mml:mi><mml:mi>P</mml:mi><mml:mi>S</mml:mi><mml:mo>&#x0002B;</mml:mo><mml:mi>F</mml:mi><mml:mi>N</mml:mi><mml:mi>S</mml:mi><mml:mo>&#x0002B;</mml:mo><mml:mi>T</mml:mi><mml:mi>N</mml:mi><mml:mi>S</mml:mi><mml:mo>&#x0002B;</mml:mo><mml:mi>F</mml:mi><mml:mi>P</mml:mi><mml:mi>S</mml:mi></mml:mrow><mml:mo stretchy="false">)</mml:mo></mml:mrow></mml:mrow></mml:mfrac></mml:math></inline-formula></td>
<td valign="top" align="center">Recall (R)</td>
<td valign="top" align="center"><inline-formula><mml:math id="M22"><mml:mfrac><mml:mrow><mml:mi>T</mml:mi><mml:mi>P</mml:mi><mml:mi>S</mml:mi></mml:mrow><mml:mrow><mml:mrow><mml:mo stretchy="false">(</mml:mo><mml:mrow><mml:mi>T</mml:mi><mml:mi>P</mml:mi><mml:mi>S</mml:mi><mml:mo>&#x0002B;</mml:mo><mml:mi>F</mml:mi><mml:mi>N</mml:mi><mml:mi>S</mml:mi></mml:mrow><mml:mo stretchy="false">)</mml:mo></mml:mrow></mml:mrow></mml:mfrac></mml:math></inline-formula></td>
</tr>
<tr>
<td valign="top" align="left">Precision (P)</td>
<td valign="top" align="center"><inline-formula><mml:math id="M23"><mml:mfrac><mml:mrow><mml:mi>T</mml:mi><mml:mi>P</mml:mi><mml:mi>S</mml:mi></mml:mrow><mml:mrow><mml:mrow><mml:mo stretchy="false">(</mml:mo><mml:mrow><mml:mi>T</mml:mi><mml:mi>P</mml:mi><mml:mi>S</mml:mi><mml:mo>&#x0002B;</mml:mo><mml:mi>F</mml:mi><mml:mi>P</mml:mi><mml:mi>S</mml:mi></mml:mrow><mml:mo stretchy="false">)</mml:mo></mml:mrow></mml:mrow></mml:mfrac></mml:math></inline-formula></td>
<td valign="top" align="center">F-Score</td>
<td valign="top" align="center"><inline-formula><mml:math id="M24"><mml:mfrac><mml:mrow><mml:mn>2</mml:mn><mml:mo>&#x000D7;</mml:mo><mml:mi>R</mml:mi><mml:mo>&#x000D7;</mml:mo><mml:mi>P</mml:mi></mml:mrow><mml:mrow><mml:mrow><mml:mo stretchy="false">(</mml:mo><mml:mrow><mml:mi>R</mml:mi><mml:mo>&#x0002B;</mml:mo><mml:mi>P</mml:mi></mml:mrow><mml:mo stretchy="false">)</mml:mo></mml:mrow></mml:mrow></mml:mfrac></mml:math></inline-formula></td>
</tr>
</tbody>
</table>
<table-wrap-foot>
<p>Where, FNS, false negative; TPS, true positive; TNS, true negative; FPS, false positive.</p>
</table-wrap-foot>
</table-wrap>
<p><bold>Time</bold> is the total computation time an IDS model will take with feature selection algorithm (in secs).</p>
<p>Number of features (N.F.) defines length of features selected by feature selection algorithm.</p>
<disp-formula id="E17"><mml:math id="M25"><mml:mtable columnalign='left'><mml:mtr><mml:mtd><mml:mtext>Fitness&#x000A0;Function</mml:mtext><mml:mo>=</mml:mo><mml:mtext>&#x000A0;&#x000A0;&#x000A0;&#x000A0;&#x000A0;&#x000A0;&#x000A0;&#x000A0;&#x000A0;&#x000A0;&#x000A0;&#x000A0;&#x000A0;&#x000A0;&#x000A0;&#x000A0;&#x000A0;&#x000A0;&#x000A0;&#x000A0;</mml:mtext><mml:mo>&#x0221D;</mml:mo><mml:mtext>&#x000A0;</mml:mtext><mml:mo>&#x000D7;</mml:mo><mml:mtext>&#x000A0;</mml:mtext><mml:mrow><mml:mo>(</mml:mo><mml:mrow><mml:mn>1</mml:mn><mml:mo>&#x02212;</mml:mo><mml:mi>A</mml:mi><mml:mi>c</mml:mi><mml:mi>c</mml:mi><mml:mi>u</mml:mi><mml:mi>r</mml:mi><mml:mi>a</mml:mi><mml:mi>c</mml:mi><mml:mi>y</mml:mi></mml:mrow><mml:mo>)</mml:mo></mml:mrow><mml:mo>+</mml:mo><mml:mi>&#x003B2;</mml:mi><mml:mtext>&#x000A0;&#x000A0;</mml:mtext></mml:mtd></mml:mtr><mml:mtr><mml:mtd><mml:mtext>&#x000A0;&#x000A0;&#x000A0;&#x000A0;&#x000A0;&#x000A0;&#x000A0;&#x000A0;&#x000A0;&#x000A0;&#x000A0;&#x000A0;&#x000A0;&#x000A0;&#x000A0;&#x000A0;&#x000A0;&#x000A0;&#x000A0;&#x000A0;&#x000A0;&#x000A0;&#x000A0;&#x000A0;&#x000A0;&#x000A0;&#x000A0;&#x000A0;&#x000A0;&#x000A0;&#x000A0;&#x000A0;&#x000A0;&#x000A0;&#x000A0;&#x000A0;&#x000A0;</mml:mtext><mml:mo>&#x000D7;</mml:mo><mml:mtext>&#x000A0;</mml:mtext><mml:mfrac><mml:mrow><mml:mi>N</mml:mi><mml:mo>.</mml:mo><mml:mi>F</mml:mi><mml:mo>.</mml:mo><mml:mtext>&#x000A0;</mml:mtext></mml:mrow><mml:mrow><mml:mi>M</mml:mi><mml:mi>a</mml:mi><mml:mi>x</mml:mi><mml:mi>i</mml:mi><mml:mi>m</mml:mi><mml:mi>u</mml:mi><mml:mi>m</mml:mi><mml:mtext>&#x000A0;</mml:mtext><mml:mi>f</mml:mi><mml:mi>e</mml:mi><mml:mi>a</mml:mi><mml:mi>t</mml:mi><mml:mi>u</mml:mi><mml:mi>r</mml:mi><mml:mi>e</mml:mi><mml:mi>s</mml:mi></mml:mrow></mml:mfrac><mml:mtext>&#x000A0;where</mml:mtext><mml:mo>,</mml:mo><mml:mtext>&#x000A0;&#x003B1;</mml:mtext><mml:mo>=</mml:mo><mml:mn>0.99</mml:mn><mml:mo>,</mml:mo><mml:mtext>&#x000A0;&#x003B2;</mml:mtext><mml:mo>=</mml:mo><mml:mn>1</mml:mn><mml:mo>&#x02212;</mml:mo><mml:mtext>&#x003B1;</mml:mtext></mml:mtd></mml:mtr></mml:mtable></mml:math></disp-formula>
<sec>
<title>3.1. Result analysis</title>
<p>The proposed system is compared with the following algorithm such as sine-cosine algorithm (SCA) (Mirjalili, <xref ref-type="bibr" rid="B17">2016</xref>), salp swarm algorithm (SSA) (Mirjalili et al., <xref ref-type="bibr" rid="B18">2017</xref>), Jaya Algorithm (JA) (Rao, <xref ref-type="bibr" rid="B21">2016</xref>), Bat algorithm (BA) (Yang, <xref ref-type="bibr" rid="B26">2010</xref>), and grey wolf optimization algorithm (GWO) (Mirjalili et al., <xref ref-type="bibr" rid="B19">2014</xref>), used for the feature selection task of IDS. Afterward the performance of two classifiers KNN and XGBoost is compared with these feature selection methods. <xref ref-type="fig" rid="F2">Figure 2</xref> depicts that the SCA-SSA with KNN and XGBoost attains the highest accuracy of 83.3% with the KNN classifier and 84.75% with the XGBoost classifier. On the other side, BA attains the minimum accuracy of 82.6% with KNN and 83.9% with the XGBoost classifier.</p>
<fig id="F2" position="float">
<label>Figure 2</label>
<caption><p>Accuracy.</p></caption>
<graphic mimetype="image" mime-subtype="tiff" xlink:href="fdata-06-1081466-g0002.tif"/>
</fig>
<p><xref ref-type="fig" rid="F3">Figure 3</xref> depicts that SCA-SSA attains a precision of 84% with KNN and 86% with XGBoost, which is the highest among all other methods. Similarly, recall and F-Score of SCA-SSA are highest among other methods with KNN and XGBoost classifier as shown in <xref ref-type="fig" rid="F4">Figures 4</xref>, <xref ref-type="fig" rid="F5">5</xref>, respectively. SCA-SSA takes the lowest execution time of 145.78 s with KNN, and 96.42 s with XGBoost as depicted in <xref ref-type="fig" rid="F6">Figure 6</xref>. SSA takes the highest execution time with KNN, and GWO takes the highest execution time with the XGBoost classifier. <xref ref-type="fig" rid="F7">Figure 7</xref> shows SCA-SSA selects features with a minimal length of 11 with KNN and 8 with XGBoost classifier. <xref ref-type="fig" rid="F8">Figures 8</xref>, <xref ref-type="fig" rid="F9">9</xref> show the convergence curve of hybridized SCA-SSA with KNN, and XGBoost, respectively, which is better compared to convergence curve of original SCA, and original SSA. The overall performance of SCA-SSA with XGBoost classifier is better compared to SCA-SSA with KNN classifier in terms of all metrics used for performance evaluation of this system.</p>
<fig id="F3" position="float">
<label>Figure 3</label>
<caption><p>Precision.</p></caption>
<graphic mimetype="image" mime-subtype="tiff" xlink:href="fdata-06-1081466-g0003.tif"/>
</fig>
<fig id="F4" position="float">
<label>Figure 4</label>
<caption><p>Recall.</p></caption>
<graphic mimetype="image" mime-subtype="tiff" xlink:href="fdata-06-1081466-g0004.tif"/>
</fig>
<fig id="F5" position="float">
<label>Figure 5</label>
<caption><p><italic>F</italic>-score.</p></caption>
<graphic mimetype="image" mime-subtype="tiff" xlink:href="fdata-06-1081466-g0005.tif"/>
</fig>
<fig id="F6" position="float">
<label>Figure 6</label>
<caption><p>Time.</p></caption>
<graphic mimetype="image" mime-subtype="tiff" xlink:href="fdata-06-1081466-g0006.tif"/>
</fig>
<fig id="F7" position="float">
<label>Figure 7</label>
<caption><p>Feature selected.</p></caption>
<graphic mimetype="image" mime-subtype="tiff" xlink:href="fdata-06-1081466-g0007.tif"/>
</fig>
<fig id="F8" position="float">
<label>Figure 8</label>
<caption><p>KNN-convergence curve.</p></caption>
<graphic mimetype="image" mime-subtype="tiff" xlink:href="fdata-06-1081466-g0008.tif"/>
</fig>
<fig id="F9" position="float">
<label>Figure 9</label>
<caption><p>XGBoost-convergence curve.</p></caption>
<graphic mimetype="image" mime-subtype="tiff" xlink:href="fdata-06-1081466-g0009.tif"/>
</fig>
</sec>
</sec>
<sec id="s4">
<title>4. Discussion</title>
<p>Prevention of IoT devices from malicious activities is crucial. Data produced by these smart devices are heterogeneous. Hence, an IDS with an efficient feature selection method is important, with an objective of reducing the data size and detection time without compromising the system accuracy. The hybridized bio-inspired IDS for the IoT system is proposed in this paper. The IoTID20 dataset determines the performance of the proposed work. The optimal features are selected using hybridized SCA-SSA algorithm from pre-processed data. Then KNN and XGBoost classifiers are used to perform multiclass classification of intrusive data. Experimental result shows that the proposed system ameliorates other similar approaches. The convergence rate of SCA-SSA is better compared to SCA, and SSA. The hybrid SCA-SSA is compared against other metaheuristic algorithm used for feature selection tasks such as SCA, SSA, JA, BA, and GWO. The result shows that hybrid SCA-SSA with KNN and XGBoost attain high accuracy with the least execution time. Furthermore, the number of features selected is lowest with KNN and XGBoost for hybrid SCA-SCA. Overall, the performance of SCA-SSA-XGBoost is better compared to SCA-SSA-KNN. In the future, we can use deep learning models for better performance of the proposed work.</p>
</sec>
<sec sec-type="data-availability" id="s5">
<title>Data availability statement</title>
<p>The original contributions presented in the study are included in the article/supplementary material, further inquiries can be directed to the corresponding author/s. The IoTID20 dataset is analyzed for this research. This dataset is publically accessible at: <ext-link ext-link-type="uri" xlink:href="https://sites.google.com/view/iot-network-intrusion-dataset/home">https://sites.google.com/view/iot-network-intrusion-dataset/home</ext-link>.</p>
</sec>
<sec sec-type="author-contributions" id="s6">
<title>Author contributions</title>
<p>RS done paper drafting, implementation, and paper writing under the supervision of RU. All authors contributed equally in paper review. All authors contributed to the article and approved the submitted version.</p>
</sec>
</body>
<back>
<sec sec-type="funding-information" id="s7">
<title>Funding</title>
<p>Guru Gobind Singh Indraprasth University is granting short term research fellowship to RS with reference to GGSIPU/DRC/2022/1218.</p>
</sec>
<sec sec-type="COI-statement" id="conf1">
<title>Conflict of interest</title>
<p>The authors declare that the research was conducted in the absence of any commercial or financial relationships that could be construed as a potential conflict of interest.</p>
</sec>
<sec sec-type="disclaimer" id="s8">
<title>Publisher&#x00027;s note</title>
<p>All claims expressed in this article are solely those of the authors and do not necessarily represent those of their affiliated organizations, or those of the publisher, the editors and the reviewers. Any product that may be evaluated in this article, or claim that may be made by its manufacturer, is not guaranteed or endorsed by the publisher.</p>
</sec>
<ref-list>
<title>References</title>
<ref id="B1">
<citation citation-type="journal"><person-group person-group-type="author"><name><surname>Al-Fuqaha</surname> <given-names>A.</given-names></name> <name><surname>Guizani</surname> <given-names>M.</given-names></name> <name><surname>Mohammadi</surname> <given-names>M.</given-names></name> <name><surname>Aledhari</surname> <given-names>M.</given-names></name> <name><surname>Ayyash</surname> <given-names>M.</given-names></name></person-group> (<year>2015</year>). <article-title>Internet of Things: A Survey on Enabling Technologies, Protocols, and Applications</article-title>. <source>IEEE Commun. Surv. Tutorials.</source> <volume>17</volume>, <fpage>2347</fpage>&#x02013;<lpage>2376</lpage>. <pub-id pub-id-type="doi">10.1109/COMST.2015.2444095</pub-id></citation>
</ref>
<ref id="B2">
<citation citation-type="journal"><person-group person-group-type="author"><name><surname>Alweshah</surname> <given-names>M.</given-names></name> <name><surname>Hammouri</surname> <given-names>A.</given-names></name> <name><surname>Alkhalaileh</surname> <given-names>S.</given-names></name> <name><surname>Alzubi</surname> <given-names>O.</given-names></name></person-group> (<year>2022</year>). <article-title>Intrusion detection for the internet of things (IoT) based on the emperor penguin colony optimization algorithm</article-title>. <source>J. Ambient Intell. Hum. Comput</source>. <volume>2022</volume>, <fpage>1</fpage>&#x02013;<lpage>18</lpage>. <pub-id pub-id-type="doi">10.1007/s12652-022-04407-6</pub-id></citation>
</ref>
<ref id="B3">
<citation citation-type="journal"><person-group person-group-type="author"><name><surname>Balasaraswathi</surname> <given-names>V. R.</given-names></name> <name><surname>Sugumaran</surname> <given-names>M.</given-names></name> <name><surname>Hamid</surname> <given-names>Y.</given-names></name></person-group> (<year>2017</year>). <article-title>Feature selection techniques for intrusion detection using non-bio-inspired and bio-inspired optimization algorithms</article-title>. <source>J. Commun. Inf. Networks</source>. <volume>2</volume>, <fpage>107</fpage>&#x02013;<lpage>119</lpage>. <pub-id pub-id-type="doi">10.1007/s41650-017-0033-7</pub-id></citation>
</ref>
<ref id="B4">
<citation citation-type="journal"><person-group person-group-type="author"><name><surname>Chaabouni</surname> <given-names>N.</given-names></name> <name><surname>Mosbah</surname> <given-names>M.</given-names></name> <name><surname>Zemmari</surname> <given-names>A.</given-names></name> <name><surname>Sauvignac</surname> <given-names>C.</given-names></name> <name><surname>Faruki</surname> <given-names>P.</given-names></name></person-group> (<year>2019</year>). <article-title>Network Intrusion Detection for IoT Security Based on Learning Techniques</article-title>. <source>IEEE Commun. Surv. Tutorials</source>. <volume>21</volume>, <fpage>2671</fpage>&#x02013;<lpage>2701</lpage>. <pub-id pub-id-type="doi">10.1109/COMST.2019.2896380</pub-id><pub-id pub-id-type="pmid">36210975</pub-id></citation></ref>
<ref id="B5">
<citation citation-type="journal"><person-group person-group-type="author"><name><surname>Chawla</surname> <given-names>M.</given-names></name> <name><surname>Duhan</surname> <given-names>M.</given-names></name></person-group> (<year>2018</year>). <article-title>Levy flights in metaheuristics optimization algorithms&#x02014;A review</article-title>. <source>Appl. Artif. Intell</source>. <volume>32</volume>, <fpage>802</fpage>&#x02013;<lpage>821</lpage>. <pub-id pub-id-type="doi">10.1080/08839514.2018.1508807</pub-id></citation>
</ref>
<ref id="B6">
<citation citation-type="journal"><person-group person-group-type="author"><name><surname>Dahou</surname> <given-names>A.</given-names></name> <name><surname>Elazis</surname> <given-names>M. A.</given-names></name> <name><surname>Chelloug</surname> <given-names>S. A.</given-names></name> <name><surname>Awadallah</surname> <given-names>M. A.</given-names></name> <name><surname>Al-Betar</surname> <given-names>M. A.</given-names></name> <name><surname>Al-qaness</surname> <given-names>M. A. A.</given-names></name> <etal/></person-group>. (<year>2022</year>). <article-title>Intrusion detection system for iot based on deep learning and modified reptile search algorithm</article-title>. <source>Comput. Intell. Neurosci</source>. 2022, 6473507. <pub-id pub-id-type="doi">10.1155/2022/6473507</pub-id></citation>
</ref>
<ref id="B7">
<citation citation-type="journal"><person-group person-group-type="author"><name><surname>Davahli</surname> <given-names>A.</given-names></name> <name><surname>Shamsi</surname> <given-names>M.</given-names></name> <name><surname>Abaei</surname> <given-names>G.</given-names></name></person-group> (<year>2020</year>). <article-title>Hybridizing genetic algorithm and grey wolf optimizer to advance an intelligent and lightweight intrusion detection system for IoT wireless networks</article-title>. <source>J. Ambient Intell. Hum. Comput</source>. <volume>11</volume>, <fpage>5581</fpage>&#x02013;<lpage>5609</lpage>. <pub-id pub-id-type="doi">10.1007/s12652-020-01919-x</pub-id></citation>
</ref>
<ref id="B8">
<citation citation-type="journal"><person-group person-group-type="author"><name><surname>Fatani</surname> <given-names>A.</given-names></name> <name><surname>Dahou</surname> <given-names>A.</given-names></name> <name><surname>Al-qaness</surname> <given-names>M. A.</given-names></name> <name><surname>Lu</surname> <given-names>S.</given-names></name> <name><surname>Elaziz</surname> <given-names>M. A.</given-names></name></person-group> (<year>2021</year>). <article-title>Advanced feature extraction and selection approach using deep learning and aquila optimizer for iot intrusion detection system</article-title>. <source>Sensors</source>. 22, 140. <pub-id pub-id-type="doi">10.3390/s22010140</pub-id><pub-id pub-id-type="pmid">35009682</pub-id></citation></ref>
<ref id="B9">
<citation citation-type="journal"><person-group person-group-type="author"><name><surname>Haddadpajouh</surname> <given-names>H.</given-names></name> <name><surname>Mohtadi</surname> <given-names>A.</given-names></name> <name><surname>Dehghantanaha</surname> <given-names>A.</given-names></name> <name><surname>Karimipour</surname> <given-names>H.</given-names></name> <name><surname>Lin</surname> <given-names>X.</given-names></name> <name><surname>Choo</surname> <given-names>K. K. R.</given-names></name> <etal/></person-group>. (<year>2020</year>). <article-title>A multikernel and metaheuristic feature selection approach for IoT malware threat hunting in the edge layer</article-title>. <source>IEEE Internet Things J</source>. <volume>8</volume>, <fpage>4540</fpage>&#x02013;<lpage>4547</lpage>. <pub-id pub-id-type="doi">10.1109/JIOT.2020.3026660</pub-id></citation>
</ref>
<ref id="B10">
<citation citation-type="journal"><person-group person-group-type="author"><name><surname>Hosseini</surname> <given-names>F.</given-names></name> <name><surname>Gharehchopogh</surname> <given-names>F. S.</given-names></name> <name><surname>Masdari</surname> <given-names>M.</given-names></name></person-group> (<year>2022</year>). <article-title>A botnet detection in IoT using a hybrid multi-objective optimization algorithm</article-title>. <source>New Gener. Comput.</source> <volume>40</volume>, <fpage>809</fpage>&#x02013;<lpage>843</lpage>. <pub-id pub-id-type="doi">10.1007/s00354-022-00188-w</pub-id></citation>
</ref>
<ref id="B11">
<citation citation-type="journal"><person-group person-group-type="author"><name><surname>Hussain</surname> <given-names>F.</given-names></name> <name><surname>Hussain</surname> <given-names>R.</given-names></name> <name><surname>Hassan</surname> <given-names>S. A.</given-names></name> <name><surname>Hossain</surname> <given-names>E.</given-names></name></person-group> (<year>2020</year>). <article-title>Machine learning in iot security: current solutions and future challenges</article-title>. <source>IEEE Commun. Surv. Tutorials</source>. <volume>22</volume>, <fpage>1686</fpage>&#x02013;<lpage>1721</lpage>. <pub-id pub-id-type="doi">10.1109/COMST.2020.2986444</pub-id></citation>
</ref>
<ref id="B12">
<citation citation-type="journal"><person-group person-group-type="author"><name><surname>Kareem</surname> <given-names>S. S.</given-names></name> <name><surname>Mostafa</surname> <given-names>R. R.</given-names></name> <name><surname>Hashim</surname> <given-names>F. A.</given-names></name> <name><surname>El-Bakry</surname> <given-names>H. M.</given-names></name></person-group> (<year>2022</year>). <article-title>An effective feature selection model using hybrid metaheuristic algorithms for IoT intrusion detection</article-title>. <source>Sensors</source>. 22, 1396. <pub-id pub-id-type="doi">10.3390/s22041396</pub-id><pub-id pub-id-type="pmid">35214297</pub-id></citation></ref>
<ref id="B13">
<citation citation-type="journal"><person-group person-group-type="author"><name><surname>Keserwani</surname> <given-names>P. K.</given-names></name> <name><surname>Govil</surname> <given-names>M. C.</given-names></name> <name><surname>Pilli</surname> <given-names>S. E.</given-names></name> <name><surname>Govil</surname> <given-names>P.</given-names></name></person-group> (<year>2021</year>). <article-title>A smart anomaly-based intrusion detection system for the Internet of Things (IoT) network using GWO&#x02013;PSO&#x02013;RF model</article-title>. <source>J Reliable Intell. Environ</source>. <volume>7</volume>, <fpage>3</fpage>&#x02013;<lpage>21</lpage>. <pub-id pub-id-type="doi">10.1007/s40860-020-00126-x</pub-id></citation>
</ref>
<ref id="B14">
<citation citation-type="journal"><person-group person-group-type="author"><name><surname>Khraisat</surname> <given-names>A.</given-names></name> <name><surname>Alazab</surname> <given-names>A.</given-names></name></person-group> (<year>2021</year>). <article-title>A critical review of intrusion detection systems in the internet of things: techniques, deployment strategy, validation strategy, attacks, public datasets and challenges</article-title>. <source>Cybersecurity</source>. <volume>4</volume>, <fpage>1</fpage>&#x02013;<lpage>27</lpage>. <pub-id pub-id-type="doi">10.1186/s42400-021-00077-7</pub-id></citation>
</ref>
<ref id="B15">
<citation citation-type="journal"><person-group person-group-type="author"><name><surname>Krishna</surname> <given-names>E. S.</given-names></name> <name><surname>Arunkumar</surname> <given-names>T.</given-names></name></person-group> (<year>2021</year>). <article-title>Hybrid particle swarm and gray wolf optimization algorithm for IoT intrusion detection system</article-title>. <source>Int. J. Intell. Eng. Syst.</source> <volume>14</volume>, <fpage>66</fpage>&#x02013;<lpage>76</lpage>. <pub-id pub-id-type="doi">10.22266/ijies2021.0831.07</pub-id></citation>
</ref>
<ref id="B16">
<citation citation-type="journal"><person-group person-group-type="author"><name><surname>Mafarja</surname> <given-names>M.</given-names></name> <name><surname>Heidari</surname> <given-names>A. A.</given-names></name> <name><surname>Habib</surname> <given-names>M.</given-names></name> <name><surname>Faris</surname> <given-names>H.</given-names></name> <name><surname>Thaher</surname> <given-names>T.</given-names></name> <name><surname>Aljarah</surname> <given-names>I.</given-names></name> <etal/></person-group>. (<year>2020</year>). <article-title>Augmented whale feature selection for IoT attacks: Structure, analysis and applications</article-title>. <source>Future Gener. Comput. Syst</source>. <volume>112</volume>, <fpage>18</fpage>&#x02013;<lpage>40</lpage>. <pub-id pub-id-type="doi">10.1016/j.future.2020.05.020</pub-id></citation>
</ref>
<ref id="B17">
<citation citation-type="journal"><person-group person-group-type="author"><name><surname>Mirjalili</surname> <given-names>S.</given-names></name></person-group> (<year>2016</year>). <article-title>SCA: A sine cosine algorithm for solving optimization problems</article-title>. <source>Knowl. Based Syst.</source> <volume>96</volume>, <fpage>120</fpage>&#x02013;<lpage>133</lpage>. <pub-id pub-id-type="doi">10.1016/j.knosys.2015.12.022</pub-id></citation>
</ref>
<ref id="B18">
<citation citation-type="journal"><person-group person-group-type="author"><name><surname>Mirjalili</surname> <given-names>S.</given-names></name> <name><surname>Gandomi</surname> <given-names>A. H.</given-names></name> <name><surname>Mirjalili</surname> <given-names>S. Z.</given-names></name> <name><surname>Saremi</surname> <given-names>S.</given-names></name> <name><surname>Faris</surname> <given-names>H.</given-names></name> <name><surname>Mirjalili</surname> <given-names>S. M.</given-names></name> <etal/></person-group>. (<year>2017</year>). <article-title>Salp swarm algorithm: a bio-inspired optimizer for engineering design problems</article-title>. <source>Adv. Eng. Software.</source> <volume>114</volume>, <fpage>163</fpage>&#x02013;<lpage>191</lpage>. <pub-id pub-id-type="doi">10.1016/j.advengsoft.2017.07.002</pub-id><pub-id pub-id-type="pmid">36532584</pub-id></citation></ref>
<ref id="B19">
<citation citation-type="journal"><person-group person-group-type="author"><name><surname>Mirjalili</surname> <given-names>S.</given-names></name> <name><surname>Mirjalili</surname> <given-names>S. M.</given-names></name> <name><surname>Lewis</surname> <given-names>A.</given-names></name></person-group> (<year>2014</year>). <article-title>Grey wolf optimizer</article-title>. <source>Adv. Eng. Softw</source>. <volume>69</volume>, <fpage>46</fpage>&#x02013;<lpage>61</lpage>. <pub-id pub-id-type="doi">10.1016/j.advengsoft.2013.12.007</pub-id></citation>
</ref>
<ref id="B20">
<citation citation-type="journal"><person-group person-group-type="author"><name><surname>Priya</surname> <given-names>R. M.</given-names></name> <name><surname>Maddikunta</surname> <given-names>S.</given-names></name> <name><surname>Parimala</surname> <given-names>P. K. R. M.</given-names></name> <name><surname>Koppu</surname> <given-names>S.</given-names></name> <name><surname>Gadekallu</surname> <given-names>T. R.</given-names></name> <name><surname>Chowdhary</surname> <given-names>C. L.</given-names></name> <etal/></person-group>. (<year>2020</year>). <article-title>An effective feature engineering for DNN using hybrid PCA-GWO for intrusion detection in IoMT architecture</article-title>. <source>Comput. Commun</source>. <volume>160</volume>, <fpage>139</fpage>&#x02013;<lpage>149</lpage>. <pub-id pub-id-type="doi">10.1016/j.comcom.2020.05.048</pub-id></citation>
</ref>
<ref id="B21">
<citation citation-type="journal"><person-group person-group-type="author"><name><surname>Rao</surname> <given-names>R. V.</given-names></name></person-group> (<year>2016</year>). <article-title>Jaya: A simple and new optimization algorithm for solving constrained and unconstrained optimization problems</article-title>. <source>Int. J. Indus. Eng. Comput</source>. <volume>7</volume>, <fpage>19</fpage>&#x02013;<lpage>34</lpage>. <pub-id pub-id-type="doi">10.5267/j.ijiec.2015.8.004</pub-id></citation>
</ref>
<ref id="B22">
<citation citation-type="journal"><person-group person-group-type="author"><name><surname>Saif</surname> <given-names>S.</given-names></name> <name><surname>Das</surname> <given-names>P.</given-names></name> <name><surname>Biswas</surname> <given-names>S.</given-names></name> <name><surname>Khari</surname> <given-names>M.</given-names></name> <name><surname>Shanmuganathan</surname> <given-names>V.</given-names></name></person-group> (<year>2022</year>). <article-title>HIIDS: Hybrid intelligent intrusion detection system empowered with machine learning and metaheuristic algorithms for application in IoT based healthcare</article-title>. <source>Microprocess. Microsys</source>. 2022, 104622. <pub-id pub-id-type="doi">10.1016/j.micpro.2022.104622</pub-id></citation>
</ref>
<ref id="B23">
<citation citation-type="journal"><person-group person-group-type="author"><name><surname>Sarwar</surname> <given-names>A.</given-names></name> <name><surname>Alnajim</surname> <given-names>A. M.</given-names></name> <name><surname>Marwat</surname> <given-names>S. N. K.</given-names></name> <name><surname>Ahmed</surname> <given-names>S.</given-names></name> <name><surname>Alyahya</surname> <given-names>S. S.</given-names></name> <name><surname>Khan</surname> <given-names>W. U.</given-names></name></person-group> (<year>2022</year>). <article-title>Enhanced anomaly detection system for IoT based on improved dynamic SBPSO</article-title>. <source>Sensors</source>. 22, 4926. <pub-id pub-id-type="doi">10.3390/s22134926</pub-id><pub-id pub-id-type="pmid">35808425</pub-id></citation></ref>
<ref id="B24">
<citation citation-type="journal"><person-group person-group-type="author"><name><surname>Thakkar</surname> <given-names>A.</given-names></name> <name><surname>Lohiya</surname> <given-names>R.</given-names></name></person-group> (<year>2021</year>). <article-title>A review on machine learning and deep learning perspectives of ids for iot: recent updates, security issues, and challenges</article-title>. <source>Arch. Comput. Methods Eng</source>. <volume>28</volume>, <fpage>3211</fpage>&#x02013;<lpage>3243</lpage>. <pub-id pub-id-type="doi">10.1007/s11831-020-09496-0</pub-id></citation>
</ref>
<ref id="B25">
<citation citation-type="journal"><person-group person-group-type="author"><name><surname>Ullah</surname> <given-names>I.</given-names></name> <name><surname>Mahmoud</surname> <given-names>Q. H.</given-names></name></person-group> (<year>2020</year>). &#x0201C;A scheme for generating a dataset for anomalous activity detection in IoT networks&#x0201D;, in <italic>Canadian Conference on Artificial Intelligence</italic> (<publisher-loc>Cham</publisher-loc>: <publisher-name>Springer</publisher-name>), <fpage>508</fpage>&#x02013;<lpage>520</lpage>.</citation>
</ref>
<ref id="B26">
<citation citation-type="journal"><person-group person-group-type="author"><name><surname>Yang</surname> <given-names>X. S.</given-names></name></person-group> (<year>2010</year>). <article-title>&#x0201C;A New Metaheuristic Bat-Inspired Algorithm&#x0201D;</article-title>, in <italic>Nature inspired cooperative strategies for optimization (NICSO 2010)</italic> (<publisher-loc>Berlin, Heidelberg</publisher-loc>: <publisher-name>Springer</publisher-name>), <fpage>65</fpage>&#x02013;<lpage>74</lpage>.</citation>
</ref>
</ref-list> 
</back>
</article>