Wednesday, August 23, 2017

Technical Session 5 Paper 3: Disk | Crypt | Net: rethinking the stack for high-performance video streaming

Authors:  Ilias Marinos, Robert N.M. Watson, Mark Handley and Randall R. Stewart

Presented by: Ilias Marinos (Cambridge)
Ilias starts the presentation by emphasizing the increase in popularity of video traffic in the internet, stating it accounts 50% of all North American traffic. He switches the focus from video popularity to how most of the video being delivered is now encrypted. The authors study the various kernel optimizations made by Netflix and show using the figure below how the throughput for encrypted video is 30% less for when all the content is in the buffer cache compared to when all the data is fetched from disk . The authors state using the buffer cache entirely causes core saturation leading to drop in performance. The reason disk is better is due to the decrease in storage latencies due to SSDs. 

This motivates the author to build a system called Atlas which ideally does not use any memory and fetches the content straight from disk to the NICs. Atlas puts SSDs directly in TCP control loop by processing disk reads to completion and then transmiting. Atlas uses diskmap (kernel bypass framework) to achieve this design. Ilias states that this design is slightly far off from the ideal case due to diskmap limitations.

 Atlas outperforms the Netflix stack by 15% for unencrypted and 50% for encrypted traffic in terms of throughput with half the number of cores used by Netflix.  The number of memory reads is half for each packet sent. Their solution does involve some memory use particularly due to inefficient re-use of buffer cache limited by diskmap.

Question & Answers: 

Q. Did you consider cache partitioning? offloading encryption on to NICs? What would be the next important optimization?
A: Offloading to NICs would help but the next thing for us to look would be how we can get pass the dismap limitations to re-use buffers more efficiently then waiting for the content to be copied to and from the memory due to buffer evictions. 


  1. Excellent .. Amazing .. I’ll bookmark your blog and take the feeds also…I’m happy to find so many useful info here in the post, we need work out more techniques in this regard, thanks for sharing. sub zero repair near me

  2. Positive site, where did u come up with the information on this posting?I have read a few of the articles on your website now, and I really like your style. Thanks a million and please keep up the effective work. Hack APP Data APK

  3. Thanks for the blog loaded with so many information. Stopping by your blog helped me to get what I was looking for. Technical Action Group IT Service Company