Created by researchers from MIT’s Computer Science and Artificial Intelligence Laboratory (CSAIL) and Harvard University, the new system promises to decrease page-load times by more than 30 percent -- with the potential for reductions of almost 60 percent -- by minimizing the number of network "trips" the browser must make.
When asked to load a given Web page, the browser must reach across the network to fetch objects such as HTML files, JavaScript source code and images. Sometimes, thanks to what are known as dependencies, evaluating one object requires fetching and evaluating others as well. A browser might have to execute a file’s JavaScript code in order to discover more images to fetch and render, for example.
“It can take up to 100 milliseconds each time a browser has to cross a mobile network to fetch a piece of data,” says doctoral student Ravi Netravali, lead author on a paper he'll present at next week’s Usenix Symposium on Networked Systems Design and Implementation.
"As pages increase in complexity, they often require multiple trips that create delays that really add up," Netravali added. "Our approach minimizes the number of round trips so that we can substantially speed up a page’s load time.”
Polaris automatically tracks all of the interactions among objects, which can number in the thousands for a single page, and creates a “dependency graph” for that page, enabling objects to be loaded in the optimal order for fastest speed overall.
Polaris is particularly well-suited for large and complex websites as well as mobile networks, because they tend to have larger delays than wired networks do, the researchers said.
Researchers evaluated the system across a range of network conditions on 200 of the world’s most popular websites, including ESPN.com, NYTimes.com and Weather.com.