178
IEEE COMMUNICATIONS LETTERS, VOL. 14, NO. 2, FEBRUARY 2010
Performance versus Overhead for Fountain Codes over π½π Gianluigi Liva, Member, IEEE, Enrico Paolini, Member, IEEE, and Marco Chiani, Senior Member, IEEE
AbstractΒβ Fountain codes for packet erasure recovery are investigated over Galois οelds of order π β₯ 2. It is shown through development of tight upper and lower bounds on the decoding failure probability under maximum likelihood decoding, that the adoption of higher order Galois οelds is beneοcial, in terms of performance, for linear random fountain codes. Moreover, it is illustrated how Raptor codes can provide performances very close to those of random fountain codes, with an affordable encoding and decoding complexity. Non-binary Raptor codes turn out to represent an appealing option for applications requiring severe constraints in terms of performance versus overhead, especially for small source block sizes. Index TermsΒβ Fountain codes, Raptor codes, maximum likelihood decoding.
I. I NTRODUCTION OUNTAIN codes have been introduced in [1] as a possible solution for information delivery in broadcast and multicast networks. A fountain encoder is capable to produce an undeοned amount of encoded symbols (or output symbols) out of a source block formed by π source symbols (or input symbols). In broadcast and multicast networks, each user collects symbols generated by the fountain encoder. Once a sufοciently large amount of symbols has been received, the user is able to recover the π input symbols. For an ideal fountain code this amount coincides with π: the decoder is able to recover the source block from any set of π output symbols. For real fountain codes, the source block is recovered with a probability that is non-decreasing with the number of symbols received in surplus with respect to (w.r.t.) π. This integer number is referred to as the overhead, here denoted by πΏ. Fountain codes are usually adopted in communication networks to recover lost packets. Here, an object (e.g., a οle) is divided into π source packets, all of the same length πΏ [bits], out of which the encoder produces an undeοned amount of encoded packets, each of length πΏ [bits]. If a binary fountain code is used, each encoded packet may be obtained as a bitwise exclusive-or of a subset of the source packets. Similarly, for a fountain code over a Galois οeld π½π of characteristic two with π > 2, each source packet is regarded as a collection of πΏ/ log2 π symbols in π½π : each encoded packet is obtained as a symbol-wise sum (in π½π ) of a subset of the source packets. Hence, for a given object the encoding latency can be kept
F
Manuscript received October 22, 2009. The associate editor coordinating the review of this letter and approving it for publication was V. Stankovic. G. Liva is with the Institute of Communication and Navigation of the Deutsches Zentrum fur Luft- und Raumfahrt (DLR), 82234 Wessling, Germany (e-mail:
[email protected]). E. Paolini and M. Chiani are with DEIS/WiLAB, University of Bologna, 47521 Cesena (FC), Italy (e-mail: {e.paolini, marco.chiani}@unibo.it). Supported in part by the EC under Seventh Framework Program grant agreement ICT OPTIMIX n.INFSO-ICT-214625 and in part by the EC-IST SatNEx-II Project (IST-27393). Digital Object Identiοer 10.1109/LCOMM.2010.02.092080
constant, regardless the Galois οeld order used for performing the linear combinations. In this letter, two classes of fountain codes are considered, namely, linear random fountain (LRF) codes and Raptor codes [2]. For both, maximum-likelihood (ML) decoding is adopted. The decoding error probability of LRF codes over Galois οelds of order π β₯ 2, as a function of the overhead, is investigated in Section II. It is shown through tight upper and lower bounds that, by adopting a code construction on non-binary οelds, the probability of decoding success can be largely increased for the same overhead. In Section III, it is illustrated through simulation how Raptor codes constructed on Galois οelds of order π β₯ 2 are capable to closely approach the performance of LRF codes even for small overheads. Final remarks follow in Section IV. II. L INEAR R ANDOM F OUNTAIN C ODES OVER π½π Let π = [ππ ]π=0,...,πβ1 β π½ππ be a vector of π input symbols.1 A LRF code over π½π is a random linear map π½ππ β π½β π , where denotes the set of all sequences over π½ . The encoder π½β π π generates the output symbol ππ , π β β, as follows: β for each input symbol ππ , a coefοcient πππ β π½π is picked independently with uniform probability; βπβ1 β the output symbol ππ is computed as ππ = π=0 πππ ππ , where all operations are performed in π½π . Assume the fountain encoder generates a stream of π output symbols. Denoting these symbols by π(0,...,πβ1) , we have π(0,...,πβ1) = G(0,...,πβ1) π where β€ β‘ π00 . . . π0 πβ1 β₯ β’ .. G(0,...,πβ1) = β£ β¦. . ππβ1 0 . . . ππβ1 πβ1
Note that, in general, G(0,...,πβ1) is a dense matrix. The index π β β assigned to the output symbol ππ is also known as the encoded symbol identiοer (ESI). For an ESI π, we let Ξπ = {πππ : π = 0, . . . , π β 1}. Assume π+πΏ β₯ π output symbols π(π1 ,...,ππ+πΏ ) are collected at the receiver (the other transmitted symbols being erased by the channel) and let π½ = {π1 , . . . , ππ+πΏ } be the set of ESIs of these symbols. We have G(π1 ,...,ππ+πΏ ) π = π(π1 ,...,ππ+πΏ )
(1)
where G(π1 ,...,ππ+πΏ ) is the ((π + πΏ) Γ π) matrix composed of the π + πΏ rows of G(0,...,πβ1) whose indexes belong to π½. ML decoding consists of solving (1) through Gaussian elimination to recover all π input symbols π. Note that, to this purpose, for each collected output symbol ππ , the decoder needs the 1 Throughout
the letter vectors will be intended as column vectors.
c 2010 IEEE 1089-7798/10$25.00 β
LIVA et al.: PERFORMANCE VERSUS OVERHEAD FOR FOUNTAIN CODES OVER π½π 0
10
179 π
Upper bound
Lower bound
π
π
Gβ1 T
π π
π
GLDPC
Ε¦1
10
q=2
GH
Ε¦2
π
β
GLT Ξπ
π
random generator
10
ππ
π (ESI) q=4 Ε¦3
10
Fig. 2.
Block diagram of the systematic Raptor encoder speciοed in [6].
Ε¦4
10
q=8
q=64
Ε¦5
10
q=256 Ε¦6
10
0
1
2
3
4
5
6
7
8
9
10
πΏ
Fig. 1. Lower and upper bounds on the decoding error probability of LRF codes over π½π , for π = 2, 4, 8, 64, 256. The bounds are independent of π.
corresponding Ξπ .2 Decoding is successful if and only if rank(G(π1 ,...,ππ+πΏ ) ) = π. The decoding error probability is then given by (see, e.g., [3]) ) π ( β π πβ1 ππ (π, πΏ, π) = 1 β 1 β π+πΏ (2) π π=1 = 1 β (π βπβπΏ ; π)π
(3)
where the formulation (3) uses the π-Pochhammer symbol. Proposition 1: The decoding failure probability of a LRF code over π½π , under ML decoding, fulοlls π βπΏβ1 β€ ππ (π, πΏ, π) <
1 βπΏ π πβ1
(4)
with equality for the lower bound if and only if π = 1.3 Proof: The β lower bound is obtained by observing that π 1 β ππ (π, πΏ, π) = π=1 (1 β π πβ1βπβπΏ ) β€ (1 β π πβ1βπβπΏ ) = 1 β π β1βπΏ , where the inequality is due to each factor being less than 1. Note that equality holds if and only if π = 1. The upper bound is proved by induction on π. The bound holds for π = 1. In fact, 1 β ππ (1, πΏ, π) = 1 β π β1βπΏ = 1 1 β 1π π βπΏ > 1 β πβ1 π βπΏ . Assuming the bound is true for π, β then it is true also for π + 1. In fact, 1βππ (π + 1, πΏ, π) π+1 = π=1 (1βπ πβ1βπβ1βπΏ ) = )[1βππ (π, πΏ+1, π)](1βπ β1βπΏ ) > ( 1 1 β1βπΏ β1βπΏ (1 β πβ1 π ) 1βπ π βπΏ where the οrst > 1 β πβ1 inequality is due to the bound for π, and the second inequality can be easily veriοed. Remarkably, the upper bound and the lower bound in (4) are independent of the number π of input symbols, which allows to develop considerations valid for all π. The bounds are depicted in Fig. 1 as functions of πΏ for π = 2, 4, 8, 64 and 256. The two bounds converge for large π and the gap between them is very small for all π. It can be veriοed that the upper bound is extremely tight even for π = 2 and π in the order of a few tens. Fig. 1 reveals an inherent advantage, in terms of 2 In real systems, Ξ is not usually transmitted as it is obtained by π the decoder through the same pseudo-random generator used for encoding, starting from ESIs. Therefore, is is sufοcient to transmit the ESI together with the corresponding output symbol. 3 The upper bound for the binary case, π (π, πΏ, 2) < 2βπΏ , appeared in [4]. π
performance for the same overhead, of constructing the code on higher order Galois οelds for a given π. For example, with only one symbol of overhead, we have ππ β 2.5 β
10β4 for all π over π½64 , while we have ππ β₯ 2.5 β
10β1 for all π over π½2 . The independence of the two bounds from π and the small gap between them emphasize a weak dependence of the performance on π, for a given overhead and Galois οeld order. Note that using a large block size π increases the fountain code efοciency deοned as π = π/(π + πΏ). However, LRF codes are not practical for large source blocks due to prohibitive πͺ(π 3 ) complexity of ML decoding, in terms of both number of additions and number of multiplications in π½π . Given a value of error probability, the efοciency gain of a non-binary code w.r.t. a binary one becomes remarkable for small blocks (i.e., small π). Hence, the use of non-binary codes is appealing for small objects.
III. A C LASS OF R APTOR C ODES OVER π½π A Raptor code is obtained by concatenating an outer high rate code (pre-code) with an inner Luby-transform (LT) code [5]. We derive Raptor codes on π½π from their binary counterparts. In the process, we focus on the class of binary Raptor codes speciοed in [6], whose encoder is depicted in Fig. 2. A non-systematic LT encoder generates the output symbols from π = π + π + β symbols π , known as the intermediate symbols. These latter symbols are generated by pre-coding the π symbols π
π . We have π π = [π
ππ β£π
ππ β£π
πβ ], where the π symbols π
π are known as the LDPC symbols and the β symbols π
β as the half symbols. The (π Γ π) and (β Γ (π + π )) encoding matrices GLDPC and GH , the encoding matrix GLT of the inner LT code and the parameters π and β, depend on π and are speciοed in [6]. A systematic Raptor encoder is obtained through a rate-1 linear pre-coder that generates the π symbols π
π from the π input symbols π. This precoder can be represented as the product between π and a properly chosen full-rank (π Γ π) matrix, denoted by Gβ1 T in Fig. 2. Adopting the same notation as Section II, we now have π(0,...,πβ1) = GLT(0,...,πβ1) π . Note that, as opposed to G(0,...,πβ1) for a LRF code, GLT(0,...,πβ1) is a sparse matrix. We derive Raptor codes over π½π by extending to non-binary οelds the encoder structure depicted in Fig. 2, i.e., by replacing all component encoders with non-binary counterparts. Specifically, we replace each non-zero entry in GLDPC , GH and GLT(0,...,πβ1) with an element picked randomly in π½π β{0}. Next, encoding and decoding are described. The set of constraints on the Raptor output symbols can be represented in a compact way, including the constraints imposed both by
180
IEEE COMMUNICATIONS LETTERS, VOL. 14, NO. 2, FEBRUARY 2010 0
Decoding Failure Rate
10
Raptor code, π = 64 - π½2 Raptor code, π = 64 - π½4 Raptor code, π = 512 - π½2 Raptor code, π = 512 - π½4 LRF code, upper bounds
Ε¦1
10
Ε¦2
10
Ε¦3
10
Ε¦4
10
0
1
2
3
4
5
6
7
8
9
10
πΏ
Fig. 3. Decoding failure rate vs. overhead for π-ary Raptor codes (π = 2, 4) with π = 64 and π = 512, compared to the upper bound (valid for all π) on the error probability of LRF codes over π½2 and π½4 .
the pre-coder and by the LT encoder, as [ ] 0 A(0,...,πβ1) π = π(0,..,πβ1)
where 0 is the length-(π + β) all-zero column vector and A(0,...,πβ1) is a ((π + β + π) Γ π) matrix over π½π called the constraint matrix, given by β€ β‘ GLDPC Iπ Z GH Iβ β¦ . A(0,...,πβ1) = β£ GLT(0,...,πβ1)
Here, Iπ and Iβ are the (π Γ π ) and (β Γ β) identity matrices, respectively, and Z is the (π Γ β) all-zero matrix. In general, A(0,...,πβ1) is a sparse matrix. We use next the notation A(π1 ,π2 ,..,ππ ) to indicate the ((π + β + π) Γ π) submatrix of A(0,...,πβ1) obtained by selecting only the rows of GLT(0,...,πβ1) corresponding to ESIs (π1 , π2 , .., ππ ). Encoding exploits the (π Γ π) sub-matrix A(0,...,πβ1) formed by the οrst π rows of A(0,...,πβ1) . Since encoding is systematic, we have π = π(0,...,πβ1) from which [ ] 0 A(0,...,πβ1) π = . (5) π
Encoding consists of οrst solving (5) through Gaussian elimination to calculate the intermediate symbols π β π½ππ , and then performing LT encoding of π to obtain π(0,...,πβ1) . Assume now π + πΏ β₯ π output symbols with set of ESIs {π1 , . . . , ππ+πΏ } are collected at the decoder. ML decoding is performed by οrst solving the system [ ] 0 A(π1 ,π2 ,..,ππ+πΏ ) π = (6) π(π1 ,π2 ,..,ππ+πΏ )
through Gaussian elimination to obtain the intermediate symbols π . Once π has been recovered, the input symbols are obtained as π = GLT(0,...,πβ1) π .
Raptor codes present advantages in terms of encoding and decoding complexity w.r.t. LRF counterparts. More speciοcally, efοcient methods for the solution of (5) and (6) exist, which exploit the sparseness of system of equations [7] [8]. Originally proposed for solving sparse systems of equations in π½2 , the extension of these algorithms to π½π is straightforward. Although exploiting such approaches the number of required additions and multiplications in π½π remains cubic (in π), the cubic cost function is multiplied by a very small constant, making the overall complexity affordable. In Fig. 3 the decoding failure rate under ML decoding of binary Raptor codes from [6], with π = 64 and π = 512, and of their extension to π½4 are depicted, as functions of the overhead. The (tight and valid for all π) upper bounds on the performance of LRF codes over π½2 and π½4 are also shown. Raptor codes approach closely the upper bounds, and the same was observed for codes on higher order οelds. This example shows that Raptor codes over π½π obtained with the simple proposed technique achieve a performance very close to that of random codes, sharing the same performance advantages of adopting higher order Galois οelds. IV. C ONCLUSIONS In this letter, the performance of LRF codes over π½π has been analyzed through tight upper and lower bounds, and the advantage of adopting higher-order Galois οelds in the code construction illustrated. A class of Raptor codes over π½π has been then presented showing, through numerical simulation, how their performance is very close to that of LRF codes, while offering a manageable encoding and ML decoding complexity. Non-binary Raptor codes represent a very appealing option in the presence of severe performance versus overhead requirements, especially for small source block sizes. The bounds derived in Proposition 1 can be conοdently used to estimate their performance down to moderate error rates. R EFERENCES [1] J. Byers, M. Luby, M. Mitzenmacher, and A. Rege, ΒβA digital fountain approach to reliable distribution of bulk data,Ββ SIGCOMM Comput. Commun. Rev., vol. 28, no. 4, pp. 56Ββ67, Oct. 1998. [2] M. Shokrollahi, ΒβRaptor codes,Ββ IEEE Trans. Inf. Theory, vol. 52, no. 6, pp. 2551Ββ2567, June 2006. [3] R. Lidl and H. Niederreiter, Finite Fields. Cambridge, UK: Cambridge Univ. Press, 1997. [4] E. R. Berlekamp, ΒβThe technology of error-correcting codes,Ββ Proc. IEEE, vol. 68, no. 5, pp. 564Ββ593, May 1980. [5] M. Luby, ΒβLT codes,Ββ in Proc. 43rd Annual IEEE Symp. on Foundations of Computer Science, Nov. 2002, pp. 271Ββ282. [6] 3GPP TS 26.346 V9.0.0, ΒβTechnical speciοcation group services and system aspects; multimedia broadcast/multicast service (MBMS); protocols and codecs (Release 8),Ββ Oct. 2009. [7] D. Burshtein and G. Miller, ΒβAn efοcient maximum likelihood decoding of LDPC codes over the binary erasure channel,Ββ IEEE Trans Inf. Theory, vol. 50, no. 11, pp. 2837Ββ2844, Nov. 2004. [8] E. Paolini, G. Liva, B. Matuz, and M. Chiani, ΒβPivoting algorithms for maximum-likelihood decoding of LDPC codes over erasure channels,Ββ in Proc. 2009 IEEE Global Telecommunications Conference, Honolulu, HI, USA, Nov. 2009.