Distributed Web Systems Performance Forecasting Using Turning Bands Method
Adaptive applications, such as real-time multimedia streaming applications, are increasingly using TCP as their underlying transport protocol. To adapt the content, an elastic application needs a prediction of the future available bandwidth. Unfortunately, the socket API does not allow an application to get information from the transport layer. Therefore, this paper proposes an approach where a monitor collects packet information from the network interface, creates a time series by sampling the packet information, and uses prediction models to assess the future available bandwidth. We collected more than 55000 raw TCP traces among various hosts in the Internet, sampled them at intervals from 0.01 to 5 seconds, and use standard linear and autoregressive prediction models, including Bestmean, AR, MA and ARMA, to determine the normalized prediction error. We find that the prediction error varies significantly as a function of the above parameters. We therefore derive a simple criterion that allows an adaptive application to dynamically adjust the prediction parameters to reduce the prediction error. We evaluate the benefit of this criterion on the number of correctly received frames at the client, which corresponds to the perceived video quality by the user.