The Web browser is a killer app on mobile devices such as
smartphones. However, the user experience of mobile Web
browsing is undesirable because of the slow resource loading. To
improve the performance of Web resource loading, caching has
been adopted as a key mechanism. However, the existing passive
measurement studies cannot comprehensively characterize the
performance of mobile Web caching. For example, most of these
studies mainly focus on client-side implementations but not
server-side configurations, suffer from biased user behaviors, and
fail to study “miscached” resources. To address these issues, in
this paper, we present a proactive approach for a comprehensive
measurement study on mobile Web cache performance. The key
idea of our approach is to proactively crawl resources from
hundreds of websites periodically with a fine-grained time
interval. Thus, we are able to uncover the resource update history
and cache configurations at the server side, and analyze the cache
performance in various time granularities. Based on our collected
data, we build a new cache analysis model and study the upper
bound of how high percentage of resources could potentially be
cached and how effective the caching works in practice. We
report detailed analysis results of different websites and various
types of Web resources, and identify the problems caused by
unsatisfactory cache performance. In particular, we identify two
major problems – Redundant Transfer and Miscached Resource,
which lead to unsatisfactory cache performance. We investigate
three main root causes: Same Content, Heuristic Expiration, and
Conservative Expiration Time, and discuss what mobile Web
developers can do to mitigate those problems.