Caching Doesn't Improve Mobile Web Performance (Much)

A recent NSDI paper [1] reported that increasing the cache hit ratio for an HTTP proxy from 22% to 32% improved median page load time (PLT) for mobile clients by less than 2%. We argue that there are two main causes for this weak improvement: objects on the critical path are often not cached, and the limited computational power of mobile devices causes computational delays to comprise a large portion of the critical path. Both of these factors were, in fact, outlined by a previous analysis of desktop web performance [2]. However, we (as the authors of the HTTP proxy [1]) did not properly understand the analysis and could have saved ourselves substantial engineering costs if we had. We therefore argue for the need to highlight this prior analysis, and extend the analysis to include mobile devices with slow CPUs, precise cache hit ratios, and a controlled reproduction of the HTTP proxy caching results [1]. In the extreme case of a perfect cache hit ratio, desktop page load times are improved notably by 34% compared to no caching, but mobile page load times only improve by 13% in the median case. We extract a back-of-envelope performance model from these results to help understand their underlying causes.

[1]  Eric A. Brewer,et al.  Reducing WWW Latency and Bandwidth Requirements by Real-Time Distillation , 1996, Comput. Networks.

[2]  Chita R. Das,et al.  A novel caching scheme for improving Internet-based mobile ad hoc networks performance , 2006, Ad Hoc Networks.

[3]  Aruna Balasubramanian,et al.  An In-depth Study of Mobile Browser Performance , 2016, WWW.

[4]  Anja Feldmann,et al.  Revisiting Cacheability in Times of User Generated Content , 2010, 2010 INFOCOM IEEE Conference on Computer Communications Workshops.

[5]  Pablo Rodriguez,et al.  Improving the WWW: Caching or Multicast? , 1998, Comput. Networks.

[6]  Jia Wang,et al.  A survey of web caching schemes for the Internet , 1999, CCRV.

[7]  Gustavo Alonso,et al.  Analysis of Caching and Replication Strategies for Web Applications , 2007, IEEE Internet Computing.

[8]  Zhen Wang,et al.  Why are web browsers slow on smartphones? , 2011, HotMobile '11.

[9]  Dan Pei,et al.  WWW 2009 MADRID! Track: Performance, Scalability and Availability / Session: Performance Network-Aware Forward Caching , 2022 .

[10]  Lu Wang,et al.  Smart caching for web browsers , 2010, WWW '10.

[11]  Zhen Wang,et al.  How far can client-only solutions go for mobile browser speed? , 2011, WWW.

[12]  Philip S. Yu,et al.  Latency-sensitive hashing for collaborative Web caching , 2000, Comput. Networks.

[13]  Leo A. Meyerovich,et al.  Fast and parallel webpage layout , 2010, WWW '10.

[14]  Li Fan,et al.  Summary cache: a scalable wide-area web cache sharing protocol , 2000, TNET.

[15]  Martin F. Arlitt,et al.  Improving Proxy Cache Performance: Analysis of Three Replacement Policies , 1999, IEEE Internet Comput..

[16]  Guohong Cao,et al.  A scalable low-latency cache invalidation strategy for mobile environments , 2000, MobiCom '00.

[17]  David A. Patterson,et al.  Latency lags bandwith , 2004, CACM.

[18]  Sandy Irani,et al.  Cost-Aware WWW Proxy Caching Algorithms , 1997, USENIX Symposium on Internet Technologies and Systems.

[19]  Vivek Sarkar,et al.  Partitioning and scheduling parallel programs for execution on multiprocessors , 1987 .

[20]  Guohong Cao A Scalable Low-Latency Cache Invalidation Strategy for Mobile , 2003, IEEE Trans. Knowl. Data Eng..

[21]  Patrick Killelea Web performance tuning - speeding up the web , 1998 .

[22]  David Wetherall,et al.  Demystifying Page Load Performance with WProf , 2013, NSDI.

[23]  Steve Souders High-performance web sites , 2008, CACM.

[24]  Georg Carle,et al.  Analyzing caching benefits for YouTube traffic in edge networks — A measurement-based evaluation , 2012, 2012 IEEE Network Operations and Management Symposium.

[25]  Matt Welsh,et al.  Flywheel: Google's Data Compression Proxy for the Mobile Web , 2015, NSDI.

[26]  Guohong Cao,et al.  Proactive Power-Aware Cache Management for Mobile Computing Systems , 2002, IEEE Trans. Computers.