FL-SDUAN: A Fuzzy Logic-Based Routing Scheme for Software-Deﬁned Underwater Acoustic Networks

: In underwater acoustic networks, the accurate estimation of routing weights is NP-hard due to the time-varying environment. Fuzzy logic is a powerful tool for dealing with vague problems. Software-deﬁned networking (SDN) is a promising technology that enables ﬂexible management by decoupling the data plane from the control plane. Inspired by this, we proposed a fuzzy logic-based software-deﬁned routing scheme for underwater acoustic networks (FL-SDUAN). Speciﬁcally, we designed a software-deﬁned underwater acoustic network architecture. Based on fuzzy path optimization (FPO-MST) and fuzzy cut-set optimization (FCO-MST), two minimum spanning tree algorithms under different network scales were proposed. In addition, we compared the proposed algorithms to state-of-the-art methods regarding packet delivery rate, end-to-end latency, and throughput in different underwater acoustic network scenarios. Extensive experiments demonstrated that a trade-off between performance and complexity was achieved in our work.


Introduction
The ocean is the largest ecosystem, which plays a significant role in the survival and development of human beings.With the shortage of resources, the exploitation of the ocean has become a hot topic [1].An underwater acoustic network (UAN) consists of sensor nodes with acoustic communication and computational capabilities [2].This system has the advantages of simple infrastructure, small size, and low cost compared to traditional underwater networks.In a conventional UAN, the routing function relies on the collaboration of underwater data nodes (DNs).The customer burns the specified protocols in advance into the read-only memory (ROM) of DNs.Routing technologies that rely on hardware infrastructure cannot be optimized regarding reliability and energy consumption [3].Additionally, these technologies are complex, poorly converged, and inefficient.Software-defined networking (SDN) is an emerging paradigm that enables the separation of the data plane and control plane, greatly simplifying management and fostering innovation and growth.
The software-defined underwater acoustic network (SD-UAN) consists of multiple DNs and surface buoys.The DN is set as an OpenFlow white switch, and the buoy is the controller [4].In SD-UAN, the DN sends a packet-in message containing the routing request to the specified controller.At this point, the controller is triggered to execute a predesigned routing algorithm and sends the calculated routing decision to the DN as a flow table, which determines the path of data forwarding.Migrating routing tasks from performanceand resource-constrained underwater nodes to a performance-powered SDN controller is the most significant advantage of SD-UAN [5].As a result, the routing computation is faster and more efficient.Based on SDN, it dramatically reduces the energy consumption of underwater nodes and extends the survival time of underwater nodes.The topology of the UAN is time-varying due to ocean currents.Therefore, it is not possible to evaluate the path weights accurately.The fuzzy logic approach provides a novel routing mechanism for uncertain UANs.This paper proposes a fuzzy logic-based software-defined routing scheme for underwater acoustic networks (FL-SDUAN).To the best of our knowledge, this is the first work to apply a combined SDN and fuzzy logic routing algorithm for UANs.The main contributions of this paper are summarized as follows.

1.
The architecture of FL-SDUAN was designed to perform routing protocols in a robust SDN control plane, reducing complexity and increasing the availability of underwater nodes.

2.
Fuzzy logic was used to implement routing decisions, which improves the reliability of underwater acoustic networks.

3.
Two minimum spanning tree algorithms, fuzzy path optimization (FPO-MST), and fuzzy truncated set optimization (FCO-MST) were proposed for different underwater network scenarios.4.
FPO-MST and FCO-MST are compared with state-of-the-art methods in terms of packet transmission rate, end-to-end latency, and throughput.Experiments showed that a trade-off between performance and complexity was achieved in our work.
The rest of this paper is organized as follows.Section 2 describes the related work.In Section 3, we present the architecture of FL-SDUAN.Section 4 offers the FPO-MST and FCO-MST algorithms.Simulation experiments are performed in Section 5.In addition, in Section 6, we conclude the paper.

Related Work 2.1. Software-Defined Routing Technologies in UANs
Many recent studies have focused on SDN-based routing techniques for underwater acoustic networks.Akyildiz et al. [6] introduced Softwater, a software-defined underwater communication system that supports various applications and enables the interoperability of devices from different manufacturers.Torres et al. [7] developed a software-defined platform in hydroacoustic networks with runtime configuration.The platform worked well while maintaining flexibility.Ghannadrezaii et al. [8] proposed a routing system that relies on software-defined underwater nodes.Each DN obtained a prediction of the communication quality of a potential link with a one-hop neighbor by receiving beacon signals from the aggregation node.Mohammadi et al. [9] proposed an SDN-based routing technique to improve the quality of service (QoS) in the underwater Internet of Things (IoT).The experimental results showed that this method significantly outperformed other non-SDN methods concerning the packet loss rate, end-to-end latency, and energy consumption.Luo et al. [10] presented an SDN-based routing testbed for hydroacoustic networks with a one-hop RF channel in the control plane and a hydroacoustic channel as the data plane.Sreeraj et al. [11] proposed a software-defined routing protocol that supports deep learning in hydroacoustic networks.Simulation experiments showed that the survival time of the protocol improved by 15% compared to conventional techniques.Ruby et al. [12] modeled the underwater multimodal routing problem as an optimization problem and solved it using a convex relaxation method in the full duplex case.Lin et al. [13] employed the paradigm of SDN technology and proposed an SDN-based underwater cooperative searching framework for AUV-based UWNs.Wang et al. [14] suggested a software-defined clustering mechanism that achieved a trade-off between multiple constraints and improved the performance of hydroacoustic networks.Lin et al. [15] proposed an SDN-based hydroacoustic network paradigm and introduced a clustering method through an improved Birch algorithm.Lin et al. [16] proposed an SDN-based delay-sensitive routing algorithm in hydroacoustic networks.The simulation results showed that the method could accurately reflect the spatio-temporal characteristics of the network state.Ghafoor et al. [17] recommended an SDN-based routing protocol for underwater acoustic networks.A central controller on the surface buoy provided a global view, while a local controller on the autonomous underwater vehicle (AUV) offered a local view.

The Fuzzy Logic-Based Clustering Techniques in UANs
Krishnaswamy et al. [18] designed a fuzzy logic-based clustering scheme for hydroacoustic networks.There was a significant difference between detecting malicious nodes and delivering packets.Krishnaswamy et al. [19] proposed a fuzzy inference-based clustering mechanism that could reduce and prolong the survival time of UANs.Bharathy et al. [20] introduced a fuzzy logic-based clustering algorithm to select cluster heads (CHs) in hydroacoustic networks.Goyal et al. [21] proposed a fuzzy logic clustering method to identify the best CH in hydroacoustic networks.Goyal et al. [22] proposed a fuzzy clustering algorithm for hydroacoustic networks.The experimental results showed that this protocol minimized energy consumption and latency while increasing throughput and transmission rate.Song et al. [23] implemented a fuzzy clustering algorithm based on the analytic hierarchy process (AHP) in a hydroacoustic network.Umamaheswari et al. [24] used a fuzzy algorithm for CH selection to extend the stability and depletion rate of UANs.The experimental results showed that their method outperformed other methods.

The Fuzzy Logic-Based Routing Technologies in UANs
To optimize end-to-end latency, Bennouri et al. [25] implemented an optimized vector protocol based on fuzzy logic (FLOVP) that provides better routing performance than vector-based forwarder (VBF) algorithms.Li et al. [26] performed a weight-based fuzzy logic (WBFL) algorithm for underwater acoustic networks.Experiments showed that this mechanism for selecting relay nodes is efficient and accurate.Mulla et al. [27] proposed an energy-efficient routing protocol that used fuzzy logic to select DNs in hydroacoustic networks.Bu et al. [28] proposed a fuzzy-based routing protocol to determine node locations and energy levels in UANs.Rahman et al. [29] developed a fuzzy algorithm to assist in cooperative opportunity routing in UANs, effectively reducing energy consumption, survival time, and delay.Rahman et al. [30] recommended an energy-efficient cooperative opportunity routing (EECOR) protocol for hydroacoustic networks, which used a fuzzy logic-based scheme to select the most suitable relay node considering energy consumption.Reza et al. [31] presented a fuzzy logic-based grid routing algorithm that extended the survival time and reduced the end-to-end latency of UANs.
Tariq et al. [32] used a routing protocol that considered the residual energy and deployment depth of underwater nodes.Based on various fuzzy logic metrics, this protocol outperformed similar protocols regarding end-to-end latency and energy consumption.Huang et al. [33] proposed a direction-sensitive routing protocol (DSR) that used fuzzy reasoning to select the best candidate for hydroacoustic networks.The simulation results showed that the algorithm had better energy consumption, packet delivery rate (PDR), and average end-to-end latency.Pabani et al. [34] proposed an energy-efficient packet protection scheme based on fuzzy logic.The simulation results showed that the proposed routing protocol is efficient with a minimum number of routing table entries.Tavakoli et al. [35] proposed a fuzzy logic-based clustering algorithm that constructed optimal CHs based on fuzzy logic.

Summary
The above works aimed to design software-defined system architectures that run fewer routing algorithms in the control plane.Fuzzy logic is suitable for solving routing problems in dynamic underwater environments because it can handle uncertainty and give optimal solutions.Most studies use fuzzy logic to optimize residual energy, hop distance, link quality, and deployment density.However, it also faces the following challenges.On the one hand, the extended fuzzy logic-based schemes are mainly based on the cooperative communication of CHs.Therefore, the energy of CHs will be depleted quickly.Frequent CH elections can affect the stability of clusters and lead to constant changes in network topology.On the other hand, many fuzzy logic-based schemes assume a uniform distribution of underwater nodes, which differs significantly from the actual deployment.In underwater acoustic networks, DNs move due to ocean currents.Consequently, the possibility of dense and sparse node types is high.Unfortunately, there are relatively few fuzzy routing schemes involving these two states.

The FL-SDUAN Model
The FL-SDUAN model consists of three parts: the underwater data nodes, the surface aggregation nodes, which act as controllers, and the coastal base stations (BSs).The DN consists of a buoy, an anchor chain, and an anchor.The sensor is mounted on the buoy, and the anchor chain connects the anchor to the buoy.When the DN is deployed, the anchor sinks to the bottom, and the anchor chain expands and contracts to a fixed length.Finally, all the buoys form a 3D network structure.The FL-SDUAN model is shown in Figure 1.
lenges.On the one hand, the extended fuzzy logic-based schemes are mainly based on the cooperative communication of CHs.Therefore, the energy of CHs will be depleted quickly.Frequent CH elections can affect the stability of clusters and lead to constant changes in network topology.On the other hand, many fuzzy logic-based schemes assume a uniform distribution of underwater nodes, which differs significantly from the actual deployment.In underwater acoustic networks, DNs move due to ocean currents.Consequently, the possibility of dense and sparse node types is high.Unfortunately, there are relatively few fuzzy routing schemes involving these two states.

The FL-SDUAN Model
The FL-SDUAN model consists of three parts: the underwater data nodes, the surface aggregation nodes, which act as controllers, and the coastal base stations (BSs).The DN consists of a buoy, an anchor chain, and an anchor.The sensor is mounted on the buoy, and the anchor chain connects the anchor to the buoy.When the DN is deployed, the anchor sinks to the bottom, and the anchor chain expands and contracts to a fixed length.Finally, all the buoys form a 3D network structure.The FL-SDUAN model is shown in Figure 1.The data plane is built by virtualization, in which Open vSwitch (OvS) is installed on the DNs to implement the OpenFlow switching function [36].The controller is set on the water surface, and the OpenDayLight (ODL) system is installed on it to build the control plane.A high-energy rechargeable battery powers the controller.As an application plane, the associated applications run on the BS.The multi-application system is an agent management system based on Flowvisor [37].
In FL-SDUAN, it uses an SDN architecture with the separation of data communication and control communication.Different hydroacoustic signal frequencies are designed for control communication and data communication.Single-hop mode is used for control communication, and multi-hop relay mode is used for data communication.RF signals are used for communication between BSs and surface controllers.When the UAN is deployed, the controller triggers all underwater nodes in the management area through control communication.At a given time, the underwater nodes are connected to the controller via one-hop control communication and then report their status information, such as location and resource status, at any time.When the underwater node sends a routing request, the controller executes the routing algorithm and assigns routing decisions to the corresponding node.

The Routing Procedure of FL-SDUAN
The routing algorithm of FL-SDUAN consists of three phases: node clustering, route calculation, and data transmission.The data plane is built by virtualization, in which Open vSwitch (OvS) is installed on the DNs to implement the OpenFlow switching function [36].The controller is set on the water surface, and the OpenDayLight (ODL) system is installed on it to build the control plane.A high-energy rechargeable battery powers the controller.As an application plane, the associated applications run on the BS.The multi-application system is an agent management system based on Flowvisor [37].
In FL-SDUAN, it uses an SDN architecture with the separation of data communication and control communication.Different hydroacoustic signal frequencies are designed for control communication and data communication.Single-hop mode is used for control communication, and multi-hop relay mode is used for data communication.RF signals are used for communication between BSs and surface controllers.When the UAN is deployed, the controller triggers all underwater nodes in the management area through control communication.At a given time, the underwater nodes are connected to the controller via one-hop control communication and then report their status information, such as location and resource status, at any time.When the underwater node sends a routing request, the controller executes the routing algorithm and assigns routing decisions to the corresponding node.

The Routing Procedure of FL-SDUAN
The routing algorithm of FL-SDUAN consists of three phases: node clustering, route calculation, and data transmission. (

1) Node clustering phase
The main steps of node clustering include four actions, i.e., temporary head (TH) election, cluster construction, CH election, and DN joins to the corresponding cluster.The clustering is triggered based on the trigger-cluster message sent by a controller.The DN decides whether it is a TH by comparing its random number with the TH threshold.When the TH is determined, clusters are formed and centered on the TH.The nodes in the cluster select the CH by comparing their respective communication capabilities.If the CH is elected, the DN signs the CH, and the clustering process is completed.In a cycle, there is only one CH in a cluster and each node belongs to only one cluster.Then, the DN sends a cluster-statistics message to the controller.The message includes cluster ID, remaining energy, resource utilization, node static data, node ID, timestamp, and rounds.The format of the cluster-statistics message is shown in Figure 2.
The main steps of node clustering include four actions, i.e., temporary head (TH) election, cluster construction, CH election, and DN joins to the corresponding cluster.The clustering is triggered based on the trigger-cluster message sent by a controller.The DN decides whether it is a TH by comparing its random number with the TH threshold.When the TH is determined, clusters are formed and centered on the TH.The nodes in the cluster select the CH by comparing their respective communication capabilities.If the CH is elected, the DN signs the CH, and the clustering process is completed.In a cycle, there is only one CH in a cluster and each node belongs to only one cluster.Then, the DN sends a cluster-statistics message to the controller.The message includes cluster ID, remaining energy, resource utilization, node static data, node ID, timestamp, and rounds.The format of the cluster-statistics message is shown in Figure 2. (2) Route calculation phase In FL-SDUAN, the controller receives cluster-statistics messages and stores them in the corresponding node state table.At this time, the controller can candidate CHs.If CHs are selected, they are periodically registered to corresponding controllers.Therefore, controllers have a global view of the network in real time.Then, they use cluster-statistics messages to calculate path weights between CHs based on fuzzy logic and construct routing paths.As shown in Figure 3, the yellow nodes are the CHs elected by each cluster, while the white nodes are the data nodes.Routing decisions are calculated and passed by the controller.The routing paths are then implemented by multi-hop relay communication through the corresponding CHs. (

3) Data transmission phase
In data transmission, each DN sends data only to the corresponding CH, and multiple CHs transmit data to the controller through relay communication.The controller calculates an optimal path for the node requesting the route, and the data is forwarded along this path.The FL-SDUAN routing procedure is shown in Figure 4. (2) Route calculation phase In FL-SDUAN, the controller receives cluster-statistics messages and stores them in the corresponding node state table.At this time, the controller can candidate CHs.If CHs are selected, they are periodically registered to corresponding controllers.Therefore, controllers have a global view of the network in real time.Then, they use cluster-statistics messages to calculate path weights between CHs based on fuzzy logic and construct routing paths.As shown in Figure 3, the yellow nodes are the CHs elected by each cluster, while the white nodes are the data nodes.Routing decisions are calculated and passed by the controller.The routing paths are then implemented by multi-hop relay communication through the corresponding CHs.
election, cluster construction, CH election, and DN joins to the corresponding cluster.The clustering is triggered based on the trigger-cluster message sent by a controller.The DN decides whether it is a TH by comparing its random number with the TH threshold.When the TH is determined, clusters are formed and centered on the TH.The nodes in the cluster select the CH by comparing their respective communication capabilities.If the CH is elected, the DN signs the CH, and the clustering process is completed.In a cycle, there is only one CH in a cluster and each node belongs to only one cluster.Then, the DN sends a cluster-statistics message to the controller.The message includes cluster ID, remaining energy, resource utilization, node static data, node ID, timestamp, and rounds.The format of the cluster-statistics message is shown in Figure 2. (2) Route calculation phase In FL-SDUAN, the controller receives cluster-statistics messages and stores them in the corresponding node state table.At this time, the controller can candidate CHs.If CHs are selected, they are periodically registered to corresponding controllers.Therefore, controllers have a global view of the network in real time.Then, they use cluster-statistics messages to calculate path weights between CHs based on fuzzy logic and construct routing paths.As shown in Figure 3, the yellow nodes are the CHs elected by each cluster, while the white nodes are the data nodes.Routing decisions are calculated and passed by the controller.The routing paths are then implemented by multi-hop relay communication through the corresponding CHs.(3) Data transmission phase In data transmission, each DN sends data only to the corresponding CH, and multiple CHs transmit data to the controller through relay communication.The controller calculates an optimal path for the node requesting the route, and the data is forwarded along this path.The FL-SDUAN routing procedure is shown in Figure 4. (3) Data transmission phase In data transmission, each DN sends data only to the corresponding CH, and multiple CHs transmit data to the controller through relay communication.The controller calculates an optimal path for the node requesting the route, and the data is forwarded along this path.The FL-SDUAN routing procedure is shown in Figure 4.

The Path Weights between CHs
Routing is performed based on the relay communication of CHs in FL-SDUAN.If the network status changes, the controller waits for a route request message via the control communication.When a route-request message is received, it retrieves the node state table to find the optimal path.Due to multi-hop transmission, a CH may have multiple neighboring nodes.Path weights are quantified for the distance from the CH neighbor to the controller, the node's residual energy, and the resource occupancy.The distance between the CH and the controller is determined by the strength of the signal it sends.Resource occupancy includes CPU utilization and ternary content addressed memory (TCAM).The CH with the lowest path weight is selected as the next hop.The path weight from CH i to CH j is counted on the controller as shown in (1).
where Strength(j) denotes the signal strength; Residual(j) indicates the residual energy; Resource(j) is the resource occupancy; and α, β, and γ are weighting factors of signal strength, residual energy, and resource occupancy, respectively.

The Path Weights between CHs
Routing is performed based on the relay communication of CHs in FL-SDUAN.If the network status changes, the controller waits for a route request message via the control communication.When a route-request message is received, it retrieves the node state table to find the optimal path.Due to multi-hop transmission, a CH may have multiple neighboring nodes.Path weights are quantified for the distance from the CH neighbor to the controller, the node's residual energy, and the resource occupancy.The distance between the CH and the controller is determined by the strength of the signal it sends.Resource occupancy includes CPU utilization and ternary content addressed memory (TCAM).The CH with the lowest path weight is selected as the next hop.The path weight from CHi to CHj is counted on the controller as shown in (1).
where ( ) Strength j denotes the signal strength; ( ) Residual j indicates the residual energy; ( ) Resource j is the resource occupancy; and  ,  , and  are weighting factors of signal strength, residual energy, and resource occupancy, respectively.The weights are different from the application concerns.Therefore, there are differences in the designed weighting factors.Table 1 shows the state statistics of the three CHs, including signal strength, residual energy, and resource occupancy expectation.It indicates that CH5 has the most considerable residual energy, CH7 has the most robust signal strength, and CH12 has the most significant resource occupancy.This situation exists in multi-service hydroacoustic networks.If only one weighting factor is considered, it is easy to choose the optimal CH.However, selecting CH among multiple weighting indices is a challenge.The weights are different from the application concerns.Therefore, there are differences in the designed weighting factors.Table 1 shows the state statistics of the three CHs, including signal strength, residual energy, and resource occupancy expectation.It indicates that CH 5 has the most considerable residual energy, CH 7 has the most robust signal strength, and CH 12 has the most significant resource occupancy.This situation exists in multi-service hydroacoustic networks.If only one weighting factor is considered, it is easy to choose the optimal CH.However, selecting CH among multiple weighting indices is a challenge.In general, the weighting factors are determined empirically.The subjective weight factors have a significant impact on the selection of CHs.Once a reasonable CH is not selected, the routing path is not optimal.We give three weight factors α, β, and γ, and calculate the path weights from CH i to CH 5 , CH 7 , and CH 12 .The weight factors are randomly set and are shown in Table 2.The first three items indicate that the optimal node is CH 5 .However, the focus of each item is different.Among them, items 1 and 3 focus on resource occupation, and item 2 emphasizes signal strength.Item 4 indicates that the optimal node is CH 5 or CH 12 .Unfortunately, the two nodes' residual energy, resource occupation, and signal strength are different.Therefore, the randomly designed weighting factors are unreasonable and cannot reflect the practical concerns.

The Definition and Procedure of Fuzzy Logic
Fuzzy logic is a decision-making system inspired by human perception and judgment capabilities.It is a simple technique for deriving uncertain or fuzzy information with less computational power.Let X be a traditional set.Given the fuzzy set FA that is composed of ordered numbers in X, as shown in (2).
where µ A (x) ∈ [0, 1] is the attribution function.It indicates the degree to which X is affiliated with FA.
Given a fuzzy number in the set R of real numbers.Let FA = (l, m, r), and the attribution function µ A [38] is shown in (3) where FA is a set of triangular fuzzy number, and l ∈ R, m ∈ R, r ∈ R. m is the principal value of the triangular fuzzy number.l and r are the lower and upper bound of FA.The attribution function µ A (x) is shown in Figure 5. Fuzzy logic includes three steps of fuzzification, fuzzy inference, and defuzzification.
(1) Fuzzification Fuzzification is the mapping of observations in the input space to fuzzy sets.Due to the random disturbances such as latency and noise in hydroacoustic networks, we use a triangular fuzzy logic approach to select the optimal CH.The input variables of the fuzzy  (1) Fuzzification Fuzzification is the mapping of observations in the input space to fuzzy sets.Due to the random disturbances such as latency and noise in hydroacoustic networks, we use a triangular fuzzy logic approach to select the optimal CH.The input variables of the fuzzy set mainly include the residual energy of neighboring CHs and resource utilization.These two parameters are encapsulated in the cluster-statistics message.Figure 6 lists the fuzzy degree of residual energy, which contains five affiliations, namely very low, low, medium, high, and very high, with a fixed domain of [0, 1].The fuzzy degree of resource utilization is given in Figure 7, which consists of four affiliations, namely low, medium, high, and very high, with the domain [0, 1].The output set is represented by the optimal adaptation degree, which consists of four affiliations: no fitness, low fitness, fitness, and extreme fitness, with the domain defined as [0, 1], as shown in Figure 8. Fuzzy logic includes three steps of fuzzification, fuzzy inference, and defuzzification.
(1) Fuzzification Fuzzification is the mapping of observations in the input space to fuzzy sets.Due to the random disturbances such as latency and noise in hydroacoustic networks, we use a triangular fuzzy logic approach to select the optimal CH.The input variables of the fuzzy set mainly include the residual energy of neighboring CHs and resource utilization.These two parameters are encapsulated in the cluster-statistics message.Figure 6 lists the fuzzy degree of residual energy, which contains five affiliations, namely very low, low, medium, high, and very high, with a fixed domain of [0, 1].The fuzzy degree of resource utilization is given in Figure 7, which consists of four affiliations, namely low, medium, high, and very high, with the domain [0, 1].The output set is represented by the optimal adaptation degree, which consists of four affiliations: no fitness, low fitness, fitness, and extreme fitness, with the domain defined as [0, 1], as shown in Figure 8.

Medium
High Very High 0 0.25 0.5 0.75 1  Fuzzy logic includes three steps of fuzzification, fuzzy inference, and defuzzification.
(1) Fuzzification Fuzzification is the mapping of observations in the input space to fuzzy sets.Due to the random disturbances such as latency and noise in hydroacoustic networks, we use a triangular fuzzy logic approach to select the optimal CH.The input variables of the fuzzy set mainly include the residual energy of neighboring CHs and resource utilization.These two parameters are encapsulated in the cluster-statistics message.Figure 6 lists the fuzzy degree of residual energy, which contains five affiliations, namely very low, low, medium, high, and very high, with a fixed domain of [0, 1].The fuzzy degree of resource utilization is given in Figure 7, which consists of four affiliations, namely low, medium, high, and very high, with the domain [0, 1].The output set is represented by the optimal adaptation degree, which consists of four affiliations: no fitness, low fitness, fitness, and extreme fitness, with the domain defined as [0, 1], as shown in Figure 8.

Medium
High Very High 0 0.25 0.5 0.75 1  (2) Fuzzy inference Fuzzy inference is used to estimate the optimal fitness and quantify the path weights of CH.In fuzzy inference, each control rule is a vague conditional statement.All rules are a set of fuzzy implications.We use Mamdani's IF-THEN rule [39] to derive the optimal CH with residual energy and resource utilization as inputs.
i A is the i-th variable of residual energy, i B is the resource utilization variable, and i R is the optimal fitness of CH, as shown in (4).
The rules correspond to the inference relation * R , as shown in ( 5).
( ) (2) Fuzzy inference Fuzzy inference is used to estimate the optimal fitness and quantify the path weights of CH.In fuzzy inference, each control rule is a vague conditional statement.All rules are a set of fuzzy implications.We use Mamdani's IF-THEN rule [39] to derive the optimal CH with residual energy and resource utilization as inputs.A i is the i-th variable of residual energy, B i is the resource utilization variable, and R i is the optimal fitness of CH, as shown in (4).
connected and has no loops.Then, T(N, E ) is a spanning tree of G. Assuming that each edge e ∈ E has a weight W(e), thus, the sum weight of T is shown in (8).
Let T * be the spanning tree of G.If W(T * ) ≤ W(T), then T * is the minimum spanning tree (MST) of G.If L p, q is a tree arc, removing it from T divides the set N into two parts X and X = N − X. X, X = (i, j) ∈ E i ∈ X, j ∈ X is the cut set of G.If the cut-set is minimum, then T(N, E ) is the MST of G(N, E).
The MST algorithm based on fuzzy cut-set optimization (FCO-MST) continuously expands a subtree T = (S * , E * ) until all vertices of G(N, E) are included, where S * = N.In FCO-MST, the path weights between CHs are calculated using triangular fuzzy inference, and the arcs with the most negligible weights in the cut set are sequentially added to form the MST of T. The FCO-MST pseudo code is shown as follows (Algorithm 1).

Minimum Spanning Tree Algorithm Based on Fuzzy Path Optimization
If L p, q is a non-tree arc, there exists a unique path from node p to q on the tree T that connects the two nodes to form a loop.For a non-tree arc L p, q ∈ E − E , if the weights of all arcs in T(N, E ) are less than the directly connected arc weights of p and q, then T is a spanning tree of G.The MST algorithm based on fuzzy path optimization (FPO-MST) is also known as the greedy approach.The graph G is constructed by CHs.Fuzzy inference is used to calculate the path weights between CHs.In FPO-MST, the arcs with the smallest weights are joined to the subtree T. If the arc does not form a ring when connected to T, the arc is added.Then the next arc is considered until all nodes are traversed.Finally, it constructs the tree.The FPO-MST pseudo code is shown as follows (Algorithm 2).

Experimental Results and Analysis
In this paper, we constructed a simulation experiment to run the proposed routing algorithms on a controller.It uses fuzzy logic to infer the optimal path weights between CHs and then implements FPO-MST and FCO-MST.

Experimental Settings
Mininet 2.2.1 and WOSS 1.5.0 software were used to design the simulation platform.We set up VirtualBox 5.2.12 as the virtual machine.Open vSwitch v2.5.1 was installed in DNs to build an SDN switch, and OpenDayLight was deployed on the surface sink node as the SDN controller.FPO-MST and FCO-MST algorithms were running on the controller.The experiment was run on a clustered system consisting of eight blade servers.Each server was configured with two E5-2698 v4 processors and 512 GB of memory.The clustered system was configured with an IBM v3700 storage of 10 TB disk capacity.Eight controllers and 200 DNs were given in the experiment.Each controller was allocated 20 core CPU resources, 64 GB of memory, and 2 TB of disk capacity.A DN provided one core CPU resource, 8 GB of memory, and 10 GB of disk capacity.The network is assumed to be randomly deployed in a 1000 × 1000 × 100 m 3 submerged area.We supposed that the depth range of the nodes is 10~110 m, and the underwater nodes are relatively stationary and the motion is insignificant.Let the data communication distance be 100 m, the cluster radius 50 m, and the control communication distance be 1000 m.Other parameters are shown in Table 4.We compared the PDR, end-to-end latency, and throughput of FPO-MST and FCO-MST with the three related algorithms in different scenarios.The low-energy adaptive clustering hierarchy algorithm (LEACH) [42] divides UANs into multiple clusters.Each cluster consists of one CH and multiple DNs.The CH is predefined in this algorithm.When the cluster is formed, the CH broadcasts the communication schedule based on the time division multiple access (TDMA) technique.Each DN in the cluster transmits data to the CH according to the allocated time slots.The CH aggregates the data and sends them to a BS.Dipanwita's algorithm is a clustering-based routing [43] method for hydroacoustic networks.It consists of two phases: CH selection and data transmission.In this algorithm, the CH implements a multi-hop routing scheme by aggregating data.Energy-efficient hybrid clustering algorithm (EEHC) [44] is a routing protocol with a predetermined percentage of clusters.

The Packet Delivery Rate
The packet delivery rate is a fundamental merit of a routing protocol.The PDR of LEACH, EEHC, Dipanwita's algorithm, FPO-MST, and FCO-MST in different rounds is shown in Figure 9.The PDR of all five algorithms tended to decrease as the number of rounds increases.When runtime increased, some nodes died.Therefore, the network connectivity became worse.FPO-MST and FCO-MST use triangular fuzzy logic to estimate the optimal path weights between CHs.Consequently, they had a higher PDR.Due to re-clustering, FCO-MST had the highest PDR before round 43.After this period, the dead nodes increased dramatically.As a result, many new CHs were selected and the size of the spanning tree increased.As a result, FPO-MST had the highest PDR.We compared the PDR with a different number of nodes, as shown in Figure 10.The PDR tended to increase with increasing DNs.EEHC is a cluster-based routing algorithm that combines the depth of the DNs and the residual energy.Therefore, the PDR was relatively high.Dipanwita's algorithm also uses a clustering architecture with a small square structure, so the PDR was relatively low.On the contrary, LEACH had the lowest PDR.Since the number of single-node clusters may increase after running for a while, the routing efficiency decreased sharply.When the number of DNs increased to 140, the PDR of FCO-MST was higher than that of FPO-MST.Thus, FCO-MST is more suitable for largescale hydroacoustic networks.We compared the PDR with a different number of nodes, as shown in Figure 10.The PDR tended to increase with increasing DNs.EEHC is a cluster-based routing algorithm that combines the depth of the DNs and the residual energy.Therefore, the PDR was relatively high.Dipanwita's algorithm also uses a clustering architecture with a small square structure, so the PDR was relatively low.On the contrary, LEACH had the lowest PDR.Since the number of single-node clusters may increase after running for a while, the routing efficiency decreased sharply.When the number of DNs increased to 140, the PDR of FCO-MST was higher than that of FPO-MST.Thus, FCO-MST is more suitable for large-scale hydroacoustic networks.We compared the PDR with a different number of nodes, as shown in Figure 10.The PDR tended to increase with increasing DNs.EEHC is a cluster-based routing algorithm that combines the depth of the DNs and the residual energy.Therefore, the PDR was relatively high.Dipanwita's algorithm also uses a clustering architecture with a small square structure, so the PDR was relatively low.On the contrary, LEACH had the lowest PDR.Since the number of single-node clusters may increase after running for a while, the routing efficiency decreased sharply.When the number of DNs increased to 140, the PDR of FCO-MST was higher than that of FPO-MST.Thus, FCO-MST is more suitable for largescale hydroacoustic networks.

The End-to-End Latency
As the average delay of packets from source to destination, the end-to-end latency (E2EL) reflects the network's access rate and transmission quality.Smaller E2EL indicates better performance of the routing protocol.We compared the E2EL with different numbers of DNs, as shown in Figure 11.It is clear that the E2ELs of the five algorithms had an increasing trend with increasing DNs.Among them, Dipanwita's algorithm had the largest E2EL compared to the EEHC and LEACH algorithms.However, FCO-MST had the most negligible end-to-end latency with a small number of nodes (50-100).Furthermore, FPO-MST had the smallest E2EL when the number of nodes was 100~200.We know that the E2EL of FPO-MST is more advantageous in a dense node environment.

The End-to-End Latency
As the average delay of packets from source to destination, the end-to-end latency (E2EL) reflects the network's access rate and transmission quality.Smaller E2EL indicates better performance of the routing protocol.We compared the E2EL with different numbers of DNs, as shown in Figure 11.It is clear that the E2ELs of the five algorithms had an increasing trend with increasing DNs.Among them, Dipanwita's algorithm had the largest E2EL compared to the EEHC and LEACH algorithms.However, FCO-MST had the most negligible end-to-end latency with a small number of nodes (50-100).Furthermore, FPO-MST had the smallest E2EL when the number of nodes was 100~200.We know that the E2EL of FPO-MST is more advantageous in a dense node environment.To demonstrate the benefits based on SDN architecture, we also compared the E2EL of the five algorithms under different buffer utilization, as shown in Figure 12.It can be seen that with the increase in buffer utilization, the end-to-end latency of the five algorithms increased.Specifically, LEACH still had the highest latency, while EEHC and Dipanwita's algorithms had the essential reaching delay.Both algorithms were higher than the two algorithms proposed in this paper.It is because routing decisions are executed in the control plane, whereas underwater nodes only forward data in the data plane.The main reason for the latency difference between FCO-MST and FPO-MST is that they have differences on network scales.To demonstrate the benefits based on SDN architecture, we also compared the E2EL of the five algorithms under different buffer utilization, as shown in Figure 12.It can be seen that with the increase in buffer utilization, the end-to-end latency of the five algorithms increased.Specifically, LEACH still had the highest latency, while EEHC and Dipanwita's algorithms had the essential reaching delay.Both algorithms were higher than the two algorithms proposed in this paper.It is because routing decisions are executed in the control plane, whereas underwater nodes only forward data in the data plane.The main reason for the latency difference between FCO-MST and FPO-MST is that they have differences on network scales.
of the five algorithms under different buffer utilization, as shown in Figure 12.It can be seen that with the increase in buffer utilization, the end-to-end latency of the five algorithms increased.Specifically, LEACH still had the highest latency, while EEHC and Dipanwita's algorithms had the essential reaching delay.Both algorithms were higher than the two algorithms proposed in this paper.It is because routing decisions are executed in the control plane, whereas underwater nodes only forward data in the data plane.The main reason for the latency difference between FCO-MST and FPO-MST is that they have differences on network scales.

The Comparisons of Throughput
Throughput is also an essential metric for routing algorithms.The throughput of the five algorithms at different underwater signal rates is shown in Figure 13.The maximum signal rate of the experimental design is 2000 bps, and the throughput of all five algorithms tended to increase as the signal rate increased.FCO-MST had the highest throughput at lower underwater rate conditions (<1350 bps).However, as the underwater signal rate increased (>1400 bps), FPO-MST had the highest throughput, while Dipanwita's algorithm had the lowest throughput, and the EEHC and LEACH algorithms had comparable throughputs.

The Comparisons of Throughput
Throughput is also an essential metric for routing algorithms.The throughput of the five algorithms at different underwater signal rates is shown in Figure 13.The maximum signal rate of the experimental design is 2000 bps, and the throughput of all five algorithms tended to increase as the signal rate increased.FCO-MST had the highest throughput at lower underwater rate conditions (<1350 bps).However, as the underwater signal rate increased (>1400 bps), FPO-MST had the highest throughput, while Dipanwita's algorithm had the lowest throughput, and the EEHC and LEACH algorithms had comparable throughputs.We also compared the throughput of the five algorithms for different numbers of underwater nodes, and the results are shown in Figure 14.The throughput of all algorithms decreased as the number of underwater nodes increased.In UAN, as the number of nodes increased, the probability of interference in the signals transmitted between nodes increased.On the contrary, FCO-MST and FPO-MST are based on SDN architecture and achieved the separation of data and control communication.They use fuzzy logic for routing decisions, which reduced the delays caused by communication detection and state switching.In summary, the proposed algorithms have high overall throughput.The FCO-MST algorithm is based on cut-set optimization and is suitable for large-scale hydroacoustic networks.In comparison, FPO-MST focuses on path optimization and is more fit for small-scale networks.Therefore, the throughput of FPO-MST was higher than that of FCO-MST when the number of nodes was small (<100), and FCO-MST had a good throughput when the number of nodes increased to 117.We also compared the throughput of the five algorithms for different numbers of underwater nodes, and the results are shown in Figure 14.The throughput of all algorithms decreased as the number of underwater nodes increased.In UAN, as the number of nodes increased, the probability of interference in the signals transmitted between nodes increased.On the contrary, FCO-MST and FPO-MST are based on SDN architecture and achieved the separation of data and control communication.They use fuzzy logic for routing decisions, which reduced the delays caused by communication detection and state switching.In summary, the proposed algorithms have high overall throughput.The FCO-MST algorithm is based on cut-set optimization and is suitable for large-scale hydroacoustic networks.In comparison, FPO-MST focuses on path optimization and is more fit for small-scale networks.Therefore, the throughput of FPO-MST was higher than that of FCO-MST when the number of nodes was small (<100), and FCO-MST had a good throughput when the number of nodes increased to 117.T n e based on the adjacency table is ( ) O n e + .In addition, the complexity for building ( ) T n e using the non-tree arc approach in FPO-MST is ( ) log O e e .

Conclusions
This paper presents FL-SDUAN, a routing scheme for SDN-based underwater acoustic networks.First, we established the architecture of FL-SDUAN and presented the fuzzy problem of path weights in the system.Then, we developed two MST-based fuzzy routing algorithms, FPO-MST and FCO-MST, in detail.Finally, the packet delivery rate, end-toend latency, and throughput of FPO-MST and FCO-MST were compared with EEHC, Dipanwita's algorithm, and LEACH under different underwater network scenarios.The experimental results showed that the algorithm improved the routing performance and achieved a trade-off of performance and complexity.In the LEACH algorithm, a random number r(0 − 1) is activated for DNs that has not yet served as CHs in each round.The threshold T(n) is set in the algorithm.If r < T(n), the node can be set as a CH and the complexity is O(n).For Dipanwita's algorithm, it uses the ratio of CHs m to DNs n and the number of rounds to count for the selection probability of CHs with a complexity of O(m * n).The EEHC algorithm keeps the nodes as CHs at time t.Since each node has an equal probability of becoming the CH, the complexity is O(t * n).The minimum spanning tree is constructed by judging the cut set in FCO-MST.For an orphan graph G n, e with n nodes and e edges constructed from CHs, the complexity of constructing T(n, e ) based on the adjacency table is O(n + e).In addition, the complexity for building T(n, e ) using the non-tree arc approach in FPO-MST is O(e log e).

Conclusions
This paper presents FL-SDUAN, a routing scheme for SDN-based underwater acoustic networks.First, we established the architecture of FL-SDUAN and presented the fuzzy

Figure 2 .
Figure 2. The format of a cluster-statistics message.

Figure 2 .
Figure 2. The format of a cluster-statistics message.

Figure 2 .
Figure 2. The format of a cluster-statistics message.

Figure 5 .
Figure 5.The attribution function.Fuzzy logic includes three steps of fuzzification, fuzzy inference, and defuzzification.

Figure 6 .Figure 7 .
Figure 6.The membership of the residual energy.

Figure 6 .Figure 5 .
Figure 6.The membership of the residual energy.

Figure 6 .Figure 7 .
Figure 6.The membership of the residual energy.

Figure 8 .
Figure 8.The fuzzy affiliation of node adaptation.

Figure 10 .
Figure 10.PDR vs. the number of nodes.

Figure 10 .
Figure 10.PDR vs. the number of nodes.

Figure 11 .
Figure 11.The comparison of E2EL under a different number of nodes.

Figure 11 .
Figure 11.The comparison of E2EL under a different number of nodes.

Figure 12 .
Figure 12.Comparison of E2EL under different buffer utilization.

Figure 12 .
Figure 12.Comparison of E2EL under different buffer utilization.

Figure 13 .
Figure 13.The comparison of throughput under different transmission rates.

Figure 13 .
Figure 13.The comparison of throughput under different transmission rates.

Figure 15 .
Figure 15.The comparison of complexity.In the LEACH algorithm, a random number ( )01 r −is activated for DNs that has not

Figure 15 .
Figure 15.The comparison of complexity.

Table 1 .
Status statistics of CHs.

Table 1 .
Status statistics of CHs.

Table 2 .
Path weights under different factors.