5.7 Applicability and scalability
5.7.3 Network and processing requirements
As discussed in section 4.2.3 packet retransmissions for multicast IPTV delivery can be provided using multicast or unicast delivery. The implemented prototype uses unicast delivery, because of the lower complexity and because this does not lead to an increased load on all access links, when only one client asks for packet retransmission: unicast retransmissions will only be sent to the IPTV client asking for retransmissions, so only his access node will be affected by additional traffic.
This means that when the number of IPTV users requesting retransmissions increases, the Retransmis- sion Cache needs to process more retransmission requests and needs to transmit more packets. These transmissions may contain a lot of duplicates because every IPTV client needs to request it’s own retrans- mission. Therefore two bottlenecks can be identified: the processing power of the Retransmission Cache and the packet processing capabilities of the Access Node. To determine how many users can be serviced by one Retransmission Cache additional experiments are required, which focus on the scalability of the retransmission mechanism.
Chapter 6
Conclusions and future work
This chapter discusses the conclusions and the future work. First the research questions are answered. Then the overall conlusions are given and discussed. Finally some recommendations for future work are given.
6.1
Results
This section answers the research questions which are described in section 1.3.
1. What are the effects of packet loss on IPTV streaming applications?
When a IPTV stream suffers from packet loss, the Set Top Box is not able to decode the video stream correctly because of the data that is missing. This will result in the impairment of the decoded video frames, which is noticeable as visual errors, wrongly decoded blocks and image distortions.
The severity of the impairments depend on a number of factors. Due to the nature of video compression techniques, visual errors can propagate in subsequent frames. When a reference frame is impaired, all subsequent frames until the next reference frames will also be impaired. The duration of the error there- fore depends on the type of frame that is impaired and whether other frames are referencing the frame that is impaired.
2. What techniques can be used to provide error resiliency for IPTV streaming applications? A reduction of the noticeable effects of packet loss can be provided by means of payload interleaving, error concealment functionality of the video codec or by giving priority for specific application payload data, such as reference frames. Bandwidth adaptation can be used to prevent or reduce congestion, but
is not very practical for multicast stream delivery. Packet loss recovery can be provided by means of Forward Error Correction or packet retransmissions. Both techniques have their limitations for multicast delivery as mentioned in 2.14. An alternative would be to offer packet retransmissions in a subtree of an multicast distribution network. This allows for the rapid recovery of missing packets and avoids per- forances isusues related to feedback implosion when retransmissions are provided between the Streaming Server and IPTV clients.
3. How can fast retransmissions be provided for multicast IPTV stream delivery service using the Real-time Transport Protocol?
The RTP protocol does not provide the possibility of sending time-constrained feedback or a feedback message type that can be used to indicate the loss of individual packets. Both of thse are requirements for packet retransmission mechanism. These issues have been addressed with a protocol extension that offers a new mechanism to provide immediate feedback and specifies a generic feedback RTCP format that can be used to notify the loss of specific packets (RFC 4585). Another recent RTP extension provides a RTP retransmission payload format, which can be used to provide retransmission of RTP packets, regardless of the original payload (RFC 4588). These extensions thus provide the building blocks for allowing the RTP protocol to be used for a packet retransmission mechanism.
In the proposed design packet retransmissions are offered by a Retransmission Cache in an access node. This has three main advantages. Because the packet recovery is offered in only a subtree of the multicast distribution path, feedback implosion is not likely to occur. Furthermore is the packet recovery offered in those parts of the network were the problems occur. Finally, because the retransmission functionality is offered in the access node, packet retransmissions are very fast, which is essential for packet recovery for a time-constrained IPTV service.
The Retransmission Cache temporally caches the RTP packets transmitted to the IPTV client. When an IPTV client misses packets, it will ask for retransmissions using the feedback format described in RFC 4585. The Retransmission Cache will retrieve the packet from the cache and transmit the packet to the IPTV client using the retransmission payload format. By allowing multiple retransmission attempts per packet an IPTV client can improve the effectiveness of the retransmission mechanism.
4. How can the effects of error resiliency based on packet retransmission be measured?
Chapter 2 discussed several metrics and measurement techniques that can be used to evaluate video qual- ity. A lot of measurements methods cannot be used in a live IPTV setup, either because the measurements require a reference video signal, or the measurements require interaction with the user. Alternatively, net- work metrics can be used to evaluate the effect of error resiliency based on packet retransmission. For the evaluation of the effectiveness of the packet retransmission mechanism two network layer met- rics are used: the uncorrected packet loss rate and the corrected packet loss rate. The former describes 102
6.1. RESULTS
the percentage of packets that are considered lost before error recovery is provided by means of packet retransmissions. The latter describes the percentage of packets that are still lost after error recovery by means of packet retransmissions. The difference between this metrics describes the effectiveness of the packet retransmission mechanism.
5. What are the parameters that influence the performance of the RTP retransmission mechanism? The performance experiments have revealed several parameters that (significantly) influence the retrans- mission mechanism’s performance. First of all, the buffer sizes are an important aspect to make packet retransmissions feasible. The experiment results show what the buffer size of the Retransmission Cache must be to allow for the successfully recovery of a packet by means of one or multiple retransmission attempts. The lower bound for the required buffer size for the IPTV client is determined by the playout buffer requirements for the decoding and displaying of the IPTV stream. The additional buffer size re- quirements for retransmissions are upper bounded by the buffer size of the Retransmission Cache, but since the play-out buffer can successfully be used for applying retransmissions, the upper bound may even be smaller. The IPTV service delay requirements ultimately determine the the size of the buffer and therefore the amount of time available for successful packet recovery. Therefore there is a trade-off between the performance of the retransmission mechanism and the application startup delay.
Two other important parameters influencing the performance of the retransmission mechanism are the number of allowed retransmission attempts per packet in combination combined with the expiration of retransmission requests. The experiment results show a trade-off between an improved recovery rate when the retransmission time-out is decreased and an increase in the number of duplicate retransmissions. A final parameter that influences the performance is the packet loss detection mechanism. In the prototpe packet loss is detected by means of gaps in sequence numbers. By also enabling a timeout mechanism for the next expected packet the recovery mechanism can be improved when burst losses occur.
6. For which network conditions can RTP-based packet retransmission be successfully applied as an error resiliency mechanism?
The results of the experiments discussed in chapter 5 show that even for a time-constrained service like broadcast IPTV the proposed retransmission mechanism leads to significant reduction of the packet loss rates. The results show that the retransmission mechanism effectively reduces loss in networks with uncorrelated losses ranging from 1 to 10%, while in a network with correlated losses the mechanism is slightly less effective.
In a congested network a reduction in the corrected packet loss rate was achieved, even when the re- transmissions initially lead to a higher uncorrected packet loss rate, i.e. contributed to congestion. That the retransmission mechanism lead to a performance increase is explained by the following two factors. First, in the experiment a congestion aware file transfer was used. A TCP transfer adapts to the available
bandwidth and reduces the transfer rate when congestion occurs. This allowed more IPTV stream pack- ets and retransmission packets to pass the network without problems. Second, because of the variability of the IPTV stream packet losses that occur during the peaks of the IPTV stream can be recovered by retransmissions when the IPTV uses less network resources.
6.2
Conclusions
This master thesis project studied and investigated how packet loss affects IPTV services and how er- ror resiliency for multicast IPTV broadcast television can be provided. This started with a background study investigating the IPTV domain and relevant techniques and technologies. Based on the acquired background information, the literature study performed at NEC and the results of the IPTV function study performed at NEC the requirements for a fast retransmission function for multicast IPTV broadcasts were proposed.
A system design was proposed compliant to this fast retransmission function. This system uses RTP streaming and feedback functionality provided by the Real-time Control Protocol for delivery of an IPTV stream and retransmissions of packets that are considered lost by an IPTV client. In this design packet retransmissions are offered by a Retransmission Cache placed in an access node, which allows for a fast recovery of packets indicated lost by an IPTV client. The packet retransmissions are provided using a different RTP session allowing the retransmission functionality to be dynamically enabled, and because the mechanism uses a new component (the Retransmission Cache), the functionality can be inserted in a existing multicast IPTV network infrastructure, without affecting the already available IPTV stream delivery.
This design was implemented in a prototype, which functions as a proof an concept and was used for evaluation of the retransmission functionality by means of experiments in a test network setup. The goals of these experiments were to figure out under which network conditions retransmissions could be applied successfully and to figure out which parameters influence the effectiveness of the retransmission mechanism.
The experiment results show that offering packet retransmissions for multicast IPTV broadcasts is feasible and can lead to significant reduction of the packet loss rates under various packet loss conditions in the access network. The results also show that the memory requirements for enabling packet retransmissions in an access node are moderate, although the results in this thesis do not provide any conclusions about the scalability of the proposed solution. How many IPTV clients can be supported by one Retransmission Cache is yet to be investigated.