Joint Rate Selection and Wireless Network Coding for Time Critical Applications
In this paper, we dynamically select the transmission rate and design wireless network coding to improve the quality of services such as delay for time critical applications. With low transmission rate, and hence longer transmission range, more packets may be encoded together, which increases the coding opportunity. However, low transmission rate may incur extra transmission delay, which is intolerable for time critical applications. We design a novel joint rate selection and wireless network coding (RSNC) scheme with delay constraint, so as to minimize the total number of packets that miss their deadlines at the destination nodes. We prove that the proposed problem is NP-hard, and propose a novel graph model and transmission metric which consider both the heterogenous transmission rates and the packet deadline constraints during the graph construction. Using the graph model, we mathematically formulate the problem and design an efficient algorithm to determine the transmission rate and coding strategy for each transmission. Finally, simulation results demonstrate the superiority of the RSNC scheme.
With the increase in both wireless channel bandwidth and the computational capability of wireless devices, wireless networks now can be used to support time critical applications such as video streaming or interactive gaming. Such time critical applications require the data content to reach the destination node(s) in a timely fashion, i.e., a delay deadline is imposed on packet reception, beyond which the reception becomes useless (or invalid) .
Recently, network coding becomes a promising approach to improve wireless network performance [2, 3, 4]. Specifically, the work in  proposed the first network coding based packet forwarding architecture, named COPE, to improve the throughput of wireless networks. With COPE, each node opportunistically overhears some of the packets transmitted by its neighbors, which are not intended to itself. The relay node can then intelligently XOR multiple packets and forward it to multiple next hops with only one transmission, which results in a significant throughput improvement.
In most recent works for wireless network coding, network nodes always transmit packets at a fixed rate. However, most wireless systems are now capable of performing adaptive modulation to vary the link transmission rate in response to the signal to interference plus noise at the receivers. Transmission rate diversity exhibits a rate-range tradeoff: the higher the transmission rate, the shorter the transmission range for a given transmission power . To aid overhearing, one may use the lowest transmission rate, so as to successfully deliver packet to more receivers/overhearing nodes. Although this may increase the coding opportunity, it may not yield good performance, especially for time critical applications, as the arrival times of packets may be delayed.
In the literature, only a few works studied the relationships between adapting the transmission rate and the network coding gain [5, 6, 7, 8]. The work in  showed that compared with pure network coding scheme, joint rate adaptation and network coding is more effective in throughput performance. They also proposed a joint rate selection and coding scheme to minimize the sum of the uplink and the downlink costs in star network topology. The work in  mathematically formulated the optimal packet coding and rate selection problem as an integer programming problem, and proposed an efficient heuristic algorithm to jointly find a good combination of coding solution and the transmission rate. However, there are only a few works considered the delay guarantee of packet receptions, which is especially important for time critical applications. So far, only  considered the delay constraint of packet reception, and proposed a coding scheme to minimize the number of packets that miss their deadlines. However, they assume that the transmission rates on all the links are fixed and the same.
In this paper, by considering the impact of both transmission rate and network coding on the packet reception delay, we design a joint rate selection and network coding (RSNC) scheme for wireless time critical applications, so as to minimize the total number of packets that will miss their deadlines at the destination nodes. The main contributions of our paper can be concluded as follows.
We propose a novel graph model, which considers both the heterogenous transmission rates and the deadlines of the packet receptions during the graph construction. Based on the graph model, we mathematically formulate the problem of minimizing the total number of packets that miss their deadlines by joint rate selection and network coding, as an integer programming problem.
We propose a metric to determine the coded packet and the transmission rate for each packet transmission. By considering the impact of the transmission rate on both delay and network coding gain, we also design an efficient algorithm to optimize the proposed metric.
We compare the performance of the proposed RSNC scheme with some existing algorithms. Simulation results show that the proposed scheme can significantly reduce the packet deadline miss ratio.
Ii Problem Definition
In this section, we first illustrate the motivation of our problem. We then give the problem description and its complexity.
Ii-a Motivation Illustration
We now give an example to show how joint rate selection and network coding affect the time critical applications.
Take Fig. 1 as an example, where source/transmitting node node needs to transmit packet to node respectively. Fig. 1(a) gives the set of overheard packets at destination . Suppose that the size of each packet is , and the maximum transmission rates from to are and , respectively. Fig. 1(b) shows the reception deadline of each “wanted” packet at its destination. For the current transmission, according to the work in [4, 9], will send the encoded packet , as the most number of destinations can decode it. However, there is a problem for selecting the transmission rate at . If is selected, can not successfully receive the packet, as the maximum transmission rates from to them are both . If is selected, although all of the three receivers can receive and decode one “wanted” packet, will miss its deadline at , as its arrival time is .
As an alternative, we may choose to first send packet with transmission rate , where destinations will obtain a “wanted” packet in . After this transmission, the encoded packet can be sent with transmission rate , where destination and will obtain a “wanted” packet after (including the waiting time of the first transmission). Obviously, the latter solution is better than the first one, as no packet will miss their deadline.
Ii-B Problem Description
In this paper, we consider the application of network coding in wireless networks. Each network node knows the overheard/routed packets that its neighbors have such that it can perform network coding operations. Such information can be achieved by using reception reports, as introduced in . We also assume that the forwarding/relaying node knows the deadlines of the packet receptions at its receivers. Specifically, we consider the transmission scheme within a single hop since multi hop can be regarded as multiple single hops. As in COPE , only XORs coding is performed at the node in our work.
Without loss of generality, let be the current source node, and be the set of packets required to be transmitted from . Suppose that is the set of ’s neighbors which requires packets in sent from node . Let be the set of “wanted” packets at , and be the set of overheard packets at , where . For each , let be the reception deadline of packet at node . We also assume that is the maximum transmission rate on link , and only if the transmission rate from to is less than , the packet sent from can be successfully received by . We also assume that the size of each packet is .
Our problem is that given the set of overheard packets at each node , , the set of packets required by , , the deadline of required packet at node , , and the maximum transmission rate on the link from to , design the encoding strategy of the packets and select the transmission rate for each propagation, such that the total number of packets that miss their deadlines at each destination is minimized.
Let be if packet misses its deadline at , otherwise, let it be , where . Thus, our objective is to minimize
In this paper, we refer such a problem of joint Rate Selection and Network Coding (RSNC) for time critical applications as RSNC problem.
Ii-C Problem Complexity
The RSNC problem is NP-hard.
We can consider a special case of the RSNC problem: and the maximum transmission rates on all the links are the same. Then, this special case is equivalent to finding a maximum weight clique problem as in , which is known as an NP-hard problem. Thus, the RSNC problem is also NP-hard. ∎
Iii Graph Model and RSNC Formulation
Iii-a Graph Model
Although the graph model in  works well for the case where the transmission rates on all the links are the same and fixed, it can not be used directly for our RSNC problem. Here, we construct a novel graph model , which considers both the transmission rates and the packet reception deadlines.
We define as the minimum transmission rate that can be used to meet the deadline of at . We add a vertex in , only if the following two conditions can be met.
Note that, if , packet will definitely miss its deadline at . Thus, conditions (1) and (2) ensure that we add a vertex in only if the “wanted” packet will not miss its deadline at . That is, .
Then, for any two different vertices , there is a link if all the following conditions can be satisfied.
(b) or and ;
(c) and .
For any clique in , let . According to the work in , if node successfully receives the encode packet , where , can decode a “wanted” packet , where .
Next, we will use an example to show the novelty of our graph model as compared to others in the literature, e.g., .
Still take Fig. 1 as an example. The graph constructed by  is shown in Fig. 2 (a). According to , any clique in the graph represents a feasible encoded packet. Thus, can be sent and its intended next hops are , because ,, forms a clique. As described in Sec. II-A, it is not a good choice. However, with our graph model shown in Fig. 2(b), will not be encoded as vertices ,, do not form a clique in the graph. In addition, for the current transmission, the encoded packet derived from any clique in the graph can be sent without missing the deadlines at its intended destinations. For example, if , which is derived from the clique , is sent with the minimum of the maximum transmission rates among and , , its intended next hops can successfully decode the packets respectively, without missing their deadlines.
With the graph , we have the following lemma.
For the current packet transmission, if the encode packet , where , is sent with the transmission rate , it will be received by all the nodes in . In addition, for each , the packet will be decoded by without missing its deadline.
Firstly, we can easily obtain that with transmission rate , all the receivers in can successfully receive the sending packet. This is because the transmission rate must be lower than the maximum transmission rate from to .
Secondly, our graph is the subgraph of that constructed in . According to , if is successfully received by , can decode its “wanted” packet , where . Thus, any receiver can obtain a “wanted” packet from with transmission rate , where .
Thirdly, according to the condition (c), we have
So, its arrival time at receiver is
In other words, the arrival time of the packet will not miss its deadline at its receiver , where . ∎
As in Lemma 2, a clique in the graph represents a feasible transmission solution for the current propagation, with the encoded packet , transmission rate , intended next hops in , and the propagation delay .
Iii-B RSNC Formulation
While Lemma 2 ensures that any encoding strategy based on any clique in the graph will be delivered within deadline for the current packet transmission, the transmission orders of the encoded packets, represented by the cliques in , also affects the timely packet receptions at their destinations.
As shown in Fig. 2(b), if we first schedule packet with transmission rate , represented by clique , and then schedule packet with transmission rate , represented by clique , all the packets will be received at their destinations without missing deadlines. However, if we first schedule packet , and then packet , packet will miss its deadline at .
Thus, the next task for us is to find a set of cliques in the graph and schedule the transmissions of the encoded packets represented by each clique, so as to minimize the number of missed packets for the whole transmission process.
Suppose that is a clique in the graph, and the encoded packet represented by it is sent as the -th transmission at node . We also assume that , . Thus, the -th transmission at is where , and the transmission rate is . Let be the transmission delay of the -th transmission.
We firstly define the following variant.
Then, we can formulate the RSNC problem based on the graph model as follows.
where is a sufficient large constant.
In the above formulation, the term of the objective represents the number of packets that miss their deadlines at the receivers, which needs to be minimized. Constraint (5) denotes that each vertex in the graph can only belong to one clique. Constraint (6) means that if there is no link between vertex and , vertices can not be in the same clique. Constraint (7) gives the transmission delay for the -th transmission, which is equal to the transmission delay with the minimum transmission rate among the rates from to all intended receivers. The sufficient large constant is used to guarantee that if , must be , as denoted in Constraint 8, and if , must be , as denoted in Constraint 9. Note that the arrival time of the packet in the -th transmission should consist of both the waiting time of the previous transmissions and the transmission time of the -th transmission, i.e., . Thus, Constraint (8) and (9) show that only if the arrival time of at , i.e., , is no more than the reception deadline of at , can be .
With the above integer nonlinear programming, we can get the optimal solution of RSNC problem. However, the computational complexity for the above integer nonlinear programming is too high when the graph is large. Thus, we need to find an efficient algorithm to solve it.
Iv Joint Rate Selection and Network Coding Algorithm
Since each clique in the graph represents a feasible transmission strategy for the current transmission, instead of determining the whole transmission sequence at once, we first design the algorithm to determine the encoding strategy and rate selection scheme for each packet propagation, by selecting a clique at a time. The whole transmission process consists of multiple packets transmission/cliques selection.
Iv-a Metric Consideration for Each Packet Propagation
First of all, in order to measure the “goodness” of transmitting an encoded packet at a specific transmission rate for each packet propagation, it is necessary for us to adopt a reasonable metric which should take into account the impact of the transmission rate and the packet reception deadlines. In this section, we shall design a metric, which not only satisfies as more requests as possible, but also minimizes the number of packets missing the deadlines after the current transmission.
For the current transmission, given an encoded packet and a selected transmission rate, let be if is decoded/received by from the current propagation without missing its deadline, otherwise, let it be . In addition, as described in Fig. 1, the current encoding strategy and transmission rate also affect the timely receptions of the packets in the following propagations. Let be 1 if will definitely miss its deadline at after the current propagation, otherwise, let it be . Later, we will introduce how to calculate and for a given encoded packet and transmission rate. Let be the transmission rate selected for the current propagation.
Our metric can be defined as follows.
For a coding solution , define the metric when using the transmission rate as follows:
where is the parameter, which can be defined as the benefit (e.g., importance) of the packet .
Firstly, for a given encoded packet , is only if all the following conditions are met: 1) , which means can successfully receive the sending packet; 2) , which means is required at ; 3) All the other packets combined in the encoded packet except are available at , which denotes the decoding requirement of at ; 4) , which shows the requirement of the reception deadline. Secondly, for each packet which is not successfully received/decoded by from the current transmission without missing deadlines (), is only if
Here, is the transmission delay of the current transmission, and denotes the minimum delay to meet ’s deadline at in the next transmission. If the sum of the current transmission delay and the next minimum transmission delay is larger than the deadline of at , will definitely miss its deadline, i.e., . Thus, given an encoded packet and its transmission rate, and are both determined.
Hence the meaning of metric in (10) can be explained as follows. The first term denotes the benefit obtained from the packets that are received without missing their deadlines from the current transmission. The second term represents the lost due to packets that will definitely miss their deadlines after the current transmission. So, the metric denotes the net benefit obtained from the current encoded packet and the transmission rate. Thus, for each packet propagation, we aim to determine an encoded packet and select the transmission rate , that will maximize the metric .
Note that, the problem of maximizing the defined metric is also NP-hard. We can prove it by considering its special case: the transmission rates on all the links are the same, the reception deadlines for all the packets are the transmission time of one packet, and each packet has the same benefit . The special case of maximizing the defined metric becomes to maximize the total number of the receivers that can decode one “wanted” packet from the current encoded packet, which has been proved to be NP-hard in .
Iv-B Heuristic Algorithm Design for Each Packet Propagation
Although maximizing the defined metric is also NP-hard, we can easily obtain the following observations, based on which we can design the heuristic algorithm.
P1: Maximizing the first term of the metric is equal to find a maximum weight clique in the graph, where the weight at vertex is defined as the benefit .
P2: The transmission rate is a parameter that adjusts the trade-off between delay and network coding gain. If uses a low transmission rate, more receivers can successfully receive the sending packet, and the current transmission may satisfy more receivers’ requirements, denoted by the first term in . However, low transmission rate means high transmission delay, which may cause more packets to miss their deadlines in the following transmission, denoted by the second term in .
Based on the above observations, we then design a heuristic algorithm for each packet propagation, by gradually increasing the transmission rate. Initially, the transmission rate is set to be no less than the lowest one from to its receivers. Let be the set of available transmission rates from to all the destinations, and let be the -th lowest rate in . As in Sec. III-A, we construct the auxiliary graph with the given information. We also assign the weight in vertex for to denote the benefit of .
In the -th step, we restrict that the transmission rate used at must be no less than . For , if its maximum transmission rate from is less than , it can not successfully receive the sending packet. This restriction can be realized by omitting the vertex in if . Then, we find the maximum weight clique in the subgraph , and adopt the transmission rate represented by the found clique. Each vertex in the found clique denotes that will be successfully obtained by without missing its deadline, for the given transmission rate. For each of the other packets that can not be obtained at their receivers from the current transmission, we then judge whether it will definitely miss its deadline at its destinations, by (11). Thus, in each step, we calculate . Such process continues until all the rates in are considered. Finally, we compare the values of obtained from each step and adopt the one with the largest value as solution. Note that, if there are more than one solution with the maximum value of , we will choose the one with the smaller lost represented by the second term of (10). The detailed of the algorithm is shown in Algorithm 1 of Fig. 3.
Iv-C Algorithm for the Whole Transmission Process
While algorithm 1 in Sec. IV-B describes the encoding of packets and selection of rate for every transmission, the whole transmission process will consist of multiple of such single process. We will first construct the graph based on model in Sec. III-A, and the graph will be updated by removing the selected vertices in the found clique by Algorithm 1, and the vertex if will definitely miss its deadline at destination . The packet reception deadlines for the packets also need to be updated after each transmission. The whole transmission process continues until the vertices set of becomes empty. The detail algorithm for the whole transmission is given in Algorithm 2 of Fig. 3.
|Algorithm 1: one packet propagation process|
|find max weight clique in subgraph ;|
|, if , for ;|
|, if ;|
|add into if is the maximum among ;|
|the encoded packet is for the current transmission;|
|Algorithm 2: the whole packet transmission process|
|construct graph ;|
|while ( is not empty)|
|conduct Algorithm 1 for the current packet propagation;|
|remove the selected clique from ;|
|remove the vertex from if ;|
|update the packet reception deadline, e.g., ;|
|update based on the remaining and ;|
V Simulation Results
In this section, we demonstrate the effectiveness of our RSNC scheme through simulations. We randomly generate a set of available packets in and the “wanted” packets in at destination , where . The maximum transmission rate from to is randomly selected in , and the packet reception deadline is randomly generated in .
For comparison purpose, we include two baseline algorithms, namely, DSF (deadline smallest first) coding algorithm  and SIN-1 algorithm . DSF coding algorithm does not consider the heterogenous transmission rates on the links, and in each time slot, always finds the maximum weight clique in the defined graph. SIN-1 algorithm always sends the packet with the minimum “SIN-1” in each transmission, where “SIN-1” of packet is defined as the ratio of the duration from the current time to the deadline of the most urgent request for packet , to the number of requests for . In the simulation, we compare the deadline miss ratio under different transmission schemes, where deadline miss ratio is defined as the ratio of the number of packets missing their deadlines to the total number of requests. For each setting, we present the average result of 100 samples.
V-a The Impact of the Transmission Rate
We first investigate the impact of the transmission rate on the performance of random one packet propagation during the whole transmission process. Given the rate for the current transmission, we run the maximum weight clique algorithm in the graph model to find the maximum number of packets that can be obtained at their destinations without missing deadline, i.e., satisfied requests, based on which we derive the number of packets that will definitely lose their deadlines in the next transmissions according to (11), i.e., failed requests. We set , , and .
As shown in Fig. 4, with the increase of the transmission rate, the number of packets that can be successfully received/decoded by their receivers from the current transmission decreases. The reason is that with the increase of the transmission rate, higher number of destinations may not receive the packets due to shorter transmission range, which thus decreases the encoding opportunity at . We can also see that with the increase of the transmission rate, the number of packets that will definitely miss their deadlines at the receivers decreases. This is because, higher transmission rates incur less transmission delay, which gives more chances for the other packets received timely in the following transmissions. The above observation motivates the algorithm design in Sec. IV-B, by deciding the tradeoff between transmission rate and network encoding strategy.
We then investigate the impact of the transmission rate on the performance of the whole transmission. We set and vary the scale of the transmission rates, i.e., . As shown in Fig. 5, the deadline miss ratio with our RSNC scheme is much lower than with other schemes. In addition, the deadline miss ratio also decreases with the increase of the transmission rate. This is because higher transmission rates incur less transmission delay, which satisfies more successful transmissions.
V-B The Impact of the Number of Destinations
We then investigate the impact of the number of destinations and the transmission rates on the deadline miss ratio. In this case, we set by varying in for and .
As shown in Fig. 6, the deadline miss ratio with our RSNC scheme is much lower than with other schemes. With the increase of , the gain of our RSNC scheme increases. We can also see that the DSF algorithm does not show significant gain over SIN-1 algorithm. This is because, although with network coding in DSF, more packets can be combined together, the encoded packet may still miss its deadline at some destinations, due to inappropriate transmission rate used. From Fig. 6, we see that, with the increase of , the deadline miss ratio increases. The reason is that there are more packets to be sent at within the same deadline scale.
V-C The Impact of the Number of Packets
Finally, we investigate the impact of the total number of packets and the reception deadlines on the deadline miss ratio. We set by varying in for the cases of and .
Again, from Fig. 7, we can see that our proposed RSNC scheme has the lowest deadline miss ratio. In addition, with the increase of , the deadline miss ratio increases. This is because more packets need to be transmitted at node . From Fig. 7, it is easy to see that the deadline miss ratio is smaller when , compared with . It is reasonable because with the increase of the deadlines, less packet will lose its deadline.
In this paper, we propose a novel joint rate selection and network coding (RSNC) scheme for time critical applications. We first prove that the proposed problem is NP-hard, and design a novel graph model to model the problem. Using the graph model, we mathematically formulate the problem. We also propose a metric, based on which we design an efficient algorithm to determine transmission rate and coding strategy. Finally, simulation results demonstrate the proposed RSNC algorithm effectively reduces the packet deadline miss ratio.
-  J. Xu, X. Tang, and W. Lee, “Time-critical on-demand data broadcast: algorithms, analysis, and performance evaluation,” IEEE Trans. on Parallel and Distributed Systems, vol. 17, no. 1, pp. 3 – 14, 2006.
-  Y. Sagduyu and A. Ephremides, “On joint MAC and network coding in wireless ad hoc networks,” IEEE Trans. on Information Theory, vol. 53, no. 10, pp. 3697 –3713, Oct. 2007.
-  R. Ahlswede, N. Cai, S. Li, and R. Yeung, “Network information flow,” IEEE Trans. on Information Theory, vol. 46, pp. 1204–1216, 2000.
-  S. Katti, H. Rahul, W. Hu, D. Katabi, M. Medard, and J. Crowcroft, “XORs in the air: Practical wireless network coding,” IEEE/ACM Trans. on Networking, vol. 16, no. 3, pp. 497–510, 2008.
-  Y. Kim and G. D. Veciana, “Is rate adaptation beneficial for inter-session network coding?” IEEE Journal on Selected Areas in Communications, vol. 27, pp. 635 –646, Jun. 2009.
-  K. Chi, X. Jiang, and S. Horiguchi, “Joint design of network coding and transmission rate selection for multihop wireless networks,” IEEE Trans. on Vehicular Technology, vol. 59, pp. 2435 –2444, 2010.
-  T. Kim, S. Vural, I. Broustis, D. Syrivelis, S. Krishnamurthy, and T. La Porta, “A framework for joint network coding and transmission rate control in wireless networks,” in Proceedingsof 2010 IEEE INFOCOM, Mar. 2010, pp. 1 –9.
-  B. Ni, N. Santhapuri, C. Gray, and S. Nelakuditi, “Selection of Bit-Rate for wireless network coding,” in Proceedings of 5th IEEE SECON, 2008.
-  C. Zhan and Y. Xu, “Broadcast scheduling based on network coding in time critical wireless networks,” in 2010 IEEE International Symposium on Network Coding (NetCod), Jun. 2010, pp. 1 –6.
-  X. Wang, J. Wang, and Y. Xu, “Data dissemination in wireless sensor networks with network coding,” EURASIP Journal on Wireless Communications and Networking, vol. 2010, 2010.