Wireless Pers Commun (2013) 69:1517–1534 DOI 10.1007/s11277-012-0648-9
Random Network Coding Based Schemes for Perfect Wireless Packet Retransmission Problems in Multiple Channel Networks Zhenguo Gao · Klara Nahrstedt · Weidong Xiang · Huiqiang Wang · Yibing Li
Published online: 9 May 2012 © Springer Science+Business Media, LLC. 2012
Abstract Solving WPRTPs (wireless packet retransmission problems) using NC (network coding) is increasingly attracting research efforts. However, no work on NC based schemes for WPRTPs in MCNs (multiple channel networks) has been found. In this paper, RNC (random network coding) based schemes for P-WPRTPs (perfect WPRTPs) in MCNs, denoted as MC-P-WPRTPs (multiple channel perfect WPRTPs), are studied by transforming MC-P-WPRTPs into ILP (integer linear programming) problems. The ILP problems corresponding to MC-P-WPRTPs with four typical configurations are derived. Then the corresponding packet retransmission schedule schemes for MC-P-WPRTPs are proposed based on the solutions to the ILP problems and random network coding. To solve the ILP problems efficiently, an algorithm named as progressively fixing algorithm is proposed which recursively reduce the size of the ILP problem by fixing some of the variables according to some criteria. The criteria are related to the solution to the LP problem obtained by relaxing the integral constraints on the variables in the original ILP problem. Simulation results show that the NC based schemes for MC-P-WPRTPs are effective in saving packet retransmissions. In some situations, NC based schemes can save about 50 % packet retransmissions.
Z. Gao (B) College of Automation, Harbin Engineering University, Harbin, China e-mail:
[email protected] Z. Gao · K. Nahrstedt Department of Computer Science, University of Illinois at Urbana-Champaign, Urbana, IL 61801, USA Z. Gao · W. Xiang Department of Electrical and Computer Engineering, University of Michigan, Dearborn, MI 48141, USA H. Wang College of Computer Science and Technology, Harbin Engineering University, Harbin, China Y. Li College of Information and Communications Engineering, Harbin Engineering University, Harbin, China
123
1518
Z. Gao et al.
Keywords Wireless packet retransmission problem · Multiple channel networks · Random network coding · Integer linear programming · Linear programming
Abbreviations ILP IP-WPRTP IP-WPRTP-DC LP MCNC MCNoNC MC-P-WPRTP MC-WPRTP NC P-WPRTP RNCOPT SCNC SCNoNC WPRTP
Integer linear programming Imperfect WPRTP Divide and conquer based scheme for IP-WPRTP Linear programming Multiple-channel with network coding Multiple-channel no network coding Perfect MC-WPRTP Multiple channel wireless packet retransmission problem Network coding Perfect WPRTP Random network coding based optimal scheme for P-WPRTP Single-channel with network coding Single-channel no network coding Wireless packet retransmission problem
1 Introduction MCNs (multiple channel networks) where the nodes can utilize a set of communication channels, such as CRNs (cognitive radio networks), have attracted many research efforts. Although with some advantages, the multiple channel characteristic of MCN brings more challenges to many research topics in MCNs, including WPRTP (wireless packet retransmission problem). A typical scenario of WPRTP is as follows [1]: One sender and several receivers in a wireless network form a subsystem, and all the receivers are in the radio range of the sender. The sender has a set of packets that need to be transmitted to the receivers. However, each receiver has already obtained a subset of the packets (how these subsets of packets are obtained is out of the scope of this paper). Thus, the receivers request the sender to retransmit some packets. The set of the packets requested by a receiver is called as its Want set, meanwhile the set of the packets already known to the receiver is called as its Has set. A WPRTP is formally described as a 4-element tuple WPRTP(P, R, H, W ) where P = { pi |i ∈ {1, 2, . . . , |P|}} represents the set of the packets considered in the problem, R = {ri |i ∈ {1, 2, . . . , |R|} represents the set of the receivers, H = {H (ri ) |ri ∈ R} represents the set that contains the Has sets of the receivers, W = {W (ri ) |ri ∈ R} represents the set that contains the Want sets of the receivers. A solution to a WPRTP is valid if each receiver can obtain all the packets in its Want set by decoding after receiving all the retransmitted packets in the solution. A valid solution is said to be optimal if it has the minimum number of retransmitted packets among all valid solutions. A WPRTP is a P-WPRTP if for ∀ri ∈ R, there is P = H (ri ) ∪ W (ri ), otherwise it is an IP-WPRTP. The objective of a WPRTP is to find a valid solution with minimum number of retransmitted packets. By allowing mixing of packets at intermediate nodes, NC (network coding) [2] provides an interesting approach to many problems and topics in networking realm, such as multicast [3], unicast [4], broadcast [5]. Previous researches have showed that NC can increase network throughput, enhance robustness, and improve fairness [6]. RNC (random network coding) [7], where the encoding coefficients are selected randomly in some predetermined Galois
123
Random Network Coding Based Schemes
1519
Field GF(2q ), makes NC easy of use in distributed applications. NC also provides a promising approach to WPRTP. By using NC, the sender can combine original packets into several coded packets and then transmit these coded packets instead of the original packets to the receivers. If properly designed, each receiver could obtain all the packets in its Want set by decoding from these coded packets. If the coded packets are fewer than the original packets requested by the receivers, communication overhead in the metric of packet retransmissions for solving the WPRTP is reduced. In recent years, some NC based schemes have been proposed for WPRTPs [1,8–13]. The schemes in [8–12] search for solutions on GF(2), whereas the schemes in [1,13] work on larger fields. The schemes in [1,9,10] are specially designed for P-WPRTPs, whereas the schemes in [8,11–13] are suitable for all WPRTPs. However, all these existing works on WPRTP were targeted for single-channel wireless networks. Although there have been plenty of works on various topics in MCNs, no work on WPRTP in MCNs has been found. In this paper, we find that, on large enough Galois Field, RNC based solutions to PWPRTPs in MCNs can be transformed into ILP (integer linear programming) problems. Hence, the ILP problems corresponding to P-WPRTPs in MCNs with four typical configurations are derived, and four RNC based schemes are proposed based on the ILP problems. In order to solve the ILP problems efficiently, an algorithm named as progressively fixing algorithm is proposed which recursively reduce the size of the ILP problem by fixing some of the variables according to some criteria. The criteria are related to the solution to the LP problem obtained by relaxing the integral constraints on the variables in the original ILP problem. As far as we know, this is the first work on WPRTPs in MCNs. The rest of the paper is organized as follows. Section 2 gives an overview on related work. Section 3 provides two definitions related to WPRTP in MCNs, denoted as MC-WPRTP (multiple channel wireless packet retransmission problem) and MC-P-WPRTP (multiple channel perfect wireless packet retransmission problem), and describes the four typical configurations for MC-WPRTPs. Section 4 provides the ILP problems and the operation schedule schemes for MC-P-WPRTPs with the four configurations. The general operation schedule for solving MC-P-WPRTPs is also provided in this section. Section 5 describes the progressively fixing algorithm. Section 6 evaluates the performance of the schemes for MC-P-WPRTPs proposed in this paper through numerical simulation. Section 7 concludes the paper.
2 Related Work Wireless packet retransmission problem has attracted a significant attention from the research community due to its theoretical significance and application potential in communication and networking realm. In the literature, WPRTP is named variously, such as index coding problem [14,15], local mixing problem [16]. Many existing works, such as [8,14–16], focused on theoretical perspectives of the problem, whereas some other works [1,8–13] proposed some NC based schemes for WPRTPs. Several other works, such as [17,18], although not focusing on WPRTP exclusively, proposed some schemes that can be used to solve WPRTPs. Existing NC based schemes for WPRTPs can be roughly classified according to their properties in several aspects. The schemes in [8–12] search for solutions on GF(2), whereas the schemes in [1,13] work on larger field GF(2q ) where q is a predetermined integer larger than 1. The schemes in [1,9–11] are specially designed for P-WPRTPs, whereas the schemes in [8,12,13] are suitable for all WPRTPs. Since that we will study NC based schemes for P-WPRTPs in MCNs based on RNC, here we only provide a more detailed description about the two RNC based schemes proposed in
123
1520
Z. Gao et al.
[1,13]. For a detailed description about other related works, interested readers can refer to [1,13] and the references therein. In [1], optimal schemes on GF(2q ) for P-WPRTPs were studied. Theorem 1 in [1] declares that the number of coded packets in optimal schemes for a P-WPRTP (P, R, H, W ) on large enough field GF(2q ) is equal to maxri ∈R |W (ri )|. Using this property, RNCOPT (random network coding based optimal scheme) is proposed for P-WPRTPs. In RNCOPT, the sender will construct maxri ∈R |W (ri )| coded packets, and the corresponding encoding vectors are determined randomly following the uniform distribution on GF(2q ). To enable decoding at the receivers, each coded packet and its corresponding encoding vector are enclosed into one assemble packet. RNCOPT adopts the following approach to reduce assemble packet size. Each encoding vector is created using a public known pseudo random function trigged with a randomly selected seed. It is the seed instead of the encoding vector that was enclosed in the assemble packet in RNCOPT. Simulation results in [1] imply that q = 8 works for normal WPRTP configurations. In [13], efficient schemes on GF(2q ) for IP-WPRTPs were studied. Firstly the upper and lower bounds on the number of coded packets in optimal NC based schemes for IP-WPRTPs were analyzed. Then, by exploiting the differences between upper and lower bounds in a divide and conquer based approach, a scheme named as IP-WPRTP-DC (divide and conquer based scheme for IP-WPRTP) was proposed and evaluated through numerical simulation.
3 Preliminaries 3.1 MC-WPRTP Definition 1 MC-WPRTP (multiple channel wireless packet retransmission problem). A MC-WPRTP can be described as a 6-element tuple MC-WPRTP (P, C0 , R, H, W, C) where (1) P = { pi |i ∈ {1, 2, . . . , |P|}} represents the set of packets in the problem; (2) C0 = {ci |i ∈ {1, 2, . . . , |C0 |}} represents the set of all channels in the problem; (3) R = {ri |i ∈ {1, 2, . . . , |R|}} represents the set of receivers; (4) H = {H (ri ) |ri ∈ R} represents the set that contains the Has sets of the receivers; (5) W = {W (ri ) |ri ∈ R} represents the set that contains the Want sets of the receivers; (6) C = {C (ri ) |ri ∈ R} represents the set that contains the channel sets of the receivers, and C (ri ) ⊆ C0 represents the set of the channels available to receiver ri . A valid solution to a MC-WPRTP(P, C0 , R, H, W, C) is a hybrid operation schedule that combines network coding scheme and channel allocation schedule meanwhile it can enable each receiver to obtain all the packets in its Want set. To be specific, a solution can be represented as a tuple S (PS , RS ) where (1) PS = {PS (ci ) |ci ∈ C} represents a set that contains |C0 | sets of coded packets with each channel corresponds to one coded packet set, and (2)RS = {RS (ci ) |ci ∈ C} represents a set that contains |C0 | sets of receivers with each channel corresponds to one receiver set. The solution S (PS , RS ) means that, the receivers in RS (ci ) should receiver the coded packets in PS (ci ). The objective of a MC-WPRTP is to find an optimal valid solution where the number of retransmitted packets is minimized. It is obvious that MC-WPRTP is an extension to WPRTP. The other definitions related to WPRTP can easily be extended to MC-WPRTP. Definition 2 MC-P-WPRTP (multiple channel perfect wireless packet retransmission problem) MC-P-WPRTP is a kind of MC-WPRTP where P = H (ri ) ∪ W (ri ) is true for ∀ri ∈ R.
123
Random Network Coding Based Schemes
1521
A MC-P-WPRTP can be expressed as a 5-element tuple MC-P-WPRTP (P, C0 , R, MW , MC ). Here the meanings of P, C0 , and R are the same to those in Definition 1. MW is the so-called packet request matrix with size |R| × |P|, whose element wi, j is either 0 or 1. wi, j = 1 means that p j ∈ W (ri ), otherwise p j ∈ / W (ri ). MC is the so-called channel status matrix with size |R| × |C0 |, whose element ai, j is either 0 or 1. ai, j = 1 means that c j ∈ C (ri ), otherwise c j ∈ / C (ri ). In different situations or context, there may be different preferences/restrictions on solutions to MC-WPRTPs. For example, in some situations, one may prefer solutions with fewer channel switches, whereas in some other situations, relatively more channel switches may also acceptable. In the following text, such different preferences/restrictions on solutions to MC-WPRTPs are called as configurations. Different configurations lead to different optimal schedules. In this paper, we focus on four typical configurations. MCNC (multiple-channel with network coding). In this configuration, the sets in RS
are not disjoint, i.e., all the receivers are permitted to receive packets on any number of channels in its available channel set, and network coding is used; SCNC (single-channel with network coding). In this configuration, the sets in RS are disjoint, i.e., any receiver can only receive packets on any single channel in its available channel set, and network coding is used; MCNoNC (multiple-channel no network coding). In this configuration, the sets in RS are not disjoint, and network coding is not used; SCNoNC (single-channel no network coding). In this configuration, the sets in RS are disjoint, and network coding is not used; 3.2 General Operation Schedule of Schemes for MC-P-WPRTPs Similar to many works in the literature about MCNs, we assume that there are one control channel and a set of data channels, i.e., the channels in C0 . We also assume that each node in the network has two radio interfaces. One interface is specially for sending/receiving control packets on a fixed public control channel. The other interface is specially for sending/receiving data packets on data channels. The operation channel of the second interface can be switched to any data channel in the data channel set. The two interfaces can work simultaneously assuming that all the channels are orthogonal. Although possibly with more complicated coordination mechanisms, the schemes proposed in the paper may be able to work in networks where nodes have only one interface, the assumption of two-radio-interface here is just to simplify the coordination among the nodes. With above two-radio interface assumption, a general operation schedule for solving MCP-WPRTPs can be described as follows: Step 1: The sender finds an optimal solution S (PS , RS ) to the MC-P-WPRTP. Step 2: The sender constructs the set of coded packet set in PS , and enclose each coded packet as well as its corresponding encoding vector into one assemble packet. Step 3: The sender instructs the receivers in RS (c1 ) to switch their data radio interface to data channel c1 by sending control packets on the control channel through the control radio interface. On receiving the control packet, the receivers in RS (c1 ) switch their data radio interface to channel c1 . Step 4: The sender broadcasts the assemble packets corresponding to coded packets in PS (c1 ) on channel c1 through its data radio interface. The receivers in RS (c1 ) receive all the assemble packets sent by the sender on data channel c1 ;
123
1522
Z. Gao et al.
Step 5: The sender coordinates and supervises the transmission of assemble packets on all the other data channels in turn following a similar manner as in step 3 to step 4; Step 6: After receiving the assemble packets, each receiver obtains the packets in its Want set by decoding.
4 Schemes for MC-P-WPRTPs with the Four Configurations When RNC is used, since that the coded packets will be created using random encoding vectors, the key information in PS in solution S (PS , RS ) to MC-P-WPRTP is indeed the number of coded packets in each set PS (ci ) , ci ∈ C. Hence, in this case, PS in solution S (PS , RS ) can be regarded as PS = {|PS (ci )| |ci ∈ C}. Since that we focus on RNC based schemes exclusively in this paper, PS in solution S (PS , RS ) will all be regarded as PS = {|PS (ci )| |ci ∈ C} in the following text. Theorem 1 in [1] declares that the number of coded packets in optimal schemes for a P-WPRTP(P, R, H, W ) on large enough field GF(2q ) is equal to maxri ∈R |W (ri )|. With this property, we found that RNC based solutions to MC-P-WPRTPs can be transformed into ILP problems. In this section, we propose RNC based schemes for MC-P-WPRTPs with the four configurations based on the corresponding ILP problems. For each configuration of MC-PWPRTP, the corresponding ILP problem is provided and the operation schedule scheme is described. 4.1 ILP Problem and Operation Schedule Scheme for MC-P-WPRTPs with MCNC Configuration An optimal solution S (PS , RS ) to a MC-P-WPRTP with MCNC configuration satisfies the ILP problem shown in Eq. (1). Integer programming variables in Eq. (1) are x j , j ∈ {1, 2, . . . , |C0 |}. Variable x j represents which represents the numbers of coded packets that the sender should sent on channel c j . min
|C0 |
xj
j=1
s. t.:
|C0 | j=1
(x j ai, j ) ≥
|P|
wi,k ∀i ∈ {1, 2, . . . , |R|};
k=1
x j ∈ {0, 1, 2, . . .} ∀ j ∈ {1, 2, . . . , |C0 |};
(1)
The effects of the constraints in Eq. (1) are as follows. The first constraint assures that total number of assemble packets received by receive
|P| ri on all its available channels must not be fewer than k=1 wi,k , which is a necessary condition for the objective that receiver ri can obtain all packets in W (ri ) by decoding. By carefully designing network coding matrix on GF(2q ) with 2q > |P|, this constraint is also sufficient for the objective. On sufficiently large GF(2q ), RNC based solution will also make this constraint a sufficient condition (with a probability infinitely close to 1). The second constraint guarantees that all variables can only be integers not smaller than |P| 0. The upper bound of x j can be set to maxri ∈R w k=1 i,k .
123
Random Network Coding Based Schemes
1523
Based on the ILP problem in Eq. (1), the sender can schedule its operations as follows: The sender’s operation schedule scheme (denoted as MCNC Scheme): 1. Solve the ILP problem in Eq. (1) and determine the values of x j ; j ∈ {1, 2, . . . , |C0 |}. 2. For ( j = 1, j 0, perform as follows: 2.1.1 Notify each receiver r ∈ {rk |c j IˆCk } to switch its data radio interface to channel c j and prepare to receive packets; 2.1.2 Create coded packets PC,I , i ∈ {1, 2, . . . , x j }, according to |P0 | PC,i = k=1 (vi,k pk ), q where vi,k = rand(GF(2 )/ {0}). Function rand(F) selects an element randomly from set F. The number of coded packets created equals to xi . 2.1.3 Construct assemble packets PZ ,i = (vi , PC , i), i ∈ {1, 2, . . . , x j }), where vi = (vi,1 , vi,2 , . . . , vi,|P| ). 2.1.4 Broadcast all assemble packets PZ ,i , i ∈ {1, 2, . . . , x j }, on channel c j . 2.2 End; 3. End;
As long as the receivers operate following the coordination of the sender and the transmissions are error free, they will all receive enough assemble packets for obtaining all packets in W (ri ) by decoding. 4.2 ILP Problem and Operation Schedule Scheme for MC-P-WPRTPs with SCNC Configuration An optimal solution S (PS , RS ) to a MC-P-WPRTP with SCNC configuration satisfies the ILP problem shown in Eq. (2). Integer programming variables in Eq. (2) are x j , j ∈ {1, 2, . . . , |C0 |} and yi, j , i ∈ {1, 2, . . . , |R|} , j ∈ {1, 2, . . . , |C0 |}. Variable x j represents the number of coded packets that should be sent on channel c j . Variable yi, j indicates that, if yi, j = 1, receiver ri should receive packets on channel c j , otherwise not. min
|C0 |
xj
j=1
s. t.: x j ai, j −
|P|
wi,k yi, j ≥ 0
∀i ∈ {1, 2, . . . , |R|}, ∀ j ∈ {1, 2, . . . , |C0 |};
k=1 |C0 |
yi, j = 1
∀i ∈ {1, 2, . . . , |R|};
yi, j ∈ {0, 1}
∀i ∈ {1, 2, . . . , |R|},
x j ∈ {0, 1, 2, . . .}
∀ j ∈ {1, 2, . . . , |C0 |};
j=1
∀ j ∈ {1, 2, . . . , |C0 |}; (2)
The effects of the constraints in Eq. (2) are as follows. The first constraint assures that, the number of assemble packets received by receiver
ri on channel c j with yi, j = 1 should not be smaller than |W (ri )|. This is a necessary
123
1524
Z. Gao et al.
condition for the objective that receiver ri can obtain all packets in W (ri ) by decoding. By carefully designing network coding matrix on GF(2q ) with 2q > |P|, this constraint is also sufficient for the objective. On sufficiently large GF(2q ), RNC based solution will also make this constraint a sufficient condition (with a probability infinitely close to 1). The second and the third constraints in Eq. (2) guarantee that, for ∀i, i ∈ {1, 2, . . . , |R|}, there must be one and only one j such that yi, j = 1. Hence, each receiver will receive all packets in its Want set on one single channel. The fourth constraint guarantees that x j can only be integers not smaller than 0. The |P| upper bound of x j can be set to maxri ∈R k=1 wi,k . Based on the ILP problem in Eq. (2), the sender can schedule its operations as follows. The sender’s operation schedule scheme (denoted as SCNC Scheme): 1. Solve the ILP problem in Eq. (2) and determine the values of x j , j ∈ {1, 2, . . . , |C0 |}, and yi, j , i ∈ {1, 2, . . . , |R|} , j ∈ {1, 2, . . . , |C0 |}; 2. for ( j = 1, j