<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE article PUBLIC "-//NLM//DTD JATS (Z39.96) Journal Publishing DTD v1.1 20151215//EN" "http://jats.nlm.nih.gov/publishing/1.1/JATS-journalpublishing1.dtd">
<article xmlns:xlink="http://www.w3.org/1999/xlink" xmlns:mml="http://www.w3.org/1998/Math/MathML" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" article-type="research-article" dtd-version="1.1">
<front>
<journal-meta>
<journal-id journal-id-type="pmc">CMC</journal-id>
<journal-id journal-id-type="nlm-ta">CMC</journal-id>
<journal-id journal-id-type="publisher-id">CMC</journal-id>
<journal-title-group>
<journal-title>Computers, Materials &#x0026; Continua</journal-title>
</journal-title-group>
<issn pub-type="epub">1546-2226</issn>
<issn pub-type="ppub">1546-2218</issn>
<publisher>
<publisher-name>Tech Science Press</publisher-name>
<publisher-loc>USA</publisher-loc>
</publisher>
</journal-meta>
<article-meta>
<article-id pub-id-type="publisher-id">33382</article-id>
<article-id pub-id-type="doi">10.32604/cmc.2023.033382</article-id>
<article-categories>
<subj-group subj-group-type="heading">
<subject>Article</subject>
</subj-group>
</article-categories>
<title-group>
<article-title>Probe Attack Detection Using an Improved Intrusion Detection System</article-title>
<alt-title alt-title-type="left-running-head">Probe Attack Detection Using an Improved Intrusion Detection System</alt-title>
<alt-title alt-title-type="right-running-head">Probe Attack Detection Using an Improved Intrusion Detection System</alt-title>
</title-group>
<contrib-group content-type="authors">
<contrib id="author-1" contrib-type="author">
<name name-style="western"><surname>Almazyad</surname><given-names>Abdulaziz</given-names></name></contrib>
<contrib id="author-2" contrib-type="author">
<name name-style="western"><surname>Halman</surname><given-names>Laila</given-names></name></contrib>
<contrib id="author-3" contrib-type="author" corresp="yes">
<name name-style="western"><surname>Alsaeed</surname><given-names>Alaa</given-names></name><email>442202859@student.ksu.edu.sa</email></contrib>
<aff id="aff-1"><institution>Department of Computer Engineering, College of Computer Science, King Saud University</institution>, <addr-line>Riyadh, 11421</addr-line>, <country>Saudi Arabia</country></aff>
</contrib-group>
<author-notes>
<corresp id="cor1"><label>&#x002A;</label>Corresponding Author: Alaa Alsaeed. Email: <email>442202859@student.ksu.edu.sa</email></corresp>
</author-notes>
<pub-date publication-format="print" date-type="pub" iso-8601-date="2022-12-15"><day>15</day>
<month>12</month>
<year>2022</year></pub-date>
<volume>74</volume>
<issue>3</issue>
<fpage>4769</fpage>
<lpage>4784</lpage>
<history>
<date date-type="received"><day>15</day><month>6</month><year>2022</year></date>
<date date-type="accepted"><day>15</day><month>9</month><year>2022</year></date>
</history>
<permissions>
<copyright-statement>&#x00A9; 2023 Almazyad et al.</copyright-statement>
<copyright-year>2023</copyright-year>
<copyright-holder>Almazyad et al.</copyright-holder>
<license xlink:href="https://creativecommons.org/licenses/by/4.0/">
<license-p>This work is licensed under a <ext-link ext-link-type="uri" xlink:type="simple" xlink:href="https://creativecommons.org/licenses/by/4.0/">Creative Commons Attribution 4.0 International License</ext-link>, which permits unrestricted use, distribution, and reproduction in any medium, provided the original work is properly cited.</license-p>
</license>
</permissions>
<self-uri content-type="pdf" xlink:href="TSP_CMC_33382.pdf"></self-uri>
<abstract>
<p>The novel Software Defined Networking (SDN) architecture potentially resolves specific challenges arising from rapid internet growth of and the static nature of conventional networks to manage organizational business requirements with distinctive features. Nevertheless, such benefits lead to a more adverse environment entailing network breakdown, systems paralysis, and online banking fraudulence and robbery. As one of the most common and dangerous threats in SDN, probe attack occurs when the attacker scans SDN devices to collect the necessary knowledge on system susceptibilities, which is then manipulated to undermine the entire system. Precision, high performance, and real-time systems prove pivotal in successful goal attainment through feature selection to minimize computation time, optimize prediction performance, and provide a holistic understanding of machine learning data. As the extension of astute machine learning algorithms into an Intrusion Detection System (IDS) through SDN has garnered much scholarly attention within the past decade, this study recommended an effective IDS under the Grey-wolf optimizer (GWO) and Light Gradient Boosting Machine (LightGBM) classifier for probe attack identification. The InSDN dataset was employed to train and test the proposed IDS, which is deemed to be a novel benchmarking dataset in SDN. The proposed IDS assessment demonstrated an optimized performance against that of peer IDSs in probe attack detection within SDN. The results revealed that the proposed IDS outperforms the state-of-the-art IDSs, as it achieved 99.8&#x0025; accuracy, 99.7&#x0025; recall, 99.99&#x0025; precision, and 99.8&#x0025; F-measure.</p>
</abstract>
<kwd-group kwd-group-type="author">
<kwd>GWO</kwd>
<kwd>IDS</kwd>
<kwd>InSDN</kwd>
<kwd>LightGBM</kwd>
<kwd>probe attack</kwd>
<kwd>SDN</kwd>
</kwd-group>
</article-meta>
</front>
<body>
<sec id="s1"><label>1</label><title>Introduction</title>
<p>Advancements of Internet-based technologies constitutes a set of many networking devices with integrated circuits and electronic chips for high throughput attainment towards hardware-oriented networking. Regardless, the present infrastructure depicts specific drawbacks involving manageability, versatility, and extensibility. Network controllers and administrators are restricted to a group of pre-identified commands although it might be handy, simpler, and more effective to complement increased internet protocols and applications through network control programming in responsive and flexible ways as networking devices typically support commands and configurations following a specified embedded Operating System (OS). Additionally, scholars are bound to create their own experimental environments or incorporate simulations rather than conducting experiments on real ones for idea manifestation. By way of explanation, cutting edge and research are costly under present hardware-centric networking conditions.</p>
<p>The Software Defined Networking (SDN) concept was recommended with three primary layers to alleviate such shortcomings (see <xref ref-type="fig" rid="fig-1">Fig. 1</xref>). As &#x2018;&#x2018;an emerging network architecture where the network control is decoupled and separated from the forwarding mechanism and is directly programmable&#x2019;&#x2019; [<xref ref-type="bibr" rid="ref-1">1</xref>]. SDN constitutes a logically-centralized controller with a network-wide view that controls many interface-configured (ForCES [<xref ref-type="bibr" rid="ref-2">2</xref>] and OpenFlow [<xref ref-type="bibr" rid="ref-3">3</xref>]) packet-forwarding devices (switches). The SDN could emerge as a novel networking advancement that unwrap current network operation and control and facilitates network advancements and novel network designs following its decoupled nature. The potential SDN advantages in current and future Internet architectures, such as information-based networking [<xref ref-type="bibr" rid="ref-4">4</xref>] has garnered much interest from the society at large.</p>
<fig id="fig-1"><label>Figure 1</label><caption><title>SDN components</title></caption><graphic mimetype="image" mime-subtype="png" xlink:href="CMC_33382-fig-1.png"/></fig>
<p>Notably, SDN is exposed to probe attacks where unprotected network resources would be targeted for network damage. Following <xref ref-type="fig" rid="fig-2">Fig. 2</xref> [<xref ref-type="bibr" rid="ref-5">5</xref>], probe attacks attempt to gather the necessary data (IP Address, service name, operating system application, and host name) and detect network susceptibility. The attacker would employ common scanning instruments from the Internet to gather network data (nmap, satan, and mscan), which could also be utilized to instigate other attacks (Denial-of-Service (DoS), Root to Local attacks (R2L), User to Root (U2R)) beyond their essential purpose [<xref ref-type="bibr" rid="ref-5">5</xref>]. The primary idea underlying the attack originates from the perception that all rule types are only pushed from the controller to the switches, when necessary, in an SDN network. As such, a robust mechanism (automatic Intrusion Detection System (IDS)) should be provided by the network administrator for early attack detection and alleviate the risks resulting from such instances.</p>
<fig id="fig-2"><label>Figure 2</label><caption><title>Probe attack scenario</title></caption><graphic mimetype="image" mime-subtype="png" xlink:href="CMC_33382-fig-2.png"/></fig>
<p>The IDS is operated by monitoring and inspecting client device or network traffic behavior and serves to ascertain intrusions and suspicious activities [<xref ref-type="bibr" rid="ref-6">6</xref>]. This system issues an alarm to alert the security team and register malicious network activities into a log file for further investigation [<xref ref-type="bibr" rid="ref-7">7</xref>]. The IDS performance could be enhanced with Feature Selection (FS) to minimize computation time and intricacies through optimum feature subset selection, Microsoft proposed LightGBM in 2017 [<xref ref-type="bibr" rid="ref-8">8</xref>], a unique boosting framework that is deemed to be faster and more powerful than Xgboost [<xref ref-type="bibr" rid="ref-8">8</xref>]. The LightGBM model functioned as a classifier in the recommended IDS given its extensively acknowledged performance in resolving specific data mining and Machine Learning (ML) intricacies.</p>
<p>FS serves to determine a subset of features and choose the most pivotal counterpart for a classifier. As network traffic entails a substantial number of features, classifiers could yield higher precision with optimal attribute selection compared to one that is developed with a complete set of characteristics. FS could also mitigate the training dataset size given its reliable processing time and tests. Based on most empirical comparisons and demonstrations, the presence of repetitive and irrelevant features adversely affected learning model accuracy [<xref ref-type="bibr" rid="ref-9">9</xref>]. The security mechanism performance significantly relies on a subset of features chosen to be employed in optimal IDS development. As one of the extensively utilized and robust FS algorithms incorporated into various fields (IDSs), GWO selects the most crucial features that could enhance classification accuracy and intrusion detection rate.</p>
<p>The current study proposed an optimal IDS under GWO and the LightGBM classifier for efficient probe attack detection in SDN. The contributions of the proposed article are as follows: (i) An enhanced GWO by proposing a modified change position technique, (ii) A multi-objective fitness function to enhance performance of feature selection and classification process by selecting the most important features, and (iii) A LightGBM-based model for probe attack detection.</p>
<p>The remaining sections are presented as follows: Section 2 reviews relevant literature to highlight current knowledge gaps; Section 3 elaborates on the recommended IDS stages; Section 4 highlights the proposed IDS efficiency by discussing the empirical outcomes and concludes the study.</p>
</sec>
<sec id="s2"><label>2</label><title>Related Works</title>
<p>Numerous attack detection methods are currently based on benchmark dataset, attack types, and simulating SDN scenarios. Robust attack detection techniques distinguish pernicious network traffic and patterns from legitimate counterparts [<xref ref-type="bibr" rid="ref-10">10</xref>]. Such techniques are extensively deployed in traditional networks and ML-assisted SDNs. For example, ML-based IDS of DDoS flooding attacks on SDNs was presented in [<xref ref-type="bibr" rid="ref-11">11</xref>]. The common principle is depicted using a case study where experimental data (jitter, throughput, and response time metrics) from a representative SDN environment, which proves adequate for typical mid-sized and enterprise-wide networks, is employed to structure classification models that precisely determine and categorize DDoS flooding attacks. The incorporated SDN model was emulated in Mininet and DDoS flooding attacks (hypertext transfer protocol or HTTP), transmission control protocol (TCP), and user datagram protocol or UDP attacks) that were launched on the SDN model with Low Orbit Ion Cannon (LOIC). On average, Classification and Regression Tree (CART) reflected the most optimal performance regarding prediction accuracy (98&#x0025;), and robustness although all the examined ML techniques demonstrated high efficacy in Distributed Denial-of-Service (DDoS) flooding attack detection and classification.</p>
<p>A versatile modular architecture was recommended in [<xref ref-type="bibr" rid="ref-12">12</xref>] to facilitate Low-Rate Denial-of-Service (LR-DDoS) attack identification and alleviation in SDN contexts. The IDS in this study architecture was trained through six ML models. Their performance was assessed with the Canadian Institute of Cybersecurity (CIC) DoS dataset. Resultantly, the current study approach attained a 95&#x0025; detection rate despite LR-DoS attack identification complexities. Regarding deployment, the open network OS controller operating on the Mininet VM employed for the simulated context for close proximity to real-world production networks. The intrusion prevention detection system alleviated all the attacks previously identified by IDS in testing topology, thus depicting the architecture utility to detect and alleviate LR-DDoS attacks.</p>
<p>A new DDoS attack alleviation approach in SDN-related Internet Service Provider (ISP) networks for TCP-SYN and Internet Control Message Protocol (ICMP) flood attacks employed the ML method (k-Nearest Neighbors (KNN) and Extreme Gradient Boosting (XGBoost)) following [<xref ref-type="bibr" rid="ref-13">13</xref>]. The recommended algorithms were implemented, and their accuracy evaluated to overcome the trade-off between accuracy and detection effectiveness through testbed deployment. Based on the experimental outcomes, the algorithms could effectively perform attack mitigation by over 98.0&#x0025; while benign traffic proved to be unaffected. The DDoS attacks in SDN were identified with ML-oriented models parallel to [<xref ref-type="bibr" rid="ref-14">14</xref>]. Under DDoS attack traffic, particular features were first derived from SDN for the dataset in normal conditions. A novel dataset was subsequently developed with FS approaches on the present dataset for model simplification, interpretation catalyzation, and minimal training time. Both datasets that were developed with and without FS techniques were trained and tested with several ML and deep learning classifiers. Resultantly, the wrapper FS was integrated with a KNN classifier to attain the highest precision rate (98.3&#x0025;) in DDoS attack identification. In this vein, ML and FS algorithms could demonstrate optimal results involving DDoS attack detection in SDN with the potential decrease of processing load and time.</p>
<p>Meanwhile, a learning-oriented mechanism was suggested in [<xref ref-type="bibr" rid="ref-15">15</xref>] to identify the low-rate DDoS on SDN controller and switch nodes. The proposed technique constitutes two main feature groups, namely (i) stateless group, and (ii) stateful group, elicited from the Openflow package. The IDS utilizes ML to develop classifiers and distinguish normal stream from abnormal one. The experimental environment was developed and implemented to assess the research method, which encompasses the low-rate DDoS attack module under Internet of Things (IoT) devices, the physical and virtual heterogeneous SDN network, and the data flow capture and feature extraction model. The prediction outcomes were validated from various learning algorithms and the dissemination of each raw data feature for the outcomes to be compared against conventional IP packet classification solution for the DDoS attack in IoT networks following the suggested platform. Overall, the experimental outcomes demonstrated the recommended method effectiveness.</p>
<p>A trigger-based IDS to detect of DDoS on data plane was recommended to detect abnormal traffic flow based on [<xref ref-type="bibr" rid="ref-16">16</xref>]. An integrated ML algorithm entailing K-Means and KNN was employed to manipulate the rate and asymmetry attributes of the flows and detect the malicious flow ascertained by the trigger-based IDS. The controller would then undertake the necessary actions to self-defend against the attacks. The recommended cooperative detection method framework involving control plane and data plane significantly enhanced detection accuracy and effectiveness and deterred DDoS attacks on SDN.</p>
</sec>
<sec id="s3"><label>3</label><title>Proposed IDS</title>
<p>This section discusses the methodological stages followed to achieve the main objective of this article, namely: (i) preprocessing, (ii) GWO-based FS, and (ii) LightGBM-based attack detection.</p>
<sec id="s3_1"><label>3.1</label><title>Preprocessing</title>
<p>This stage strived towards data preparation for the subsequent phases (FS and detection) of the recommended IDS by converting the InSDN dataset network traffic into a more meaningful form. This stage encompasses the following components:</p>
<sec id="s3_1_1"><label>3.1.1</label><title>Cleansing</title>
<p>A significant step towards data quality and reliability reinforcement by omitting and rectifying dataset errors. Cleansing also includes managing missing, inaccurate, and noisy data that undermines model performance.</p>
</sec>
<sec id="s3_1_2"><label>3.1.2</label><title>Transformation</title>
<p>Data conversion from symbolic feature values to numerical counterparts.</p>
</sec>
<sec id="s3_1_3"><label>3.1.3</label><title>Mapping</title>
<p>The InSDN dataset involves specific attack types that should first be classified accordingly. As such, a mapping approach was employed to map every attack into its corresponding attack category (See <xref ref-type="fig" rid="fig-3">Fig. 3</xref>), then each feature is indexed by integer number starting with 0, and the results is as listed in <xref ref-type="table" rid="table-1">Table 1</xref> below.</p>
<fig id="fig-3"><label>Figure 3</label><caption><title>Attack mapping</title></caption><graphic mimetype="image" mime-subtype="png" xlink:href="CMC_33382-fig-3.png"/></fig><table-wrap id="table-1"><label>Table 1</label><caption><title>Features indexing</title></caption>
<table frame="hsides">
<colgroup>
<col align="left"/>
<col align="left"/>
<col align="left"/>
<col align="left"/>
<col align="left"/>
<col align="left"/>
</colgroup>
<thead>
<tr>
<th align="left">Index</th>
<th align="left">Feature</th>
<th align="left">Index</th>
<th align="left">Feature</th>
<th align="left">Index</th>
<th align="left">Feature</th>
</tr>
</thead>
<tbody>
<tr>
<td align="left">0</td>
<td align="left">Src Port</td>
<td align="left">23</td>
<td align="left">Fwd IAT Mean</td>
<td align="left">46</td>
<td align="left">PSH Flag Cnt</td>
</tr>
<tr>
<td align="left">1</td>
<td align="left">Dst Port</td>
<td align="left">24</td>
<td align="left">Fwd IAT Std</td>
<td align="left">47</td>
<td align="left">ACK Flag Cnt</td>
</tr>
<tr>
<td align="left">2</td>
<td align="left">Protocol</td>
<td align="left">25</td>
<td align="left">Fwd IAT Max</td>
<td align="left">48</td>
<td align="left">URG Flag Cnt</td>
</tr>
<tr>
<td align="left">3</td>
<td align="left">Flow Duration</td>
<td align="left">26</td>
<td align="left">Fwd IAT Min</td>
<td align="left">49</td>
<td align="left">Down/Up Ratio</td>
</tr>
<tr>
<td align="left">4</td>
<td align="left">Tot Fwd Pkts</td>
<td align="left">27</td>
<td align="left">Bwd IAT Tot</td>
<td align="left">50</td>
<td align="left">Pkt Size Avg</td>
</tr>
<tr>
<td align="left">5</td>
<td align="left">Tot Bwd Pkts</td>
<td align="left">28</td>
<td align="left">Bwd IAT Mean</td>
<td align="left">51</td>
<td align="left">Fwd Seg Size Avg</td>
</tr>
<tr>
<td align="left">6</td>
<td align="left">TotLen Fwd Pkts</td>
<td align="left">29</td>
<td align="left">Bwd IAT Std</td>
<td align="left">52</td>
<td align="left">Bwd Seg Size Avg</td>
</tr>
<tr>
<td align="left">7</td>
<td align="left">TotLen Bwd Pkts</td>
<td align="left">30</td>
<td align="left">Bwd IAT Max</td>
<td align="left">53</td>
<td align="left">Subflow Fwd Pkts</td>
</tr>
<tr>
<td align="left">8</td>
<td align="left">Fwd Pkt Len Max</td>
<td align="left">31</td>
<td align="left">Bwd IAT Min</td>
<td align="left">54</td>
<td align="left">Subflow Fwd Byts</td>
</tr>
<tr>
<td align="left">9</td>
<td align="left">Fwd Pkt Len Min</td>
<td align="left">32</td>
<td align="left">Bwd PSH Flags</td>
<td align="left">55</td>
<td align="left">Subflow Bwd Pkts</td>
</tr>
<tr>
<td align="left">10</td>
<td align="left">Fwd Pkt Len Mean</td>
<td align="left">33</td>
<td align="left">Bwd URG Flags</td>
<td align="left">56</td>
<td align="left">Subflow Bwd Byts</td>
</tr>
<tr>
<td align="left">11</td>
<td align="left">Fwd Pkt Len Std</td>
<td align="left">34</td>
<td align="left">Fwd Header Len</td>
<td align="left">57</td>
<td align="left">Init Bwd Win Byts</td>
</tr>
<tr>
<td align="left">12</td>
<td align="left">Bwd Pkt Len Max</td>
<td align="left">35</td>
<td align="left">Bwd Header Len</td>
<td align="left">58</td>
<td align="left">Fwd Act Data Pkts</td>
</tr>
<tr>
<td align="left">13</td>
<td align="left">Bwd Pkt Len Min</td>
<td align="left">36</td>
<td align="left">Fwd Pkts/s</td>
<td align="left">59</td>
<td align="left">Active Mean</td>
</tr>
<tr>
<td align="left">14</td>
<td align="left">Bwd Pkt Len Mean</td>
<td align="left">37</td>
<td align="left">Bwd Pkts/s</td>
<td align="left">60</td>
<td align="left">Active Std</td>
</tr>
<tr>
<td align="left">15</td>
<td align="left">Bwd Pkt Len Std</td>
<td align="left">38</td>
<td align="left">Pkt Len Min</td>
<td align="left">61</td>
<td align="left">Active Max</td>
</tr>
<tr>
<td align="left">16</td>
<td align="left">Flow Byts/s</td>
<td align="left">39</td>
<td align="left">Pkt Len Max</td>
<td align="left">62</td>
<td align="left">Active Min</td>
</tr>
<tr>
<td align="left">17</td>
<td align="left">Flow Pkts/s</td>
<td align="left">40</td>
<td align="left">Pkt Len Mean</td>
<td align="left">63</td>
<td align="left">Idle Mean</td>
</tr>
<tr>
<td align="left">18</td>
<td align="left">Flow IAT Mean</td>
<td align="left">41</td>
<td align="left">Pkt Len Std</td>
<td align="left">64</td>
<td align="left">Idle Std</td>
</tr>
<tr>
<td align="left">19</td>
<td align="left">Flow IAT Std</td>
<td align="left">42</td>
<td align="left">Pkt Len Var</td>
<td align="left">65</td>
<td align="left">Idle Max</td>
</tr>
<tr>
<td align="left">20</td>
<td align="left">Flow IAT Max</td>
<td align="left">43</td>
<td align="left">FIN Flag Cnt</td>
<td align="left">66</td>
<td align="left">Idle Min</td>
</tr>
<tr>
<td align="left">21</td>
<td align="left">Flow IAT Min</td>
<td align="left">44</td>
<td align="left">SYN Flag Cnt</td>
<td align="left">67</td>
<td align="left">Label</td>
</tr>
<tr>
<td align="left">22</td>
<td align="left">Fwd IAT Tot</td>
<td align="left">45</td>
<td align="left">RST Flag Cnt</td>
<td align="center"/>
<td align="center"/>
</tr>
</tbody>
</table>
</table-wrap>
</sec>
<sec id="s3_1_4"><label>3.1.4</label><title>Normalization</title>
<p>This process denotes calibrating a range of feature values into a well-proportioned counterpart. Normalizing values range between Y<sub>min</sub> and Y<sub>max</sub>, which are the minimum and maximum values for feature Y with <xref ref-type="disp-formula" rid="eqn-1">Eq. (1)</xref> and extensively utilized in recent IDS research [<xref ref-type="bibr" rid="ref-17">17</xref>].
<disp-formula id="eqn-1"><label>(1)</label><mml:math id="mml-eqn-1" display="block"><mml:msub><mml:mi>Y</mml:mi><mml:mrow><mml:mi>n</mml:mi><mml:mi>e</mml:mi><mml:mi>w</mml:mi></mml:mrow></mml:msub><mml:mo>=</mml:mo><mml:mstyle displaystyle="true" scriptlevel="0"><mml:mfrac><mml:mrow><mml:msub><mml:mi>Y</mml:mi><mml:mrow><mml:mrow><mml:mtext mathvariant="italic">current</mml:mtext></mml:mrow></mml:mrow></mml:msub><mml:mo>&#x2212;</mml:mo><mml:msub><mml:mi>Y</mml:mi><mml:mrow><mml:mi>m</mml:mi><mml:mi>i</mml:mi><mml:mi>n</mml:mi></mml:mrow></mml:msub></mml:mrow><mml:mrow><mml:msub><mml:mi>Y</mml:mi><mml:mrow><mml:mi>m</mml:mi><mml:mi>a</mml:mi><mml:mi>x</mml:mi></mml:mrow></mml:msub><mml:mo>&#x2212;</mml:mo><mml:msub><mml:mi>Y</mml:mi><mml:mrow><mml:mi>m</mml:mi><mml:mi>i</mml:mi><mml:mi>n</mml:mi></mml:mrow></mml:msub></mml:mrow></mml:mfrac></mml:mstyle></mml:math></disp-formula></p>
<p>Specifically, the numerical feature values are depicted by Y. A minimal feature Y value is denoted by Y<sub>min</sub> while Y<sub>max</sub> demonstrates the maximum value of the same feature. The original feature Y value is indicated by Y<sub>current</sub>, whereas the normalized feature value is denoted by X<sub>new</sub>. The final dataset is as represented in <xref ref-type="fig" rid="fig-4">Fig. 4</xref> below.</p>
<fig id="fig-4"><label>Figure 4</label><caption><title>Snapshot of dataset after preprocessing</title></caption><graphic mimetype="image" mime-subtype="png" xlink:href="CMC_33382-fig-4.png"/></fig>
</sec>
</sec>
<sec id="s3_2"><label>3.2</label><title>GWO-Based Feature Selection</title>
<p>The GWO denotes a Swarm Intelligence Optimization algorithm inspired by the social hierarchy and hunting behavior of grey wolves. Four grey wolf types were defined to simulate the leadership hierarchy: alpha, beta, delta, and omega. The pseudocode of GWO is illustrated in <xref ref-type="fig" rid="fig-5">Fig. 5</xref> below.</p>
<fig id="fig-5"><label>Figure 5</label><caption><title>Pseudocode of GWO [<xref ref-type="bibr" rid="ref-18">18</xref>]</title></caption><graphic mimetype="image" mime-subtype="png" xlink:href="CMC_33382-fig-5.png"/></fig>
<p>The increased engagement of wolves in GWO would result in highly precise decisions and mitigate decision dependency. The refined GWO necessitates an additional wolf: omega wolf (<roman>&#x03C9;</roman>) to reduce the impact rate of any wolf decision as thoroughly elaborated in <xref ref-type="disp-formula" rid="eqn-2">Eqs. (2)</xref>&#x2013;<xref ref-type="disp-formula" rid="eqn-9">(9)</xref>. The central updating equation is developed in <xref ref-type="disp-formula" rid="eqn-2">Eq. (2)</xref> below [<xref ref-type="bibr" rid="ref-18">18</xref>,<xref ref-type="bibr" rid="ref-19">19</xref>]:
<disp-formula id="eqn-2"><label>(2)</label><mml:math id="mml-eqn-2" display="block"><mml:msubsup><mml:mrow><mml:mi>W</mml:mi></mml:mrow><mml:mrow><mml:mi>i</mml:mi></mml:mrow><mml:mrow><mml:mi>t</mml:mi><mml:mo>+</mml:mo><mml:mn>1</mml:mn></mml:mrow></mml:msubsup><mml:mo>=</mml:mo><mml:mo>&#x2018;</mml:mo><mml:mo>&#x2018;</mml:mo><mml:msup><mml:mrow><mml:mtext mathvariant="italic">Crossover</mml:mtext></mml:mrow><mml:mo>&#x2033;</mml:mo></mml:msup><mml:mrow><mml:mo>(</mml:mo><mml:msub><mml:mi>w</mml:mi><mml:mrow><mml:mn>1</mml:mn></mml:mrow></mml:msub><mml:mo>.</mml:mo><mml:msub><mml:mi>w</mml:mi><mml:mrow><mml:mn>2</mml:mn></mml:mrow></mml:msub><mml:mo>.</mml:mo><mml:msub><mml:mi>w</mml:mi><mml:mrow><mml:mn>3</mml:mn></mml:mrow></mml:msub><mml:mo>.</mml:mo><mml:msub><mml:mi>w</mml:mi><mml:mrow><mml:mn>4</mml:mn></mml:mrow></mml:msub><mml:mo>)</mml:mo></mml:mrow></mml:math></disp-formula></p>
<p>Specifically, the modified bGWO is based on this concept by adding one more wolf, called omega wolf (<roman>&#x03C9;</roman>). The increase in the number of wolves that participated in the decision led to a reduction in the impact rate of any wolf&#x2019;s decision from 0.33&#x0025; to 0.25&#x0025;. Where w1, w2, w3, and w4 are binary vectors that represent the wolf move impact on alpha, beta, delta, and omega grey wolves in sequence. The w1, w2, w3, and w4 were mathematically determined in <xref ref-type="disp-formula" rid="eqn-3">Eqs. (3)</xref>&#x2013;<xref ref-type="disp-formula" rid="eqn-6">(6)</xref>, respectively.
<disp-formula id="eqn-3"><label>(3)</label><mml:math id="mml-eqn-3" display="block"><mml:msubsup><mml:mrow><mml:mi>w</mml:mi></mml:mrow><mml:mrow><mml:mi>w</mml:mi></mml:mrow><mml:mrow><mml:mi>d</mml:mi></mml:mrow></mml:msubsup><mml:mo>=</mml:mo><mml:mrow><mml:mo>{</mml:mo><mml:mtable columnalign="left left" rowspacing=".2em" columnspacing="1em" displaystyle="false"><mml:mtr><mml:mtd><mml:mn>1</mml:mn><mml:mspace width="1em" /><mml:mi>i</mml:mi><mml:mi>f</mml:mi><mml:mrow><mml:mo>(</mml:mo><mml:msubsup><mml:mrow><mml:mi>w</mml:mi></mml:mrow><mml:mrow><mml:mi>&#x03C9;</mml:mi></mml:mrow><mml:mrow><mml:mi>d</mml:mi></mml:mrow></mml:msubsup><mml:mo>+</mml:mo><mml:mi>s</mml:mi><mml:mi>t</mml:mi><mml:mi>e</mml:mi><mml:mi>p</mml:mi><mml:msubsup><mml:mrow><mml:mi>b</mml:mi></mml:mrow><mml:mrow><mml:mi>&#x03C9;</mml:mi></mml:mrow><mml:mrow><mml:mi>d</mml:mi></mml:mrow></mml:msubsup><mml:mo>)</mml:mo></mml:mrow><mml:mo>&#x2265;</mml:mo><mml:mn>1</mml:mn></mml:mtd></mml:mtr><mml:mtr><mml:mtd><mml:mn>0</mml:mn><mml:mspace width="1em" /><mml:mrow><mml:mtext mathvariant="italic">otherwise</mml:mtext></mml:mrow></mml:mtd></mml:mtr></mml:mtable><mml:mo fence="true" stretchy="true" symmetric="true"></mml:mo></mml:mrow></mml:math></disp-formula></p>
<p>Specifically, <inline-formula id="ieqn-1"><mml:math id="mml-ieqn-1"><mml:msubsup><mml:mrow><mml:mi>w</mml:mi></mml:mrow><mml:mrow><mml:mi>&#x03C9;</mml:mi></mml:mrow><mml:mrow><mml:mi>d</mml:mi></mml:mrow></mml:msubsup></mml:math></inline-formula> denotes the location vector of the omega wolf in d while <inline-formula id="ieqn-2"><mml:math id="mml-ieqn-2"><mml:mi>s</mml:mi><mml:mi>t</mml:mi><mml:mi>e</mml:mi><mml:mi>p</mml:mi><mml:msubsup><mml:mrow><mml:mi>b</mml:mi></mml:mrow><mml:mrow><mml:mi>&#x03C9;</mml:mi></mml:mrow><mml:mrow><mml:mi>d</mml:mi></mml:mrow></mml:msubsup></mml:math></inline-formula> indicates a binary step in dimension d determined by <xref ref-type="disp-formula" rid="eqn-3">Eq. (3)</xref>.
<disp-formula id="eqn-4"><label>(4)</label><mml:math id="mml-eqn-4" display="block"><mml:mi>s</mml:mi><mml:mi>t</mml:mi><mml:mi>e</mml:mi><mml:mi>p</mml:mi><mml:msubsup><mml:mrow><mml:mi>b</mml:mi></mml:mrow><mml:mrow><mml:mi>&#x03C9;</mml:mi></mml:mrow><mml:mrow><mml:mi>d</mml:mi></mml:mrow></mml:msubsup><mml:mo>=</mml:mo><mml:mrow><mml:mo>{</mml:mo><mml:mtable columnalign="left left" rowspacing=".2em" columnspacing="1em" displaystyle="false"><mml:mtr><mml:mtd><mml:mn>1</mml:mn><mml:mspace width="1em" /><mml:mi>i</mml:mi><mml:mi>f</mml:mi><mml:mi>s</mml:mi><mml:mi>t</mml:mi><mml:mi>e</mml:mi><mml:mi>p</mml:mi><mml:msubsup><mml:mrow><mml:mi>c</mml:mi></mml:mrow><mml:mrow><mml:mi>&#x03C9;</mml:mi></mml:mrow><mml:mrow><mml:mi>d</mml:mi></mml:mrow></mml:msubsup><mml:mi>r</mml:mi><mml:mi>a</mml:mi><mml:mi>n</mml:mi><mml:mi>d</mml:mi></mml:mtd></mml:mtr><mml:mtr><mml:mtd><mml:mn>0</mml:mn><mml:mspace width="1em" /><mml:mrow><mml:mtext mathvariant="italic">otherwise</mml:mtext></mml:mrow></mml:mtd></mml:mtr></mml:mtable><mml:mo fence="true" stretchy="true" symmetric="true"></mml:mo></mml:mrow></mml:math></disp-formula></p>
<p>Specifically, rand implies an arbitrarily selected number from uniform distribution <inline-formula id="ieqn-3"><mml:math id="mml-ieqn-3"><mml:mo>&#x2208;</mml:mo><mml:mrow><mml:mo>[</mml:mo><mml:mn>0.1</mml:mn><mml:mo>]</mml:mo></mml:mrow></mml:math></inline-formula> while <inline-formula id="ieqn-4"><mml:math id="mml-ieqn-4"><mml:mi>s</mml:mi><mml:mi>t</mml:mi><mml:mi>e</mml:mi><mml:mi>p</mml:mi><mml:msubsup><mml:mrow><mml:mi>c</mml:mi></mml:mrow><mml:mrow><mml:mi>&#x03C9;</mml:mi></mml:mrow><mml:mrow><mml:mi>d</mml:mi></mml:mrow></mml:msubsup></mml:math></inline-formula> denotes the continuous valued step size for dimension d. <xref ref-type="disp-formula" rid="eqn-5">Eq. (5)</xref> below is employed for sigmoidal function computation:
<disp-formula id="eqn-5"><label>(5)</label><mml:math id="mml-eqn-5" display="block"><mml:mi>s</mml:mi><mml:mi>t</mml:mi><mml:mi>e</mml:mi><mml:mi>p</mml:mi><mml:msubsup><mml:mrow><mml:mi>c</mml:mi></mml:mrow><mml:mrow><mml:mi>&#x03C9;</mml:mi></mml:mrow><mml:mrow><mml:mi>d</mml:mi></mml:mrow></mml:msubsup><mml:mo>=</mml:mo><mml:mstyle displaystyle="true" scriptlevel="0"><mml:mfrac><mml:mn>1</mml:mn><mml:mrow><mml:mn>1</mml:mn><mml:mo>+</mml:mo><mml:msup><mml:mi>e</mml:mi><mml:mrow><mml:mo>&#x2212;</mml:mo><mml:mn>10</mml:mn><mml:mrow><mml:mo>(</mml:mo><mml:msubsup><mml:mrow><mml:mi>A</mml:mi></mml:mrow><mml:mrow><mml:mn>4</mml:mn></mml:mrow><mml:mrow><mml:mi>d</mml:mi></mml:mrow></mml:msubsup><mml:mi>D</mml:mi><mml:msubsup><mml:mrow><mml:mi>i</mml:mi></mml:mrow><mml:mrow><mml:mi>&#x03C9;</mml:mi></mml:mrow><mml:mrow><mml:mi>d</mml:mi></mml:mrow></mml:msubsup><mml:mo>&#x2212;</mml:mo><mml:mn>0.5</mml:mn><mml:mo>)</mml:mo></mml:mrow></mml:mrow></mml:msup></mml:mrow></mml:mfrac></mml:mstyle></mml:math></disp-formula></p>
<p>Specifically, <inline-formula id="ieqn-5"><mml:math id="mml-ieqn-5"><mml:msubsup><mml:mrow><mml:mi>A</mml:mi></mml:mrow><mml:mrow><mml:mn>4</mml:mn></mml:mrow><mml:mrow><mml:mi>d</mml:mi></mml:mrow></mml:msubsup></mml:math></inline-formula>, and <inline-formula id="ieqn-6"><mml:math id="mml-ieqn-6"><mml:msubsup><mml:mrow><mml:mi>D</mml:mi></mml:mrow><mml:mrow><mml:mi>i</mml:mi><mml:mi>&#x03C9;</mml:mi></mml:mrow><mml:mrow><mml:mi>d</mml:mi></mml:mrow></mml:msubsup></mml:math></inline-formula> were mathematically determined by <xref ref-type="disp-formula" rid="eqn-6">Eqs. (6)</xref> and <xref ref-type="disp-formula" rid="eqn-7">(7)</xref> in dimension d, respectively.
<disp-formula id="eqn-6"><label>(6)</label><mml:math id="mml-eqn-6" display="block"><mml:mi>A</mml:mi><mml:mo>=</mml:mo><mml:mn>2</mml:mn><mml:mi>b</mml:mi><mml:mo>.</mml:mo><mml:msub><mml:mi>r</mml:mi><mml:mrow><mml:mn>1</mml:mn></mml:mrow></mml:msub><mml:mo>&#x2212;</mml:mo><mml:mi>b</mml:mi></mml:math></disp-formula>
<disp-formula id="eqn-7"><label>(7)</label><mml:math id="mml-eqn-7" display="block"><mml:msubsup><mml:mrow><mml:mi>D</mml:mi></mml:mrow><mml:mrow><mml:mi>i</mml:mi><mml:mi>&#x03C9;</mml:mi></mml:mrow><mml:mrow><mml:mi>d</mml:mi></mml:mrow></mml:msubsup><mml:mo>=</mml:mo><mml:mrow><mml:mo>|</mml:mo><mml:msub><mml:mi>C</mml:mi><mml:mrow><mml:mn>1</mml:mn></mml:mrow></mml:msub><mml:mo>.</mml:mo><mml:msub><mml:mi>W</mml:mi><mml:mrow><mml:mi>&#x03B1;</mml:mi></mml:mrow></mml:msub><mml:mo>&#x2212;</mml:mo><mml:mi>W</mml:mi><mml:mo>|</mml:mo></mml:mrow></mml:math></disp-formula></p>
<p>A simple random probability distribution crossover strategy was implemented per dimension to crossover w1, w2, w3, and w4 outcomes following <xref ref-type="disp-formula" rid="eqn-8">Eq. (8)</xref>.
<disp-formula id="eqn-8"><label>(8)</label><mml:math id="mml-eqn-8" display="block"><mml:mtable columnalign="right left right left right left right left right left right left" rowspacing="3pt" columnspacing="0em 2em 0em 2em 0em 2em 0em 2em 0em 2em 0em" displaystyle="true"><mml:mtr><mml:mtd><mml:msub><mml:mi>w</mml:mi><mml:mrow><mml:mi>d</mml:mi></mml:mrow></mml:msub><mml:mo>=</mml:mo><mml:mrow><mml:mo>{</mml:mo><mml:mtable columnalign="left left" rowspacing=".2em" columnspacing="1em" displaystyle="false"><mml:mtr><mml:mtd><mml:msubsup><mml:mrow><mml:mi>w</mml:mi></mml:mrow><mml:mrow><mml:mn>1</mml:mn></mml:mrow><mml:mrow><mml:mi>d</mml:mi></mml:mrow></mml:msubsup><mml:mspace width="1em" /><mml:mi>i</mml:mi><mml:mi>f</mml:mi><mml:mi>r</mml:mi><mml:mi>a</mml:mi><mml:mi>n</mml:mi><mml:mi>d</mml:mi><mml:mo>&#x003C;</mml:mo><mml:mstyle displaystyle="true" scriptlevel="0"><mml:mfrac><mml:mn>1</mml:mn><mml:mn>4</mml:mn></mml:mfrac></mml:mstyle></mml:mtd></mml:mtr><mml:mtr><mml:mtd><mml:msubsup><mml:mrow><mml:mi>w</mml:mi></mml:mrow><mml:mrow><mml:mn>2</mml:mn></mml:mrow><mml:mrow><mml:mi>d</mml:mi></mml:mrow></mml:msubsup><mml:mspace width="1em" /><mml:mi>i</mml:mi><mml:mi>f</mml:mi><mml:mstyle displaystyle="true" scriptlevel="0"><mml:mfrac><mml:mn>1</mml:mn><mml:mn>4</mml:mn></mml:mfrac></mml:mstyle><mml:mo>&#x2264;</mml:mo><mml:mi>r</mml:mi><mml:mi>a</mml:mi><mml:mi>n</mml:mi><mml:mi>d</mml:mi><mml:mo>&#x003C;</mml:mo><mml:mstyle displaystyle="true" scriptlevel="0"><mml:mfrac><mml:mn>2</mml:mn><mml:mn>4</mml:mn></mml:mfrac></mml:mstyle></mml:mtd></mml:mtr><mml:mtr><mml:mtd><mml:msubsup><mml:mrow><mml:mi>w</mml:mi></mml:mrow><mml:mrow><mml:mn>3</mml:mn></mml:mrow><mml:mrow><mml:mi>d</mml:mi></mml:mrow></mml:msubsup><mml:mspace width="1em" /><mml:mi>i</mml:mi><mml:mi>f</mml:mi><mml:mstyle displaystyle="true" scriptlevel="0"><mml:mfrac><mml:mn>2</mml:mn><mml:mn>4</mml:mn></mml:mfrac></mml:mstyle><mml:mo>&#x2264;</mml:mo><mml:mi>r</mml:mi><mml:mi>a</mml:mi><mml:mi>n</mml:mi><mml:mi>d</mml:mi><mml:mo>&#x003C;</mml:mo><mml:mstyle displaystyle="true" scriptlevel="0"><mml:mfrac><mml:mn>3</mml:mn><mml:mn>4</mml:mn></mml:mfrac></mml:mstyle></mml:mtd></mml:mtr><mml:mtr><mml:mtd><mml:msubsup><mml:mrow><mml:mi>w</mml:mi></mml:mrow><mml:mrow><mml:mn>4</mml:mn></mml:mrow><mml:mrow><mml:mi>d</mml:mi></mml:mrow></mml:msubsup><mml:mspace width="1em" /><mml:mrow><mml:mtext mathvariant="italic">otherwise</mml:mtext></mml:mrow></mml:mtd></mml:mtr></mml:mtable><mml:mo fence="true" stretchy="true" symmetric="true"></mml:mo></mml:mrow></mml:mtd></mml:mtr></mml:mtable></mml:math></disp-formula></p>
<p>Specifically, W1, W2, and W3 denote the weights for every objective (<inline-formula id="ieqn-7"><mml:math id="mml-ieqn-7"><mml:msubsup><mml:mrow><mml:mo>&#x2211;</mml:mo></mml:mrow><mml:mrow><mml:mn>1</mml:mn></mml:mrow><mml:mrow><mml:mi>n</mml:mi></mml:mrow></mml:msubsup><mml:msub><mml:mi>x</mml:mi><mml:mrow><mml:mi>n</mml:mi></mml:mrow></mml:msub></mml:math></inline-formula> &#x003D;&#x2009;1), acc implies accuracy, miss indicates the misclassification rate, and N<sub>features</sub> represents the selected number of features. On another note, TP implies true positive, TN denotes true negative, FP indicates false positive, and FN represents false negative.</p>
<p>Regardless, the current GWO-oriented IDS employed one objective function that induced a substantial number of utilized features, thus requiring additional network overhead, computation time, and inadequate FS. Alternatively, a multi-objective function was incorporated as a fitness function in the recommended IDS to mitigate current IDS complexities. As the study fitness assessment method, the recommended multi-objective function or weighted sum fitness function strived to minimize the number of selected features and misclassification rates and achieve high classification accuracy rates with <xref ref-type="disp-formula" rid="eqn-9">Eq. (9)</xref>. The fitness value for the recommended multi-objective function was computed with the following formula:
<disp-formula id="eqn-9"><label>(9)</label><mml:math id="mml-eqn-9" display="block"><mml:mrow><mml:mtext>F</mml:mtext></mml:mrow><mml:mrow><mml:mo>(</mml:mo><mml:mrow><mml:mtext>x</mml:mtext></mml:mrow><mml:mo>)</mml:mo></mml:mrow><mml:mo>=</mml:mo><mml:mo>&#x2212;</mml:mo><mml:mrow><mml:mo>(</mml:mo><mml:msup><mml:mrow><mml:mtext>v</mml:mtext></mml:mrow><mml:mo>&#x2217;</mml:mo></mml:msup><mml:mrow><mml:mtext>accuracy</mml:mtext></mml:mrow><mml:mo>+</mml:mo><mml:msup><mml:mrow><mml:mo>(</mml:mo><mml:mn>1</mml:mn><mml:mo>&#x2212;</mml:mo><mml:mrow><mml:mtext>v</mml:mtext></mml:mrow><mml:mo>)</mml:mo></mml:mrow><mml:mo>&#x2217;</mml:mo></mml:msup><mml:mstyle displaystyle="true" scriptlevel="0"><mml:mfrac><mml:mn>1</mml:mn><mml:mrow><mml:mi>N</mml:mi><mml:mi>o</mml:mi><mml:mi mathvariant="normal">&#x005F;</mml:mi><mml:mi>o</mml:mi><mml:mi>f</mml:mi><mml:mi mathvariant="normal">&#x005F;</mml:mi><mml:mrow><mml:mtext mathvariant="italic">features</mml:mtext></mml:mrow></mml:mrow></mml:mfrac></mml:mstyle><mml:mo>)</mml:mo></mml:mrow></mml:math></disp-formula>where v is a weighting number <inline-formula id="ieqn-8"><mml:math id="mml-ieqn-8"><mml:mo>&#x2208;</mml:mo></mml:math></inline-formula> [0, 1], accuracy denotes detection accuracy computed by <xref ref-type="disp-formula" rid="eqn-10">Eq. (10)</xref>, and No_of_features denotes the number of features selected in such iteration.</p>
</sec>
<sec id="s3_3"><label>3.3</label><title>LightGBM-Based Attack Detection</title>
<p>As aforementioned, LightGBM is an enhanced version of the Gradient Boosting Decision Tree algorithm. The LightGBM integrates the capability of multiple decision trees in predicting/classifying classes, in order to provide the final optimal predicting/classifying generalizes. Basically, The LightGBM combines manifold &#x201C;weak&#x201D; learners into &#x201C;strong&#x201D; learners. However, there are two main causes for designing ML depending on this conception, (i) easiness in acquiring &#x201C;weak&#x201D; learners, and (ii) integrating more than one learner usually has superior generalization performance than utilizing one learner. Many modern studies have revealed the preponderance of LightGBM in solving many ML tasks, for instance, prediction of air quality [<xref ref-type="bibr" rid="ref-20">20</xref>] and disease detection and classification [<xref ref-type="bibr" rid="ref-21">21</xref>]. To clearly illustrate the training process of LightGBM, we take a model consisting of M trees [<xref ref-type="bibr" rid="ref-22">22</xref>], as an example described in Algorithm 1 (See <xref ref-type="fig" rid="fig-6">Fig. 6</xref>).</p>
<fig id="fig-6"><label>Figure 6</label><caption><title>LightGBM algorithm [<xref ref-type="bibr" rid="ref-22">22</xref>]</title></caption><graphic mimetype="image" mime-subtype="png" xlink:href="CMC_33382-fig-6.png"/></fig>
<p>The main contribution of this article is a modified GWO that provides better performance; thus, adding one more wolf in GWO provided high performance with reduction of decision dependency. Therefore, GWO is not further vulnerable to feature selection problem. In addition, the second contribution of this article is a proposed multi-objective function, which in result leads to an appropriate selection of a subset of features.</p>
</sec>
</sec>
<sec id="s4"><label>4</label><title>Results and Discussion</title>
<p>This section discusses the details of benchmark dataset and evaluation metrics used to assess the performance of the proposed IDS, then, results and findings are presented in detail.</p>
<sec id="s4_1"><label>4.1</label><title>Benchmark Dataset and Evaluation Metrics</title>
<p>A new benchmark dataset, called InSDN [<xref ref-type="bibr" rid="ref-23">23</xref>] using Mininet simulation/SDN approaches [<xref ref-type="bibr" rid="ref-24">24</xref>,<xref ref-type="bibr" rid="ref-25">25</xref>], is utilized to assess the effectiveness of the proposed IDS. InSDN is a public attack-specific SDN dataset. It is considered the first comprehensive dataset for the SDN environment, which is used to assess the performance of IDS. InSDN contains the various attack classes that might happen in the different SDN elements. <xref ref-type="fig" rid="fig-7">Fig. 7</xref> illustrates the logical network topology used as a testbed to generate the InSDN dataset.</p>
<fig id="fig-7"><label>Figure 7</label><caption><title>Logical network topology</title></caption><graphic mimetype="image" mime-subtype="png" xlink:href="CMC_33382-fig-7.png"/></fig>
<p>On the other hand, common evaluation metrics are used to demonstrate its performance. In order to calculate theses performance metrics, a confusion matrix is used [<xref ref-type="bibr" rid="ref-24">24</xref>,<xref ref-type="bibr" rid="ref-25">25</xref>], which is presented <xref ref-type="table" rid="table-2">Table 2</xref>.</p>
<table-wrap id="table-2"><label>Table 2</label><caption><title>Confusion matrix</title></caption>
<table frame="hsides">
<colgroup>
<col align="left"/>
<col align="left"/>
<col align="left"/>
<col align="left"/>
</colgroup>
<thead>
<tr>
<th align="left"/>
<th align="center" colspan="3">Predicted</th>
</tr>
</thead>
<tbody>
<tr>
<td align="left">Actual</td>
<td align="left"/>
<td align="left">Attack</td>
<td align="left">Non-attack</td>
</tr>
<tr>
<td/>
<td align="left">Attack</td>
<td align="left">TP</td>
<td align="left">TN</td>
</tr>
<tr>
<td/>
<td align="left">Non-attack</td>
<td align="left">FP</td>
<td align="left">FN</td>
</tr>
</tbody>
</table>
</table-wrap>
<p>The equations below are used to evaluate the accuracy, recall, precision, and F-measure [<xref ref-type="bibr" rid="ref-26">26</xref>,<xref ref-type="bibr" rid="ref-27">27</xref>], respectively of the proposed IDS:
<disp-formula id="eqn-10"><label>(10)</label><mml:math id="mml-eqn-10" display="block"><mml:mrow><mml:mtext mathvariant="italic">Accuracy</mml:mtext></mml:mrow><mml:mo>=</mml:mo><mml:mstyle displaystyle="true" scriptlevel="0"><mml:mfrac><mml:mrow><mml:mi>T</mml:mi><mml:mi>P</mml:mi><mml:mo>+</mml:mo><mml:mi>T</mml:mi><mml:mi>N</mml:mi></mml:mrow><mml:mrow><mml:mi>T</mml:mi><mml:mi>P</mml:mi><mml:mo>+</mml:mo><mml:mi>T</mml:mi><mml:mi>N</mml:mi><mml:mo>+</mml:mo><mml:mi>F</mml:mi><mml:mi>P</mml:mi><mml:mo>+</mml:mo><mml:mi>F</mml:mi><mml:mi>N</mml:mi></mml:mrow></mml:mfrac></mml:mstyle></mml:math></disp-formula>
<disp-formula id="eqn-11"><label>(11)</label><mml:math id="mml-eqn-11" display="block"><mml:mrow><mml:mtext mathvariant="italic">Recall</mml:mtext></mml:mrow><mml:mo>=</mml:mo><mml:mstyle displaystyle="true" scriptlevel="0"><mml:mfrac><mml:mrow><mml:mi>T</mml:mi><mml:mi>P</mml:mi></mml:mrow><mml:mrow><mml:mi>T</mml:mi><mml:mi>P</mml:mi><mml:mo>+</mml:mo><mml:mi>F</mml:mi><mml:mi>N</mml:mi></mml:mrow></mml:mfrac></mml:mstyle></mml:math></disp-formula>
<disp-formula id="eqn-12"><label>(12)</label><mml:math id="mml-eqn-12" display="block"><mml:mrow><mml:mtext mathvariant="italic">Precision</mml:mtext></mml:mrow><mml:mo>=</mml:mo><mml:mstyle displaystyle="true" scriptlevel="0"><mml:mfrac><mml:mrow><mml:mi>T</mml:mi><mml:mi>P</mml:mi></mml:mrow><mml:mrow><mml:mi>T</mml:mi><mml:mi>P</mml:mi><mml:mo>+</mml:mo><mml:mi>F</mml:mi><mml:mi>P</mml:mi></mml:mrow></mml:mfrac></mml:mstyle></mml:math></disp-formula>
<disp-formula id="eqn-13"><label>(13)</label><mml:math id="mml-eqn-13" display="block"><mml:mi>F</mml:mi><mml:mo>&#x2212;</mml:mo><mml:mrow><mml:mtext mathvariant="italic">measure</mml:mtext></mml:mrow><mml:mo>=</mml:mo><mml:mn>2</mml:mn><mml:mo>&#x2217;</mml:mo><mml:mstyle displaystyle="true" scriptlevel="0"><mml:mfrac><mml:mrow><mml:mrow><mml:mtext mathvariant="italic">Precision</mml:mtext></mml:mrow><mml:mo>&#x2217;</mml:mo><mml:mrow><mml:mtext mathvariant="italic">Recall</mml:mtext></mml:mrow></mml:mrow><mml:mrow><mml:mrow><mml:mtext mathvariant="italic">Precision</mml:mtext></mml:mrow><mml:mo>+</mml:mo><mml:mrow><mml:mtext mathvariant="italic">Recall</mml:mtext></mml:mrow></mml:mrow></mml:mfrac></mml:mstyle></mml:math></disp-formula></p>
<p>TP indicates the number of true positives, FN indicates the number of false negatives, TN indicates the number of true negatives, and FP indicates the number of false positives.</p>
</sec>
<sec id="s4_2"><label>4.2</label><title>Experimental Setup</title>
<p>The proposed IDS is implemented in Python programming language. Experiments are conducted on a personal computer PC with the following hardware and software specifications, a presented in <xref ref-type="table" rid="table-3">Table 3</xref> below:</p>
<table-wrap id="table-3"><label>Table 3</label><caption><title>Setup specifications</title></caption>
<table frame="hsides">
<colgroup>
<col align="left"/>
<col align="left"/>
</colgroup>
<thead>
<tr>
<th align="left">Item</th>
<th align="left">Details</th>
</tr>
</thead>
<tbody>
<tr>
<td align="left">RAM</td>
<td align="left">8 GB, DDR 4</td>
</tr>
<tr>
<td align="left">CPU</td>
<td align="left">Core i7, 10<sup>th</sup> generation</td>
</tr>
<tr>
<td align="left">HDD</td>
<td align="left">512 GB SSD</td>
</tr>
<tr>
<td align="left">GPU</td>
<td align="left">Radeon Pro 5500 XT</td>
</tr>
<tr>
<td align="left">OS</td>
<td align="left">Mac OS, OS X</td>
</tr>
<tr>
<td align="left">Python</td>
<td align="left">3.9</td>
</tr>
<tr>
<td align="center" colspan="2">Configuration parameters-Mininet and OVS switch</td>
</tr>
<tr>
<td align="left">Hosts interfaces</td>
<td align="left">Four virtual hosts (h1 to h4).</td>
</tr>
<tr>
<td align="left">Remote controller</td>
<td align="left">Four adapters in the OVS-VM, ens38, ens39, ens40, and ens41. Open flow controller ONOS.</td>
</tr>
<tr>
<td align="left">Protocols</td>
<td align="left">UDP, TCP, and ICMP.</td>
</tr>
<tr>
<td align="left">Switch</td>
<td align="left">Default OVS switch.</td>
</tr>
<tr>
<td align="left">Link adjustment</td>
<td align="left">Connect the Kali Linux VM with the same adapter of br1, and Metasploitable2 Server with the same adapter of br2.</td>
</tr>
</tbody>
</table>
</table-wrap>
</sec>
<sec id="s4_3"><label>4.3</label><title>Results and Findings</title>
<p>As previously mentioned, the number of features utilized in intrusion and attack detection denotes a highly crucial metric as a minimal number of features mitigates detection intricacy and time and optimizes detection accuracy and overall performance. The utilization of GWO with parameter fine tuning, as presented in Appendix <xref ref-type="table" rid="table-8">Table 8</xref>, minimized the number of features from 67 to 8 after 20 runs, as depicted in <xref ref-type="table" rid="table-4">Table 4</xref>. The experiments were performed with different runs to meet the requirements of computer science&#x2019;s test [<xref ref-type="bibr" rid="ref-28">28</xref>]. As presented in <xref ref-type="table" rid="table-5">Table 5</xref>, the optimal features subset that selected contains the features with index [6 11 14 24 45 48 51 55], which are: TotLen Fwd Pkts, Fwd Pkt Len Std, Bwd Pkt Len Mean, Fwd IAT Std, RST Flag Cnt, URG Flag Cnt, Fwd Seg Size Avg, Subflow Bwd Pkts.</p>
<table-wrap id="table-4"><label>Table 4</label><caption><title>Summary of FS experiments</title></caption>
<table frame="hsides">
<colgroup>
<col align="left"/>
<col align="left"/>
<col align="left"/>
</colgroup>
<thead>
<tr>
<th align="left">Iteration</th>
<th align="left">Best fitness</th>
<th align="left">Index of selected features</th>
</tr>
</thead>
<tbody>
<tr>
<td align="left">0</td>
<td align="left">&#x2212;0.903125</td>
<td align="left">[ 0 2 3 4 5 6 7 11 13 14 16 18 19 20 26 27 28 29 32 34 35 37 39 40 43 45 53 55 57 58 61]</td>
</tr>
<tr>
<td align="left">1</td>
<td align="left">&#x2212;0.903426662</td>
<td align="left">[ 2 3 4 7 9 11 12 13 16 18 19 20 23 24 25 26 27 32 39 40 43 45 49 55 56 58 64 65]</td>
</tr>
<tr>
<td align="left">2</td>
<td align="left">&#x2212;0.903928909</td>
<td align="left">[ 0 2 7 9 11 12 13 16 18 19 24 25 26 27 28 34 35 43 45 48 51 55 57 64]</td>
</tr>
<tr>
<td align="left">3</td>
<td align="left">&#x2212;0.904134782</td>
<td align="left">[ 0 6 7 11 12 14 16 22 24 26 27 28 32 35 42 43 45 48 49 55 57 64]</td>
</tr>
<tr>
<td align="left">4</td>
<td align="left">&#x2212;0.905263158</td>
<td align="left">[ 0 7 11 12 13 16 19 24 26 27 32 43 45 48 51 55 59 64]</td>
</tr>
<tr>
<td align="left">5</td>
<td align="left">&#x2212;0.905263158</td>
<td align="left">[ 0 7 11 12 13 16 19 24 26 27 32 43 45 48 51 55 59 64]</td>
</tr>
<tr>
<td align="left">6</td>
<td align="left">&#x2212;0.906666667</td>
<td align="left">[ 5 6 7 11 12 14 16 19 26 27 32 49 55 64]</td>
</tr>
<tr>
<td align="left">7</td>
<td align="left">&#x2212;0.908333333</td>
<td align="left">[ 6 7 11 12 14 16 19 26 27 48 51 59]</td>
</tr>
<tr>
<td align="left">8</td>
<td align="left">&#x2212;0.911111111</td>
<td align="left">[ 6 11 12 14 16 43 45 51 55]</td>
</tr>
<tr>
<td align="left">9</td>
<td align="left">&#x2212;0.911111111</td>
<td align="left">[ 6 11 12 14 16 43 45 51 55]</td>
</tr>
<tr>
<td align="left">10</td>
<td align="left">&#x2212;0.911111111</td>
<td align="left">[ 6 11 12 14 16 43 45 51 55]</td>
</tr>
<tr>
<td align="left">11</td>
<td align="left">&#x2212;0.9125</td>
<td align="left">[ 6 11 14 24 45 48 51 55]</td>
</tr>
<tr>
<td align="left">12</td>
<td align="left">&#x2212;0.9125</td>
<td align="left">[ 6 11 14 24 45 48 51 55]</td>
</tr>
<tr>
<td align="left">13</td>
<td align="left">&#x2212;0.9125</td>
<td align="left">[ 6 11 14 24 45 48 51 55]</td>
</tr>
<tr>
<td align="left">14</td>
<td align="left">&#x2212;0.9125</td>
<td align="left">[ 6 11 14 24 45 48 51 55]</td>
</tr>
<tr>
<td align="left">15</td>
<td align="left">&#x2212;0.9125</td>
<td align="left">[ 6 11 14 24 45 48 51 55]</td>
</tr>
<tr>
<td align="left">16</td>
<td align="left">&#x2212;0.9125</td>
<td align="left">[ 6 11 14 24 45 48 51 55]</td>
</tr>
<tr>
<td align="left">17</td>
<td align="left">&#x2212;0.9125</td>
<td align="left">[ 6 11 14 24 45 48 51 55]</td>
</tr>
<tr>
<td align="left">18</td>
<td align="left">&#x2212;0.9125</td>
<td align="left">[ 6 11 14 24 45 48 51 55]</td>
</tr>
<tr>
<td align="left">19</td>
<td align="left">&#x2212;0.9125</td>
<td align="left">[ 6 11 14 24 45 48 51 55]</td>
</tr>
</tbody>
</table>
</table-wrap><table-wrap id="table-5"><label>Table 5</label><caption><title>Details of selected features</title></caption>
<table frame="hsides">
<colgroup>
<col align="left"/>
<col align="left"/>
</colgroup>
<thead>
<tr>
<th align="left">Index</th>
<th align="left">Feature</th>
</tr>
</thead>
<tbody>
<tr>
<td align="left">6</td>
<td align="left">TotLen Fwd Pkts</td>
</tr>
<tr>
<td align="left">11</td>
<td align="left">Fwd Pkt Len Std</td>
</tr>
<tr>
<td align="left">14</td>
<td align="left">Bwd Pkt Len Mean</td>
</tr>
<tr>
<td align="left">24</td>
<td align="left">Fwd IAT Std</td>
</tr>
<tr>
<td align="left">45</td>
<td align="left">RST Flag Cnt</td>
</tr>
<tr>
<td align="left">48</td>
<td align="left">URG Flag Cnt</td>
</tr>
<tr>
<td align="left">51</td>
<td align="left">Fwd Seg Size Avg</td>
</tr>
<tr>
<td align="left">55</td>
<td align="left">Subflow Bwd Pkts</td>
</tr>
</tbody>
</table>
</table-wrap>
<p>The InSDN dataset with the subset of features mentioned in <xref ref-type="table" rid="table-5">Table 5</xref> is then divided into training and testing dataset, where the training dataset contains (133242) rows, and (33311) rows for testing. The LightGBM with hyperparameter, mentioned in Appendix <xref ref-type="table" rid="table-7">Table 7</xref>, was trained on the training set, and then tested using the testing dataset. The experimental results obtained showed high performance, as illustrated in <xref ref-type="table" rid="table-6">Table 6</xref> below. With the use of the selected features subset, the LightGBM classifier achieved 99.8&#x0025; accuracy, 99.7&#x0025; recall, 99.99&#x0025; precision, and f1-measure 99.8&#x0025;. On the other hand, without the use of the selected features subset (i.e., with the original dataset with 67 features), the LightGBM classifier achieved 77.3&#x0025; accuracy, 61.4&#x0025; recall, 100&#x0025; precision, and 76.1&#x0025; f1-measure. These findings reveal the significant impact of using the FS (based on GWO) on enhancing the IDS performance significantly.</p>
<table-wrap id="table-6"><label>Table 6</label><caption><title>Results with/without FS</title></caption>
<table frame="hsides">
<colgroup>
<col align="left"/>
<col align="left"/>
<col align="left"/>
</colgroup>
<thead>
<tr>
<th align="left">Metric</th>
<th align="left">Without FS</th>
<th align="left">With FS</th>
</tr>
<tr>
<th/>
<th align="center" colspan="2">&#x0025;</th>
</tr>
</thead>
<tbody>
<tr>
<td align="left">Accuracy</td>
<td align="left">77.3</td>
<td align="left">99.8</td>
</tr>
<tr>
<td align="left">Recall</td>
<td align="left">61.4</td>
<td align="left">99.7</td>
</tr>
<tr>
<td align="left">Precision</td>
<td align="left">99.99</td>
<td align="left">99.99</td>
</tr>
<tr>
<td align="left">F1-measure</td>
<td align="left">76.1</td>
<td align="left">99.8</td>
</tr>
</tbody>
</table>
</table-wrap>
<table-wrap id="table-7"><label>Table 7</label><caption><title>LightGBM hyperparameters</title></caption>
<table frame="hsides">
<colgroup>
<col align="left"/>
<col align="left"/>
</colgroup>
<tbody>
<tr>
<td align="left">learning_rate</td>
<td align="left">0.05744</td>
</tr>
<tr>
<td align="left">num_leaves</td>
<td align="left">8</td>
</tr>
<tr>
<td align="left">max_bin</td>
<td align="left">380</td>
</tr>
<tr>
<td align="left">bagging_freq</td>
<td align="left">5</td>
</tr>
<tr>
<td align="left">bagging_fraction</td>
<td align="left">0.7003</td>
</tr>
<tr>
<td align="left">feature_fraction</td>
<td align="left">0.4800</td>
</tr>
<tr>
<td align="left">lambda_l1</td>
<td align="left">2.5</td>
</tr>
<tr>
<td align="left">lambda_l2</td>
<td align="left">4.5</td>
</tr>
<tr>
<td align="left">min_child_samples</td>
<td align="left">3</td>
</tr>
<tr>
<td align="left">bagging_seed</td>
<td align="left">42</td>
</tr>
<tr>
<td align="left">metric</td>
<td align="left">auc</td>
</tr>
<tr>
<td align="left">random_state</td>
<td align="left">451</td>
</tr>
<tr>
<td align="left">max_drop</td>
<td align="left">50</td>
</tr>
</tbody>
</table>
</table-wrap>
<table-wrap id="table-8"><label>Table 8</label><caption><title>GWO parameters</title></caption>
<table frame="hsides">
<colgroup>
<col align="left"/>
<col align="left"/>
</colgroup>
<tbody>
<tr>
<td align="left">Max_iter</td>
<td align="left">20</td>
</tr>
<tr>
<td align="left">SearchAgents_no</td>
<td align="left">68</td>
</tr>
<tr>
<td align="left"> lb lower limit</td>
<td align="left">0</td>
</tr>
<tr>
<td align="left">ub upper limit</td>
<td align="left">1</td>
</tr>
</tbody>
</table>
</table-wrap>
<p>Besides, the performance of the proposed IDS was also compared against that of advanced counterparts mentioned in the literature including [<xref ref-type="bibr" rid="ref-11">11</xref>&#x2013;<xref ref-type="bibr" rid="ref-15">15</xref>] to identify its efficiency. Although the IDSs attained comparable outcomes following accuracy, precision, recall, and F-measure, the proposed IDS outperformed the current IDSs in all evaluation metric as outlined in <xref ref-type="fig" rid="fig-8">Fig. 8</xref> below. Attaining a minimal number of pertinent network traffic elements without adversely impacting detection performance would significantly improve IDS effectiveness given the essentiality of FS in any IDS. Based on the compared methods utilizing the InSDN dataset, the proposed IDS maintains the highest performance among all state-of-the-art IDS that compared with.</p>
<fig id="fig-8"><label>Figure 8</label><caption><title>Comparison with state-of-the-art IDSs</title></caption><graphic mimetype="image" mime-subtype="png" xlink:href="CMC_33382-fig-8.png"/></fig>
<p>Conclusively, the proposed IDS depicted a practical means of addressing IDS complexities. The algorithm capacity to enhance the precision value and minimize the number of features for the detection process substantially optimized IDS performance. The multi-objective function (fitness function) incorporated into the fourth grey wolf explicitly affected the next algorithm position selection process. The derived experimental results reflected that the proposed IDS implied a highly positive effect on improving IDS performance compared to other current IDS methods. Although the integration of one more wolf (omega wolf or <roman>&#x03C9;</roman>) with GWO offered precise decisions and decreased decision dependency, the following position in the refined GWO shifted based on the four most optimal solutions (<roman>&#x03B1;, &#x03B2;, &#x03B4;</roman>, and <roman>&#x03C9;</roman>) with the crossover technique. The multi-objective function also resulted in the adequate selection of a set of features that assessed whether the feature subset efficiently complemented the objectives (high detection accuracy and minimum number of features).</p>
</sec>
</sec>
<sec id="s5"><label>5</label><title>Conclusion</title>
<p>Intrusion detection remains one of the crucial concerns in network security. Network traffic performance is unpredictable with multiple problematic space features in the non-linear nature of intrusion attempts. The aforementioned aspects render Intrusion Detection Systems a challenge in security studies. As such, it is deemed pivotal to select essential intrusion detection components in information security. An optimal IDS method was proposed in this article following GWO and LightGBM. Several experiments were performed to reflect the proposed IDS efficiency in terms of accuracy, precision, recall and f-measures, and subsequently compared against advanced IDSs. Based on the comparison outcomes, the recommended IDS substantially optimized preliminary-stage attack detections. Given that the proposed IDS outperformed other advanced IDSs concerning accuracy, precision, recall, and F-measure, the recommended IDS proved to be more effective in preventing network attacks within SDN, especially Probe attack, compared to current sophisticated IDSs. The suggested IDS has also provided useful insights and empirical directions for anomaly identification, such as improving the next location decision by adapting the velocity parameter of the Particle Swarm Optimization algorithm.</p>
</sec>
</body>
<back>
<ack>
<p>I express my gratitude to King Saud University, The Kingdom of Saudi Arabia, for administrative and technical support.</p>
</ack>
<fn-group>
<fn fn-type="other"><p><bold>Funding Statement:</bold> The authors would like to thank the Deanship of Scientific Research and the research Services and Support Unit (RSSU) at King Saud University for their support in this paper.</p></fn>
<fn fn-type="conflict"><p><bold>Conflicts of Interest:</bold> The author declares that they have no conflicts of interest to report regarding the present study.</p></fn>
</fn-group>
<ref-list content-type="authoryear">
<title>References</title>
<ref id="ref-1"><label>[1]</label><mixed-citation publication-type="journal"><person-group person-group-type="author"><string-name><given-names>H.</given-names> <surname>Farhady</surname></string-name>, <string-name><given-names>H.</given-names> <surname>Lee</surname></string-name> and <string-name><given-names>A.</given-names> <surname>Nakao</surname></string-name></person-group>, &#x201C;<article-title>Software-defined networking: A survey</article-title>,&#x201D; <source>Computer Networks</source>, vol. <volume>81</volume>, no. <issue>11</issue>, pp. <fpage>79</fpage>&#x2013;<lpage>95</lpage>, <year>2015</year>.</mixed-citation></ref>
<ref id="ref-2"><label>[2]</label><mixed-citation publication-type="web"><person-group person-group-type="author"><string-name><given-names>A.</given-names> <surname>Doria</surname></string-name>, <string-name><given-names>R.</given-names> <surname>Gopal</surname></string-name>, <string-name><given-names>H.</given-names> <surname>Khosravi</surname></string-name>, <string-name><given-names>L.</given-names> <surname>Dong</surname></string-name>, <string-name><given-names>J.</given-names> <surname>Salim</surname></string-name> <etal>et al.,</etal></person-group> &#x201C;<article-title>Forwarding and Control Element Separation (Forces) Protocol Specification</article-title>,&#x201D; [Online]. Available: <uri xlink:href="https://ietf.org/wg/forces/charter/">https://ietf.org/wg/forces/charter/</uri>.</mixed-citation></ref>
<ref id="ref-3"><label>[3]</label><mixed-citation publication-type="journal"><person-group person-group-type="author"><string-name><given-names>N.</given-names> <surname>McKeown</surname></string-name>, <string-name><given-names>T.</given-names> <surname>Anderson</surname></string-name>, <string-name><given-names>H.</given-names> <surname>Balakrishnan</surname></string-name>, <string-name><given-names>G.</given-names> <surname>Parulkar</surname></string-name>, <string-name><given-names>L.</given-names> <surname>Peterson</surname></string-name> <etal>et al.,</etal></person-group> &#x201C;<article-title>OpenFlow: Enabling innovation in campus networks</article-title>,&#x201D; <source>ACM SIGCOMM Computer Communication Review</source>, vol. <volume>38</volume>, no. <issue>2</issue>, pp. <fpage>69</fpage>&#x2013;<lpage>74</lpage>, <year>2008</year>.</mixed-citation></ref>
<ref id="ref-4"><label>[4]</label><mixed-citation publication-type="journal"><person-group person-group-type="author"><string-name><given-names>B.</given-names> <surname>Ahlgren</surname></string-name>, <string-name><given-names>C.</given-names> <surname>Dannewitz</surname></string-name>, <string-name><given-names>C.</given-names> <surname>Imbrenda</surname></string-name>, <string-name><given-names>D.</given-names> <surname>Kutscher</surname></string-name> and <string-name><given-names>B.</given-names> <surname>Ohlman</surname></string-name></person-group>, &#x201C;<article-title>A survey of information-centric networking</article-title>,&#x201D; <source>Communications Magazine</source>, vol. <volume>50</volume>, no. <issue>7</issue>, pp. <fpage>26</fpage>&#x2013;<lpage>36</lpage>, <year>2012</year>.</mixed-citation></ref>
<ref id="ref-5"><label>[5]</label><mixed-citation publication-type="journal"><person-group person-group-type="author"><string-name><given-names>N.</given-names> <surname>Khamphakdee</surname></string-name>, <string-name><given-names>N.</given-names> <surname>Benjamas</surname></string-name> and <string-name><given-names>S.</given-names> <surname>Saiyod</surname></string-name></person-group>, &#x201C;<article-title>Improving intrusion detection system based on snort rules for network probe attacks detection with association rules technique of data mining</article-title>,&#x201D; <source>Journal of ICT Research &#x0026; Applications</source>, vol. <volume>8</volume>, no. <issue>3</issue>, pp. <fpage>11</fpage>&#x2013;<lpage>21</lpage>, <year>2015</year>.</mixed-citation></ref>
<ref id="ref-6"><label>[6]</label><mixed-citation publication-type="journal"><person-group person-group-type="author"><string-name><given-names>A.</given-names> <surname>Alzahrani</surname></string-name> and <string-name><given-names>M.</given-names> <surname>Alenazi</surname></string-name></person-group>, &#x201C;<article-title>Designing a network intrusion detection system based on machine learning for software defined networks</article-title>,&#x201D; <source>Future Internet</source>, vol. <volume>1</volume>, no. <issue>5</issue>, pp. <fpage>111</fpage>&#x2013;<lpage>123</lpage>, <year>2021</year>.</mixed-citation></ref>
<ref id="ref-7"><label>[7]</label><mixed-citation publication-type="conf-proc"><person-group person-group-type="author"><string-name><given-names>J.</given-names> <surname>Shen</surname></string-name> and <string-name><given-names>J.</given-names> <surname>Wang</surname></string-name></person-group>, &#x201C;<article-title>Network intrusion detection by artificial immune system</article-title>,&#x201D; in <conf-name>IECON 2011-37th Annual Conf. of the IEEE Industrial Electronics Society</conf-name>, <conf-loc>Melbourne, VIC, Australia</conf-loc>, <publisher-name>IEEE</publisher-name>, pp. <fpage>4716</fpage>&#x2013;<lpage>4720</lpage>, <year>2011</year>.</mixed-citation></ref>
<ref id="ref-8"><label>[8]</label><mixed-citation publication-type="book"><person-group person-group-type="author"><string-name><given-names>G.</given-names> <surname>Ke</surname></string-name>, <string-name><given-names>Q.</given-names> <surname>Meng</surname></string-name>, <string-name><given-names>T.</given-names> <surname>Finley</surname></string-name>, <string-name><given-names>T.</given-names> <surname>Wang</surname></string-name>, <string-name><given-names>W.</given-names> <surname>Chen</surname></string-name> <etal>et al.,</etal></person-group> &#x201C;<chapter-title>LightGBM: A highly efficient gradient boosting decision tree</chapter-title>,&#x201D; in <source>Neural Information Processing Systems; Neural Information Processing Systems Foundation</source>, vol. 30. <publisher-loc>Long Beach, CA, USA</publisher-loc>, pp. <fpage>112</fpage>&#x2013;<lpage>135</lpage>, <year>2017</year>.</mixed-citation></ref>
<ref id="ref-9"><label>[9]</label><mixed-citation publication-type="journal"><person-group person-group-type="author"><string-name><given-names>J.</given-names> <surname>Hur</surname></string-name>, <string-name><given-names>S.</given-names> <surname>Ihm</surname></string-name> and <string-name><given-names>Y.</given-names> <surname>Park</surname></string-name></person-group>, &#x201C;<article-title>A variable impacts measurement in random forest for mobile cloud computing</article-title>,&#x201D; <source>Wireless Communications and Mobile Computing</source>, vol. <volume>32</volume>, no. <issue>11</issue>, pp. <fpage>321</fpage>&#x2013;<lpage>339</lpage>, <year>2017</year>.</mixed-citation></ref>
<ref id="ref-10"><label>[10]</label><mixed-citation publication-type="journal"><person-group person-group-type="author"><string-name><given-names>G.</given-names> <surname>Carl</surname></string-name>, <string-name><given-names>R.</given-names> <surname>Kesidis</surname></string-name>, <string-name><given-names>R.</given-names> <surname>Brooks</surname></string-name> and <string-name><given-names>S.</given-names> <surname>Rai</surname></string-name></person-group>, &#x201C;<article-title>Denial-of-service attack detection techniques</article-title>,&#x201D; <source>IEEE Internet Computing</source>, vol. <volume>10</volume>, no. <issue>1</issue>, pp. <fpage>82</fpage>&#x2013;<lpage>89</lpage>, <year>2006</year>.</mixed-citation></ref>
<ref id="ref-11"><label>[11]</label><mixed-citation publication-type="journal"><person-group person-group-type="author"><string-name><given-names>A.</given-names> <surname>Sangodoyin</surname></string-name>, <string-name><given-names>M.</given-names> <surname>Akinsolu</surname></string-name>, <string-name><given-names>P.</given-names> <surname>Pillai</surname></string-name> and <string-name><given-names>V.</given-names> <surname>Grout</surname></string-name></person-group>, &#x201C;<article-title>Detection and classification of DDoS flooding attacks on software-defined networks: A case study for the application of machine learning</article-title>,&#x201D; <source>IEEE Access</source>, vol. <volume>9</volume>, no. <issue>11</issue>, pp. <fpage>122495</fpage>&#x2013;<lpage>122508</lpage>, <year>2021</year>.</mixed-citation></ref>
<ref id="ref-12"><label>[12]</label><mixed-citation publication-type="journal"><person-group person-group-type="author"><string-name><given-names>J.</given-names> <surname>Perez-Diaz</surname></string-name>, <string-name><given-names>I.</given-names> <surname>Valdovinos</surname></string-name>, <string-name><given-names>K.</given-names> <surname>Choo</surname></string-name> and <string-name><given-names>D.</given-names> <surname>Zhu</surname></string-name></person-group>, &#x201C;<article-title>A flexible SDN-based architecture for identifying and mitigating low-rate DDoS attacks using machine learning</article-title>,&#x201D; <source>IEEE Access</source>, vol. <volume>8</volume>, no. <issue>11</issue>, pp. <fpage>155859</fpage>&#x2013;<lpage>155872</lpage>, <year>2020</year>.</mixed-citation></ref>
<ref id="ref-13"><label>[13]</label><mixed-citation publication-type="journal"><person-group person-group-type="author"><string-name><given-names>N.</given-names> <surname>Tuan</surname></string-name>, <string-name><given-names>P.</given-names> <surname>Hung</surname></string-name>, <string-name><given-names>N.</given-names> <surname>Nghia</surname></string-name>, <string-name><given-names>N.</given-names> <surname>Tho</surname></string-name>, <string-name><given-names>T.</given-names> <surname>Phan</surname></string-name> <etal>et al.,</etal></person-group> &#x201C;<article-title>A DDoS attack mitigation scheme in ISP networks using machine learning based on SDN</article-title>,&#x201D; <source>Electronics</source>, vol. <volume>9</volume>, no. <issue>3</issue>, pp. <fpage>413</fpage>&#x2013;<lpage>422</lpage>, <year>2020</year>.</mixed-citation></ref>
<ref id="ref-14"><label>[14]</label><mixed-citation publication-type="journal"><person-group person-group-type="author"><string-name><given-names>H.</given-names> <surname>Polat</surname></string-name>, <string-name><given-names>O.</given-names> <surname>Polat</surname></string-name> and <string-name><given-names>A.</given-names> <surname>Cetin</surname></string-name></person-group>, &#x201C;<article-title>Detecting DDoS attacks in software-defined networks through feature selection methods and machine learning models</article-title>,&#x201D; <source>Sustainability</source>, vol. <volume>12</volume>, no. <issue>3</issue>, pp. <fpage>1035</fpage>&#x2013;<lpage>1047</lpage>, <year>2020</year>.</mixed-citation></ref>
<ref id="ref-15"><label>[15]</label><mixed-citation publication-type="journal"><person-group person-group-type="author"><string-name><given-names>H.</given-names> <surname>Cheng</surname></string-name>, <string-name><given-names>J.</given-names> <surname>Liu</surname></string-name>, <string-name><given-names>T.</given-names> <surname>Xu</surname></string-name>, <string-name><given-names>B.</given-names> <surname>Ren</surname></string-name>, <string-name><given-names>B.</given-names> <surname>Mao</surname></string-name> <etal>et al.,</etal></person-group> &#x201C;<article-title>Machine learning based low-rate DDoS attack detection for SDN enabled IoT networks</article-title>,&#x201D; <source>International Journal of Sensor Networks</source>, vol. <volume>34</volume>, no. <issue>1</issue>, pp. <fpage>56</fpage>&#x2013;<lpage>69</lpage>, <year>2020</year>.</mixed-citation></ref>
<ref id="ref-16"><label>[16]</label><mixed-citation publication-type="journal"><person-group person-group-type="author"><string-name><given-names>L.</given-names> <surname>Tan</surname></string-name>, <string-name><given-names>Y.</given-names> <surname>Pan</surname></string-name>, <string-name><given-names>L.</given-names> <surname>Wu</surname></string-name>, <string-name><given-names>J.</given-names> <surname>Zhou</surname></string-name>, <string-name><given-names>J.</given-names> <surname>Jiang</surname></string-name> <etal>et al.,</etal></person-group> &#x201C;<article-title>A new framework for DDoS attack detection and defense in SDN environment</article-title>,&#x201D; <source>IEEE Access</source>, vol. <volume>8</volume>, no. <issue>1</issue>, pp. <fpage>161908</fpage>&#x2013;<lpage>161919</lpage>, <year>2020</year>.</mixed-citation></ref>
<ref id="ref-17"><label>[17]</label><mixed-citation publication-type="journal"><person-group person-group-type="author"><string-name><given-names>B.</given-names> <surname>Setiawan</surname></string-name>, <string-name><given-names>S.</given-names> <surname>Djanali</surname></string-name>, <string-name><given-names>T.</given-names> <surname>Ahmad</surname></string-name> and <string-name><given-names>I.</given-names> <surname>Nopember</surname></string-name></person-group>, &#x201C;<article-title>Increasing accuracy and completeness of intrusion detection model using fusion of normalization, feature selection method and support vector machine</article-title>,&#x201D; <source>International Journal of Intelligent Engineering Systems</source>, vol. <volume>12</volume>, no. <issue>4</issue>, pp. <fpage>378</fpage>&#x2013;<lpage>389</lpage>, <year>2019</year>.</mixed-citation></ref>
<ref id="ref-18"><label>[18]</label><mixed-citation publication-type="journal"><person-group person-group-type="author"><string-name><given-names>S.</given-names> <surname>Mirjalili</surname></string-name>, <string-name><given-names>S.</given-names> <surname>Mirjalili</surname></string-name> and <string-name><given-names>A.</given-names> <surname>Lewis</surname></string-name></person-group>, &#x201C;<article-title>Grey wolf optimizer</article-title>,&#x201D; <source>Advances in Engineering Software</source>, vol. <volume>69</volume>, no. <issue>7</issue>, pp. <fpage>46</fpage>&#x2013;<lpage>61</lpage>, <year>2014</year>.</mixed-citation></ref>
<ref id="ref-19"><label>[19]</label><mixed-citation publication-type="journal"><person-group person-group-type="author"><string-name><given-names>H.</given-names> <surname>Faris</surname></string-name>, <string-name><given-names>I.</given-names> <surname>Aljarah</surname></string-name>, <string-name><given-names>M.</given-names> <surname>Al-Betar</surname></string-name> and <string-name><given-names>S.</given-names> <surname>Mirjalili</surname></string-name></person-group>, &#x201C;<article-title>Grey wolf optimizer: A review of recent variants and applications</article-title>,&#x201D; <source>Neural Computing and Applications</source>, vol. <volume>30</volume>, no. <issue>2</issue>, pp. <fpage>413</fpage>&#x2013;<lpage>435</lpage>, <year>2018</year>.</mixed-citation></ref>
<ref id="ref-20"><label>[20]</label><mixed-citation publication-type="journal"><person-group person-group-type="author"><string-name><given-names>Y.</given-names> <surname>Zhang</surname></string-name>, <string-name><given-names>Y.</given-names> <surname>Wang</surname></string-name>, <string-name><given-names>M.</given-names> <surname>Gao</surname></string-name>, <string-name><given-names>Q.</given-names> <surname>Ma</surname></string-name>, <string-name><given-names>J.</given-names> <surname>Zhao</surname></string-name> <etal>et al.,</etal></person-group> &#x201C;<article-title>A predictive data feature exploration-based air quality prediction approach</article-title>,&#x201D; <source>IEEE Access</source>, vol. <volume>7</volume>, no. <issue>5</issue>, pp. <fpage>30732</fpage>&#x2013;<lpage>30743</lpage>, <year>2019</year>.</mixed-citation></ref>
<ref id="ref-21"><label>[21]</label><mixed-citation publication-type="conf-proc"><person-group person-group-type="author"><string-name><given-names>D.</given-names> <surname>Wang</surname></string-name>, <string-name><given-names>Y.</given-names> <surname>Zhang</surname></string-name> and <string-name><given-names>Y.</given-names> <surname>Zhao</surname></string-name></person-group>, &#x201C;<article-title>LightGBM: An effective miRNA classification method in breast cancer patients</article-title>,&#x201D; in <conf-name>Proc. of the 2017 Int. Conf. on Computational Biology and Bioinformatics</conf-name>, <conf-loc>New York NY, United States</conf-loc>, pp. <fpage>7</fpage>&#x2013;<lpage>11</lpage>, <year>2017</year>.</mixed-citation></ref>
<ref id="ref-22"><label>[22]</label><mixed-citation publication-type="journal"><person-group person-group-type="author"><string-name><given-names>D.</given-names> <surname>Jin</surname></string-name>, <string-name><given-names>Y.</given-names> <surname>Lu</surname></string-name>, <string-name><given-names>J.</given-names> <surname>Qin</surname></string-name>, <string-name><given-names>Z.</given-names> <surname>Cheng</surname></string-name> and <string-name><given-names>Z.</given-names> <surname>Mao</surname></string-name></person-group>, &#x201C;<article-title>SwiftIDS: Real-time intrusion detection system based on LightGBM and parallel intrusion detection mechanism</article-title>,&#x201D; <source>Computers &#x0026; Security</source>, vol. <volume>97</volume>, no. <issue>1</issue>, pp. <fpage>101</fpage>&#x2013;<lpage>117</lpage>, <year>2020</year>.</mixed-citation></ref>
<ref id="ref-23"><label>[23]</label><mixed-citation publication-type="journal"><person-group person-group-type="author"><string-name><given-names>M.</given-names> <surname>Elsayed</surname></string-name>, <string-name><given-names>N.</given-names> <surname>Le-Khac</surname></string-name> and <string-name><given-names>A.</given-names> <surname>Jurcut</surname></string-name></person-group>, &#x201C;<article-title>InSDN: A novel SDN intrusion dataset</article-title>,&#x201D; <source>IEEE Access</source>, vol. <volume>8</volume>, no. <issue>9</issue>, pp. <fpage>165263</fpage>&#x2013;<lpage>165284</lpage>, <year>2020</year>.</mixed-citation></ref>
<ref id="ref-24"><label>[24]</label><mixed-citation publication-type="conf-proc"><person-group person-group-type="author"><string-name><given-names>B.</given-names> <surname>Lantz</surname></string-name>, <string-name><given-names>B.</given-names> <surname>Heller</surname></string-name> and <string-name><given-names>N.</given-names> <surname>McKeown</surname></string-name></person-group>, &#x201C;<article-title>A network in a laptop: Rapid prototyping for software-defined networks</article-title>,&#x201D; in <conf-name>Proc. of the 9th ACM SIGCOMM Workshop on Hot Topics in Networks</conf-name>, <conf-loc>New York NY, United States</conf-loc>, pp. <fpage>1</fpage>&#x2013;<lpage>6</lpage>, <year>2010</year>.</mixed-citation></ref>
<ref id="ref-25"><label>[25]</label><mixed-citation publication-type="journal"><person-group person-group-type="author"><string-name><given-names>P.</given-names> <surname>Tam</surname></string-name>, <string-name><given-names>S.</given-names> <surname>Math</surname></string-name>, <string-name><given-names>C.</given-names> <surname>Nam</surname></string-name> and <string-name><given-names>S.</given-names> <surname>Kim</surname></string-name></person-group>, &#x201C;<article-title>Adaptive resource optimized edge federated learning in real-time image sensing classifications</article-title>,&#x201D; <source>IEEE Journal of Selected Topics in Applied Earth Observations and Remote Sensing</source>, vol. <volume>14</volume>, no. <issue>1</issue>, pp. <fpage>10929</fpage>&#x2013;<lpage>10940</lpage>, <year>2021</year>.</mixed-citation></ref>
<ref id="ref-26"><label>[26]</label><mixed-citation publication-type="journal"><person-group person-group-type="author"><string-name><given-names>A.</given-names> <surname>Salih</surname></string-name> and <string-name><given-names>A.</given-names> <surname>Abdulazeez</surname></string-name></person-group>, &#x201C;<article-title>Evaluation of classification algorithms for intrusion detection system: A review</article-title>,&#x201D; <source>Journal of Soft Computing and Data Mining</source>, vol. <volume>2</volume>, no. <issue>1</issue>, pp. <fpage>31</fpage>&#x2013;<lpage>40</lpage>, <year>2021</year>.</mixed-citation></ref>
<ref id="ref-27"><label>[27]</label><mixed-citation publication-type="journal"><person-group person-group-type="author"><string-name><given-names>S.</given-names> <surname>Ludwig</surname></string-name></person-group>, &#x201C;<article-title>Applying a neural network ensemble to intrusion detection</article-title>,&#x201D; <source>Journal of Artificial Intelligence and Soft Computing Research</source>, vol. <volume>9</volume>, no. <issue>1</issue>, pp. <fpage>11</fpage>&#x2013;<lpage>25</lpage>, <year>2019</year>.</mixed-citation></ref>
<ref id="ref-28"><label>[28]</label><mixed-citation publication-type="web"><person-group person-group-type="author"><string-name><given-names>J.</given-names> <surname>Devore</surname></string-name></person-group>, &#x201C;<article-title>Probability and Statistics for Engineering and the Sciences</article-title>,&#x201D;<source> Cengage Learning</source>. [Online]. Available: <uri xlink:href="https://fac.ksu.edu.sa/sites/default/files/probability_and_statistics_for_engineering_and_the_sciences.pdf">https://fac.ksu.edu.sa/sites/default/files/probability_and_statistics_for_engineering_and_the_sciences.pdf</uri>.</mixed-citation></ref>
</ref-list>
<app-group id="appg1">
<app id="app1"><label> </label>
<title>Appendix Hyperparameters</title>
</app>
</app-group>
</back>
</article>















