Throughput-Efficient Rateless Coding with Packet Length Optimization ...

3 downloads 107 Views 247KB Size Report
Length Optimization for Practical Wireless ... were invented by Luby in [2], namely LT codes. ... over wireless channels is discarded at the receiver because of.
This full text paper was peer reviewed at the direction of IEEE Communications Society subject matter experts for publication in the IEEE Globecom 2010 proceedings.

Throughput-Efficient Rateless Coding with Packet Length Optimization for Practical Wireless Communication Systems Xijun Wang, Wei Chen, Member, IEEE, and Zhigang Cao, Senior Member, IEEE State Key Laboratory on Microwave and Digital Communications Tsinghua National Laboratory for Information Science and Technology (TNList) Department of Electronic Engineering, Tsinghua University, Beijing 100084, China Email: [email protected] {wchen,czg-dee}@tsinghua.edu.cn

Abstract—Rateless coding ensures reliability for time-varying channels by providing ever-increasing redundancy at the packet level. However, the optimal packet length for rateless codes has not been carefully studied from the application layer and the physical layer. In this paper, we present a practical wireless communication system consisting of an LT coding module, a channel coding module, and error detection modules. By analyzing the system performance, we find the impacts of packet length on reliability and efficiency, and formulate the optimization problem that maximizes the throughput efficiency over timevarying channels. We also compare the performance of the rateless coding system with the conventional one which does not utilize LT codes. Simulation results show that the rateless coding system are superior to the conventional system in a large SNR range for slow channel variations and a relative small SNR range for fast channel variations.

I. I NTRODUCTION The idea of fountain codes was introduced by Byers et al. in [1] and the first practical realizations of fountain codes were invented by Luby in [2], namely LT codes. Fountain codes, as one of erasure coding schemes at the application layer, are rateless in the sense that an infinite amount of redundancy can be added to the information bits of a source. This rateless property is very attractive because the transmitter is able to keep sending new coded packets to the receiver until the receiver successfully decodes the source message. Therefore, the rate is determined on the fly by the number of coded packets required for the receiver to decode. Besides, a very low encoding/decoding complexity of fountain codes is another important property for practical use. Originally, rateless codes were proposed for message delivery over the wired computer networks, where the loss is modeled by an erasure channel as packets are usually dropped in intermediate routers. In recent years, the development of fountain codes [2], [3] inspires us to consider using rateless coding ideas for reliable communication under channel uncertainty. Since rateless codes do not impose a fixed code rate and do not need the channel knowledge at the transmitter, This work was supported by NSFC project under Grant No. 60832008 and No. 60902001.

they are well suited for channels with varying or unknown loss rates. A typical application is a broadcasting system in wireless environments, where receivers experience different channel conditions and hence different loss rates. For example, Raptor codes have been standardized both for Multimedia Broadcast and Multicast Services (MBMS) [4] and Digital Video Broadcasting (DVB) [5]. Rateless codes are also found to be suited for wireless relay networks [6], [7] and cognitive radio networks [8], [9]. Similar to wired networks, wireless channels can also be viewed as erasure channels when error-detecting codes are employed. However, it is more common that packet transmitted over wireless channels is discarded at the receiver because of decoding errors. As a result, the erasure probability is related to the physical layer parameter, such as channel code rate, and the application layer parameter, such as packet length. On one hand, Courtade et al. considered the redundancy of rateless codes and the rate of channel codes from the cross-layer perspective in [10]. They focused on the optimal allocation of redundancy between the application layer and the physical layer. On the other hand, the optimal packet length for rateless codes has been studied in WLANs [11], considering the MAC layer retransmission rate and the physical layer modulation scheme. These previous works, however, have not considered the optimal packet length for rateless codes from both the application layer and the physical layer. Moreover, most of previous works were based on quasi-static fading channels or uncorrelated fast fading channels, which are not accurate for several practical wireless communication systems. In contrast, we study the optimal packet length for LT codes concatenated with terminated convolutional codes over timevarying channels from cross-layer point of view. The source message is equally partitioned into packets before rateless coding. Given the message size, the packet length has an impact on the performance of LT codes, the block error probability of channel codes, and the physical layer overhead. Large size packets are more likely to be discarded at the receiver. Thus, increasing the packet length will decrease the reliability at the physical layers, and vice versa. However, the packet length

978-1-4244-5637-6/10/$26.00 ©2010 IEEE

This full text paper was peer reviewed at the direction of IEEE Communications Society subject matter experts for publication in the IEEE Globecom 2010 proceedings.

x'

CRC

x

Segmentation

c'

LT Encoder

c

CRC

s'

Channel Encoder

s

k bits

Modulation

Message

u Feedback Channel

Channel

uˆ xˆ ' CRC-1



Reassembly

cˆ '

LT Decoder



CRC-1

sˆ'

Channel Decoder



Demodulation

Fig. 1: System block diagram.

Packet

Packet

Packet

LT coded packet

LT coded packet

We consider a single-antenna communication system employing rateless codes as illustrated in Fig. 1. The layer structure of the system is shown in Fig. 2. The system consists of an LT coding module at the application layer, a channel coding module at the physical layer, and error detection modules at both layers. By using error-detecting codes, we convert a wireless channel into an erasure channel.    Consider a source message x = (x1 , . . . , xk ) of length k  bits to be transmitted. k−k Cyclic Redundancy Check (CRC) bits are appended to facilitate error detection at the receiver. As a result, the overall information sequence is x = (x1 , . . . , xk ). We assume CRC bits are sufficient that there is no undetected error. The information sequence is first equally divided into     K = k/l  source packets, i.e., c1 , c2 , . . . , cK . The source packets are then encoded with LT encoder, resulting in a potentially infinite number of coded packets with the same size as the source packets. Each LT-coded packet c is appended  with a (l − l )-bit CRC sequence and then encoded by a rate Rc = kc /nc convolutional code with constraint length kc (m + 1), where m is the memory order of the code. The output of the channel encoder is denoted by s = (s1 , . . . , sn ), where n = (l + m)/Rc , and directly modulated on radio block ui consisting of b transmission symbols. As a result, we have an infinite block sequence u = (u1 , . . . , ui , . . .) to be transmitted. At the receiver side, if residual errors are detected after Viterbi decoding, the corresponding LT-coded packet is declared as lost. The correctly received packets can be used by LT decoder to recover the source message. Upon successful decoding, the receiver acknowledges the transmitter with onebit through feedback channel. Here, we assume the feedback is reliable and instantaneous. The channel is assumed to be time-varying Rayleigh flatfading channel. Assume coherent detection available, the re-

Segmentation

l 'bits

LT coded packet

LT coding

m bits

l bits

II. S YSTEM M ODEL

Application Layer

l 'bits

LT coded packet

has contradictory effects on efficiency at different layers. For example, large packets reduce the physical layer overhead, but increase the overhead of LT codes as the number of packets decrease. Therefore, we consider both reliability and efficiency in order to optimize the system throughput. The rest of this paper is organized as follows, Section II introduces the system model. The impacts of packet length are analyzed and the optimization problem is formulated in Section III. Section IV presents and discusses the simulation results. And Section V concludes the paper.

CRC

CRC

LT coded packet

Tail

CRC

Tail

n bits

Convolutional coded packet

Convolutional coding

Convolutional coded packet

b symbols

Block

Block

Block

Block

PHY Layer

Fig. 2: Layer structure.

ceived symbol at time epoch t is given by  u ˆ t = Eu h t u t + z t ,

(1)

where the fading coefficient ht is a zero-mean circularly symmetric complex Gaussian random variable with variance σh2 , Eu is the energy per transmitted symbol, and zt is the Additive White Gaussian Noise (AWGN) with variance N0 . According to the Rayleigh fading assumption, the instantaneous received 2 SNR is defined as γ = |htN| 0Eu , following an exponential distribution with mean γ¯ = σh2 Eu /N0 . Consider the uniform scattering environment with Jakes’ model, the autocorrelation of the fading coefficient is given as R(τ ) = σh2 J0 (2πfD τ ) , where J0 (·) is the zero-order Bessel function of the first kind, and fD is the maximum Doppler frequency. We assume the channels change slowly enough that the fading coefficients appear to be constant over one symbol period Ts . III. R ATELESS C ODING WITH PACKET L ENGTH O PTIMIZATION As the packet length affects both efficiency and reliability, we analyze these impacts separately in the following to formulate the optimization problem that maximizes the system performance. We first evaluate the efficiency of LT codes. Then, we analyze the reliability at the physical layer. Finally, we derive the throughput efficiency and obtain the optimization problem. A. LT codes In this subsection, we introduce the encoding and decoding process, present the degree distribution, and evaluate the performance of LT codes. 1) Encoding: Each coded packet ci is produced from    K source packets, c1 , c2 , . . . , cK , using the following procedure. The encoder first randomly draws a degree di for the coded packet ci from a degree distribution ρ(d). Then, the encoder chooses, uniformly at random, di source packets to be the neighbors of the coded packet, denoted by

978-1-4244-5637-6/10/$26.00 ©2010 IEEE

This full text paper was peer reviewed at the direction of IEEE Communications Society subject matter experts for publication in the IEEE Globecom 2010 proceedings.



E[K ] − K , (4) K  where K is the number of coded packets needed to recover  the source message. Note that K is a random variable and the  average E[K ] can be estimated by simulation. The average decoding overhead, ¯, is a function of the number of source packets K and the degree distribution ρ(d), as illustrated in Fig. 3. From the simulation results, we conclude that the overhead vanishes as the number of source packets grows, i.e.

¯ → 0 for K → ∞, but the convergence speed depends on the degree distribution. Given a fixed λ, the overhead decreases with increasing δ. However, there is a marginal decrease in overhead when δ ≥ 0.5. Given a fixed δ, we can obtain better performance when λ is closer to the lower bound. Based on above observations, we set δ = 0.5 and λ = 0.1 in the following simulations. However, choosing the optimal parameters is beyond the scope of this paper. It is also worth  noting that the length of source packet l has an impact on the overhead, if the message size is constrained.

¯ =

0.9

λ=0.1,δ=0.5 λ=0.3,δ=0.5 λ=0.1,δ=0.05 λ=0.1,δ=0.95

0.8 0.7 0.6

Overhead

Ni = {ni,1 , . . . , ni,di }, and computes the coded packet as the bitwise sum, modulo 2, of these di source packets, i.e.    ci = cni,1 ⊕cni,2 ⊕· · ·⊕cni,d . This procedure continues until i an ACK of successful decoding is received from the decoder. 2) Decoding: We assume the encoder shares a seed for a pseudo-random generator with the decoder [2]. Therefore, the decoder is able to know the degree and set of neighbors of each coded packet. These information enable the decoding procedure as follows. The decoder first identifies a ripple, a coded packet of degree-one. Since the ripple is an exact copy of its neighboring source packet, the decoder can immediately recover the value of the source packet. Then the decoder bitwise exclusive-ors the recovered source packet with each of its neighboring coded packets and decreases their degree by one. This procedure continues until either no ripple exists and no more updates can be made without receiving more coded packets, or all source packets have been recovered. 3) Degree distribution: The degree distribution plays an important role in the performance of LT codes. We use robust soliton distribution which is more reliable and defined as [2] μ(d) + ν(d) , d = 1, . . . , K, (2) ρ(d) =  d μ(d) + ν(d) where ⎧ S K  ⎪ ⎨ Kd , d < S , 1 , d = 1, S ,ν(d) = K μ(d) = K 1 ln Sδ , d = K S, ⎪ ⎩ d(d−1) , d ≥ 2, 0, d> K S, √ and S = λ ln(K/δ) K. δ and λ are configuration parameters of degree distribution, where δ is the maximum √ probability of decoding failure when receiving K + O( K ln2 (K/δ)) coded packets and λ is a suitable positive constant within the allowable range given by √ √ 1 K K 1 ≤λ≤ . (3) K ln (K/δ) 2 ln (K/δ) 4) Performance Metric: The performance of LT codes is evaluated by the average decoding overhead, ¯, defined as

0.5 0.4 0.3 0.2 0.1 0

0

500

1000

1500

2000

2500

3000

3500

4000

4500

5000

Number of source packets K

Fig. 3: The average decoding overhead ¯ with different degree distribution parameters.

B. Erasure Probability Analysis We combine channel codes and CRC to create an erasure channel from a noisy channel. When the packet does not pass the CRC check after Viterbi decoding, an erasure is declared. The probability of erasure is denoted by Pe . In fact, Pe is the block error probability at the physical layer. However, the exact block error probability analysis of terminated convolutional codes over time-varying channels is complicated. As we know, a smaller Doppler spread (a few hertz to a fraction of a hertz) leads to slower channel variations, and a larger Doppler spread (a couple hundred hertz) leads to faster channel variations. Therefore, we analyze two extreme cases: block fading channels where the fading remains constant during one block but changes over different blocks, and uncorrelated fast fading channels. In the following, we derive the union upper bounds for block error probabilities in these two cases based on results in [12]. Without loss of generality, we assume that the all-zero codeword is transmitted. 1) Block Fading Channels: The block error probability is upper bounded by [12] ⎛ ⎤⎞l ⎡ ˆ ∞ ∞  ⎝1 − min ⎣1, a (d) P2 (d | γ)⎦⎠ f (γ) dγ, Pe ≤ 1− 0

d=df

(5) where a(d) is the number of error events of Hamming weight d, df is the free distance of the code, and P2 (d | γ) is the conditional pairwise error (PEP) defined as probability √

|ht |2 Eu . 2d σ2 P2 (d | γ) = Q 2dγ = Q z 2) Uncorrelated Fast Fading Channels: The block error probability is upper bounded by ⎛ ⎞l ∞  a (d) P2 (d)⎠ , (6) Pe ≤ 1 − ⎝1 − d=df

where P2 (d) is the unconditional PEP given by ⎞ ⎛  d  d ˆ   1 1  ⎠ ⎝ P2 (d) = Q 2 γi f (γ)dγ ≤ . (7) 2 1 + γ¯ γ i=1

978-1-4244-5637-6/10/$26.00 ©2010 IEEE

This full text paper was peer reviewed at the direction of IEEE Communications Society subject matter experts for publication in the IEEE Globecom 2010 proceedings.

TABLE I: Simulation parameters.

C. Throughput Efficiency We evaluate the system performance by throughput efficiency, defined as the ratio of correctly received bits to transmitted bits. It is not a trivial work to derive the throughput efficiency in a general time-varying channel, where the fading is correlated between different blocks. For a large Doppler spread or in a TDMA system, however, the channel fading can be viewed as independent between different blocks. Thus, packets are discarded independently with the same erasure probability. In this case, the throughput efficiency can be analyzed in the following theorem. Theorem 1: The throughput efficiency of LT codes concatenated with terminated convolutional codes over time-varying channels is   1 − Pe k l Rc . (8) η= 1 + ¯ k l + m Proof: Given the number of coded packets needed to recover the source message without considering erasures,  K , the number of coded packets needed by the receiver to successfully decoded on erasure channel, X, follows the negative binomial distribution:   x−1       K (1 − Pe ) Pex−K , x ≥ K . Pr X = x | K =  x−K (9) According to Eqns. (4) and (9), the expected value of X is        K K (1 + ¯) =E = E [X] = E E X | K . 1 − Pe 1 − Pe (10) Taking into account the overhead of tail bits and CRC bits, the throughput efficiency is thus given by 

η=







1 − Pe k l K k l l Rc = Rc . E [X] k l l+m 1 + ¯ k l + m

(11)

It validates Eqn. (8). In practical applications, the source message size is fixed. Our design objective is to maximize the throughput efficiency by carefully choosing the packet length with the message size constraint. Therefore, the optimal packet length can be found via the following optimization problem 

max 

1≤l ≤k

s.t.



1 − Pe k l Rc 1 + ¯ k l + m  K = k/l , l ∈ Z

η=

(12) 

where the erasure probability Pe increases with l , the ineffi ciency caused by tail bits and CRC bits decreases with l , and the overhead of LT codes ¯ is monotonously decreases with K. The above optimization problem gives us some intuition about how to balance the physical layer reliability, the application layer efficiency, and the physical layer efficiency. Due to space limitations, we omit the low complexity algorithm to get the solution to this optimization problem.

Parameter name LT codes degree distribution {δ,λ} Channel codes (nc , kc , m + 1) Generator polynomials Modulation scheme Message size CRC

Value Robust soliton distribution 0.5, 0.1 Terminated convolutional codes (2, 1, 7) (171, 133)8 BPSK 50000 bits 16 bits

IV. S IMULATION R ESULTS In this section, we perform extensive simulations to evaluate the performance of the investigated system. We first relax the constraint of message size and illustrate the impacts of K and  l on system performance individually. Then we present the performance for different packet length with the constraint. We also compare the performance of rateless coding system with that of the conventional system, which does not use LT codes, as a baseline reference. The simulation parameters are summarized in Table I. A. System with relaxed constraint We first fix the number of source packets K to study the  impact of packet length l on the system performance. The throughput efficiency for slow and fast channel variations are shown in Fig. 4 and 5, respectively. It is shown that the small packet has a large η in the low SNR regime. This is because large packets are almost surely discarded when SNR is low. However, in high SNR regime where erasure probabilities are small for packets of all sizes and the physical layer overhead dominates the overall performance, large packet has a large η. In the conventional system, the message is successfully received only when all source packets are correctly decoded. Rateless coding system is superior to the baseline at low SNRs because LT coded packets are independent with each other and more diversity is obtained. At high SNRs, the performance loss is the result of inefficiency of LT codes with a small K.  Then we fix the packet length l . The impact of K on throughput efficiency for slow and fast channel variations are shown in Fig. 6 and 7, respectively. It is evident that the throughput efficiency increases as K grows, and it is upper bounded by the limiting case, where the LT codes overhead approaches zero as K goes to infinity. It is also worth noting that the larger K, the poorer performance of conventional system, and vice versa for the rateless coding system. B. System with message size constraint Here, we compare the performance of rateless coding system with different packet length, and show the maximum throughput efficiency of the rateless coding system, its limiting case, and the conventional system. Fig. 8 and 9 show the maximum η for slow and fast channel variations, respectively.  There exists an optimal packet length lopt in different SNR regime to maximize the throughput efficiency. In the low SNR regime where reliability dominates, the smaller packets are preferred, whereas in the high SNR regime where efficiency

978-1-4244-5637-6/10/$26.00 ©2010 IEEE

This full text paper was peer reviewed at the direction of IEEE Communications Society subject matter experts for publication in the IEEE Globecom 2010 proceedings.

0.5

0.45 0.4

0.35 0.3 0.25 0.2 0.15

l’=15 l’=127 l’=1023 l’=2047 Traditional system

0.45 0.4

Throughput efficiency

Throughput efficiency

0.4

0.5

0.5

l’=15 l’=127 l’=1023 l’=2047 Traditional system

Throughput efficiency

0.45

0.35 0.3 0.25 0.2 0.15

0.35 0.3 0.25 0.2 0.15

0.1

0.1

0.1

0.05

0.05

0.05

0 −10

−5

0

5

10

15

20

25

0 −10

30

−5

0

5

10

15

20

25

0 −10

30

K=10 K=100 K=1000 K=5000 Traditional system Limiting case

−5

0

5

10

15

20

25

30

SNR per bit (dB)

SNR per bit (dB)

SNR per bit (dB)

Fig. 4: Throughput efficiency η with Fig. 5: Throughput efficiency η with Fig. 6: Throughput efficiency η with  fixed K for small normalized Doppler fixed K for large normalized Doppler fixed l for small normalized Doppler  spread (l = 100, fD Ts = 0.00001). spread (K = 10, fD Ts = 0.00001). spread (K = 10, fD Ts = 0.1). 0.45 0.4

0.3 0.25 0.2 0.15

0.35 0.3

l’=10, K=5000 l’=50, K=1000 l’=500, K=100 l’=1000, K=50 Opt. rateless coding system Opt. limiting case Opt. traditional system

0.45 0.4

Throughput efficiency

K=10 K=100 K=1000 K=5000 Traditional system Limiting case

Throughput efficiency

Throughput efficiency

0.4 0.35

0.5

0.5

0.5 0.45

0.25 0.2 0.15

0.35 0.3 0.25 0.2

0.1

0.1

0.1

0.05

0.05

0.05

0 −10

−5

0

5

10

15

20

25

30

SNR per bit (dB)

0 −10

−5

0

5

10

15

20

25

30

l’=10, K=5000 l’=50, K=1000 l’=500, K=100 l’=1000, K=50 Opt. rateless coding system Opt. limiting case Opt. traditional system

0.15

0 −10

−5

0

5

10

15

20

25

30

SNR per bit (dB)

SNR per bit (dB)

Fig. 7: Throughput efficiency η with Fig. 8: Throughput efficiency η with Fig. 9: Throughput efficiency η with  fixed l for large normalized Doppler fixed message size for small normalized fixed message size for large normalized  spread (l = 100, fD Ts = 0.1). Doppler spread (fD Ts = 0.00001). Doppler spread (fD Ts = 0.1).

dominates, the lager packets, however, may not be the best choice because of the contradictory effects of efficiency at  different layers. The packet length of l = 500 bits has the largest throughput efficiency at high SNRs in this example. Although the limiting case has the same performance with the conventional system in the high SNR regime, an actual rateless coding system may suffer a performance loss due to the overhead. The rateless coding system and its limiting case have better performance than the conventional system in a large SNR range, i.e. from −10 dB to around 25 dB, when the channel variations are slow. However, when the channels vary fast there is a small SNR range where the rateless coding system is superior in the low SNR regime. V. C ONCLUSION In this paper, we presented a wireless system utilizing LT codes concatenated with terminated convolutional codes over time-varying channels. We identified the importance of finding the optimal packet length and the intrinsic relationship between the application layer and the physical layer. The system performance with different packet length were analyzed from the cross-layer perspective taking into account of both reliability and efficiency. The simulation results showed that there exists an optimal packet length maximizing the throughput efficiency given an SNR. Compared with the conventional system, the rateless coding system has better performance in the low SNR regime, even when the channels vary fast.

R EFERENCES [1] J. W. Byers, M. Luby, M. Mitzenmacher, and A. Rege, “A digital fountain approach to reliable distribution of bulk data,” in Proc. ACM SIGCOMM, Jan. 1998, pp. 56–67. [2] M. Luby, “LT codes,” in Proc. 43rd Annual IEEE Symp. Foundations Computer Science (FOCS), Vancouver, BC, Canada, Nov. 2002. [3] A. Shokrollahi, “Raptor codes,” IEEE Trans. on Information Theory, vol. 52, no. 6, pp. 2551–2567, June 2006. [4] Technical Specification Group Services and System Aspects, Third Generation Partnership (3GPP) Multimedia Broadcast/Multicast Service (MBMS); Protocols and codecs(Release 7), Std., June 2008. [5] ETSI, “Digital Video Broadcasting (DVB); IP Datacast over DVB-H: Content Delivery Protocols,” TS 102 472, Dec. 2006. [6] J. Castura and Y. Mao, “Rateless coding for wireless relay channels,” IEEE Trans. Wireless Communications, vol. 6, no. 5, pp. 1638–1642, May 2007. [7] X. Zhang and Y. Gong, “Adaptive power allocation for multihop regenerative relaying with limited feedback,” IEEE Trans. Veh. Technol., vol. 58, no. 7, pp. 3862–3867, Sep. 2009. [8] G. Yue and X. Wang, “Anti-jamming coding techniques with application to cognitive radio,” IEEE Trans. Wireless Commmun., vol. 8, no. 12, pp. 5996–6007, Dec. 2009. [9] X. Wang, W. Chen, and Z. Cao, “A rateless coding based multi-relay cooperative transmission scheme for cognitive radio networks,” in Proc. IEEE Globecom, Honolulu, USA, Dec. 2009. [10] T. A. Courtade and R. D. Wesel, “A cross-layer perspective on rateless coding for wireless channels,” in Proc. IEEE ICC, Dresden, Germany, June 2009. [11] H. Chen, R. Maunder, and L. Hanzo, “Fountain-code aided file transfer in 802.11 WLANs,” in Proc. IEEE VTC’09 Fall, Anchorage, Alaska, USA., Sep. 2009. [12] E. Malkamaki and H. leib, “Evaluating the performance of convolutional codes over block fading channels,” IEEE Trans. Inf. Theory, vol. 45, no. 5, pp. 1643–1646, July 1999.

978-1-4244-5637-6/10/$26.00 ©2010 IEEE

Suggest Documents