Presentation on theme: "1 An Easy-to-Decode Network Coding Scheme for Wireless Broadcasting Ho Yuet Kwan (CityU, CUHK - INC) Joint work with K. Shum(CUHK - INC) and Chi Wan (Albert)"— Presentation transcript:
1 An Easy-to-Decode Network Coding Scheme for Wireless Broadcasting Ho Yuet Kwan (CityU, CUHK - INC) Joint work with K. Shum(CUHK - INC) and Chi Wan (Albert) Sung (CityU)
2 Contents Abstract Background System model Generation of encoding vectors and its complexity Performance evaluation Conclusion
3 Abstract We propose an easy-to-decode network coding scheme to offer reliable wireless broadcasting. Based on feedback, our scheme generates the encoding vectors that are sparse enough to make the decoding process much simpler. The delay performance of our scheme in binary cases is comparable to that of the Random Linear Network Coding (RLNC) scheme with a large finite field size, but requires less decoding operations.
4 Background In wireless broadcasting, a set of packets is broadcast to all receivers in wireless channels. Due to channel erasure, some packets would be lost. Retransmissions are required. A trivial way is to retransmit the whole set again. Linear network coding provides an excellent solution to the wireless broadcasting problem in terms of channel utilization (transmit less).
5 A trivial way S U1U1 U2U2 U3U3 P1P2P3 P2 P3P1 P3P2P1P2P3 P1 P2 P1 P2 P3 6 packets are transmitted for all users to receive the intact file Users may have different erasure patterns
6 With Linear Network coding S U1U1 U2U2 U3U3 P1P2P3 P2P3P1 P3P2P1P2P3 Only 4 packets are transmitted for all users to receive the intact file! P* Where P* = P1 + P2 + P3 : header tells how we encode a packet P*
7 Terminology A header tells decoders how we encode a packet. An encoding vector shows the coefficients for linearly combining the source packets to form an encoded packets. e.g. If P* = P 1 + P 2 + P 3 x = Encoding vector a header contains an encoding vector x: X P* Encoded packet P = Packet vector
8 An innovative packet An encoded packet is innovative to a user if the corresponding encoding vector is linearly independent of all the encoding vectors already received by that user. (The packet only brings new information to that user) If an encoded packet is innovative, it is innovative to all users. (The packet brings new information to all)
9 An innovative packet e.g. X2X2 P2* X2X2 Packets received by U1 with x1 = [ 1 0 0 ] and x2 = [ 0 1 0 ] Packets received by U2 with x2 = [ 0 1 0 ] and x3 = [ 0 0 1 ] XaXa Pa* A new packet received by U1 and U2 with xa = [ 1 1 1 ] xa is linearly independent of x1, x2 and x3 xa is innovative! X1X1 P1* X3X3 P3* A new packet received by U1 and U2 with xa = [ 0 1 1 ] xa is innovative to U1 only! xa is not innovative!
10 Previous work Binary encoding vectorEncoding vector with large finite field size Without feedback With feedback Fountain codes (Luby 2002) Random Linear Network Code (RLNC) (Heide et al. (2009) etc.) Random Linear Network Code (RLNC) (Heide et al. (2009)) Lu et al. (2010) Many of them put less emphasis on reducing the decoding complexity. The Cofactor Method The Cofactor Method Durvy et al. (2007)
11 Challenges If all the encoded packets are innovative, the total number of packet transmissions for all users to receive all packets can be minimized. How to generate innovative packets? How to generate innovative packets so that we can decode them easily?
12 System model A broadcasting system: A transmitter S and K receivers: where A complete file is packetized into N equal-size packets. Assume all wireless channels are independent erasure channels with probability of erasure. A perfect feedback channel is provided for each receiver.
13 System model A file is broadcast to all receivers in two phases: Initial Phase End Yes No All finished? Retransmission Phase All finished? No Yes
14 Initial Phase S broadcasts N source packets (uncoded) one by one. An acknowledgement (ACK) is sent when a receiver finds that a received packet is innovative to itself. If sends an ACK to S, the corresponding encoding vector will be added to its encoding matrix at S. Encoding matrix stores innovative encoding vectors received so far by.
15 Initial Phase e.g. For, received all packets except the 3 rd and the 5 th packet. After the initial phase, the encoding matrix at S would be Rank( ) = N
16 Retransmission Phase S bases on all current, generate an encoding vector and the encoded packet. An ACK is sent when a receiver finds that an encoded packet is innovative to itself. If sends an ACK to S, will be added to its encoding matrix at S. (Updating at S) Only the innovative encoding vector will be added to S repeats the above until all users finish receiving all packets.
17 Generation of encoding vectors If every encoded packet is innovative in retransmission phase, the number of retransmissions can be minimized. Objective: Given and all encoding matrices, generate an encoding vector that is innovative.
18 Single-user case Objective: Given and an encoding matrix, generate an encoding vector that is innovative to one user.
19 Single-user case All rows in are linearly independent. Assume that there are linearly independent rows in, where. Given the encoding matrix, S is looking for that is linearly independent of all row vectors in.
20 Basic Idea Our idea is based on the fact that, given a matrix, its row rank = its column rank. Given q = 2 and we have an encoding matrix with 3 linearly independent rows:
21 Basic Idea We can always find 3 linearly independent columns and mark those 3 columns first.
22 Basic Idea To find such that is linearly independent of all rows of. Append to the bottom of to form
23 Basic Idea If we can find such that we have 4 linearly independent columns in, then is linearly independent of all row vectors in and X
24 Basic Idea Now looking for 4 linearly independent columns in Select columns in according to the same chosen column indices in.
25 Basic Idea Choose an arbitrary columns from the rest in together with the chosen columns to form (we want 4 columns)
26 Basic Idea We form in this way because we can have the first 3 rows are linearly independent. For to have 4 linearly independent rows, it only depends on the choices of
27 Basic Idea If we can find such that contains 4 linearly independent rows then contains 4 linearly independent rows too. ( is a submatrix of )
28 Basic Idea Observe that is a square matrix, all rows in are linearly independent iff its determinant. can be expressed in terms of If we can solve for, then is linearly independent of all rows in.
29 Basic Idea We “transform” our problem of linear independence into solving a linear inequality.
31 Single-user case can be expressed by the Laplace expansion on the last row of : where is the cofactor of
32 Single-user case Find such that Solve for, where q = 2 Possible sol. : What about ? Source of sparsity
33 Single-user case Random Linear Network code scheme is not likely to generate a sparse encoding vector. Each encoding matrix (not empty, rank
"name": "33 Single-user case Random Linear Network code scheme is not likely to generate a sparse encoding vector.",
"description": "Each encoding matrix (not empty, rank
34 General case Objective: Given and all encoding matrices, generate an encoding vector that is innovative. i.e. generate a common that satisfies linear simultaneous determinant inequalities:
35 General case There are many ways to solve the problems. We may have many possible solutions. We prefer a solution that has more zero entries. Fewer additions and multiplications are needed in the decoding process. We apply the steps shown in single user case and propose the cofactor method to solve the problem.
36 The cofactor method Consider q = 5, K = 4 and N = 5 Find a common that satisfies the following determinant inequality set:
37 The cofactor method Arrange the 4 inequalities in the following manner: each column contains only one unknown put the inequality whose largest unknown index is the smallest one among the whole inequality set to the top and so on…
38 The cofactor method Pay attention to the unknown with the largest index in each inequality
39 The cofactor method Those unknowns are to be determined, while for the rest, we are free to set them to zero (source of sparsity).
40 The cofactor method For the first inequality, we can set
41 The cofactor method For the second inequality, is the remaining unknown, also no other inequality contains only we can solve the second inequality and get
42 The cofactor method For the third inequality, is the remaining unknown, it is also the case for the fourth inequality. We solve for the two simultaneous inequality and get q = 5
43 The cofactor method So we have that satisfies all inequalities: We summarized the above idea and develop so called the cofactor method.
44 The cofactor method If, the cofactor method guarantees that the encoding vector so generated is always innovative. If, may not have a solution in general. Our method will still output an encoding vector by setting the unknowns to zero, but it may not be innovative. It can be shown that the total complexity of the cofactor method is.
45 Performance A file is packetized into 32 packets. ( ) Erasure channel is assumed. ( ) The worse case delay: The average of total number of transmissions for S to ensure that all users receive an intact file over 1000 random realizations. The average delay : The average number of transmissions for S so that an intact file can be received by a user.
48 Performance For the decoding complexity, we count the number of additions and multiplications in decoding. An addition operation involving two non-zero operands is counted. A multiplication operation is counted when none of the two operands is 1 or 0.
51 Future work The sparsity of our network coding solution has yet been exploited in our current results. A corresponding simple decoding scheme tailored for our network coding solution will be considered. Simple binary network coding schemes for minimizing the total number of required packet transmissions will be investigated. Multi-source broadcasting problem can also be studied.
52 Conclusion A new encoding scheme, called the cofactor method, is developed. When the finite field size is no smaller than the number of users, our method is thus delay optimal. Simulations show that it outperforms the RLNC scheme in both the large and small finite field size (i.e. q = 2 and q = 101) cases.
References M. Luby, “LT codes,” in Proceedings of IEEE Symposium on Foundations of Computer Science (FOCS), November 2002, pp. 271–282. J. Heide, M. V. Pedersen, F. H. P. Fitzek, and T. Larsen, “Network coding for mobile devices – systematic binary random rateless codes,” in IEEE Int. Conf. Comm. Workshops (ICC Workshop 2009), Dresden, Jun. 2009, pp. 1–6. L. Lu, M. Xiao, M. Skoglund, L. K. Rasmussen, G. Wu, and S. Li, “Efficient network coding for wireless broadcasting,” in IEEE Wireless Comm. and networking conf. (WCNC ’10), Sydney, Apr. 2010, pp. 1–6. M. Durvy, C. Fragouli, and P. Thiran, “Towards reliable broadcasting using ACKs,” in Proc. IEEE Int. Symp. Inform. Theory, 2007. 53
54 q < K Given q = 2, K = 3 and N = 2 If q = 3, K = 3 and N = 2 No innovative binary encoding vector can be found which is an innovative encoding vector