Reduce the decoding complexity: segment linear network coding

Reduce the decoding complexity: segment linear network coding

The Journal of China Universities of Posts and Telecommunications December 2013, 20(6): 55–61 www.sciencedirect.com/science/journal/10058885 http://j...

822KB Sizes 0 Downloads 68 Views

The Journal of China Universities of Posts and Telecommunications December 2013, 20(6): 55–61 www.sciencedirect.com/science/journal/10058885

http://jcupt.xsw.bupt.cn

Reduce the decoding complexity: segment linear network coding GUO Yi-jun (), HAO Jian-jun, YUE Guang-xin School of Telecommunication Engineering, Beijing University of Posts and Telecommunications, Beijing 100876, China

Abstract The throughput gain obtained by linear network coding (LNC) grows as the generation size increases, while the decoding complexity also grows exponentially. High decoding complexity makes the decoder to be the bottleneck for high speed and large data transmissions. In order to reduce the decoding complexity of network coding, a segment linear network coding (SLNC) scheme is proposed. SLNC provides a general coding structure for the generation-based network coding. By dividing a generation into several segments and restraining the coding coefficients of the symbols within the same segment, SLNC splits a high-rank matrix inversion into several low-rank matrix inversions, therefore reduces the decoding complexity dramatically. In addition, two coefficient selection strategies are proposed for both centrally controlled networks and distributed networks respectively. The theoretical analysis and simulation results prove that SLNC achieves a fairly low decoding complexity at a cost of rarely few extra transmissions. Keywords

SLNC, generation-based network coding, random LNC, decoding complexity, extra transmission cost

1 Introduction Network coding (NC) proposed in Refs. [1–2] improves the network throughput and achieves the maximum multi-cast capacity. It is based on a simple, yet innovative, idea: in a packet network, rather than simply routing packets, intermediate nodes may compute and transmit functions of the packets that they receive. LNC [3] is the most studied NC scheme, the coding operations, i.e. the functions, of which are linear. High speed data transmission technologies based on NC are widely used in long term evolution advanced (LTE-A). Determined LNC (DLNC) [4] is a primitive LNC scheme. The coding coefficients of DLNC are pre-determined to ensure the independence between different encoded symbols. However, DLNC requires special designs for different network topologies and multicast demands, which is not practicalfor dynamic networks. To solve this problem, random LNC (RLNC) [5] is proposed. RLNC choose its coding coefficients from a finite field Fq randomly. When the field size is Received date: 06-06-2013 Corresponding author: GUO Yi-jun, E-mail: [email protected] DOI: 10.1016/S1005-8885(13)60109-0

sufficiently large, the randomly chosen code achieves the same performance as a carefully designed optimal code with high probability. RLNC is the most widely used network coding scheme. Related performance analysis [6–7] and various extensions [8–9] of RLNC are developed under different scenarios. Both DLNC and RLNC belong to the generation-based NC [10], where the source symbols are divided into generations and encoded in units of generations. Generally speaking, as the generation size increases, the network information flows are mixed better and the throughput gain grows larger. However, the decoding complexity also increases exponentially [11]. Different software and hardware approaches were proposed to optimize the decoding algorithm, but the decoder remains to be the bottleneck for high speed and large data transmissions. A complexity-adaptive random network coding for peer-to-peer video streaming is developed in Ref. [12]. In Ref. [13], a low complexity opportunistic decoder for NC is proposed. It computes the matrix inversion by updating the previous inversion result instead of performing a new matrix inversion for every new generation. However, its performance gain is opportunistic. In this paper, a SLNC

56

The Journal of China Universities of Posts and Telecommunications

scheme is proposed. SLNC provides a general coding structure for the generation-based network coding. By dividing a generation into several segments and restraining the coding coefficients of the symbols within the same segment, SLNC reduces the decoding complexity dramatically. Besides, two coefficient selection strategies are proposed for both centrally controlled networks and distributed networks respectively. The rest of this paper is organized as follows. Sect. 2 gives the system model. Sect. 3 describes the SLNC scheme in details and proposes two coefficient selection strategies. In Sect. 4, we analyze the decoding complexity theoretically and gives the simulation results. Sect. 5 concludes this paper.

2013

3.1 The encoding process of SLNC By SLNC, each generation is further divided into N s segments. Each segment consists of D symbols (Suppose N s = N / D , the indivisible case can be turned into an divisible one through adding empty symbols). D is referred to as the segment depth. Define N s D × N matrixes P1 , P2 ,..., PNs as the extraction matrixes. Each extraction matrix conains N s square sub-matrixes as: Pl = [0 D× D  I D× D  0 D× D ] (2) ↑ lth

where l ∈ [1, Ns ] .

↑ N s th

x

is divided into N s

segments

y1 , y2 ,..., y Ns as: T

2 System model Consider an one-way relay network consists of one source S, N R relays R1 , R2 ,..., RNR and one destination D. There is no direct path between S and D. D is connected to all relays. S broadcasts symbols x1 , x2 ,..., xN ,... to the relays and the relays perform NC to the source symbols before forwarding them. The symbols, coding coefficients and linear operations mentioned in this paper are all over the Galois field GF ( 2k ) . Let A denotes the alphabet set of GF ( 2

k

).

x = [ x1 , x2 ,..., xN ] ∈ A

denote the source symbol vector

N

C ω JRLNC = ( c JRLNC ) i x = ∑ cJRLN xi ,i

(1)

i =1

where

J

denotes T

the

encoding

, generating N s primary-encoded (PE)

symbols as: D

υl = α ( J ) yl = ∑ ai ( J ) x(l −1) D + i ; l ∈ [1, N s ] T

(4)

i =1

where α ( J ) is drawn from a countable ordered set

β = {α1 , α2 ,..., αD }

obeying

times,

c

Ns

In the second step,

of this generation. The traditional RLNC scheme encodes the N symbols of a generation randomly. The encoded symbol ω JRLNC is formulated as T

T

α ( J ) = F (β , J ) .

The

that β and F ( ⋅) are pre-known by all nodes.

Like the traditional NC, SLNC is based on generations, i.e., the relays group the encoding symbols into generations, with each generation containing N symbols. We focus on one generation and let N

[ a1 , a2 ,..., aD ]

selection strategy F ( ⋅) will be detailed later. Assume

3 The segment linear network coding scheme

T

(3) yl = Pl x = ⎡⎣ x( l −1)( D +1) ... xlD ⎤⎦ The encoding process contains two cascaded steps. The symbols within the same segment are first linearly combined by a D × 1 coefficient vector α ( J ) =

RLNC J

=

⎡⎣cJ ,1 , cJ , 2 ,..., c J , N ⎤⎦ is the coefficient vector which is generated randomly. Fig. 1(a) illustrates the encoding principle of RLNC.

combined

by

a

⎡⎣cJ ,1 , cJ ,2 ,..., c J , Ns ⎤⎦ symbol ω J as:

T

Ns ×1

PE symbols are further coefficient

vector

cJ =

, generating a sub-encoded (SE)

Ns

ω J = c JT v = ∑ cJ ,lυl

(5)

l =1

T

where v = ⎡⎣υ1 ,υ2 ,...,υ Ns ⎤⎦ is defined as the PE symbol vector, cJ ,l is selected from A randomly. Below we refer to α ( J ) as the PE coefficient vector and c J as the SE coefficient vector. An illustration of the SLNC encoding strategy when N = 6 and D = 3 is depicted in Fig. 1(b). Notice that vm, n represents the PE symbol generated by αm and yn , where

m ∈ [1, D ]

and

n ∈ [1, N s ] . To explain the

mechanism of SLNC deeply, the flow diagram of the SLNC encoding process is given in Fig. 1(c).

Issue 6

GUO Yi-jun, et al. / Reduce the decoding complexity: segment linear network coding

57 T

decoding matrix G RLNC = ⎡⎣c1RLNC , c2RLNC ,..., cNRLNC ⎤⎦ . The rank of G RLNC is N. The original symbols are recovered through inversing G RLNC , formulated as

x = ( G RLNC )

−1

[ω1 , ω2 ,..., ωN ]

T

(6)

By the SLNC scheme, the received encoded symbols are divided into D groups according to their PE coefficient vector α ( J ) . In order to recover the whole generation (a) The encoding principle of RLNC.

(b) The encoding principle of SLNC.

successfully, two conditions on the received symbols must be satisfied: 1) The amount of the encoded symbols which are linearly independent is N. 2) Within each group, the amount of the encoded symbols which are linearly independent is N s = N / D . Notice that, the encoded symbol which is co-linear with the symbols received before will be discarded by the destination. The decoding process also contains two cascaded steps, which are referred to as the primary-decoding (PD) phase and the sub-decoding (SD) phase. Define J m , n as the encoding times of the nth encoded symbol encoded by αm , where m ∈ [1, D ] , n ∈ [1, N s ] and αm ∈ β . Obviously,

(

)

α ( J m,1 ) =  = α J m, Ns = αm .

The

SE T

coefficient vector for ω J m ,n is c J m ,n = ⎡⎣cJ m ,n ,1 ,..., cJ m ,n , Ns ⎤⎦ . In the PD phase, the received symbols are divided into D groups and each group forms a vector as T

rm = ⎡ω J m ,1 ,..., ω J m , N ⎤ . The SE coefficient vectors of each s ⎦ ⎣ group constitute a PD decoding matrix as (c) The flow diagram of SLNC encoding.

Fig. 1 Illustration of the encoding process when N = 6 and D=3

3.2 The decoding process of SLNC In an actual system, the coding coefficients are transmitted along with the corresponding encoded symbol, the specific transmission method for which is not concerned in this paper. Likewise, we focus on the decoding strategy for the generation x . A perfect error detection is assumed at the destination. The received symbols corrupted by the non-idea channels will be abandoned. By the RLNC scheme, after receiving N linearly independent encoded symbols, the receiver can form a

T

Gm = ⎡ c J m ,1 ,..., c J m ,N ⎤ . By computing the inverses of s ⎦ ⎣ G1 , G2 ,..., GD respectively, the PE symbol vectors v1 , v2 ,..., v D are decoded as: vˆm = ⎡⎣vˆm ,1 , vˆm ,2 ,..., vˆm, Ns ⎤⎦ = Gm−1rm ; m ∈ [1, D ] (7) T Since vˆm,l = αm yˆ l , l ∈ [1, Ns ] , the decoded PE symbol vectors form a matrix as: ⎡ α1T yˆ1  α1T yˆ Ns ⎤ ⎢ ⎥ V =⎢   ⎥ (8) ⎢α T yˆ  α T yˆ ⎥ D Ns ⎣ D 1 ⎦ In the SD phase, we perform decoding to the columns of V respectively. Let Vl denote the lth column and we have: T

Vl = ⎡⎣α1T yˆ l ,..., αDT yˆ l ⎤⎦ = [α1 , α2 ,..., αD ] Pl xˆ T

(9)

58

The Journal of China Universities of Posts and Telecommunications

Define B = [ α1 , α2 ,..., αD ]

T

as the SD decoding matrix.

The source symbol vector x is recovered as:

x = ⎡⎣ P1 xˆ ,..., PNs xˆ ⎤⎦ = B −1 ⎡⎣ V1 ,V2 ,...,VNs ⎤⎦

T

α2

4 Performance analysis 4.1

Derivation of the decoding complexity

(10)

Fig. 2 illustrates the decoding process of SLNC, where ⎡ c1,1 c1,2 ⎤ ⎡c2,1 c2,2 ⎤ ⎡ c3,1 c3,2 ⎤ , G2 = ⎢ , G3 = ⎢ G1 = ⎢ ⎥ ⎥ ⎥ ⎣ c4,1 c4,2 ⎦ ⎣ c5,1 c5,2 ⎦ ⎣c6,1 c6,2 ⎦ and A = [ α1

2013

α3 ] . T

We measure the decoding complexity in terms of the frequencies of multiplying operations and adding operations throughout the entire decoding process. By traditional RLNC scheme, the receiver has to inverse a matrix of rank N to recover a generation. The multiplying frequency FMulti-R and adding frequency FAdd-R are:

2 3 (13) (N − N ) 3 1 FAdd-R ( N ) = (2 N 3 + 3 N 2 − 5 N ) (14) 6 While by SLNC, a matrix inversion of rank N is separated into several matrix inversions of rank N s and FMulti-R ( N ) =

D. The multiplying frequency FMulti-S and the adding frequency FAdd-S are:

Fig. 2

The decoding process of SLNC when N = 6 and D = 3

3.3 The selection strategy for α ( J ) The PE coefficient vector α ( J ) is drawn from a

countable set β = {α1 , α2 ,..., αD } . In order to make the

encoded symbols to be distributed equally on different αm , two selection strategies are proposed. For centrally controlled networks, suppose that the relays transmit in order of their indexes, i.e. from R1 to RN R successively.

⎛N⎞ N FMulti-S ( N , D ) = DFMulti-R ⎜ ⎟ + FMulti-R ( D ) ⎝D⎠ D ⎛N⎞ N FAdd-S ( N , D ) = DFAdd-R ⎜ ⎟ + FAdd-R ( D ) ⎝D⎠ D

R

is designed as:

α ( J ) = F ( β , J ) = f ( J −1) N R + i ( β , α1 ) i

i

(11)

Function f J ( β , αk ) picks the Jth element of β in sequence

order

starting

from

α1

circularly,

i.e.

f J ( β , αk ) returns αk ′ , k ′ = ( k + J ) mod D . For distributed networks, the PE coefficient vector α ( J ) is selected as: i

⎧⎪ f ri ( β ) ; J = 1 F (β, J ) = ⎨ (12) i ⎪⎩ f J −1 ( β , α (1) ) ; J > 1 where f ri ( β ) picks an element from β randomly at i

relay Ri .

(16)

The decoding complexity curves under different generation size are depicted in Fig. 3. It is shown that SLNC reduces the decoding complexity significantly. Notice that when N = 50 and D = 2 , the multiplying frequency under SLNC is reduced to 26.4% of that under RLNC. When N = 70 and D = 3 , the adding frequency under SLNC is reduced to 11.9% of RLNC. As N increases, the performance gain introduced by SLNC becomes larger.

The PE coefficient vector for the Jth encoding at Ri

( i ∈ [1, N ])

(15)

(a) The multiplying frequency

Issue 6

GUO Yi-jun, et al. / Reduce the decoding complexity: segment linear network coding

59

distributed wireless sensor network. The network consists of 1 source, 30 relays and 70 destinations. The amount of relays which are connected to the destination di ′ obeys

(

)

the Poisson distribution, i.e. Pr N di′ = k = ( λ k k !) e − λ , where λ denotes the connection density of the network. The relays receive the source symbols and broadcast the encoded symbols to destinations. Suppose that only one node is allowed to transmit in one unit of time. The packet loss rate is set to be 0.01. 4.2.1 (b) The adding frequency Fig. 3 Operation frequency throughout the decoding process of a generation

For a given N, as D increases from 1, the reduction of the operation frequency in PD phase is huge, while the increment in SD phase is slight. This makes the total operation frequency decreases. However, when D is large enough, the reduction of the operation frequency in PD phase becomes slight while the increment in SD phase becomes dramatic. As a result, the total operation frequency increases. Thus, there exists an optimal value of D, referred to as Dopt , which minimizes the total

Survival time

Since SLNC requires nearly the same amount of transmissions as RLNC to deliver a generation, which would be proved later, we assume that a sensor node is exhausted after 1 million times of computing operations. Fig. 4 depicts the amount of transmitted symbols in the network as a function of the connection density λ and the ratio of died nodes. As λ increases, a relay broadcasts its encoded symbols to more receivers, thus the decoding events are more frequent which leads to a less survival time. It is shown that the survival time achieved by SLNC is excellent.

operation frequency. Consider that Dopt1  arg min ⎡⎣ f Multi-S ( N , D ) ⎤⎦ is derived D

as

⎛ N3 ⎞ Dopt1 = arg min ⎜ 2 + ND 2 ⎟ = N D ⎝D ⎠

(17)

And Dopt2  arg min ⎡⎣ f Add-S ( N , D ) ⎤⎦ is derived as D

⎛ 2 N 3 3N 2 ⎞ Dopt2 = arg min ⎜ 2 + + 3ND + 2 ND 2 ⎟ = N D D ⎝ D ⎠ Hence, Dopt is given as Dopt = Dopt1 = Dopt 2 = N

(18)

(19)

(a) The simulation is stopped when the ratio of died nodes achieves 70%

Accordingly, the minimum operation frequency is formulated as: 4 min FMulti-S (20) (N) = (N2 − N) 3 1 min FAdd-S (21) ( N ) = 2 N 2 + 3N N − 5 N 3 If N is not an integer, Dopt = ⎣⎢ N ⎦⎥ .

(

4.2

)

Simulation results

We simulated both SLNC and RLNC schemes in a

(b) λ is set to be 20 Fig. 4

The survival time when N = 30

60

The Journal of China Universities of Posts and Telecommunications

4.2.2

2013

Extra transmission cost

The receiving conditions required by SLNC are more strict than RLNC. The unequal distribution of the encoded symbols from the same generation on α1 , α2 ,..., αD leads to extra transmissions to satisfy the second receiving condition, especially in a distributed network. Fig. 5 plots the amount of transmitted symbols to delivery a generation as a function of λ and the ratio of successful decoding receivers. The gap between the RLNC curve and the SLNC curve indicates the extra transmission cost introduced by the proposed scheme, which is shown to be very small.

(a) The simulation is stopped when the ratio of successful decoding nodes achieves 90%

Fig. 6 The transmission rounds for all receivers to recover a generation successfully under different λ , when N = 100

5 Conclusions In this paper, we propose a SLNC scheme which provides a general coding structure for the generation-based network coding. By dividing a generation into several segments and restraining the coding coefficients of the symbols within the same segment, SLNC can split a high-rank matrix inversion into several low-rank matrix inversions, hence reduce the decoding complexity dramatically. We also propose two coefficient selection strategies for both centrally controlled networks and distributed networks respectively. By the theoretical analysis and simulation results, we prove that SLNC achieves a fairly low decoding complexity at the cost of rarely few extra transmissions. Acknowledgements This work was supported by the National Great Science Specific Project of China (2012ZX03001028).

References

(b) λ is set to be 20 Fig. 5

4.2.3

The extra transmission cost when

Network throughput

Define an event that each relay transmits one symbol in turn as the relaystransmit a round. We simulated the transmission rounds for all the receivers to recover a generation, which is taken as a measure of the network throughput. Fig. 6 shows that the amount of transmission rounds under SLNC is nearly the same as RLNC.

1. Ahlswede R, Cai N, Li S Y, et al. Network information flow. IEEE Transactions on Information Theory, 2000, 46(4): 1204−1216 2. Koetter R, Medard M. An algebraic approach to network coding. IEEE/ACM Transactions on Networking, 2003, 11(5): 782−795 3. Li S Y, Yeung R, Cai N. Linear network coding. IEEE Transactions on Information Theory, 2003, 49(2): 371−381 4. Li S Y, Sun Q, Shao Z. Linear network coding: theory and algorithms. Proceedings of the IEEE, 2011, 99(3): 372−387 5. Li B,Niu D. Random network coding in peer-to-peer networks: from theory to practice. Proceedings of the IEEE, 2011, 99(3): 513−523 6. Nistor M, Lucani D, Vinhoza T, et al. On the delay distribution of random linear network coding. IEEE Journal on Selected Areas in Communications, 2011, 29(5): 1084−1093 7. Swapna B T, Eryilmaz A, Shroff N B. Throughput-delay analysis of random linear network coding for wireless broadcasting. Proceedings of the International Symposium on Network Coding (NetCod’10), Jun 9−11, 2010, Toronto, Canada. Los Alamitos, CA, USA: IEEE Computer Society, 2010:

Issue 6

GUO Yi-jun, et al. / Reduce the decoding complexity: segment linear network coding

6p 8. Najeem M, Siva Ram Murthy C. On enhancing the random linear network coding. Proceedings of the 17th IEEE International Conference on Networks (ICON’11), Dec 14−16, 2011, Singapore. Piscataway, NJ, USA: IEEE, 2011: 246−251 9. Ho T, Medard M, Koetter R, et al. A random linear network coding approach to multicast. IEEE Transactions on Information Theory, 2006, 52(10): 4413−4430 10. Wu X F, Zhao C M, You X H. Generation-based network coding over networks with delay. Proceedings of the 8th IFIP International Conference on Network and Parallel Computing (NPC’08), Oct 18−21, 2008, Shanghai, China. Piscataway, NJ, USA: IEEE Computer Society, 2008: 365−368 11. Thibault J P, Chan W Y, Yousefi S. Recursive and non-recursive network

61

coding: Performance and complexity. Proceedings of the 2007 International Conference on Signal Processing and Communication Systems (ICSPCS’07), Nov 24−27, 2007, Gold Coast, Australia. Piscataway, NJ, USA: IEEE, 2007: 1223−1226 12. Fiandrotti A, Zezza S, Magli E. Complexity-adaptive random network coding for peer-to-peer video streaming. Proceedings of the 13th International Workshop on Multimedia Signal Processing (MMSP’11), Oct 17−19, 2011, Hangzhou, China. Piscataway, NJ, USA: IEEE, 2011: 6p 13. Yin B,Wu M, Wang G H, et al. Low complexity opportunistic decoder for network coding. Proceedings of the 2012 Conference Record of the 46th Asilomar Conference on Signals, Systems and Computers (ASILOMAR’12), Nov 4−7, 2012, Asilomar, CA, USA. Piscataway, NJ, USA: IEEE, 2012: 1097−1101

(Editor: WANG Xu-ying)

From p. 48 12. Banerjee I, Chanak P, Sikdar K B, et al. EERIH: energy efficient routing via information highway in sensor network. Proceedings of the International Conference on Emerging Trends in Electrical and Computer Technology (ICETECT’11), Mar 23−24, 2001, Nagercoil, India. Piscataway, NJ, USA: IEEE, 2011: 1057−1062 13. Che-Aron Z, Al-Khateeb W F M, Anwar F. ENFAT-AODV: the fault-tolerant routing protocol for high failure rate wireless sensor networks. Proceedings of the 2nd International Conference on Future Computer and

Communication (ICFCC’10): Vol 1, May 21−24, 2010, Wuhan, China. Piscataway, NJ, USA: IEEE, 2010: 467−471 14. Boukerchea A, Pazzia R W N, Araujob R B. Fault-tolerant wireless sensor network routing protocols for the supervision of context-aware physical environmental. Journal of Parallel and Distributed Computing, 2006, 66(4): 586−599 15. Wheeler A, Corporation E. Commercial application of wireless sensor networks using ZigBee. IEEE Communications Magazine, 2007, 45(4): 70−77

(Editor: WANG Xu-ying)