GDMO / CMIS / CMIP

Download Report

Transcript GDMO / CMIS / CMIP

GDMO / CMIS / CMIP
Karina Marcus
Institut Eurécom
Le modèle OSI
• Cadre général
– s'inscrit dans la partie 4 du modèle de référence OSI
– spécifie les procédures de gestion d'un réseau hétérogène
– définit le cadre architectural des normes de gestion OSI
• Objectifs
• "planifier, coordonner, organiser, contrôler et superviser les
ressources utilisées dans les communications conformes au
modèle OSI et rendre compte de leur utilisation"
Trois modèles
• Modèle organisationnel
• Modèle d’information
• Modèle fonctionnel
Le modèle organisationnel
• définit le cadre pour répartir la gestion
• s'appuie sur les concepts de "systèmes gérés" et de
"systèmes gérants" (agents and management systems)
• le processus d'application de gestion distribuée (DMAP :
Distributed management application process) est
l'application qui contrôle et surveille les objets gérés.
• le processus agent (AP : Agent Process) permet la gestion
locale.
Schéma d’organisation
Système
administré
Système
d'administration
Processus
de
gestion
Fonctions
Processus
agent
D
CMISE
CMIP
CMISE
Objets
gérés
Objets gérés
Attributs
Opération
Notification
Objet administré
Opération : actionnées par des commandes envoyées
à la classe (création d'instance) ou à l'objet
(activation de méthode)
Notification : actionnées par la classe ou l'objet qui
émet des messages (changement d'état, dépassement
de seuil)
Le modèle d’information
• Une approche objet
– un langage de description
– un langage d’échanges
• Des principes
– nommage
– enregistrement
• Des bibliothèques
Approche objets
• Objectif : Permettre de définir les objets administrés de
manière standard
– cohérence des définitions
– cohérence avec l'environnement d'administration
(CMIP et fonctions)
– répartition du travail
Modèle objet
• Le modèle définit :
–
–
–
–
–
–
ce qu'est un objet
de quoi il est composé
ce qu'il peut faire
ce qui peut lui être fait
comment il est nommé dans le protocole
comment il est relié aux autres objets
Description des objets
•
•
•
•
•
•
Les attributs
Les méthodes
Les relations
Les paquetages conditionnels
L'arbre de contenance
L'allomorphisme
Hierarchy tree example
TOP
Open
System
Layer
Entity
Connection
Counter
T-entity
T-connection
Peer
TPDU
counter T-address
Hierarchy subtree
Address
Hierarchy and contenance tree example
TOP
Open
System
Layer
Entity
T-entity
Connection
Counter
Address
T-connection
TPDU
counter
Peer
T-address
Hierarchy subtree + Contenance
Name Levels
root
systemId=fuschia
systemId=lotus
T-entityId=TCP
T-connectionId=1
•
•
•
•
•
T-connectionId=2
...
DN: systemId=fuschia@T-entityId=TCP@T-connectionId=1,
LDN: T-entityId=TCP@T-connectionId=1,
RDN: T-connectionId=1,
DN and LDN are sequence of RDNs,
MO instances can be referenced either as DNs or LDNs since their
application is relative to a given association with a given agent.
GDMO: Guidelines for the Definition of MOs
• Templates for the definition of the interface to managed objects:
– Nature of managed objects in the MIT, inheritance relationships, features
– Structure of the MIT,
– Limited specification of behaviors
• Features of MOs are encapsulated into packages, one mandatory and
eventually optional packages:
– Attributes with their ASN.1 syntax, access modes and matching rules,
– Actions with ASN.1 types for their action argument, reply and parameters,
– Notifications with ASN.1 types for event argument, reply and parameters.
• Name bindings: possible containment relationships between classes
(superior, subordinate and a naming attribute),
• MIT and MOs are purely virtual management abstractions, there is no
need for any corresponding actual representations.
Information Model
• All that is defined using the templates may
be registered in the registration tree.
• Templates to specify
–
–
–
–
–
Managed object class
Package
Parameter
Behavior
Notification
– Name binding
– Attribute
– Attribute group
– Action
The registration tree
root (world)
0
1
ccitt
2
joint-iso-ccitt
iso
0
std
1
reg
authority
2
member
body
3
3
org
ms
6
9
dod
smi
1
1
internet
1
directory
2
mgmt
4
3
experimental
N
part1
private
1
1
entreprises
MIB-1
MIB-2
0
reserved
1
proteon
2
11
ibm
hp
...
partN
Outil de description
• Les gabarits GDMO
– MANAGED OBJECT CLASS : définition d'une classe
– PACKAGE
– PARAMETER
– NAME BINDING
– ATTRIBUTE
– GROUP-ATTRIBUTE
– BEHAVIOUR
– ACTION
– NOTIFICATION
Managed Object Class Template
<class> MANAGED OBJECT CLASS
[DERIVED FROM <class> [,<class>]*;]
[ALLOMORPHIC SET <class> [,<class>]*;]
[CHARACTERIZED BY <package> [,<package>]*;]
[CONDITIONAL PACKAGES
<package> PRESENT IF <condition>
[,<package> PRESENT IF <condition>]*;]
[PARAMETERS <parameter> [,<parameter>]*;]
REGISTERED AS <object-identifier>;
Package Template
<package> PACKAGE
[BEHAVIOUR DEFINITIONS
<bahaviour-def> [,<behaviour-def>]*;]
[ATTRIBUTES
<attribute> propertylist [<parameter>]*
[,<attribute> propertylist [<parameter>]*]*;]
[ACTIONS
<action> [<parameter>]* [,<action> [<parameter>]*]*;]
[NOTIFICATIONS
<notif> [<parameter>]* [,<notif> [<parameter>]* ]*;]
[REGISTERED AS <object-identifier>];
Package Template
Propertylist ->
[REPLACE WITH DEFAULT]
[DEFAULT VALUE <value-definition>]
[INITIAL VALUE <value-definition>]
[PERMITTED VALUES <value-set-syntax-label>]
[REQUIRED VALUES <value-set-syntax-label>]
[get-replace]
[add-remove]
get-replace -> GET | REPLACE | GET-REPLACE
add-remove -> ADD | REMOVE | ADD-REMOVE
Example of a class
exampleObjectClass MANAGED OBJECT CLASS
DERIVED FROM "Rec. X.721 | ISO/IEC 10165-2 :
1992" : top;
CHARACTERIZED BY
examplePackage1
PACKAGE;
examplePackage2
CONDITIONAL PACKAGE
ACTIONS
qOSResetAction;
NOTIFICATION communicationError ;
REGISTRED AS {joint-iso-ccitt ms(9) smi(3)
part4(4) package(4) examplepack1(0)};
PRESENT IF !conformance class 2 of underlying ressource
implemented as descriptor in ISO/IEC xxxx! ;
REGISTRED
AS
{joint-iso-ccitt
ms(9)
smi(3)
part4(4)
managedObjectClass(3) exampleclass(0)} ;
Example : system object
system MANAGED OBJECT CLASS
DERIVED FROM top;
CHARACTERIZED BY
systemPackage PACKAGE
ATTRIBUTES systemId
GET,
systemTitle
GET,
operationalState
GET,
usageState
GET,
administrativeState
GET-REPLACE;;;
CONDITIONAL PACKAGES
administrativeStatePackage PACKAGE
ATTRIBUTES administratoveState
GET-REPLACE;
REGISTERED AS
{smi2Package14};
PRESENT IF "an instance supports it",
....
The object TOP
top
MANAGED OBJECT CLASS
CHARACTERIZED BY topPackage
PACKAGE
BEHAVIOUR
topBehaviour;
ObjectClass
GET,
nameBinding
GET;;;
CONDITIONAL PACKAGES packagesPackage
PACKAGE
ATTRIBUTES
packages
GET;
REGISTERED AS {smi2Package 16};
PRESENT IF "any REGISTERED package, other than
this package has been instancied",
allomorphicPackage PACKAGE
ATTRIBUTES
allomorphs
GET;
REGISTERED AS {Smi2Package 17};
PRESENT IF "if an object supports allomorphism";
REGISTERED AS {smi2MObjectClass 14};
topBehaviour
BEHAVIOUR DEFINED AS "This is the top level of
managed object class hierarchy and every other managed objet
class is a specialization of either this generic class (top)
or a specialization of a subclass of top..."
Attribute Template
<attribute> ATTRIBUTE
derived-or-with-syntax-choice;
[MATCHES FOR qualifier [, qualifier]*;]
[BEHAVIOUR <behaviour-definition>
[, <behaviour-definition>]*]
[PARAMETERS <parameter> [,<parameter>]*;]
[REGISTERED AS <object-identifier>];
qualifier -> EQUALITY | ORDERING | SUBSTRINGS | SET
COMPARISON | SET INTERSECTION
derived-or-with-syntax-choice -> DERIVED FROM <attribute> | WITH
ATTRIBUTE SYNTAX <syntax>
Attribute definition example
eventTime ATTRIBUTE
WITH ATTRIBUTE SYNTAXE AttributeASN1Module.EventTime;
MATCHES FOR EQUALITY, ORDERING;
BEHAVIOUR timeOrdering;
REGISTERED AS {smi2AttributeID 13};
timeOrdering BEHAVIOUR DEFINED AS
“The year, month, day, hour, minute, and seconds fields are compared in
order to determine whether the specified value is greater or less than the
value of the attribute. The values for the year, month, day, hour, minute,
and seconds are determined from the character string representation and
the year value is first compared. If equal, the month value is compared
and this process is continues if the compared fields are equal. ”
Managed Object Naming
• Locating MOs in the MIT,
• Supported by the name binding template establishing a containment
relationship between a superior MOC and a subordinate MOC according to
a naming attribute of the subordinate class,
• Example
transportConnection-nb-1 NAME BINDING
SUBORDINATE OBJECT CLASS T-connection;
NAMED BY SUPERIOR OBJECT CLASS
T-entity;
WITH ATTRIBUTE T-connectionId;
DELETE deletes-contained-objects;
T-entityId=TCP
T-connectionId=1
...
T-connectionId=n
Name Binding Template
<name-binding> NAME BINDING
SUBORDINATE OBJECT CLASS <class>;
NAMED BY SUPERIOR OBJECT CLASS <class>;
WITH ATTRIBUTE <attribute>;
[BEHAVIOUR <behaviour-definition> [<behaviour-definition>]*;]
[CREATE [create-modifier [,create-modifier]] [<parameter>]*;]
[DELETE delete-modifier [<parameter>]*;]
REGISTERED AS <object-identifier>
create-modifier -> WITH-REFERENCE-OBJECT |
WITH-AUTOMATIC-INSTANCE-NAMING
delete-modifier -> ONLY-IF-NO-CONTAINED-OBJECTS |
DELETE-CONTAINED-OBJECTS
CMIS Services vs GDMO
• CMIS services enable access/manipulation of the MIT,
• GDMO specifications give the rules to define adequate
CMIS parameters,
• Name Bindings and naming attribute give the object
instance names for MOs,
• ASN.1 attribute types, action / event argument / reply /
parameters types are given by the corresponding GDMO
specifications,
• Attribute matching rules determine the possible filters
CMISE/CMIP
• Les services de CMISE
– Interactions avec les interfaces des objets
(lecture, écriture, creation, destruction d’instances, ...)
– Utilisation des principes de nommage
– Sélection d’objets multiples
– Actions multiples (atomicité)
Sélection d’objets multiples
-1
-2
-3
Filtering
(valeurs d’attributs)
Scoping
Multiple Object Selection and Multiple Replies
• Multiple object selection = scoping + filtering
1
• scoping:
2
baseObject=3
4
5
6
wholeSubTree: 3,6,7,8,9,10,11,
3
7
nthLevel e.g. 1stLevel: 6,7,
8 9 10 11
baseToNthLevel e.g. baseTo1stLevel: 3,6,7.
• Filtering: logical expression on MO attribute values (numerical or
string based comparisons) grouped through AND/OR/NOT logical
operators,
• This results as a subset of MIT MOs on which is executed the CMIS
request (m-get, m-set, m-action, m-delete) and incurring several replies,
• Multiple replies may also simply occur through action incurring several
replies
Services CMIP
Opération/notification
Get attribute value
Replace attribute value
Replace with default value
Add member
Remove member
Create
Delete
Action
Notification
Service
M-GET
M-CANCEL-GET
Mode
confirmé
confirmé
M-SET
conf/non-conf
M-CREATE
M-DELETE
M-ACTION
M-EVENT-REPORT
confirmé
confirmé
conf/non-conf
conf/non-conf
Exemple : M_CREATE
• Paramètres spécifiques
– superior object instance
– reference object instance
• Service
– nommage : c'est-à-dire définir le GDN (Global Distinguished
Name) -->choisir le supérieur dans l'arbre de nommage
choisir le RDN (Relative Distinguished Name)
M-CREATE utilise 3 paramètres spécifiques :
- MOC (Managed object Class) - sa classe
- MOI (Managed Object Instance) - son GDN
- SOI (Superior Object Instance) - le GDN du supérieur
Le gestionnaire a trois possibilités : il peut envoyer
MOC et MOI, MOC et SOI ou MOC
Dans tous les cas, l'agent renverra MOC et MOI
Exemple : M_CREATE
• services (suite)
– Valorisation des attributs
Par ordre de priorité :
• liste d'attributs envoyés
• valeurs de l'objet de référence
• valeurs par défaut de la classe
Quelques liens ...
Rechercher GDMO avec Google
J ’ai noté pour vous :
GDMO - a searchMiddleware definition - see also: Guidelines ...
... GDMO, GDMO (Guidelines for Definition of Managed Objects) is a standard for defining
objects in a network in a consistent way. With a consistent "language" for ...
www.searchmiddleware.com/sDefinition/0,,sid26_gci213981,00.html Solstice GDMO Builder 1.0
... Solstice TM GDMO Builder 1.0. ... Solstice GDMO Builder Home | Management
Home | software site map, Solstice GDMO Builder : Overview. ...
www.sun.com/software/gdmo/ - 16k - Cached - Similar pages
A Methodology for Formalizing GDMO Behavior Descriptions - ...
A Methodology for Formalizing GDMO Behavior Descriptions (1999) (Correct) (1
citation) P. Hasselmeyer Information Technology Transfer Office Darmstadt ...
citeseer.nj.nec.com/hasselmeyer99methodology.html - 18k - Cached - Similar pages
etc…..