5
Energy-Aware Routing In Mobile Ad-Hoc Networks Murali P, Rakesh K, Chittaranjan Hota Computer Science and Information Systems Group Birla Institute of Technology and Science, Pilani Pilani, INDIA [email protected], [email protected],[email protected] Antti Ylä-Jääski Data Communications Software Laboratory Helsinki University of Technology Espoo, FINLAND [email protected] Abstract—The next generation communication systems will provide high quality multimedia services in a flexible and efficient manner. As an extension of next generation networks, Mobile Ad Hoc Networks (MANETs) have attracted significant attention amongst researchers. Nodes in a MANET have limited battery power. Hence, ad hoc routing protocols ought to be energy conservative to support real-time multimedia services. In this paper, we propose a proactive routing protocol which gives better performance and satisfies the basic power aware parameters like minimum energy consumption per packet, maximum network lifetime, and minimum variance in the node power levels. We use Breadth first search to gather the network topology. From this global information, a least cost path is generated using Dijkstra’s shortest path algorithm. This least cost path has better battery resources and is refreshed after some fixed intervals of data packet delivery to keep the variance in residual battery power to minimum. Our simulation results show that the proposed protocol provides good service to different types of media while conserving energy. Keywords-MANET, Energy, Routing, and Proactive. I. INTRODUCTION Ad-hoc wireless networks are defined as “the category of wireless networks that utilize multi-hop radio relaying and are capable of operating without the support of any fixed infrastructure” [1]. Mobile Ad-hoc Networks (MANETs) are wireless ad-hoc networks consisting entirely of mobile nodes that communicate on-the-move without base stations. A node communicates directly with its neighbors within the radio range and indirectly with all others using a dynamically determined multi-hop route [2]. Due to their quick and easy deployability, ad-hoc networks are used in many domains ranging from military applications, to autonomous robotics, to emergency operations, to home and personal area networks. Routing is one of the fundamental and challenging tasks for MANETs. For more than a decade, energy-aware routing in these networks has been researched extensively. According to whether nodes maintain the locations of others in the network, MANET routing protocols can be categorized into two classes: topology-based and position-based [3]. Topology-based routing approaches do not require a node to maintain the position information of other nodes and are further divided into proactive, reactive and hybrid. In proactive routing approaches like DSDV [4], OLSR [5] etc., every node routes packets using its global topological information. Proactive routing protocols are efficient when the MANET is relatively static and the traffic load is relatively heavy. On the contrary, reactive strategies like AODV [6], DSR [7] etc. flood the request packet over the network when a message arrives, searching for the destination. Hence, when the topology updates are high and the traffic load is low, reactive approaches are preferred as they reduce energy consumption of a node. The hybrid strategy uses reactive at low traffic and proactive at high traffic load. The proposed protocol aims at finding out the least cost energy efficient path between the source and the destination in a MANET. This is achieved by searching in the global network topology generated with the help of Breadth first search. Most of the MANET routing protocols use metrics like hop, delay etc. to find out a path. These metrics have a serious impact on the energy utilization. For instance, if we always route through the shortest path by using hop count metric, then all the intermediate nodes will drain out their battery. As shown in Fig. 1, a continuous use of path A-E-D drains the energy of node E faster. This may result in disconnecting nodes F and G from the network. The traditional approach for designing power aware algorithms is to assign weights to the network links. These weights are normally assigned based on the energy required to transmit the data packets over the links. These weights are used to discover the least cost path in the network for end-to- end communication. In recent times, the concept of dual channel devices are proposed, separating the data and the control channels Control signals are high power and data signals are low power transmissions. Wake-up channels are used to wake-up a sleeping node. Power control mechanism, wherein data is transmitted with just enough power to reach the destination, enables sender device to spend less energy and reduces overhearing by the neighboring nodes which A B C D E F G Figure 1. Example ad hoc topology 978-1-4244-2829-8/08/$25.00 ©2008 IEEE

[IEEE 2008 1st IFIP Wireless Days (WD) - Dubai, United Arab Emirates (2008.11.24-2008.11.27)] 2008 1st IFIP Wireless Days - Energy-aware routing in Mobile Ad-Hoc Networks

  • Upload
    antti

  • View
    213

  • Download
    0

Embed Size (px)

Citation preview

Page 1: [IEEE 2008 1st IFIP Wireless Days (WD) - Dubai, United Arab Emirates (2008.11.24-2008.11.27)] 2008 1st IFIP Wireless Days - Energy-aware routing in Mobile Ad-Hoc Networks

Energy-Aware Routing In Mobile Ad-Hoc

Networks

Murali P, Rakesh K, Chittaranjan Hota

Computer Science and Information Systems Group

Birla Institute of Technology and Science, Pilani

Pilani, INDIA

[email protected],

[email protected],[email protected]

Antti Ylä-Jääski

Data Communications Software Laboratory

Helsinki University of Technology

Espoo, FINLAND

[email protected]

Abstract—The next generation communication systems will

provide high quality multimedia services in a flexible and

efficient manner. As an extension of next generation networks,

Mobile Ad Hoc Networks (MANETs) have attracted significant

attention amongst researchers. Nodes in a MANET have limited

battery power. Hence, ad hoc routing protocols ought to be

energy conservative to support real-time multimedia services. In

this paper, we propose a proactive routing protocol which gives

better performance and satisfies the basic power aware

parameters like minimum energy consumption per packet,

maximum network lifetime, and minimum variance in the node

power levels. We use Breadth first search to gather the network

topology. From this global information, a least cost path is

generated using Dijkstra’s shortest path algorithm. This least

cost path has better battery resources and is refreshed after some

fixed intervals of data packet delivery to keep the variance in

residual battery power to minimum. Our simulation results show

that the proposed protocol provides good service to different

types of media while conserving energy.

Keywords-MANET, Energy, Routing, and Proactive.

I. INTRODUCTION

Ad-hoc wireless networks are defined as “the category of wireless networks that utilize multi-hop radio relaying and are capable of operating without the support of any fixed infrastructure” [1]. Mobile Ad-hoc Networks (MANETs) are wireless ad-hoc networks consisting entirely of mobile nodes that communicate on-the-move without base stations. A node communicates directly with its neighbors within the radio range and indirectly with all others using a dynamically determined multi-hop route [2]. Due to their quick and easy deployability, ad-hoc networks are used in many domains ranging from military applications, to autonomous robotics, to emergency operations, to home and personal area networks.

Routing is one of the fundamental and challenging tasks for MANETs. For more than a decade, energy-aware routing in these networks has been researched extensively. According to whether nodes maintain the locations of others in the network, MANET routing protocols can be categorized into two classes: topology-based and position-based [3]. Topology-based routing approaches do not require a node to maintain the position information of other nodes and are further divided into proactive, reactive and hybrid.

In proactive routing approaches like DSDV [4], OLSR [5] etc., every node routes packets using its global topological information. Proactive routing protocols are efficient when the MANET is relatively static and the traffic load is relatively heavy. On the contrary, reactive strategies like AODV [6], DSR [7] etc. flood the request packet over the network when a message arrives, searching for the destination. Hence, when the topology updates are high and the traffic load is low, reactive approaches are preferred as they reduce energy consumption of a node. The hybrid strategy uses reactive at low traffic and proactive at high traffic load. The proposed protocol aims at finding out the least cost energy efficient path between the source and the destination in a MANET. This is achieved by searching in the global network topology generated with the help of Breadth first search.

Most of the MANET routing protocols use metrics like hop, delay etc. to find out a path. These metrics have a serious impact on the energy utilization. For instance, if we always route through the shortest path by using hop count metric, then all the intermediate nodes will drain out their battery. As shown in Fig. 1, a continuous use of path A-E-D drains the energy of node E faster. This may result in disconnecting nodes F and G from the network.

The traditional approach for designing power aware algorithms is to assign weights to the network links. These weights are normally assigned based on the energy required to transmit the data packets over the links. These weights are used to discover the least cost path in the network for end-to-end communication. In recent times, the concept of dual channel devices are proposed, separating the data and the control channels Control signals are high power and data signals are low power transmissions. Wake-up channels are used to wake-up a sleeping node. Power control mechanism, wherein data is transmitted with just enough power to reach the destination, enables sender device to spend less energy and reduces overhearing by the neighboring nodes which

AB

C

D

E

F

G Figure 1. Example ad hoc topology

978-1-4244-2829-8/08/$25.00 ©2008 IEEE

Page 2: [IEEE 2008 1st IFIP Wireless Days (WD) - Dubai, United Arab Emirates (2008.11.24-2008.11.27)] 2008 1st IFIP Wireless Days - Energy-aware routing in Mobile Ad-Hoc Networks

unnecessarily waste power on hearing the signals not meant for them.

The remainder of the paper is organized as follows: Section 2 reviews the related research in energy aware routing in MANETs. In Section 4, we present our routing protocol and its analysis. The simulation considerations and results are discussed in Section 4, and Section 5 concludes the paper.

II. RELATED WORKS

Researchers have used metrics like energy consumed per packet, time to network partition, variance in power levels across the mobiles, cost per packet, etc. to develop shortest-cost routing algorithms that conserve energy. In [8], Singh et al. propose protocols that establish routes ensuring all nodes in the route equally drain out their battery power reducing the energy consumption at a node, and hence increasing the network lifetime. But their approach has a significant communication delay as every node has to have the entire topology knowledge. In [9], Stojmenovic et al. describe several localized routing algorithms (power, cost, and power-cost) that try to minimize the total energy per packet and lifetime of each node. Their algorithms depend on location information of all nodes affected while routing, which they collect using GPS receivers integrated with each mobile node. Power efficient algorithms select well positioned neighboring nodes in forwarding the message, while the cost efficient algorithms favor nodes with more remaining battery power. Lewin-Eytan et al. in [10] solve unicast and multicast routing problems in wireless networks by building a Steiner tree spanning the terminals with maximum lifetime. Tarique et al. in [11] propose an approach to improve upon DSR [7] by using load sharing for making routing decisions, and there after link by link power adjustment per packet is done based on a transmit power control approach. In [12], Srinivasan et al. formulate the energy efficiency as one of maximizing the sum of the source utilities subject to a required constraint on the network lifetime. They define the network lifetime as the time until the first node in the network runs out of battery. They propose a flow control algorithm to solve this problem that provides optimal source rates. In [13], Rodoplu et al. propose a Minimum Energy routing algorithm which chooses minimum energy consumption per packet as the metric for optimization. They are performing local optimization on the metric from knowing the neighboring nodes’ power values thereby attaining a globally optimized minimum energy solution.

In our work, we will be using a proactive approach on top of the two channel approach. We also have a novel cost metric formulation that is used to optimize key metrics in the network ensuring proper utilization of the network and prolonged lifetime of nodes.

III. ENERGY-AWARE ROUTING ALGORITHM

A. Assumptions

We assume that the devices operating in the MANET have dual channels, i.e. data channel and control channel. Data channel is used for the transmission of data packets and the control channel is for medium access i.e. Request to Send

(RTS) or Clear to send (CTS), and for wake-up calls in the end-to-end path. However, power consumption is more during data transmission when compared to transmitting control signals. The devices are assumed to be aware of the remaining battery power in them. Most of the modern wireless devices, like laptops, have this information. Since ours is a proactive routing protocol, we assume that we will not be having a high mobility scenario. The down power for all nodes is assumed to be same. Of course, we can incorporate the notion of separate down powers by slightly modifying the algorithm.

Figure 2. BFS traversal of example MANET

B. Mechanism

When a MANET node joins the network, its data channel is switched off. This is to save battery resource. Only the control channel is kept active and ready to transmit. The device is now in partial active state. At the beginning, all the nodes have their data channels closed. When a node needs to send some data packet, it gives a Wake up call over its control channel. As it is a high power signal the receiving nodes simply forward it to their neighbors. Effectively, this is a broadcast using multiple hops. The nodes receiving this wake up signal not only forward it to their neighbors but also open their data channel. In this state, the device is said to be in fully active. Now the initiating node will broadcast GREQs, i.e. Graph Request Packets, over the data channel. The GREQs are used to generate the graph corresponding to MANET and to get the residual battery power of each node in the network. When a node receives a GREQ packet, it responds with a Graph Reply packet (GREP) with its identity and power values. We use Breadth first search (BFS) [14] for collecting the global topology.

An example of BFS is shown in Fig. 2 considering nodes shown in Fig. 1 as the MANET. The BFS traversal on the MANET results in the node order visited as ABEFGDC. During the BFS traversal, the topology information and the energy levels associated with the nodes are collected.

A data structure, “String”, is used to store the relative location of the nodes (about topology) and also its residual battery power. After visiting every node in the topology, we wind up the String and generate the entire graph of the network starting at vertex A with the data structure just obtained using GREPs.

After obtaining the global topology with the residual battery power at every node using the BFS, the cost of each node is calculated as follows: A = (100 - Pdown) / S

B = (Pn– Pdown)

Cost = S - (B / A) where Pdown is set to 10% or 5% i.e. residual battery power

when a device either hibernates or switches off. At this point a

Page 3: [IEEE 2008 1st IFIP Wireless Days (WD) - Dubai, United Arab Emirates (2008.11.24-2008.11.27)] 2008 1st IFIP Wireless Days - Energy-aware routing in Mobile Ad-Hoc Networks

node is said to be isolated from the MANET or is dead. The variable Pn is the value obtained from the GREPs about each node. For getting proper values of the cost function, a scaling factor called S is employed. S is taken as next higher power of 10 of the number of nodes in the network. Each node calculates this cost before replying to GREQs. The cost values are updated on to an adjacency list for route computations. These values are used to check the results using our simulation runs as described in Section 4.

After collecting the global topology and the cost associated with each node, Dijkstra’s shortest path algorithm is used to find out the least cost path to the desired destination. Now we have the path to the destination and the information about the nodes participating in the data transfer. These nodes will be known as pool of active nodes. Now, we send a RFP(route finalize packet) with the end-to-end path information to tell the pool of active nodes not to shut their data channels on hearing the next “SLEEP” control signal. If the sender node receives ACK signal, it initiates “SLEEP” signal over the control channel. All nodes, except pool of active nodes, switch off their data channel keeping the control channel alive. However, after this the sender should acquire the medium using RTS/CTS signals over the control channels.

Collect_Power It retrieves the current residual power of the nodes in the MANET INPUT : Source Node s, The MANET in graph G(V,E), Current Residual

Power of nodes stored in crpu, ∀ u ∈ V. OUTOUT: Discovery of connected edges in the network i.e Graph G and the residual power Pv of the nodes. Begin Initialize C = φ; k � 0 C = C U {s} while Ck ≠ φ do Ck+1 = φ

foreach( v ∈ Ck ) do Broadcast GREQ to v.neighbors for each GREP packet p received do w = p.getsource() let edge e be edge from v to w. if visited(e) == False then if visited(w) == False then link_coste � p.getLinkcost(v,w) e.type � discovery Pw � Calculate_Cost(crpw) Ck+1 � Ck+1 U {w} v.type � Visited else e.type � cross_edge k=k+1 End

Figure 3. Collect_Power pseudocode. Now that an energy aware path is available, the source and

destination can exchange data packets using the data channel in the usual way. To minimize the variance in the energy of nodes in the network, the concept of “refresh intervals” is used. With the help of recalculation of path at refresh intervals, variance of the network can be reduced. If huge chunk of data are transmitted over the same nodes, the battery of these nodes will get used up faster. The use of refresh interval ensures that same nodes don’t get used quite often, thereby saving their battery resources.

C. Pseudo Code

When a source node wants to send some data to a destination node, it checks whether it has the current global topology. If it sees that its last topology is old, it will start the Collect_Power routine, shown in Fig. 3. This routine performs a BFS with the help of GREQ and GREP packets. First, the source node broadcasts the GREQ packet to its neighbors. When a node receives a GREQ packet, it responds with the identity of its parent node, its own identity and its power values back to the sender in the GREP packets. For ease of implementation, power is expressed in terms of percentage for calculation. For each of the nodes and links, the power values are updated in a local adjacency list representing the network. The algorithm inherently calls our main metric calculation routine Calculate_Cost for each node value. This routine calculates the cost metric based on the current residual power of a node and returns the result into a list named cost. These two routines are called further when there are any updates in the topology. The pseudocode for Calculate_Cost routine is shown in Fig. 4.

Calculate_Cost(crpi) It calculates the cost of node i based on the power values INPUT:

Current Residual Power of nodes stored in crpu, ∀ u ∈ V

OUTPUT: Cost value for each node i Begin A = (100 - Pdown) / N B = (crpi– Pdown) costi = N - (B / A) return costi End

Figure 4. Calculate_Cost pseudocode

Route_Generate It generates the best path based on the cost metric. INPUT: The Graph G, cost values computed in costu //using a priority queue Q for all the vertices of G OUTPUT: a list which contains the shortest path

// di is the cost to node i initialized to ∝ for all nodes. // Q is a priority queue. Begin Q ← V[G] dstartnode ←0 while Q is not empty do // pull the minimum value from the cloud u ← Q.getMin()

for ∀v s.t v adjacent to u and v ∈ Q e � edge(u, v)) if du+ link_coste + costv<dv then dv ← du + costv route.add(v) End

Figure 5. Route_Generate pseudocode

When source node wants to compute the route to destination, it calls the Route_Generate routine, shown in Fig. 5, to bring up the best path for sending the data packets. This routine is a modified Dijkstra’s algorithm, taking into account the nodes’ cost and the link cost of the edge connecting the neighboring nodes. Each node will initialize its own distance metric as 0. This algorithm is periodically called as per the refresh interval set. The route generated using this routine is used for sending the RFP packet to all the nodes that are part of the route. Each active node stores this route information in its route cache and routing table.

Page 4: [IEEE 2008 1st IFIP Wireless Days (WD) - Dubai, United Arab Emirates (2008.11.24-2008.11.27)] 2008 1st IFIP Wireless Days - Energy-aware routing in Mobile Ad-Hoc Networks

IV. SIMULATION RESULTS

In our work, we have compared the performance of our

algorithm with two popular approaches for path selection;

modification of DSDV protocol, which uses hop-based route

determination mechanism, and the least cost approach as

mentioned in [13]. We compare the key metrics like average

residual energy of the network, variance of energy over the

network and average cost per packet for various data transfer.

We also observed the time for one of the nodes to fail, which

we term as network lifetime.

For our simulations, we generated nodes in Box

configuration over a 200x200 region. We have taken initial

node spacing as 10 units. For the simulations, we randomly

generated the graph, and adjusted the node positions, so that

we could get a connected graph with two or more paths

between any two nodes. We have stressed on the condition of

connectivity and the requirement for more than two paths,

since otherwise there will be no difference on power

consumption in those paths for the various algorithms. The

individual nodes can drift over time as the traffic is flowing

through the network.

We had used CBR traffic generator for generating traffic from designated source and destination pairs. While choosing the source and destination pairs, scenarios where the source and destination are direct neighbors were avoided. The traffic rate for the CBR was randomly chosen for different execution cycles. For each sample execution, the node’s power values were updated after transmission of every 1000 data packets.

In Fig. 6, a sample mobile ad hoc network that was generated is shown. In Fig. 7(a), the path for transferring data from node 1 to node 24 is shown. Initially, the best path is from 1->2->6->9->13->14->17->20->24. But after some time, the residual energy of the nodes will drop down. The proposed algorithm then chooses automatically the alternate best path of 1->5->8->11->12-> 16->19->23->24 as shown in Fig. 7(b).

Fig. 8 shows the Normalized energy levels after a sample run using the above network. The residual energy values of the nodes are usually better as compared with the other protocols. In a few instances, where the cost metric results in a longer route, the corresponding nodes’ power values are much lower than for other algorithms. This is an expected behavior, as we are trying not to choose the shortest paths, but the routes with the best power characteristics. In the example topology, the nodes 17 and 20 was used more often in the set of sample runs over the topology, since that path was found better in terms of our cost metric for a set of data transfers.

After every epoch consisting of data transfer between a source-destination pair, the average Residual energy was evaluated as the average residual energy value of all nodes. The simulation results with respect to average residual energy are shown in Fig. 9. As shown in the graph, the proposed algorithm results in better average residual energy for the network as a whole. For some rare sample source-destination pairs, there was not much variation in the average residual energy amongst shortest, least cost and our approach. All

battery levels are expressed in terms of normalized form as derived from the cost function.

1

16

5

8

11 12

6

9

3 4

7

10

13 14

15

2

18

21

19

22

17

20

2423

MANETNode

1

16

5

8

11 12

6

9

3 4

7

10

13 14

15

2

18

21

19

22

17

20

2423

MANETNode

Figure 6. Sample Network.

(a) (b)

Figure 7. a) Initial run of network. b) After refresh interval

65

70

75

80

85

90

95

1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24

Nodes

Normalized Residual Energy

Proposed

Shortest

Least Cost

Figure 8. Actual Residual Energy of nodes after a sample execution sequence.

65

70

75

80

85

90

95

100

1 2 3 4 5 6 7Epoch

Average Residual Energy (%)

Shortest

Least Cost

Proposed

Figure 9. Average Residual Energy over time

Fig. 10 shows the variance of the residual energy of all the nodes in the network over the various epochs. The proposed algorithm has a better variance compared to the shortest path algorithm consistently. Compared to the least cost approach, we observed that our approach in general has an improvement in terms of variance of residual power of nodes as seen from the graph. There were instances where the least cost approach was performing better than our algorithm as can be seen in

Page 5: [IEEE 2008 1st IFIP Wireless Days (WD) - Dubai, United Arab Emirates (2008.11.24-2008.11.27)] 2008 1st IFIP Wireless Days - Energy-aware routing in Mobile Ad-Hoc Networks

epoch 3. Our cost metric chooses the best available path in the refresh intervals, there by minimizing variance of the network.

0

2

4

6

8

10

12

14

16

0 1 2 3 4 5 6 7Epoch

Variance

Shortest

Least Cost

Proposed

Figure 10. Variance over time

0.4

0.45

0.5

0.55

0.6

0.65

0.7

0.75

0.8

0.85

0.9

1 2 3 4 5 6

Epoch

Normalized cost per packet

Shortest

Least Cost

Proposed

Figure 11. Average Normalized Cost per packet per hop (for another network)

The average cost of transmitting a packet over the network was computed from the simulation data. Instead of using the actual power values, normalized power values spent over the network for the entire transmission of each individual packet was used. The results are shown in Fig. 11. The average cost per packet is lesser in most instances as shown in the figure. When the power values of almost all the small paths were way too low and circuitous route were taken to reach the destination from source, there were instances where the cost was slightly worse than the other algorithms.

We also computed the network lifetime as computed in [13]. In one of our sample runs using bipartite graphs for input, we observed that the number of time units needed for the first node to fail in shortest path was 100 time units, in least cost 151 time units, while in our algorithm the first node to fail took 168 time units. We are getting a maximum of up to 68% improvement over shortest path approach, and 11% improvement, in the particular run. Averaging over all the sample runs, we observed @65% improvement over shortest path approach, and @10% improvement compared with least cost approach.

From the simulation runs, we can conclude that use of our power-metric improves in finding the best path such that the difference in battery consumption between various nodes is reduced. This means network life and time to node failure is greatly improved. The specific conclusions from the experiments are:

• As the network size increases, with more paths between the nodes, the cost savings of the network increases.

• The cost function introduced significantly improves the performance of the network.

• The overall cost savings are best in low mobility environments, where the nodes slightly drift from their locations only as the cost due to control packets is reduced.

V. CONCLUSION

In our paper, we introduce a method for computing cost

function for maximizing the average residual energy of the

network, minimizing the variance of the power of the nodes in

a mobile ad hoc network, and still reduce the cost for each

packet over transmission on the mobile network. Our

simulation results demonstrate that the cost metric used

significantly improves these power-aware metrics. We have

observed that our approach works fairly well when deployed

in multimedia application environment, where a large amount

of data has to be streamed between the source and destination

nodes.

REFERENCES

[1] S.R.C Murthy & B.S Manoj, Ad Hoc Wireless Networks: Architectures and Protocols, Second Edition (India: Pearson Education, 2005).

[2] C.E. Perkins, Ad Hoc Networking (Boston, Mass, USA: Addition-Wesley 2001).

[3] Q. Zhao, L. Tong & D. Counsil, Energy-Aware Adaptive Routing for Large Scale Ad Hoc Networks: Protocol and Performance Analysis. IEEE Trans. on Mobile Computing, 6(9), 2007, 1048-1059.

[4] C.E. Perkins & P Bhagwat, Highly Dynamic Destination-Sequenced Distance-Vector Routing (DSDV) for Mobile Computers, ACM SIGCOMM'94 Conference on Communications Architectures, Protocols and Applications, London, UK, 1994, 234-244.

[5] P. Jacquet, P. Muhlethaler, T. Clausen, A. Laouiti, A. Qayyum & L. Viennot, Optimized Link State Routing Protocol for Ad Hoc Networks, Proc. of IEEE Multi Topic Conference (INMIC 2001), Lahore, Pakistan, 2001, 62-68.

[6] C.E. Perkins & E. Royer, Ad-hoc on demand distance vector routing, Proc. of the Second IEEE Workshop on Mobile Computing Systems and Applications, New Orleans, USA, 1999, 90-100.

[7] D.B. Johnson & D.A. Maltz, Dynamic Source Routing in Ad Hoc Wireless Networks, in Tomasz I. and Hank K (Ed.), Mobile Computing, 5, (Dordrecht: Kluwer, 1996), 153-181.

[8] S. Singh, M. Woo & C. Raghavendra, Power Aware Routing in Mobile Ad Hoc Networks, Proc. of Mobicom, Dallas Texas, 1998, 181-190.

[9] I. Stojmenovic & X. Lin, Power Aware Localized Routing in Wireless Networks, IEEE Trans. on Parallel and Distributed Systems, 12(11), 2001, 1122-1133.

[10] L. Lewin-Eytan, J. Naor & A. Orda, Maximum-Lifetime Routing: System Optimization & Game-Theoretic Perspectives, Proc. of MobiHoc 2007, Montreal, Canada, 2007, 160-169.

[11] M. Tarique, K. Tepe & M. Naserian, Energy Saving Dynamic Source Routing for Ad Hoc Wireless Networks, Proc. of Third International Symposium on Modeling and Optimization in Mobile, Ad Hoc, and Wireless Networks, Trentino, Italy, 2005, 305-310.

[12] V. Srinivasan, C.F. Chiasserini, P.S. Nuggehalli & R.R. Rao, Optimal Rate Allocation for Energy-Efficient Multipath Routing in Wireless Ad Hoc Networks, IEEE Trans. on Wireless Communications, 3(3), 2004, 891-899.

[13] V. Rodoplu & T.H. Meng, Minimum Energy Mobile Wireless Networks, IEEE Journal On Selected Areas In Communications, 17(8), 1999, 1333-1344.

[14] M.T. Goodrich & R Tamassia, Data Structures and Algorithms in Java, 4th Edition (New York, USA: John Wiley & Sons, 2005).