Administration des réseaux
Principes - Modèle ISO - SNMP
François-Xavier Marseille
Nicolas Peret
Philippe Sidler
« Administration ? »
Petit Larousse illustré : Action de gérer
Un double point de vue :
– Organisation
– Ensemble des services offerts par cette
organisation
Administration des réseaux
3 points de vue
– Utilisateurs => Qualité de services
– Entités à gérer
– Outils de gestion
Obligation d’un gérant local
RFC 1173 : Obligation d’un gérant local
vis-à-vis de l’extérieur
Être connu et accessible de l’extérieur
Avoir un droit d’intervention sur les
entités du réseau
Ne pas offrir d’accès anonyme à
Internet
Organisation de
l’administration
Gestion du réseau réel
Gestion du réseau logique
Gestion des performances
Gestion de la planification
Stratégie d’administration
(1/2)
« Plug and Play/Pray »
– on branche et ça marche
– aucun paramètre à définir
Configuration « à la main »
– ex : à chaque ajout de terminal, lui
affecter statiquement une adresse IP
Stratégie d’administration
(2/2)
But de l’administrateur : tirer le meilleur
profit du matériel présent
Nécessité de trouver un compromis
entre les deux approches précédentes
Une stratégie est propre à chaque
entité gérante (entreprise, laboratoire,
etc.)
Architecture classique
d’administration
Notification
Arrêt du système
Tentative de réparation
La gestion ISO
5 critères de gestion
– gestion des configurations
– gestion des performances
– gestion des anomalies
– gestion de la sécurité
– gestion des informations comptables
Les protocoles
d’administration
CMIP
– Common Management Information
Protocol
– Fonctionne avec la pile de communication
OSI
SNMP
– Simple Network Management Protocol
– Fonctionne sous TCP/IP
Les informations disponibles
via les protocoles
Stockées dans un MIB (Management
Information Base)
MIB
– structure un arbre définie par l’ISO
– plus on va vers les feuilles, plus les infos
sont spécifiques.
Architecture de l’ISO
Architecture OSI
d’administration réseaux
2 types d’application processes
– managers sur les systèmes
d ’administration
– agents sur les systèmes administrés
Dialogue manager-agent utilise un
ensemble de protocoles
Architecture OSI
d’administration réseaux (2)
Un agent contrôle des managed objects
– Un modem
– Une table de routage IP
– Une connexion TCP
Le manager
– Envoie des ordres aux agents (self-test)
– Reçoit des informations des agents (lit une
variable)
– Fixe des valeurs (écrit une variable)
Modèle d’administration
L’administration peut être vue au
travers de 3 modèles
– Modèle organisationnel
– Modèle fonctionnel
– Modèle d’information
Modèle organisationnel
Notion de domaine d’administration
Utilité
– Mise à l’échelle
– Sécurité
– Autonomie d'administration
Modèle organisationnel (2)
Répartition des agents/managers
– Un domaine peut comporter plusieurs
agents/managers
– 1 agent/manager peut être partagé entre
plusieurs domaines
Système d’administration coopératif et
distribué
Modèle fonctionnel
5 Specific Management Functionnal Areas
(SMFA)
– Gestion des erreurs
Détecter, isoler, corriger les erreurs du réseau
– Gestion de la configuration
Configuration distante d'éléments du réseau
– Gestion des performances
Evaluation des performances
Modèle fonctionnel (2)
Gestion de comptes utilisateurs
– Faire payer l’utilisation du réseau en
fonction de son utilisation
– Limiter l’utilisation des ressources
Gestion de la sécurité
– Contrôle d’accès
– Authentification
– Cryptage
Modèle d’information
Structure of Management Information
(SMI)
– Ensemble de conventions pour la
description et l’identification des données
– Permet à n’importe quel type de protocole
de manipuler les données (CMIP ou SNMP)
Modèle d’information (2)
Management Information Base (MIB)
– Dépôt conceptuel d’information de gestion
– Ensemble des informations nécessaires à
l'administration
– Ne se préoccupe pas de l’aspect stockage
des informations
Protocole ISO couche 7
Protocoles ISO de la couche
application
Managers et agents doivent pouvoir
communiquer
Application Entity (AE)
– la partie d’un Application Process dévolue à la
communication
– Ensemble de capacités de communication
Application Association
– connexion de niveau 7 nécessaire pour que deux
AE puissent communiquer
Protocoles ISO de la couche
application (2)
AE repose sur les Applications Service
Elements (ASE)
– CASE (Common Application Service
Element)
ACSE
ROSE
– SASE (Specific Application Service Element)
CMISE
ASCE
Association Control Service Element
Sert à établir et à fermer une connexion
entre AE
– Identifie les AE (identifiant unique)
– Définit un contexte de travail (variables
partagées)
– Définit les autres protocoles utilisable au-dessus
Nécessaire pour l’utilisation de CMIP
ROSE
Remote Operation Service Element
Equivalent ISO des RPC de Sun
Invocation d’une opération à distance
Nécessite une association pour fonctionner
Utilisé par CMIP pour l’envoie de requêtes,
et la gestion des erreurs
CMISE
Common Management Information Service
Element
Fournit les service CMIS (Common Management
Information Service)
– Services de base pour l’administration
Nécessite l’utilisation de ROSE et ACSE
Offre des services acquîtés ou non pour:
– Rapporter des événements
– Manipuler les données d’administration
CMISE (2)
On définit 2 types d’entités CMISE
– CMISE-Service-Provider
fournit le service CMIS
– CMISE-Service-User
Invoking-CMISE-SU : invoque un service CMIS
Performing-CMISE-SU : exécute le service CMIS
CMIS : Gestion des
associations
Ce sont des appels à ACSE
– M-INITIALISE
établit une association entre 2 CMISE-SU dans le but
d’échanger des informations de gestion
– M-TERMINATE
pour fermer une association (procédure normale)
invoquée par un CMISE-SU
– M-ABORT
pour fermer de façon autoritaire une association
invoquée par un CMISE-SU ou un CMISE-SP
CMIS : gestion des
notifications
M-EVENT-REPORT
– invoqué par un CMISE-SU pour notifier un
événement issue d’un objet administré à
un CMISE-SU
CMIS : gestion des opérations
– M-GET
pour obtenir la valeur
– M-SET
pour mettre à jour une information de gestion
– M-ACTION
pour faire exécuter une action
– M-CREATE
pour créer une nouvelle instance d’un objet
– M-DELETE
pour supprimer une instance d’un objet
CMIP Protocol Suite
CMOT Protocol Suite
CMOT
CMIP Over TCP/IP
– Montrer que le modèle OSI peut être appliqué sur
TCP/IP
– Migrer TCP/IP vers les protocoles de l’ISO
– Architecture basée sur CMISE, ROSE, ACSE
– Utilise SMI, MIB
– Définit un protocole et une architecture pour
l’administration de réseaux
– Le développement des applications est laissé à des
tiers
CMOT : Modèle de gestion
Modèle organisationnel
– Se limite à un seul domaine
Modèle fonctionnel
– Prévoit de répondre au 5 SMFA au travers de
CMISE
Modèle d’information
– Internet SMI : ISO SMI modifié par l’IETF
CMOT : architecture du
protocole
Pouvoir mapper l’architecture OSI dans
le monde TCP/IP
Couche d’adaptation utilisant LPP
– Lightweigth Presentation Protocol
– Vraie couche de niveau 6
– Passer à ISO en remplaçant TCP, UDP, IP
– La couche 7 restera inchangée
ASN.1
Notation de Syntaxe Abstraite 1
Description de données
Déclarations ASN.1 similaires aux
déclarations en C
Types de données:
– Existence de types prédéfinis
– Possibilité de sous-typage
– Possibilité de créer de nouveaux types
Quelques types de données
ASN.1
Type Signification
INTEGER Entier
BIT STRING Chaîne de bits
OCTET STRING Chaîne d'octets
NULL Aucun type
OBJECT IDENTIFIER Type de données
officiellement défini
Identification des objets
Utilisation d’un arbre de nommage
– Chaque objet normalisé doit se trouver à un
emplacement unique de l’arbre
– Nœuds identifiés par un couple
étiquette(nombre) ou par le nombre seul
Identification des objets par la liste des
nœuds
– Exemple: { iso(1) organisation identifiée(3)
dod(6) internet(1) admin(2) }
Arbre de nommage des objets
ASN.1
Définition de type
Mot clé Signification
SEQUENCE Equivalent à une structure
C
SEQUENCE OF Tableau mono-
dimensionnel
CHOICE Union d’une certaine liste
de types
Exemples de
définition des objets
Définition de variable:
– compteur INTEGER ::= 100
Définition d’objet:
– internet OBJECT IDENTIFIER
::= { iso org(3) dod(6) 1 }
Exemples de définition de
type
Définition de sous-types:
– Status ::= INTEGER { haut(1), bas(2) }
– TaillePaquet ::= INTEGER(0..1023)
Définition d’un nouveau type:
– AtEntry ::= SEQUENCE {
atIndex INTEGER,
atPhysAddress OCTET STRING,
atNetAddress NetworkAddress
}
Syntaxe de transfert ASN.1
Définit la façon dont les valeurs des
types ASN.1 sont converties sans
ambiguïté possible en une suite d’octets
SNMP utilise BER (Basic Encoding
Rules)
Codage
Maximum quatre champs:
– Identificateur (type ou étiquette)
– Longueur du champ de données
– Champ de données
– Drapeau de fin de données si la longueur
des données est inconnue (interdit par
SNMP)
Codage de l’identificateur (1)
2 bits: étiquette
– 00 Universel
– 01 Application
– 10 Spécifique du contexte
– 11 Privé
1 bit:
– 0 Type primitif
– 1 Type construit
Codage de l’identificateur (2)
5 bits:
– valeur de l’étiquette si elle est comprise
entre 0 et 30
– 11111 sinon (valeur dans l’octet suivant)
Valeur de l’étiquette:
– Code associé au type de base (2 pour
INTEGER, 4 pour OCTET STRING...)
– 16 pour SEQUENCE et SEQUENCE OF
Codage de la longueur
Longueur < 128:
– Codage immédiat (bit de poids fort à 0)
Longueur >= 128:
– Premier octet: bit de poids fort à 1 et
longueur du champ dans les 7 bits de poids
faibles
– Octets suivants: la longueur
Codage des données
Dépend du type de données
Exemple: entier
– Codé en complément à 2
– Entier positif < 128 codé sur 1 octet
– Entier positif < 32768 codé sur 2 octets
Exemples de codage ASN.1
Informations de Gestion
Informations de Gestion
La description des informations de
gestion recouvre 2 aspects
– Structure of Management Information
(SMI)
Structure logique des informations de gestion
Identification et Description de ces informations
– Management Information Base (MIB)
Objets réellement gérés
SMI
Utilise un sous-ensemble de ASN.1
Objets administrables
Hiérarchie des informations de gestion
– Registration Hierarchy
– Containment Hierarchy
– Inheritance Hierarchy
Objets administrables
Repose sur les concepts « objet »
– Une entité administrable du réseau est vue
comme un objet
– On a des classes qui correspondent à un
type d’entité
– On a des instances qui correspondent aux
entités vivant sur le réseau
la classe « transport connection » est instanciée
à chaque nouvelle connexion
Les Hiérarchies
Registration Hierarchy
– Utilise l’arbre de nommage de ASN.1
Containment Hierarchy
– une classe peut en contenir d’autres
Identification unique
Relation de persistance
Inheritance Hierarchy
– Liée à la notion d’héritage
MIB
Dépôt conceptuel d’information de gestion
– Ne se préoccupe pas du stockage physique
– Ensemble des instances à un instant donné
RFC 1156
– Définit 8 groupes d’objets de base
RFC 1213
– MIB-II
Exemple de MIB (1)
Exemple de MIB (2)
Exemple MIB (2)
MIB
– [Link].2.1
TCP
– [Link].2.1.6
tcpConnTable
– [Link].[Link]
tcpConnEntry
– [Link].[Link].1
Retour sur CMIS
Précisions
Un Exemple
Retour sur CMIS
Opérations sur des ensembles d’objets
– Scoping
Lié à la Containment Hierarchy, on sélectionne:
– Objet de base seul
– Descendant de Nème niveau
– Objet + descendant (jusqu’au Nème niveau)
– Filtering
Applique un test à l’ensemble des objets pour
en extraire un sous-ensemble
Retour sur CMIS (2)
Synchronisation
– Best Effort
l’échec d’une MAJ n’entraîne pas l’arrêt des
autres MAJ
– Atomic
tout ou rien
Linked Replies
– Chaînage des trames CMIP
Un exemple : M-GET
Réponse au M-GET
Conception d’applications
d’administration
Systems management
functions
Documents de l’ISO qui normalisent les
échanges entre managers et agents
Sur la couche CMIP
Gestion des objets (10164-1)
Gestion des états (10164-2)
– en/hors service, inactif, actif …
Gestion des relations (10164-3)
Systems management
functions (2)
Gestion des alarmes (10164-4)
Gestion des événements (10164-5)
Gestion des journaux (10164-6)
Gestion de la sécurité (10164-7)
+ 6 autres extensions
SNMP
Simple Network Management
Protocol
Introduction
ARPANET:
– Analyse des problèmes avec ping
Internet:
– Méthode ping non viable
– SNMP v1 en 1990 (RFC 1157)
– Définition de l’information nécessaire à
l’administration (RFC 1155)
SNMP est désormais un standard
Le modèle SNMP
Composants d’un réseau
Nœuds administrés
Stations d’administration
Information d’administration
Protocole d’administration
Nœud administré
Entité capable de communiquer des
informations d’état
– Hôtes, routeurs, ponts, imprimantes…
Exécute un agent SNMP
– Processus d’administration SNMP gérant
une base de données locale de variables
donnant l’état et l’historique
Station d’administration
Ordinateur exécutant un logiciel
particulier
Communique avec les agents
– Envoi de commandes/réception de
réponses
Avantage:
– Agents très simples
Composants d’un réseau
Information d’administration
Chaque entité gère des variables
décrivant son état
Une variable est appelée objet
L’ensemble des objets d’un réseau se
trouve dans la MIB (Management
Information Base)
Protocole d’administration
La station d’administration interagit
avec les agents:
– Communication type question/réponse
– Interrogation de l’état des objets locaux
d’un agent
– Changement de l’état d’un objet
Protocole d’administration:
Déroutement
Cas d’événement non planifié:
– Plantage, démarrage, rupture de liaison…
L’agent signale l’événement à la station
d’administration
Agent mandataire
Cas où un nœud n’est pas capable
d’exécuter un agent
Agent mandataire (proxy agent):
– Situé sur un autre nœud
– Communique avec l’entité à administrer
dans un protocole non standard
– Communique avec la station
d’administration en utilisant SNMP
Sécurité dans SNMP
Capacités de la station d’administration:
– Connaître des informations sur les nœuds
– Isoler un nœud du réseau
SNMP v1: mot de passe (en clair!) dans
chaque message
SNMP v2: techniques cryptographiques
mais non utilisées car trop lourdes
Le protocole SNMP
Introduction
Modèle SNMP: communication entre
agents et station d’administration
hétérogènes
Problèmes:
– Définition des objets standard et
indépendante des constructeurs
– Technique standard de codage des objets
Utilisation d’ASN.1
Messages SNMP
Message Signification
Get Demande de la valeur d’une ou plusieurs
variables
Get-next Demande de la variable suivante
Get-bulk Chargement d’une grande table (SNMPv2)
Set Mise à jour d’une ou plusieurs variables
Inform Message de description d’une MIB locale
(SNMPv2)
Trap Indication de déroutement provenant d’un agent
Response Réponse
Format des PDU (1)
Get, Get-next, Inform, Response, Set et
Trap:
PDU Request Error Error index Variable bindings
Type ID status
PDU Type: Identification du message
Request ID: Correspondance requête/réponse
Error status: Type d’erreur (réponse)
Error index: Correspondance erreur/variable (réponse)
Variable bindings: Correspondance variable/valeur
Format des PDU (2)
Get-bulk:
PDU Request Non- Max- Variable
Type ID repeaters repetitions bindings
PDU Type, Request ID et Variable bindings: Mêmes fonctions
Non-repeaters: Nombre de variables demandées au travers de
Variable bindings devant être retournées sans
répétition
Max-repetitions: Nombre de répétitions des variables restantes dans
Variable bindings
Requête Get-bulk
Requête:
Get-bulk Request ID 3 4 A, B, C, D, E
Réponse:
Response Request ID 0 0 A, B, C, D0, D1, D2, D3, E0, E1, E2, E3
Format des messages (1)
Non sécurisé
Destination Unused Destination Source Context PDU
Authentifié mais non privé
Destination Digest Destination Source Destination Source Context PDU
timestamp timestamp
Privé et authentifié
Destination Digest Destination Source Destination Source Context PDU
timestamp timestamp
Crypté
Format des messages (2)
Context: Collection de ressources
accessibles par une entité SNMPv2
Digest: Résultat de l’algorithme de hachage
Destination timestamp: Dernière horloge du
récepteur connue de l’émetteur
Source timestamp: Horloge de l’émetteur
SNMP v3
Nouveautés de SNMPv3
Sécurité
– Authentification et cryptage
– Autorisation et contrôle d’accès
Administration
– Nommage des entités
– Gestion de la comptabilité
– Destinations des notifications
– Configuration à distance
Avant de partir manger
La structure ISO n’est utilisée que par les
grandes compagnies (de façon
propriétaire)
Une très large utilisation de SNMP
– Un protocole effectivement Simple
– S’appuie sur le protocole TCP/IP
Et le rôle de l’administrateur dans tout
ça ?
Références
Réseaux, Andrew Tanenbaum,
InterEditions
Simple Network Management Protocol
Technology Overview, Cisco,
[Link]
oc/cisintwk/ito_doc/[Link]
Références
RFC: [Link]
– RFC 1095 : CMOT
– RFC 1213 : MIB-II
– RFC 1212 : MIB
– RFC 1189 : CMOT AND CMIP
– RFC 1155,1157 : SNMPv1
– RFC 1905 : SNMPv2