Evaluating HTTP/1.1 and HTTP/2 performance with dependency graph properties
Author(s)
Hsu, Eeway Erika
DownloadFull printable version (1.884Mb)
Other Contributors
Massachusetts Institute of Technology. Department of Electrical Engineering and Computer Science.
Advisor
Hari Balakrishnan.
Terms of use
Metadata
Show full item recordAbstract
This thesis presents an evaluation of web performance under HTTP/1.1 and HTTP/2. It takes a novel approach to compare the two protocols and understand the performance differences between them. It analyzes each protocol's web performance with respect to its web page dependency graph, identifying key graph properties and the relationships between those properties and the resultant performance changes. To do this, we present Pagescope, a tool that visualizes the relationship between web page properties and the improvement provided. It first records a corpus of web pages by emulating a web client. It then retrieves data from the resulting network requests and responses. It processes the data to create a dependency graph and extracts properties used in classifying these web pages. We identify the number, size and cacheability of resources, the number of distinct origins, the number of redirects, the distribution of resource priorities, the depth and breadth of the page dependency graph, the number of connections per origin, and the number of HTTPS clusters, as classification properties. These pages are then loaded under various network configurations, and the load times recorded. The page properties and load times are stored in a database. We find trends between the classifications and page load times. As with some previous studies, we find that HTTP/2 without server push does not consistently outperform HTTP/1.1 [35, 9, 7]. Instead of explaining the results through network condition variations, we control that aspect and explain performance differences through variations in web page dependency graph properties. We see that there are optimal per property ranges with which a page best renders the benefits of HTTP/2. Contradictory to the naive hypothesis, HTTP/2 performance deteriorates with above average numbers of resources. Related properties - the number of resources, the number of origins, and the maximum breadth follow the same trends. As the number of HTTPS clusters on a page increases, HTTP/2 performance is overtaken by HTTP/1.1. Web pages with an above average number of resources and HTTPS clusters tend to be unnecessarily complex. These results suggest that HTTP/2 has an overhead which is only negated by well-designed pages that can utilize the new features. Guidelines for such pages can be found on PageSpeed Insights [24].
Description
Thesis: M. Eng., Massachusetts Institute of Technology, Department of Electrical Engineering and Computer Science, 2017. This electronic version was submitted by the student author. The certified thesis is available in the Institute Archives and Special Collections. Cataloged from student-submitted PDF version of thesis. Includes bibliographical references (pages 65-67).
Date issued
2017Department
Massachusetts Institute of Technology. Department of Electrical Engineering and Computer SciencePublisher
Massachusetts Institute of Technology
Keywords
Electrical Engineering and Computer Science.