TY - GEN
T1 - Alohamora
T2 - 18th USENIX Symposium on Networked Systems Design and Implementation, NSDI 2021
AU - Kansal, Nikhil
AU - Ramanujam, Murali
AU - Netravali, Ravi
N1 - Funding Information:
We thank Harsha Madhyastha, Vaspol Ruamviboonsuk, and Anirudh Sivaraman for their valuable feedback on earlier drafts of this paper. We also thank our shepherd, Aruna Balasubramanian, and the anonymous NSDI reviewers for their constructive comments. This work was supported in part by NSF grant CNS-1943621.
Funding Information:
Acknowledgements. We thank Harsha Madhyastha, Vaspol Ruamviboonsuk, and Anirudh Sivaraman for their valuable feedback on earlier drafts of this paper. We also thank our shepherd, Aruna Balasubramanian, and the anonymous NSDI reviewers for their constructive comments. This work was supported in part by NSF grant CNS-1943621.
Publisher Copyright:
© 2021 by The USENIX Association.
PY - 2021
Y1 - 2021
N2 - Despite their promise, HTTP/2's server push and preload features have seen minimal adoption. The reason is that the efficacy of a push/preload policy depends on subtle relationships between page content, browser state, device resources, and network conditions-static policies that generalize across environments remain elusive. We present Alohamora, a system that uses Reinforcement Learning to learn (and apply) the appropriate push/preload policy for a given page load based on inputs characterizing the page structure and execution environment. To ensure practical training despite the large number of pages served by a site and the massive space of potential policies to consider for a given page, Alohamora introduces several key innovations: a page clustering strategy that favorably balances push/preload insight extraction with the number of pages required for training, and a faithful page load simulator that can evaluate a policy in several milliseconds (compared to 10s of seconds with a real browser). Experiments across a wide range of pages and mobile environments (emulation and real-world) reveal that Alohamora accelerates page loads by 19-61%, provides 3.6-4× more benefits than recent push/preload systems, and properly adapts to never degrade performance.
AB - Despite their promise, HTTP/2's server push and preload features have seen minimal adoption. The reason is that the efficacy of a push/preload policy depends on subtle relationships between page content, browser state, device resources, and network conditions-static policies that generalize across environments remain elusive. We present Alohamora, a system that uses Reinforcement Learning to learn (and apply) the appropriate push/preload policy for a given page load based on inputs characterizing the page structure and execution environment. To ensure practical training despite the large number of pages served by a site and the massive space of potential policies to consider for a given page, Alohamora introduces several key innovations: a page clustering strategy that favorably balances push/preload insight extraction with the number of pages required for training, and a faithful page load simulator that can evaluate a policy in several milliseconds (compared to 10s of seconds with a real browser). Experiments across a wide range of pages and mobile environments (emulation and real-world) reveal that Alohamora accelerates page loads by 19-61%, provides 3.6-4× more benefits than recent push/preload systems, and properly adapts to never degrade performance.
UR - http://www.scopus.com/inward/record.url?scp=85106193864&partnerID=8YFLogxK
UR - http://www.scopus.com/inward/citedby.url?scp=85106193864&partnerID=8YFLogxK
M3 - Conference contribution
AN - SCOPUS:85106193864
T3 - Proceedings of the 18th USENIX Symposium on Networked Systems Design and Implementation, NSDI 2021
SP - 269
EP - 284
BT - Proceedings of the 18th USENIX Symposium on Networked Systems Design and Implementation, NSDI 2021
PB - USENIX Association
Y2 - 12 April 2021 through 14 April 2021
ER -