From OpenFlow Wiki
The aggregate manager in Enterprise-GENI is responsible for resource discovery and slice reservations. It mediates between the ClearingHouse and the E-GENI FlowVisor.
Currently, the Aggregate Manager has two main parts:
- NOX-based user-level controller module that interacts with the FlowVisor.
- SFA server that interacts with the ClearingHouse. Point this server to the NOX module on machine X with messenger port Y by adding following two lines to the sfa_config:
OPENFLOW_AGGREGATE_MANAGER_IP=X
OPENFLOW_AGGREGATE_MANAGER_PORT=Y
Installation
- NOX Module:
- Download AggrMgr tarball
- Move aggrMgr directory to nox/src/nox/netapps/
- Set appropriate values for FLOWVISOR_CONFIG_DIRECTORY and CROSS_CONNECT_FILENAME
- Add aggrMgr to list of netapps in configure.ac.in of the NOX code
- Download XSD from CodeSynthesis. The binary file xsd must be in PATH
- The header files of libxsd must be placed in INCLUDE
- "make" in NOX main directory
- Automatically downloads rspec.xsd onto the same directory as aggrMgr.cc
- Generates the data binding code rspec.cxx and rspec.hxx
- Compiles aggrMgr
- The aggrMgr module has a dependency on the messenger module. If you are using a NOX version earlier than 0.6, please download messenger.tar.gz, unzip to src/nox/coreapps directory of your NOX source tree, and add the module to the configure.ac.in
- SFA server:
- Download SFA: svn checkout http://svn.planet-lab.org/svn/sfa/
- cd sfa; make install
- Added the OPENFLOW_AGGREGATE_MANAGER_IP and OPENFLOW_AGGREGATE_MANAGER_PORT values in /etc/sfa/sfa_config
- Start SFA server: /etc/init.d/sfa start
Working
- The aggrMgr module is invoked like any other NOX module.
./nox_core -i ptcp:6633 messenger topology aggrMgr <optional: routing>
- It depends on "messenger" and "topology" modules
- The list_components() call returns the up-to-date topology information as a RSpec
- The create_slice(RSpec) call passes a new guest controller entry to the FlowVisor
- SFA server has a plugin for E-GENI, located at sfa/trunk/sfa/rspecs/aggregates/rspec_manager_openflow.py, that speaks with the NOX module.
--[Srini] 06:52, 8 July 2009 (PDT)