How Compira Solves the Last Mile for Streaming Media
Updated: Jul 8, 2020
We’ve discussed how Quality of Experience (QoE) is significant for consumption of OTT video streaming content in an earlier post. And, in another post, how existing solutions like CDNs, larger pipes, and faster internet connections aren’t enough to resolve this challenge, which hinges on Last Mile video content delivery.
This is what Compira Labs comes to address. Our innovative solution leverages the PCC technology, which was created by Compira co-founder Michael Schapira together with fellow researcher Brighten Godfrey and their respective teams at Hebrew University of Jerusalem and University of Illinois at Urbana Champaign. Our approach focuses strongly on last mile delivery, in order to overcome many of its unique challenges.
How PCC works to resolve Last Mile challenges
Most video is streamed today using Adaptive Bit Rate, in which video is divided up into small segments of several seconds each, and each segment is separately encoded in various resolutions. When the user starts playing a video, their device requests and downloads the first few segments of content, causing a time lag while the content buffers.
As the video plays, the user’s device continually requests new segments so that it always has the next segment ready to play as soon as the previous one finishes, avoiding the dreaded rebuffering wheel. When network conditions change, like if your neighbor begins a video conference that uses a significant amount of your shared bandwidth, the video client will detect that drag on the download time for each segment and request segments in a lower resolution.
This is the “adaptive” part of “adaptive bit rate,” because it adapts to the current download speed. The trouble is that network conditions can and do change dramatically and rapidly, faster than the video client can respond. As a result, sometimes the user receives a low-resolution segment when the network could have coped with a high-resolution one.
More problematically, the opposite can also happen: the video client asks for a high-res segment, but the network is too congested to handle it. The segment gets stuck on the way, and the consumer sees the rebuffering wheel. Rebuffering is a result of a “traffic jam” similar to the image below - the sheer number of cars coming in from different directions, together with the shape of the roadway leads to traffic slowdowns, and even complete stoppages.
The Limitations of TCP
TCP, or Transmission Control Protocol, was designed to facilitate the exchange of data between multiple points, a type of “network conversation.” However, it was never optimized for the delivery of 21st century streaming video, which was hardly considered at the time TCP was developed. TCP’s response to network congestion is very rigid, which makes its treatment of last mile video streaming problematic.
TCP’s main method to sense network conditions is packet loss. Whenever a TCP sender detects packet loss, regardless of what the reason might be, it responds by immediately cutting its sending rate in half, and then slowly growing again over time. Real life conditions on the Last Mile network change very rapidly and in an unpredictable way, which makes TCP’s hard-coded behavior suboptimal. Sometimes the optimal behavior might even be to increase the sending rate upon packet loss (if loss is not due to congestion), or reduce rates even before packet loss has occurred. This gives rise to a disconnect between the real-time state of the network and how TCP understands it. In the video streaming context this means that the video client frequently asks for a non-optimal segment resolution, which can lead to either rebuffering or low quality and in both cases consumer frustration.
The Compira Labs solution
Compira takes a totally different approach to Last Mile QoE. Our solution is flexible and responsive, unlike hard-coded TCP. It’s based on PCC (Performance oriented Congestion Control) and deployed at the edge nodes of the CDN (the edge of the Last Mile network). Because the technology is server-side, consumers don’t need to make any changes, configure any settings, and won’t even know that a new technology has been deployed. All they will see is a marked improvement in their video quality of experience.
PCC's approach is very different than that of TCP. First it uses more network sensors than just packet loss. Second, it treats the sending of data as a series of micro-experiments. For each experiment, PCC tries out a certain send rate for a very short period of time, measuring the network feedback using metrics such as loss rate, latency, jitter etc. Every micro-experiment is graded with a utility rating that combines these metrics and reflects how ‘successful’ this experiment was. The results of the recent experiments are then fed into an online learning algorithm, which uses the results to determine the rate for the next micro-experiment.
This solution is both adaptive and smart, learning from each micro-experiment in order to automatically adapt the rate to the actual characteristics of different environments. By reassessing network conditions every few dozen milliseconds, rather than every few seconds (like ABR clients do), and measuring the direct impact of its actions, rather than using hard-coded reactions (like TCP), the Compira solution achieves much better network utilization and superior video streaming QoE.
The proof of the solution is in the data.
This graph shows the results of an experiment sending traffic over a network with a single bottleneck link. This link’s parameters (Bandwidth, RTT, packet loss rate) change every 5 seconds. To explain the findings:
The dashed green line shows the optimal rate in hindsight, meaning the rate that would have been used given full knowledge of the network circumstances.
The orange line at the bottom is the TCP cubic rate (TCP cubic is the default TCP congestion control algorithm of Linux and the one most commonly used ).
The blue line is PCC, which comes much closer to the potential optimal rate (the dashed green line) than TCP Cubic.
What does it mean in terms of Quality of Experience? See for yourself in the video below, which compares side-by-side, the same video delivered by both TCP and PCC.
Compira Labs presents a next-gen solution for last mile video streaming quality of experience
Compira Labs’ QoE optimization solution is already in use by leading OTT providers around the world, delivering high quality video streaming experience to their consumers. If you’re interested in learning more about the Compira solution, contact us!