10

Network-Adaptive Rate and Error Controls for WiFi Video Streaming

JongWon Kim and Sang-Hoon Park

CONTENTS

10.1  Introduction

10.2  Fundamentals of Network-Adaptive Wireless Video Streaming

10.2.1  Network-Adaptive Video Streaming Example

10.2.2  Network-Adaptive Video Streaming Framework

10.2.3  Wireless Network Monitoring

10.2.4  Prioritized Packetization

10.2.5  Network Adaptations with Rate and Error Controls

10.3  Network-Adaptive Rate Control with Sender-Driven Network Monitoring for WiFi Video Streaming

10.3.1  Introduction and Related Work

10.3.2  System Overview

10.3.3  Cross-Layered Video Rate Adaptation

10.3.3.1  Rate-to-Time Conversion

10.3.3.2  Observation of MAC and PHY Transmission Statistics

10.3.3.3  Estimation and Video Rate Adaptation

10.4  WiFi Video Streaming with Network-Adaptive Transport Error Control

10.4.1  Introduction and Related Work

10.4.2  NASTE Framework

10.4.3  Error Control Modes

10.4.4  Mode Switching Algorithm

10.4.4.1  Hybrid Monitoring

10.4.4.2  Mode Selection

References

10.1  Introduction

With the rapid growth of mobile devices, such as smartphones and tablets, huge amount of data traffic transmitted by end-users as well as content providers severely affects the overall performance of 3G/4G wireless networks. Especially, it is reported that Internet-based personal video broadcasting services, such as YouTube and AfreecaTV,* generate the most of data traffic and saturate the provisioned capacity as soon as they are provided. For this reason, telecommunication service providers induce end-users to leverage WiFi wireless networks for bandwidth-savvy video applications. Due to the recent advances of IEEE 802.11 technology, WiFi networks can now enable maximum achievable throughput higher than 100 Mbps. Recently, the WiFi Alliance is also trying to make the WiFi hotspot program that provides seamless WiFi connections to mobile devices in urban areas. Furthermore, for direct multimedia data transmission between mobile devices, the WiFi display (WFD) has been standardized by the WiFi Alliance (Wi-Fi 2011).

Figure 10.1 illustrates a typical video streaming environment over a WiFi wireless network. In this environment, typically diverse video contents from a video server are transmitted to mobile nodes via the WiFi wireless network. For high-quality video streaming, however, there have been a few challenges, detailed later, due to the time-varying nature of underlying WiFi wireless networks and multiple competing video flows from many mobile users, which may result in severe network congestion (Zhang et al. 2005). First, the available network bandwidth for multiple flows of video streams is scarce and limited when compared to the wired networks. For example, the maximum achievable throughput of most IEEE 802.11n-based WiFi products is less than 150 Mbps (Pefkianakis et al. 2010). The packet delay and jitter is also fluctuating due to the time-varying wireless network condition, which is affected by competing flows, channel fading and interferences, and so on. Additionally, both random and burst losses of packets are happening due to the unstable and congested wireless channels. To the received compressed video streams, the packet losses result in the error propagation, since the dependency within/between video frames is heavily used for the video compression. Mobility-induced variations, including the handoff between WiFi networks, result in the transient loss (i.e., disruption) of packets. As a result, the playout quality degrades with the uncontrollable pause and skip of playout at the mobile nodes.

Image

FIGURE 10.1
Typical video streaming environment over a WiFi wireless network.

To address the aforementioned challenges, in this chapter, we introduce network-adaptive streaming that aims to improve the quality of video playout at the mobile nodes while utilizing given limited resources in the WiFi wireless network. A key idea behind the network-adaptive video streaming is that video quality could be gracefully adjusted to match the time-varying conditions of underlying wireless network. That is, we basically apply the monitoring and adaptation principle to handle the quality challenge of wireless video streaming. To be more specific, there are two main modules, which are required to cover the job of monitoring and adaptation, respectively:

1.  Monitoring: We need to monitor current status of underlying network (i.e., wireless network monitoring) as well as streaming applications at both ends (i.e., application monitoring). First, the monitoring module for wireless network receives various types of information, which reflects the underlying wireless network conditions measured by the joint effort of the server and mobile nodes. By utilizing measured information about estimated available bandwidth, observed packet loss/delay, and others, the monitoring module for wireless network can provide the status information about selected parameters of network conditions. Next, the status information about streaming applications can be collected by the monitoring module for streaming applications. The collected status information of mobile nodes is informed to the server through the feedback channel.

2.  Adaptation: Depending upon the wireless network conditions, we should carry out network adaptations* at several places in the wireless video streaming environment to absorb the impact of temporal network variations. For example, we may adopt the network adaptation module that adjusts several parameters of video rate and error protection. As the network adaptation schemes, in this chapter, we introduce two network adaptation schemes such as video rate control and selective error control. The network-adaptive control of video rate adjusts the transmission rates of video streams according to the given estimation about wireless network status. On the other hand, the network-adaptive selective error control improves the video playout quality by selectively protecting against the packet losses of error-prone WiFi wireless network.

Thus, in this chapter, after reviewing the network-adaptive video streaming framework, we will extensively review two representative network adaptation schemes: network-adaptive rate control and error control. The rest of this chapter is organized as follows. In Section 10.2, several fundamentals of network-adaptive video streaming in the WiFi networks are introduced. After that, two case studies of network-adaptive rate control and selective error control in the WiFi networks will be introduced in Sections 10.3 and 10.4, respectively.

10.2  Fundamentals of Network-Adaptive Wireless Video Streaming

10.2.1  Network-Adaptive Video Streaming Example

Figure 10.2 shows an example of feedback-based network adaptation over a typical wireless channel (Kim and Shin 2002). The network adaptation for video packets are mainly executed with network-adaptive error control, i.e., forward error correction (FEC)-based unequal error protection (UEP). A product FEC, composed of both Reed—Solomon (RS) and rate-compatible punctured convolutional (RCPC) error correcting codes, is utilized to protect the video packets of varying priorities and sizes. This same product FEC is also utilized to cope with the instantaneously time-varying wireless channel. Based on the layered-RPI (relative priority index) and the size of each video packet along with the feedback channel state information, the joint network adaptation of UEP is conducted with the RS/RCPC product code. The resulting channel packet is modulated and transmitted over the underlying wireless channel. At the mobile node, the received signal is decoded by the maximum likelihood-based scheme, and the long-term fading parameter is estimated. The calculated fading parameter is then fed back via a reliable channel to the server. The level of protection is chosen to give the maximum protection to the video packet stream with both bandwidth and packetization constraints.

Image

FIGURE 10.2
Feedback-based network-adaptive error control for wireless video.

10.2.2  Network-Adaptive Video Streaming Framework

In real practice, the aforementioned network adaptation for wireless channel is facing severe difficulty in the monitoring aspect. It is very difficult to timely capture the dynamic variation of wireless channel. Also, the feedback channel back to the server is available in a limited scope, only enabling delayed and intermittent feedback. Compared to this, the WiFi wireless network is exhibiting slightly better environment for network adaptation, since the bidirectional nature of networking enables the consistent and relatively speedy end-to-end feedback to help the dissemination of monitored information. However, the uncoordinated nature of WiFi network environment can sometimes cause the heavy uncontrollable competition among all WiFi traffic. That is, since there is no central entity to govern the flows under the WiFi wireless network, flow unfairness problem arises. This flow fairness issue should be taken care of via a coordination scheme, such as FlowNet by employing source rate control (Yoo and Kim 2010) for applications and backpressure scheduling for WiFi network switches. Note that, in this chapter, we are assuming that an effective flow coordination scheme for targeted WiFi wireless network is being executed to ensure appropriate operation conditions for wireless video streaming applications and others.

Figure 10.3 illustrates a network-adaptive video streaming framework for WiFi wireless networks,* with the aforementioned flow coordination assumption. In this framework, the input video stream is compressed, encoded either by scalable or nonscalable video encoders. The compressed video stream is then passed to the real-time parsing and prioritized packetization module for network-based packetized delivery. In this module, the video stream is packetized with priority before going through the network adaptations at the server. The prioritization of video stream is performed by following the layered -RPI concept (Kim and Shin 2002), which reflects the relative influence of each stream to the end-to-end quality. All video packets will be marked by the content-aware streaming application in the granularity of a session, flows, layers, and/or packets. In the case of nonscalable MPEG-2 video stream (International Organization for Standardization 1996), therefore, the real-time parsing process is additionally required to prioritize video stream. Based on the associated priority and the time-varying network condition, we match the transport of video packets according to estimated network status (i.e., in terms of available bandwidth, packet loss, and packet delay) of the underlying network. That is, the selected video packets may be forwarded with priority, protected with differentiation, or discarded.

Image

FIGURE 10.3
Network-adaptive video streaming framework in WiFi networks.

Note that various types of feedbacks are available to guide the required adaptation. Guided by the end-to-end network/application-level feedback (e.g., playout status) from the mobile nodes as well as by the cross-layered feedbacks directly obtained at the server, the video application at the server may control the network adaptations of video. Also, at the mobile nodes, application-level feedback could be used to adapt by speeding up and slowing down for synchronized playback. Finally, the delivered video packets are adaptively processed at the mobile nodes to match its capability and user preference.

10.2.3  Wireless Network Monitoring

In Figure 10.3, the network monitoring module measures underlying wireless network conditions, albeit in semantic forms—available bandwidth, loss and delay, for network-based adaptation of video. In general, the network monitoring could be categorized into receiver-driven and sender-driven approaches.

First, the receiver-driven approach, adopted by most of network monitoring schemes, utilizes end-to-end feedback in upper (i.e., transport and application) layers, as shown in Figure 10.3. Main advantage of this approach is that it can use the actual receiving or playback status of mobile nodes for wireless network monitoring. In a severely fluctuating wireless network, however, this approach exhibits serious performance degradation due to the reliability problem (e.g., uncontrollable loss and delay) of the end-to-end feedback packets. That is, the end-to-end feedback packets from mobile nodes could be lost (or delayed) in the severely congested wireless network condition. It could also suffer from the complications of distinguishing packet losses due to buffer overflow and those due to physical-layer errors (Chen and Zakhor 2006).

Next, in comparison, the sender-driven approach aims to mitigate the problem raised in the aforementioned receiver-driven one. Without the help of end-to-end feedback, the sender-driven approach captures the underlying wireless network condition by directly interacting with lower medium access control (MAC) layer (Liu et al. 2003; Park et al. 2006). That is, the cross-layer monitoring is adopted to realize the direct monitoring interaction between upper and lower layers (Van Der Schaar and Shankar 2005).

10.2.4  Prioritized Packetization

As discussed already, the role of adaptation is to adaptively match the quality demand of video stream to the underlying network condition by adjusting the sending rate and/or protection. For successful adaptations, however, it is highly important to leverage the awareness on the video stream. The prioritized packetization module packetizes the source video stream into multiple video packets with different priorities that reflect the influence of the video packets to the end-to-end quality. For the prioritization, the dependency relations between the video packets, such as semantic and prediction dependency, can be utilized. In the traditional video encoding schemes, there exists a semantic packet-level dependency between a packet that includes video-encoding header parameters and other dependent packets that need them for decoding. Also, linked by spatial or temporal prediction, the video corruption caused by a packet loss can affect the decoding of subsequent packets. Figure 10.4 illustrates an example of error propagation behavior where transmission errors inserted in k + 2nd video frame propagates to the next frames (from k+3rd to k+5th) due to the dependency relations (Tsekeridou and Pitas 2000).

Image

FIGURE 10.4
Example of error propagation behavior.

10.2.5  Network Adaptations with Rate and Error Controls

According to the obtained network monitoring information, the network adaptation module (located at the transport end of server) tries to match the prioritized video packets to the underlying network conditions by focusing on the sending rate and/or protection. In this adaptation process, the adaptation granularity has to be manipulated intelligibly. Its effectiveness is dependent on the accurate association of layered-RPI to each packet, which is one of the key investigation issues. In general, the issue of solving all these adaptations for rate/loss/delay at the same time is too challenging to be solved simultaneously. Thus, depending on the situation, one may focus on the error (or delay) control, leaving the rate control issue behind.

The rate control–based adaptation focuses on maximizing the video quality by adjusting transmission rate under the given estimated available bandwidth. For the rate adjustment, video packets are selectively discarded depending upon the layered-RPI. For example, video frame rate control can be adopted for temporally layered video packets. Figure 10.5 shows a basic temporal scalability structure used in MPEG standards where the video packets containing B frame and P frame have lower priority index compared with the video packet containing I frame due to the dependency relation between frames (International Organization for Standardization 1996). Therefore, the video packets with low priority can be discarded for limited network resources (i.e., bandwidth). In general, spatial and quality scalability can be utilized in addition to the temporal scalability for the priority-based rate control. Note that the granularity of rate control is dependent on the granularity of prioritization.

On the other hand, the error control–based adaptation addresses the reliable video transmission over the fading WiFi channels, which relies heavily on the coordinated protection effort in response to time-varying channel and source variations. In general, most of the existing error control schemes is are based on automatic repeat request (ARQ) and FEC (Sachs et al. 2001; Chan and Zheng 2006). The ARQ scheme represents a reactive error control that retransmits lost/corrupted packets depending upon explicit request(s) by the mobile nodes. However, ARQ should consider the feedback delay of request packets in the real-time video streaming. In comparison, the FEC scheme can be classified to several different proactive error controls that put some redundant information to video packets for error correction. Therefore, the FEC scheme requires additional overhead in the sense of data allocation and computational complexity, while it does not require additional feedback and retransmission.

Image

FIGURE 10.5
Basic-level temporal scalability of encoded video.

10.3  Network-Adaptive Rate Control with Sender-Driven Network Monitoring for WiFi Video Streaming

10.3.1  Introduction and Related Work

Now we describe a case study of priority-based network-adaptive video streaming in IEEE 802.11a-based WiFi (Park et al. 2007). In this case, a sender-driven, cross-layered wireless network monitoring is utilized. It intends to speed up the network adaptation and thus can mitigate the problem of receiver-driven wireless network monitoring in a severely congested WiFi network. Furthermore, an intelligent sender interacting with an embedded wireless access point (AP) is adopted, which is capable of performing both video rate adaptation and wireless network monitoring. In this setup, the wireless channel monitoring tightly interacts with underlying MAC and physical (PHY) layers. Without the help of end-to-end feedback, the cross-layered wireless channel monitoring scheme estimates the available bandwidth in terms of the idle time of the WiFi channel for a given time period using MAC and PHY transmission statistics. The estimated available bandwidth information is then utilized to adapt the temporally scalable video stream.

Regarding the monitoring aspect, most existing techniques to estimate available bandwidth in wired/wireless networks are receiver-driven and use end-to-end statistics such as packet loss rate and round-trip time (e.g., TCP friendly rate control [TFRC]) (Floyd et al. 2000; Chen and Zakhor 2006). In wireless network, however, these end-to-end schemes require a complicated methodology to distinguish between packet loss due to buffer overflow and that due to physical layer errors. In addition, the estimation schemes for available bandwidth based on end-to-end statistics are not sufficiently accurate, and exhibit serious performance degradation over unstable wireless channel condition due to reliability problem of end-to-end feedback packets (e.g., delay or loss) (Chen and Zakhor 2006). On the other hand, existing active queue management (AQM) algorithms (e.g., RIO), which drop packets based on queue occupancy at the sender, have similar problems as receiver-driven schemes since queue occupancy cannot be an accurate guideline for wireless channel condition (Clark and Fang 1998). To cope with this problem, sender-driven monitoring schemes, which estimates the available bandwidth at sender (e.g., on top of base station), have been proposed. Recently, some work proposed network-adaptive video streaming schemes in wireless local area network (WLAN) based on the sender-driven channel monitoring approach (Schulzrinne et al. 1996; International Organization for Standardization 1999). However, they are limited to heuristic threshold-based estimation of channel conditions.

10.3.2  System Overview

Figure 10.6 shows the system-level overview of the proposed WiFi wireless video streaming, where an intelligent sender with rate adaptation and wireless network monitoring capability is adopted. For the video source, a scalable video stream consists of a base layer (l1) and n – 1 enhancement layers (l2, l3,…, ln). It is assumed that a rate profile of the scalable video source, a bit-rate set of sublayer streams, is already known as {r1, r2,…, rn} to the sender. This rate profile is then converted into a time profile which that is equivalent to the expected transmission time of the video stream over the WiFi network.

For the wireless channel monitoring, a time-based available bandwidth estimation scheme is utilized. Note that the monitoring procedure is triggered for every predefined estimation period, Tep. First, both transmission and retransmission statistics from MAC and PHY layers are observed. Then, these statistics are converted into the form of utilized time resource for transmission and retransmission of MAC data frames (i.e., MAC service data unit [MSDU]), namely, Ttx and Tro, respectively. From these parameters, estimated idle time resource, namely, Tidle, is calculated as

Tidle=TepTtxTro,0TidleTep.

(10.1)

Image

FIGURE 10.6
System-level overview of sender-driven network-adaptive WiFi video streaming.

Note that detailed estimation methods on Ttx and Tro are described in Section 10.3.3.

10.3.3  Cross-Layered Video Rate Adaptation

The obtained Tidle is compared with the time profile of scalable video to determine the number of maximally allowed video layers, namely, up to k, for transmission.

10.3.3.1  Rate-to-Time Conversion

First, the following two functions based on the MSDU structure of IEEE 802.11a WiFi can be defined.

Ftx(S,i,i¯)=(Lh+SBpS[i]+Lh+SBpS[i])×tSymbol+cSIFS+(tPreamable+tSignal)×2+Twait,

(10.2)

Fro(S,i)=(28+Lh+SBpS[i])×tSymbol+tPreamable+tSignal+Twait+ACKtimeout,

(10.3)

where Ftx(S,i,i) and Fro(S,i) calculate the expected time for transmission and retransmission of data with size S under given PHY mode i for data frame and mode i for ACK frame, respectively. Note that IEEE 802.11a supports eight PHY transmission modes for data frame and three for ACK frame, respectively. IEEE 802.11a specific parameters such as Lh, BpS, tSymbol, B_ACKsize, cSIFS, tPreamble, tSignal, and ACKtimeout are stated in the IEEE 802.11a specification (International Organization for Standardization 1999). Also, T_wait, which denotes an average value of backoff duration, can be estimated by using observed transmission failure probability.

10.3.3.2  Observation of MAC and PHY Transmission Statistics

The wireless channel monitoring observes an average size of MAC protocol data unit (MPDU) (i.e., data and ACK frames) from statistics of successfully transmitted and retransmitted MSDUs, Stx[i] and Sro[i], respectively. They are calculated as

Stx[i]=Sacctx[i]Ntx[i]andSro[i]=Saccro[i]Nro[i],

(10.4)

where Ntx[i] and Sacc_tx[i] denote the number and accumulated size of successfully transmitted MSDUs, respectively. Note that they can be counted for each PHY mode i during Tep. Similarly, Nro[i] and Sacc_ro[i] denote the number and accumulated size of retransmitted MSDUs, respectively.

10.3.3.3  Estimation and Video Rate Adaptation

Now two utilized time resource parameters, Ttx and Tro, can be estimated using Equations 10.2 and 10.3 as

Ttx=i=18{Ftx(Stx[i],i,i¯)×Ntx[i]},

(10.5)

Tro=i=18{Fro(Sro[i],i)×Nro[i]},

(10.6)

where i¯ denotes PHY mode to transmit ACK frame. Note that i¯ is automatically determined according to i¯ of the data frame in Equation 10.4 (International Organization for Standardization 1999). Also, the rate profile of scalable video can be converted into a time profile using Equations 10.2 and 10.3 as

TRk={Ftx(Sk,ξ,ξ¯)+Fro(Sk,ξ¯)×p}×RkSk×Tep,

(10.7)

where TRk is equivalent to the expected time to transmit Rk, which denotes aggregated bit rate of up to kth layers out of n video layers (i.e.,i=1kri). Also, Sk and p denote the average size of transmitted MPDUs and observed transmission failure probability, respectively. Note that ξ and ξ¯; are the respective average of PHY modes during Tep for data and ACK frames, calculated by flooring operation (i.e., [x]). Finally, k is determined as

k=max{(h|TRh<Tidle+TRτ)},h1,2,,n,

(10.8)

where TRτ is the expected transmission time. Here τ denotes the selected transmission video layer during previous Tep. In Equation 10.6, k is decreased only when Tidle becomes zero. Note that in real implementation a damping factor is applied on Equation 10.6 to mitigate this strict condition.

10.4  WiFi Video Streaming with Network-Adaptive Transport Error Control

10.4.1  Introduction and Related Work

Wireless video streaming over the WiFi network is inherently vulnerable to burst packet losses caused by dynamic wireless channel variations with time-varying fading and interference. To alleviate this limitation, especially in the transport layer, the error control schemes based on FEC, ARQ, interleaving, and their hybrid are essential. However, each error control mode shows different performance according to the target application requirement and the channel status. In this section, a case study of network-adaptive selection of transport-layer error (NASTE) control is introduced in IEEE 802.11g-based WiFi network, where transport-layer error control modes are dynamically selected and applied (Moon and Kim 2007).

If we briefly review related work, in order to improve the performance of error recovery while matching the given WiFi, numerous hybrid schemes, which combine several error control modes, have been proposed (Hartanto and Sirisena 1999; Sachs et al. 2001; Aramvith et al. 2002). In Moon and Kim (2007), a receiver-initiated, hybrid ARQ scheme is proposed for error recovery of packets in wireless video streaming. It combines the reliability advantage of FEC with the bandwidth-saving properties of ARQ. However, it does not consider multiple retransmissions even when the receiver can tolerate the corresponding delay. In Hartanto and Sirisena (1999), a switching scheme among ARQ, FEC, and hybrid ARQ modes is proposed to match the channel status by considering both playback buffer status and packet loss rate. However, since the burst packet losses are not considered, it cannot avoid sudden video quality degradation. In Aramvith et al. (2002), a low-delay interleaving scheme that uses the playback buffer as a part of interleaving memory is proposed. In this work, the interleaving scheme does not increase the delay significantly and the memory requirement is limited by the amount that is imposed by the video encoder. However, this interleaving scheme uses static depth, which results in severe computational overhead. Regarding the depth of interleaving, in Liang et al. (2002), it is shown that matching the interleaving depth to current burst length is important to convert burst packet losses into isolated ones.

10.4.2  NASTE Framework

The NASTE focuses on how to improve the packet loss recovery while utilizing bandwidth efficiently and minimizing delay. For this purpose, the NASTE adopts three error control schemes, packet-level FEC, delay-constrained ARQ, and interleaving. Figure 10.7 shows a framework of NASTE that the three error control schemes are selectively chosen depending upon monitoring result of underlying wireless network for reliable transmission. For the monitoring, the NASTE incorporates the end-to-end monitoring (E2EM) and the cross-layered monitoring (CLM). The E2EM periodically monitors the playback buffer status at the receiver and sends feedback packets to the sender. On the other hand, the CLM monitors packet loss rate and link quality in sender-driven manner. Given the monitoring information by E2EM and CLM, the network-adaptive manager in the sender selects an error control mode that appropriately combines the three error control schemes. Once the error control mode is selected, the packetized video stream is appropriately encoded and transported depending upon the selected error control mode. The video packets transmitted from the sender are stored in the playback buffer and attempts to recover packet errors, if necessary, at the receiver nodes.

Image

FIGURE 10.7
Framework of NASTE.

10.4.3  Error Control Modes

In the NASTE, the dejittering buffer at the client needs to tolerate delay jitters caused by packet interleaving whose maximum depth is 10. Unless specified, the available bandwidth for video streaming is assumed to be sufficient so that the required capacity for error control can be covered. The NASTE defines four different error control modes, AFEC (adaptive packet–level FEC), DCARQ (delay-constrained ARQ), AFEC & ARQ (AFEC and DCARQ), and IFEC & ARQ (interleaved FEC and DCARQ). Each mode has different properties and different performance depending upon the application requirement and underlying wireless channel condition. The error control modes are defined as follows:

•  Mode#1—AFECn,k: This mode adds h redundant packets to k original source packets to recover lost packets within bounds (Rizzo 1997). As long as at least k packets out of whole n packets are received, it can recover all of k source packets. However, if the receiver loses l (>h) packets, it cannot recover all lost packets.

•  Mode #2—DCARQ: This mode detects lost packets at the client and automatically requests retransmissions from the server after considering delay budget (Shinha and Papadopoulos 2004). It thus can partially reduce unnecessary retransmission trials by avoiding too late retransmissions. Each retransmitted packet, if successfully received, can be used for incremental quality improvement (so-called incremental recovery). Thus, if packet loss rate is high and the delay budget is available, this mode is more efficient than AFEC mode.

•  Mode #3—AFEC & ARQn,k: This mode combines both AFEC and DCARQ modes. To improve the error control performance further, this mode spends more delay and overhead. Thus, if the client can tolerate resource spending caused by both AFEC and DCARQ, this mode is selected (Papadopoulos and Parulkar 1996).

•  Mode #4—IFEC & ARQn,k,d: This mode adds interleaving to AFEC & ARQ mode so that it can convert burst packet losses into isolated (random) packet losses. This mode should tolerate delay jitter caused by interleaving as well as retransmission. To fine-tune this, the depth of interleaving should be selected (Liang et al. 2003; Chen et al. 2004).

10.4.4  Mode Switching Algorithm

Figure 10.8 illustrates the mode switching procedure in the NASTE. Note that the mode switching procedure is activated whenever there are noticeable changes in monitoring information by E2EM and CLM. For every periodic interval (Pms), the E2EM captures playback buffer level (Dplayback) and Cost, while CLM captures packet loss rate (Pl) and link quality (LQ). After that, these monitoring values are utilized as input parameters of mode selection function (Fms), whose criteria include packet delivery rate (PDR) and Cost used for error recovery. The PDR indicates packet delivery rate after applying error recovery procedure while, Cost indicates the ratio of redundant packets used for error recovery. Then, by properly balancing PDR and Cost, the best error control mode is determined. Once a mode is selected, subsequent fine-tuning of selected mode is applied so that specific parameters (e.g., number of redundant packets and depth of interleaving) for selected mode can be decided to match time-varying WiFi environment.

Image

FIGURE 10.8
Procedure of error control mode switching.

10.4.4.1  Hybrid Monitoring

To assist mode switching, the NASTE measures both the application and channel status by E2EM and CLM. First, E2EM monitors the level of playback buffer by counting the number of frames stored. Note that, in wireless video streaming, rather long-size playback buffer is essential to absorb the gradual degradation of wireless channel as well as the instantaneous glitches of packet delay (i.e., jitter). The playback buffer level can be converted into time-domain quantity, Dplayback approximated as

Dplayback(i)=TS{Q(i1,n)}TS{Q(i1,1)},

(10.9)

where

TS() indicates the time stamp function of input packet

Q(i, j) denotes jth packet in playback queue at ith time instance, respectively

On the other hand, the CLM attempts to capture underlying wireless channel condition by monitoring WiFi link-layer statistics. First, to represent time-varying channel quality, such as SINR (signal to interference noise ratio), LQ, which indicates the overall quality of WiFi link, is utilized. After that, PLR is measured by inferring link parameters about the number of received ACKs and transmitted packets. For every Pms, relevant parameters are collected and used to calculate PLR Then, NASTE calculates and updates PLR employing exponentially weighted moving average (EWMA) as

PLR(i)=α×PLR(i)+(1α)PLR(i1),

(10.10)

where α is set to 0.9.

10.4.4.2  Mode Selection

Based on the monitoring parameters, NASTE decides the best error control mode by employing mode selection function (Fms) designed to consider both PDR and Cost, approximated as

Fms(Mode#i)=PDR(Mode#i)+λ×(1Cost(Mode#i)),

(10.11)

where i has a value from 1 to 4, while λ. is a constant value that determines degree of Cost, which indicates the ratio of how many packets are used for error recovery. The Cost can be approximated as

Cost(MODE)=NredNori+Nred,

(10.12)

where Nori and Nred indicate the number of original packets for video data and the number of redundant packets for error recovery, respectively.

The PDR of each error control mode, denoted as PDR(Mode#i) in Equation 10.9, varies according to the monitoring information by E2EM and CLM. To estimate PDR(Mode#i), a training-based approximation scheme is adopted (Choi 2002; Choi and Shin 2006).

For the fine-tuning of selected error-control mode, NASTE first controls the number of redundant packets. Before choosing the number of redundant packets for packet-level FEC, by assuming that packet loss happens independently, the throughput of FEC (TFEC) can be calculated as

TFEC=knProb(Xnk)=knj=0nk(nj)PLRj(1PLR)(nj),

(10.13)

where X is the random variable that indicates the number of lost packets in a FEC block.

After that, the interleaving depth (d) is calculated as

d=[DplaybacknL((1/rsource)+(1/rsending)+RTT+Dprocess)],

(10.14)

where

n and L indicate the size of FEC block and packet length, respectively

rsource, rsending, and Dprocess indicate video source rate, transmission rate, and processing delay due to interleaving, respectively

Once the interleaving scheme is used, the code ratio (i.e., the number of redundant packets) of AFEC should be fixed, since overall packet loss rate is spread until interleaving is finished.

References

Aramvith, S., Lin, C.-W., Roy, S. et. al. (2002) Wireless video transport using conditional retransmission and low-delay interleaving. IEEE Transactions on Circuits and Systems for Video Technology, 12(6), 558–565.

Chan, S. and Zheng, X. (2006) Video loss recovery with FEC and stream replication. IEEE Transactions on Multimedia, 8(2), 370–381.

Chen, L., Sun, T., Sanadidi, M. et al. (2004) Improving wireless link throughput via interleaved FEC. In: Proceedings of the IEEE Symposium on Computer and Communications, Alexandria, Egypt, Vol.1, pp.539–554.

Chen, M. and Zakhor, A. (2006) Rate control for streaming video over wireless. IEEE Wireless Communications, 12(4), 32–41.

Choi, S. (2002) IEEE 802.11e MAC level FEC performance evaluation and enhancement. In: IEEE GLOBCOM’02, Taipei, Taiwan, pp.773–777.

Choi, J. and Shin, J. (2006) A novel design and analysis of cross-layer error control for H.264 video over wireless LAN. In: Proceedings of the WWIC’06, Bern, Switzerland, pp. 247–258.

Clark, D. and Fang, W. (1998) Explicit allocation of best-effort packet delivery service. IEEE/ACM Transactions on Networking, 6(4), 362–337.

Floyd, S., Handley, M., Padhye, J. et al. (2000) Equation-based congestion control for unicast applications. In: Proceedings of the ACM SIGCOMM, Stockholm, Sweden, pp. 43–56.

Hartanto, F. and Sirisena, H. R. (1999) Hybrid error control mechanism for video transmission in the wireless IP networks. In: Proceedings of the IEEE LANMAN’99, Sydney, New South Wales, Australia, pp.126–132.

International Organization for Standardization (1996) Information technology-generic coding of moving pictures and associated audio information, part 2: Video, ISO/IEC 13818-2.

International Organization for Standardization (1999) Wireless LAN medium access control (MAC) and physical layer (PHY) specification: High-speed physical layer in 5 GHz band, IEEE 802.11a WG, Part 11, IEEE 802.11 Standard.

Kim, J. and Shin, J. (2002) Dynamic network adaptation framework employing layered relative priority index for adaptive video delivery. Lecture Notes in Computer Science, Springer, 2532, pp.936–943.

Liang, Y. J., Apostolopoulos, J. G., and Girod, B. (2002) Model-based delay distortion optimization for video streaming using packet interleaving. In: Proceedings of the Asilomar Conference on Signals, Systems, and Computers, Pacific Grove, CA, pp. 1315–1319.

Liang, Y. J., Apostolopoulos, J. G., and Girod, B. (2003) Analysis of packet loss for compressed video: Does burst-length matter? In: Proceedings of the IEEE ICASSP’2003, Hong Kong, China, vol.5, pp.684–687.

Liu, D., Makrakis, D., and Groza, V. (2003) A channel condition dependent QoS enabling scheme for IEEE 802.11 wireless LAN and its Linux based implementation. In: Proceedings of the IEEE CCECE’03, Montreal, Quebec, Canada, pp.1807–1810.

Moon, S. M. and Kim, J. W. (2007) Network-adaptive Selection of Transport Error Control (NASTE) for video streaming over WLAN. IEEE Transactions on Consumer Electronics, 53(4), 1440–1448.

Papadopoulos, C. and Parulkar, G. (1996) Retransmission-based error control for continuous media applications. In: Proceedings of the NOSSDAV’96, Zushi, Japan.

Park, S., Yoon, H., and Kim, J. (2006) Network-adaptive HD MPEG2 video streaming with cross-layered channel monitoring in WLAN. Journal of Zhejiang University, Science A, 7(5), 885–893.

Park, S., Yoon, H., and Kim, J. (2007) A cross-layered network-adaptive video streaming using sender-driven wireless channel monitoring. IEEE Communications Letters, 11(7), 619–621.

Pefkianakis, I., Hu, Y., Wong, S. H. Y. et al. (2010) MIMO rate adaptation in 802.11n wireless networks. In: Proceedings of the ACM MOBICOM’10, Chicago, IL, pp. 257–268.

Rizzo, L. (1997) On the feasibility of software FEC. DEIT Technical Report LR-970131.

Sachs, D. G., Kozintsev, I., and Yeung, M. (2001) Hybrid ARQ for robust video streaming over wireless LANs. In: Proceedings of the ITCC 2001, Las Vegas, NV, pp. 317–321.

Schulzrinne, H., Casner, S., Frederick, V., et al. (1996) RTP: A transport protocol for real-time applications. RFC 1889, Audio-Video Transport Working Group.

Shinha, R. and Papadopoulos, C. (2004) An adaptive multiple retransmission technique for continuous media streams. In: Proceedings of the NOSSDAV’04, Cork, Ireland, pp. 16–21.

Tsekeridou, S. and Pitas, I. (2000) MPEG-2 error concealment based on block-matching principles. IEEE Transactions on Circuits and Systems for Video Technology, 10(4), 646–658.

Van Der Schaar, M. and Shankar, N. S. (2005) Cross-layer wireless multimedia transmission: Challenges, principles, and new paradigms. IEEE Wireless Communications, 12(4), 50–58.

Wi-Fi Alliance Technical Committee Display TG (2011) Wi-Fi display specification, Draft Version1.16.

Yoo, J. and Kim, J. (2010) Centralized flow coordination for proportional fairness in enterprise wireless mesh networks (Poster Paper at ACM MobiCom 2010). ACM SIGMOBILE Mobile Computing and Communications Review (MC2R), 14(3), 52–54.

Zhang, Q., Zhu, W., and Zhang, Y. Q. (2005) End-to-end QoS for video delivery over wireless Internet. Proceedings of the IEEE, 93(1), 123–134.

*  AfreecaTV is a P2P-based video streaming service in South Korea, which mainly retransmits TV channels, but also allows users to upload their own videos and shows.

*  In this chapter, the term, network adaptation, actually means the adaptation to the network.

*  This framework follows the dynamic network adaptation framework introduced in “Kim and Shin 2002” and provides a simplified framework by focusing on the WiFi video streaming.

..................Content has been hidden....................

You can't read the all page of ebook, please click here login for view all page.
Reset