Chapter 8. Enhanced Service Differentiation for Layered Video Multicast

Introduction

The multicast model was proposed as a method of eliminating unnecessary transmission of duplicate packets across the network backbone. However, applications using multicast typically have QoS requirements that make the multicast problem a challenging one. Our research in multicasting focuses on the integration of DiffServ and multicast.

In this chapter, we present an enhanced network service algorithm for layered video multicast applications for DiffServ networks, which consists of enhanced AQM and hierarchical priority marking.

To address the heterogeneity problem, including things such as receiver bandwidth and receiver capability, layered video (a.k.a., scalable video) is recognized as a viable solution. Most up-to-date video standards, such as ITU-T H.263+ and ISO/IEC MPEG-4, have spatial/SNR/temporal layer support with MPEG-4-specific, FGS, ELs and so on. Generally, layered video consists of a BL and some ELs, with the ELs depending upon the base layer for their reconstruction. The BL, which covers the minimum level of quality, is given the highest priority and is protected accordingly. In similar fashion, all the layers could be prioritized and protected differently by a QoS-enabled network such as DiffServ. Thus, it is quite natural to establish a framework for layered streaming video in a DiffServ network. In other words, a prioritized delivery that can boost the layered structure of compressed video can be realized by the differentiated service of DiffServ networks.

Layered video transmission with differing priorities over a DiffServ network is investigated in this chapter. To the best of the authors’ knowledge, layered video in DiffServ has been rarely addressed thus far. The end-hosts in DiffServ AS are required to adapt to network dynamics (e.g., congestion) because DiffServ AS does not fully guarantee (i.e., provide a “congestion-free” environment) the delivery of each layer.

The popular receiver-driven multicast (RLM) [138] addresses the delivery of layered video in the best-effort Internet environment. In RLM, each video layer is assigned a distinct multicast group address, and receivers in RLM select video layers by subscribing to the corresponding multicast groups. Because the best-effort Internet does not support prioritized forwarding for layered video, RLM requires the participating end-hosts to respond to network congestion by joining or leaving the subscription group of layers. Unfortunately, RLM’s “join or leave” experiment to monitor congestion causes a temporary and unpredictable corruption of the entire video layer. In [139], RLM with priority (RLMP) is proposed as a method of using the lowest priority layer to monitor congestion by modifying the last-hop router to support drop priority. This multicast-focused RLMP, however, has not tackled QoS-enabled networks such as DiffServ.

Treating RLM traffic effectively in a DiffServ network is not a trivial problem. It has been experimentally found that the RLM join experiment practically behaves as an unresponsive flow for a transient period of time and that it conflicts with the default AQM of a DiffServ network (see Section 8.2). This conflict results in a significant degradation of RLM’s congestion-controlled performance as well as the service differentiability supported by DiffServ networks. Because of this, an enhanced network service model is proposed here to achieve an efficient deployment of layered video multicast applications over DiffServ networks. The proposed enhanced network service model consists of two unique components: AQM and hierarchical priority marking.

First, to overcome the misbehavior of RLM traffic to AQM, we propose the use of extended AQM parameters to reduce the effects of short-term misbehaving flows, especially at the time of the join experiment. The extended AQM parameters (to be discussed in detail in Section 8.3) supplement the existing AQM parameter settings (which are currently optimized for TCP traffic) and provide flexible control of service differentiability. Note that this process is generally applicable to misbehaving traffic and join experiment traffic. Second, to take advantage of the priority service of DiffServ networks, we present a priority marking model for RLM video layers that conforms to the priority marking architecture of DiffServ networks (see Section 8.4). The marking model consists of mandatory sender-driven marking on outgoing packets and optional receiver-driven marking on incoming packets. Finally, simulations are performed in Section 8.5 to demonstrate that the proposed service enhancement model improves the join experiment’s stability and reduces the packet loss rate to a level that is desirable for supporting RLM traffic in DiffServ networks. Concluding remarks are given in Section 8.6.

Receiver-Driven Layered Multicast (RLM) and DiffServ Networks

DiffServ AF PHB implementation requires AQM such as RED [45] and RIO [97]. RIO, originally proposed by Clark and Fang [97], consists of two sets of RED parameters (IN and OUT), which serve as two virtual priority channels in which packets are dropped according to their priority. The basic RIO algorithm can be easily extended to support the three-color (i.e., green, yellow, and red) drop priority of the IETF AF PHB recommendation [23] by adding one more RED parameter set. Figure 8.1 shows RED and RIO parameters, and Table 8.1 lists their notations used in this chapter.

RED and RIO.

Figure 8.1. RED and RIO.

During our RLM simulation over DiffServ networks, it was observed that join experiment traffic affects the RED/RIO queue and behaves like unresponsive CBR traffic for a period of time, even though traffic is eventually reduced when the receiver recognizes the join experiment failure. As a result, join experiments are severely subject to large errors and frequently fail in bandwidth adaptation when the RLM protocol is executed in DiffServ networks. The primary reason for this phenomenon is that RED/RIO parameters are optimized for TCP traffic (i.e., additive increase and multiplicative decrease), and this design leads to a slow response of the averaged queue length, which conflicts with the rapid traffic change caused by the join experiment.

Table 8.1. Notation of RED and RIO Parameters

avg_len

Averaged queue length

act_len

Actual queue length

min_th

Minimum threshold

max_th

Maximum threshold

max_p

Drop probability

phy_lim

Physical queue limit

w

Averaging weight factor

Figure 8.2 provides a snapshot of RED queue buildup during the join experiment from one of our simulations. In this figure, avg_len deviates from its due operational region, which is between min_th and max_th. When the traffic is increased in step, the early drop based on the avg_len is not activated in a timely manner. This is because the initial position of avg_len is well below min_th at the beginning of the join experiment and because the response of avg_len is much slower than that of act_len, which is the actual queue length. The figure also shows that the RED queue cannot recover the normal state quickly, even though the traffic is decreased at the end of the join experiment. avg_len grows well above max_th during the queue overflow and needs time to reach a level below max_th. During the period that act_len < max_th < avg_len, all incoming packets are unnecessarily dropped with a probability of 1, as if the queue had overflowed. In the case of the RIO queue, as in DiffServ AF PHB, we see from our simulation that the join experiment of a lower priority flow sometimes results in a service quality degradation of a higher priority flow. The explanation for this is that the physical queue is shared by all virtual queues of different priorities and early drop is not activated in a timely fashion due to the slow change of the averaged queue length.

RED queue buildup during a join experiment.

Figure 8.2. RED queue buildup during a join experiment.

Since Floyd and Fall [49] addressed the unfairness issues of unresponsive flows, several penalty algorithms like RED with preferential dropping (RED-PD) [140] have been proposed to filter out unresponsive flows using AQM. However, these proposals have concentrated on detecting peculiar flows within a single service class rather than service differentiation among multiple service classes. As for service differentiability with respect to other service classes, Makkar et al. [141] compared several AF PHB AQM algorithms (i.e. RIO-coupled (RIO-C), RIO-decoupled (RIO-D), and weighted RED (WRED), and RIO queue configuration models (i.e., staggered, partially overlapped, and overlapped configurations as shown in Figure 8.3). Their experiments showed that the staggered configuration with RIO-C achieves the highest level of service differentiation capability for higher priority packets in various types of traffic (e.g., ON-OFF bursty traffic, transaction traffic, and bulk transfer traffic). However, as indicated by our simulation results, which are presented in Section 8.5, even the staggered configuration with RIO-C cannot protect service differentiability robustly enough to ensure an acceptable level of RLM performance in the presence of frequent join experiments.

The DiffServ AF PHB configuration.

Figure 8.3. The DiffServ AF PHB configuration.

Table 8.2. Notation of Extended RED/RIO Parameters

min_th_avg

Lower bound of avg_len

max_th_avg

Upper bound of avg_len

vir_lim

Virtual queue limit

offset

phy_lim – vir_lim

s

Summation weighting factor

Enhanced AQM for Join Experiment

We propose an enhanced AQM to protect queues from being affected by unresponsive traffic and to return them more quickly to their normal operational state. The proposed AQM consists of three sets of extended RED/RIO parameters, for which notations are listed in Table 8.2. The extended RED/RIO parameters are independent of and supplementary to the original RED/RIO parameters, so that the proposed AQM can be compatible with the previous research on active queue performance with respect to the original RED/RIO parameter settings. Our enhanced AQM is simple and can easily be integrated into the original RED/RIO algorithm. It is generally applicable and beneficial to both TCP traffic and join experiment traffic.

Confined Averaged Queue Length

We propose to force the average queue length to be confined within its due operational region roughly bounded by min_th and max_th. That is,

Equation 8.1. 

The confinement on avg_len is to compensate the slow update of avg_len by limiting the range of the average queue length so that the avg_len cannot deviate much from its operational range. When avg_len < min_th, packets are dropped with a probability of 0 regardless of the difference between the two. If their difference is relatively large, as is often the case with RIO IN virtual channel with staggered configuration, avg_len requires more time to catch up with the rapid increment of the act_len, and the queue starts overflowing before the early drop is activated. If avg_len is forced to be slightly below min_th, avg_len can quickly enter the due operational region and the early drop can respond quickly to the rapid growth of act_len. When avg_len > max_th, packets are dropped with a probability of 1 regardless of the differences between them. Similarly, if avg_len is forced to be slightly above max_th, avg_len can quickly enter its due operational region, and the early drop with a probability of 1 can be stopped quickly when the act_len decreases rapidly. Our experience is that the optimal ranges of max_th_avg and min_th_avg are

Equation 8.2. 

and that the RED/RIO queue is satisfactorily protected from the short-duration, unresponsive traffic like join experiment traffic without significantly changing the queue response to TCP traffic.

Virtual Queue Limit

We define a virtual queue limit of a service class, vir_lim, as its queue overflow threshold, and the offset, offset_lim, as the difference between vir_lim and phy_lim. Since each service class in RIO shares the same physical queue, the virtual queue limit of a service class in the original RIO is the same as the limit of the shared physical queue. Thus, when the shared queue overflows, all the overflow packets are dropped regardless of their priority. We propose that vir_lim, the virtual queue limit, be assigned differently to each virtual queue according to the service level to differentiate packet dropping during queue overflow. The amount of blind packet dropping can be reduced by assigning a shorter virtual queue limit to the lower priority queue than those assigned to higher priority queues. offset_lim corresponds to the extra queueing space needed to protect higher priority packets from being dropped together with lower priority packets when the physical queue overflows. Thus, offset_lim determines the acceptable burst level of the higher priority queues during the overflow of the low priority queue. The offset_lim value should be determined based on the trade off between the service differentiability requirement and the queue capacity of each service class. Our experience is that having only one or two mean packet sizes is sufficient for the offset_lim value of lower priority services for the purpose of providing a desired level of service differentiation against the unresponsive flows triggered by join experiments. The queue capacity reduction of the lower priority service was negligible and was justified by the improved performance in service differentiability against misbehaving traffic.

Weighted RIO

The original RIO[1] associates the actual queue length of IN packets and OUT packets differently in the calculation of the average queue length to achieve strong service differentiability between IN and OUT packets [97]. That is,

Equation 8.3. 

where 0 < w < 1.

Because the average queue length of the IN virtual queue is independent of the actual queue length of the OUT virtual queue, OUT packets cannot affect IN packet services. However, because the average queue length of the OUT virtual queue is dependent on the actual queue length of the IN virtual queue, OUT packets are likely to be dropped more aggressively in the early drop stage if IN packets and OUT packets exist together in the shared physical queue. This is generalized as follows in the current NS [27] implementation of DiffServ AF PHB:

Equation 8.4. 

where 0 < wg, wy, wr < 1.

We propose summing the weighting factors in the summation of the actual queue length over each service class to flexibly control the service differentiability over the RIO queue. In other words,

Equation 8.5. 

where sin + sout = 2.

This can be generalized to DiffServ AF PHB as follows:

Equation 8.6. 

where sgy + syy = 2 and sgr + syr + srr = 3.

The proposed summation weights (si’s) control the coupling degree of the actual queue length of each service class, which affects the aggressiveness in service differentiation in a way that is different from the staggered, partially overlapped, and overlapped configurations addressed earlier in this section. Thus, the proposed summation weights provide supplementary control over the service differentiability provided by the staggered, partially overlapped, and overlapped configurations. For example, the overlapped configuration in the proposed RIO extension can provide stronger service differentiability for green packets by setting 1 < sgy < 2 and 1 < sgr < 3 than the same configuration in original RIO can provide for the green packets.

Hierarchical Priority Marking on Layered Video

The previous section concentrated on the effect of the join experiment on the DiffServ network AQM. This section addresses the effect of the join experiment on layered video applications. It has been pointed out by Raman et al. that RLM’s join experiment results in frequent data corruption in high-priority video layers and impairs the consistency of quality of the reconstructed video at the receiver [139]. This is because the best-effort IP network does not differentiate video packet priority and the video packets are thus subject to loss during the congestion period triggered by the join experiment. Raman et al. proposed RLMP, in which the last-hop router in the best-effort IP network is modified to support video packet priority. However, if we assume the underlying network to be a DiffServ network, we propose to take advantage of the priority service already enabled in a DiffServ network. Because RLM’s video layer identification by means of IP multicast address is compatible with the flow identification for service-level marking in a DiffServ network, we point out that the DiffServ marking architecture can be used for priority marking on layered video packets without requiring new functional entities or network modification. Because the edge and core routers are authorized differently for service-level marking, we propose the following two priority marking methods for RLM video layers, which are also illustrated in Figure 8.4.

DiffServ and marking framework.

Figure 8.4. DiffServ and marking framework.

Sender-Driven Marking

The sender determines the service level of each video layer based on the anticipated heterogeneity of the RLM receivers. However, the actual service levels to be finally marked on the video packets are determined by the negotiation between the sender and authorized network resource manager, such as a BB or policy server. The edge router (or any authorized router near the sender on the path of the multicast tree) finally marks the service levels on the outgoing video packets on behalf of the sender. Sender-driven marking is mandatory to ensure prioritized delivery of video layers across all DiffServ domains involved in the RLM session.

Receiver-Driven Marking

The RLM receiver may request re-marking of the video packets coming into the local DiffServ domain to which the receiver belongs. Receiver-driven marking is optional and is used to adjust the service level of incoming video layers to the condition of the local DiffServ domain. As in sender-driven marking, service levels are negotiated with the authorized resource manager, and they are re-marked on incoming video packets by the edge router (or any authorized router near the receiver on the path) of the local DiffServ domain.

Because the number of drop priorities provided by a DiffServ network is limited, sender-driven marking without receiver-driven marking may not perform acceptably if the degree of receiver heterogeneity is significant. Receiver-driven marking can compensate for the limitation of the number of available drop priorities by customizing the priority level of the video layer in a way that is optimal for the local network conditions of the individual receivers. The proposed priority-marking strategy scales very well and does not impair the scalability of the RLM protocol because the communication for priority marking is limited to the local DiffServ domain to which the sender or receiver belongs, with no message exchange between the sender and receivers required. The proposed marking strategy also assures the presence of priority delivery service anywhere across DiffServ domains. RLMP cannot achieve this because all the routers other than last-hop routers remain part of the best-effort network, which means that RLMP fails if congestion occurs beyond the coverage of the last-hop routers. The sender may determine the priority level based on the SLA, if the SLA information is available, for example, during the service-level negotiation with the authorized resource manager. In this case, the hybrid priority marking driven by the sender and receivers conforms to the hierarchical QoS treatment of a DiffServ network, that is, macroflow-level QoS with respect to SLA out of DiffServ domains and microflow-level QoS with respect to locally available resources within a DiffServ domain.

Experimental Results

We compared the performance of the following: (1) an RLM session over the IP network with an RED queue as an emulation of no priority marking and (2) DiffServ AF PHB (i.e., RIO) of an overlapped and staggered configuration with priority marking. We used NS in our experiments. Figure 8.5 shows the simulation topology of the RLM session for all experiments given in this chapter. We assumed a static network condition in which no background traffic existed except for the RLM session, because background traffic may interfere with RLM’s bandwidth adaptation behavior, which is our primary interest. The simulation topology in Figure 8.5 did not include BB, because the assumption of the static network condition made it unnecessary to update resource negotiation between the DiffServ domain and RLM participants in the middle of the session. Thus, the BB was not required after it had finished resource negotiation at the time of RLM session establishment.

Simulation setup.

Figure 8.5. Simulation setup.

Table 8.3. Bit Rate and Priority Marking of Each Video Layer

 

Priority Marking

Video Layer

Bit Rate

Sender

Receiver 1

Receiver 2

Receiver 3

Layer 4

256Kbps

Red

Red

Yellow

Red

Layer 3

128Kbps

Red

Yellow

Green

Red

Layer 2

64Kbps

Yellow

Green

Green

Yellow

Layer 1

32Kbps

Green

Green

Green

Green

Table 8.3 shows the bit rate and priority level of each video layer. The bit rate of the video layer doubles as the level of the video layer goes up to emulate TCP-like bandwidth reduction during network congestion. Because we experimented with a hybrid priority-marking strategy involving both the sender and receivers, the priority-level assignment shown in Table 8.3 varied depending on the condition (i.e., the link bandwidth of RLM receivers) of the local DiffServ domain. For fair comparison, the join experiment result of the same RLM topology over a drop-tail queue in the best-effort Internet is included in Figure 8.10.

Join Experiment

Figure 8.6 shows the join experiment of Receiver 1, in which the original RED algorithm and our proposed RED extension were applied without any priority marking. Because a single RED does not provide service differentiation, only the avg_len confinement was applied as the RED extension, with other RED/RIO extensions in Section 8.3 being reserved. The RED queue parameter setting followed Floyd’s recommendation [142], which corresponded to the default RED settings in NS. The original RED parameter values were

Equation 8.7. 

and the extended RED parameter values were

Equation 8.8. 

The join experiment of Receiver 1 in RED with the optimal subscription level to be Layer 2.

Figure 8.6. The join experiment of Receiver 1 in RED with the optimal subscription level to be Layer 2.

The join experiment in the original RED was prone to significant errors because of the bulk packet loss, which was due to slow avg_len response. As a result, the subscription level of the RLM receiver faltered significantly without being able to maintain the optimal subscription level, as shown in Figure 8.6(a) and Figure 8.7(a). On the contrary, the enhanced AQM (with avg_len confinement only) protected the RED queue from the effect of the misbehavior of join experiment traffic. In addition, early drop was activated in a timely manner because avg_len was forced to be within its operational region, defined by min_th_avg and max_th_avg.

The join experiment of Receiver 3 in RED with the optimal subscription level to be Layer 1.

Figure 8.7. The join experiment of Receiver 3 in RED with the optimal subscription level to be Layer 1.

RLM receivers in a DiffServ network with enhanced AQM could maintain the optimal subscription level only with occasional join experiments to probe the available bandwidth, as shown in Figure 8.6(b) and Figure 8.7(b). However, as given in Figure 8.7(b), Receiver 3 finally over-reacted to the packet loss and stopped at 577 seconds, which implies that the improvement of the join experiment behavior was not perfect without priority marking.

Figure 8.8 shows the join experiment of Receiver 1 in DiffServ AF PHB with the overlapped configuration. The RIO parameters for each virtual queue were set to be overlapped as shown in Figure 8.3(a). They also followed Floyd’s recommendation [142] so that max_th = 3 * min_th, but the values of min_th and max_th of each color were set to be twice the values of Floyd’s recommendation based on the consideration that the queue should be shared by all three service classes. The values of the original RIO parameters for the overlapped configuration were

The join experiment of Receiver 1 in the DiffServ AF PHB overlapped configuration with the optimal subscription level to be Layer 2.

Figure 8.8. The join experiment of Receiver 1 in the DiffServ AF PHB overlapped configuration with the optimal subscription level to be Layer 2.

Equation 8.9. 

With regard to AQM enhancement, only the avg_len confinement and vir_lim differentiation were applied without weighted RIO because avg_len confinement and vir_lim differentiation were enough to achieve the desired join experiment behavior. The values of the extended RIO parameters were chosen to be

Equation 8.10. 

Figure 8.9 shows the join experiments of Receiver 1 in DiffServ AF PHB with the staggered configuration. The original RIO parameters for each virtual queue were chosen from one of NS DiffServ examples, and the values were chosen as follows.

The join experiment of Receiver 1 in the DiffServ AF PHB staggered configuration with the optimal subscription level to be Layer 2.

Figure 8.9. The join experiment of Receiver 1 in the DiffServ AF PHB staggered configuration with the optimal subscription level to be Layer 2.

Equation 8.11. 

Similarly, for AQM enhancement, the avg_len confinement and ver_lim differentiation were applied because these two extensions were sufficient to obtain the desired join experiment behavior. The values of the extended RIO parameters for the simulation were set as follows:

Equation 8.12. 

Without the proposed AQM enhancement, join experiments were neither stable nor robust in any configuration even though priority marking was enabled. For example, the join experiments over-reacted to bulk packet loss and under-subscribed for a period of time in the overlapped configuration [see Fig. 8.8(a)], or they under-reacted to packet loss and over-subscribed for a period of time in the staggered configuration [see Figure 8.9(a)]. However, when enhanced AQM was enabled, the join experiments became stable and robust in either configuration, which is comparable to the join experiments in the drop-tail queues of the Internet (see Figure 8.10). These experimental results confirm that both priority marking and enhanced AQM are necessary to properly treat join experiment traffic.

The join experiment in the best-effort Internet.

Figure 8.10. The join experiment in the best-effort Internet.

Packet Loss and Service Differentiability

Table 8.4 shows the packet loss during 600-second RLM sessions over the DiffServ network configurations experimented with so far. When priority marking was not applied, the packet loss ratio of the RED queue was worse than that of the drop-tail queue, whether enhanced AQM was enabled or not. When priority marking was applied without the proposed enhanced AQM, the packet loss ratio in DiffServ AF PHB was also worse than that in the best-effort IP network. However, when both priority marking and enhanced AQM were applied, the packet loss ratio was noticeably reduced regardless of the DiffServ network configuration. The packet loss results substantiate the claim that both priority marking and enhanced AQM are indispensable for supporting RLM-style multimedia applications in DiffServ networks.

Table 8.4. Packet Loss Results in RLM Experiments

 

Receiver 1

Receiver 2

Receiver 3

Layer 1

Layer 2

Layer 1

Layer 2

Layer 3

Layer 1

Drop-Tail (best-effort)

1.83%

1.67%

1.29%

0.88%

1.13%

3.99%

  

Original RED/RIO

No Marking

5.18%

5.60%

2.97%

2.93%

2.61%

28.13%[a]

  

Overlapped

4.20%

3.67%

2.23%

2.20%

1.97%

9.75%

  

Staggered

1.05%

0.66%

1.80%

2.11%

1.86%

7.76%

  

Extended RED/RIO

No marking

3.60%

4.08%

1.88%

1.70%

1.79%

8.92%[b]

  

Overlapped

1.20%

0.84%

0.25%

0.17%

0.23%

0.08%

  

Staggered

0.58%

0.67%

0.42%

0.27%

0.24%

0.04%

  

[a] Session stopped at 22.9 seconds.

[b] Session stopped at 577 seconds.

Conclusions

In this research, we proposed an enhanced network service model for layered video multicast applications in DiffServ networks that consists of enhanced AQM and hierarchical priority marking. We pointed out that the join experiment of RLM-style applications behaves like an unresponsive flow and conflicts with DiffServ AQM because of the average queue length used in traditional AQM. As a result, despite the priority delivery service offered by DiffServ networks, RLM performs more poorly in DiffServ networks than in the best-effort IP network. To solve this problem, we supplemented the original AQM with three sets of RED/RIO extensions to obtain an enhanced AQM model. The resulting scheme is generally applicable to service protection (i.e., it reinforces service differentiability) as well as to RLM traffic support in DiffServ networks. In addition, to take advantage of the priority service in DiffServ networks we proposed a priority-marking scheme that conforms to the priority-marking architecture of DiffServ networks for RLM video layers. Through a number of simulation experiments, we showed that the combination of the extended AQM model (i.e., RED/RIO extension) and hierarchical priority-marking model achieved the desired network service to support RLM traffic by improving join experiment stability and reducing packet loss rates.

In the near future, we would like to provide mathematical analysis of the performance of the enhanced AQM model to establish a better understanding of its strengths and limitations. It would also be interesting to study the latency issue of real-time video streaming for the RLM-based scheme in DiffServ networks.



[1] Original RIO is also referred to as RIO-C by Makkar et al. [141].

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

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