Introduction

OML is a software framework for measurement collection.

What does that mean? Well, imagine you have a bunch of devices that are recording some sort of measurement data, and they are all connected to a network. OML gives you a way to collect all the measurement data being recorded by the devices to a central location, via the network.

What sort of measurements can OML handle? OML is quite flexible -- it can be used to collect data from any source, such as statistics about network traffic flows, CPU and memory usage, input from sensors such as temperature sensors, or GPS location measurement devices.

What sort of applications can OML be used for? OML is a generic framework that can be adapted to many different uses. Networking researchers who use testbed networks to run experiments would be particularly interested in OML as a way to collect data from their experiments. In fact, that's why we developed OML in the first place! However, any activity that involves measurement on many different computers or devices that are connected by a network could benefit from using OML. For instance, network monitoring, distributed simulations, or distributed sensor networks.

The following sections will give you an overview of the basic architecture concepts of OML.

(NOTE: This page is under construction.)

Basic Architecture

OML has two main components:

  • OML client: the OML client component is responsible to perform the measurement inside the experiment.
  • OML Server: the OML server component is responsible to store the measurements inside a data-base using the sqlite3 library.