1 Introduction

Multi-hop wireless networks consist of multiple wireless nodes collaborating to provide communications between sources and destinations distributed in geographically different places. Such networks are of practical importance due to their lower cost, rapid deployment, and flexibility compared with wired networks in connecting or covering nodes in an area where single-hop wireless networking is not sufficient. Moreover, transmission over multiple “short” links might require less transmission power and energy than over “long” links.

Due to the nature of wireless radio communications, there are two fundamental issues in multi-hop wireless networks that significantly impact on data transmission performance; lossy unreliable wireless radio links, and conflicts (interferences) among simultaneous transmissions on adjacent links (or links within an interference range) using the same radio frequency channels [3], especially in using non-directional (omnidirectional) antenna.

Fig. 1.
figure 1

Real-world facility monitoring scenario

Recovery of lost messages can be considered either in a reactive manner, i.e., ACK and NACK-based re-transmission (ARQ), or in a proactive manner i.e., message-level forward erasure correction (FEC) and bit-level forward error correction. On the other hand, two types of Media Access Control (MAC) schemes can be considered to avoid/reduce simultaneous transmission conflictions, the contention-based such as CSMA/CA and the scheduling-based such as Time Division Media Access (TDMA).

Fang, et al. [4] proposed XOR-based network coding to the loss recovery of reliable broadcast transmission in wireless networks. Sagduyu, et al. [5] implemented network coding in tandem network case, they considered the problem of network coding in wireless queuing networks with tandem topology. In earlier work of TDMA scheduling, it is based on distributed implementation, i.e., [6] proposed a distributed implementation of RAND, a randomized time slot scheduling algorithm, called DRAND. Otherwise, the shortest schedules is proposed in [7], which introduced two centralized algorithms. Zeng, et al. [8] proposed a new scheduling algorithm based on the collaboration of nodes to resolve the slot collision when nodes try to assign slots to them.

In this paper, we target a tandem multi-hop transmission model on static (stationary) nodes with lossy unreliable wireless links, which can be seen in facility monitoring scenarios where multiple stationary nodes (sensors that can relay messages) are serially arranged along a road, river, or power transmission tower network as shown in Fig. 1. In this example, a stationary sensor node located at each power transmission tower monitors the facility and periodically generates a monitoring message. Each message is relayed on a lossy unreliable wireless link between two neighbour sensor nodes, which is eventually bound for a single central management server via one of the gateways at the both edges of the network, e.g., electric power substations.

We propose a framework for message transmission scheduling on tandem multi-hop lossy wireless links that consists of; (i) a static global time-slot assignment over all links to avoid unnecessary interferences, (ii) a local message selection for transmission including a naive XOR network coding-based redundant transmission for proactive recovery over assigned time-slots on each link to recover lost messages. Item (i) is analytically derived by a central high-performance server based on each individual link’s message loss rate (which is assumed to be stable over some time duration), while item (ii) is light-weight and simply done by each node. We do not need to assume any advanced but complicated physical layer and MAC layer functions such as adaptive moderation, interference cancellation, CSMA/CA, high-dimensional network coding, and ACK/NACK-based reactive recovery. On the other hand, to realize item (i), we need to assume a protocol between the server and each node by which the server can estimate the loss rate of each link averaged over some time interval and can inform each node of the global scheduling decision. This mechanism is not treated in this paper and remains as future work.

The rest of this paper is organized as follows. In Sect. 2, we describe a system model used in this paper. In Sect. 3, we provide the proposed message transmission scheduling scheme. Section 4 presents evaluation and discussion through simulation results. Finally, Sect. 5 concludes the paper. This paper is an extended version of [1, 2].

2 Tandem Multi-hop Transmission Model

A simplified tandem multi-hop transmission model (Fig. 2) is used in which n nodes (\(j = 1,2,\ldots , n\)) are connected in tandem and each node periodically generates a message at the beginning of every “one circle” (consisting of T time-slots [e.g., sec]). A message generated at source node k is denoted as message k (\(k = 1,\ldots ,n\)). Each message can be transmitted on a link from a node to an adjacent in a single time-slot, should be relayed in a store-wait-and-forward manner from its source node to either of two gateways (X and Y) at the edges of the tandem, and then will be forwarded from the gateway to central server S via a reliable network. Link j connects two nodes j and \(j-1\) with loss rate \(q_j\) (\(0< q_j < 1\)) that is the probability of message loss on link j. We assume that each message should reach either node X or Y within T time-slots (i.e., within the current time circle).

Fig. 2.
figure 2

Two-gateways single-directed model

Fig. 3.
figure 3

Interference avoidance condition

We adopt a single directed model in which, for some separation node m, messages generated at nodes \(1, 2, \ldots , m\) will be destined for X and those generated at nodes \(m+1, m+2, \ldots , n\) will be destined for Y. We call it m-\((n-m)\) separation model. Figure 2 shows 3-\((n-3)\) separation model where messages generated at nodes \(N_1\), \(N_2\), and \(N_3\) are sent to gateway X and other messages are sent to Y. In this single directed model, we can treat each direction (each side of the separation model) independently after deciding a separation model. Therefore, in the proposed scheme, for a given separation model, we analytically derive a good (possible best) performance static global time-slot assignment for each side and compute the total performance by combining both sides, i.e., both directions, of the model. By examining the best performance of each possible separation model in this way and comparing them, we can finally select the best performed one among all possible global time-slot assignments with all possible separation models in response to environmental conditions.

3 Proposed Message Transmission Scheduling

The proposed framework consists of:

  • a static global time-slot assignment over all links with a choice of separation model, and

  • a local message selection for transmission including a naive XOR network coding-based redundant transmission for proactive recovery over assigned time-slots on each link,

which should be appropriately combined in order to statically avoid conflicts among simultaneous transmissions on adjacent links or links within an interference range, and at the same time, to redundantly but efficiently send messages on lossy links.

3.1 Static Global Time-Slot Assignment

A static global time-slot assignment is considered to avoid conflicts among simultaneous transmissions on adjacent links as well as to give more chances to redundant transmission to worse (i.e., more lossy) links. At each time-slot, one or more links are assigned as active, and on each active link, a message can be transmitted in this time-slot. The active links are statically and globally determined, and not changed regardless of each transmission result. We assume that wireless transmission of a message at node j affects two adjacent nodes \(j-1\) and \(j+1\). For example, in Fig. 3, \(N_1\) and \(N_3\) should not send messages to the next nodes at the same time-slot to avoid interference at \(N_2\). This simple and homogeneous assumption is for conciseness and can be changed accompanied with a more complicated constraint condition on time-slot assignment.

To derive an “optimal” static time-slot assignment with static message selection for re-transmission of original messages, we adopt the product of the success delivery probabilities for each individual node as the objective function to be maximized. This objective function can be interpreted as the probability that all messages are successfully delivered to the server if the message losses on links are independent. Although there are diverse possible patterns for static global time-slot assignment that can avoid conflicts among simultaneous transmissions on adjacent links, we can consider “the links far from the destination (upper-side links) first” restricted patterns without loss of generality in optimization for the above objective function.

Given (fixed) node k, we focus only on message k (a message generated by node k) that is destined for gateway X. Like Fig. 4, the message transmission scheduling according to a static time-slot assignment with static message selection for re-transmission of original messages is as follows.

  1. 1.

    First, send the message on the first hop link, i.e., link k, to node \(k-1\) during \(u_{k}\) time slots repeatedly.

  2. 2.

    Next, on the second hop link (link \(k-1\)), send the message to node \(k-2\) in \(u_{k-1}\) times similarly,

  3. 3.

    Do it in a similar manner to descendant of the link and so forth, and

  4. 4.

    Finally on the last hop link (link 1), send it to X in \(u_1\) times.

For conciseness, we explain the optimization in one direction (i.e., on one side of a separation model) with an example in 5-node case shown in Fig. 5. Note that this optimization example for 5-nodes can be reduced to 4 nodes and be extended to more than 5 nodes accompanied with different condition analysis.

Fig. 4.
figure 4

An assignment pattern for message C

Fig. 5.
figure 5

Five-nodes case example

In this case, since the number of nodes in a single direction exceeds three, there are two or more links that can be active at the same time-slot (i.e., they can transmit messages simultaneously) because they are displaced and not interfered. This makes the possible assignment patterns more complicated than a very simple one like Fig. 4. For example, messages generated at nodes E and B can be transmitted simultaneously at the same time slot. As a result, messages generated at node B may be transmitted on link 2 and link 1 with two separated durations. In such situations, we introduce a term “early-stage transmission”, for the transmission in possible time-slots (stage) earlier than the normally assigned time-slots, to be distinguished from “normal-stage transmission”. If the number of nodes in one direction increases, there can be more than one early-stages for some links close to the gateway.

The whole static scheduling is represented as follows.

  • \(s_1, s'_1\): the number of time-slots on link 1 for a message from A (message A in short) for early-stage transmission and for normal-stage transmission, respectively.

  • \(t_1, t'_1\): the number of time-slots on link 1 for message B, for early-stage transmission and for normal-stage transmission, respectively.

  • \(t_2, t'_2\): the number of time-slots on link 2 for message B, for early-stage transmission and for normal-stage transmission, respectively.

  • \(u_j \, (j=1,2,3)\): the number of time-slots on link j for message C.

  • \(v_j \, (j=1,2,3,4)\): the number of time-slots on link j for message D.

  • \(w_j \, (j=1,2,\ldots , 5)\): the number of time-slots on link j for message E.

On the above assignment pattern, the success delivery probabilities of each node, \(M_1, M_2, \ldots , M_5\) have explicit forms by using \(q_1, \ldots , q_5 \, (0< q_j < 1)\) which are message loss rates on links \(1, \ldots , 5\), respectively.

The optimization problem to find \(\mathbf {x} = (s_1, s'_1, t_1, t'_1, t_2, t'_2, u_1,u_2, u_3, v_1, \ldots , w_5)\) is as follows.

$$\begin{aligned} \text{ max }_{\mathbf {x}}&\prod _{k=1}^5 M_k(\mathbf {x}), \end{aligned}$$
(1)
$$\begin{aligned} \text{ subject } \text{ to }&s'_1 + t'_1 + t'_2 + u_1 + u_2 + u_3 + v_1 + v_2 + v_3 + v_4\nonumber \\&w_1 + w_2 + w_3 + w_4 + w_5=T, \end{aligned}$$
(2)
$$\begin{aligned}&t_2 = w_5, \end{aligned}$$
(3)
$$\begin{aligned}&s_1 + t_1 = w_4 + v_4, \end{aligned}$$
(4)

where

$$\begin{aligned} M_1= & {} 1-q_{1}^{s_1 + s'_1}\\ M_2= & {} (1-q_{1}^{t_1 + t'_1})(1-q_{2}^{t_2})+(1-q_{1}^{t'_1}) (1-q_{2}^{t'_2})(q_{2}^{t_2})\\ M_3= & {} (1-q_{1}^{u_1})(1-q_{2}^{u_2})(1-q_{3}^{u_3})\\ M_4= & {} (1-q_{1}^{v_1})(1-q_{2}{v_2})(1-q_{3}^{v_3})(1-q_{4}^{v_4})\\ M_5= & {} (1-q_{1}^{w_1})(1-q_{2}^{w_2})(1-q_{3}^{w_3})(1-q_{4}^{w_4})(1-q_{5}^{w_5}) \end{aligned}$$

This can be numerically solved by a greedy approach in Integer Programming in general. However, as a more efficient way, we first apply Lagrange optimization method to a “relaxed” version allowing real number solutions, and obtain a real number solution of this relaxed problem. Then we search a good integer solution around the above real number solution. See Appendix for more details.

3.2 XOR Network Coding-Based Message Selection

Network coding is an approach that allows each network (relay) node to generate a new message by combining more than one relayed messages. In a proactive recovery scheme for lost messages, network coding can be used as dynamic and inter-flow forward erasure correction (FEC) in multi-hop wireless transmission. After deciding a static time-slot assignment by the procedure in Subsect. 3.1, we adopt a fair message selection with naive XOR network coding-based message transmission, in which each node can send an encoded message that is an XOR-combination of available original messages at the node.

Fig. 6.
figure 6

Simple XOR network coding

Table 1. Link loss rate setting examples

At each time-slot assigned to the link, one of original or encoded messages is selected to be sent on the link. To make sure that each message has the same chance to be selected, the transmission counter for each message records how many times the message is selected. Original messages, or messages with the lowest value of transmission counter have high priority to select first, then encoded messages will be selected randomly according to the transmission counter value. When all messages have the same transmission counter value, one message will be randomly selected. Figure 6(a) and (b) shows message transmission scheduling examples without and with network coding implementation.

4 Evaluation and Discussion

For model-based numerical simulation and evaluation, the proposed framework is implemented by Java, and a 8-nodes tandem multi-hop lossy wireless network is examined with two different link loss rate settings (Cases 1 and 2) in Table 1. The total number (T) of time-slots for one time circle is set to 30, 45 and 60.

4.1 Static Slot Assignment with Separation Model

Fig. 7.
figure 7

Slot assignment and separation model

As explained in Sect. 2, we can find a “good (possibly best)” static global time-slot assignment with a “good (possibly best)” separation model by applying the proposed optimization in one direction explained in Subsect. 3.1 for each setting (i.e., Cases 1 and 2 in Table 1 using \(T = 30, 45, 60\)). Figure  7(a) and (b) shows the obtained good static time-slot assignments for 3–5 model in Case 2, and for 4-4 model in Case 1, respectively, in case of \(T=30\). In the following simulation evaluation (i.e. Subsects. 4.2 and 4.3), we use Case 2 which is an example of sever situations with imbalanced link loss rates. In Case 2, the best separation is 3–5 model shown in Fig. 7(a).

4.2 Performance of Static Slot Assignment with Simple XOR Network Coding-Based Message Selection

We introduce a comparative static time-slot assignment method in which the number assigned slots for each link is proportional to both the number of message paths passing the link and the loss rate of the link. We call it Loss Rate Aware (LRA).

Fig. 8.
figure 8

Success delivery probability

Figure  8(a) shows the performance comparison of static time-slot assignment method with static message selection using \(T = 30, 45, 60\) in term of success delivery probability of all message. Our proposed method always outperforms the LRA method. Next, we employ simple XOR network coding-based message selection scheme (NC) to all of static slot assignment methods (proposed, and LRA). In general implementation of NC improves the performance all of static time-slot assignment methods.

Figure  8(b) shows success delivery probability of each message using \(T = 30\). In general, the message generated at the upper-side nodes (the nodes far from its gateway) suffer from a more opportunities of message loss in traveling multiple lossy links. On the other hand, the balance among messages (i.e., source nodes) varies depending on the time-slot assignment. In LRA NC method which also gives importance on link loss rate, message A and B have higher success delivery probabilities. In Proposed NC method, a most fair balance among messages is exhibited.

4.3 Performance Comparison with ACK-Based Methods

As comparative approach, Acknowledgement (ACK)-based reactive recovery is considered. We introduce two ACK-based message transmission methods; Limited-ACK (L-ACK) and Unlimited-ACK (U-ACK). In L-ACK, the sender-side node will attempt to transmit a message on a given link until either an ACK for the message is returned or the number of transmissions reach the total number of time-slots consecutively assigned to the link by the static assignment. When two different messages should be sent on a link within an assigned number of consecutive time-slots, if transmissions of the first message exhaust the assigned time-slots, then the second message cannot be sent at all. In contrast, U-ACK is independent of a given static time-slot assignment. In U-ACK, the sender-side node will attempt to transmit a message on a given link until ACK for the message is returned, and repeat this process until ACKs for all messages are returned. This process will be repeated from the source node to each downstream node, i.e., upper-side links first until all T time-slots in one time-circle are exhausted. There is no limitation on the number of re-transmissions both for each message and for each link.

In addition, to reflect realistic conditions, we implement a reverse direction loss and delay of ACK by artificially increasing the loss rate value for each link by multiplying 1.2 and 1.4 for U-ACK and decreasing the total number (T) of time-slots by multiplying 0.8 for U-ACK and L-ACK, respectively. We also consider “ideal” ACK with no overhead and no loss to investigate the upper bound performance. In ideal ACK, when a message is successfully received by the receiver-side node, the sender-side node immediately knows that without any time delay and error.

Fig. 9.
figure 9

Success delivery probability of all messages for ACK-based methods and proposed NC method with \(T=30\)

Figure  9 compares the success delivery probability of all messages by the proposed NC method and ACK-based methods. The ideal condition (with no loss and delay of ACK) are identified as time-slot reduction of 1 by indicating the x-axis and the legend names of U-ACK 1 and L-ACK 1. The realistic conditions (with reverse loss and delay) is identified as time-slot reduction of 0.8 (that is \(T=24\) instead of 30) and legend names U-ACK 1.2 and U-ACK 1.4. When there is no time slot reduction, U-ACK 1 outperforms Proposed NC and L-ACK 1, in consistent with our expectation that the “ideal” U-ACK 1 will show the upper-bound performance in terms of the success delivery probability of all messages.

On the other hand, Proposed NC achieves the same performance of L-ACK 1 with no loss and no delay. Then, in realistic conditions (i.e., the number of time slots is reduced from 30 to 24, and the link loss rates are increased) for ACK-based methods, Proposed NC achieves the same performance of U-ACK 1.2. These results suggest that Proposed NC is comparable to or better than ACK-based methods in realistic conditions.

In ideal condition, ACK-based reactive recovery of lost packets is resource efficient in theory compared to proactive recovery. However, implementation of ACK-based retransmission model will increase the cost and complexity of each node of a real system. In contrast, our scheme can assume very low-cost nodes while assuming a centralized management.

5 Conclusion and Future Work

In this research, we have proposed a framework for message transmission scheduling on tandem multi-hop transmission model with lossy wireless links. By applying mathematical optimization, we can obtain a static assignment solution for the number of time-slots that assigned to each link. We also have introduced a simple XOR network coding-based scheme for proactive message transmission on proposed static time-slot assignment. Simulation results showed the probability that all messages are successfully delivered to the server (via gateways) by our proposed framework is comparable to and sometimes even better than that by ACK-based reactive recovery schemes which are more complex and costly. This suggests the effectiveness of our approach that combines a static global time-slot assignment (to avoid unnecessary interferences) and a local message selection for transmission with a simple network coding-based proactive message re-transmission (to recover lost messages). For large adaptability, we need to extend the model that can treat different scenarios such as heterogeneous message generation rates and more than two gateways (e.g., on a tree topology).