Improving cost and performance for video downloads

Multi-Server Video Delivery

High-quality, just-in-time video delivery is a challenging problem because network performance can be unpredictable and cost margins are extremely tight. Current solutions often fall short of users expectations. Load-balancing across servers and the use of multiple network paths can be effective in overcoming the type of resource variability problems that video delivery confronts. However, their impact on content provider and CDN cost is unclear. In this paper, we look at combining the use of multipaths and multiple servers (MuMS) to deliver stable video delivery performance at reasonable costs to the CDNs. Our results show that by utilizing a QoE aware scheduler algorithm users can see up to 100% improvement in QoE related metrics compared to single server approaches. We are currently combining these clients with a server selection algorithm at the content delivery networks that allows for a tradeoff between cost and performance.

Contributions

As part of this project we first experimented with the viability of using MPTCP to improve video delivery performance. However, we found that there were undesirable interactions between the MPTCP scheduler and its congestion control algorithm. Namely our contributions in this space were:

Unintended Consequences of MPTCP’’s Design

Using the Mininet emulator, we studied the impact of the choice of initial path in establishing an MPTCP connection. We uncovered some surprising outcomes – that the choice of the initial path can not just have a lasting impact on MPTCP performance, but that in some cases, starting with an inferior path (with higher RTT) can improve overall throughput.

We developed a stylized analytical model to investigate this behavior based on the partitioning of MPTCP’’s congestion control into two distinct phases. Using this model and numerical analyses, we elucidated and validated empirical observations, and identified the non-linear coupling between paths introduced by MPTCP’’s congestion control as a major contributor.

Due to the above problems we decided to use a different design for “multi path” video downloads

A Scheduling Algorithm For Multi-Server Video Downloads

We quantified the benefits of multi server clients through a detailed evaluation on the Emulab testbed, and showed how even a basic use of multiple servers (and paths) can improve users’’ QoE compared to single server approaches.

We designed an application-layer solution that gracefully handles out-of-order delivery, load-balances across servers while maximizing throughput, and provides opportunistic retransmissions of video content.

We designed and implemented a scheduler that further improves QoE by minimizing rate variability while maintaining rate guarantees, and demonstrate its benefits over alternative schedulers on Emulab.

People

Portrait of Behnaz Arzani

Behnaz Arzani

Principal Researcher