370 likes | 660 Views
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
E N D
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.
CMISE CMISE Schéma d’organisation Système Système administré d'administration Processus Processus de agent Fonctions gestion D CMIP Objets gérés
Attributs Opération Notification Objets gérés Objet administré
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 Address Peer T-address TPDU counter T-connection T-entity Hierarchy subtree
Hierarchy and contenance tree example TOP Open System Layer Entity Connection Counter Address Peer T-address TPDU counter T-connection T-entity Hierarchy subtree + Contenance
NameLevels root systemId=fuschia • 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. systemId=lotus T-entityId=TCP ... T-connectionId=1 T-connectionId=2
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 2 ccitt joint-iso-ccitt iso 0 3 3 1 2 ms std reg member org authority body 6 9 dod smi 1 1 N internet 1 part1 ... partN 4 2 3 directory mgmt experimental private 1 1 entreprises MIB-1 MIB-2 0 11 2 1 reserved proteon ibm hp
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 SYNTAXEAttributeASN1Module.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
1 2 3 4 5 6 7 8 9 10 11 Multiple Object Selection and Multiple Replies • Multiple object selection = scoping + filtering • scoping: baseObject=3 wholeSubTree: 3,6,7,8,9,10,11, nthLevel e.g. 1stLevel: 6,7, 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/notificationServiceMode Get attribute value M-GET confirmé M-CANCEL-GET confirmé Replace attribute value Replace with default value Add member M-SET conf/non-conf Remove member Create M-CREATE confirmé Delete M-DELETE confirmé Action M-ACTION conf/non-conf Notification M-EVENT-REPORT 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…..