Reliable Multicasting Service for Densely Deployed Military Sensor Networks

Wireless sensor networks (WSNs) have drawn attention for military applications where a large number of light-weight sensor nodes can detect enemies and intruders in the battlefield and alert a command post (CP) to our forces. In particular, in the military sensor networks, QoS (quality-of-service) is one of the most important requirements to support their mission-critical applications. However, achieving reliable data transmission is not an easy task because sensor nodes are densely deployed and wireless channel is unpredictable due to high mobility. Also, in the multihop deployed sensor networks, redundant data forwarding occurs frequently and it causes interference among the nodes. In this paper, we propose an efficient reliable multicast scheme using pre-ACK frames to provide fully reliable multicasting and decrease unnecessary data forwarding in the military sensor networks. When a receiver node overhears a multicast frame, the pre-ACK is used to announce its reception of the multicast frame to neighboring nodes which then do not need to duplicate the same multicast frame to it. The performance evaluation shows that the proposed scheme provides full reliability (100%) and outperforms the existing schemes in terms of aggregate throughput (612%) and energy consumption (514%) when the number of nodes is 512 with full buffer.


Introduction
Wireless sensor networks (WSNs) consist of a large number of small-and light-weight sensor nodes which sense the environment and exchange the gathered information with each other or transfer to the sink nodes (controller or monitoring nodes). The sink nodes process collected information and dispatch respond command to the sensor nodes. Due to the advantages of sensor technology and wireless communications, WSNs have various applications for military, healthcare, intelligent transportation, and disaster preventing systems.
In military environment, wireless sensor technology is widely used to manage unauthorized access. Some special applications are deployed such as enemy and intruder detection systems in the battlefield and difficult areas where the human cannot access, alert system for the command post (CP), or control unit of the abnormal activities.
Although the military applications enabled by WSNs are very attractive, there are many technical challenges that must be overcome in order to build well-functioning robust systems. The QoS (quality-of-service) requirements of missioncritical applications are very important. For instance, sensor and sink nodes should reliably exchange their information to guarantee decision-making in real time. Since a large number of sensor nodes are densely deployed and the native behavior of wireless communication is unpredictable due to the high mobility, it is very hard to achieve reliable multicasting. Moreover, in the multihop sensor networks, unnecessary data forwarding activities occur frequently and they cause interference.
According to our taxonomy [1], the existing reliable multicast schemes can be classified into ACK, NAK, or both. In the ACK-based scheme [2,3], a source node should receive ACKs from all receivers to guarantee full reliability. However, if there are a large number of receivers located in the source, it will cause significant contention in the wireless channel. On the other hand, in NAK-based scheme, a receiver transmits NAK frame when it does not receive data frame [4]. However, NAKs cannot handle the unique cases in which all frames 2 International Journal of Distributed Sensor Networks are lost at a particular node in the network. In the hybrid scheme, a transmitter elects a broadcast group leader. Nonleader receivers use the NAK-based scheme, while the leader uses an ACK-based scheme [5]. However, it will fail if the leader receives a frame successfully while all of the other receivers do not.
By the above taxonomy approach, the proposed scheme is classified as ACK-based scheme because it provides full reliability. However, in densely deployed sensor networks, the ACK-based scheme will cause ACK implosion problem as mentioned earlier [1]. To compensate for this disadvantage, we develop a customized ACK (called pre-ACK) and implement an additional procedure. The pre-ACK transmission could provide fully reliable multicasting and decrease unnecessary data forwarding. When a receiver node overhears a multicast frame, the pre-ACK is used to announce its reception of the multicast frame to neighboring nodes which then do not need to duplicate the same multicast frame to it.
The remainder of this paper is organized as follows. We survey the existing related work in Section 2. In Section 3, we describe the proposed reliable multicasting algorithm, and the mathematical analysis is provided in Section 4. Section 5 evaluates the performance of our scheme in comparison with other legacy techniques. Finally, in Section 6, we draw conclusions.

Related Work and Contributions
The reliable multicasting schemes have been classified into ACK, NAK, or hybrid. One of the ACK-based schemes, a slotreservation-based reliable broadcast protocol, was proposed to compensate the existing multicast scheme for lack of reliability [2]. In this scheme, a source node should receive ACKs from all receivers to guarantee full reliability. However, if there are a large number of receivers located in the source, the ACKs from the receivers should be collided in the wireless channel. Another ACK-based scheme called the round-robin acknowledge and retransmit (RRAR) scheme tries to reduce the above problem [3]. In this scheme, a sender requires a group acknowledgement from one of its neighbors after multicasting. This RRAR scheme is operated in a roundrobin fashion for all receivers. Since only one of the receivers transmits ACK frame, the ACK implosion problem can be reduced. However, it cannot guarantee the reliability of all nodes when a large number of receivers are deployed.
On the other hand, NAKs are transmitted when receivers do not receive multicast frame due to network failure. NAKbased scheme is well established under reliable channel condition (the loss probabilities are not high). Cooperative loss recovery for reliable multicast in ad hoc networks [4] is a NAK-based scheme, in which the NAK frames are transmitted after random durations to avoid NAK collision. Since one NAK is sufficient for the sender to be aware that an error has occurred, retransmission of the original frame also informs the receivers of later NAK timers to suppress their scheduled NAKs. In [6], the authors proposed another NAKbased scheme which should adaptively change coding scheme according to the link quality. However, NAKs cannot handle the unique cases in which all frames are lost at a particular node in the network. In such networks, the NAK frame also can be lost and the sender will be confused that transmitted data frames are successfully delivered to all receivers. Because of the above problems, ACK or NAK has not been used for multicasting services in military sensor networks.
To tackle the above problems, a hybrid scheme that uses both ACK and NAK has been proposed [5]. In this scheme, a transmitter elects a broadcast group leader. To cope with the ACK implosion problem, non-leader receivers use the NAKbased scheme, while the leader uses an ACK-based scheme. However, this scheme still does not work in all cases; it will fail if the leader receives a frame successfully, while all of the other receivers do not.
Moreover, the aforementioned schemes were proposed for static network topology and single-hop transmission. In the military sensor networks, the sensors are densely located and they forward redundant multicasting data frame due to high mobility. Therefore, the above schemes are not suitable for the military networks. In this paper, to resolve the above problems, we propose a reliable multicast protocol for military sensor network. The proposed reliable multicasting scheme uses a pre-ACK where it provides full reliable transmission in densely deployed sensor nodes. In cooperation with an additional procedure, the scheme can also reduce unnecessary data transmission in the multihop environment. As a result, the transmission collision among sensor nodes is downgraded significantly.

Reliable Multicasting Algorithm
In this paper, we assume a multihop topology in which all sensor nodes maintain their routing tables to forward data frames. Each routing table has a maximum number of entries (denoted by ). To release routing table cost, we use routing table management technique. If the routing table of a node is full, it chooses a neighbor node which has the shortest distance in its routing table. Then, it deletes that entry and broadcasts a network reconfiguration frame to its multicasting group. When sensor nodes receive this frame, they try to find another path except the previous path. Sensor nodes establish a group by peering procedure (as in Figure 1). In these networks, sensor nodes in the same multicasting group communicate with each other. For instance, if node has multicast data it transmits the frames to all of nodes and (nodes and are the same multicasting group 1 with node ).
If a sensor node receives a multicast data frame, it has to decide to forward the frame or not. The sensor node compares the source and next-hop addresses with entries of its routing table. If it finds one or more next-hop entries which are not overlapped with the source address and those next-hop entries have the same multicasting group with the received frame, the sensor node forwards the incoming data frame to other sensor nodes. Otherwise, it does nothing.
For instance, in Figure 1, we assume that sensor node multicasts data frame to group 1 (nodes , , , , and belong to group 1). Sensor node receives the data frame and compares source address of the received frame and nexthop address with entries in its routing table. If finds any routing entry matches with the source address, it searches International Journal of Distributed Sensor Networks Multicasting group 1 Multicasting group 2 · · · · · · · · · ⟨Routing table of node A⟩ Figure 1: A typical example of sensor networks; each sensor node maintains its routing table in order to allow multihop transmission and sensor nodes to establish their multicasting group.
another routing entry that has the same multicasting group with different next-hop address field. Since node has a routing entry (node ) to forward, it relays multicasting frame. The multicasting data frame is delivered to node and node does not forward the multicast data frame because there is no entry to forward.
Normally in ACK scheme, to guarantee the reliability of data transmission between sensor nodes, all receivers must acknowledge the receipt of the frame from the transmitter. In above networks, relay nodes such as node or should receive ACK frames from nodes and , respectively. However, this scheme will cause severe network degradation due to unnecessary data retransmission in several network topologies. Figure 2 describes this network degradation. We assume that 4 nodes ( , , , and ) belong to the same multicasting group and each sensor node maintains its routing table. Even if nodes and are neighboring nodes with node , they do not have routing entry for node . For example, in network configuration stage, they are far away more than 1-hop from node . However, after that they can be close to node due to their mobility. At = 0 , node multicasts to its neighbor nodes , , and and waits for ACK frame from only node (Figure 2(a)). Then, node forwards the received data frame to node and transmits ACK frame to node ( = 1 ). At = 2, node forwards the multicast data to node and transmits ACK frame to node . Lastly, node receives multicast data and acknowledges to node ( = 3 ).
As observed in the above example, the ACK poses unnecessary long chain of data transmission. Even if we assume reliable links, unnecessary data transmission occurs (nodes , , and already received multicast data at = 0 ).
To resolve the above problem, we proposed pre-ACK scheme. Once a sensor node overhears a multicasting data frame and the source address of received frame is not included in its routing table, the node transmits pre-ACK to the neighbor nodes which are in the routing table.
Pre-ACK includes (1) originator address of data, (2) sequence number of data, and (3) address of receiver. Also, in the proposed scheme, we use ACK table where it indicates whether neighbor nodes successfully receive transmitted data frame or not. If all receivers in the ACK table are acknowledged, the node does not forward the data frame any more. Algorithm 1 shows the pseudocode for proposed pre-ACK scheme. Let F and denote the source address of received frame and routing entry of node , respectively. In the proposed scheme, if node receives multicasting data frame, it checks whether F is in a routing entry or not (lines [4][5]. If F is in a routing entry of node , the ACK table index F is set to 1, because receiving multicasting data frame is considered as an implicit ACK (line 6). Then, if there are other entries that are 0 in , the node relays multicasting data to these nodes (lines 7-8). Otherwise, it transmits ACK frame to F (lines 9-10).
On the other hand, if there is no entry for F in node 's routing table and F is a member of the same multicasting group, it transmits pre-ACK frame to all nodes in routing table to limit unnecessary duplicate data transmission (lines 12-13). When node receives pre-ACK frame, it sets index F of ACK table to 1 if F is in a routing entry of node (lines 17-19). If it receives ACK frame, it also sets 1 to ACK table index F . Figure 3 is an example scenario for the proposed scheme. Here, node is the originator node and nodes , , , , and are in the same multicasting group of node . At = 0 , node multicasts to its multicasting group members. However, nodes , , and also overhear multicasting data frame as in Figure 3(a). In this scenario, we assume that node cannot overhear the data frame due to network environment such as channel condition or collision. In Figure 3(b), node transmits ACK frame to node and forwards data frame to node . At this time, nodes and also transmit pre-ACKs to their neighbor nodes (we assume that node 's pre-ACK cannot be delivered to node ). Nodes , , , , and receive pre-ACK from their neighbor nodes and update its ACK tables. At = 2 , there are some entries to forward multicasting data because nodes and do not know whether nodes and successfully receive data frame or not. Then, nodes and retransmit multicasting data frame to and , respectively. Lastly, nodes and transmit ACK frames to nodes B and D respectively and the whole ACK table is checked.

Analysis of the Proposed Scheme
In this section, we provide a mathematical model to measure the network throughput in cases of the proposed scheme which uses pre-ACK. To measure the network throughput, we design the discrete-time Markov chain (DTMC) model along with assuming a finite number of nodes. We discuss one such model that obtains saturated throughput. Figure 4 shows the state transition process of a node represented by a discretetime Markov chain model. Let the steady-state probabilities of the Markov chain be denoted by , , , , , , and where , , , , , , and represent state of "idle, " "transmit multicast data, " "wait for ACK, " "transmit ACK, " "receive multicast data, " "receive pre-ACK, " and "transmit pre-ACK, " respectively.
Then we need to derive the transition and steady-state probabilities. First, we obtain the steady-state probabilities from Figure 4   (1) Next, we need to calculate the transition probabilities. First, we can derive as where denotes the probability that a node transmits in the backoff stage. This can be calculated using the backoff Markov chain model from [7] and can be calculated as follows: where and 0 denote the collision probability and maximum backoff window size for stage 0, respectively. denotes the number of backoff stages. Next, we can derive as = {There are routing entries to forward} where denotes the number of routing entries.
Similarly, we can derive and as = {Transmitted frame is collided} = , = {There are routing entries to forward} Since we assume that all of the frames except the data frame are delivered successfully, , , and are 1. Then, we can derive as where 1 = {neighbor node transmits a pre-ACK} and 2 = {source is a member of multicasting group}. Then, we can obtain 1 = (1 − / ) and 2 = / , where is the number of neighbor nodes. Similarly, we can obtain Next, we can derive as = {there is no entry for source address} Also, can be calculated as   International Journal of Distributed Sensor Networks (1) F a ← the source address of received frame (2) E i ← the routing entry of node i (3) loop (4) if receives multicasting data frame then (5) if F a is a routing entry of node then (6) A C Kt a b l ei n d e xF a is set to 1; implicit ACK (7) if there are other entries in E i are 0 then relay case (8) relays multicasting data to these nodes; (9) else non-relay case (10) transmits ACK frame to F a ; (11) end if (12) else if F a is in the same multicasting group of then (13) transmits pre-ACK frame to all nodes in routing By solving the balance equation for the steady-state probabilities, we can obtain each steady-state probability as Thus, according to (2)-(13), all of the steady-state probabilities are expressed as , which is finally determined by imposing the normalization condition that is simplified to We denote the time period during which a node is in the corresponding states by , , , , , , and . Since we assumed a full buffer model for each node, there is no waiting time for data arrival from the upper layer. Therefore, the expected time in the idle state, denoted by [ ], can be calculated as where denotes a backoff slot time duration. Similarly, expected time in each state can be calculated as follows: where pre-ACK, DATA, , and denote the size of pre-ACK, multicast data frame, data rate, and ACK timer, respectively. Lastly, we can calculate the network throughput for proposed scheme. Then, the throughput of a network with nodes is given by  (18) Figure 5 shows the aggregate throughput analytical result. We compare our proposed scheme with ACK-based multicasting scheme. We observed that the aggregate throughput achieves the best performance when the number of nodes is 4∼5. This is mainly because increasing the number of nodes increases the interference of each ongoing communication. Moreover, our proposed scheme outperforms ACK-based scheme by limiting unnecessary data transmission. As a result, our scheme can reduce the number of collisions between sensor nodes.

Performance Evaluation
To evaluate our proposed scheme, we developed network scenarios based on OPNET simulator. The simulation parameters are listed in Table 1. To measure the effectiveness of the pre-ACK scheme, we evaluated the areal sum throughput which is the total number of packets received by all sensor nodes and energy consumption which is the total energy consumption of all nodes divided by the number of transmitted frames. To evaluate the effectiveness of proposed scheme, we compared the performance of the pre-ACK scheme with normal-ACK-based scheme using OPNET simulation. Also, we have three scenarios. In Scenario 1, the topology size is 50 m × 50 m and all sensor nodes are located in 1-hop range. In Scenario 2, the topology size is also 50 m × 50 m and maximum hop range is 2-hop. Lastly, in Scenario 3, all sensor nodes are uniformly distributed in 500 m × 500 m and maximum hop range is 10-hop. Figure 6 shows the areal sum throughput versus the number of nodes. In our proposed scheme, the throughput has 2.1 × 10 4 Mbps/km 2 while it has 2.6 × 10 4 Mbps/km 2 in the ACK-based scheme when the number of nodes is 512. ACKbased scheme achieves the best performance since there is no collision in this scenario. In our proposed scheme, ACK frames collided among the receivers. The throughput of the proposed scheme is 20% less than the ACK-based scheme when the number of nodes is 512 due to ACK overhead. Figure 7 shows the areal sum throughput in Scenario 2. In both of the schemes, the throughput increases as the number of nodes increases. It is different from Scenario 1; the proposed scheme has throughput higher than ACKbased scheme's since the transmitted data collided among transmitters. The throughput of the proposed scheme is 3% higher than the ACK-based scheme when the number of nodes is 250 and the number of transmitters is 8. The reason is that ACK-based scheme does not provide retransmission function when a data frame is collided. Figure 8 shows the areal sum throughput in Scenario 3. In our proposed scheme, the throughput increases as the number of nodes increases. However, the throughput of ACK-based scheme decreases after the number of nodes is 250 since ACK frames collided more, and hidden node problem occurs in this scenario. Also, if a relay node does not receive any data frame, it does not forward data frame anymore in the No-ACK-based scheme. Pre-ACK technique can reduce the transmitted ACK frames. Figure 9 shows the energy consumption versus the number of nodes in Scenario 3. As shown in the figure, the energy consumption increases as the number of nodes increases in ACK-based scheme. This is because there are more data and ACK collisions in this scenario. We observe that our 8 International Journal of Distributed Sensor Networks  Figure 6: Aggregate throughput versus the number of sensor nodes (Scenario 1).
pre-ACK scheme is more energy-efficient than ACK-based scheme.

Conclusion
Wireless sensor networks have drawn attention for military applications where a large number of light-weight sensor nodes are used to detect enemy and transmit sensed information to sink node. In particular, QoS is one of the most important requirements to support their mission-critical applications. However, to achieve a reliable multicasting transmission is very hard because sensor nodes are densely located and the native behavior of wireless communication is unpredictable due to high mobility. Moreover, in the multihop deployed sensor networks, redundant data forwarding occurs frequently and it causes interference among the nodes. In this paper, we proposed an efficient reliable transmission scheme using pre-ACK frames to provide full reliability multicasting data transmission and decrease unnecessary data forwarding activities in the military sensor networks. In our scheme, the ACKs are exchanged periodically to verify the availability of adjacent nodes and the pre-ACK transmission is used to prevent redundant frames between neighbor nodes. The performance evaluation shows that the pre-ACK-based scheme outperforms the existing ACK-based schemes in terms of the aggregate throughput and energy consumption.