Kewin Dousse

http2-demo

Duration
-
Technologies
http2, bash, apache
Repository
github.com/Protectator/http2-demo

http2-demo is a tool to benchmark and compare the performances of HTTP2.

Context

http2-demo is a tool I built for my Bachelor’s final project. The goal was to study the HTTP/2 protocol, come with an idea to implement related to either the mechanisms of HTTP/2, or the performances. I chose to build a tool to benchmamrk existing websites.

The tool is a web app that downloads an existing web page, and then serves it to the client using three different protocol versions sequentially : HTTP/1.1, HTTP/2 (without PUSH) and finally HTTP/2 (with PUSH). Then, the page compares the time necessary to load each page.

The full report is available in french on academia.edu.

Model

The tool consists of a webserver that will download other websites’ index pages. First, the user enters a web page to benchmark using the HTML form. Then, the server downloads a copy of the index page and all needed resources. It redirects the client to the “benchmark page”, which contains a script that will query three times the same copy of the page, but using three different protocols. The script looks at the time taken by each protocol, and displays a table summarizing the results.

Result

The project can be downloaded and ran on your own server. Please note that this is a experimental project, and should not be deployed on a publicly accessible server, as security isn’t addressed at all.