ENERGY-EFFICIENT LOCATION-BASED ROUTING ALGORITHMS FOR THREE DIMENSIONAL MOBILE AD HOC NETWORKS

Wireless ad hoc network nodes suffer from limited energy supply. In the current location-based topology control algorithms a node discovers its neighbors by exchanging periodic hello messages between neighbors using the maximum transmission power of each node. This could be a source of extreme power consumption. This paper suggests several new location-based routing algorithms for mobile ad hoc networks that try to increase a network lifetime by decreasing the average power consumption of the network nodes. In the newly proposed algorithms, if the node is not moving it uses less frequent hello messages. During the movement of the node, the hello messages frequency increases. The new algorithms use adjusted transmission power for routing messages as well. We compare by simulation the power consumption of the new algorithm with the current location-based routing algorithms to show a substantial improvement in the overall network lifetime.


INTRODUCTION
A mobile ad hoc network (MANET) consists of a set of moving nodes that can communicate wirelessly. In MANET, there is no need to set up a fixed infrastructure. A node u can directly communicate with the neighbors' nodes (nodes that are located in a sphere centered at u with a diameter equal to the transmission range of u). If a node wishes to communicate with a non-neighbor node, a routing algorithm is used to utilize other nodes in the message delivery [1] [2][3] [4]. A mobile node knows its neighbors by receiving periodic messages from surrounding nodes. Usually, these messages contain various types of information such as the location of the node, and the current power level.
The main problem in wireless network routing algorithms is to find the best correct route between the communicated nodes. But in many situations, when the resources are limited, a more critical problem is to find an energy-saving routing algorithm [5]. The core source of the power consumption in the wireless network comes from transceivers when nodes transmit and receive messages [6]. Designing a routing protocol for a wireless ad-hoc network that is power efficient is not an easy task. This is because the nodes are usually moving (there is no fixed know location for a given node) and because of the interference on the signal broadcast.
Many of the power-aware routing protocols are divided into two groups in terms of the measures used for power efficiency [7][8] [9]. In the first group, a protocol tries to minimize the power consumption for every control and data message. If the nodes use their maximum transmission range in the neighbors' discovery process and the packet forwarding process, then the number of nodes in the path between the source and the destination is used as the essential energy required for the routing process. This measure can be optimized by adjusting the transmission range of the nodes depending on the distance between two adjacent nodes. In this situation minimizing the length of the chosen routing path means saving the overall power consumption. This group of routing protocols may fail to keep the network connection if a given node battery dies because it has been chosen more frequently than other nodes [10]. The second group works on keeping the network connection as much as possible, by balance the load of the routing tasks between nodes [11] [12]. This measure can be optimized by choosing the path that has nodes with more energy. Our proposed algorithms can be placed in this group.
In location-based routing protocols, the nodes take routing decisions without having a global vision of the whole network. Each node forwards the packet using information about the location of the neighbors and the destination. The performance of such protocols is usually calculated by the number of hubs in the discovered path. Which could lead to extra power consumption when choosing a shorter path. It known that all location-based routing protocols have the following features: (1) Each node is equipped with GPS to get its location [13] [14]. (2) Location services are available to the network nodes to get the location of the packet destination node [15] [16]. (3) Nodes should know the location of the neighbor nodes and this can be obtained from the periodic hello messages [17]. (4) location-based routing protocols considered to be memoryless protocols, where the nodes are not supposed to save any routing tables for future communication.
In this research paper, we propose two new location-based routing algorithms for MANET.
The new algorithms rise the lifetime of the whole network by minimizing the power consumption of each node in the network. The idea of these new algorithms based on decreasing the frequency of the control messages while the node is idle and not moving. The new algorithms use variable transmission power for transmitting data depends on the node power level as well. We compare by simulation the power consumption of the new algorithm with the current locationbased routing algorithms to show a substantial improvement in the overall network lifetime.
The rest of this paper is structured as follows, in the next section we present the fundamental base of the physical connection in MANET, we discuss the topology control of the nodes in this section as well. Related routing algorithms are briefly reviewed in Section 3. In Section 4, a detailed explanation of the newly proposed algorithms is given. The simulation model and the experiments are given in Section 5. The concluding remarks are presented in Section 6.

NETWORK MODEL
The network nodes are presented in 3D space as a graph called unit ball graph (UBG). Let a graph G has a set of nodes N = n 1 , n 2 , n 3 , n 4 , . . . n z . An edge E = (n u , n v ) : 1 ≤ u ≤ z, 1 ≤ v ≤ z exist in the graph G, if and only if the Euclidean distance between n u and n v is less than the fixed maximum transmission range of the nodes. We symbolize the set of neighbors for a given node n u as N(n u ). A routing path between two nodes (n u , n v ) is an order of nodes n u , n 1 , n 2 , n 3 , n 4 , . . . , n v such that n i and n i+1 are neighbors. The routing algorithms can be evaluated using the term delivery rate which is the percentage of number of packet reaches the destination to the whole number of transmitted packets. In addition to the delivery rate, an important indicator for evaluation is the amount of power required from the network nodes to finish the routing process. This paper adopts in its design and simulation the widely used power consumption model proposed in [18]. let the distance between two node n u and n v is d, then the power needed to send one bit from n u to n v is p(n u , Γ is the path loss indicator and c is a constant which denote the necessary power for the processing, encoding and decoding in the node processor for the communication process. If d ≤ (c/(1 − 2 1−Γ )) 1/Γ then the power required for transmission is considered optimal, proved in [7]. If d > (c/(1 − 2 1−Γ )) 1/Γ then using intermediate nodes leads to power saving in the communication process.

RELATED LOCATION-BASED ROUTING ALGORITHMS
In this section, we discuss some important location-based routing algorithms and their updates to save power consumption during the routing process. We also highlight their strength and drawbacks. Location-based routing algorithms can be categorized into two simple types [19]: (1) Directional flooding [20]: in this type, several nodes in the network have a copy of the same packet, all of them tries to use a smart way to flood the packet in the direction of the destination. (2) One neighbor forwarding: in this type, there is only one copy of the packet, each node receives the packet forward it to one neighbor in the direction of the destination.

3DLAR [21][22]
: it is a directional flooding algorithm where a restricted flooding area is computed at the source node. A route discovery packet is sent to all neighbors if they are located in the restricted area, each node receives the packet forwarded to the neighbors as well until the packet arrives at the destination. The restricted flooding area is a cube where the source node is at one corner of the cube, and the opposite corner is a sphere centered at the destination node y with a radius equal to v * (t 1 − t 0 ), where v is the last know velocity of y and t 1 is the current time, and t 0 is the time stamp of last known location of y. This algorithm guarantees the delivery of the packets but it has very high overhead because of flooding the route discovery packet. This could lead to considerable power consumption from many nodes that are not part of the routing path, which may lead to network disconnection.
Another directional flooding algorithm that decreases the size of the restricted flooding called 3DDREAM [23]:. In this algorithm, a node is considered in the flooding area if it is located in a cone, where the apex of the cone is the source node, the base of the cone is a sphere similar to the one used in 3DLAR. Figure 1, shows the restricted flooding zone for 3DDREAM.
Greedy algorithm [24]: it is a one-node forwarding algorithm. The source node sends the message to one of its neighbors. It chooses the neighbor closer to the destination than all other neighbors. This technique is repeated at each node on the way to the destination. This can be formatted as follows let p be the node holding the packet and N(p) be the set of neighbors for p and let y be the packet destination: Greedy algorithm is a known to find a short path, but it may fail at specific circumstances called local minimum, when a packet reaches a node that has no neighbor closer to the destination than the node itself.
Randomize AB3D [13] [25]: it is a one neighbor forwarding algorithm that's trying to overcome the local minimum problem by adding a randomizing factor to the greedy algorithm.
This algorithm works as follows: the current node holding the packet defines two perpendicular planes, the intersection of the planes is the line between the current node and the destination node. As a result of the two perpendicular planes, four zones are defined, then the current node chooses one candidate neighbor from each zone using the Greedy algorithm. Then one neighbor is chosen randomly as the next stop for the packet. Because of the randomized nature of the algorithm, a threshold is added to prevent a possible looping. This algorithm usually finds a longer path between the source and destination compared to the shortest existing path which definitely means extra energy consumption.
Power packet algorithm [7]: this algorithm tries to minimize the power needed for a packet to reach the destination. The node holding the packet chooses the next node that minimizes the expression: where p is the current node, v is a neighbor node to p, and y is the Although this algorithm can find the optimal power path, its like greedy algorithm it may fail the packet delivery because of the local minimum problem.
Network life algorithm [26] [27]: This algorithm tries to keep the whole network connected as much as possible, the node holding the packet chooses the next node from its neighbor with higher energy than the rest of the neighbors. Formally, the current node p chooses the neighbor node v that minimizes the expression 1/RE(v) * 1/sum(RE(pi)/r). where RE(v) is the remaining energy in the node v and r is the maximum transmission range.
Progress power packet algorithm [26]: This algorithm is similar to the Power packet algorithm but when it chooses the next node, it give an extra factor to the neighbor that makes progress to the destination. Thus next node is chosen from the set of neighbors closer to the destination than the current node and minimize the following expression: cost(p, v) + cost(v, y), where p is the current node, v is a neighbor node to p, and y is the destination node.
Power adjusted Greedy algorithm with optimal transmission range (PAGO) [6]: in the algorithms above, all use maximum transmission range for both routing and neighbor discovery process. PAGO uses the optimal transmission range for the periodic hello messages, if this range is not enough, the algorithm shifts to the maximum transmission range. The same idea is used for the packet routing process as well.

PROPOSED ROUTING ALGORITHMS
Most Ad-hoc network routing algorithms use the nodes' maximum fixed transmission range for all kinds of communications such that packet forwarding or for periodic hello messages.
This could be a huge waste of the nodes' energy which may lead to a network disconnection very quickly. The above power-aware routing protocols, use adaptive transmission range for the packet forwarding process. Instead of using the maximum transmission range to send a packet between two nodes (x, y), They used energy-related to distance between x and y. These protocols except for the PAGO kept the maximum transmission range for the periodic hello messages. See Algorithm 1. Our new energy-saving routing algorithms try to save the power of the node in three different ways: 1) by using optimal transmission range for the communication between nodes at the packet forwarding process. 2) by using an adjusted transmission range for the periodic hello messages to tell the neighbors about its current location. 3) by using the adjusted frequency of exchanging the periodic hello messages between nodes.

Energy Efficient Greedy routing protocol (EEG).
In this protocol, each node uses an optimal transmission range proposed in [6] for the periodic hello messages to finds its neighbors and to inform the neighbors about its current location. Optimal transmission range equal to (c/(1 − Γ)) 1/Γ . If the node is not moving and it is not receiving any new hello message from a new neighbor, then it stops entirely from sending the hello messages. Using the currently discovered neighbors, Greedy routing is used. If the packet fails to reach the destination because of the local minimum problem. EEG tries to overcome this problem as follows: the current nodes acquire more neighbors by using the maximum transmission range. With the newly discovered neighbors, the Greedy algorithm is used again, if the local minimum is not gone then the algorithm fails the delivery. EEG allows each node to use the maximum transmission range only one time while routing a single packet. Algorithm 2 shows how the algorithm works in detail. if time out without sending any PH then it sends one PH to tell the neighbors that it still exists; if u is not moving and it is receiving new PH messages from neighbors then u uses the optimal transmission range to tell the new neighbors about its location; u also update its neighbors table; if u is moving then u sends the PH messages every 2 seconds [26]. It uses the optimal transmission range for each PH message;  begin Let p be a node represent the location of the packet; Each node uses algorithm 1 for the periodic hello messages to update its neighbors' table; Let N(p) be the set of neighbors of the node p; for each node u in N(p) do p calculates the Euclidean distance from u to y; Let the Euclidean distance from the node z to the node y is less than the Euclidean distance for all other nodes from N(p); if the Euclidean distance from z to y is less than the Euclidean distance from p to y  begin Let p be a node represents the location of the packet; Each node uses algorithm 1 for the periodic hello messages to update its neighbors' table; Let the set of nodes N(p) be the neighbors for the node p; p calculates the restricted area parameters and attach them to the packet; for each node u in N(p) do if u inside the restricted area and have not seen the packet before then P send the packet to the node u; if p = y then return true; P = u ; else Do nothing; if p has no neighbor in M that are located in the restricted area then if p uses a transmission range equal to the maximum transmission range then P discards the packet; else P increase its transmission range to the maximum transmission range; Call algorithm 1 using the new transmission range; continue; end

SIMULATION AND RESULTS
In this chapter, we discuss the simulation environment and run the new proposed algorithms and other related routing algorithms. We compare between them to show the advantage of the new algorithms.

Simulation Environment.
In the simulation we used a model suggested in [28]. The simulation environment can be described as follows: • The power needed to run a transmitter circuit or receiver circuit equal to 50n j/bit, we call this E circ . If a transmitter wishes to send one bit to a neighbor node it consumes E circ . The receiver consumes the same amount to receive that bit.
• E amp is set to 100PJ/m/m 2 is the power needed to run the transmitter amplifier. If x is the distance between two nodes u and v, then the transmitter consumes E amp * x 2 .
• From the two points above transmitting n-bits between two nodes needs power from the transmitter equal to n * E circ + n * E amp * x 2 . And n * E circ from the receiver.
• We spread 100, 150, 200, 250, and 300 nodes in a square of side length equal to 500 units.
• All nodes start with the same amount of energy.
• A UDG is computed using the maximum transmission range of all nodes. If the graph is fully connected, then the graph is used. Otherwise, the graph is discarded.
• For the new proposed algorithm, the initial transmission range is set to the optimal transmission range [29]. The node could increase the transmission range to the maximum if it is needed. The other algorithms use the maximum transmission range the whole time.
• We have tested the new algorithms along with other algorithms on different periodic hello messages frequency (2, 4, 7, 10, and 15 seconds).
• To test the performance of the newly proposed routing algorithms, we run the algorithms on different node speeds (5,15,15,20, 25m/sec).
• To compute the delivery rate, we choose from the successfully connected graph 100 source and destination pairs. We run all algorithms on the selected pairs and check which pairs succeed in delivery. To find the average delivery rate, this process is repeated 100 times.
• the remaining power of each node is computed and the average is taken.
• For the simulation, we used two types of packets. Control packet of size 6 bytes, and data packet of size 16 bytes.  Figure 2, shows the average delivery rate of the newly proposed algorithms compared with other related algorithms at different node densities. We can see that the delivery rate of EEG is pretty similar to Greedy routing with a little advantage for Greedy routing. This is expected because EEG could use different next node at the routing process.
EEG does not update its neighbors table unless there is a movement, so if a node dies for some reason, this could lead to a false choice of the next node. Both DREAM and EEDREAM have delivery rate near 100%. Because they use partial flooding techniques which leads to guarantee the delivery. As the number of nodes increases, then the delivery rate of EEG increases. This explained as follows, when the number of nodes increases gives more chance for the current node holding the packet to have a neighbor that makes progress to the destination which means no local minimum problem. Thus a packet eventually will arrive at the destination. The effect of the periodic hello messages on DREAM and EEDREAM is less than EEG and Greedy because of the flooding process, the packet will arrive at the destination even if the neighbors' table is out of date.   The average power consumption of the nodes at different speeds is given in Figure 7, we can see that EEG power consumption increases by increasing the nodes' speed. This can be explained as follows, EEG sends hello messages to tell neighbors about its location whenever it increasing the node's speed means more nodes hearing the messages between source and destination and thus increase the overall average power consumption.

CONCLUSION
This paper proposed several new location-based routing algorithms for mobile ad hoc networks with two aims: increase the delivery rate as much as possible and increase a network lifetime by decreasing the average power consumption of the network nodes. The new suggested routing algorithms try to decrease the power consumption by decreasing the unnecessary periodic hello messages. Hello messages are not sent by a particular node unless there is a movement from the node itself or one of the neighbors' nodes moves in or out the transmission range area. The new algorithms use adjusted transmission power for routing messages as well.
the simulation shows that the power consumption of the newly proposed algorithm doubled the network lifetime compared with other related routing algorithms.