6. perfSONAR as a Middleware
Analysis &
Analysis & Visualization
Visualization
API
Measurement Measurement
Infrastructure Infrastructure
API
Data
Collection Performance
Tools
7. perfSONAR Architecture Overview
Infrastructure
Information Services
Data Services Analysis/Visualization
Service
Measurement Lookup
Points User GUIs
Topology
Measurement Service Web Pages
Archives Configuration
NOC
Transformations Alarms
Auth(n/z)
Services
8. perfSONAR
• Base network measurement schema
– OGF Network Measurement Working Group (NM-WG)
• Topology Schema
– OGF Network Markup Language (NML-) WG
– Includes Topology Network ID
• perfSONAR Protocol Documents
– OGF Network Measurement and Control (NMC-) WG
11. Initial Ideas @ FIBRE-KOM
• Ideally we would monitor:
– Experiments (slices)
– Infrastructure (Testbed)
• User groups:
– Experimenters
– Central Operators
– Aggregate (Island) Managers
• Initial proposals:
– Leverage on existing monitoring
– Federation through perfSONAR
12. FIBRE-BR Monitoring
Architecture
UNIFACS and UFPE teams
Marcelo Pinheiro (UNIFACS)
FIBRE-BR Camp, 28-29 April 2012
Ouro Preto (MG), Brazil
13. Motivation
• FIBRE-BR will possibly use three different control and
monitoring frameworks in its nine islands
– OFELIA Control Framework
– cOntrol and Management Framework (OMF) and
– ProtoGENI
• Each one takes a different approach in addressing I&M
requirements and demands
• Each CMF has its monitoring capabilities
• How to put all these together?
14. Goal
• An Instrumentation and Measurement Architecture
Supporting Multiple Control Monitoring Frameworks
• Our target is:
– to provide, possibly, with a maximum reuse of the
available CMFs I&M services over a new integrated
and federated network structure;
– To provide instrumentation and monitoring
considering different I&M Services through FIBRE-
BR (Monitoring Orchestration);
– Multiple CMFs I&M data integration.
16. FIBRE-BR I&M
SERVICES
Aggr01
MDIP 1 FIBRE-BR
Policy
OFELIA Measurement Repository
Aggr02
Monitoring Data
Data Integration
Point
OFELIA
Control
Aggr03 2
Commands Security Services
OFELIA Monitoring Experimenter
Facilities
Orchestration &
OFELIA CMF Configuration Service
FIBRE-BR I&M
SERVICES
3 Researcher
Aggr01 Visualization/ Portal Service
MDIP
ProtoGeni Measurement
Aggr02 Monitoring Data
Data FIBRE-BR
Integration
ProtoGeni
Point 4 I&M
SERVICES Network
Aggr03 Manager
Control
Commands
ProtoGeni Monitoring
Facilities
ProtoGENI CMF
FIBRE-BR I&M FIBRE-BR
SERVICES
I&M Persistent 5
Aggr01
MDIP Data Repository
OMF Measurement
Aggr02 Monitoring Data
Data Integration
Point
OMF
Aggr03
Control
Commands
OMF Monitoring
Facilities
OMF CMF
17. Measurement Data Integration
1 Point (MDIP)
- conforms the collected data
from the available CMFs to
FIBRE-BR I&M standard
format (NM-WG),
representation and
distribution (including
visualization).
- This service includes all
measurement data
processing related aspects
such as, message format,
message transport protocol
and/or service, access
privileges and common data
storage or on-the-fly data
distribution.
- Hold your questions for
now! This will be further
discussed
18. 2 The security and police service
will use the global definitions
implemented and controlled
by the ClearingHouse
(CH definition - is both an entity and a
system consisting of software, operations,
and policy to broker trust between
federation partners.)
Implementation issues either necessary or
considered by I&M solution:
• Trust relationship (CA, SASL, etc)
• Identity credentials
• Integrated authentication/authorization (XMPP to help
on that???)
• Federation level policies
• Slice behavior
• Data access policy
• Policy enforcement
• FIBRE-BR policy document
19. The Orchestration and
Configuration Services
act on behalf of the
3 users allowing them to
configure, to define
measurement points,
and to orchestrate these
measurement data
collection facilities
according to each
individual CMF.
Implementation initial ideas:
- Use XML pub/sub messaging service, based on
XMPP server
- Currently supported by OMF
- IMF @ GENI
- Does OCF support it?
20. The I&M Portal main
functionality is to
provide a user friendly
interface to control and
access the measured
data, according to a
4 defined policy.
Implementation issues:
Data visualization:
- From real-time experiments
- From data stored Persistent Data
repository in each individual CMF
(I&M perspective)
- Verify privileges access
- Available only to authorized users
21. The architecture has a storage
strategy that allows users to
retrieve data from their own or
from others previous experiments,
according to their access
privileges. The persistent storage
option is an experimenter decision
that must comply with FIBRE-BR
retention policy.
Implementation steps:
• MDIP will be in charge of saving it
persistently
• Data retention policy
• MySQL/RRD database (access from
I&M solution)
• I&M Standard storage
• Each CMF will keep its storage
mechanism. I&M will, eventually,
5 store it centrally or access it based on
users demand and/or privilege (being
discussed)
• Logs storage is being discussed
23. Introduction
• There are several GENI I&M related projects compatible
with ProtoGENI. The most important ones are:
– INSTOOLS
– LAMP
– OneTimeMeasure
– S3Monitor
• Some of them are complementary and will later be
integrated to compose a GENI Integrated I&M
Framework
25. Overview
• INSTOOLS’ high-level goal:
– Make it easy for users to see what is going on in their
experiment – i.e., make it trivial to monitor a slice
• What can INSTOOLS
measure?
– Note that INSTOOLS is
concerned only about
passive measurements
• INSTOOLS’ philosophy
– Don’t reinvent the wheel
26. Architecture (overview)
MC Portal: single interface for all
MCs in a slice
Measurement Plane
connections
Data Plane
connections
Experimenter
Slice’s nodes
(instrumentized to act
also as MPs)
Measurement Controller (MC) = GENI MAP+MC
Automatically deployed by INSTOOLS (at least one per
aggregate)
31. Overview
• LAMP stands for “Leveraging and Abstracting Measurements
with perfSONAR”
• The main goal is to “create an instrumentation and
measurement system, based on perfSONAR, for use by
experimenters on ProtoGENI”
• Which tools does LAMP support?
– OWAMP, BWCTL, Ganglia, PingER, NTP; ps-BUOY MA; etc
• So... what’s the difference between LAMP and pS-PSToolkit?
– LAMP adapted perfSONAR-PS software suite to recognize GENI’s
Authentication and Authorization model and infrastructure
– Added Ganglia as a host monitoring solution
– Added distributed configuration through annotations in the topology
stored in UNIS
– These annotations make it easy for users to save their slice
configuration and load it at a different slice
32. LAMP’s Basic Architecture
• Lamp Web Portal
– The “goto” resource for
experimenters to manage and UNIS
visualize their I&M services and data
• UNIS
– Unified Network Information Service
– It’s basically the combination of the
Lookup Service and the Topology Slice
Service of the perfSONAR framework LAMP Web
Portal
– Provides information to the slice’s
nodes
• MPs
– Nodes with perfSONAR tools
installed (OWAMP, BWCT, etc...) MP MP
33. How does it work?
1. On the Rspec, the user chooses which nodes will
be “instrumentized” with LAMP
– The user also chooses one (or more) node to host the
LAMP Web Portal
2. Using this modified Rspec, the slice is created as
usual by the CMF
3. The slice manifest (returned by the CMF) is
converted and sent to UNIS
4. Through the LAMP Web Portal, one can enable and
configure measurement services on all nodes that
comprise the slice
– The “Portal node” knows the slice’s topology by querying
UNIS…
5. All changes made on the Portal are sent to UNIS
6. All nodes pulls the configuration from UNIS (every
5 minutes) and applies the new configurations on
themselves.
34. Architecture (a broader view)
ProtoGENI Node with LAMP tools
UNIS
Node with LAMP tools
UNIS keeps + LAMP Portal enabled
information about
ALL slices Note that it is possible to
have more than one node
This node has only running the Web Portal
“Measurement Plane
interfaces”
Not every node
Slice 1 Slice 2 to be
has Slice n
“instrumentized”
35. LAMP Portal
Each node has as
set of (possible
different)
measurement
tools enabled
37. OneTimeMeasure and S3Monitor
• OnTimeMeasure
– Is “an on-demand measurement service used in forecasting,
anomaly detection, and fault-location diagnosis in GENI
experiments and GENI operations.”
– Can be integrated with INSTOOLS
• S3Monitor
– Has a flexible design that allows easy “plug in” of new network
measurement tools
– Based on 𝑆 3 (Scalable Sensing Service for PlanetLab)
– Focused on measurement of large networked systems
– Already integrated with INSTOOLS
39. INSTOOLS MDIP
ProtoGENI Fibre I&M Architecture
Visualization
Slice (INSTOOLS) Portal
4
INSTOOLS RRD
ProtoGENI
Meas Controller 3
Collector
MDIP
1 2
SQL
RRD Collector
SQL DB
FIBRE I&M Data
Repository
1. MC collects measurement data from the MPs
2. MDIP (through his collectors) collects measurement data, makes any
necessary format adjustments and
3. Stores the data in the permanent repository (if demanded)
4. Measurement data can be accessed through the Visualization Portal
40. ProtoGENI LAMP MDIP
UNIS
Fibre I&M Architecture
Slice ProtoGENI MDIP
MA-specific
defs
LAMP Web Portal
1
MP
SNMP MA NMWG
Generic 3
ps-BUOY MA Collector
2
Ganglia MA
MP
PingER MA
FIBRE I&M Data
Repository
1. Fetch experiment description from UNIS
2. Start copying measurement data from MAs
3. Stores the data in the permanent repository (if demanded)
41. INSTOOLS-MDIP AND LAMP-MDIP OPEN ISSUES
• INSTOOLS-MDIP
• How to handle AA?
• How to discover active slices? [Clearing House?]
• LAMP-MDIP
• How to handle AA?
41
42. OML Overview and OML-
MDIP Proposal
Igor Leonardo (UNIFACS)
FIBRE-BR Camp, 28-29 April 2012
Ouro Preto (MG), Brazil
44. OML Introduction
• OML is the OMF measurement tool
• It was first developed as a component of it
• Today is a stand-alone project (independent)
• Shortly, it is a framework (set of libraries) to collect and store
measurements
44
45. OML Resources - MP
• “It is the input port for recording measurements”
• A MP is a tuple that indicates a measurement
• A measurement is not just a number
• Can be a group of itens
• In today’s version, data can be represented as a string |
integer | double.
• To define/register an OML MP:
• Create a OmlMPDef array. This array defines the data to be stored in
a relational database (sqlite3), like a table;
• Use the function omlc_add_mp, to register the “table” in the database
• To insert the data into the database, use the function oml_inject
45
46. OML Filters
• It is the result of some pre-processing on a measurement
stream
• The big advantage of this is to reduce the amount of data
collected
• Definided by the OML Client Library
• It is possible to customize, but there are some default
filters (Average, First, Last, Sum, etc):
• http://mytestbed.net/projects/oml/repository/revisions/master/show/l
ib/client/filter
• How to create your own filter:
• http://omf.mytestbed.net/projects/oml/wiki/Developing_Filters
46
47. OML Server
• Allows users to record their measurements inside a
remote database
• It works like a daemon program for OML architecture
• Receives the collected measurements from clients
• Creates a database named “oml-exp-id” (a parameter for
configuration, required by the omlc_init function)
• “The oml2-server proposes an abstraction for developers
to change the back-end database. Currently, only the
sqlite3 backend is fully supported”
• Export database to a txt file (on NICTA testbed)
• wget
"http://ServerAddress:5053/result/dumpDatabase?expID=Experi
ment_ID" –O DumpFile
47
48. OML Use - Example
#include <stdio.h> omlc_start();
#include <stdlib.h> int i = 0;
#include <oml2/omlc.h> for (i = 0; i < 1000; i++) {
int main (int argc, const char **argv) uint32_t count = (uint32_t)i;
{ char count_str[16];
int result = omlc_init ("Simple", &argc, argv, double count_real = (double)i;
NULL); OmlValueU values[3];
if (result == -1) { snprintf(count_str, sizeof(count_str),"%d", i);
fprintf (stderr, "Could not initialize OMLn"); omlc_set_uint32 (values[0], count);
exit (1); omlc_set_string (values[1], count_str);
} omlc_set_double (values[2], count_real);
OmlMPDef mp_def [] = { omlc_inject (mp, values);
{ "count", OML_UINT32_VALUE }, }
{ "count_str", OML_STRING_VALUE }, omlc_close();
{ "count_real", OML_DOUBLE_VALUE }, return 0;
{ NULL, (OmlValueT)0 } }
};
OmlMP *mp = omlc_add_mp ("counter", mp_def);
if (mp == NULL) {
fprintf (stderr, "Error: could not register
Measurement Point 'counter'");
exit (1);
}
48
49. OML MDIP Proposal(1)
• OML MDIP consists basically of one service: OML MA
(OML Measurement Archive)
− It’s responsible for receiving and sending the requests and
responses
− When it receives the requests, the MA queries OML Server DB
and then uses standard perfSONAR messages to communicate
with FIBRE-BR I&M Services
− The response is sent to the MDIP, in order to be stored
persistently in FIBRE-BR I&M repository (if demanded)
49
51. OML MDIP OPEN ISSUES
- How to handle Authentication and Authorization?
- How to access the measured data in real-time?
51
52. OFELIA I&M Architecture
Igor Luiz (UNIFACS)
FIBRE-BR Camp, 28-29 April 2012
Ouro Preto (MG), Brazil
53. OFELIA I&M
Working with the OFELIA Control Framework
(https://alpha.fp7-ofelia.eu/doc/index.php/Working_with_the_OFELIA_Control_Framework)
Introduction
OFELIA's Control Framework Web interface is called Expedient and is
one of the components of the OFELIA's Control Framework. It enables
experimenters to create and run experiments within the OFELIA autonomous
and federated facilities.
Through this user interface, one can instantiate and deploy
experiments, which may include virtual machines, switch configurations and
other resources. The control framework handles the separation of the
experiments and the monitoring. Hence the user can fully concentrate
on his/her research.
53
54. (FIBRE ↔ OFELIA) I&M
FIBRE-BR I&M
SERVICES
Aggr01 FIBRE-BR
MDIP
Policy
OFELIA Measurement Repository
Aggr02
Monitoring Data
?
Data Integration
Point
OFELIA
Aggr03
Control
Commands Security/ Police Services
OFELIA Monitoring
Facilities
Orchestration & Experimenter
OFELIA CMF Configuration Service
FIBRE-BR I&M
SERVICES
Researcher
Aggr01 Visualization/ Portal Service
MDIP
ProtoGeni Measurement
Aggr02 Monitoring Data
Data FIBRE-BR
Integration
I&M Network
Point
Manager
ProtoGeni SERVICES
Aggr03
Control
Commands
ProtoGeni Monitoring
Facilities
ProtoGENI CMF
FIBRE-BR I&M
SERVICES
FIBRE-BR
I&M Persistent
Aggr01
MDIP Data Repository
OMF Measurement
Aggr02 Monitoring Data
Data Integration
Point
OMF
Control
Aggr03 54
55. OFELIA I&M STATUS
NOWADAYS
Backend Infrastructure Monitoring (servers, switches, links)
- ZENOSS (not integrated to OCF)
OFELIA´s experiment monitoring:
- Not clearly defined or found (to our knowledge)
55
56. OFELIA I&M STATUS
Second OFELIA Open Call
(http://www.fp7-ofelia.eu/open-calls/2nd-open-call/)
Proposals for specific measurements and evaluations on
the OFELIA experimental facility that need extensions of
the already available infrastructure. Measurement
frameworks, measurement equipment, inclusion of this
equipment into OFELIA Control Framework, integration of
OMF (ORBIT Management Framework) for wireless
OpenFlow experiments
*The Second OFELIA Open Call is Open for Proposals Until April 18th, 2012, 17:00 Brussels time.
56
57. OFELIA & FIBRE I&M
- FIBRE I&M possible alternatives for OFELIA CMF are (in
discussion):
- Focus on FlowVisor and OF-related basic
measurements parameters (pragmatic approach)
- Incorporate current OFELIA monitoring developments
(need to identify them)
- Align with OFELIA current developments
57