OneLab build of PlanetLab
In the context of the OneLab project, our project-team is in charge of the codebase management for the PlanetLab Europe platform. This codebase was initially created from an import of the standard PlanetLab software, on top of which we have implemented a variety of improvements. A major contribution has been to write the first implementation of the federation mechanism that allows PlanetLab Central and PlanetLab Europe to run as peer systems, offering any user a consolidated view of all federating resources regardless of the user's affiliation. We have also contributed various improvement to handle more heterogeneous types of hardware, like e.g. wireless or multi-homed connectivity. Until 2007, the collaboration scheme with Princeton University has been upstream-downstream: we were free to make any change to the Princeton code provided that we adhered some standard interfaces, and Princeton was free to import any of our changes if they seemed interesting. We have moved in 2008 towards a co-development model, where we would share the same codebase as Princeton, so as to ease cross-importations that, over time, have become more and more frequent, but time-consuming. The software built out of our codebase is known as 'the OneLab build' of the PlanetLab software. We know of at least two institutions, HUJI and University of Tokyo, who use this release rather than the Princeton one. Seehttp://planet-lab.eu for more details.
Last year, we have kept on developping new features and enhancements for the PlanetLab software. A substantial part of our activities have been devoted to bringing the project to a more mature stage. In a first direction, we have now completed the move towards an almost full co-development model; all the OneLab-specific features have now been merged into the mainstream codebase that is located under http://svn.planet-lab.org/ ; the builds that are published for PlanetLab Europe, and for the general public, can and that can be found under http://build.onelab.eu/ , now differ from the stock PlanetLab distribution only by a few tweaks. Secondly, we have contributed a validation framework that allows continuous integration, as daily builds now run a set of non-regression tests. Last, we have brought more general support for the underlying Linux distribution, that allows to build the software for different release levels of Fedora and CentOS. Leveraging on these contributions, we've ben ale to take an active part in the delivery of version 4.2 earlier this year, that brought man innovations to the core system, including a complete rewrite of the network isolation mechanisms (known as vnet), as well as a new module for punching holes in the slice-isolation layer (known as vsys). We are now involved in the making of version 5.0, that aims at defining a more extensible data model for handling much more heterogeneous resources.
This year, we started with releasing the latest stable version of Planetlab software, MyPLC 4.3, and deployed this on PLE. We did 15 subsequent minor release for MyPLC since then, where each had many bug fixes as well as new features. Dealing with SSL certificate issues we setup another server for Planetlab Europe running as the boot server (boot.planet-lab.eu). We have also worked together with Princeton to release and deploy MyOps, a monitoring system for MyPLC which also helps with automated operational tasks. We again collaborated with PLC to coordinate works in SFA and sfatables (access and admission control tool for SFA) as well as the initial work for SFA user interface.