Title: Plan
1Plan
- Lapproche objets
- Les normes OSI
- Compléments aux normes OSI
- Les travaux du NM Forum
- le TMN
- SNMP (V1, V2, V3, RMON)
- Comparaison des approches
2Lencapsulation
CHAMPS
3Les classes
- Deux composantes
- composante statique les données, composées de
champs. Ils caractérisent l'état des objets
pendant l'exécution du programme. - composante dynamique les procédures appelées
méthodes, qui représentent le comportement commun
des objets appartenant à la classe. Les méthodes
manipulent les champs des objets et caractérisent
les actions pouvant être effectuées par les
objets.
4Exemple de classe
- Classe Article
- Champs référence désignation prixHT quan
tité - Méthodes Prix TTC () retourner (1.186
prixHT) prixtransport () retourner (0.05
prixHT) retirer (q) quantité lt----
quantité - q ajouter (q) quantité
lt---- quantité q
5Linstanciation
- La classe décrit l'objet
- Elle sert de modèle pour construire les instances
- Les instances sont reproduites par moulage
- La liste des champs est détenue par la classe
- Les instances possèdent les valeurs
- Les méthodes ne sont pas dupliquées
6Exemple d'instanciation
7L' héritage
- Mise en commun des caractéristiques communes à
plusieurs classes - Les classes sont spécialisées par définition de
sous-classes - Une sous-classe partage les variables et les
méthodes de sa super-classe - On dit qu'elle hérite des propriétés de sa
super-classe - Deux techniques permettent de spécialiser une
classe - l'enrichissement de nouvelles variables et/ou
de nouvelles méthodes sont définies - la substitution une nouvelle définition est
donnée à une méthode.
8Définition des classespar héritage
- Classevêtement
- SuperclasseArticle
- Variables d'instancetaillecoloris
- Méthodes
- ClasseArticleDeLuxe
- SuperclasseArticle
- Variable d'instance
- MéthodesprixTTC () retourner (1.25prixHT)
9Le graphe d' héritage
- La relation d'héritage lie une classe à sa
super-classe - La représentation graphique de la relation forme
le graphe d'héritage - La relation d'héritage est transitive
- Le terme superclasse désigne toute classe dont
hérite une classe donnée - La structuration en classe apporte une modularité
importante - La plupart des langages possèdent des
bibliothèques de classes prédéfinies - Par exemple en Smalltalk-80 LinkedList, Form
(objets graphiques), Process, Sémaphore, ...
10Graphe dhéritage
11Le graphe d' héritage
- Graphe d'héritage simple
- Le graphe d'héritage est un arbre
- la fermeture transitive de la relation d'héritage
est un ordre total - L'héritage multiple
- Une classe peut posséder plusieurs superclasses
directes - Pas d'arborescence, mais un graphe orienté sans
circuit - Certaines classes sont crées pour former des
"réservoirs d'héritages". Elles ne seront pas
instanciées. Dans certains langages, elles sont
dites abstraites. - Avantages augmenter la modularité et éviter des
duplications
12Héritage multiple
13Relation est un
14Recherche de la méthode à appliquer
- Cas de l'héritage simple
- Le graphe d'héritage d'une classe est une liste
ordonnée de classes. - La méthode sera recherchée par un parcours de bas
en haut de cette liste. - Exemple
- Méthode prixTTC de la classe Téléviseur
- Arbre d'héritage de la classe Téléviseur
- Téléviseur, Article DeLuxe, Article, Objet
- La méthode sélectionnée sera celle de la classe
ArticleDeLuxe
15Recherche de la méthode à appliquer
- Cas de l'héritage multiple
- Le graphe d'héritage d'une classe est un graphe.
-
- Il y a donc risque de conflit dans la recherche
de la méthode à appliquer.
16Envoi de messages
- Un objet ne peut agir directement sur un autre.
- Il ne peut le faire qu'en activant une méthode de
l'objet visé. - Pour cela, il lui envoi un message
- L'envoi de messages est donc le seul moyen de
communication entre objets. - La réception d'un message entraîne la recherche
de la méthode dans l'environnement de l'objet. - Lorsque la méthode délivre un résultat, celui-ci
est retourné à l'expéditeur. On parle de
transmission avec retour.
17Les principaux langages objets
- Smalltalk-80
- Objective-C LISP et ses variantes objets
- (Le-Lisp, Flavors, Ceyx, ObjVLISP,...)
- SIMULA
- C
- Eiffel
- ADA
- et JAVA
18Notion de vue
19Objet en AdR
20Objet en AdR
Objet
Interface
Appli ancienne
Nouvel élément
Nouvelles caractéristiques
nouvelle appli
21Objet en AdR
- Protocole OSI (CMIP)
- objet classique caractéristiques particulières
- Protocole Internet (SNMP)
- pas dhéritage
- de simples variables
- Autres approches
- IDL CORBA
- Java
22Plan
- Lapproche objets
- Les normes OSI
- Compléments aux normes OSI
- Les travaux du NM Forum
- le TMN
- SNMP (V1, V2, RMON)
- Comparaison des approches
23Le 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"
24Normes OSI pour AdR
25Trois modèles
- Modèle organisationnel
- Modèle dinformation
- Modèle fonctionnel
26Le 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.
27Schéma dorganisation
Système
Système
administré
d'administration
Processus
Processus
de
agent
Fonctions
gestion
D
CMIP
Objets
gérés
28Objets gérés
Objet administré
29Trois niveaux de gestion
- le niveau gestion-système
- repose sur des échanges d'information de gestion
provenant de toutes les couches du modèle OSI - le niveau gestion de couche
- la gestion est confinée à une couche donnée (en
s'appuyant sur les services offerts par les
couches inférieures) - exemple le Network Connexion Management
Subsystem (NCMS) qui spécifie un sous-protocole
de gestion de connexion (ISO 8073/AD1) - le niveau opérations de couches
- la gestion est réalisée par des échanges
d'informations véhiculées par les protocoles de
la couche
30Le modèle dinformation
- Une approche objet
- un langage de description
- un langage déchanges
- Des principes
- nommage
- enregistrement
- Des bibliothèques
31Approche 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
32Modè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
33Description des objets
- Les attributs
- Les méthodes
- Les relations
- Les paquetages conditionnels
- L'arbre de contenance
- L'allomorphisme
34Outil de description
- Les gabarits GDMO
- MANAGED OBJECT CLASS définition d'une classe
- PACKAGE
- PARAMETER
- NAME BINDING
- ATTRIBUTE
- GROUP-ATTRIBUTE
- BEHAVIOUR
- ACTION
- NOTIFICATION
35ASN.1
- ASN.1 (Abstract Syntax Notation 1)
- C'est un langage défini par sa grammaire (cf ISO
8824) - Une grammaire est un ensemble de règles de
productions. - Le rôle d'ASN.1
- 1- Description des structures de données
- 2- Permettre la transmission de ces structures à
travers le stack OSI - Mode d'utilisation
- 1- décrire les objets en ASN.1 (en suivant le
formalisme des gabarits) - 2- utiliser un "compilateur" vers le langage de
développement choisi (C, ADA, Pascal, ...) ce qui
génère - les structures de données adaptées
- les règles d'encodage vers la syntaxe de
transfert
36Le rôle dASN.1
37Gabarit "MANAGED OBJECT CLASS"
- ltclass-labelgt MANAGED OBJECT CLASS
- DERIVED FROM ltclass-labelgt,ltclass-labelgt
-
- CHARACTERIZED BY ltpackage-labelgt,ltpackage-label
gt -
- CONDITIONAL PACKAGES ltpackage-labelgtPRESENT IF
- ltcondition-definitiongt
- ,ltpackage-labelgtPRESENTIFltcondition-definitiongt
-
- PARAMETERS ltparameter-labelgt,ltparameter-labelgt
-
- REGISTERED AS object-identifier
38Exemple de classe
- exampleObjectClass MANAGED OBJECT CLASS
- DERIVED FROM "Rec. X.721 ISO/IEC 10165-2
1992" top - CHARACTERIZED BY
- examplePackage1 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! - examplePackage2 CONDITIONAL PACKAGE
- REGISTERED AS joint-iso-ccitt ms(9) smi(3)
part4(4)managedObjectClass(3)exampleclass(0)
39Principe de nommage
- Larbre de contenance
- définit les notions de classes contenantes et de
classes contenues - impose des contraintes au nommage
- Larbre de nommage
- respecte les contraintes de larbre dcontenance
- définit un nom global pour chaque objet
- le Global Distinguished Name (GDN)
- permet dutiliser un nom local
- Distinguished Name
40Larbre denregistrement
41Quatre arbres
- Arbre dhéritage propriétés des classes
- Arbre de contenance contraintes de contenances
pour guider le processus de nommage (défini au
niveau des classes) - Arbre de nommage pour identifier les objets (ou
instances) - Arbre denregistrement pour référencer les
classes (ou les constituants des classes, ie les
gabarits)
42Le modèle d'information
- Remarques importantes
- La normalisation ne fournit pas les moyens de la
conception par objets. Le problème de la
modélisation reste donc entier. - La normalisation fournit des bibliothèques
d'objets "génériques" qu'il faut étendre par
"raffinement" (création de sous-classes) - Les objets devront être enregistrés par une
autorité compétente - La conformité sera vérifiée à partir des
descriptions de réalisation les MOCS
(Management Objects Conformance Statements).
43L'objet 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", - allamorphicPackage 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..."
44Exemple objet system
- 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",
- ....
-
45Le modèle fonctionnel
- Définition des 5 domaines de gestion
- Définition des SMF
- System Management Functions
46Les Fonctions de Gestion de Systèmes
- Objectif Spécification d'interfaces de gestion,
fondées sur le modèle agent-gestionnaire - Moyens Deux aspects sont nécessaires
- le modèle objets (ressources à gérer, leurs
propriétés, relations, opérations) - l'accès aux objets (contrôle d'accès, sélections,
coordination d'opérations élémentaires,
horodatage...) - Définition
- Une SMF est un standard qui décrit des classes
d'objets ou des propriétés d'objets utilisables
pour réaliser des fonctions de gestion. Elle
normalise les aspects protocolaires correspondant
à ces services.
47Les SMF (suite)
- Contenu trois aspects
- sémantique des propriétés et/ou objets support
- exemple types d'alarmes, objets Log,
LogRecord - description des services d'accès à ces propriétés
support (procédures) - exemple mapping sur les services de CMISE
- syntaxe supportant ces définitions (formulaires
GDMO et productions ASN 1) - Relations entre SMF
- Une SMF peut utiliser les services définis dans
une autre SMF
48Les SMF (suite)
- Unités fonctionnelles
- Une SMFU définit un ensemble de propriétés
(services de gestion) que les objets d'un système
peuvent offrir à un gestionnaire sur une
association. Elles sont négociables à
l'initialisation de l'association. - Exemples La gestion d'objets définit deux SMFU
- - services d'opérations
- - services de notification
- La gestion des journaux définit une SMFU
- La gestion des états ne définit pas de SMFU (car
non négociable individuellement) - Remarque
- Une SMF n'est pas une fonction en tant que
telle. Les services décrits par une SMF sont
destinés à être intégrés dans une interface de
gestion. Ils peuvent être utilisés par des objets
de classes différentes.
49Principe des SMF
50Principe des SMF
Objet
Interface de gestion (CMISE)
Interface SMF (enrichie)
objet
51Liste des SMF
- Object Managt Function IS Workload Monitoring
Function DIS - State Managt Function IS Test Management
Function DIS - Attributes for Relationships IS Summurization
Function CD - Alarm reporting IS Confidence and Diagnostic
Test CD - Event Report Function IS Time Management WD
- Log Control Function IS OSI software
Management WD - Security Alarm Reporting Funct. IS
- Security Audit trail Function DIS
- Objects and Attributes for Access CD
- Accounting Meter Function CD
- Scheduling Function WD
- Response Time Monitoring
52Fault management
Accounting management
Configuration management
Performance management
Security management
Object Management
State Management
Relationship Management
Alarm reporting
Event-report management
Log control
Security-alarm reporting
Security audit trail
Access control
Accounting meter
Workload monitoring
Test management
Summurisation
Specific Management Functions
Event Report
Get
Set
Action
Cancel-Get
Create
Delete
53State Management Function
- Attributs de gestion
- Etat opérationnel En service
- Hors service
- Etat d'utilisation Libre (non utilisé)
- Actif (utilisable)
- Occupé (plus utilisable)
- Inconnu (de l'objet)
- Etat administratif Bloqué (par
l'administrateur) - débloqué ( " )
- En libération
- Attributs de maintenance (STATUS)
- repair status (réparation, alarme...)
- installation status (en phase d'installation)
- availability status (en test, hors service,
hors tension...) - control status (réservé, suspendu...)
54State Management Function (suite)
- Notifications
- State Change notification avec en paramètres
- state change info (attribut d'état)
- additional state change info
- Objet
- state change record
- Par spécialisation de la classe "Event Log
Record" des paramètres des notifications
ci-desssus - Services offerts
- State Change Reporting Service M-EVENT-REPORT
- Lire attributs d'état PT-GET
- Modifier attributs d'états PT-GET
55CMISE/CMIP
- Les services de CMISE
- Interactions avec les interfaces des objets
- (lecture, écriture, creation, destruction
dinstances, ...) - Utilisation des principes de nommage
- Sélection dobjets multiples
- Actions multiples (atomicité)
56Sélection dobjets multiples
-1
-2
-3
Filtering (valeurs dattributs)
Scoping
57CMIP
- Protocole couche 7 OSI
- Supporte les opérations CMISE à distance
- Sintègre dans une Association (cf ACSE)
- négociation de lassociation (partenaires, unités
fonctionnelles, ...) - fermeture de lassociation
- Sappuie sur les services de ROSE
- (invocation dopérations à distance)
58Services CMIP
- Service Modes possibles
- M-EVENT-REPORT cnf/ncf
- M-GET cnf
- M-SET cnf/ncf
- M-ACTION cnf/ncf
- M-CREATE cnf
- M-DELETE cnf
- M-CANCEL-GET cnf
59Services CMIP
- les services d'opérations demandes d'invocation
d'opérations formulées à un agent, concernant des
objets gérés par celui-ci, - un service de notification transmission par un
agent de comptes rendus contenant les
notifications émises par un objet.
60Services CMIP
- Opération/notification Service Mode
- 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
61Exemple M_CREATE
- Paramètres spécifiques
- superior object instance
- reference object instance
- Service
- nommage c'est-à-dire définir le GDN (Global
Distinguished Name) --gt 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
-
62Exemple 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
-
63Implémentations
- Normalement sur stack OSI (couches 1à6)
- Possible sur stack TCP (CMOT)
- Egalement sur LLC (avec adaptations), voir CMOL
ou LMMP
64Plan
- Lapproche objets
- Les normes OSI
- Compléments aux normes OSI
- Les travaux du NM Forum
- le TMN
- SNMP (V1, V2, RMON)
- Comparaison des approches