A mobile ad hoc network (MANET) is a collection of mobile nodes that dynamically form a temporary network without using any existing network infrastructure. MANET selects a path with minimal number of intermediate nodes to reach the destination node. As the distance between each node increases, the quantity of transmission power increases. The power level of nodes affects the simplicity with which a route is constituted between a couple of nodes. This study utilizes the swarm intelligence technique through the artificial bee colony (ABC) algorithm to optimize the energy consumption in a dynamic source routing (DSR) protocol in MANET. The proposed algorithm is called bee DSR (BEEDSR). The ABC algorithm is used to identify the optimal path from the source to the destination to overcome energy problems. The performance of the BEEDSR algorithm is compared with DSR and bee-inspired protocols (BeeIP). The comparison was conducted based on average energy consumption, average throughput, average end-to-end delay, routing overhead, and packet delivery ratio performance metrics, varying the node speed and packet size. The BEEDSR algorithm is superior in performance than other protocols in terms of energy conservation and delay degradation relating to node speed and packet size.
Wireless networks are a main concern in the communications field in recent years [
A mobile ad hoc network (MANET) is commonly used to enable communication when common communication infrastructure is unavailable. This type of network is used in many applications such as in military [
A serious issue in MANETs is the insufficient power for hand-held devices. This insufficiency hampers the function of packet-forwarding in a MANET environment. Many traditional routing protocols do not consider the energy consumption of an individual node. Instead, they select the path with minimum hop count, leading to high power consumption. If a single intermediate node runs out of energy, then the whole communication is interrupted. Moreover, as a result of low battery power, such protocols lead to low implementation and low number of activities performed by the nodes. In turn, these conditions lead to the simultaneous execution of multiple functions, and extra energy is needed to efficiently deliver the packets.
All wireless nodes need a continuous power source to ensure node availability and effectiveness. Modern wireless communication research is shifting towards a bio-inspired algorithm to enhance power efficiency and reduce the cost of a MANET. One of the bio-inspired algorithms is the artificial bee colony (ABC). This paper proposed bee dynamic source routing (BEEDSR) algorithm, which is the integration of ABC algorithm with dynamic source routing (DSR) routing protocol. The BEEDSR selects the best and most energy- and cost-saving path between the source and destination.
The rest of this paper is organized as follows. In Section
Dynamic source routing (DSR) is efficient and ideal for routing in multihop wireless ad hoc mobile node networks [
In DSR, the route discovery mechanism is applied to find a route from source to destination and to transfer data in the case that a destination route is unknown by a source node. When a source node aims to send a packet to a destination, it searches for its route cache to ensure if it already contains a route to the destination. If it finds an unexpired route to the destination then it uses this route to send the packet to the destination node. However, if the source node route does not exist, then the route discovery will broadcast a route request (RREQ) packet to all participating nodes within the network. Each intermediate node checks whether it knows a route to the destination; otherwise, it appends its address to the route record of the packet and forwards the packet to its neighbors [
The information of all the relaying nodes towards the destination is stored in the RREQ packet. The source node receives a route reply (RREP) message when the destination node receives the RREQ packets. The RREP carries a copy of the route information collected by the RREQ. This route information is then stored by the source node for future communication. The route discovery process is illustrated in Figure
DSR route discovery mechanism [
This mechanism is applied in the DSR during the packet communication from source to destination node. The DSR uses the route maintenance mechanism to search for known alternative routes which can be used to send packet from source to destination node [
A broken communication link or a change in network topology can lead to failure in communication. As a result, a route error message (RERR) is immediately sent to the source node. After receiving a RERR message, the source node removes the hop in error from its route cache and starts a new route discovery. The nodes that forward the error packet along the way delete the entire route in the broken link from their own routing tables. The route discovery of the DSR protocol often discovers many routes from the source node to the destination node. The route with a minimal hop is also more likely to be chosen for data transmission than others are; in turn, the nodes that are frequently chosen are more likely to consume more energy, resulting in greater energy consumption and shorter battery life [
DSR route maintenance mechanism.
The ABC algorithm has recently attracted the attention of many researchers and academics for its ability to successfully solve combinatorial optimization [
In the ABC system, a bee colony can be classified as one of the three types based on the role it plays: the onlooker, the forager (employed), and the scout bees. Onlooker bees will be waiting on the waggle dance area to make a decision on choosing a food source [
ABC scouting mechanism [
Initially, scout bees identify the positions of all food sources. Thereafter, both onlooker bees and forager bees exploit the nectar of food sources, and such continual exploitation ultimately exhausts food sources [ Initialize population (food sources). REPEAT: The employed bees visit the food sources based on their memory and evaluate the amount of nectar and return to the hive to do waggle dances in that location. Onlooker bees watch the waggle dance and go to the food sources based on their nectar amounts. The scout bees start their random search for new food sources when the food sources are exhausted. The best food source gets registered. UNTIL (requirements are met).
Each cycle of searching for food sources depends on three steps. First, the initial food source locations are regenerated, which may be distributed randomly. Second, the forager bees are sent to collect the nectar from those food sources and measure the amount of nectar [
Third, the forager bees keep visiting the same food sources that are already stored in their memory, after which they check their neighborhood and update their information. Depending on the information on nectar amount distributed by all forager bees, onlooker bees decide on the best possible food source to visit so that they can exploit the nectar from it. Onlooker bees tend to choose a certain food source with much nectar. After a certain period passes, these food sources will be abandoned by the bees when the nectar becomes exhausted. Thereafter, a forager bee will become a scout bee and starts a new journey of discovering new food sources to replace the abandoned ones. At any point in time, only one bee will act as a scout bee, and it will be the one to determine a new food source. Such bees are called artificial scouts [
ABC food discovering mechanism.
The forager bee is unaware of the food sources around the nest. For such bee, two scenarios are possible [ The bee begins to scout for food from one place to another near the nest because of internal or possible external motivation (scout). After watching the waggle dances, the bee can be a recruit and can begin to explore for a food source (foragers).
After finding a food source, a bee uses its own ability to memorize the site and begins exploiting the food source. In this way, the bee becomes an employed forager. Afterward, the bee brings the nectar to the hive and unloads it in the storage. After unloading, it has the following options: After leaving the food source, it may become an uncommitted follower (UF). Before returning to the food source, it may dance and recruit mates. Without recruiting any bees, it may continue to forage at the food source.
In finding the path between the source and destination, most previous works deal with the problem of maintaining and finding correct route through changing topology and mobility. In [
The BeeIP uses foragers to collect path information and mark each path with a selection metric values on their way back. The importance of these metrics and their influence on the behavior of the protocol is very significant. A metric related to speed is used for the experimental comparison of BeeIP work, the summation of the transmission delay and queuing delay for each intermediate link of the path, from the destination towards the source. This ensures that the fastest path from the list is selected.
Since BeeIP is designed to evaluate routing based on path level, link breakage within a path is detected when no foragers return back to the source node within a period of time. The source node sets the path’s foraging capacity to zero and marks the path as unacknowledged. The first ensures that no future foragers will be given the broken path’s ID, whereas the latter allows the path to become available again, if a forager eventually comes back.
The simulation results indicate that BeeIP offers significant levels of adaptability and efficiency in its decision of which path is suitable to take. The findings showed that BeeIP generally has better performance than other protocols.
Sridhar et al. [
To improve the energy aware reliable routing protocol (EARRP) in MANETs, an enhancement and design of such protocol have been suggested in [
A honeybee algorithm has been suggested for ad hoc routing in [
In [
In this research, the ABC algorithm is combined with DSR routing algorithm to implement the BEEDSR routing algorithm. The foraging activities of bees are similar to the path activity of networks. In a MANET, all nodes should work cooperatively and efficiently by sharing information on the quality of the node links and partial routes. This process is similar to the food searching activity behaviors of a colony of bees. The ABC algorithm is suitable for dynamic, flexible, and multiobjective problems. The BEEDSR utilizes the ABC algorithm to search for the path through on-demand nature using context-aware metrics to select the best path. The DSR routing is used by the employed bees to locate possible paths.
The proposed BEEDSR algorithm can be described in the following steps: Nodes generation ( Initialize the position of nodes Randomly initialize the speed of each node Select the source and destination node Initialize the population of solution Each node broadcasts hello message to its neighbors’ node to check the node in free or busy state For each particle Do While whole network is not covered Do Select the route of Find the neighbors of the route Calculate the distance between each node Calculate nodes energy probability value End while End for Store the best energy routes in array (ID) While the maximum number of cycles is not reached Do Select another route of Calculate the probability value Update the contents of (ID) Increment the loop counter When the current combination of routes of the solution is better than the combination of routes contained in its memory, the particle’s position is updated End while Memorize the best solution achieved so far Broadcast the data from source to destination using DSR based on the best energy route.
In the first step, nodes
Employed bees produce the position (solution) modification in its memory based on local information (visual information) by testing the energy amount (fitness value) of the new source (new solution). After the employed bees complete the search, they share both the energy and position information with onlooker bees. The onlooker bees evaluate the energy information from employed bees and then select a food source with the probability (
Identifying the number of nodes that will be fully power aware or have a power efficiency leakage is significant. Generating several nodes using node generator tool at NS2 is necessary to provide the scout bee with reasonable DSR nodes. Afterward, a swarm population will start to evaluate the nodes by using the evaluation problems.
Each time ABC visits a node (i.e., network topology or several nodes itself), it calculates the energy probability. The ABC consists of an initialization procedure and a main search cycle which is iterated until a solution of acceptable fitness is found for the best DSR-aware node. When onlooker bee arrives, the algorithm rigorously checked to examine if the area has a source route and the number of nodes present. If no source route is present, then it broadcasts the packet and rescan the energy for onlooker bee; it examines if it is an outgoing or incoming broadcast packet for transmitting energy.
In BEEDSR, the ABC mechanism integrated with the DSR, in terms of enhancing the routing process, selects the best route among the total nodes from the source to the destination. The scout bee also measures the power of both the node and node distance. If the node is allocated in a distant location, then it consumes a considerable amount of energy, resulting in greater energy loss.
Figure
Specifying the source and destination in BEEDSR algorithm.
Initializing the numbers of solutions in BEEDSR algorithm.
To obtain the best result, a bee determines the distance between all nodes and their neighbors. Thereafter, each node sends or broadcasts a hello message to its neighbors to ensure that the node is in either a free or busy state. If the neighbor node replies, it means that the node is in a ready state. Otherwise, it is in a busy state and is not taking part in any other transmission. The path is selected based on the ready state nodes. Based on the bee algorithm, the source node sends the route request message to determine the best available path in the network, that is, the shortest path with minimum hop count and energy amount.
BEEDSR sends route request packet passes through the intermediate nodes. During this broadcast, ABC calculates the energy amount for each node based on fitness equation (
After the route request reaches the destination, it replies in ascending path. Based on that path, the data start transmitting packets through the source node. Figure
Search for the best available node and nearest path in BEEDSR algorithm.
Path selection among the source to the destination in BEEDSR algorithm.
BEEDSR algorithm simulation experiments are conducted using NS2. In these simulation experiments, a network setting on OTcl script has been defined, such as the routing protocol, propagation model, network traffic, and number of nodes to be used. The simulation produces two output files: a trace file used for data processing and a NAM file used to visualize the simulation. BEEDSR algorithm performance was compared with DSR and BeeIP algorithms. Figure
Flowchart of BEEDSR, BeeIP, and DSR execution in NS2.
Two different scenarios were selected to evaluate the performance of BEEDSR. In the first scenario, nodes are allowed to move within the maximum speed ranging 5–20 m/s. In the second scenario, the packet size has different sizes: 128, 256, 512, and 1,024 bytes. In the two scenarios, the constant bit rate (CBR) traffic sources were used, and the transmission range for each node was set to 250 m. The simulation area was set to 1,670 m × 970 m for all simulations, and the simulation time was set to 50 s. Fifty nodes were fairly distributed, and the initial energy was 100 joules. Two considerably distant nodes were selected to serve as the source (beehive) and the destination (flower). Nodes are moving randomly; thus, the network topology may change randomly and rapidly at unpredictable times. The data points presented in the simulation results were calculated as the average of 10 simulation runs to eliminate the effect of any anomalous individual result because we observed a realistic variance among the points using 10 or more simulation runs. Table
Simulation parameters.
Parameter | Value | Unit |
---|---|---|
Number of runs | 10 | — |
Number of nodes | 50 | Node |
Queue size | 100 | Packet |
Simulation area | 1670 × 970 | m2 |
Routing protocols | DSR, BeeIP, and BEEDSR | — |
Mobility model | Random way point | — |
Packet size | 256 | Bytes |
Transmission range | 250 | M |
Type of traffic | CBR | — |
Initial energy | 100 | Joules |
Idle power consumption | 0.05 | mW |
Transmission power consumption | 1.35 | mW |
Receive power consumption | 1.7 | mW |
Sleep power | 0.001 | mW |
Simulation time | 50 | Sec |
In this study, the aforementioned evaluation involves several performance metrics, which are discussed below.
The average end-to-end delay metric is the average time it takes to broadcast the data packet successfully from the source to the destination through the network. This delay comprises several smaller delays in the network, including all possible delays caused by buffering during route discovery latency, queuing at the router interface queue, retransmission delays at MAC, propagation, and transmission time. The average E2E delay of data packets can be calculated using the following formula:
The average throughput metric represents the average of the successful data packets received to the total simulation time duration. The average throughput is measured in kilobits per second (kbps) and measures the effectiveness and efficiency of the routing protocol in receiving data packets by the destinations. The following formula is used to calculate the average throughput:
Routing overhead ratio metric represents the ratio of the total number of routing packets sent to the total number of routing and data packets sent. This metric provides an idea regarding the extra bandwidth consumed by the overhead to deliver data traffic. The routing overhead is computed using the following formula:
The packet delivery ratio metric shows the total number of received data packets by destinations divided by the total number of data packets sent by the sources. This metric presents how a protocol successfully delivers packets from the source to the destination. A high packet delivery ratio indicates good results, which represent the wholeness and correctness of the routing protocol. The packet delivery ratio is computed using the following formula:
This metric is measured as the ratio of total energy consumed by each node in the network divided by its initial energy. The initial and final energy left in the node are measured at the end of the simulation run. The average energy consumption is computed as follows:
Figure
BEEDSR, DSR, and BeeIP performances versus node speed. (a) Average energy consumption, (b) average end-to-end delay, (c) average throughput, (d) packet delivery ratio, and (e) routing overhead ratio.
The reason is that the BEEDSR protocol uses the ABC algorithm to redirect the data from the source to the destination by enhancing the existing DSR protocol. This algorithm selects the path that is less distant among each node as well as the shortest path. The shortest and best available path is then determined. Hence, the prior energy consumption on the route discovery on every node is reduced because the algorithm keeps track of the route from its memory.
Figure
Figure
Figure
Figure
Simulation results of node speed effect.
Speed (m/s) | BEEDSR | BEEIP | DSR |
---|---|---|---|
|
|||
5 | 2.353037 | 2.359598 | 2.360493 |
10 | 2.384789 | 2.396493 | 2.403905 |
15 | 2.411249 | 2.425047 | 2.437463 |
20 | 2.428212 | 2.441357 | 2.45088 |
|
|||
|
|||
5 | 13.922 | 37.109 | 31.336 |
10 | 23.902 | 37.118 | 32.192 |
15 | 23.357 | 36.81 | 30.448 |
20 | 27.807 | 37.983 | 32.201 |
|
|||
|
|||
5 | 48.61704 | 44.1916 | 43.2925 |
10 | 47.46709 | 44.1828 | 40.96004 |
15 | 47.1921 | 43.8844 | 40.95078 |
20 | 46.16 | 43.8177 | 40.92944 |
|
|||
|
|||
5 | 99.782 | 99.746 | 99.692 |
10 | 99.738 | 99.712 | 99.679 |
15 | 99.741 | 99.707 | 99.664 |
20 | 99.719 | 99.694 | 99.648 |
|
|||
|
|||
5 | 7.3 | 12.000 | 14.6 |
10 | 9.7 | 14.4 | 16.1 |
15 | 11.4 | 14.4 | 17.8 |
20 | 13.8 | 15.6 | 20.8 |
Figure
BEEDSR, DSR, and BeeIP performances versus packet size. (a) Average energy consumption, (b) average end-to-end delay, (c) average throughput, (d) packet delivery ratio, and (e) routing overhead ratio.
Figure
Figure
Figure
Based on ABC colony, the BEEDSR keeps track of and updates its path once the shortest and best path is discovered; the rest of the data packets transfer follows the same path between the source and destination with no overhead. Therefore, the number of packets getting dropped is reduced, and the packet delivery ratio is increased. In DSR and BeeIP, when a source node aims to send a packet to a destination, it searches for its route cache to ensure if it already contains a route to the destination.
Figure
The details of simulation results for BEEDSR, DSR, and BeeIP with respect to packet size are shown in Table
Simulation results of packet size effect.
Packet size (bytes) | BEEDSR | BEEIP | DSR |
---|---|---|---|
|
|||
128 | 2.380943 | 2.384978 | 2.417476 |
256 | 2.401592 | 2.43839 | 2.527688 |
512 | 2.404601 | 2.438344 | 2.52943 |
1024 | 2.615006 | 2.689021 | 2.791907 |
|
|||
|
|||
128 | 27.7 | 31.942 | 33.665 |
256 | 30.511 | 37.348 | 39.252 |
512 | 38.175 | 49.783 | 55.885 |
1024 | 60.151 | 70.853 | 77.727 |
|
|||
|
|||
128 | 72.6411 | 26.08562 | 20.52148 |
256 | 85.26032 | 44.21113 | 41.02791 |
512 | 110.1801 | 93.65283 | 84.02914 |
1024 | 133.3468 | 121.8802 | 99.554379 |
|
|||
|
|||
128 | 99.597 | 99.500 | 99.359 |
256 | 99.607 | 99.510 | 99.395 |
512 | 99.637 | 99.530 | 99.430 |
1024 | 99.654 | 99.555 | 99.466 |
|
|||
|
|||
128 | 13.900 | 20.000 | 24.200 |
256 | 13.900 | 20.000 | 24.800 |
512 | 15.800 | 21.900 | 25.900 |
1024 | 16.200 | 22.600 | 26.600 |
The successful use of ABC algorithm in many MANET applications motivated this research to adapt the same algorithm to improve the DSR routing protocol. This study provides the optimization of the current DSR routing over MANET. The proposed BEEDSR routing protocol is inspired from the natural bee food hunting behavior to overcome the energy problems caused from overload packet from source to destination MANET nodes. The BEEDSR routing technique focuses on determining the optimal routing path. The advantage of BEEDSR is its simplicity; this routing protocol can be easily integrated into existing ad hoc routing algorithms without affecting other communication protocol layers. The simulation results for BEEDSR demonstrate noticeable improvements under wide network parameter settings, such as node speed and packet size.
The authors declare that there are no conflicts of interest regarding the publication of this paper.
This research was supported in part by Effat University, Jeddah, Saudi Arabia, under Internal Research Grant Scheme, Grant no. UC#7/02.MAR/2016/10.2-20a.