Keywords

1 Introduction

Multicast is an important communication paradigm in wireless multihop network such as wireless ad hoc and sensor networks and it works to disseminate data from one source node to multiple multicast destinations simultaneously. Owning to its wide applications, multicast routing has become a hot research topic in wireless multi-hop networks. However, how to optimize the energy usage and accordingly maximally prolong the lifetime of wireless multi-hop networks is still a challenging issue [1, 2].

One major design objective of multicast routing is to maximize the network lifetime by constructing efficient multicast forwarding structures while minimizing the total power for delivering multicast packets on such structures. However, it has been proved that optimal multicast routing in a wireless multihop network is in general an NP-hard problem [3]. Accordingly, much work had been carried out to design efficient multicast routing heuristics. In addition, scalability is also a big concern to be considered when providing multicasting services in wireless ad hoc network due to the highly dynamic nature of such networks.

In this paper, we propose an energy-aware on-demand multicast routing protocol, referred to as EAP. The design objective is to achieve improved energy use efficiency and thus prolonged network lifetime in wireless multihop networks. For this purpose, EAP mainly combines two routing strategies, namely, adaptive power threshold adjustment and residual energy balancing with energy-critical node avoidance. Adaptive power threshold adjustment is to restrict the longest link (i.e., the link with maximum power as determined by a given power threshold) during the construction of a multicast tree so as to greatly reduce the total power of such a tree. Nodes in the network also adaptively adjust their power threshold values based on most recent witnessed route discovery success/failure history in order to improve the quality of constructed multicast trees. Regarding residual energy balancing, energy critical nodes are discouraged from serving as relay nodes in a multicast tree by introducing different deferring times at different nodes in an on-demand tree construction process. For this purpose, we introduce simple but efficient strategy for nodes in the network to easily determine whether they are energy critical nodes or not based on the current energy distribution status at nodes in the network. EAP works in an on-demand manner for multicast tree construction and it does not require any geographical information in such process. We present detailed protocol design description of EAP. Simulation results show that EAP can achieve significantly prolonged network lifetime as compared with existing work.

The rest of this paper is organized as follows. In Sect. 2, we briefly review related work. Section 3 proposes our energy efficient multicast routing protocol. In Sect. 4, we conduct extensive simulations to evaluate performance of the proposed protocol by comparing it with existing work. In Sect. 5, we conclude this paper.

2 Related Work

Energy-aware multicasting in wireless ad hoc and sensor networks has been a hot topic in recent years and much work has been carried out in this area. Typically, there are mainly two classes of energy-aware multicast routing protocols: minimum power routing and maximum lifetime routing.

Finding a multicast tree with minimal power while covering all group members in a wireless multihop network had been proved to be NP-hard. Heuristic solutions for this purpose work to build a near-minimum power multicast tree. In [4], near-minimum power multicast trees are established by using global network state and multicast group-specific information. Different from the strategy in previous work like [4], different strategies were considered to minimize the energy for the tree constructions in different scenarios. In [5], the authors considered selection of appropriate forwarding nodes and also intelligent schedule of the transmission of the forwarding nodes to cover the receiving nodes with a minimum number of transmissions in duty-cycled wireless sensor networks. In [6], the authors granted the cognitive ability to each node so that each of them can obtain the minimum transmission power by sensing, acting, and deciding. Das et al. exploited fuzzy logic to choose the path with minimum energy consumption of nodes [7]. The above protocols focuses on minimizing the total power for each multicast packet delivery while lack of consideration on energy balancing which can hurt the network lifetime.

The main idea of maximum lifetime routing is to balance the residual energy of the nodes in the network when conducting multicasting in such networks. BMT [8] modifies the relaxation operation and takes lifetime as the weight to build a multicast tree. Damdinsuren et al. [9] proposed the sharing-residual-energy-information method to extend the network lifetime. Paper [10] used network coding to improve the maximum lifetime in lossy wireless networks with AWGN channel and Rayleigh fading channel. Zhu and Shen used the particle swarm optimization to establish a delay constrained maximum lifetime multicast tree in the wireless ad hoc networks with directional antennas [11]. The algorithms mentioned above need global network state information which makes them have the scalability issue. In addition, overly pursuing of energy consumption balancing may cause excessive energy consumption at some nodes in the network, which in return hurts network lifetime.

3 Proposed Protocol

In this section, we propose our protocol EAP in detail. EAP is designed to achieve energy-efficient multicast routing for long network lifetime and low energy draining while incurring little overhead for multicast tree constructions. For this purpose, EAP incorporates two strategies: adaptive power threshold adjustment and residual energy balancing. Adaptive power threshold adjustment works to restrict the longest link (i.e., the link with the maximum link power as determined by pre-determined power threshold) in a multicast tree in order to support low-power multicast in networks wherein nodes can adaptively adjust their transmission powers depending on the transmission ranges. The purpose of introducing residual energy balancing is to discourage energy-critical nodes from serving as relay nodes on a multicast tree, whenever possible. The nodes falling into the energy critical range (or called energy protection range) are those nodes whose residual energy are lower than the current residual energy threshold. These two strategies will be described in details in the following subsections.

3.1 Adaptive Power Control

In this paper, we adopt the following power model for determining the transmission power for successful transmission between neighbor nodes. Specifically, the transmission power with distance d from a sender to destination receiver can be modeled as follows:

$$ P\left( d \right) = kd^{\alpha } + c. $$
(1)

where k and c are constants and the value of \( \alpha \) is typically between 2 and 4 based on radio propagation environment. Obviously, according to this power model, low-power routing prefers those paths consisting of more short links other than those paths consisting of less long-haul links. The property also holds in power-efficient multicast as we study in this paper when building power-efficient multicast trees.

The procedure of the adaptive power threshold adjustment is partially borrowed from [12] and it was originally designed for power efficient unicast routing. Here, we modify it to support power-efficient multicast, which works as follows. The source node initiates the routing discovery by flooding a route request (RREQ) packet across the network, which carries a common transmission power value P1 (0 < P1 < P max ). P1 is the initial power threshold as decided by the source for the route discovery and it can be updated when appropriate. Upon receiving a non-duplicate RREQ, an intermediate node u forwards it further by using the pre-determined common power level P1 that the RREQ carries and records the node from which receiving the RREQ as the last hop. If a multicast destination receives such a RREQ, it sends a route reply (RREP) back to the source. When the number of replies collected equals the multicast group size G, a multicast tree is established successfully and the source can send multicast traffic downstream along the tree. However, if timed out and the number of replies is still smaller than G, the source will increase the power threshold by a certain amount and start another route discovery process. This process continues until the multicast tree is established successfully or reply number is still smaller than G even after increasing the common transmission power to P max .

3.2 Residual Energy Balancing

Residual energy balancing works in the following way. Based on the membership status, nodes in the network can be divided into two types: group member and non-group member. Based on their residual energy amount, they can also be divided into two types: Energy-critical nodes (i.e., their residual energy are below the current energy protection threshold E k ) and energy-abundant nodes (i.e., their residual energy is above E k ). The energy protection threshold E k is determined by using a given protection range β (0 < β < 1). For example, suppose \( \beta \) = 20% and the residual energy of nodes in the network ranges from E min to E max , the protocol is expected to protect 20% of nodes with the lowest residual energy and we have:

$$ E_{k} = E_{min} + \beta \, \times \,\left( {E_{max} - E_{min} } \right). $$

In this paper, node energy is divided into L discrete levels to reduce the communication overhead. Let E i denote the residual energy of node i and let L i denote the residual energy level of node i. Then we have \( L_{i} = L\, \times \,E_{i} /E_{max} \). Initially, all nodes in the network broadcast their energy levels across the network and E k can be computed after receiving all nodes’ energy levels. As the network keeps running and nodes in the network keep burning their energy, nodes’ residual energy levels drop with time. In this case, as long as a node detects its current residual energy level is below the “known lowest residual energy level” in the network, it will broadcast its current residual energy level across the network to let other nodes in the network to learn the decrease of the “known lowest residual energy level.” In this case, each node in the network can easily determine whether the node itself is in the energy protection range or not. During an on demand routing process, different nodes shall be assigned different deferring times for further retransmitting a received RREQ packet according to their membership types and also their residual energy statuses. The purpose of this operation is to enable RREQs taking good routes to travel fast.

During the routing discovery process, when an intermediate node i receives a RREQ for the first time, it records the node from which it receives the RREQ as its last hop, sets its local deferring time according to its role in the network and forwards it when its deferring timer expires. The deferring time length at a node i is set as follows:

$$ {{\text{RREQDelay}}\left( i \right)\, = \,\left\{ {\begin{array}{*{20}c} {random\left( {0,\,T} \right)\, + \,LPT_{i} \quad \left( {i\;{\text{is}}\;{\text{a}}\;{\text{group}}\;{\text{member}}\;{\text{node}}} \right)} \\ {{ \hbox{min} }\left( {Extrahop\, \times \,T,\,MAXT} \right)\, + \,random\left( {0,\,T} \right) + LPT_{i} \;\left( {\text{otherwise}} \right)} \\ \end{array} } \right..}$$
(2)

In (2), T is the time unit. In addition, random(0, T) returns a random value in the range of (0, T) and it is introduced to avoid collision caused by the simultaneous transmission attempts of neighbor nodes. ExtraHop refers to the hop that the RREQ is away from the source or last group member encountered and it is introduced to recruit as few non-group members into the multicast tree as possible. MAXT is to control the maximum extra deferring time at non-group member nodes so as to control the worst-case path acquisition latency. LPT is a variable introduced to discourage energy critical node to join the tree as relay node. LPT is computed as follows, where E i is the residual energy of node i:

$$ LPT_{i} \, = \,\left\{ {\begin{array}{*{20}l} {{ \hbox{max} }(2^{{\frac{{E_{max} }}{{E_{i} }}}} \, \times \,T,\,8T)} \hfill & { if\;E_{i} \, < \,E_{k} } \hfill \\ 0 \hfill & { \left( {otherwise} \right)} \hfill \\ \end{array} } \right.. $$
(3)

In this way, the possibility that energy critical nodes and non-member nodes join the multicast tree as relay nodes is greatly reduced, which is expected to be helpful for prolonging the network lifetime and also reducing total power consumption.

3.3 Detailed Protocol Design

EAP combines the above two strategies into the on-demand multicast tree constructions and the protocol design details are as follows.

All nodes in the network have two thresholds: power threshold and energy protection threshold. The initial power threshold at each node can be set to the maximum power (i.e., P max ) and can be adjusted based on the most recent success/failure of route discovery using different power thresholds as the node witnessed. Energy protection threshold E k is determined as mentioned in the preceding subsection and will be updated as each node’s residual energy keeps dropping. Moreover, the RREQ-deferring times at different nodes in the network are calculated by using Eq. (2).

When a source node s wants to initiate a multicast transmission, it first conducts a route discovery process by broadcasting a RREQ with the common transmission power P s (the power threshold of source s) in the network. For an intermediate node receiving the RREQ for the first time, it will forward the RREQ with the common transmission power when its local deferring timer as calculated by using (2) expires. Duplicate RREQs will be directly dropped without further processing. When the RREQ reaches a multicast destination, a route reply (RREP) will be sent back to the source along the reverse path. If the number of RREPs that the source collects in certain time equals the multicast group size G, the multicast tree is built successfully. Otherwise, the source s will increase its power threshold by a certain amount \( \Delta P \) and initiates another route discovery process by carrying this updated power threshold value. The above process will be repeated until all multicast destinations are reached so that the tree construction is successful or no sufficient number of RREPs collected even after increasing P s to P max , which means failure of the route discovery process.

It is worth noting that the nodes overhearing the routing process will adjust their power threshold adaptively. For an arbitrary node u in the network, if it overhears a RREQ from source s in the kth route searching round, this process denoted as EAP(s, k), without hearing any RREQ \( \in \) EAP(s, k + 1) which means success of EAP(s, k) for route discovery. In this case, u can adjust its power based on the overheard knowledge: If P u  < P s , u will increase P u by an amount of \( \Delta P \); Else, we have P u  > P s , in this case, u will decrease P u by an amount of \( \Delta P^{{\prime }} \) to approach P s . This adaptive power threshold adjustment is to achieve a good tradeoff between route acquisition latency and path quality in terms of power consumption.

4 Simulation Results

In this section, we conduct simulations to evaluate the performance of the designed protocols by using a discrete-event simulator developed using C++. In the simulations, hundreds of connected topologies are generated randomly. Each result reported in the simulation figures is the average of different tests. Nodes are uniformly distributed in a 1000 m × 1000 m square area. For each multicast request, its source and multicast destinations are chosen randomly. The packet generating rate from the multicast source is 8 packets/s and the source continues sending 100 data packets for each request. Once a multicast session is over, a new multicast session will be generated randomly. The battery capacity E max is set to 200 J and the residual energy range [0, E max ] is equally divided into 20 levels. The MAC layer is assumed ideal which can guarantee packet delivery without loss. The transmission power of each node is normalized over the max transmission power. The simulation parameters used are listed in Table 1.

Table 1. Simulation parameters.

In the simulations, we realized the following four protocols: EAP, EAP-E, EAP-P, and SRT. EAP-E implements the residual energy balancing part in EAP without considering the power control part (i.e., maximum transmit power is always used in both route discovery and data packet transmission), EAP-P implements the adaptive power control part in EAP without considering residual energy at nodes, and SRT works to build a multicast tree, which minimizes the sum of reciprocal of nodal residual energy from the multicast source to each group member during the multicast tree establishing process. All these protocols work in an on-demand manner for tree construction. In EAMRP and APCRP, the power increment \( \Delta p \) is set to \( \frac{1}{8} \) and the power decrement \( \Delta p^{{\prime }} \) is set to \( \frac{1}{16} \). These settings for adjusting power threshold values are to accelerate routing convergence with certain penalty in path quality. We mainly focus on two metrics: network lifetime and the energy consumed per multicast session. The lifetime of a network is measured as the duration until a first node run out of its energy.

4.1 Energy Protection Range Determining

The energy protection proportion \( \beta \) has a big impact on the performance of EAP and EAP-E. Figure 1 plots the network lifetime of EAP with different \( \beta \) values. In this test, the network size was fixed to 100 and the multicast group size was fixed to 15. In Fig. 1, it is seen that when the energy protection ratio is too low or too high, the network lifetime will both be short. That is because both cases cause too few nodes being protected (for the former case) or too few nodes serving as protectors for relaying (for the latter case), which hurt the performance of energy protection routing. In Fig. 1, the network lifetime reaches its peak when \( \beta \) = 0.2.

Fig. 1.
figure 1

Network lifetime with varying energy protection range \( \beta \).

4.2 Searching Rounds in EAP

The average number of searching rounds required for a routing acquisition is illustrated in Fig. 2. In this test, the network size and energy protection proportion ratio are 100 and 0.15, respectively. We can see that with the increasing of multicast group size, average number of searching rounds per route acquisition increases and the result lies between 1 and 2. That is because as multicast group size increases, the possibility at which a source reaches all the multicast destinations with the adjust power decreases so more searching rounds may be triggered.

Fig. 2.
figure 2

Average number of searching rounds per route acquisition versus multicast group size.

4.3 Performance Comparison

In this experiment, we conduct simulations to observe the routing performance with varying multicast group size. Energy protection range and network size were fixed to 0.15 and 100, respectively. The multicast group size varies from 5 to 30 with step size 5. The simulation results are shown in Figs. 3 and 4. In Fig. 3, it is seen that network lifetime decreases as multicast group size increasing because larger group size leads to larger multicast tree, which will consume more energy per multicast packet delivery thus resulting in a shorter lifetime. The same reason applies to Fig. 4, where energy consumption increases with the increase of multicast group size. By comparison, we find that EAP performs the best in terms of network lifetime and it outperforms EAP-E by 13–17% in terms of network lifetime while consuming almost the same amount of energy as compared with EAP-P.

Fig. 3.
figure 3

Network lifetime by different algorithms/protocols versus multicast group size.

Fig. 4.
figure 4

Average energy consumption by different protocols per multicast packet versus multicast group size.

5 Conclusion

In this paper, we proposed an energy-aware on-demand multicast routing protocol EAP for wireless ad hoc and sensor networks wherein nodes are able to adjust their transmission powers according to communication ranges. EAP jointly considers minimized energy consumption and maximized network lifetime in its implementation. In EAP, nodes adaptively adjust their powers to achieve low power trees and discourage energy critical nodes from serving as relay nodes in a multicast tree. EAP is simple and requires neither local nor global status information. It incurs little overhead for multicast tree construction. Simulation results show that EAP can greatly prolong the network lifetime and reduce the energy consumption to a large extent as compared with existing work.