Empirical Analysis of ABR streaming over QUIC.

Aniketh Girish

Dr. Subhasri Duttagupta

Collaboration with:


Max Planck Institute's Internet Architecture group, Germany

Hasselt University, Belgium

gnuTLS community

videoLAN community


A quick news!

ACM students research competition in SOSP'19, Toronto, Canada

What is QUIC?

Research interest: 

0-RTT connection setup

Low Latency

Head of line blocking

Within the scope of this thesis!

QUIC TLS API for crypto in gnuTLS

Custom QUIC version integration in VLC for better streaming experience.

Work update: Mini Project!

Exposing QUIC TLS APIs in gnuTLS

  1. A callback to notify the key (epoch) change
  2. A callback to write a Handshake messsage, when it is being sent
  3. A callback to write an Alert messasge, when it is being sent
  4. A callback to flush the message.
  5. A function to push data received from the peer to the TLS layer
 Advanced issue found
 Advanced issues found
 Advanced issues found

Initial QUIC setup

ngtcp2 + ngHTTP3

Work update: Mini Project!

Updates after Mini Project

1) quicsy: A HTTP3/QUIC tool devised.

It does HTTP/3 request-response pair.

2) Segmentation: segments and manifest created for a mp4 file. Scripts to do encoding/segmentation were written

3) Host the segments in a web server

4) Mininet script to emulate a topology for controlled network experiments  

5) Work in progress: HTTP/3 and QUIC implementation in VLC 

1) Quicy: A HTTP3 tool

  • Based on ngtcp2 + nghttp3
  • A stand-alone network module
  • Can send and recieve any size of data


2) Segmentation: Flow

2) Segmentation: HLS Streaming

2) Segmentation: DASH Streaming

2) Segmentation: Process


3) Host the segments in a web server

ABR streaming test with VLC

Bug in VLC found, frames being dropped.

Literature reads:

Te-Yuan Huang et al. A Buffer-Based Approach to Rate Adaptation: Evidence from a Large Video Streaming Service

Mengbai Xiao et al. DASH2M: Exploring HTTP/2 for Internet Streaming to Mobile Devices

Sheng Wei et al. Low Latency Live Video Streaming over HTTP 2.0

Anatoliy Zabrovskiy et al. Multi-Codec DASH Dataset

Stefan Lederer et al. Dynamic Adaptive Streaming over HTTP Dataset

By the next review:

Complete Mininet scripts

Evaluation of existing ABR over HTTP/1.1 and HTTP/2 in VLC

Simple live streaming over HTTP application using any ffmpeg or libav library to test our quicsy tool

Wrap up the VLC implmentation of HTTP/3 and QUIC.

Live streaming over HTTP application using any ffmpeg or libav library to test our quicsy tool

Finally, What's proposed...?

In  Custom QUIC extension (QUIC-tweaked) ....?

  • Selective Reliable Transport

  • Deadline Awareness

  • Message-Oriented Abstraction

  • Forward Error Correction

  • I-P-B frame handling

  • Head-Of-Line blocking resilience

[WIP]: A complete documentation is available at: https://synackd.gitbook.io/research/

[WIP]: Code and scripts available at: https://github.com/Aniketh01/quicsy

Thank You!


Made with Slides.com