Multimedia Data Transmission over Mobile Internet using Packet-Loss Punctured PaLoP Codes Markus Kaindl and Joachim Hagenauer Institute for Communications Engineering Munich University of Technology 9 München, Germany Email: Markus.Kaindl@ei.tum.de Abstract A very flexible transmission system for multimedia over mobile internet is proposed. For a mobile internet scenario a combination of a lossy packet data network and a mobile network is assumed. Conventional solutions are based on a separation of both networks. The new system is able to manage both packet-losses and bit errors in a single decoding step without any transcoding. Furthermore, the system can be adapted easily to the current channel states of both networks in a very flexible way with a minimum of signalization overhead. In a simulation example the performance of the new system is shown for short block-length speech transmission using recursive systematic convolutional codes and for large block-length data transmission using a parallel concatenated convolutional code. I. INTRODUCTION Recently, many investigations on the transmission of multimedia data over packet data networks have been carried out. In these networks packet-losses are inevitable. The reasons for them are many-sided and will be discussed in section II. Besides protocols like TCP [] providing reliable transmission, several signal processing algorithms have been developed to cope with these problems: Error concealment algorithms make the attempt to conceal packet-losses through signal interpolation at the receiver side, interleaving or multiplexing techniques distribute a frame over several data packets at the transmitter side without increasing the network payload. Channel coding or multiple descriptions add redundancy to the data stream to provide error detection and/or correction at the receiver side. An overview can be found in []. In the current paper we consider speech transmission with short frame-length and strict delay constraints but also data transmission with large frame-length both over mobile internet channels using packet-loss punctured PaLoP convolutional and turbo codes. A combined network consisting of a packet data network and an additional mobile network we call mobile internet. The proposed system offers a very flexible adaptation capability depending on the packet-loss rate of the packet data network and the channel quality of the packet data traffic channels of the mobile network. This adaptation can be used to optimize the performance of the system and to minimize the resources needed to guarantee a certain quality of service. Packet-loss is interpreted as puncturing of the forward error correcting code. The only information needed at the receiver is a packet-loss indication, which can be signaled to the receiver or easily generated by timeout. The paper is organized as follows: Sec. II describes the mobile internet channel. Sec. III gives an overview over a conventional solution for multimedia data transmission over mobile internet channels. In Sec. IV the Packet-Loss Punctured PaLoP transmission system is described. In Sec. V the performance of the new system is analyzed and compared to a conventional solution. Finally, Sec. VI concludes the paper. II. MOBILE INTERNET CHANNEL With the mobile internet channel we assume a combination of a lossy packet data network like the IP-based internet and a mobile network like GSM/EDGE or UMTS. The base station of the mobile network is kept as simple as possible and, thus, it only acts as an interface between both networks providing routing functionality. Since packet data networks usually implicate large headers, the base station of the mobile network should perform a robust header compression [] at least. The transmission over the packet data network leads to losses of whole packets, but the data within the received packets is error-free with high probability. The reasons for packetlosses are many-sided. Overloaded routers often momentarily queue incoming packets in buffers increasing the delay of the packets through the network. Sometimes they must drop incoming packets, not forwarding them at all. Often packets take different routes through the network, leading to a delay spread of the received packets, and, thus, delay constraints often force the receiver to declare delayed packets as lost. The transmission over the packet data traffic channels of a mobile network leads to additional bit errors inside the packets, but in general no packets are lost. III. CONVENTIONAL SOLUTION A conventional solution is based on a separation of both networks. In packet data networks often simple forward error correction based on exclusive or XOR parities is applied to cope with packet-losses. From the channel coding point of view these codes are parity check codes, which have a poor performance for mobile channels. Thus, on the packet data traffic channels of the mobile network a strong error protection has to be applied. In [] a RTP payload format for generic forward error correction based on simple exclusive or XOR parities for IP-based transmission is proposed. Fig. shows a conventional solution for a transmission of multimedia data over a mobile internet channel. The binary data stream is usually processed frame by frame. Therefore the indices denoting the time stamp of the current frame are neglected in the following. The sampled and quantized raw multimedia data s, with s =[s,,s K ], s i {, }, i K is compressed by an appropriate source encoder leading to a data stream u, with u =[u,,u L ], u i {, }, i L, L < K. Since the data is transmitted over an unreliable packet data network, the application of reliable end-to-end protocols like TCP is mostly not feasible due to
delay constraints. Therefore, the data stream u is protected by a forward error correction. Some set of packets from the source encoder stream u is taken, and a simple exclusive or XOR operation is applied, leading to a FEC data stream X, with X = [x,, x R ], x i = [x,,x L ], i R, x j {, }, j L, which is transmitted over the mobile internet channel. The base station of the mobile network acts as the interface between the packet data and the mobile network and provides only routing functionality. On the mobile network packet data channels with a sufficient error protection are allocated providing a certain quality of service. The received packets Y, with Y = [y,, y R ], y i = [y,,y L ], i R, R R, y j {, }, j L are fed into the packet-loss recovery unit leading to an estimate û of the data stream u. Finally, in the source decoder an estimated data stream ŝ is generated out of the data stream û. Fig.. The PaLoP-System. payload N of a packet as small as possible. The only additional information needed at the receiver is a packet-loss indication, which can be transmitted using a control channel or in-band signaling. Alternatively, a packet can be declared to be lost by timeout, if it was not received in-time. In the un-packeting unit the packet-loss handling and an inverse partitioning of the received packets Y, with Y = [y,, y P ], y i = [y,,y N ], i P, P P, y j {, }, j N, into the data stream ĉ is performed. The decoder generates an estimate û of the data stream u, which is decompressed in the source decoder leading to an estimated data stream ŝ. Fig.. A Conventional Transmission System. A. The Role of the Packeting The packeting algorithm is of particular importance for the performance of the PaLoP system. Since a packet-loss is interpreted as puncturing of the channel code at the receiver, the packeting algorithm must guarantee, that a potential packetloss leads to an optimal puncturing of the channel code. IV. THE NEW PALOP TRANSMISSION SYSTEM Fig. shows the PaLoP transmission system. The sampled and quantized raw multimedia data stream s, with s = [s,,s K ], s i {, }, i K, is compressed by an appropriate source encoder leading to a source encoded data stream u, with u =[u,,u L ], u i {, }, i L, L<K. This compressed data stream u is protected against channel interference by a FEC encoder with rate R leading to a data stream c, with c = [c,,c M ], c i {, }, i M, L = M R. As FEC encoder convolutional codes or concatenated convolutional codes are preferably used, but in general all punctureable FEC codes can be used. In the next step the channel encoded data stream c is partitioned into P packets leading to a packet stream X, with X =[x,, x P ], x i =[x,,x N ], M = P N, i P, x j {, }, j N, which is serially transmitted over the mobile internet channel. The basic idea of the new system is the interpretation of a packet-loss as puncturing [] of the channel code at the receiver side. Thus, the partitioning of the data stream c into the P packets is of particular importance for the performance of the system and will be discussed in more detail in Sec. IV- A. To keep the impact of a packet-loss on the decoding capability of the FEC as small as possible, the number of packets P should be chosen as large as possible and, thus, the Fig.. Packeting. Fig. shows a block diagram of the packeting procedure. The data c t is written into a P N matrix according to a certain packeting rule. Each row of the matrix represents a data packet. If permitted by the delay constraints, the packeting algorithm can buffer several b frames and perform a joint packeting of subsequent frames [c t, c t c t b ]. In the following we discuss two packeting rules: A pseudo-random algorithm and an optimized algorithm.
Random Packeting: For the pseudo-random packeting algorithm the data c t is written into the P N matrix in a pseudo-random manner. For each clock b frames a new random pattern is generated. Consequently, the burst of punctured bits caused by a packet-loss is spread over the whole frame leading to a random-like distribution of the punctured bits. Optimized Packeting: For convolutional codes an optimal packeting-pattern can be found by a computer search based on the distance spectrum [] of the punctured code. We assume a convolutional code with rate R =/n and a single packet-loss. This packet-loss can be interpreted as a burst of punctured bits of length N, which generates a sub-code with rate R, with R = R. P For an arbitrary time stamp, we have P possibilities for a packet-loss. Starting from a convolutional code with rate R we have to find P optimal in terms of the distance criteria subcodes with rate R. Each subcode is represented by a n D puncturing matrix P i, with i P. D denotes the packeting period and and has to be chosen such, that M is an integer multiple of D. The packeting period is necessary, since the computational complexity of the subcode search increases exponentially with D. The elements p j,k {, } of puncturing matrix P i, with j n and k D, denote if a bit c l, with l M, ispartp j,k = of the packet i or not p j,k =. To guarantee an unique allocation of the bits c l to the packets, an element p j,k of the puncturing matrix P i is only allowed to be zero, if the elements of all other puncturing matrices is one at this position. The P puncturing matrices P i determine the n D packeting matrix P. The elements p j,k {,,P} of the packeting matrix P determine the allocation of the data c l to the packets: p j,k = i, if P i j, k =, j, k. Example: Assume the rate R = / recursive systematic [7] convolutional code G D of equ.. The data should be spread over P =packets. The packeting period D is. The P = optimal subcodes with rate R =/ write: P = P = P = P = P = P = The packeting matrix P writes: P = The on position, of the packeting matrix P denotes, that the first bit is put into packet, the on position, denotes, that the second bit is put into packet, and so on. B. Network Control To optimize the performance of the overall PaLoP system and to minimize the resources needed for error-free transmission or to guarantee a certain quality of service, network control units should be used to adapt the system to the current channel states. A feedback of the packet-loss rate via a Packet- Loss Network Control unit can adaptively control the source encoder rate Mode Command, the FEC encoder rate and the packeting unit Rate and Packet Command. Thus, the number and the payload of the transmitted packets can be changed in a very flexible way without any indication to the receiver. Of course, we hereby assume a hierarchical source codec or a secure in-band signaling of the source codec mode to the receiver, e.g. as described in []. A feedback of the downlink quality indication DQI of the packet data traffic channels from the receiver to the base station BS of the mobile network via a Mobile Network Control unit can be used to adapt the amount or the error protection of the allocated packet data traffic channels of the mobile network adaptively. C. Advantages of the New System The PaLoP system manages both packet-losses and bit errors in one decoding step and in a very flexible way. For the decoding result it is not important if a specific packet is received or not, just a certain total number of arbitrary packets has to be received. This number of packets only depends on the current channel states of both networks. In general no feedback channel is necessary and no additional algorithmic delay is introduced. Adaptations on the transmitter side Mode, Rate and Packeting commands do not need to be signaled to the receiver. Thus, the transmitter can change the source compression, the number of sent packets and the payload of a packet in a very flexible way. Adaptations on the mobile network Data Traffic Channel Command need to be signaled neither to the transmitter nor to the receiver. At the interface between the packet data and the mobile network no transcoding is necessary. The only information needed at the receiver is a packet-loss indication, which can be signaled to the receiver or can be generated by timeouts. In case of a decoding failure at the receiver, optional ARQ procedures can be performed. Each re-transmitted packet is automatically used as incremental redundancy for the decoder. Since the data is already protected against transmission errors by the new scheme, packet data traffic channels with low or no error protection can be allocated on the mobile network. D. Packet-loss Recovery Capability A packet-loss in the packet data network is interpreted as puncturing of the channel code with rate R. Ifv packets are lost the rate R v of the resulting channel code is given by: L R v = M v N = R v P The transmission is uncoded if v uncod = P R packets are lost. Packet-losses puncture the convolutional code and, thus, weaken the error correcting capability of the code. Consequently, there is a trade-off between packet-losses and biterrors within the packet data: the PaLoP system can manage a large number of packet-losses for high /N low number of bit-errors and a low number of packet-losses for low /N large number of bit-errors. V. SIMULATION RESULTS The performance of the PaLoP system is shown by simulations and compared to a XOR based conventional system. As
FEC-Code constraint-length, recursive systematic convolutional RSC codes [7] with rate R =/ and R =/ are used with the generator polynomials: G D = G D =, +D+D +D +D +D, +D+D +D +D +D, +D +D +D +D +D The PaLoP system is based on a rate R =/code. For the short block-length application the G D RSC-code is used, for the large block-length application a parallel concatenation of two G D RSC-codes is used. As interleaver for the PCC-Code a block-by-block random interleaver is used. In the packeting unit the encoded data is spread over P =packets using the block-by-block random packeting algorithm or an optimized packeting with P =. 7 On the mobile network a data channel without error protection R = is applied. For the simulation neither the network control units nor the incremental ARQ procedures are used. For the conventional system a FEC is used which generates a single parity frame over two data frames R =/ based on bitwise exclusive or operations. From the channel coding point of view, this corresponds to a,, single parity check code SPC. On the mobile network the G D RSC code is applied. On the decoder side, a soft decoding of the SPC is performed: Lû j =Lu j y j + artanh i = i j tanh Lu i y i, with L. being L-value as defined in [9]. The conventional system introduces an algorithmic delay of one frame. Thus, the PaLoP system operates with a combined packeting of two frames b =. This leads to a comparison of two systems with the same algorithmic delay and the same transmitted data on the mobile network. On the packet data network the number of packets of the PaLoP system is twice the number of the conventional solution, the payload of the packets is the same. Since the simulation of a real world packet data network is an immensely challenging undertaking [], only a simple model is used: For the packet-loss network we assume the Gilbert- Elliot model of Fig.. The mobile network is modeled using Rayleigh fading channels. p GOOD BAD p q PE =. PE =. Fig.. q PER = p p+q with q =.7 Gilbert-Elliot model for the packet data network. In the following we consider two scenarios: Speech transmission with short block-length and convolutional codes and data transmission with large block-length and turbo-codes. A. Speech Transmission using convolutional codes For the speech transmission a block-length of L = bits is used. The payload of a packet is N = bits. As speech codec the. kbit/s mode of the AMR-Codec [] is applied. A bit cyclic redundancy check code based on the class bits is used for error detection and error concealment. Spectral Distance : As a measure of speech quality, the Spectral Distance is used []: [ ds x ω,s y ω = W W ln S x ω ln S y ω dω ] / 9 where S x ω and S y ω are resp. the amplitude spectra of the original, error-free transmitted signal and of the signal output of the speech decoder. W denotes the signal bandwidth. By doing so, only distortions caused by the transmission are regarded, the speech coding distortions are neglected. A small value of d denotes a small distortion to the error-free transmitted signal and, thus, a high speech quality. Packeting: Fig. d shows the influence of the packeting algorithm for a fixed /N =. db.forper > the optimized packeting algorithm outperforms the block-byblock random packeting algorithm. Performance of the PaLoP System and Comparison to the Conventional Solution: Fig. a shows the Spectral Distance versus the packet-loss rate PER of the packet data network and the signal-to-noise ratio /N of the packet data traffic channels of the mobile network and Fig. b the same simulation result for the conventional solution. Fig. c shows a comparison of both system for a fixed PER =.9. The PaLoP system outperforms the conventional solution over awideareaoftheper and the /N. Especially for low /N and/or high PER the PaLoP system achieves a highly improved speech quality. Gain /N PER a PaLoP-System Conventional System PaLoP System 7 /N c Comparison of both systems PER =.9% 9 7 /N PER b Conventional System Random Packeting Optimized Packeting PER Gain for PER =. d Random vs. optimized packeting. Fig.. Simulation Results: a, b: Spectral Distance vs. Signal-to- Noise Ratio /N and Packet-Loss Rate PER. c: vs. /N for PER=.9. d: Influence of the packeting algorithm for /N =. db.
B. Data Transmission using PCC Codes For the data transmission a block-length of L = 9 bits is used. The payload of a packet is N = 9 bits. For the PaLoP system iterations are performed. EXIT-Chart: Fig. 7d shows the characteristic curves of a component code for a fixed /N of -. db depending of the packet-loss rate. The upper bound is the curve for PER =.. The curves illustrate how an increasing packet-loss rate influences the performance of a component code. With increasing number of packet-losses the tunnel of the EXIT-Chart [] gets more and more tight until it is completely closed and no convergence is possible anymore. For /N = -. db the EXIT-Charts are only open for PER.. Thus, in regions with high PER and low /N we can expect, that the decoding fails even with a high number of iterations. Error Correction Capability: Fig. shows the simulated packet-loss recovery capability of the parallel concatenated convolutional code depending on a certain signal-to-noise ratio of the packet data traffic channel of the mobile network. For this analysis a synthetic model for the packet-loss network was used, which drops a fixed number of packets randomly. The results show how many arbitrary packets have to be received to achieve a certain frame error rate depending on the signal-to-noise ratio and the decoding iterations..... Number of sent packets Iterations a /N =. db Fig.......... Number of sent packets Iterations b /N =. db Packet-loss recovery capability Iterations. Performance of the PaLoP System and Comparison to the Conventional Solution: Fig. 7a shows the frame error rate of the PaLoP system after the decoder versus the packet-loss rate PER of the packet data network and the signal-to-noise ratio /N of the packet data traffic channel of the mobile network. A frame û is declared as erroneous if at least one bit error inside a frame is detected. Fig. 7b shows the performance of the conventional system. A comparison of both system for a fixed PER =.9 is shown in Fig. 7c. The PaLoP system outperforms the conventional system in a wide range of the channel conditions. For PER =.9 a gain of over db in /N can be achieved. VI. CONCLUSION A system for transmission of multimedia data over a mobile internet channels is proposed. The new system can easily handle both packet-losses and bit errors in one decoding step. Optional feedback information about the current channel states can be used to optimize the performance of the new system and to minimize the resources needed to guarantee a certain quality of service. Simulation examples using convolutional.... /N PER a PaLoP-System It. Gain Conventional System PaLoP System It. /N in db c Comparison of both systems PER =.9% I E.....9..7...... /N PER b Conventional System PER =. PER =. PER =. PER =. PER.... I A d Characteristic Curves Fig. 7. Simulation Results: a, b: Frame Error Rate vs. Signal-to- Noise Ratio /N and Packet-Loss Rate PER. c: vs. /N for PER=.9. d: Characteristic Curves for /N =. db. and parallel concatenated convolutional codes show the performance of the new system for speech and data transmission. A very low frame error rate resp. a very high speech quality can be achieved over a wide range of the packet-loss rate of the packet data network and the signal-to-noise ratio of the packet data traffic channel of the mobile network. REENCES [] J. Postel, Transmission Control Protocol, RFC 79, 9. [] C. Perkins, O. Hodson, and V. Hardman, A Survey of Packet Loss Recovery Techniques for Streaming Audio, IEEE Network, vol., pp., Sep/Oct 99. [] C. Borman and et al., Robust Header Compression ROHC: Framework and four profiles: RTP, UDP, ESP, and uncompressed. RFC 9,. [] J. Rosenberg and H. Schulzerinne, An RTP Payload Format For Generic Forward Error Correction, RFC 7, 999. [] J. Hagenauer, Rate-Compatible Punctured Convolutional Codes RCPC Codes and their Applications, IEEE Transactions on Communications, vol., no., pp. 9, Apr. 9. [] M. Cedervall and R. Johannesson, A Fast Algorithm for Computing Distance Spectrum of Convolutional Codes, IEEE Transaction on Information Theory, vol., no., pp. 9, Nov. 99. [7] C. Berrou and A. Glavieux, Near Optimum Error Correcting Coding and Decoding: Turbo-Codes, IEEE Transactions on Communications, vol., no., pp. 7, Oct. 99. [] T. Hindelang, J. Hagenauer, M. Schmautz, and W. Xu, Channel Coding Techniques for Adaptive Multi-Rate Speech Transmission, in Proc. of ICC, New Orleans, USA, June, pp. 7 7. [9] J. Hagenauer, E. Offer, and L. Papke, Iterative decoding of binary block and convolutional codes, IEEE Transactions on Information Theory, vol., no., pp. 9, Mar. 99. [] V. Paxson and S. Floyd, Why We Don t Know How To Simulate The Internet, in Lawrence Berkley National Laboratory, LBNL-9, UCLA, Berkley, USA, Dec. 997. [] GSM.9 Digital cellular telecommunications system Phase +; Adaptive Multi-Rate speech transcoding, ETSI,. [] R. Gray, A. Buzo, J. A.H. Gray, and Y. Mattsayama, Distorsion measures for speech processing, IEEE Transactions on Acoustics, Speech and Signal Processing, vol., no., pp. 7 7, Aug. 9. [] S. ten Brink, Convergence Behavior of Iteratively Decoded Parallel Concatenated Codes, IEEE Transactions on Communications, vol. 9, no., pp. 77 77, Oct......