Automating experimentation on distributed testbeds

  • Authors:
  • Yanyan Wang;Matthew J. Rutherford;Antonio Carzaniga;Alexander L. Wolf

  • Affiliations:
  • University of Colorado, Boulder, CO;University of Colorado, Boulder, CO;University of Colorado, Boulder, CO and University of Lugano, Lugano, Switzerland;University of Colorado, Boulder, CO and University of Lugano, Lugano, Switzerland

  • Venue:
  • Proceedings of the 20th IEEE/ACM international Conference on Automated software engineering
  • Year:
  • 2005

Quantified Score

Hi-index 0.00

Visualization

Abstract

Engineering distributed systems is a challenging activity. This is partly due to the intrinsic complexity of distributed systems, and partly due to the practical obstacles that developers face when evaluating and tuning their design and implementation decisions.This paper addresses the latter aspect, providing techniques for software engineers to automate the experimentation activity. Our approach is founded on a suite of models that characterize the distributed system under experimentation, the testbeds upon which the experiments are to be carried out, and the client behaviors that drive the experiments. The models are used by generative techniques to automate construction of the workloads,as well as construction of the scripts for deploying and executing the experiments on distributed testbeds. The framework is not targeted at a specific system or application model, but rather is a generic, programmable tool. We have validated our approach by performing experiments on a variety of distributed systems. For two of these systems, the experiments were deployed and executed on the PlanetLab wide-area testbed.Our experience shows that this framework can be readily applied to different kinds of distributed system architectures,and that using it for meaningful experimentation,especially in large-scale network environments, is advantageous.