Optimizing Video Performance (joint work with Akamai)
Currently, I have the wonderful opportunity to work with folks at Akamai, the world's largest CDN, to optimize video performance.
Performance Characterization of a Commercial Video Streaming Service (joint work with Yahoo Research)
ACM IMC 2016, paper, IMC slides, BibTex
Despite the growing popularity of video streaming over the Internet, problems such as re-buffering and high startup latency continue to plague users.
In this work, we present an end-to-end characterization of Yahoo's video streaming service, analyzing over 500 million video chunks downloaded over a two-week period. We gain unique visibility into the causes of performance degradation by instrumenting both the CDN server and the client player at the chunk level, while also collecting frequent snapshots of TCP variables from the server network stack. This is the first end-to-end study at large scale about video streaming. Using our unique dataset, we uncover a range of performance issues at the server, network, and client for the fist time. Looking across chunks in the same session, or destined to the same IP prefix, we see how some performance problems are relatively persistent.
Our findings were used by Yahoo to optimize performance for NFL Live, the first global streaming of an NFL game, with more than 15 million unique viewers.
Dapper: Data Plane Performance Diagnosis of TCP
submitted to ACM SOSR, paper
With more applications moving to the cloud, cloud providers need to diagnose performance problems in a timely manner. Offline processing of logs is slow and inefficient, and instrumenting the end-host network stack would violate the tenants' rights to manage their own virtual machines (VMs).
Dapper analyzes TCP performance in real time near the end-hosts (e.g., at the hypervisor, NIC, or top-of-rack switch) and determines whether a connection is limited by the sender (e.g., a slow server competing for shared resources), the network (e.g., congestion), or the receiver (e.g., small receive buffer). Emerging edge devices now offer flexible packet processing at high speed on commodity hardware, making it possible to monitor TCP performance in the data plane, at line rate. We used P4 to prototype Dapper in the dataplane and diagnose connections at line-rate.
You can read more about Dapper here
Real-time Diagnosis of TCP Performance in Clouds
2013 ACM CoNEXT student workshop paper poster
Enterprises running critical applications in the cloud expect
their providers to offer good, predictable performance. However,
existing TCP monitoring tools either run offline, preventing
real-time adaptation to performance problems, or
require modification to the tenant’s VMs, which raises trust
issues. In this work, we present an online tool that is non-intrusive in an IaaS cloud, and accurately
detects the cause of TCP performance problems by analyzing connections in the hypervisor.