AntWMNet – A Hybrid Routing Algorithm for Wireless Mesh Networks Based on Ant Colony Optimisation

. Routing in wireless mesh networks is of paramount importance to their good performance. As this type of network is becoming key to many application scenarios, it is fundamental to guarantee that routing is as efficient as possible. Despite extensive research work carried out in the past, existing routing algorithms have problems in terms of latency, throughput, network overhead, and/or scalability, depending on their type. In the current paper we propose a hybrid wireless mesh networks routing algorithm that addresses the referred problems, exploring the ant colony optimisation paradigm. The algorithm, named AntWMNet, was extensively studied through simulation using OMNET++, and the results show that it clearly outperforms the reference AODV algorithm.


Introduction
As we witness an unprecedented increase in the deployment and use of wireless technologies (mobility management, pervasive sensing, automated object-to-object and object-to-person communications, the Internet of Things, etc.), it is becoming important to revisit wireless mesh networks (WMN) and devise new and more efficient ways for their operation. Despite considerable work done in the past in the area of routing in WMNs [1], the fact is that several challenges persist and there is need to go beyond traditional proactive or reactive routing algorithms and protocols.
Routing is, of course, a key aspect in these self-organized and self-configured networks. Routing protocols used in WMNs can be classified into reactive (also known as on-demand routing protocols) and proactive (also known as table-driven) [2]. The former typically lead to higher throughput and less signaling protocol overhead. The latter lead to lower latency at the cost of higher overhead. Moreover, they have limited scalability. Examples of reactive routing protocols are Ad Hoc on Demand Distance Vector (AODV) [3], Temporarily Ordered Routing Algorithm (TORA) [4], Dynamic Source Routing (DSR) [5], and Link Quality Source Routing Algorithm (LQSR) [6]. Examples of proactive routing protocols are Destination-Sequenced Distance Vector Routing (DSDV) [7], and Optimized Link State Routing (OLSR) [8]. Additionally, there are several hybrid WMN routing protocols that use a reactive approach in the general case and a proactive approach in specific network areas, such as the backbone.
In this paper we propose and analyse a hybrid WMN routing protocol -AntWMNet -that uses the ant colony optimisation (ACO) paradigm. The use of ACO for WMN routing is not new, and can be seen in protocols such as AntNet [9], AntHocNet [10], or AntMeshNet [11]. The innovative aspects of AntWMNet are the fact that it uses ACO both in its reactive and proactive operation, and that the proactive component is used for continuously maintaining, updating and optimising selected, promising routes, based on specific routing metrics. Moreover, the algorithm supports local, controlled route fixes when route problems are detected, thus limiting its protocol overhead.
The AntWMNET algorithm is presented in section 2. In section 3 the evaluation set up is detailed, followed by a presentation and discussion of extensive simulation results in section 4. The objective of this discussion is to clearly characterise the benefits of the proposal under study. Section 5 analyses the AntWMNET proposal in light of related work, and section 6 summarises the key findings and identifies guidelines for further work.

AntWMNet
AntWMNet is a hybrid ACO-based WMN routing algorithm. Its reactive, on-demand characteristic stems from the fact that it only deals with routing information concerning active destinations. In this respect, it is quite similar to reactive routing algorithms, such as AODV. It is also, nevertheless, a proactive algorithm, as it maintains and tries to improve the active communication routes, anticipating possible route changes and establishing alternative routes, if existing, as a way to prevent route disruption. This is a key factor in such dynamic environments as WMNs and it is, in fact, one of its main innovative aspects. The following subsections provide an overview of key aspects of the algorithm's operation.

Data structures
AntWMNet relies on three basic per-node data structures: routing table (or  pheromone table), neighbours table, and visits table. The routing table is a 2-dimensional matrix of j ✕ d that keeps routing information from the current node i (the node in which the table resides) to destinations d, through neighbouring nodes j. Each matrix value is composed of a pheromone concentration value, F d ij , a hop count value, H d ij , and the latest measured delay to the destination, The neighbours table is a vector that keeps information on all the known neighbours of node i. This is used to propagate routing information and to determine possible link failures. The neighbours table is updated periodically, based on beacon packets. The visits table stores the identification of ant packets (either reactive or proactive), in order to discard ants of similar type reaching the same node. In addition, a timestamp is used to discard information of out-dated visits.

Reactive, on-demand routing
Whenever there is need to send a packet to a destination for which there is no information on the routing table, a route discovery process is initiated, using an ant colony optimisation approach. For this, special packets called reactive forward ants are sent out to all neighbours of the source node, and subsequently are propagated to the entire network by flooding. Flooding is controlled by the visits table in each network node.
When a reactive forward ant reaches the destination, it carries information on all the nodes visited from source to destination. The reception of the ant by the destination triggers the sending of a reactive backward ant to the source, using the reverse path. The objective of reactive backward ants is to update the pheromone information contained in the routing tables of the nodes along the path from destination to source, according to a cost function, c d i . This cost function depends on the used routing metrics and usually takes into account the hop count and the delay, although it may account for other parameters, such as link quality, bandwidth, or even jitter. The value of the cost function will determine the pheromone concentration level that will be stored in each node along the path, which will be given by where γ is a parameter that controls the speed of adaptation to pheromone changes (experimentation led us to use a value of 0.73, although this is obviously configurable).
Once one or more routes to a given destination are known, data packets can be sent. Routes are chosen stochastically, using the respective pheromone concentration values. The probability that node i sends a packet to destination d through node n is given by where β controls the preference for routes with higher pheromone concentration. For instance, low values of this parameter will cause traffic to frequently use multiple routes, leading to better use of network resources, although some routes may have lower quality. Values close to 20 concentrate traffic on better routes, which leads to better flow performance at the cost of uneven route utilisation. In our experiments we used a value of 16 as it turned out to lead to good results both in terms of performance and resource usage. (1) (2)

Proactive operation
AntWMNet includes proactive route maintenance mechanisms with the objective of coping with the relatively frequent topology changes and route failures that are typical of wireless environments such as it occurs in WMN. These mechanisms are the following: pheromone diffusion, proactive forward ants, and proactive backward ants.
The objective of pheromone diffusion is to convey pheromone information to new neighbouring nodes, as they become available in the network. New neighbouring nodes are asynchronously discovered by beacon or hello messages. These new nodes may open up new routes to active destinations and, thus, it is important that pheromone information can reach them.
Another important mechanism is that of proactive forward ants. Contrary to reactive forward ants, proactive forward ants use existing pheromone information and are launched periodically or by source or transit nodes affected by topology changes whenever there is some indication of potential improvement (basically, when new nodes are discovered and/or when there is an improvement in terms of hop count or delay in the vicinity of source, destination, or mesh nodes).
Proactive backward ants complete the proactive process by periodically checking and updating the pheromone tables along active routes.

Link failures
Link failures are quite frequent in WMNs. Their detection can be done by using MAC layer information or by specific hello packets sent at regular intervals (typically, 1 second) that can additionally be used for maintaining neighbour tables.
Whenever a link failure is detected, the corresponding neighbour is removed from the neighbours table and all the entries in the pheromone table that use that neighbour are set to 0. In case the number of routes to a given destination becomes 0, a local route repair ant is sent out. Local route repair ants are similar to reactive ants, with the exception that flooding is restricted to a limited number of hops (in our experiments, this parameter was set to 3). When they reach the destination or a node that has a route to the destination, a backward ant is sent back that completes the route repairing process.

Evaluation setup
This section details the AntWMNet evaluation setup, namely it describes the scenarios used in the simulations, explains the various studies that were made, and identifies the algorithms against which AntWMNet was compared.
All evaluations were done through simulation, using OMNET++ [12] and the INETMANET package [13] developed by the University of Málaga, Spain.

Simulation scenarios
The basic scenario is composed by a wireless mesh network of 9 nodes, of which 7 are hosts and 2 are access points, as depicted in Fig. 1. One of the hosts (hostX) moves along the edge of the network towards the vicinity of hostF at an average speed of 1 meter per second.
In certain simulations this basic scenario was modified in order to include higher size networks. For this, WMNs of 9x10, 14x14, 18x17, and 20x20 nodes were added and connected to the base network through mesh nodes hostA and hostD, thus creating WMNs with 99, 205, 315, and 409 mesh nodes, respectively.
Each experiment was simulated 20 times, with duration of 120 seconds. Data traffic consisted of 64-byte UDP packets generated at a varying rate (see section 3.2, below). At the physical and data link layers, IEEE 802.11 was used.

Simulation studies
Three sets of simulation studies were performed in order to characterise the behaviour of AntWMNet under various situations, as shown in Fig. 2.
In the first set, the objective was to study AntWMNet when subject to an increasing data volume. For this, several simulations were performed in which 2, 4, 6, 8, 10, and 12 data packets per second were generated in each session.
In the second set of simulations, the number of data sessions varied, according to the following cases: 1) a single data session, from hostD to hostX; 2) two data sessions, one from hostD to hostX, and one in the reverse direction that sends a reply to each received packet; 2*) two data sessions, from two distinct source nodes, hostA and HostD; 3) three data sessions, from source nodes hostA, hostD and hostF; 4) four data sessions, one from each hostA and hostD to hostX, and the corresponding replies to each packet; 6) six data sessions, one from each source node hostA, hostD and hostF, and the respective replies.
In the third set of simulations, the number of WMN nodes varied, as mentioned in section 3.1, i.e., with networks of 9, 99, 205, 315, and 409 mesh nodes. In these cases, data transmission always originates in the farthest node. For the various simulated scenarios we obtained values for the average packet delivery ratio, average packet end-to-end delay, average data packets hop count, and average control packets hop count. The confidence interval of the obtained values is 95%.

Algorithms comparison
AntWMNet was compared with AODV as this is a reference WMN routing algorithm. In addition to comparing it with the basic AODV algorithm, we also compared it with a modification to AODV that performs local route repairing.
Comparison with AntNet and AntHocNet was discarded due to their known inefficiency in what concerns network overhead, especially in environments with frequent topology changes.
In the case of AntWMNet we distinguished two forms of counting the control packets hop count: the normal way, in which we do not consider the pheromone diffusion control messages, and the strict way, in which we consider them. The latter case appears in the graphs as AntWMNet2.

Evaluation results
The following sub-sections present and discuss the results of each set of simulations, namely in what concerns AntWMNet's response to varying data volume per session, number of data sessions, and network size. We can observe that PDR increases with the data volume, which is normal in uncongested WMNs. With higher data volumes, most routes are already known when there is the need to transmit packets, and are constantly being updated. Naturally, the situation would be different in a congested network. The important thing to notice is the clear advantage of AntWMNet over the two versions of AODV (with and without local route repairing), which is due to its proactive route maintenance and repair mechanism. Fig. 4 and Fig. 5 present the average packet delay and data packet hop count, respectively.

AntWMNet evaluation with respect to data volume
The figures are quite similar due to the fact that the network is quite homogeneous and most links have similar delay characteristics.
In these figures we can see once more that AntWMNet performs better than any of the AODV versions. This is due to AntWMNet's ability to quickly determine and adapt to new routes, namely the ones that must be determined as destination nodeX moves through the mesh network.   Once again we can see that AntWMNet has lower overhead than AODV, if we do not consider pheromone diffusion control messages. If we consider them (AntWMNet2), then the overhead is higher than that of the basic AODV. This is the price to pay for the higher packet delivery ratio and lower packet delay illustrated in the previous figures.

AntWMNet evaluation with respect to the number of data sessions
The second set of simulations had the objective of comparing the algorithms under a varying number of data sessions, as explained in section 3.2.  AntWMNet elicits a better behavior in all cases and is quite unaffected by the increase in the number of sessions, contrary to what happens with AODV. Moreover, we can see in Fig. 8 that AntWMNet also performs better than AODV in terms of average packet delay. Similar values were also obtained for the average data packets hop count.  Fig. 9 presents the average control packets hop count as a function of the number of data sessions. It is interesting to see that AntWMNet performs better than AODV in all cases and that in the cases of higher number of sessions AntWMNet2 also performs better than AODV, which shows the high efficiency and effectiveness of the proactive mechanisms and of pheromone diffusion and localised route repairing that are the distinguishing characteristics of the proposed routing algorithm.

AntWMNet evaluation with respect to network size
The final set of simulations addressed the algorithms' response in WMNs of increasing size. Fig. 10 presents the average packet delivery ratio (PDR) as a function of network size. Here we can see the drastic degradation of the performance of both versions of AODV with the increase of the network size. On the other hand, the performance of AntWMNet is quite stable, thus showing that AntWMNet can adequately cope with WMNs of considerable size. Similar behaviour was also registered for the cases of average packet delay and average data packet hop count. The excellent performance of AntWMNet in large networks was confirmed when we determined the average control packets hop count as a function of the network size. As can be seen in Fig. 11, the performance of both AntWMNet and AntWMNet2 increases with the increase in the network size and gets substantially better than AODV. This is quite significant, as it is generally recognized that reactive routing algorithms, such as AODV, perform well in large networks, contrary to what happens with proactive routing algorithms. The fact that the proactive operation of AntWMNet is restricted to route maintenance and optimization makes the difference.

Related work
Surveying wireless mesh networking and routing algorithms for this type of networks is out of the scope of the current paper. In this respect, the reader can find useful information in references [1] and [2].
The objective of this section is to identify some of the proposals that are somehow related to AntWMNet, highlighting the main similarities and/or differences.
The use of multiple routes for load sharing and reliability is common to several ACO, such as AntHocNet [10], ARA [14], or Termite [15], or non-ACO algorithms in [16] and [17]. In the case of the ACO ones, an important factor is the β parameter, which controls the stochastic dispersion through the various routes, depending on their quality, according to Eq. 2 (see section 2.2). ARA and Termite use a value of 1, which leads to high dispersion, at the cost of higher average delays. AntHocNet uses a value of 20, which concentrates traffic on the best routes only and may lead to quick resource exhaustion or congestion. In AntWMNet we used a value of 16, which we found a very good compromise between load balancing and delay performance.  The algorithms in [16] and [17] use the proactive approach for the maintenance of known routes only, as is the case of most ACO-based algorithms, with the exception of Termite and EARA [18] that use blind exploration. AntHocNet is the closest to the AntWMNet algorithm, although less efficient, as AntWMNet takes advantage of backward ants to do route maintenance and these ants update the routing metric values increasing or decreasing them according to the measured values, and not as in traditional ACO-based algorithms that always increase the pheromone level along visited routes. This leads to a better response time to network changes.
To the best of the authors' knowledge, the AntWMNet WMN routing algorithm is the only algorithm that uses all of the following features: reactive and proactive ACObased routing mechanisms; proactive route maintenance, update, and optimization; proactive exploration of promising routes only, according to the used route metrics; various routing metrics that can take into account and combine hop count, delay, link quality, bandwidth, or jitter; local routes repairing; pheromone diffusion to newly discovered nodes.
In the current paper we proposed and evaluated an ACO-based hybrid WMN routing algorithm that combines and explores several basic mechanisms in order to collectively achieve optimal performance in terms of throughput, delay, latency and scalability.
The algorithm, named AntWMNet, was extensively studied through simulation using OMNET++ in a variety of scenarios, in order to compare it with AODV, the reference reactive WMN routing algorithm, and to characterise its behaviour and ability to cope with varying traffic loads per session, increasing number of data sessions, and increasing network sizes.
The results showed that AntWMNet outperforms AODV in all of the studied scenarios. Moreover, the performance differences between AntWMNet and AODV get higher as the network size increases, thus revealing the excellent scalability of the proposed algorithm.
Future work will address the prototyping of the proposed algorithm, in order to confirm its potential in real networks. Additionally, further simulations will target the comparison with other routing algorithms and more dynamic environments involving several mobile devices.