GDMO / CMIS / CMIP

Download Report

Transcript GDMO / CMIS / CMIP

D’AUTRES « MACROS » ASN.1
GABARITS POUR
GDMO & LDAP
AM Dery
SARO1
GDMO Principes de Base
AM Dery
SARO1
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
Opération : actionnées par des commandes envoyées
à la classe (création d'instance) ou à l'objet Objet administré
(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
MIB : Manage Information Base

Des principes
–
–

Nommage : éléments du MIT : Manage Information Tree
Enregistrement (OIDs)
Des bibliothèques
Description des objets





Les attributs
Les méthodes
Les relations
Les paquetages conditionnels
L'arbre de contenance
Exemple : hiérarchie de classes
TOP
Open
System
Layer
Entity
Connection
Counter
T-entity
T-connection
Peer
TPDU
counter T-address
Hierarchy subtree
Address
Hiérarchie + contenance
TOP
Open
System
Layer
Entity
T-entity
Connection
Counter
Address
T-connection
TPDU
counter
Peer
T-address
Hierarchy subtree + Contenance
Arbre de Nommage
Instances référencées par DNs ou LDNs
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 séquences de RDNs,
Définition des modèles d’Information


Utilisation de templates ASN.1 à enregistrer
dans un arbre d’enregistrement
Les templates
–
–
–
–
–
Managed object class
Package
Parametre
Comportement
Notification
– Name binding
– Attribute
– Attribute group
– Action
Arbre d’enregistrement
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 en ASN1
– MANAGED OBJECT CLASS : définition d'une classe
– PACKAGE
– PARAMETER
– NAME BINDING
– ATTRIBUTE
– GROUP-ATTRIBUTE
– BEHAVIOUR
– ACTION
– NOTIFICATION
Exemple d’une classe
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
implemented as descriptor in ISO/IEC xxxx! ;
REGISTRED
AS
{joint-iso-ccitt
ms(9)
smi(3)
managedObjectClass(3) exampleclass(0)} ;
ressource
part4(4)
Exemple : 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",
....
Définition d’attribut
eventTime ATTRIBUTE
WITH ATTRIBUTE SYNTAX 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. ”
Expression de la contenance

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
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
Filtering
(valeurs d’attributs)
-3
Scoping
Multiple Object Selection and
Multiple Replies





Multiple object selection = scoping + filtering
scoping:
1
2
3
baseObject=3
4
5
6
7
wholeSubTree: 3,6,7,8,9,10,11,
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 Mode
M-GET confirmé
M-CANCEL-GET confirmé
M-SET conf/non-conf
M-CREATE
M-DELETE
M-ACTION
M-EVENT-REPORT
confirmé
confirmé
conf/non-conf
conf/non-conf
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…..
Quelques Infos sur LDAP
Anne Marie Déry
Lightweight Directory Access Protocol (LDAP)
Protocole d'annuaire sur TCP/IP.
Adaptation du protocole DAP (protocole d'accès au service d'annuaire X500
de l'OSI)
à l'environnement TCP/IP.
Frontal d'accès à des annuaires X500,
1995,
Annuaire natif (standalone LDAP)
Université du Michigan ( U-M LDAP).
Standard et Extensible
le protocole : accéder à distance à l'information ,
un modèle d'information : définir le type de données ,
un modèle de nommage : définir comment l'information est organisée
et référencée,
un modèle fonctionnel : comment accèder à l'information ,
un modèle de sécurité : protéger données et accès ,
un modèle de duplication : répartir la base entre les serveurs de la base,
des APIs : développer des applications clientes,
LDIF : un format d'échange de données.
Nommage et Information
Même découpage que pour GDMO
Description des classes et de la hiérarchie de classes : DIB
(Templates : OBJECT CLASS et ATTRIBUTE et ATTRIBUTE SYNTAX)
DIB = Directory Information Base
Enregistrement dans un arbre d’enregistrement (OID)
Construction d’un arbre de nommage avec les instances : DIT
DIT = Directory Infotmation Tree
Pas de contenance pour décrire l’arbre de nommage
Le protocole
Communication client-serveur.
se connecter ou se déconnecter,
rechercher, comparer, créer, modifier ou effacer des entrées.
Dialogue LDAP pas en ASCII mais utilise le format de codage Basic
Encoding Rule (BER).
LDIF: LDAP Data Interchange Format
.
dn: cn= June Rossi, ou= accounting, o= Ace Industry, c= US
objectClass: person
objectClass: organizationalPerson
objectClass: inetOrgPerson
cn: June Rossi
sn: Rossi
givenName: June
mail: [email protected]
userPassword: {sha}KDIE3AL9DK
uid: rossi
telephoneNumber: 2616
roomNumber: 220
dn: cn= Lisa Jangles, ou= Sales, o= Ace Industry, c= US
changetype: modify
add: telephonenumber
telephonenumber: (408) 555- 2468
add: manager
manager: cn= Harry Cruise, ou= Manufacturing, o= Ace Industry, c= US
Template Object Class
dibx500 DEFINITIONS ::=
BEGIN IMPORTS OBJECT-CLASS FROM info;
objectClass OBJECT IDENTIFIER ::= {joint-iso-ccitt ds (5) 6}
top OBJECT-CLASS
MUST CONTAIN {class} ::= {objectClass 0}
ufr OBJECT-CLASS SUBCLASS OF top
MUST CONTAIN {ecole} ::= {objectClass 1}
annee OBJECT-CLASS SUBCLASS OF top
MUST CONTAIN {no} ::= {objectClass 2}
module OBJECT-CLASS SUBCLASS OF top
MUST CONTAIN {descriptif} ::= {objectClass 3}
cours OBJECT-CLASS SUBCLASS OF top
MUST CONTAIN {nom, enseignant, adresseCours}
MAY CONTAIN { references, adresseTP} ::= {objectClass 4}
Les URLs LDAP
Les URLs LDAP (RFC2255)
permettent aux clients Web d'avoir un accès direct au protocole LDAP.
exemples :
ldap://ldap.netscape.com/ou=Sales,o=Netscape,c=US?cn,tel,mail?scope=sub?
(objetclass=person)
ldap://ldap.loria.fr/cn=Laurent%20Mirtain,ou=Moyens%20Informatiques,o=loria.fr
ldap://ldap.loria.fr/o=loria.fr?mail,uid,sub?(sn=Mirtain)
Exemples d'application de LDAP
Un protocole de diffusion de données : pages blanches
Un protocole de service : vérification d’e-mails
Une passerelle entre applications : carnets d'adresses Netscape Communicator
et Microsoft Outlook
Un protocole de service pour les systèmes d'exploitation ou les services Internet :
certificats d'authentification
projets en cours pour remplacer NIS, NIS+ par LDAP.
Déployer un service d'annuaire
LDAP
Déterminer les besoins en service d'annuaire et ses applications
Déterminer quelles données sont nécessaires
Choisir son schéma
Concevoir son espace (modèle) de nommage
Le Directory Tree, Nommage des entrées, Choix du suffixe
Définir la topologie de son service
Le partitonnement, Le service referral, La duplication (replication)
Sécuriser le service
Authentification, Contrôle d'accès, Protections réseau
Les logiciels serveurs LDAP
OpenLDAP server,
Innosoft's Distributed Directory Server,
Netscape Directory Server,
Sun Microsystems's Directory Services,
IBM's DSSeries LDAP Directory,
University of Michigan's SLAPD.
D'autres annuaires supportent les requêtes au format LDAP :
Novell's NetWare Directory Services (NDS) 3.0,
Microsoft's Active Directory (AD),
Lotus Domino.
Logiciels clients
Navigateur Web utilisant URLs LDAP
Netscape Communicator
Microsoft Outlook
Serveurs Netscape SuiteSpot (leur serveur mail, news, web...)