Stability Test of PlanetLab Nodes

 

Objective

To fulfill the task of evaluating robustness of DNS servers, we are using PlanetLab to carry out distributed measurement from all over the world. However, not all PlanetLab nodes are stable enough to support our measurement. Thereby, we designed a test to select stable nodes from all PlanetLab nodes. Hopefully, other institute might find our result helpful to their projects or help us to improve our stability test.

Definition of Stable Nodes

Stable nodes must meet the following requirements.

  1. 1.Response to SSH connection request and establish connection using public key instead of pass phrase input.

  2. 2.Be able to remotely copy data from and to the node.

  3. 3.Be able to schedule task via Cron.

  4. 4.Be able to continuously run “ping” command for at least 24 hours.

Source code

Coming soon with git repository...

Data

You can fetch daily stability test result on IRL server.

Files named with date string appended with “.arc” like “20110219.arc” stores accumulative daily test data for each poller. Each record of this file has three fields: Date, PlanetLab Node, and Status.

Files named with date string like “20110219” is statistically analysis result. As the following table shows, it has 8 fields. “# Test” is the number of times (once a day) we have tested on this node. “# OK” is the number of times we have seen it as a stable node, while “# Fail” is for opposite situation. “Stable Rate” is simply the ratio of “# OK” and “# Test”.

“Stable Index” gives more weight on recent test results. It is defined by the following equation, where si(n) equals to 1 if the node is stable at nth day, or 0 otherwise.