This thesis emphasizes the need for congestion control mechanisms for multimedia flows requiring both low jitter and low end-to-end delays. Such mechanisms must not only satisfy the user in terms of high Quality of Experience (QoE), but also ensure that the underlying network is stable. It is important that the network does not end up in a thrashing state, where resources are wasted on work that does not contribute to the user’s QoE.
From historically being a transport level mechanism, congestion control functionality for multimedia applications is now located in several layers of the protocol stack. Inelastic applications without the ability to adapt its sending rate require network level support in order to avoid thrashing, in form of a Quality of Service (QoS) architecture. On the other hand, elastic applications can use end-to-end congestion control in order to reach the same goal. Congestion control functionality for such rate adaptive sources can be divided into a transport level component, and an application level component. The former ensures that the flows do not exceed the estimated available network capacity, maintaining fairness and network stability. The latter ensures that the QoE is maximized given the restrictions of the underlying transport level congestion control. The thesis argues that the two components should be implemented separately in order avoid a myriad of protocols with interfering regulation schemes.
The possibility of using the recently standardized Pre-Congestion Notification (PCN) architecture in dynamic mobile ad-hoc network (MANET) environments is studied. Due to the limited bandwidth and varying conditions, QoS mechanisms, especially admission control, are important when sending inelastic multimedia flows over a MANET. PCN admission control is originally designed for wired DiffServ networks. The thesis shows however that with some modifications, PCN is an alternative. Most importantly, the use of probing on ingress-egress paths which have been idle over a longer period significantly reduces the amount of signaling. In addition, the probing provides fresh information about the congestion status on a path, which is imperative when the admission decision is being made.
Within the area of transport level congestion control, the use of packet pairs for estimating the available bandwidth is studied. The packet pair algorithm was originally designed for estimating the bottleneck link capacity, while later, it has been modified to also take into account the cross traffic. By using existing video packets as packet pairs, an estimate of the available bandwidth is achieved without inserting any extra packets in the network. Unfortunately, the estimate often suffers from inaccuracies. Therefore, a congestion control algorithm was proposed, named Packet Pair Assisted Congestion Control (PPACC), which uses the packet pair estimates merely as guidelines instead of directly controlling the sending rate. PPACC is compared to TCP-Friendly Rate Control (TFRC), and simulations shows that the proposed protocol outperforms TFRC, with significantly lower packet loss, delay and jitter. PPACC is not designed to be Transmission Control Protocol (TCP)-friendly, so it is not a candidate for large scale use over the open internet. However, it its use is more attractive in isolated environments such as within a DiffServ Assured Forwarding (AF) class. This way, it may be possible to serve flows with strict requirements on delay and jitter without adding the complexity of per flow admission control.
The thesis also contributes within the area of application level congestion control. It is pointed out that it is generally a bad idea to combat congestion loss with fixed forward error correction (FEC). FEC is often seen as an attractive alternative to retransmission when there are strict delay and jitter requirements. Unfortunately, the inserted redundancy represents a load increase which may lead to more severe congestion and result in an even larger effective packet loss observed by the application. It is however shown that by assigning a lower priority to FEC packets, this effect could be reduced.
The above findings lead to the studies on shadow probing. When a rate- adaptive source using scalable (layered) video adds an enhancement layer, the increase in sending rate may be significant. Consequently, congestion loss may follow. The thesis proposes to use two shadow probing techniques in order to reduce the impact of such loss. A probing period is introduced before the actual addition of the new layer. First, the shadow layer can be filled with redundancy from the already established layers, and thereby lowering the probability of quality degradation of the flow. The second technique instead aims at protecting the established layers of the competing flows, by assigning a lower priority to the probe layer (e.g. FEC packets).
The probing scheme was integrated with an application-level rate control (ARC) operating between the video application and the transport level congestion control (TFRC was used in this study). The ARC’s task is to maximize QoE while obeying to the rate limit obtained from the transport layer. It is emphasized in the thesis that high variations in quality have a negative impact on QoE. For this reason, a strong focus was kept at avoiding being too aggressive when adding enhancement layers, even when the underlying transport layer reported available capacity. Simulations results show that the proposed shadow probing techniques indeed improve the performance of layered video flows with high delay and jitter requirements.
Overall, the thesis provides insight into the broad research area of congestion control. Several issues are highlighted, and solutions are proposed. Throughout the thesis, the focus is on maximizing the quality of multimedia flows with strict delay and jitter requirements, and doing this while taking into account the stability of the underlying network
Trondheim NTNU, 2013. , 164 p.
congestion control, multimedia, admission control, qos, qoe, diffserv, tfrc, tcp, transport protocol, forward error correction, probing, bandwidth probing, manet