Version 14 (modified by Rudra Dutta, 9 years ago) (diff)



Draft Draft Draft


This wiki page serves as the Status Report following GEC10 for the IMF project.

  • Draft created by Rudra Dutta on March 22, 2011
  • Modified by Rudra Dutta March 22 - April ? 2011
  • Final version released April ? 2011

Upon consultation with GPO, the priorities of the project were revisited for Year 2 of this project. As a result, Year 2 (Spiral 3) goals were focused on integrating the developed IMF capabilities for measurement, and transfer of measurement (from substrate to in-slice stack), with existing GENI Inst&Meas capabilities; specifically, to integrate and install perfSONAR (pS) MPs and archives to collect performance measurement data from Polatis switches and Infinera DWDM platforms on 4 BEN sites, and (subsequently) integrate pS MP polling, or adopt other GENI I&M capabilities, into IMF to mediate the ability of in-slice reactive protocols to communicate back to actuators in the substrate.

At GEC10, the first of these (collecting performance data from Polatis using pS) capability has been completed. This leverages Spiral 3 goals of the ERM project team, who also form the Columbia U part of the IMF team.

In order to achieve this, the main effort was to collaborate with the perfSONAR development team to define a modified form of the pS client, which we embed in the IMFRealTime service, to allow the measurement to be obtained by the in-slice software; additionally, to create a pS Measurement Archive in which measurements from the substrate optical switches could be made available for the client. The latter part has also been successfully integrated into the universal ERM box by the Columbia team, as part of the ERM project.

This is running on 6 of the 8 switches of the BEN testbed in North Carolina, and the IMF capability to query the pS archive serving those switches was demonstrated at GEC10.

Major Accomplishments

Milestones Achieved

  • IMF: S3.c Demonstration at GEC10 and Experimenter Outreach
  • IMF: S3.d Documentation and Code Release

Deliverables made

Description of work performed during last quarter

IMF project achievements for this first part of Spiral 3 consist of:

  • Collaboration with perfSONAR development team to define the requirements of the modified pS client
  • Embedding modified pS code provided by the perfSONAR team in IMF
  • Implementing pS measurement archive for Polatis and Infinera switches
  • Implementing pS client in IMF pubsub server
  • installing on BEN testbed
  • Demonstrating completely working system at GEC10

Activities and Findings

Doodling on architecture diagram to show GEC10 code structure

The Java subscriber to the XMPP pub-sub service is not packaged in this release; the previously supplied code can, without change, be used (as part of a SILO service or standalone, as before), to extract the measurement data stored in the XMPP server. The difference in this version is in how the IMF Pub-Sub Module acquires that data - it can now use a perfSONAR query to access the Measurement Handler (the IMF PSM can continue to reach the MH using an XML-RPC query as before as another alternative).

Project Participants

  • Rudra Dutta, George Rouskas (NCSU)
  • Shu Huang, Ilia Baldine (RENCI)
  • Keren Bergman, Michael Wang, Bala Bathula, Cathy Chen (Columbia U)


Integrated quarterly report and code documentation (this wiki)


Participants of the IMF team attended GECs as well as meetings of the Instrumentation and Measurement Working Group as possible. We have previously collaborated with the GENI LEARN project team, and progressing toward deploying IMF in LEARN.


The IMF team continued to collaborate with Deniz Gurkan of the GENI project LEARN.

The IMF team collaborated with Martin Swany of the perfSONAR team to define and discuss the requirements of IMF as a pS usecase, resulting in the articulation of an alternate type of pS client and functionality, one that more nearly matches the needs of real-time oriented systems such as IMF.

Other contributions


Code Release

Code Snapshot

The GEC10 version of the IMF system can be built from source in the following tarballs:

Documentation and Release Notes

The diagram above (in "Activities/Findings" section) shows where these tarballs fit in. The pubsub_for_perfsonar.tar.gz file (PubSub for perfSONAR) replaces the imf.tar.gz file of previous releases: the internal file heirarchy is the same, but the top-level name is different: "imf_pfsr" instead of "imf"; this is a kluge that will be fixed in the next release. As a consequence, this version of the code can only use pS query to reach the MH, the previous XML-RPC option is not available in this cut (the MH is still capable of it).

The following developer's notes provide more detail which should be helpful in using this code. This file is also included as "doc/README.imf" in the perfsonar_imf_realtime.tar.gz tarball. In addition, the following diagram of the code organization may be helpful.

Attachments (6)