Technical Analysis on Application Layer Error Control in IPTV

Release Date:2010-03-21 Author:Xia Hongfei, Lü Xiaopeng, Liu Feng Click:

    With the development of modern network and multimedia services, people are becoming less satisfied with traditional page browsing, video downloading, and email transmission. They have begun to utilize the IP network to provide interactive TV, namely, Internet Protocol Television (IPTV). IPTV is a new video service developed in the last few years based on the development of IP networks. Its major feature is to integrate TV with Internet to realize real interaction. Moreover, it combines multiple Internet -based interactive functions, and therefore looks to have a bright future.


    The IPTV service comprises a large amount of information and has high requirements for real-time transmission. Real-time transmission in traditional IP network does not weigh a lot. However, in the current IP networks, we require the real-time transmission of multimedia services. As a result, the following problems[1] must be faced:


    (1) Transmission Bandwidth
    To provide acceptable video quality for users, a minimum bandwidth is necessary for real-time video. However, IP networks do not provide bandwidth reservation. In addition, owing to the large amount of data in video, the bandwidth requirement is high.


    (2) Transmission Delay and Jitter
    Transmission of ordinary files is not severely restriction by delay. But the real-time transmission of video requires high for the end-to-end delay. Once the delay exceeds the specified delay limit, real-time transmission cannot be guaranteed. Unfortunately, the congestion of IP network often causes unpredictable network delay.


    (3) Packet Loss
    Packet loss is the major cause of decreased video quality. Owing to the application of video compression technology, the packets before and after video compression are closely associated. The loss of frame may cause the decoding failure of multiple subsequent P frames. Consequently, the quality of the image is decreased. The IP network only provides a "try-the-best" service. When the network is congested, inevitably, packets are lost.


    In addition, for a multicast service, the isomerism of the network and the receiver is still a big challenge.


    Taking these problems into consideration, the solution is to handle through the network and terminal[2]. The ideal solution is to handle from the network, but this solution has high requirements of the network architecture and thus raises many practical problems in practice. A terminal-centered implementation scheme improves the image quality by adding control policies, such as congestion control and error control in the receiving terminal and  source code. This solution does not change the IP network architecture. Where IP network congestion generates packets loss or the transmission error causes image quality decreasing, this paper suggests selecting application layer error control technology to improve the QoS of the IPTV service. Application layer error control technology includes Forward Error Correction (FEC) coding of the coding end, post-processing error hide of the decoding end, and interactive error control of the coding and decoding ends[3].


1 Application Layer Error Control Technology

 

1.1 FEC Coding at Coding End
FEC coding means that in the case of source coding and channel coding, certain measures are taken to ensure that the coding stream has error restoration capability, namely, error correction coding. It includes Layer Coding (LC), Multiple Description Coding (MDC), and the coding policy layer multiple description and multiple description layer.


    (1) LC
    LC involves coding the video information into a Basic Layer (BL) and one or multiple Enhanced Layers (EL). BL provides low but acceptable video quality. Each EL improves the video quality based on the BL. The BL contains the most important content of the video, such as the motion vector. Once the BL information is lost, the EL information is invalid. With layer coding, receivers with different bandwidth or decoding capability can access the same video source and obtain different QoS. The scalability of layer coding includes space domain scalability, time domain scalability, signal-to-noise ratio scalability, and the combination of the preceding options.


    (2) MDC
    MDC is one effective method of solving real-time transmission problem of the multimedia information. In this kind of system, one original video sequence is coded into two or more data flows (we call this data flow as the description for video source), and each data flow can be separately coded. MDC has the following attributes:


    (a) The description generated by MDC is independent, and can reconstruct the video of certain quality.


    (b) The complementary information exists in each description character. A greater amount of description characters can reconstruct video of higher quality.


    (c) Multiple-description is applicable to a packet-loss environment such as network transmission. Multiple descriptions for the same video are encapsulated in different packets. When packets are lost, the decoding end obtains an inferior image according to the received packet. When the number of received packets increases, the quality of the reconstructed image at the decoding end is improved. There are many methods to implement MDC: multiple-description quantification, multiple-description conversion coding, multiple-description motion compensation, and multiple-description sub-sampling.


    (3) Layer Multiple Descriptions or Multiple Description Layer Coding
    Utilizing the advantages of layer coding and MDC, MDC and layer coding can be combined to implement real-time transmission for multiple end users on the precondition that system performance is guaranteed. According to the combination type, it can be divided into scalable coding with multiple-description, and multiple-description coding with scalability.

 

1.2 Post-Processing Error Hide at Decoding End
At the decoding end, the redundant information in the code stream can be used to handle the error. The post-processing error hide at the decoding end is independent from the coding. It does not redress the errors caused by network transmission. It makes full use of the correlation of received video sequence in the time and space domains to hide errors which have accurred. As a result, the visual effect of the image is close to the effect without errors. In other words, the error hide technology has no requirements of the decoder and does not require the addition of redundant coding. It does not increase the transmission load of the communication. This method involves the post-processing of video information. In principle, it is applicable to any image coding/decoding format and standard, and is therefore widely used as an effective method of improving the video quality. The error hide technology includes space domain error hide, no motion compensation time domain error hide, and motion compensation-based time domain error hide.

 

1.3 Interactive Error Control at Coding and Decoding Ends
In addition to the FEC coding at the coding end and post-processing error hide, the feedback information at the decoding end can also be used to control the coding, and thus the errors. Another interaction method is the retransmission mechanism commonly used in data transmission.

 

1.4 Problems
These error control technologies can improve the robustness of video transmission. At the same time, some obvious disadvantages exist, which decrease the utility value.


    In the FEC at the coding end, redundant information is necessary for functionality. Owing to the time varying feature of the channel, in the process of error control, the redundant information is added based on the worst situation. Thus, it lacks flexibility and wastes limited bandwidth resources. Moreover, the added redundant information changes the original code stream structure, which is harmful to the coding/decoding.


    The post-processing error hide at the decoding end does not decrease the coding efficiency or damage the code stream structure and compatibility. But the error control capability is limited and thus it can only handle a low bit error rate. Once the bit error rate increases, and the image is seriously damaged, the post-processing method only cannot restore the image to an acceptable quality.


    Interactive error control at the coding and the decoding ends should be implemented through the feedback information. If only a few packets are lost, the method is applicable. However, when many packets are lost, it may cause the deterioration of the network.


    The regulated video quality of IPTV should reach the video quality of broadcast television[4]. The resolution of Standard-Definition Television (SDTV) is 720×576 and the resolution of
High-Definition Television (HDTV) can be as high as 1,920×1,080. For the video quality requirements, applying the layer coding and MDC to IPTV is to decrease the video quality to implement the acceptable effect. It is therefore impossible to implement real IPTV video quality. In addition, MDC is worse than the effect of single description code when the packet loss rate is high. In other words, layer coding or MDC technology cannot competely solve the problems associated with IPTV. For services similar to IPTV, these technologies are applicable. That can be used with Joost, PPlive, and Sopcast using the P2P technologies (for they have no specific requirements for video quality). The error hide, as a post-processing technology, the capability to handle the error is limited. The feature mentioned in the post-processing error hide in the decoding end determines that the technology can be used in the IPTV service. The interactive error control at the decoding/coding end is widely used in the IPTV service. It is practical to solve the light packet loss through retransmission. In a word, the technologies cannot fundamentally ensure the smooth implementation of the IPTV service.


2 Application Layer FEC
Owing to the abovementioned disadvantages, these technologies cannot ensure the video quality of the IPTV service. But if an end-to-end reliability solution is adopted in the IP network, IPTV service which satisfies QoS can be provided[5]. The Application Layer Forward Error Correction (AL-FEC) technology provides one simple and powerful method of solving the packet loss problem and ensuring the end-to-end reliability. Compared with the FEC of link layer and physical layer, the AL-FEC works transparently in the application layer over the IP layer. It is applied in special end-to-end application streams such as IPTV. A typical application invovles the AL-FEC sending end at the IPTV server processing all or one selected IPTV stream. Then, the corresponding AL-FEC receiving end can process the data at the terminal equipment. The value of the AL-FEC is that, when packets in the IPTV stream are lost, terminal users can enjoy the video with the same quality as the original video stream. The
AL-FEC of IPTV includes three types[6]: Raptor code, Pro-MPEG CoP3 code, and combination of FEC and retransmission.


    The basic idea of AL-FEC is the application of erasure codes. At the AL-FEC sending end, the IPTV stream is split into packets of the same size. Repairing packets for the packet codes are generated through the erasure coder. Then, the repairing packets and original packets are sent to the receiving end. At the AL-FEC receiving end, the erasure decoder restores all original IPTV stream through the repairing packets and original packets. In an ideal situation, the receiving end only K packets of the N coding packets but it can completely restore all data. The process is shown in Figure 1.

 

 

2.1 Raptor Code
According to the AL-FEC mechanism, the operation is simple. Major modification of the original network protocol is not required. There are many types of erasure codes. Therefore, choosing the proper erasure code is the key factor for the success of AL-FEC The simplest mode of the erasure code is the parity check code. The value of the repairing symbol is obtained through the exclusive or XOR operation of K  source symbols. Usually, K can be chosen as you wish. But N must equal K +1. The erasure code can restore one lost symbol. Reed-Solomon (RS) code is another well-known erasure code, but owing to the complexity of the decoding and parameter restriction, the RS code is not applicable to the AL-FEC in the IPTV service. The fountain code, as the creative erasure code, can be used in the deletion channel of any probability. The first effective and useful fountain code is Luby Tansform (LT) code. On this basis, the expansion LT code forms the Raptor code. The Raptor code possesses low receiving overhead and system code. It is an attractive choice to apply the Raptor code to the IPTV service. The Digital Video Broadcasting (DVB) IPTV application and the 3GPP Multimedia Broadcasting Multicast Service (MBMS) select the Raptor code as the AL-FEC standard[7-8].


    The fountain code coder[9] is like the overflow of a  fountain, generating infinite number of packets. If we assume the size of the source file is Kl   bits and the size of the output code element is l  bit, the receiving process is like accepting water with a bucket under the fountain. When number of the received code elements is larger than K, the source file can be restored.


    The fountain code is irrelevant to the code rate. The number of code elements generated through the code of the source file is not limited. Infinite number of code elements can be generated. The coding mode irrelevant with the code rate determines the important application value. It does not need to predict the deletion of the channel like traditional erasure code. As a result, flexibility is enhanced.


    Michael Luby[10] found a digital fountain code mode with the linear coding/decoding complexity, which is called LT code. The cost of LT coding and decoding is k logek (k  refers to the file size). The Raptor code is a kind of fountain code with complexity lower than LT coding/decoding. Through pre-coding technology, the complexity of the LT code distribution probability (for forming code generation matrix) can be decreased. As a result, in the case of big packets, the coding complexity is irrelevant with k  and the decoding complexity has a linear relation with k . In other words, owing to the process of pre-coding, through LT
coding/decoding, only a part of the indirect packets need to be restored. Then, traditional erasure code can be used to restore all packets. Figure 2 shows the process of Raptor coding[11].

 


    Through the AL-FEC (Raptor), end-to-end reliability of the application layer is provided[12].

 


    AL-FEC (Raptor) has the following advantages:

  • It is adopted by DVB-H, 3GPP, and IETF. This is an indication that the method has great advantages.
  • It can handle high packet-loss rate and possesses flexible error correction capability (different protection parameters can be set for different file and different packet loss rates).
  • High efficiency. Only a small amount of repairing data is required to reconstruct the source file.
  • High coding/decoding efficiency. Software can realize the function and it is easy to deploy.
  • The transmission time is shortened.
  • Boundless source block size is adaptable to various files.
  • The coverage range is expanded. This is particularly applicable to multicast and broadcast environments.
  • Combined with the physical layer FEC, it has become the most efficient solution.
  • Sophisticated backward/forward compatibility.

 


    However, AL-FEC (Raptor) also has disadvantages:

  • It must be combined with the physical layer and link layer FEC.
  • The cost of the network bandwidth is about 5% -10%.
  • Small file size is not applicable.

 

2.2 Pro-MPEG CoP3
Pro-MPEG CoP3[13] is a simple parity check code. It can be categorized into CoP3 1D (coding the line or column) and CoP3 2D (coding the line and column). Figure 3 shows the process of the coding: XOR operation is performed for one line, or one column of packets or a coding packet can be generated.

 


    When only the CoP3 1D is used, the generated packets are on the bottom line or the line furthest to the right, as in Figure 3. It can only protect the data when one packet is lost in a single line or column. If two consecutive packets are lost in the original packet sequence (for example, packet 0 and packet 1 or packet 0 and packet L), the two lost packets cannot be restored. When the CoP3 2D is used, this situation will not occur.


    If the CoP3 2D is used, 20% redundancy is required. The major advantage is its simple operation. But it consumes much bandwidth to achieve a high transmission success ratio. As a result, utilization is low.

 

2.3 Combination of FEC and Retransmission
When this solution is adopted,most of the lost data can be restored through the FEC. Then, the remaining un-restored data can be obtained through retransmission. Owing to variability of the network condition, the key to the solution is to choose an appropriate FEC technology.


    This technology is used in the IPTV service implemented through ADSL[14]. Most users choose Pro-MPEG CoP3 as the FEC technology (the coding process is simple). The advantage is that it increases the probability of restoring the lost data and reduces the load of the retransmission server. Its main disadvantage, however, is that there is no quick channel switching scheme. When the Pro-MPEG CoP3 is used, protection against random packet loss is insufficient.


3 Conclusions
With the development of the IPTV service, the key to success is the video quality. The FEC at the coding end, post-processing error hide at the decoding end, or the interactive error control technology at the coding and decoding ends, can improve the robustness of video transmission to some degree. Unfortunately, the disadvantages determine that it cannot become the perfect solution for the IPTV service. In the last few years, the ISO evaluated AL-FEC and adopted the technology based on its performance. When the study into Raptor code is furthered, the AL-FEC technology can be transformed from theory to practise.


References
[1] 石峻. IP网络视频通信若干问题研究 [D]. 上海:上海交通大学, 2001. SHI Jun. Study of some issues concerning IP network video communications [D]. Shanghai: Shanghai Jiao Tong University, 2001.
[2] WU D, HOU T, YAO J, et al. Transmission of real-time video over the Internet: a big picture [C]// Proceedings of the IEEE Networld+Interop, May 7-12, 2000, Las Vegas, NV, USA. Piscataway, NJ, USA: IEEE, 2000: 10-11.
[3] 马然. Internet视频传输中差错控制的若干关键技术研究 [D]. 上海:上海大学, 2007. MA Ran. Research on the Key Error Control Techniques of Video Transmission over the Internet [D]. Shanghai: Shanghai University, 2007.
[4] BEGEN A C. Error control for IPTV over xDSL networks [C]// Proceedings of the 5th IEEE Consumer Communications and Networking Conference (CCNC’08), Jan 10-12, 2008, Las Vegas, NV, USA. Piscataway, NJ, USA: IEEE, 2008: 632-637.
[5] LUBY M, STOCKHAMMER T, WATSON M. IPTV systems, standards and architectures:
part II - application layer FEC in IPTV services [J]. IEEE Communications Magazine, 2008, 46(5):
94-101.
[6] MILLER J, MIMNAUGH A. Quality—the number one obstacle to IPTV adoption [R]. Fremont, CA USA: Digital Fountain Inc, 2008.
[7] 3GPP TS 26.346 V7.4.0.Multimedia Broadcast/Multicast Service (MBMS); Protocols and Codecs [S]. 2007.
[8] ETSI TS 102 472 V1.1.1. Digital Video Broadcasting (DVB); IP Datacast over DVB-H: Content Delivery Protocols [S]. 2005.
[9] MACKAY D J C. Fountain codes [R]. Cambridge, UK: Cavendish Laboratory, University of Cambridge, 1998.
[10] LUBY M. LT codes [C]//Proceedings of the 43rd Annual IEEE Symposium on Foundations of Computer Science (FOCS'02), Nov 16-19, 2002, Vancouver, Canada. Los Alamos, CA, USA: IEEE Computer Society, 2002: 271-280.
[11] SHOKROLLAHI A. Raptor codes [J]. IEEE Transactions on Information Theory, 2006, 52(6): 2551-2567.
[12] LUBY M G, MILLER J W, PORTER K M. Benefits of AL-FEC for mobile file broadcast: more bandwidth, more range, more ARPU [R]. Fremont, CA, USA: Digital Fountain Inc, 2007.
[13] SMPTE specification 2022-1. Forward Error Correction for Real-Time Video/Audio Transport over IP Networks [S]. 2007.
[14] LI Zhi, ZHU Xiaoqing, BEGEN A C, et al. Forward and retransmitted systematic loss of error protection for IPTV video multicast [C]//Proceedings of the 17th International Packet Video Workshop (PV’09), May, 11-12, 2009, Seattle, WA, USA. Piscataway, NJ, USA: IEEE, 2009: 9.

[Abstract] When they provide Internet Protocol Television (IPTV) services, IP networks face difficulties such as reduced transmission bandwidth, delay, jitter, and packet loss. A terminal-centric solution can improve the image quality by adding control policies like congestion control and error control to the receiving terminal and source code. An end-to-end application layer reliability method is usually required to satisfy IPTV requirements in the IP network. Application Layer Forward Error Correction (AL-FEC) technology solves the problem of packet loss, and can ensure the end-to-end reliability for IPTV services.