<?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" xml:lang="en" 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">54215</article-id>
<article-id pub-id-type="doi">10.32604/cmc.2024.054215</article-id>
<article-categories>
<subj-group subj-group-type="heading">
<subject>Article</subject>
</subj-group>
</article-categories>
<title-group>
<article-title>Enhanced Mechanism for Link Failure Rerouting in Software-Defined Exchange Point Networks</article-title>
<alt-title alt-title-type="left-running-head">Enhanced Mechanism for Link Failure Rerouting in Software-Defined Exchange Point Networks</alt-title>
<alt-title alt-title-type="right-running-head">Enhanced Mechanism for Link Failure Rerouting in Software-Defined Exchange Point Networks</alt-title>
</title-group>
<contrib-group>
<contrib id="author-1" contrib-type="author">
<name name-style="western"><surname>Abdullahi</surname><given-names>Abdijalil</given-names></name><xref ref-type="aff" rid="aff-1">1</xref><xref ref-type="aff" rid="aff-2">2</xref></contrib>
<contrib id="author-2" contrib-type="author" corresp="yes">
<name name-style="western"><surname>Manickam</surname><given-names>Selvakumar</given-names></name><xref ref-type="aff" rid="aff-2">2</xref><email>selva@usm.my</email></contrib>
<aff id="aff-1"><label>1</label><institution>Department of Information Technology, SIMAD University</institution>, <addr-line>Mogadishu, 630</addr-line>, <country>Somalia</country></aff>
<aff id="aff-2"><label>2</label><institution>National Advanced IPv6 Centre, Universiti Sains Malaysia</institution>, <addr-line>Pulua Pinang, 11800</addr-line>, <country>Malaysia</country></aff>
</contrib-group>
<author-notes>
<corresp id="cor1"><label>&#x002A;</label>Corresponding Author: Selvakumar Manickam. Email: <email>selva@usm.my</email></corresp>
</author-notes>
<pub-date date-type="collection" publication-format="electronic">
<year>2024</year></pub-date>
<pub-date date-type="pub" publication-format="electronic"><day>12</day><month>9</month><year>2024</year></pub-date>
<volume>80</volume>
<issue>3</issue>
<fpage>4361</fpage>
<lpage>4385</lpage>
<history>
<date date-type="received">
<day>22</day>
<month>5</month>
<year>2024</year>
</date>
<date date-type="accepted">
<day>09</day>
<month>8</month>
<year>2024</year>
</date>
</history>
<permissions>
<copyright-statement>&#x00A9; 2024 The Authors.</copyright-statement>
<copyright-year>2024</copyright-year>
<copyright-holder>Published by Tech Science Press.</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_54215.pdf"></self-uri>
<abstract>
<p>Internet Exchange Point (IXP) is a system that increases network bandwidth performance. Internet exchange points facilitate interconnection among network providers, including Internet Service Providers (ISPs) and Content Delivery Providers (CDNs). To improve service management, Internet exchange point providers have adopted the Software Defined Network (SDN) paradigm. This implementation is known as a Software-Defined Exchange Point (SDX). It improves network providers&#x2019; operations and management. However, performance issues still exist, particularly with multi-hop topologies. These issues include switch memory costs, packet processing latency, and link failure recovery delays. The paper proposes Enhanced Link Failure Rerouting (ELFR), an improved mechanism for rerouting link failures in software-defined exchange point networks. The proposed mechanism aims to minimize packet processing time for fast link failure recovery and enhance path calculation efficiency while reducing switch storage overhead by exploiting the Programming Protocol-independent Packet Processors (P4) features. The paper presents the proposed mechanisms&#x2019; efficiency by utilizing advanced algorithms and demonstrating improved performance in packet processing speed, path calculation effectiveness, and switch storage management compared to current mechanisms. The proposed mechanism shows significant improvements, leading to a 37.5% decrease in Recovery Time (RT) and a 33.33% decrease in both Calculation Time (CT) and Computational Overhead (CO) when compared to current mechanisms. The study highlights the effectiveness and resource efficiency of the proposed mechanism in effectively resolving crucial issues in multi-hop software-defined exchange point networks.</p>
</abstract>
<kwd-group kwd-group-type="author">
<kwd>Link failure recovery</kwd>
<kwd>Internet exchange point</kwd>
<kwd>software-defined exchange point</kwd>
<kwd>software-defined network</kwd>
<kwd>multi-hop topologies</kwd>
</kwd-group>
</article-meta>
</front>
<body>
<sec id="s1">
<label>1</label>
<title>Introduction</title>
<p>Since its start in the early 1990s, the Internet has experienced substantial changes. At first, it was a cutting-edge spreading infrastructure with a tiny number of users, mainly managed by a small set of Tier-1 transit providers in charge of worldwide connections [<xref ref-type="bibr" rid="ref-1">1</xref>,<xref ref-type="bibr" rid="ref-2">2</xref>]. The hierarchical network structure, primarily dependent on major transit providers, faced challenges due to changing network traffic needs and interconnection requirements [<xref ref-type="bibr" rid="ref-3">3</xref>].</p>
<p>This eventually shifted towards a flatter topology supported by direct peering connections [<xref ref-type="bibr" rid="ref-4">4</xref>]. This development introduced Internet Exchange Points (IXPs) as crucial components in the structure of the Internet, with a focus on enhancing network bandwidth and lowering interconnection expenses [<xref ref-type="bibr" rid="ref-5">5</xref>,<xref ref-type="bibr" rid="ref-6">6</xref>]. Internet exchange points have been crucial in the Internet peering ecosystem during the last few decades, significantly boosting the global participation of providers and promoting the development of peering partnerships [<xref ref-type="bibr" rid="ref-7">7</xref>]. Traditional Internet exchange point architecture has faced limitations, especially in managing complex network dynamics like broadcast storms and the inefficiencies in using the Border Gateway Protocol (BGP) for routing decisions [<xref ref-type="bibr" rid="ref-8">8</xref>,<xref ref-type="bibr" rid="ref-9">9</xref>].</p>
<p>The advent of Software-Defined Networking (SDN) has offered a revolutionary approach to network management [<xref ref-type="bibr" rid="ref-10">10</xref>,<xref ref-type="bibr" rid="ref-11">11</xref>]. It is characterized by the separation of the control and data planes, provides logically centralized control of programmable switches, facilitating traffic management at a more granular level compared to the coarse-grained level routing of Border Gateway Protocol (BGP) [<xref ref-type="bibr" rid="ref-12">12</xref>,<xref ref-type="bibr" rid="ref-13">13</xref>]. Building upon the principles of SDN, Software-Defined Exchange Points (SDXs) emerged, offering network providers more refined control over traffic forwarding and policy implementation [<xref ref-type="bibr" rid="ref-14">14</xref>,<xref ref-type="bibr" rid="ref-15">15</xref>]. As illustrated in <xref ref-type="fig" rid="fig-1">Fig. 1</xref>, software-defined exchange points consist of a software-defined network controller, a border gateway protocol route server, and a programmable switching fabric. These points enable more sophisticated traffic management and policy enforcement than traditional Internet exchange points.</p>
<fig id="fig-1">
<label>Figure 1</label>
<caption>
<title>Software-defined exchange point architecture (Reprinted/adapted with permission from Reference [<xref ref-type="bibr" rid="ref-16">16</xref>]. Copyright 2023, Institute of Advanced Engineering and Science)</title>
</caption>
<graphic mimetype="image" mime-subtype="tif" xlink:href="CMC_54215-fig-1.tif"/>
</fig>
<p><bold><italic>Problem Formulation</italic></bold> Despite advancements in Software-Defined Networking (SDN) and the deployment of Software-Defined Exchanges (SDXs), there remain persistent challenges, particularly in managing link failure recovery and minimizing packet processing delays in multi-hop network configurations in software-defined exchange point environments [<xref ref-type="bibr" rid="ref-17">17</xref>,<xref ref-type="bibr" rid="ref-18">18</xref>]. The complex architecture characterized by multiple interconnected switches elevates the difficulties of routing traffic promptly and efficiently during link disruptions [<xref ref-type="bibr" rid="ref-16">16</xref>,<xref ref-type="bibr" rid="ref-19">19</xref>]. Existing approaches to addressing these challenges have often resulted in trade-offs such as increased packet processing times, higher switch memory overheads, and lack of dynamic path computation [<xref ref-type="bibr" rid="ref-20">20</xref>,<xref ref-type="bibr" rid="ref-21">21</xref>]. These issues stem from the inherent limitations of current software-defined exchange point frameworks, which struggle to balance quick failover responses with minimal impact on network performance [<xref ref-type="bibr" rid="ref-22">22</xref>,<xref ref-type="bibr" rid="ref-23">23</xref>].</p>
<p>The core problem addressed in this research is the need for a more resilient and efficient mechanism for link failure recovery in software-defined exchange point environments, especially within multi-hop topologies. The proposed Enhanced Link Failure Rerouting (ELFR) mechanism aims to fundamentally improve the reliability and efficiency of these networks by optimizing link failure rerouting processes, reducing packet processing delays, and managing switch memory overhead more effectively. Through advanced algorithms and the innovative use of Programming Protocol-independent Packet Processors (P4), the proposed mechanism seeks to improve the performance and scalability of the software-defined exchange point environments. The contributions of this paper can be summarized as follows:
<list list-type="bullet">
<list-item>
<p>This research paper introduces Enhanced Link Failure Rerouting (ELFR), a novel mechanism to quickly recover from link failures in software-defined exchange point networks, focusing on multi-hop architectures. The proposed mechanism comprises two key modules: packet processing and path computation. The packet processing module quickly and accurately manages data packets to minimize disruptions during failures, while the path computation module efficiently devises alternative routes to maintain data flow. These integrated modules improve software-defined exchange point networks&#x2019; robustness, resilience, and performance, ensuring reliable data transmission for complex tasks.</p></list-item>
<list-item>
<p>The proposed mechanism leverages the capabilities of protocol-independent packet processors (P4) to minimize recovery times during a link failure swiftly. It dynamically adds custom data to packet headers, distinguishing normal packets from recovery packets&#x2014;&#x2018;0&#x2019; for normal and &#x2018;1&#x2019; for those requiring rerouting. This classification lets switches insert and read backup path data from packet headers, enabling them to redirect affected packets along alternate routes swiftly. This efficient process significantly simplifies the packet forwarding and reduces downtime when link failures occur.</p></list-item>
<list-item>
<p>The proposed mechanism enhances software-defined exchange point networks by quickly calculating backup paths using the software-defined network controller&#x2019;s advanced path computation strategy. This strategy incorporates Programming Protocol-independent Packet Processors (P4) functionalities to determine and store neighbor-specific backup routes proactively. This approach optimizes storage and computational resources by having each switch hold only directly connected neighbor backup data. The proposed mechanism efficiently computes and installs the shortest backup paths between switches through an optimized algorithm, ensuring rapid and effective rerouting during link failures.</p></list-item>
<list-item>
<p>In our study, we evaluated the proposed mechanism, focusing on recovery time, calculation time, and memory overhead. Results show that the proposed mechanism significantly outperforms the ENDEAVOUR mechanism, with lower metrics in all categories&#x2014;37.5% in recovery time and 33.33% in computation time and overhead, <italic>vs.</italic> ENDEAVOUR&#x2019;s 62.5% and 66.67%, respectively. The proposed mechanism provides better efficiency in recovery time, faster path computation, and reduced computational overhead.</p></list-item>
</list></p>
<p>Following this introduction, the subsequent sections of this paper are organized as follows: <xref ref-type="sec" rid="s2">Section 2</xref> provides related work by critically reviewing existing mechanisms. <xref ref-type="sec" rid="s3">Section 3</xref> offers the design of the proposed mechanism. <xref ref-type="sec" rid="s4">Section 4</xref> presents the experimental results and discussion. Finally, <xref ref-type="sec" rid="s5">Section 5</xref> provides the conclusion and future work of the paper.</p>
</sec>
<sec id="s2">
<label>2</label>
<title>Related Work</title>
<p>This section describes the existing methods and frameworks for recovering from link failure. The approaches and frameworks are separated into Software-Defined Exchange Point (SDX) based and Fast Re-Routing (FRR) based frameworks. To improve link failure rerouting management, software-defined network-based frameworks are employed on Internet exchange point providers to utilize software-defined network features, notably multi-hop topologies. Fast Re-Routing (FRR) based algorithms and approaches still need to be implemented in the software-defined exchange point environment&#x2019;s multi-hop architecture. However, they suggest viable schemes to reroute lost packets promptly utilizing non-software-defined network methods.</p>
<sec id="s2_1">
<label>2.1</label>
<title>Software-Defined Exchange Point-Based Frameworks</title>
<p>Internet exchange point providers have had issues addressing link failure rerouting, particularly in multi-hop topologies. This section covers two frameworks: ENDEAVOUR [<xref ref-type="bibr" rid="ref-21">21</xref>], and Umbrella [<xref ref-type="bibr" rid="ref-20">20</xref>], meant to solve the issues of Internet exchange points&#x2019; fast failover recovery and their recommended solutions.</p>
<p>ENDEAVOUR is a software-defined networking framework created for Internet exchange point operators and implemented on multi-hop Internet exchange point topologies. It decreases switching fabric challenges caused by broadcast traffic and promotes the scalability of Internet exchange point providers. This framework provided three ways during link failure recovery in multi-hop topologies. The methods involve enforcing duplicate outgoing rules, returning packets to the ingress switch, and inserting recovery information into packets. These solutions have addressed many issues related to link failure recovery but have not fixed the latency in packet processing and the overhead on switch memory and path computation.</p>
<p>The Umbrella is a software-defined exchange point method that can provide a reliable and solid switching fabric, reducing the potential for controller failures. Furthermore, Umbrella can be implemented on any single-hop or multi-hop Internet exchange point topology. Umbrella leverages OpenFlow (OF) technologies to address data plane link failure. OpenFlow leverages the group&#x2019;s quick failover functionality to address an interrupted link. This functionality enables the monitoring of interfaces, switch port states, and forwarding action independently of a controller. Recovering the data plane after a failure is very tough. The Umbrella controller implements Bidirectional Forwarding Detection (BFD) and Local Link Discovery (LLD). The Umbrella controller updates the configuration of the edge switch with the backup route when a data plane link loss is detected. The Umbrella framework could not address the constraints of connection loss in a multi-hop topology due to the dependable rerouting capabilities of OpenFlow.</p>
</sec>
<sec id="s2_2">
<label>2.2</label>
<title>Fast Re-Routing (FRR)-Based Frameworks</title>
<p>This section describes the general frameworks for Fast Re-Routing (FRR) in the event of link failures, such as Software Implemented Fault Tolerance (SWIFT) [<xref ref-type="bibr" rid="ref-24">24</xref>,<xref ref-type="bibr" rid="ref-25">25</xref>]; Primitive for Reconfigurable Fast Reroute (PURR) [<xref ref-type="bibr" rid="ref-26">26</xref>], and Fast Re-Routing (FRR) [<xref ref-type="bibr" rid="ref-27">27</xref>].</p>
<p>Software Implemented Fault Tolerance (SWIFT) provides a quick rerouting mechanism that allows routers to recover swiftly from distant failures. The framework uses two methods: first, it predicts distant failures by analyzing a small number of Border Gateway Protocol (BGP) updates it has received. Secondly, the framework suggested an encoding approach for the data plane that allows rapid and adaptable updates to the affected forwarding entries. The framework decreased the time needed for convergence and addressed the issues related to remote outages in transit networks. Primitive for Reconfigurable Fast Reroute (PURR) eliminates packet recirculation for minimal failover delay and excellent switch performance. It demonstrates robust resilience to numerous simultaneous failures and facilitates recovery from failures with little memory usage. This method introduced a fast-rerouting primitive for programmable data planes, enabling failover mechanisms to integrate without recirculating packets, resulting in minimal failover latency and increased switch throughput. Fast Re-Routing (FRR) introduced a rapid rerouting framework to restore router interruptions and quickly reroute traffic in case of failure. This framework changed the pre-computed routing path, allowing for rapid rerouting. It offers distinct failover routes to minimize the impact of interruptions and packet loss, improving fast re-routing protection performance.</p>
</sec>
<sec id="s2_3">
<label>2.3</label>
<title>Critical Review</title>
<p>This section provides a thorough critical analysis of the current frameworks. Current Internet exchange points utilize rapid rerouting by employing traditional routing technologies like Open Shortest Path First (OSPF) and Multiprotocol Label Switching (MPLS). The systems redirect packets to specific egress ports and predetermined alternate routes in case of an internal connection breakdown. Rerouting packets in a single switch topology is typically straightforward when a link failure occurs. Since a link failure affects multiple switches within the Internet exchange point, packet rerouting in a multi-hop topology becomes more difficult. Internet exchange points provide rerouting packets using OpenFlow techniques like EDEAVOUR and Umbrella for failover recovery. However, these mechanisms are ineffective in quickly rerouting packets and do not excel in packet processing performance. Conversely, several link failure rerouting strategies have been suggested, including a Software Implemented Fault Tolerance (SWIFT) [<xref ref-type="bibr" rid="ref-24">24</xref>]; Primitive for Reconfigurable Fast Reroute (PURR) [<xref ref-type="bibr" rid="ref-26">26</xref>], and Fast-Re-Routing (FRR) [<xref ref-type="bibr" rid="ref-27">27</xref>]. The techniques effectively carried out quick rerouting but were not utilized for multi-hop software-defined exchange point topologies. Therefore, these approaches can improve fast failover recovery techniques and minimize packet processing delays in multi-hop software-defined exchange point topologies.</p>
<p>ENDEAVOUR [<xref ref-type="bibr" rid="ref-21">21</xref>] suggested solutions that addressed specific difficulties, but there are still constraints, such as packet processing delay and switch memory overhead. Umbrella [<xref ref-type="bibr" rid="ref-20">20</xref>] proposed solutions that mitigate certain constraints, although they rely on OpenFlow elements that cause delays in connection failure recovery. Software Implemented Fault Tolerance (SWIFT) [<xref ref-type="bibr" rid="ref-24">24</xref>] introduced ways to address specific issues with quick rerouting. Still, these mechanisms faced restrictions such as rerouting unaffected prefixes, leading to potential overhead and accuracy issues. The proposed methods could not reroute a significant number of prefixes but could reroute a small amount.</p>
<p>A Fast Re-Routing (FRR) primitive for modifiable data planes was proposed via the Primitive for Reconfigurable Fast Reroute (PURR) [<xref ref-type="bibr" rid="ref-26">26</xref>] mechanism. Integrating the existing failover techniques without recirculating packets results in less failover latency and more switch performance. The software-defined exchange point environment covered in this work does not support implementing this function. This mechanism might improve that study&#x2019;s techniques. This mechanism might improve the study&#x2019;s approaches. Fast Re-Routing (FRR) [<xref ref-type="bibr" rid="ref-27">27</xref>] proposed a technique for single topologies in the software-defined exchange point environment; however, it has not yet been implemented in multi-hop software-defined exchange point topologies. This mechanism aims to address the issues related to link failure recovery. Additionally, the method uses two-stage forwarding rules to modify the data plane, which delays the interruption&#x2019;s rerouting. For routing link failures, <xref ref-type="table" rid="table-1">Table 1</xref> highlights the mechanisms, benefits, and limitations of current frameworks and approaches, including those based on Software-Defined Exchange Points (SDX) and Fast Re-Routing (FRR).</p>
<table-wrap id="table-1">
<label>Table 1</label>
<caption>
<title>Analysis of current link failure rerouting mechanisms</title>
</caption>
<table frame="hsides">
<colgroup>
<col align="left"/>
<col align="left"/>
<col align="left"/>
<col align="left"/>
</colgroup>
<thead>
<tr>
<th>Frameworks</th>
<th>Mechanisms</th>
<th>Strength</th>
<th>Drawbacks</th>
</tr>
</thead>
<tbody valign="top">
<tr>
<td rowspan="3">ENDEAVOUR [<xref ref-type="bibr" rid="ref-21">21</xref>]</td>
<td>Replicate external policies</td>
<td>Duplicating all members&#x2019; outgoing and incoming policies across all switches.</td>
<td>Substantial forwarding state duplication.</td>
</tr>
<tr>
<td>Bounce packets back to ingress switch</td>
<td>Prevents unnecessary duplication of forwarding state.</td>
<td>Waste of bandwidth and increased packet latency.</td>
</tr>
<tr>
<td>Insert packets with recovery information</td>
<td>All overheads from the previous methods were resolved.</td>
<td>Cost of switch memory and processing delay.</td>
</tr>
<tr>
<td rowspan="2">Umbrella [<xref ref-type="bibr" rid="ref-20">20</xref>]</td>
<td>OpenFlow group fast failover</td>
<td>It switches forwarding activities independently, without needing a controller and monitors the state of ports and interfaces.</td>
<td>Without the controller, the data plane failure cannot be recovered.</td>
</tr>
<tr>
<td>Local link discovery protocol (LLDP) and Bidirectional forwarding detection (BFD) protocol</td>
<td>It resolved the problem of recovering from data plane failure, which was brought on by the above method.</td>
<td>It relies on the controller, which leads to a delay in recovery.</td>
</tr>
<tr>
<td rowspan="2">Software implemented fault tolerance (SWIFT) [<xref ref-type="bibr" rid="ref-24">24</xref>]</td>
<td>Inference algorithm</td>
<td>Determines which prefixes will have minimal outage notification.<break/>Rerouting the affected prefixes on paths unaffected by the inferred failure.</td>
<td>It may have rerouted unaffected prefixes, making it impossible to control both the accuracy and the speed of rerouting the impacted prefixes concurrently.</td>
</tr>
<tr>
<td>Encoding scheme</td>
<td>Enables quick and flexible updates of the affected forwarding entries.</td>
<td>Capable of only rerouting a small number of prefixes rather than a large number of them.<break/>The first border gateway protocol update can take minutes to disseminate upon a data plane failure.</td>
</tr>
<tr>
<td>Primitive for reconfigurable fast reroute (PURR) [<xref ref-type="bibr" rid="ref-26">26</xref>]</td>
<td>Primitive for programmable data plane</td>
<td>Reduces failover latency and increases switch throughput.<break/>It can handle both single and multiple failures. Stops packets from being circulated.</td>
<td>Restricted to failures of the data plane.<break/>Deployment is not feasible on multi-hop Internet exchange point topologies.</td>
</tr>
<tr>
<td>Fast re-routing (FRR) [<xref ref-type="bibr" rid="ref-27">27</xref>]</td>
<td>Fast re-routing</td>
<td>Determines the cause of the routing disruption.<break/>Uses a quick rerouting method.<break/>Decreases the interruption&#x2019;s recovery time.</td>
<td>Uses two-stage forwarding rules to enable data plane updates; however, redirecting the interruption may take some time.<break/>Incapable of being deployed on multi-hop IXP topologies.</td>
</tr>
<tr>
<td>Proposed mechanism</td>
<td>Packet processing scheme</td>
<td>Reduces recovery time for packet processing during link failures in a software-defined exchange point.<break/>Minimizes the storage overhead of switch memory.</td>
<td>Applicable only to single-link failure scenarios.<break/>In single-link failure schemes, loop issues may occur due to slow convergence, inconsistent routing information, or improperly managed redundant paths.</td>
</tr>
<tr>
<td/>
<td>Path computation scheme</td>
<td>Enables dynamic path computation with minimized calculation time in a software-defined exchange point.<break/>Recovers link failures by identifying the shortest backup path.</td>
<td/>
</tr>
</tbody>
</table>
</table-wrap>
<p>The proposed mechanism presents an innovative method for handling packet processing and path computation in software-defined exchange points, explicitly focusing on effectively dealing with the difficulties associated with link failure recovery. This mechanism effectively decreases the time it takes to recover from link failures compared to traditional methods. It achieves this by optimizing how packets are processed and lowering the storage space used in switch memory. Furthermore, it improves the effectiveness of path calculation by allowing for real-time calculation with decreased processing time, ensuring rapid discovery of the shortest alternative path.</p>
</sec>
</sec>
<sec id="s3">
<label>3</label>
<title>Proposed Mechanism</title>
<p>This section proposes an Enhanced Link Failure Rerouting (ELFR) mechanism to solve the issues raised in the critical review section. The proposed method decreases packet processing latency, enhances path computation, and lowers memory storage overhead to improve the performance of Software-Defined Exchange Points (SDX), especially link failure recovery for multi-hop topologies. The subsequent subsections outline the requirements of the mechanism, architecture, and modules for the proposed mechanism.</p>
<sec id="s3_1">
<label>3.1</label>
<title>Requirement of Proposed Mechanism</title>
<p>The primary objectives of this research are to validate the proposed mechanism&#x2019;s output and accomplish its main goal. The proposed mechanism must meet the following needs:
<list list-type="bullet">
<list-item>
<p>The proposed mechanism should be built on the Software-Defined Exchange Point (SDX) using Programming Protocol-independent Packet Processors (P4) capabilities.</p></list-item>
<list-item>
<p>When a link fails, the proposed mechanism must prevent packet recirculation, which raises packet processing latency.</p></list-item>
<list-item>
<p>The proposed mechanism should not treat any normal forwarding packet as a recovery packet; doing so would delay recovery.</p></list-item>
<list-item>
<p>The proposed mechanism should not compute the recovery backup path after the link fails.</p></list-item>
</list></p>
</sec>
<sec id="s3_2">
<label>3.2</label>
<title>Proposed Mechanism Architecture</title>
<p>This section outlines the proposed mechanism&#x2019;s architecture. The primary objective of this proposed mechanism is to reduce link failure recovery delays in multi-hop software-defined exchange points. In the software-defined exchange point multi-hop architecture, the proposed mechanism enhances path calculation to compute a recovery backup path effectively and reduce packet processing latency in case of a link failure. <xref ref-type="fig" rid="fig-2">Fig. 2</xref> shows the proposed architecture of the proposed mechanism. The proposed mechanism is comprised of two distinct modules, each incorporating its components within the architectural mechanism:</p>
<fig id="fig-2">
<label>Figure 2</label>
<caption>
<title>Architecture of proposed mechanism (Reprinted/adapted with permission from Reference [<xref ref-type="bibr" rid="ref-16">16</xref>]. Copyright 2023, Institute of Advanced Engineering and Science)</title>
</caption>
<graphic mimetype="image" mime-subtype="tif" xlink:href="CMC_54215-fig-2.tif"/>
</fig>
<sec id="s3_2_1">
<label>3.2.1</label>
<title>Packet Processing Module</title>
<p>After packets are encapsulated and designated, this module aims to route them to their destination efficiently. It lets us distinguish recovery packets from normal packets. A packet affected by a link failure needs to recover quickly and efficiently. The module will process and normally forward the packet if it seems normal.</p>
</sec>
<sec id="s3_2_2">
<label>3.2.2</label>
<title>Path Computation Module</title>
<p>This module lets the user choose the shortest backup path if a link fails proactively. It also uses a neighbor-based technique to deploy the shortest recovery path on switches.</p>
</sec>
</sec>
<sec id="s3_3">
<label>3.3</label>
<title>Proposed Mechanism</title>
<p>In this section, the proposed method is explained. The packet processing and path computation modules compose the proposed method. Modules consist of various processes. Packet forwarding, packet capture for packet processing, recovery backup path computation, and shortest backups for the path computation module are some of the processes involved. Key steps within each process include packet encapsulation, packet classification, usual and recovery packet forwarding, backup path computation, backup path shortest path finding, and backup path information installation. The proposed mechanism&#x2019;s components and details are listed below.</p>
<sec id="s3_3_1">
<label>3.3.1</label>
<title>Packet Processing Module</title>
<p>This module utilizes Software-Defined Networking (SDN) methods and Programming Protocol-independent Packet Processors (P4) to enhance packet processing and forward the packets effectively in case of link failure. Link failure recovery in Software-Defined Networking (SDN) is a crucial issue often addressed via proactive or reactive methods [<xref ref-type="bibr" rid="ref-28">28</xref>,<xref ref-type="bibr" rid="ref-29">29</xref>]. This study avoids the reactive method due to recovery delays and instead implements the proactive method. Implementing a proactive recovery method promptly creates backup routes to facilitate quick traffic redirection in case of a link failure. The pre-determined routes are saved as flow entries in intermediary switches. This proactive approach can reliably meet stringent recovery time requirements, often 50 ms for carrier-grade networks. However, this speed comes at a resource utilization cost, creating challenges like flow table storage space bottlenecks and backup path performance. This research implements a proactive recovery method using P4 features to address the switch&#x2019;s storage overhead.</p>
<p>Programming Protocol-independent Packet Processors (P4) is a high-level programming language designed for protocol-independent packet processors and provides flexibility and control over packet processing [<xref ref-type="bibr" rid="ref-30">30</xref>,<xref ref-type="bibr" rid="ref-31">31</xref>]. The language enables not just the definition of packet header fields but also the customization of how these packets are parsed and processed through various stages. When a packet enters the switch, it undergoes parsing to translate it into a processable format. Following this, ingress and egress &#x2018;match&#x2013;action&#x2019; tables are applied to the packet to modify its headers or determine its egress port. Finally, before forwarding, the packet is deparsed based on its current state [<xref ref-type="bibr" rid="ref-32">32</xref>,<xref ref-type="bibr" rid="ref-33">33</xref>]. Integrating Programming Protocol-independent Packet Processors (P4) into software-defined network recovery strategies offers intriguing possibilities. In proactive recovery, Programming Protocol-independent Packet Processors (P4) can be leveraged to optimize the storage and application of backup paths. For example, the ingress &#x2018;match&#x2013;action&#x2019; tables can be programmed to implement the predefined recovery strategies, thus reducing the need for storing excessive flow entries. This can make the system more efficient while still maintaining rapid recovery times. By weaving the capabilities of Programming Protocol-independent Packet Processors (P4) together with the existing proactive recovery method in a software-defined network, we can aim to optimize this strategy and potentially revolutionize it. This fusion can provide a more robust, efficient, and agile approach for managing link failures in software-defined networks.</p>
<p>Using OpenFlow capabilities, ENDEAVOUR [<xref ref-type="bibr" rid="ref-21">21</xref>] and Umbrella [<xref ref-type="bibr" rid="ref-20">20</xref>], presented methods that increased switch memory costs and packet processing delays. In the software-defined network architecture, two methods for recovering from link failures are proactive and reactive. The proactive approach requires more storage, increasing the switch memory cost, whereas the reactive option adds latency to the failed recovery process. The proposed mechanism minimizes switch memory overhead and packet processing delays by employing a proactive link failure recovery technique and leveraging Programming Protocol-independent Packet Processors (P4) features [<xref ref-type="bibr" rid="ref-34">34</xref>,<xref ref-type="bibr" rid="ref-35">35</xref>]. The software-defined exchange point environment&#x2019;s multi-hop architecture has previously hindered the effective and efficient processing of packets using Programming Protocol-independent Packet Processors (P4) features in earlier studies. The two processes that comprise the packet processing module are packet forwarding and packet capture, which effectively process and forward packets:
<list list-type="bullet">
<list-item>
<p>Packet Capturing: The two packet capturing steps are classification and encapsulation. Packet encapsulation uses Programming Protocol-independent Packet Processors (P4) to add custom packets to a packet header in case of a link failure. With packet classification, you can handle packets quickly and effectively without forwarding the unaffected packet as a recovery packet. It also allows you to verify the state of the packets and distinguish between normal and recovery packets. This step separates the affected packet from the normal packet using a one-bit status field to identify the packets. The packet in link failure recovery has a <bold>state</bold> of <bold>1</bold>, while a normal packet has a <bold>state</bold> of <bold>0</bold>. If a packet is in the link failure recovery state, the backup path information must be added to the header. Thus, this process aims to collect, encapsulate, and classify the packets.</p></list-item>
</list>
<list list-type="bullet">
<list-item>
<p>Packet Forwarding: Normal Packet Forwarding and Recovery Packet Forwarding are the two stages of packet forwarding. Considering the preceding phase that distinguished between the two types of packets, this process manages packet forwarding. First, a normal packet must be processed normally and should not be impacted by the failure. Secondly, the failure is affected by a recovery packet, which needs to recover quickly. Normal packets are handled by Normal Packet Forwarding, which routes packets based on the destination address. On the other hand, Recovery Packet Forwarding handles recovery packets using backup path information in the packet header rather than the normal packet routing procedure. In this case, in the event of a packet link failure, the switch inserts the backup path data into the custom packet header. Subsequent switches can complete the forwarding process by retrieving the backup path data from the custom packet header. The proposed mechanism separates packets into parts to process them. First, a normal packet forwards to the destination normally using the destination address. This packet does not affect the failure, so it forwards directly. Second, the recovery packet forwards using an alternative backup path that computes the software-defined network controller. This packet does not process directly into the destination because it causes failure, as shown in <xref ref-type="fig" rid="fig-3">Fig. 3</xref>.</p>
</list-item>
</list></p>
<fig id="fig-3">
<label>Figure 3</label>
<caption>
<title>Workflow of packet processing (Reprinted/adapted with permission from Reference [<xref ref-type="bibr" rid="ref-16">16</xref>]. Copyright 2023, Institute of Advanced Engineering and Science)</title>
</caption>
<graphic mimetype="image" mime-subtype="tif" xlink:href="CMC_54215-fig-3.tif"/>
</fig>
<p>Algorithm 1 shows the packet processing. The <bold>parseHeader</bold> function in the algorithm initiates by parsing the packet&#x2019;s header to determine if it&#x2019;s in &#x201C;NORMAL&#x201D; or &#x201C;RECOVERY&#x201D; mode. A &#x201C;NORMAL&#x201D; header matches the destination address against the forward table to identify the correct port, using <bold>checkState</bold> to assess the port&#x2019;s condition. If the port is active, the packet is forwarded; if inactive, the header switches to &#x201C;RECOVERY,&#x201D; and a backup path is selected using <bold>bpTable</bold>. If the header is already in &#x201C;RECOVERY&#x201D; mode, <bold>getForwardPort</bold> retrieves the next port, which is validated for activity. If active, the packet is sent through this port, resetting the header to &#x201C;NORMAL&#x201D; if the path length is zero; otherwise, a backup path is chosen, and the process restarts. This loop continues until an active port enables successful packet forwarding.</p>
<fig id="fig-10">
<graphic mimetype="image" mime-subtype="tif" xlink:href="CMC_54215-fig-10.tif"/>
</fig>
</sec>
<sec id="s3_3_2">
<label>3.3.2</label>
<title>Path Computation Module</title>
<p>This module aims to install the system on switches, calculate the recovery backup path before time in case of a link failure, and determine the quickest backup path. The traditional proactive failure recovery method controller must install each switch with the backup path and compute it using a destination-based approach. This module has a proactive link failure recovery mechanism that uses the neighbor-based backup path calculation method to preserve switch storage, compared to the traditional destination-based backup path calculation approach. The path computation module consists of two processes to determine the shortest backup path: the Discovery of the Shortest Backup Path and the Recovery Backup Path Computation.
<list list-type="bullet">
<list-item>
<p>Recovery Backup Path Computation: Recovery Backup Path Calculation calculates the backup path before link failure occurs. In the software-defined network architecture, the controller determines the recovery backup path using proactive and reactive mechanisms. When a link failure is discovered during reactive recovery, the mechanism computes the backup path after detecting the failure that delays recovery. Proactive recovery involves calculating the backup path before link failure occurs, which causes storage overhead but reduces the delay of the recovery process. Leveraging Programming Protocol-independent Packet Processors (P4) capabilities, this process combines a neighbor-based backup path computation technique with a traditional proactive recovery mechanism. Each switch can store only the backup paths of the connected switches by using neighbor-based backup path calculation.</p></list-item>
<list-item>
<p>Discovery of the Shortest Backup Path: Installing Backup Path Information and Finding the Shortest Backup Path are the two stages in the process. Finding the Shortest Backup Path manages to determine the shortest routes between switches. In this step, the shortest path between any two witches is determined. The path between each switch (<italic>Sx</italic>) and its neighbor (<italic>Sy</italic>) through the middle switch (<italic>Sm</italic>) must be determined to obtain the shortest backup path. To accomplish this, we traverse through every switch and save every path on <italic>Sm</italic> that connects two switch neighbors. Algorithm 2 illustrates finding the shortest backup path after navigating all the switches. Here, switches are configured with the shortest backup path. This function is responsible for installing backup path information.</p></list-item>
</list></p>
<fig id="fig-11">
<graphic mimetype="image" mime-subtype="tif" xlink:href="CMC_54215-fig-11.tif"/>
</fig>
<p>The algorithm for the network architecture G &#x003D; (S, E) determines a backup path set. After initializing an empty set B, the Floyd algorithm determines the shortest path matrix. The process then runs through the network&#x2019;s switches, checking each neighboring switch for a backup path. The method then loops over all switches again to identify the shortest route between the current switch and its neighbor, removing the current switch and its neighbor from the path if a backup path is not included in set B. The path and its reverse are added to set B if it does not include the current switch and its neighbor. As a result, the algorithm returns the final set B.</p>
</sec>
</sec>
</sec>
<sec id="s4">
<label>4</label>
<title>Experimental Results and Discussions</title>
<p>This section delves into the pivotal phase of experimental results and discussions, comprehensively analyzing the outcomes of implementing and evaluating the proposed mechanism. This section presents and interprets the data gathered during experiments, shedding light on the proposed mechanism&#x2019;s performance in diverse scenarios. This section is comprised of many subsections. The first section indicates evaluation metrics. The second section discusses the performance evaluation of proposed mechanisms. The third section describes the comparison of existing mechanisms.</p>
<sec id="s4_1">
<label>4.1</label>
<title>Evaluation Metrics</title>
<p>The evaluation employs crucial metrics&#x2014;recovery time, calculation time, and computational overhead&#x2014;to measure the proposed mechanism&#x2019;s performance.</p>
<sec id="s4_1_1">
<label>4.1.1</label>
<title>Recovery Time</title>
<p>The Recovery Time (RT) of link failure measures the time required by the switch to recover from the failure and continue the transmission of packets. The switch must obtain an alternative path to reroute packets if a link or a port fails. The switch of the failed link finds the backup path from its neighbors without notifying the controller.</p>
</sec>
<sec id="s4_1_2">
<label>4.1.2</label>
<title>Calculation Time</title>
<p>Calculation Time (CT) measures how long it takes to calculate every backup path between switches. The controller must install the appropriate backup path into each switch after calculating all switch paths to determine the shortest backup paths.</p>
</sec>
<sec id="s4_1_3">
<label>4.1.3</label>
<title>Computational Overhead</title>
<p>Computational Overhead (CO) in software-defined network link failure recovery encompasses resource utilization incurred by the software-defined network controller and network devices to handle link failures swiftly and efficiently. This metric is crucial for evaluating the efficiency of recovery mechanisms, emphasizing the need for optimized performance to ensure minimal disruption and maintain network integrity.</p>
</sec>
</sec>
<sec id="s4_2">
<label>4.2</label>
<title>Performance Evaluation</title>
<p>The performance evaluation section focuses on assessing the efficiency of the proposed mechanism. This assessment is intricately divided into two categories: packet processing and path computation. These categories are designed to comprehensively evaluate the proposed mechanism, shedding light on its effectiveness in managing packet processing and path computation during link failure scenarios.</p>
<sec id="s4_2_1">
<label>4.2.1</label>
<title>Packet Processing</title>
<p>A key component of the proposed mechanism is packet processing. It is employed to assess the efficiency with which the software-defined exchange point&#x2019;s multi-hop topology handles incoming packets before forwarding them to their designated destination.</p>
<p>The topology to assess the recovery time in the event of a connection failure is shown in <xref ref-type="fig" rid="fig-4">Fig. 4</xref>. The switches are represented by circles with labels ranging from S1 to S8. Solid black lines that sequentially connect the switches represent the primary path. The backup path is A dotted red line connecting S1 and S2 directly. To enable P4, the study substituted bmv2 for Open vSwitch and utilized Mininet to build this architecture. <xref ref-type="table" rid="table-2">Table 2</xref> offers the topology information of <xref ref-type="fig" rid="fig-4">Fig. 4</xref>. It outlines the connections between eight network switches, S1 through S8, categorizing them into primary and backup paths. Specifically, Switch S1 features a backup link to S2, designed to secure network continuity during potential disruptions. The remaining switches, S3 to S8, are connected via primary paths, creating a robust topology that enhances data flow and network redundancy.</p>
<fig id="fig-4">
<label>Figure 4</label>
<caption>
<title>Network topology for evaluation link failure recovery time</title>
</caption>
<graphic mimetype="image" mime-subtype="tif" xlink:href="CMC_54215-fig-4.tif"/>
</fig><table-wrap id="table-2">
<label>Table 2</label>
<caption>
<title>Topology information</title>
</caption>
<table frame="hsides">
<colgroup>
<col align="left"/>
<col align="left"/>
<col align="left"/>
</colgroup>
<thead>
<tr>
<th>Switch</th>
<th>Connected to</th>
<th>Path type</th>
</tr>
</thead>
<tbody>
<tr>
<td>S1</td>
<td>S2</td>
<td>Backup</td>
</tr>
<tr>
<td>S2</td>
<td>S8</td>
<td>Primary</td>
</tr>
<tr>
<td>S3</td>
<td>S1, S4</td>
<td>Primary</td>
</tr>
<tr>
<td>S4</td>
<td>S3, S5</td>
<td>Primary</td>
</tr>
<tr>
<td>S5</td>
<td>S4, S6</td>
<td>Primary</td>
</tr>
<tr>
<td>S6</td>
<td>S5, S7</td>
<td>Primary</td>
</tr>
<tr>
<td>S7</td>
<td>S6, S8</td>
<td>Primary</td>
</tr>
<tr>
<td>S8</td>
<td>S2, S7</td>
<td>Primary</td>
</tr>
</tbody>
</table>
</table-wrap>
<p><xref ref-type="table" rid="table-3">Table 3</xref> compares the recovery times of the proposed mechanism and ENDEAVOUR mechanisms, showing that the proposed mechanism, with proactive backup path installation with P4 utilization, recovers from link failures more efficiently, with recovery times ranging from 19 to 51 ms. In contrast, ENDEAVOUR, which installs backup paths reactively, exhibits longer recovery times between 87 and 163 ms as the number of switches increases. The proposed mechanism utilizes P4 features for rapid packet forwarding upon failure, whereas ENDEAVOUR relies on OpenFlow features to handle affected packets after detecting a failure. The recovery times of ENDEAVOUR and the proposed mechanism for the number of switches in the backup path are displayed in <xref ref-type="fig" rid="fig-5">Fig. 5</xref>. For the proposed mechanism, represented by a blue line, the recovery time begins at approximately 20 ms for 3 switches and rises moderately to just over 50 ms for 8 switches. This gradual incline on the chart suggests that ELFR&#x2019;s recovery time increases slowly as more switches are added, indicating a resilient performance against growing network complexity. In contrast, the ENDEAVOUR system, illustrated by a red line, begins with a recovery time of just above 80 ms for 3 switches and more than doubles to around 160 ms for 8 switches. The ENDEAVOUR line reveals a sharper increase in recovery time with each added switch and potential variability in these times.</p>
<table-wrap id="table-3">
<label>Table 3</label>
<caption>
<title>Evaluation of packet processing</title>
</caption>
<table frame="hsides">
<colgroup>
<col align="left"/>
<col align="left"/>
<col align="left"/>
</colgroup>
<thead>
<tr>
<th>Number of switches in backup path</th>
<th>ELFR Recovery time (RT) (ms)</th>
<th>ENDEAVOUR Recovery time (RT) (ms)</th>
</tr>
</thead>
<tbody>
<tr>
<td>3</td>
<td>19</td>
<td>87</td>
</tr>
<tr>
<td>4</td>
<td>24</td>
<td>96</td>
</tr>
<tr>
<td>5</td>
<td>30</td>
<td>113</td>
</tr>
<tr>
<td>6</td>
<td>34</td>
<td>129</td>
</tr>
<tr>
<td>7</td>
<td>41</td>
<td>144</td>
</tr>
<tr>
<td>8</td>
<td>51</td>
<td>163</td>
</tr>
</tbody>
</table>
</table-wrap><fig id="fig-5">
<label>Figure 5</label>
<caption>
<title>Evaluation of recovery time for packet</title>
</caption>
<graphic mimetype="image" mime-subtype="tif" xlink:href="CMC_54215-fig-5.tif"/>
</fig>
</sec>
<sec id="s4_2_2">
<label>4.2.2</label>
<title>Path Computation</title>
<p>This assesses how long the controller will take to figure out every backup path between switches. To reduce the cost of switch storage and the computation time required by the software-defined network controller in the event of a link failure, this calculates a backup path for each neighbor switch of each switch. Each switch only keeps its neighbors&#x2019; backup paths in case of a connection failure, and the controller installs the rules on the switches after calculations have been made. The controller will inform the appropriate switches about the backup path data via P4Runtime, facilitating communication between the switches and the controller.</p>
<p><xref ref-type="fig" rid="fig-6">Fig. 6</xref> illustrates a network topology with 11 interconnected nodes centered around Node S1, which serves as a major hub connected to Nodes S2 and S3, enhancing network resilience and traffic management. Nodes like S4 and S11 are peripheral endpoints which could be vulnerable to disruptions. In contrast, Nodes S5 and S6 are critical junctions with multiple connections that reinforce the network&#x2019;s routing infrastructure. Secondary pathways, such as S5 to S7, act as backup routes to ensure reliability. <xref ref-type="table" rid="table-4">Table 4</xref> outlines a network topology with Nodes S1 through S11, interconnected primarily in a circular formation from S1 to S10 and looping back to S3. This structure serves as the backbone for the main data traffic flow, optimising data distribution across multiple pathways to enhance the handling of large data volumes, thereby boosting reliability and efficiency. The network also integrates backup paths, specifically from S1 to S3 and S5 to S6, to maintain functionality during primary path failures or congestion. Notably, a disruption between S5 and S7 indicates the necessity of these backup routes for data rerouting in response to failures.</p>
<fig id="fig-6">
<label>Figure 6</label>
<caption>
<title>Topology evaluation for path computation</title>
</caption>
<graphic mimetype="image" mime-subtype="tif" xlink:href="CMC_54215-fig-6.tif"/>
</fig><table-wrap id="table-4">
<label>Table 4</label>
<caption>
<title>Topology information</title>
</caption>
<table frame="hsides">
<colgroup>
<col align="left"/>
<col align="left"/>
<col align="left"/>
</colgroup>
<thead>
<tr>
<th>Nodes</th>
<th>Connected to</th>
<th>Path type</th>
</tr>
</thead>
<tbody>
<tr>
<td>S1</td>
<td>S2</td>
<td>Primary</td>
</tr>
<tr>
<td>S2</td>
<td>S4</td>
<td>Primary</td>
</tr>
<tr>
<td>S4</td>
<td>S5</td>
<td>Primary</td>
</tr>
<tr>
<td>S5</td>
<td>S11</td>
<td>Primary</td>
</tr>
<tr>
<td>S11</td>
<td>S6</td>
<td>Primary</td>
</tr>
<tr>
<td>S6</td>
<td>S9</td>
<td>Primary</td>
</tr>
<tr>
<td>S9</td>
<td>S10</td>
<td>Primary</td>
</tr>
<tr>
<td>S10</td>
<td>S3</td>
<td>Primary</td>
</tr>
<tr>
<td>S3</td>
<td>S2</td>
<td>Primary</td>
</tr>
<tr>
<td>S1</td>
<td>S3</td>
<td>Backup</td>
</tr>
<tr>
<td>S5</td>
<td>S6</td>
<td>Backup</td>
</tr>
<tr>
<td>S5</td>
<td>S7</td>
<td>Failed</td>
</tr>
</tbody>
</table>
</table-wrap>
<p>Installing routing table entries in S7, S10, and S9&#x2014;a total of three entries&#x2014;is the standard procedure for implementing the backup path in the topology. We can protect switch storage by using the well-proven proactive failure recovery technique in conjunction with the ELFR data plane. The ELFR data plane thus requires only one switch entry for every backup path. As shown in <xref ref-type="fig" rid="fig-6">Fig. 6</xref>, we can save the entire backup path information (i.e., S7&#x2013;S10&#x2013;S9&#x2013;S6) on Switch S7, and when connection S7&#x2013;S5 breaks, we can add the path to the header of affected packets. Consequently, the following switches can transfer the packet without storing any information about the backup path by extracting the forwarding information from the packet header.</p>
<p><xref ref-type="table" rid="table-5">Table 5</xref> compares the calculating times in milliseconds (ms) for the proposed mechanism and ENDEAVOUR mechanisms across networks with 2 to 7 nodes. The proposed mechanism consistently records faster computing times, increasing from 20 to 60 ms with the network size. In contrast, ENDEAVOUR starts at 45 ms for a 2-node network and climbs to 112 ms for a 6-node network but reduces to 66 ms for 7 nodes, suggesting improved efficiencies at larger scales. Overall, the proposed mechanism displays greater computational efficiency, particularly in smaller networks, making it a preferable choice for network management and optimization. <xref ref-type="fig" rid="fig-7">Fig. 7</xref> compares the calculating times in milliseconds (ms) for two mechanisms, the proposed mechanism and ENDEAVOUR, across networks varying from 2 to 7 nodes. The graph shows the proposed mechanism, depicted with a blue line, consistently maintaining lower computation times than ENDEAVOUR, represented by a red line. The proposed mechanism&#x2019;s computation time increases gradually, indicating stable scalability as the network size expands. Conversely, ENDEAVOUR&#x2019;s times start higher and rise sharply with network growth, except for a notable dip at 7 nodes, suggesting possible optimization or efficiency improvements at this specific network size.</p>
<table-wrap id="table-5">
<label>Table 5</label>
<caption>
<title>Evaluation of path computation</title>
</caption>
<table frame="hsides">
<colgroup>
<col align="left"/>
<col align="left"/>
<col align="left"/>
</colgroup>
<thead>
<tr>
<th>Number of nodes</th>
<th>ELFR Calculation time (CT) (ms)</th>
<th>ENDEAVOUR Calculation time (CT) (ms)</th>
</tr>
</thead>
<tbody>
<tr>
<td>2</td>
<td>20</td>
<td>45</td>
</tr>
<tr>
<td>5</td>
<td>41</td>
<td>80</td>
</tr>
<tr>
<td>6</td>
<td>60</td>
<td>112</td>
</tr>
<tr>
<td>7</td>
<td>36</td>
<td>66</td>
</tr>
</tbody>
</table>
</table-wrap><fig id="fig-7">
<label>Figure 7</label>
<caption>
<title>Evaluation of calculation time for path computation</title>
</caption>
<graphic mimetype="image" mime-subtype="tif" xlink:href="CMC_54215-fig-7.tif"/>
</fig>
<p>Additionally, the proposed mechanism quickly calculates backup paths by targeting nearby switches, reducing the number of paths to compute. Additionally, since backup routes connect neighboring nodes, finding alternatives is faster, enhancing the system&#x2019;s efficiency.</p>
</sec>
<sec id="s4_2_3">
<label>4.2.3</label>
<title>Memory Storage</title>
<p>The ELFR mechanism incorporates an assessment of the memory storage overhead involved in path computation, aiming to minimize the additional memory required for processing routing information. This evaluation is significant for optimizing network performance, ensuring that routing is effective and resource-efficient, and conserving memory usage to facilitate a leaner network infrastructure.</p>
<p><xref ref-type="table" rid="table-6">Table 6</xref> compares memory usage in megabytes (MB) for the proposed mechanism and the ENDEAVOUR mechanism across network Nodes S1 through S11. The proposed mechanism shows a minimal memory footprint, ranging from 0 to 2 MB per node, indicating its efficiency. In contrast, ENDEAVOUR consistently uses more memory, with usage between 2 to 4 MB per node. Notably, for Nodes S9 and S10, ELFR shows no memory usage, suggesting exceptional efficiency or non-engagement with these nodes, while ENDEAVOUR uses 2 MB at each. This data highlights the proposed mechanism as a more memory-efficient option, ideal for resource-sensitive networks. Conversely, ENDEAVOUR&#x2019;s higher consumption suggests a more feature-rich mechanism, offering enhanced capabilities at the expense of greater resource use. <xref ref-type="fig" rid="fig-8">Fig. 8</xref> graphically depicts the memory usage in megabytes (MB) of two routing mechanisms, the proposed mechanism and ENDEAVOUR, across network Nodes S1 to S11. The proposed mechanism consistently shows lower memory usage, generally maintaining a level range that implies a more efficient and effective routing approach. On the other hand, ENDEAVOUR&#x2019;s memory usage fluctuates significantly across the nodes and is overall higher, indicating the use of more complex algorithms or larger routing tables.</p>
<table-wrap id="table-6">
<label>Table 6</label>
<caption>
<title>Evaluation of computational overhead</title>
</caption>
<table frame="hsides">
<colgroup>
<col align="left"/>
<col align="left"/>
<col align="left"/>
</colgroup>
<thead>
<tr>
<th>Node</th>
<th>ELFR memory usage (Megabyte)</th>
<th>ENDEAVOUR memory usage (Megabyte)</th>
</tr>
</thead>
<tbody>
<tr>
<td>S1</td>
<td>1</td>
<td>2</td>
</tr>
<tr>
<td>S2</td>
<td>2</td>
<td>4</td>
</tr>
<tr>
<td>S4</td>
<td>2</td>
<td>4</td>
</tr>
<tr>
<td>S5</td>
<td>1</td>
<td>4</td>
</tr>
<tr>
<td>S6</td>
<td>1</td>
<td>3</td>
</tr>
<tr>
<td>S7</td>
<td>1</td>
<td>2</td>
</tr>
<tr>
<td>S9</td>
<td>0</td>
<td>2</td>
</tr>
<tr>
<td>S10</td>
<td>0</td>
<td>2</td>
</tr>
<tr>
<td>S11</td>
<td>2</td>
<td>4</td>
</tr>
</tbody>
</table>
</table-wrap><fig id="fig-8">
<label>Figure 8</label>
<caption>
<title>Evaluation of computational overhead</title>
</caption>
<graphic mimetype="image" mime-subtype="tif" xlink:href="CMC_54215-fig-8.tif"/>
</fig>
</sec>
<sec id="s4_2_4">
<label>4.2.4</label>
<title>Comparison with Existing Mechanisms</title>
<p>Regarding recovery time for packet processing, computation time for path computation, and computational overhead for memory storage, the proposed mechanism is compared with current multi-hop software-defined exchange point-based link failure recovery mechanisms [<xref ref-type="bibr" rid="ref-20">20</xref>,<xref ref-type="bibr" rid="ref-21">21</xref>]. A comparison of the performance of two network techniques, the proposed mechanism and ENDEAVOUR, for recovery time (RT), calculating time (CT), and computational overhead (CO) is shown in <xref ref-type="table" rid="table-7">Table 7</xref>. Enhanced Link Failure Rerouitng (ELFR) shows greater efficiency with lower metrics&#x2014;37.5% for RT and 33.33% for CT and CO. Conversely, ENDEAVOUR requires more resources, shown by higher percentages of 62.5% for RT and 66.67% for CT and CO. <xref ref-type="fig" rid="fig-9">Fig. 9</xref> displays a bar chart comparing two network mechanisms, ELFR and ENDEAVOUR, across three metrics: Recovery Time (RT), Calculating Time (CT), and Computational Overhead (CO). Each mechanism is represented by three bars corresponding to these metrics. Enhanced Link Failure Rerouting (ELFR) consistently records lower percentages across all metrics, highlighting its greater efficiency than ENDEAVOUR.</p>
<table-wrap id="table-7">
<label>Table 7</label>
<caption>
<title>Comparison of proposed mechanism with existing mechanisms</title>
</caption>
<table frame="hsides">
<colgroup>
<col align="left"/>
<col align="left"/>
<col align="left"/>
<col align="left"/>
</colgroup>
<thead>
<tr>
<th>Mechanism</th>
<th>Packet processing</th>
<th align="center" colspan="2">Path computation</th>
</tr>
<tr>
<th/>
<th>RT (%)</th>
<th>CT (%)</th>
<th>CO (%)</th>
</tr>
</thead>
<tbody>
<tr>
<td>Enhanced link failure rerouting (ELFR)</td>
<td>37.5%</td>
<td>33.33%</td>
<td>33.33%</td>
</tr>
<tr>
<td>ENDEAVOUR</td>
<td>62.5%</td>
<td>66.67%</td>
<td>66.67%</td>
</tr>
</tbody>
</table>
</table-wrap><fig id="fig-9">
<label>Figure 9</label>
<caption>
<title>Comparison of ELFR with existing</title>
</caption>
<graphic mimetype="image" mime-subtype="tif" xlink:href="CMC_54215-fig-9.tif"/>
</fig>
</sec>
</sec>
</sec>
<sec id="s5">
<label>5</label>
<title>Conclusion and Future Work</title>
<p>In conclusion, this paper proposed the Enhanced Link Failure Rerouting (ELFR) mechanism, which significantly improves managing multi-hop Software-Defined Exchange Points (SDXs). The proposed mechanism effectively reduces recovery time, enhances path computation efficiency, and optimizes switch memory usage by leveraging advanced algorithms and protocol-independent packet processors (P4). The evaluation results demonstrate that the proposed mechanism outperforms existing mechanisms, such as ENDEAVOUR, particularly in recovery time and computational overhead, making it a robust solution for complex software-defined exchange point environments.</p>
<p>Future work should explore extending the proposed mechanism&#x2019;s capabilities to handle multiple simultaneous link failures and address potential loop issues. Additionally, real-world testing under diverse network conditions is essential to validate the mechanism&#x2019;s robustness and adaptability. These efforts will help further refine the proposed mechanism and ensure its effectiveness in broader software-defined exchange point applications.</p>
</sec>
</body>
<back>
<ack>
<p>The authors thank SIMAD University, Somalia, for its financial assistance.</p>
</ack>
<sec><title>Funding Statement</title>
<p>The authors received no specific funding for this study.</p>
</sec>
<sec><title>Author Contributions</title>
<p>Abdijalil Abdullahi contributed to the writing, design, implementation, and experimental result analysis of the proposed work. Selvakumar Manickam contributed to leading, reviewing, and removing grammatical problems. Each author participated sufficiently in the production to take public responsibility for the relevant percentage of the content. All authors reviewed the results and approved the final version of the manuscript.</p>
</sec>
<sec sec-type="data-availability"><title>Availability of Data and Materials</title>
<p>This article does not involve data availability, and this section is not applicable.</p>
</sec>
<sec><title>Ethics Approval</title>
<p>Not applicable.</p>
</sec>
<sec sec-type="COI-statement"><title>Conflicts of Interest</title>
<p>The authors declare that they have no conflicts of interest to report regarding the present study.</p>
</sec>
<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>A.</given-names> <surname>Basit</surname></string-name> <etal>et al.</etal></person-group>, &#x201C;<article-title>Interconnecting networks with optimized service provisioning</article-title>,&#x201D; <source>Telecommun Syst.</source>, vol. <volume>73</volume>, no. <issue>3</issue>, pp. <fpage>223</fpage>&#x2013;<lpage>239</lpage>, <year>Aug. 2020</year>. doi: <pub-id pub-id-type="doi">10.1007/s11235-019-00606-3</pub-id>.</mixed-citation></ref>
<ref id="ref-2"><label>[2]</label><mixed-citation publication-type="journal"><person-group person-group-type="author"><string-name><given-names>T. B.</given-names> <surname>da Silva</surname></string-name> <etal>et al.</etal></person-group>, &#x201C;<article-title>Toward next-generation and service-defined networks: A NovaGenesis control agent for future Internet exchange point</article-title>,&#x201D; <source>IEEE Netw</source>, vol. <volume>36</volume>, no. <issue>3</issue>, pp. <fpage>74</fpage>&#x2013;<lpage>81</lpage>, <year>Jul. 2022</year>. doi: <pub-id pub-id-type="doi">10.1109/MNET.008.2100555</pub-id>.</mixed-citation></ref>
<ref id="ref-3"><label>[3]</label><mixed-citation publication-type="conf-proc"><person-group person-group-type="author"><string-name><given-names>V.</given-names> <surname>Stocker</surname></string-name>, <string-name><given-names>G.</given-names> <surname>Knieps</surname></string-name>, and <string-name><given-names>C.</given-names> <surname>Dietzel</surname></string-name></person-group>, &#x201C;<article-title>The rise and evolution of clouds and private networks-internet interconnection, ecosystem fragmentation</article-title>,&#x201D; in <conf-name>TPRC49: 49th Res. Conf. Commun., Inform. Internet Policy</conf-name>, <year>Aug. 2021</year>. doi: <pub-id pub-id-type="doi">10.2139/ssrn.3910108</pub-id>.</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>P.</given-names> <surname>Marcos</surname></string-name>, <string-name><given-names>M.</given-names> <surname>Chiesa</surname></string-name>, <string-name><given-names>C.</given-names> <surname>Dietzel</surname></string-name>, <string-name><given-names>M.</given-names> <surname>Canini</surname></string-name>, and <string-name><given-names>M.</given-names> <surname>Barcellos</surname></string-name></person-group>, &#x201C;<article-title>A survey on the current internet interconnection practices</article-title>,&#x201D; <source>ACM SIGCOMM Comput. Commun. Rev.</source>, vol. <volume>50</volume>, no. <issue>1</issue>, pp. <fpage>10</fpage>&#x2013;<lpage>17</lpage>, <year>Mar. 2020</year>. doi: <pub-id pub-id-type="doi">10.1145/3390251.339025</pub-id>.</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>T.</given-names> <surname>Hoeschele</surname></string-name>, <string-name><given-names>C.</given-names> <surname>Dietzel</surname></string-name>, <string-name><given-names>D.</given-names> <surname>Kopp</surname></string-name>, <string-name><given-names>F. H. P.</given-names> <surname>Fitzek</surname></string-name>, and <string-name><given-names>M.</given-names> <surname>Reisslein</surname></string-name></person-group>, &#x201C;<article-title>Importance of Internet exchange point (IXP) infrastructure for 5G: Estimating the impact of 5G use cases</article-title>,&#x201D; <source>Telecomm. Policy</source>, vol. <volume>45</volume>, no. <issue>3</issue>, <year>Apr. 2021</year>, Art. no. <comment>102091</comment>. doi: <pub-id pub-id-type="doi">10.1016/j.telpol.2020.102091</pub-id>.</mixed-citation></ref>
<ref id="ref-6"><label>[6]</label><mixed-citation publication-type="conf-proc"><person-group person-group-type="author"><string-name><given-names>Y.</given-names> <surname>Dabone</surname></string-name>, <string-name><given-names>T. F.</given-names> <surname>Ouedraogo</surname></string-name>, and <string-name><given-names>P. J.</given-names> <surname>Kouraogo</surname></string-name></person-group>, &#x201C;<article-title>Improving the linkage of Internet exchange points through connected ISPs ASes</article-title>,&#x201D; in <conf-name>Comput. Sci. On-Line Conf.</conf-name>, <publisher-name>Springer</publisher-name>, <year>Jul. 2022</year>, pp. <fpage>180</fpage>&#x2013;<lpage>187</lpage>. doi: <pub-id pub-id-type="doi">10.1007/978-3-031-09073-8_17</pub-id>.</mixed-citation></ref>
<ref id="ref-7"><label>[7]</label><mixed-citation publication-type="other"><person-group person-group-type="author"><string-name><given-names>T.</given-names> <surname>B&#x00F6;ttger</surname></string-name> <etal>et al.</etal></person-group>, &#x201C;<article-title>Shaping the Internet: 10 years of IXP growth</article-title>,&#x201D; <year>Oct. 2019</year>, <comment><italic>arXiv:1810.10963</italic></comment>.</mixed-citation></ref>
<ref id="ref-8"><label>[8]</label><mixed-citation publication-type="conf-proc"><person-group person-group-type="author"><string-name><given-names>L. M.</given-names> <surname>Bertholdo</surname></string-name> <etal>et al.</etal></person-group>, &#x201C;<article-title>On the asymmetry of Internet eXchange points-why should IXPs and CDNs care?</article-title>,&#x201D; in <conf-name>2022 18th Int. Conf. Netw. Serv. Manag. (CNSM)</conf-name>, <publisher-loc>Thessaloniki, Greece</publisher-loc>, <publisher-name>IEEE</publisher-name>, <year>Dec. 2022</year>, pp. <fpage>73</fpage>&#x2013;<lpage>81</lpage>. doi: <pub-id pub-id-type="doi">10.23919/CNSM55787.2022.9964817</pub-id>.</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>D.&#x00D3;.</given-names> <surname>Briain</surname></string-name>, <string-name><given-names>D.</given-names> <surname>Denieffe</surname></string-name>, <string-name><given-names>D.</given-names> <surname>Okello</surname></string-name>, and <string-name><given-names>Y.</given-names> <surname>Kavanagh</surname></string-name></person-group>, &#x201C;<article-title>Enabling models of Internet eXchange Points for developing contexts</article-title>,&#x201D; <source>Dev. Eng.</source>, vol. <volume>5</volume>, no. Sep. <issue>2020</issue>, <year>2020</year>, Art. no. <comment>100057</comment>. doi: <pub-id pub-id-type="doi">10.1016/j.deveng.2020.100057</pub-id>.</mixed-citation></ref>
<ref id="ref-10"><label>[10]</label><mixed-citation publication-type="conf-proc"><person-group person-group-type="author"><string-name><given-names>J.</given-names> <surname>Chung</surname></string-name>, <string-name><given-names>H.</given-names> <surname>Owen</surname></string-name>, and <string-name><given-names>R.</given-names> <surname>Clark</surname></string-name></person-group>, &#x201C;<article-title>SDX architectures: A qualitative analysis</article-title>,&#x201D; in <conf-name>SoutheastCon 2016</conf-name>, <publisher-loc>Norfolk, VA, USA</publisher-loc>, <publisher-name>IEEE</publisher-name>, <year>Jul. 2016</year>, pp. <fpage>1</fpage>&#x2013;<lpage>8</lpage>. doi: <pub-id pub-id-type="doi">10.1109/SECON.2016.7506749</pub-id>.</mixed-citation></ref>
<ref id="ref-11"><label>[11]</label><mixed-citation publication-type="conf-proc"><person-group person-group-type="author"><string-name><given-names>M.</given-names> <surname>Cevik</surname></string-name> <etal>et al.</etal></person-group>, &#x201C;<article-title>Towards production deployment of a SDX control framework</article-title>,&#x201D; in <conf-name>2022 Int. Conf. Comput. Commun. Netw. (ICCCN)</conf-name>, <publisher-loc>Honolulu, HI, USA</publisher-loc>, <publisher-name>IEEE</publisher-name>, <year>Sep. 2022</year>, pp. <fpage>1</fpage>&#x2013;<lpage>10</lpage>. doi: <pub-id pub-id-type="doi">10.1109/ICCCN54977.2022.9868884</pub-id>.</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>P. -W.</given-names> <surname>Tsai</surname></string-name>, <string-name><given-names>C. -W.</given-names> <surname>Tsai</surname></string-name>, <string-name><given-names>C. -W.</given-names> <surname>Hsu</surname></string-name>, and <string-name><given-names>C. -S.</given-names> <surname>Yang</surname></string-name></person-group>, &#x201C;<article-title>Network monitoring in software-defined networking: A review</article-title>,&#x201D; <source>IEEE Syst. J.</source>, vol. <volume>12</volume>, no. <issue>4</issue>, pp. <fpage>3958</fpage>&#x2013;<lpage>3969</lpage>, <year>Dec. 2018</year>. doi: <pub-id pub-id-type="doi">10.1109/JSYST.2018.2798060</pub-id>.</mixed-citation></ref>
<ref id="ref-13"><label>[13]</label><mixed-citation publication-type="conf-proc"><person-group person-group-type="author"><string-name><given-names>J.</given-names> <surname>Mambretti</surname></string-name> <etal>et al.</etal></person-group>, &#x201C;<article-title>Designing and deploying a bioinformatics software-defined network exchange (SDX): Architecture, services, capabilities, and foundation technologies</article-title>,&#x201D; in <conf-name>2017 20th Conf. Innov. Clouds, Internet Netw. (ICIN)</conf-name>, <publisher-loc>Paris, France</publisher-loc>, <publisher-name>IEEE</publisher-name>, <year>Apr. 2017</year>, pp. <fpage>135</fpage>&#x2013;<lpage>142</lpage>. doi: <pub-id pub-id-type="doi">10.1109/ICIN.2017.7899403</pub-id>.</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>A.</given-names> <surname>Gupta</surname></string-name> <etal>et al.</etal></person-group>, &#x201C;<article-title>SDX: A software defined internet exchange</article-title>,&#x201D; in <source>ACM SIGCOMM Computer Communication Review</source>, <publisher-loc>New York, NY, USA, ACM</publisher-loc>, <year>Aug. 2014</year>, pp. <fpage>551</fpage>&#x2013;<lpage>562</lpage>. doi: <pub-id pub-id-type="doi">10.1145/2740070.2626300</pub-id>.</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>R.</given-names> <surname>Birkner</surname></string-name>, <string-name><given-names>A.</given-names> <surname>Gupta</surname></string-name>, <string-name><given-names>N.</given-names> <surname>Feamster</surname></string-name>, and <string-name><given-names>L.</given-names> <surname>Vanbever</surname></string-name></person-group>, &#x201C;<article-title>SDX-based flexibility or internet correctness? Pick two!</article-title>&#x201D; <source>SOSR 2017-Proc. 2017 Symp. SDN Res.</source>, vol. <volume>9</volume>, pp. <fpage>1</fpage>&#x2013;<lpage>7</lpage>, <year>Apr. 2017</year>. doi: <pub-id pub-id-type="doi">10.1145/3050220.3050221</pub-id>.</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>A.</given-names> <surname>Abdullahi</surname></string-name>, <string-name><given-names>S.</given-names> <surname>Manickam</surname></string-name>, <string-name><given-names>S.</given-names> <surname>Karuppayah</surname></string-name>, and <string-name><given-names>M. A.</given-names> <surname>Al-Shareeda</surname></string-name></person-group>, &#x201C;<article-title>Proposed enhanced link failure rerouting mechanism for software-defined exchange point</article-title>,&#x201D; <source>Indones J. Electr. Eng. Comput. Sci.</source>, vol. <volume>31</volume>, no. <issue>1</issue>, pp. <fpage>259</fpage>&#x2013;<lpage>270</lpage>, <year>Jul. 2023</year>. doi: <pub-id pub-id-type="doi">10.11591/ijeecs.v31.i1.pp259-270</pub-id>.</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>J.</given-names> <surname>Ali</surname></string-name>, <string-name><given-names>G. -M.</given-names> <surname>Lee</surname></string-name>, <string-name><given-names>B. -H.</given-names> <surname>Roh</surname></string-name>, <string-name><given-names>D. K.</given-names> <surname>Ryu</surname></string-name>, and <string-name><given-names>G.</given-names> <surname>Park</surname></string-name></person-group>, &#x201C;<article-title>Software-defined networking approaches for link failure recovery: A survey</article-title>,&#x201D; <source>Sustainability</source>, vol. <volume>12</volume>, no. <issue>10</issue>, <year>May 2020</year>, Art. no. <comment>4255</comment>. doi: <pub-id pub-id-type="doi">10.3390/su12104255</pub-id>.</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>Q.</given-names> <surname>Li</surname></string-name>, <string-name><given-names>Y.</given-names> <surname>Liu</surname></string-name>, <string-name><given-names>Z.</given-names> <surname>Zhu</surname></string-name>, <string-name><given-names>H.</given-names> <surname>Li</surname></string-name>, and <string-name><given-names>Y.</given-names> <surname>Jiang</surname></string-name></person-group>, &#x201C;<article-title>BOND: Flexible failure recovery in software defined networks</article-title>,&#x201D; <source>Comput. Netw.</source>, vol. <volume>149</volume>, no. <issue>5</issue>, pp. <fpage>1</fpage>&#x2013;<lpage>12</lpage>, <year>Feb. 2019</year>. doi: <pub-id pub-id-type="doi">10.1016/j.comnet.2018.11.020</pub-id>.</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>A.</given-names> <surname>Abdullahi</surname></string-name>, <string-name><given-names>S.</given-names> <surname>Manickam</surname></string-name>, and <string-name><given-names>S.</given-names> <surname>Karuppayah</surname></string-name></person-group>, &#x201C;<article-title>A review of scalability issues in software-defined exchange point (SDX) approaches: State-of-the-art</article-title>,&#x201D; <source>IEEE Access</source>, vol. <volume>9</volume>, pp. <fpage>74499</fpage>&#x2013;<lpage>74509</lpage>, <year>Mar. 2021</year>. doi: <pub-id pub-id-type="doi">10.1109/ACCESS.2021.3069808</pub-id>.</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>M.</given-names> <surname>Bruyere</surname></string-name> <etal>et al.</etal></person-group>, &#x201C;<article-title>Rethinking IXPs&#x2019; architecture in the age of SDN</article-title>,&#x201D; <source>IEEE J. Sel. Areas Commun.</source>, vol. <volume>36</volume>, no. <issue>12</issue>, pp. <fpage>2667</fpage>&#x2013;<lpage>2674</lpage>, <year>Dec. 2018</year>. doi: <pub-id pub-id-type="doi">10.1109/JSAC.2018.2871294</pub-id>.</mixed-citation></ref>
<ref id="ref-21"><label>[21]</label><mixed-citation publication-type="journal"><person-group person-group-type="author"><string-name><given-names>G.</given-names> <surname>Antichi</surname></string-name> <etal>et al.</etal></person-group>, &#x201C;<article-title>ENDEAVOUR: A scalable SDN architecture for real-world IXPs</article-title>,&#x201D; <source>IEEE J. Sel. Areas Commun.</source>, vol. <volume>35</volume>, no. <issue>11</issue>, pp. <fpage>2553</fpage>&#x2013;<lpage>2562</lpage>, <year>Nov. 2017</year>. doi: <pub-id pub-id-type="doi">10.1109/JSAC.2017.2760398</pub-id>.</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>J.</given-names> <surname>Ali</surname></string-name>, <string-name><given-names>G.</given-names> <surname>Shan</surname></string-name>, <string-name><given-names>N.</given-names> <surname>Gul</surname></string-name>, and <string-name><given-names>B.</given-names> <surname>Roh</surname></string-name></person-group>, &#x201C;<article-title>An intelligent blockchain-based secure link failure recovery framework for software-defined internet-of-things</article-title>,&#x201D; <source>J. Grid Comput</source>, vol. <volume>21</volume>, no. <issue>4</issue>, <year>Oct. 2023</year>, Art. no. 57. doi: <pub-id pub-id-type="doi">10.1007/s10723-023-09693-8</pub-id>.</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>V.</given-names> <surname>Muthumanikandan</surname></string-name> and <string-name><given-names>C.</given-names> <surname>Valliyammai</surname></string-name></person-group>, &#x201C;<article-title>Link failure recovery using shortest path fast rerouting technique in SDN</article-title>,&#x201D; <source>Wirel. Pers. Commun.</source>, vol. <volume>97</volume>, no. <issue>2</issue>, pp. <fpage>2475</fpage>&#x2013;<lpage>2495</lpage>, <year>Jun. 2017</year>. doi: <pub-id pub-id-type="doi">10.1007/s11277-017-4618-0</pub-id>.</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>T.</given-names> <surname>Holterbach</surname></string-name>, <string-name><given-names>S.</given-names> <surname>Vissicchio</surname></string-name>, <string-name><given-names>A.</given-names> <surname>Dainotti</surname></string-name>, and <string-name><given-names>L.</given-names> <surname>Vanbever</surname></string-name></person-group>, &#x201C;<article-title>SWIFT predictive fast reroute</article-title>,&#x201D; in <conf-name>Proc. Conf. ACM Spec. Interes. Gr. Data Commun.</conf-name>, <year>Aug. 2017</year>, pp. <fpage>460</fpage>&#x2013;<lpage>473</lpage>. doi: <pub-id pub-id-type="doi">10.1145/3098822.3098856</pub-id>.</mixed-citation></ref>
<ref id="ref-25"><label>[25]</label><mixed-citation publication-type="conf-proc"><person-group person-group-type="author"><string-name><given-names>P.</given-names> <surname>Mao</surname></string-name>, <string-name><given-names>R.</given-names> <surname>Birkner</surname></string-name>, <string-name><given-names>T.</given-names> <surname>Holterbach</surname></string-name>, and <string-name><given-names>L.</given-names> <surname>Vanbever</surname></string-name></person-group>, &#x201C;<article-title>Boosting the BGP convergence in SDXes with SWIFT</article-title>,&#x201D; in <conf-name>SIGCOMM Posters Demos 2017-Proc. 2017 SIGCOMM Posters Demos</conf-name>, <year>Aug. 2017</year>, pp. <fpage>1</fpage>&#x2013;<lpage>2</lpage>. doi: <pub-id pub-id-type="doi">10.1145/3123878.3131965</pub-id>.</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>M.</given-names> <surname>Chiesa</surname></string-name> <etal>et al.</etal></person-group>, &#x201C;<article-title>PURR: A primitive for reconfigurable fast reroute</article-title>,&#x201D; <source>ACM Conf. Emerg. Netw. Exp. Technol.</source>, pp. <fpage>1</fpage>&#x2013;<lpage>14</lpage>, <year>Dec. 2019</year>. doi: <pub-id pub-id-type="doi">10.1145/3359989.3365410</pub-id>.</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>M.</given-names> <surname>He</surname></string-name> <etal>et al.</etal></person-group>, &#x201C;<article-title>A rerouting framework against routing interruption for secure network management</article-title>,&#x201D; <source>IEEE Access</source>, vol. <volume>7</volume>, pp. <fpage>143620</fpage>&#x2013;<lpage>143630</lpage>, <year>Oct. 2019</year>. doi: <pub-id pub-id-type="doi">10.1109/ACCESS.2019.2945777</pub-id>.</mixed-citation></ref>
<ref id="ref-28"><label>[28]</label><mixed-citation publication-type="journal"><person-group person-group-type="author"><string-name><given-names>T.</given-names> <surname>Semong</surname></string-name> <etal>et al.</etal></person-group>, &#x201C;<article-title>A review on software defined networking as a solution to link failures</article-title>,&#x201D; <source>Sci. African.</source>, vol. <volume>21</volume>, no. <issue>18</issue>, <year>Sep. 2023</year>, Art. no. <comment>e01865</comment>. doi: <pub-id pub-id-type="doi">10.1016/j.sciaf.2023.e01865</pub-id>.</mixed-citation></ref>
<ref id="ref-29"><label>[29]</label><mixed-citation publication-type="journal"><person-group person-group-type="author"><string-name><given-names>S.</given-names> <surname>Petale</surname></string-name> and <string-name><given-names>J.</given-names> <surname>Thangaraj</surname></string-name></person-group>, &#x201C;<article-title>Link failure recovery mechanism in software defined networks</article-title>,&#x201D; <source>IEEE J. Sel. Areas Commun.</source>, vol. <volume>38</volume>, no. <issue>7</issue>, pp. <fpage>1285</fpage>&#x2013;<lpage>1292</lpage>, <year>Apr. 2020</year>. doi: <pub-id pub-id-type="doi">10.1109/JSAC.2020.2986668</pub-id>.</mixed-citation></ref>
<ref id="ref-30"><label>[30]</label><mixed-citation publication-type="journal"><person-group person-group-type="author"><string-name><given-names>S.</given-names> <surname>Kaur</surname></string-name>, <string-name><given-names>K.</given-names> <surname>Kumar</surname></string-name>, and <string-name><given-names>N.</given-names> <surname>Aggarwal</surname></string-name></person-group>, &#x201C;<article-title>A review on P4-Programmable data planes: Architecture, research efforts, and future directions</article-title>,&#x201D; <source>Comput. Commun.</source>, vol. <volume>170</volume>, no. <issue>1</issue>, pp. <fpage>109</fpage>&#x2013;<lpage>129</lpage>, <year>2021</year>. doi: <pub-id pub-id-type="doi">10.1016/j.comcom.2021.01.027</pub-id>.</mixed-citation></ref>
<ref id="ref-31"><label>[31]</label><mixed-citation publication-type="journal"><person-group person-group-type="author"><string-name><given-names>H.</given-names> <surname>Miura</surname></string-name>, <string-name><given-names>K.</given-names> <surname>Hirata</surname></string-name>, and <string-name><given-names>T.</given-names> <surname>Tachibana</surname></string-name></person-group>, &#x201C;<article-title>P4-based design of fast failure recovery for software-defined networks</article-title>,&#x201D; <source>Comput. Netw.</source>, vol. <volume>216</volume>, no. <issue>2</issue>, <year>Oct. 2022</year>, Art. no. <comment>109274</comment>. doi: <pub-id pub-id-type="doi">10.1016/j.comnet.2022.109274</pub-id>.</mixed-citation></ref>
<ref id="ref-32"><label>[32]</label><mixed-citation publication-type="conf-proc"><person-group person-group-type="author"><string-name><given-names>D.</given-names> <surname>Wagner</surname></string-name>, <string-name><given-names>M.</given-names> <surname>Wichtlhuber</surname></string-name>, <string-name><given-names>C.</given-names> <surname>Dietzel</surname></string-name>, <string-name><given-names>J.</given-names> <surname>Blendin</surname></string-name>, and <string-name><given-names>A.</given-names> <surname>Feldmann</surname></string-name></person-group>, &#x201C;<article-title>P4IX: A concept for P4 programmable data planes at IXPs</article-title>,&#x201D; in <conf-name>Proc. ACM SIGCOMM Workshop Future Internet Rout. Address.</conf-name>, <year>Sep. 2022</year>, pp. <fpage>72</fpage>&#x2013;<lpage>78</lpage>. doi: <pub-id pub-id-type="doi">10.1145/3527974.3545725</pub-id>.</mixed-citation></ref>
<ref id="ref-33"><label>[33]</label><mixed-citation publication-type="conf-proc"><person-group person-group-type="author"><string-name><given-names>M. V. B.</given-names> <surname>da Silva</surname></string-name>, <string-name><given-names>A. S.</given-names> <surname>Jacobs</surname></string-name>, <string-name><given-names>R. J.</given-names> <surname>Pfitscher</surname></string-name>, and <string-name><given-names>L. Z.</given-names> <surname>Granville</surname></string-name></person-group>, &#x201C;<article-title>IDEAFIX: Identifying elephant flows in P4-based IXP networks</article-title>,&#x201D; in <conf-name>2018 IEEE Global Commun. Conf. (GLOBECOM)</conf-name>, <publisher-loc>Abu Dhabi, United Arab Emirates</publisher-loc>, <publisher-name>IEEE</publisher-name>, <year>Feb. 2018</year>, pp. <fpage>1</fpage>&#x2013;<lpage>6</lpage>. doi: <pub-id pub-id-type="doi">10.1109/GLOCOM.2018.8647685</pub-id>.</mixed-citation></ref>
<ref id="ref-34"><label>[34]</label><mixed-citation publication-type="journal"><person-group person-group-type="author"><string-name><given-names>J.</given-names> <surname>Xu</surname></string-name>, <string-name><given-names>S.</given-names> <surname>Xie</surname></string-name>, and <string-name><given-names>J.</given-names> <surname>Zhao</surname></string-name></person-group>, &#x201C;<article-title>P4Neighbor: Efficient link failure recovery with programmable switches</article-title>,&#x201D; <source>IEEE Trans. Netw. Serv. Manag.</source>, vol. <volume>18</volume>, no. <issue>1</issue>, pp. <fpage>388</fpage>&#x2013;<lpage>401</lpage>, <year>Jan. 2021</year>. doi: <pub-id pub-id-type="doi">10.1109/TNSM.2021.3050478</pub-id>.</mixed-citation></ref>
<ref id="ref-35"><label>[35]</label><mixed-citation publication-type="journal"><person-group person-group-type="author"><string-name><given-names>Z.</given-names> <surname>Li</surname></string-name>, <string-name><given-names>Y.</given-names> <surname>Hu</surname></string-name>, <string-name><given-names>J.</given-names> <surname>Wu</surname></string-name>, and <string-name><given-names>J.</given-names> <surname>Lu</surname></string-name></person-group>, &#x201C;<article-title>P4Resilience: Scalable resilience for multi-failure recovery in SDN with programmable data plane</article-title>,&#x201D; <source>Comput. Netw.</source>, vol. <volume>208</volume>, <year>May 2022</year>, Art. no. <comment>108896</comment>. doi: <pub-id pub-id-type="doi">10.1016/j.comnet.2022.108896</pub-id>.</mixed-citation></ref>
</ref-list>
</back></article>