Miner | Salzburg Research

Welcome to MINER

MINER, the Modular Infrastructure for Networked Experimentation and Research, is a programmable software platform that supports users in conducting distributed experiments.

Motivation

Distributed performance evaluation and testing often require the orchestrated use of a set of tools on remote nodes. A profound evaluation demands the analysis of a significant number of different setups and naturally all experiments need to be stored persistently. Ideally, the complete set of experiments can be repeated at a later time with (virtually) no human effort.

The “manual” execution of such experiments is a tedious task. The user has to handle the large diversity related to the configuration of tools and their results. In some way it must be ensured that all tools are available at the measurement points, that they initialize correctly, and that errors arising during the execution are handled gracefully. Without any form of a supporting command and control system the user needs to carry out many (error prone) execution steps and with each new experiment most of this work has to be repeated. This approach clearly fails to scale well.

Introduction

The main objective of MINER is to support users in the task of carrying out distributed experiments in communication networks. To this end, MINER is a programmable platform that significantly simplifies the orchestrated usage of arbitrary tools via a unified application programming interface (API).

MINER enables a user to:

  • define (complex) experiments
  • schedule and control the execution of experiments
  • retrieve results and detailed execution logs

While MINER handles the distribution, coordination, and persistent storage of experiments, the activities (the “real work” if you want) of an experiment are implemented by MinerTools.  A MinerTool is a module that can be added to the MINER platform through a plugin mechanism. Practically any code can be turned into a MinerTool.  Often, a MinerTool is a (thin) wrapper of an existing tool.

Usage

Originally, MINER has been primarily used for performance evaluation in communication networks, e.g. to study quality of service (QoS) properties. Meanwhile, the platform has been successfully employed for other tasks, e.g. system and reliability tests.  Please see the use cases for more real-world examples.