Speeding up Tor with SPDY (Master's Thesis)

Prediction algorithm for SPDY server push

(see also: Using SPDY with Tor via proxies)

SPDY is a rather new protocol which is an alternative to HTTP. It was designed to address inefficiencies in the latter and thereby improve latency and reduce bandwidth consumption.

In [1], we focus on the SPDY server push feature which allows servers to send multiple responses to a single request for reducing latency and traffic on loading web pages. We propose a prediction algorithm for employing push at SPDY servers and proxies. The algorithm makes predictions based on previous requests and responses and initially does not know anything about the data which it will push.

Finally, evaluations of the proposed push prediction algorithm are given for emphasizing the possible gain of employing it at SPDY reverse and forward proxies.

Download

Some of the data sets used in [1] for evaluating the algorithm, as well as a simple implementation in PHP, are available for download here. Please note that using the data sets or the implementation is subject to the condition that you cite [1] as a source where appropriate.

Data setDownloadFormatNote
Isp1 2 3 4 5Combined Log FormatThe third field is a timestamp in milliseconds. It is not considered by the implementation. Source and requested path are integers. See [1] for more information about the data.
Proxy1proxy1.log.gzCommon Log FormatEach host is presented by a unique integer. The path after the host is an integer based on both the original host and path. When the path is '/' or '/favicon.ico', it stays in clear form. See the sorce code and [1] for more information about the data.
Proxy2proxy2.log.gzCommon Log FormatEach host is presented by a unique integer. The path after the host is an integer based on both the original host and path. When the path is '/' or '/favicon.ico', it stays in clear form. See the sorce code and [1] for more information about the data.

Source code: spdy-push-prediction.tar.gz

Contact

Andrey Uzunov <andrey.uzunov at online6.eu>


[1] https://gnunet.org/sites/default/files/uzunov2013torspdy.pdf or ../spdypush/thesis.pdf