Title: An Easy-to-Decode Network Coding Scheme for Wireless Broadcasting
1An 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)
2Contents
- Abstract
- Background
- System model
- Generation of encoding vectors and its complexity
- Performance evaluation
- Conclusion
3Abstract
- 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.
4Background
- 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).
5A trivial way
Users may have different erasure patterns
P1
P2
P3
P1
P2
P3
P1
P2
P3
P1
P2
P3
U1
6 packets are transmitted for all users to
receive the intact file
P1
P2
P3
S
P1
P2
P3
U2
U3
P1
P2
P3
6With Linear Network coding
Where P P1 P2 P3
P
header tells how we encode a packet
P1
P2
P3
Only 4 packets are transmitted for all users to
receive the intact file!
U1
S
U2
U3
7Terminology
- 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 P1 P2 P3
x Encoding vector
P Packet vector
Encoded packet
a header contains an encoding vector x
8An 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)
9An innovative packet
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
A new packet received by U1 and U2 with xa 1
1 1
A new packet received by U1 and U2 with xa 0
1 1
xa is linearly independent of x1, x2 and x3
xa is innovative to U1 only!
xa is innovative!
xa is not innovative!
10Previous work
Binary encoding vector
Encoding vector with large finite field size
Fountain codes (Luby 2002)
Without feedback
Random Linear Network Code (RLNC) (Heide et al.
(2009))
Random Linear Network Code (RLNC) (Heide et al.
(2009) etc.)
Lu et al. (2010)
Durvy et al. (2007)
With feedback
The Cofactor Method
The Cofactor Method
Many of them put less emphasis on reducing the
decoding complexity.
11Challenges
- 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?
12System 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.
13System model
- A file is broadcast to all receivers in two
phases
No
No
Retransmission Phase
Initial Phase
All finished?
All finished?
Yes
Yes
End
14Initial 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 .
15Initial Phase
- e.g.
-
- For , received all packets
except the 3rd and - the 5th packet. After the initial phase, the
encoding - matrix at S would be
Rank( ) N
16Retransmission 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.
17Generation 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.
18Single-user case
- Objective
- Given and an encoding matrix ,
- generate an encoding vector that is innovative
- to one user .
19Single-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
.
20Basic 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
21Basic Idea
- We can always find 3 linearly independent columns
and - mark those 3 columns first.
22Basic Idea
- To find such
that is linearly - independent of all rows of .
- Append to the
bottom of to - form
23Basic 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
24Basic Idea
- Now looking for 4 linearly independent columns in
- Select columns in according to the same
- chosen column indices in .
25Basic Idea
- Choose an arbitrary columns from the rest in
- together with the chosen columns to form
- (we want 4 columns)
26Basic 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
27Basic Idea
- If we can find
such that contains 4 - linearly independent rows then contains 4
- linearly independent rows too. ( is a
submatrix of )
28Basic 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 .
29Basic Idea
- We transform our problem of linear
- independence into solving a linear inequality.
30Single-user case
31Single-user case
- can be expressed by the Laplace
expansion - on the last row of
- where is the cofactor of
32Single-user case
- Find
such that - Solve for
, where q 2
- Possible sol.
- What about ?
-
Source of sparsity
33Single-user case
- Random Linear Network code scheme is not likely
to generate a sparse encoding vector. - Each encoding matrix (not empty , rank ltN)
- has its corresponding determinant inequality.
-
34General 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
35General 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.
36The cofactor method
- Consider q 5, K 4 and N 5
- Find a common
- that satisfies the following determinant
inequality set
37The 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
38The cofactor method
- Pay attention to the unknown with the largest
index in each inequality
39The cofactor method
- Those unknowns are to be determined, while for
the rest, we are free to set them to zero (source
of sparsity).
40The cofactor method
- For the first inequality, we can set
41The cofactor method
- For the second inequality, is the
remaining unknown, also no other inequality
contains only - we can solve the second inequality and get
42The 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
43The cofactor method
- So we have that
satisfies all inequalities - We summarized the above idea and develop so
called the cofactor method.
44The 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 .
45Performance
- 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.
46Performance
47Performance
48Performance
- 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.
49Performance
50Performance
51Future 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.
52Conclusion
- 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.
53References
- M. Luby, LT codes, in Proceedings of IEEE
Symposium on Foundations of Computer Science
(FOCS), November 2002, pp. - 271282.
- 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. 16. - 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. 16. - M. Durvy, C. Fragouli, and P. Thiran, Towards
reliable broadcasting using ACKs, in Proc. IEEE
Int. Symp. Inform. Theory, 2007.
54q lt 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