100% ont trouvé ce document utile (1 vote)
51 vues29 pages

SNMP

snmp

Transféré par

lamissblknn
Copyright
© © All Rights Reserved
Nous prenons très au sérieux les droits relatifs au contenu. Si vous pensez qu’il s’agit de votre contenu, signalez une atteinte au droit d’auteur ici.
Formats disponibles
Téléchargez aux formats PDF, TXT ou lisez en ligne sur Scribd
100% ont trouvé ce document utile (1 vote)
51 vues29 pages

SNMP

snmp

Transféré par

lamissblknn
Copyright
© © All Rights Reserved
Nous prenons très au sérieux les droits relatifs au contenu. Si vous pensez qu’il s’agit de votre contenu, signalez une atteinte au droit d’auteur ici.
Formats disponibles
Téléchargez aux formats PDF, TXT ou lisez en ligne sur Scribd

Chapitre 3 : SNMP

protocole simple de
gestion de réseau
(Simple Network
Management Protocol)
Ntework 3
Supervision des réseaux

Dr Kamel ZELTNI
UFMC-FST

2019 /2010
Licence PRO Réseaux et Télécommunication
Table des
matières
I - Introduction 3

II - Les versions SNMP 6

III - Le modèle organisationnel 7

1. Architecture hiérarchique à deux-niveaux ...................................................................................................... 7

2. Architecture hiérarchique à 3-niveaux ............................................................................................................ 7

IV - Le modèle de communication 10

V - Le modèle informationnel 13

1. Base d'information de Gestion MIB ............................................................................................................. 13


1.1. Idendificateur d'objet OID (Obect IDentifier) ............................................................................................................................ 14
1.2. Les variables SNMP ................................................................................................................................................................... 14
1.3. MIB privée ................................................................................................................................................................................. 16

2. Structure of Management Information SMI ................................................................................................. 17

3. SNMP et ASN.1 notation ............................................................................................................................. 17


3.1. Les types .................................................................................................................................................................................... 18
3.2. Les valeurs ................................................................................................................................................................................. 20
3.3. Les macros ................................................................................................................................................................................. 20
3.4. Les modules ............................................................................................................................................................................... 21
3.5. Convention de notation ASN.1 ................................................................................................................................................... 21
3.6. SNMP et les règles d'encodage ................................................................................................................................................... 21
3.7. Le codage TLV Type-Length-Value ........................................................................................................................................... 22

4. Message SNMP ............................................................................................................................................. 24

Conclusion 27

Glossaire 28

Abréviations 29
Introduction

Introduction
I
Fondamental
Le protocole de gestion réseau simplifié SNMP (Simple Network Management Protocol) est un protocole de
couche application, proposé par IETF* (Internet Engineering Task Force) pour gérer les ressources réseau.

Définition

Le protocole SNMP* définit beaucoup plus qu'un protocole de communication qui gère le trafic. Il est basé sur
le modèle Gestionnaire / Agent proposé par ISO-NM. Il définit également la manière dont les données de
gestion doivent être consultées et stockées, ainsi que l'ensemble de la structure distribuée des agents et des
serveurs SNMP.

SNMP est appelé «simple» car l'agent nécessite un minimum de logiciels. La majeure partie de la puissance de
traitement et du stockage de données réside sur le système de gestion, tandis qu'un sous-ensemble
complémentaire de ces fonctions réside sur le système géré.

En raison de sa simplicité, le protocole SNMP est devenu le protocole de référence en matière de supervision
réseau. Il permet à un serveur central de communiquer avec tous les équipements actifs et les serveurs supervisé
pour connaître l'état de très nombreux paramètres.

Complément

La documentation pour Internet et ses protocoles est basée sur RFC** (Request for Comments). Lors de la
publication, ces documents reçoivent un numéro, tel que 1052, qui est utilisé pour l'identification.

3
Introduction

Les versions SNMP

Il existe 3 versions du protocole : SNMP v1, SNMP v2 et SNMP v3.

1. SNMP v1 (1988) RFC1155, RFC1156, RFC1157


La spécification d'origine.
Elle reste la version la plus utilisée car la plus « légère ».
2. SNMP v2c (1996) RFCs 1905, 1906, and 1907
Il a été créé pour remédier à un certain nombre de déficiences fonctionnelles apparentes dans le
protocole original.(améliorations de sécurité).
Les nouveautés majeurs sont:

- l'opération GETBULK qui permet de demander en bloc de plusieurs variables consécutives.


- l'opération INFORM le manager informe l'agent qu'il a reçu un TRAP
- Il n'a pas été largement accepté parce que l'IETF était incapable de parvenir à un consensus sur les
fonctionnalités de sécurité SNMP.
- Une édition révisée de SNMPv2 a été libérée en 1996 appelée SNMPv2c.

3. SNMP v3 (nouveau standard ) : La sécurité avant tout.

- Elle permet de disposer des avantages de la version 2 sans en présenter les inconvénients.
- Elle définit un nouveau mécanisme de sécurité évitant le décryptage des messages de commande
qui transitent sur le réseau (lecture, changement, et réutilisation), basée sur

- Modèle de sécurité USM* (User-based Security Model) RFC 227 . Il utilise 3 différents
mécanismes
L'Authentification : Utilisation d'un mot de passe pour la transmission d'un paquet.
Le Cryptage : Personne ne peut lire les informations contenues dans les paquets.
L'estampillage du temps : Un paquet SNMPv3 déjà transmis dispose d'une durée de vie.

4
Introduction

-
*
Modèle de contrôle d'accès basé sur les vues VACM (View-based Access Control Model)
Il autorise des droits d'accès différents en fonction des utilisateurs,
Il restreint les accès à la MIB en lecture et/ou en écriture pour un groupe d'utilisateur.

5
Les versions SNMP

Les versions SNMP


II
Il existe 3 versions du protocole : SNMP v1, SNMP v2 et SNMP v3.

1. SNMP v1 (1988) RFC1155, RFC1156, RFC1157


La spécification d'origine.
Elle reste la version la plus utilisée car la plus « légère ».
2. SNMP v2c (1996) RFCs 1905, 1906, and 1907
Il a été créé pour remédier à un certain nombre de déficiences fonctionnelles apparentes dans le
protocole original.(améliorations de sécurité).
Les nouveautés majeurs sont:

- l'opération GETBULK qui permet de demander en bloc de plusieurs variables consécutives.


- l'opération INFORM le manager informe l'agent qu'il a reçu un TRAP
- Il n'a pas été largement accepté parce que l'IETF était incapable de parvenir à un consensus sur les
fonctionnalités de sécurité SNMP.
- Une édition révisée de SNMPv2 a été libérée en 1996 appelée SNMPv2c.

3. SNMP v3 (nouveau standard ) : La sécurité avant tout.


Elle permet de disposer des avantages de la version 2 sans en présenter les inconvénients.
Elle définit un nouveau modèle de sécurité USM (User-based Security Model) évitant le décryptage des
messages de commande qui transitent sur le réseau (lecture, changement, et réutilisation).
Autorise des droits d'accès différents en fonction des utilisateurs (retreindre l'accès à la MIB).

6
Le modèle organisationnel

Le modèle organisationnel
III
Le protocole SNMP* implémente le modèle organisationnel proposé par le standard ISO-NM. Ce modèle
définit les éléments du réseau et la relation entre eux.

1. Architecture hiérarchique à deux-niveaux


Une architecture à deux niveaux ou 2-tier implémente deux parties

- La station de gestion: C'est le cœur du système, elle centralise toutes les données de gestion. C'est
notamment cette station qui va interagir avec les différents éléments gérés du réseau.
- Les agents SNMP : Ce sont des petits logiciels installés sur tous les éléments du réseau à superviser
(machines serveurs ou éléments actifs). Ils envoient les traps SNMP et répondent aux requêtes de la
station de gestion.

Comme montre la figure au dessus, le protocole SNMP supporte les gestionnaires simples et multiples, c-à-d un
ou plusieurs manageur(s) et un ou plusieurs agent(s). En effet, un agent répond à tout système de gestion qui
communique avec lui en utilisant SNMP.

2. Architecture hiérarchique à 3-niveaux


Dans une architecture à 3 niveaux (appelée architecture 3-tier), il existe un niveau intermédiaire, c'est-à-dire
qu'on a une couche intermédiaire entre l'agent et le manageur. Deux types de couche intermédiaire sont
considérés par SNMP, les sondes (RMON* probe) et les proxy

7
Les sondes RMON

Les réseaux étant de plus en plus distribués, géographiquement et logiquement, la gestion des réseaux est
devenue plus difficile. Une solution consiste à placer des périphériques de gestion à distance, parfois appelés
sondes, sur des segments distants. Les sondes agissent comme les yeux et les oreilles du système de gestion de
réseau, fournissant aux gestionnaires des informations statistiques.

Romote network MONitoring (RMON), définie par l'IETF*, est un protocole de gestion de réseau largement
utilisé pour surveiller le trafic sur les liaisons Ethernet. En fait, les sondes RMON* sont une amélioration de
SNMP, elles sont pour améliorer la convivialité des informations de gestion du réseau et alléger la charge
pesant sur la station de gestion (NMS*) et les administrateurs réseau. elles agissent en tant que Manageur et
d'Agent.

D'une part, la sonde RMON se comporte en tant que


Manageur dans la collecte des informations de gestion sur les
objets gérés, puis les analysées et les stockées dans la MIB*
localement. D'une autre part, elle se comporte en tant que
agent vis a vis la station de gestion pour limiter les
informations qu'un gestionnaire souhaite obtenir et lui
communique seulement les informations sur les statistiques,
l'historique et les alarmes. Enfin, Le NMS* obtient les
informations de gestion directement à partir de la sonde
RMON et contrôle le réseau.

Ces sondes peuvent être de deux types :

- RMON 1 : est spécifié comme partie de la base d'informations de gestion (MIB*) par la RFC* 1757 en
tant qu'extension du protocole SNMP (Simple Network Management Protocol).

- RMON 2 : est une extension de RMON et a le même mécanisme que RMON. Elle est spécifié dans la
RFC 2021.

RMON* surveille le trafic, les paquets et les octets reçus et


transmis uniquement, sur la couches MAC* (couches 1 et
2 du modèle OSI*). Ce pendant RMON2 étend la vue
limitée du segment local RMON à la vue globale du
réseau. Elle étend la surveillance sur les couches
supérieures au-dessus de la couche MAC* (couches 3 à 7
du modèle OSI*).

8
Le serveur proxy (agent proxy)

Le serveur proxy est un agent qui agit en tant que proxy


pour les autres agents. Il permet de gérer des équipements
« non standards » en servant de passerelle entre un système
propriétaire et SNMP. Également, il convertit les données
non-SNMP des objets non-SNMP en objets et messages
compatibles SNMP.

9
Le modèle de communication

Le modèle de
communication IV

Présentation générale du protocole SNMP

Le protocole de gestion de réseau fournit un moyen pour le gestionnaire, les objets gérés et leurs agents de
communiquer. Pour structurer le processus de communication, le protocole définit des messages spécifiques,
appelés requêtes, réponses et notifications.

Le gestionnaire utilise ces messages pour demander des informations de gestion spécifiques et l'agent les utilise
pour répondre.

Le modèle de communication SNMP définit les opérations de communication entre le gestionnaire SNMP
(NMS), les objets gérés et leurs agents. SNMP est un protocole de type Client/Serveur où les agents sont les
serveurs et le gestionnaire est le client. Il est basé sur l'échange de l'information de gestion.

Les opérations SNMP

Les opérations SNMP sont basées sur un échange de messages spécifiques de types requêtes – réponses : GET /
SET et notification Trap entre le manageur NMS et les agents. Le manageur utilise ces message pour demander
des informations de gestion et les agent les utilise pour répondre.

Un manageur NMS peut envoyer cinq types de messages à ses agents : elles sont utilisés pour collecter et
modifier les informations de gestion dans la MIB de l'agent SNMP.

- Get Request :

10
Le modèle de communication

- Cette commande sert principalement à la surveillance. elle permet de récupérer les valeurs des
objets dans la MIB d'un agent.

- Get-Next Request :

- On utilise cette commande à la suite d'une requête ‘Get', afin de récupérer la valeur de la variable
qui se trouve après celle qu'on a passé en paramètre. Autrement dit, elle permet de parcourir la
MIB d'un agent.

- Set Request :

- Elle permet de mettre à jour les valeurs des objets dans la MIB d'un agent.

- Get-bulk :

- Cette commande est implémenté dans la version SNMPv2, elle permet de récupérer les valeurs de
plusieurs variables par une seule requête.

- Inform :

- Cette commande est implémentée dans la version SNMPv2, elle permet à l'agent d'obtenir une
réponse à une Trap qu'il a émise, afin d'obtenir confirmation que le message Trap* a bien été
reçue et analysé.

Un agent peut envoyer deux types messages à son Manager :

- Get-Response :

- Elle permet de répondre à une requête GET/SET ou erreur.

- Trap Request :

- Elle représente un message d'alerte envoyé spontanément par l'agent sur l'équipement surveillé au
gestionnaire. Elle signale l'arriver d'un événement extraordinaire tel que (arrêt, température au-
dessus du seuil, ...).

Remarque : SNMP et le protocole PDU

SNMP est un protocole de la famille TCP*/IP*, et peut donc être utilisé sur tous les réseaux de type Internet.

SNMP suppose que le chemin de communication est un sous-réseau de communication sans connexion. En
d'autres termes, aucun chemin de communication préétabli n'est établi avant la transmission des données. Par
conséquent, SNMP ne donne aucune garantie quant à la fiabilité de la livraison des données; cependant, dans la
pratique, la plupart des messages passent et ceux qui ne peuvent pas être retransmis.

SNMP fonctionne au niveau 7 du modèle OSI mais il s'appuie directement sur le protocole UDP* (User
Datagram Protocol).

11
Le modèle de communication

Chacune de ces opérations a un format PDU* normalisé qui est utilisé par les gestionnaires et les agents pour
envoyer et recevoir des informations.

Deux ports sont normalement réservés à SNMP pour communiquer:

- Port 161 : Il est utilisé tant sur le gestionnaire que sur le nœud géré pour échanger les messages des
requêtes (set, get, getnext) vers l'agent qui répond sur le même port.

- Port 162 : pour l'échange des messages d'alerte (traps) émis par l'agent vers le gestionnaire (la station
d'administration).

La station de gestion NMS et le nœud administrable doivent donc disposer du couple protocolaire UDP-IP pour
envoyer et recevoir des messages SNMP sur le port 161 et recevoir les alertes (traps) sur le port 162.

Complément

12
Le modèle informationnel

Le modèle informationnel
V
Le protocole SNMP défini un modèle informationnel simple afin de fournir rapidement une infrastructure
opérationnelle de gestion de réseau. Ce modèle est décrit par deux RFCs*

- RFC 1213 : Il décrit la Base d'information de gestion (MIB* II). Ce RFC enrichie le RFC 1066 qui
décrit la première version de la MIB.
- RFC 1155 : une extension de RFC 1212, il décrit la structure et le nommage de l'information de
gestion SMI* (Structure of Management Information).

Dans cette partie, nous allons présenter l'essentiel de ces deux RFCs

1. Base d'information de Gestion MIB


Définition : Les MIBs (Management Information Base) :
A travers la RFC 1066 (MIB) et la RFC 1213 (MIB II), le protocole SNMP définit une collection d'objets
standard à administrer. Elles sont des sortes de bases de données avec une topologie en arbre. Les branches et
des feuilles de l'arbre décrivent et sauvegardent des informations sur les objets gérés. Chaque gestionnaire
(station d'administration) ou agents du système de gestion est associé avec une MIB.

13
Une MIB standard ressemble à la figure au dessous. Elle est composée d'une racine à laquelle sont liés tous les
nœuds, le nœud-racine de l'arbre n'est pas indiqué, mais il possède trois branches, à savoir la première
administrée par l'ITU-T* marqué CCITT*(0), la seconde administrée par l'ISO et marqué iso(1) et iso-ccitt(2)
administré par les deux à la fois.

1.1. Idendificateur d'objet OID (Obect IDentifier)

Tous les objets dans la MIB sont référencés par un identifiant unique appelé Object IDentifier OID. Un OID*
est un chemin absolu (avec le « . » comme séparateur) qui se compose soit:

- Numériquement : Composé des différent index associés à chaque nœud parcourus à partir de la racine de
la MIB. Par exemple « .1.3.6.1.2.1 » représente l'entrée du nœud MIB II.
- Nominalement: Composé des noms associés aux nœuds parcourus à partir de la racine de la MIB. Par
exemple «.iso.org.dod.internet.mgmt » représente l'entrée du nœud management mgmt.

Exemple
Sur la figure, vous pouvez voir arborescence des OIDs qui constituent la MIB standard.

Exemple
MIB II = .iso(1).org(3).dod(6).internet(1).mgmt(2).MIBII(1)

interface : .iso(1).org(3).dod(6).internet(1).mgmt(2).MIBII(1).interface(2)

entreprise : .iso(1).org(3).dod(6).internet(1).private(4).entreprise(1)

Rappel
En SNMP, on se concentre sur les sous-arbres sous la branche Internet désignée par l'OID {.iso(1).org(3).dod
(6).internet(1)}.

1.2. Les variables SNMP


En SNMP, les objets gérés sont implémentés par un ensemble de variables simples appelées variables SNMP.
Elles décrivent l'état des éléments actifs de réseaux (Paquet envoyé ou reçu sur une interface, la température de
CPU, etc. ). Chaque nœud ou variable dans la MIB est identifié par son nom ou son index dans l'arborescence.

14
En fait, les variables SNMP son les feuilles de la MIB,
elles sont rangés dans plusieurs groupes fonctionnels. Nous
présentons dans cette partie les plus essentiels.

1. System décrit le nœud géré,


2. AT Adress Translation définit la mise en
correspondance entre adresses réseaux (par
exemple, IP) et adresses physiques (par exemple,
MAC),
3. Interface contient un ensemble d'informations
utiles pour la gestion des ports/interfaces du nœud
géré,
4. IP* fournit un ensemble de données nécessaires
pour suivre l'état de l'entité IP, ce groupe propose
deux tables:

- IPAddrTable qui contient des informations


d'adressage relatives aux adresses IP du
nœud courant et

- IPRoutingTable qui contient des informations


sur les adresses IP destinataires telle que
l'adresse du nœud suivant,

5. TCP* offre des informations sur les connexions


TCP
6. ICMP* fournit un ensemble de compteurs ou
statistiques sur les messages ICMP,
7. UDP* traite les datagrammes UDP,
8. EGP* contient des informations sur les entités
voisines EGP et sur l'état d'EGP à travers des
compteurs.

15
Exemple : Le groupe fonctionnel System

Sur la figure au dessus vous pouvez voir les variables SNMP qui appartiennent au groupe système.

Remarque
Les objets utilisés par SNMP sont situés sous l'objet MIB II de sorte que leurs identificateurs commencent
toujours par {.1.3.6.1.2.1}.

1.3. MIB privée

En plus de la branche iso.org.dod.internet.mngt.mib-2


(1.3.6.1.2.1) contenant tous les objets standards, la MIB
privée est un sous-arbre d'objets définis par des entreprises
privées sous la branche iso.org.dod.internet.private.
enterprises (1.3.6.1.4.1). Elle permet aux entreprises et
constructeurs privés de définir et d'enregistrer des objets
propre pour leur équipements.

Complément

L'autorité suprême de régulation de l'Internet IANA* (Internet Assigned Numbers Authority) attribue des codes
d'entreprise (VendorID) aux entreprises privées et les publie dans les RFC (actuellement RFC 1700). Ce code
d'entreprise lui fournit un espace de données au sein de l'arbre des MIBs.

16
Exemple
Les OID d'entreprise commencent par le préfixe {1.3.6.1.4.1}. Si nous prenons l'exemple de Cisco, dont
l'identifiant est 9, toutes les variables propres à Cisco ont un OID débutant par 1.3.6.1.4.1.9.

2. Structure of Management Information SMI


In order for managers and agents to exchange data, both must understand it, regardless of the way either
machine represents data internally

Définition
La structure des information de gestion, SMI (Structure of Management Information), définit comment chacun
des éléments d'information, qui concernent les équipements gérés, est représenté dans la base d'information de
gestion, la MIB (Management Information Base).

Autrement dit, toutes les variables SNMP contenus par la MIB sont définit selon le modèle SMI. Ce modèle est
spécifié par les RFCs 1155 et 2578.

Fondamental : Le modèle SMI


Le modèle SMI indique que chaque objet géré (MO) doit avoir un nom, une syntaxe et un codage.

- Le nom: pour identifier de manière unique chaque objet.


- La syntaxe: pour définir la structure de donnée qui correspond au type d'objet, tel qu'un entier ou une
chaîne d'octets, etc.
- Le codage: pour décrire comment les informations associées aux objets gérés sont sérialisées pour la
transmission entre machines.

Méthode : L'application du modèle SMI pour le protocole SNMP


Comment le modèle SMI s'applique à SNMP?

- Les noms: Elles sont définis par le mécanismes de dénomination (Object IDentifier). Chaque élément est
identifié par son OID.
- La syntaxe: Elle est défini en utilisant le langage ASN.1* (Abstract Syntax Notation One).
- L'encodage: Les informations sont codées en utilisant les règles de codage basique BER (Basic Encoding
Rules).

17
3. SNMP et ASN.1 notation
Définition : Wikipédia
ASN.1 (Abstract Syntax Notation One) est un standard international spécifiant une notation destinée à décrire
des structures de données dans le secteur des télécommunications et des réseaux informatiques. La description
en ASN.1* d'une structure de données a pour but d'obtenir une spécification de la structure qui est
indépendante d'un encodage lié à un matériel particulier et sans ambiguïté. Ce standard est mis en œuvre dans
un grand nombre d'applications entre autre la gestion de réseaux, notamment dans le protocole SNMP.

Rappel
En termes de modèle ISO / OSI, la syntaxe ASN.1 est une fonction de couche Présentation (couche 6).
Rappelons que la couche Présentation définit le format des données stockées dans un système informatique
hôte.

Les éléments ASN.1

L'objectif ici est de décrire les éléments de ASN.1* nécessaires pour l'appliquer à la gestion de réseau et au
SNMP. (SNMP utilise un sous-ensemble d'ASN.1 pour des raisons de simplicité.)

ASN.1 définit les éléments de base du langage et fournit des règles pour combiner les éléments en messages tel
que

- La définition de type,
- L'affectation de valeur,
- La définitions et évocation de macros pour combiner les éléments et,
- La définitions des modules.

3.1. Les types

Définition
Un type est une classe de données. Il définit la structure de données dont la machine a besoin pour comprendre
et traiter les informations. Le SMI* définit trois types: primitif, constructeur et défini.

3.1.1. Les types de données Primitive

ASN.1 fournit plusieurs types primitifs (également appelés types simples)

INTEGER

Type primitif avec des valeurs distinctes (ou uniques) qui sont des nombres entiers positifs et négatifs, y
compris zéro. Le type INTEGER a deux cas spéciaux

- Le type enumerated integer: dans lequel les objets ont un nombre spécifique différent de zéro, par exemple
1, 2 ou 3.
- Le type integerbitstring: est utilisé pour les chaînes de bits courtes telles que (0..127).

18
OCTET STRING

Utilisé lorsque vous avez des données binaires multiples de 8 bits. Les valeurs ont 2 formes possibles binaire ou
hexadécimale délimitée par des guillemets simples suivis de B ou H, respectivement: binaire - '01100110'B ou
hexadécimal -' 66'H.

SNMP utilise trois cas spéciaux du type OCTET STRING:

- Le type DisplayString, tous les octets sont des caractères ASCII imprimables .
- Le type octetBitstring, est utilisé pour les chaînes de bits de plus de 32 bits
- Le type PhysAddress. est utlisé pour l'addresse physique d'un hôte Par exemple 4E:FF:E6:12:AF:A5

OBJECT IDENTIFIER (OID)

Utilisé lorsque vous avez besoin d'un identifiant globalement unique pour quelque chose. Une valeur
d'identifiant d'objet est une liste d'identifiants de la racine à un nœud dans l'arborescence d'identifiant d'objet.

- Le type ObjectName, un cas particulier utilisé par SNMP, limité aux identificateurs des objets et sous-
arborescences dans la base de données MIB

NULL

Un type avec une valeur spécifique, également appelée null. Le null sert d'espace réservé, mais n'est pas
actuellement utilisé pour les objets SNMP.

il est utilisé lorsque vous avez besoin d'un espace réservé pour lequel il n'y a pas de valeur.

3.1.2. Les types structurés (constructeur) Constructor types

Les types de constructeur, SEQUENCE et SEQUENCE OF, définissent des tables et des lignes (entrées) dans
ces tables.

Par convention, les noms des objets de table se terminent par le suffixe Table, et les noms des lignes se
terminent par le suffixe Entry.

Par exemple :

- Le nom de la table, tcpConnTable, se termine par le suffixe Table


- Le nom de ligne, tcpConnEntry, se termine par le suffixe Entry

3.1.3. Types définis (defined type)

Ils sont des noms alternatifs pour les types ASN.1 simples ou complexes et sont généralement plus descriptifs.

Ils comprennent :

- NetworkAddress
- IpAddress
- The Counter: représente un entier non négatif qui augmente de façon monotone jusqu'à atteindre une
valeur maximale, puis s'initialise et augmente à nouveau à partir de zéro.
- A Gauge: représente un entier non négatif. Il peut augmenter ou diminuer, mais il se verrouille à une
valeur maximale.
- TimeTicks: représente un entier non négatif qui compte le temps en centièmes de seconde depuis une
époque ou un point dans le temps

19
- Opaque: permet le passage de la syntaxe ASN.1 arbitraire.

3.2. Les valeurs


La valeur sert a quantifie le type, autrement dit elle fournit une instance spécifique pour le type.

Complément : Les sous types


Certaines applications n'autorisent qu'un sous-ensemble des valeurs de type possibles. La spécification de sous-
type apparaît après le type et indique la valeur ou les valeurs admissibles, appelées les valeurs du sous-type.

- Par exemple, si une application utilise un type INTEGER et que les valeurs autorisées doivent
correspondre à un champ de 8 bits, la plage de valeurs possible doit être comprise entre 0 et 255. Vous
exprimeriez ceci comme: INTEGER (0..255). Les (..) sont le séparateur de plage et indiquent la validité
de toute valeur entière comprise entre 0 et 255.

3.3. Les macros


La notation macro permet d'étendre le langage ASN.1. En SNMP chaque variable SNMP est définit par macro.
Un macro a le format dans la figure suivante. Par convention, une référence de macro (ou nom de macro)
apparaît entièrement en lettres majuscules

Exemple : Un Macro définit l'objet sysDescr.

Analysons le premier objet dans MIB-II sysDescr


décrivant l'objet « system » :
Le fichier fournit toutes les informations relatives à la
variable sysDescr :

- Syntaxe : il s'agit d'une chaîne de caractères de taille


variant entre 0 et 255.
- Accès : l'accès à cette variable se fait que en lecture.
- Etat : cette variable existe et est toujours utilisable.
- Description : il s'agit du nom complet du nœud.

Sa place dans l'arborescence : 1ère propriété de l'objet «


system » : On en déduit que cette variable a pour OID la
valeur .1.3.6.1.2.1.1.1

20
3.4. Les modules

ASN.1 recueille également des descriptions dans des


groupes pratiques, appelés modules. voir la figure suivante.
Le module commence par un nom de module, tel que
RMON MIB.

- Les instructions BEGIN et END entourent le corps du


module.
- Le corps peut contenir IMPORTS, qui sont les noms
des types, des valeurs et des macros, ainsi que les
modules dans lesquels ils sont déclarés.
- Dans l'exemple suivant, la première ligne après
IMPORTS spécifie que le type Counter, qui sera
utilisé dans ce module MIB, provient d'un autre
module MIB, RFC1155-SMI.

3.5. Convention de notation ASN.1

3.6. SNMP et les règles d'encodage

Définition : les règles d'encodage


Les règles d'encodage sont des règles qui permettent la transmission des informations sur un réseau. Le BER (
Basic Encoding Rules) ou les Règles de codage basique définissent cette syntaxe de transfert.

Les règles d'encodage basique BER (Basic Encoding Rules)

Le BER fait partie des premières règles édictées par le standard ASN.1 pour l'encodage d'informations
abstraites dans un flux de données. Les règles, connues dans le jargon ASN.1 comme la syntaxe de transfert,
qui définit la manière dont les données sont sérialisées pour la transmission. (Wikipédia)

Méthode
L'application de gestion générerait une requête SNMP, que le BER coderait et transmettrait sur le réseau.
Ensuite, la machine de destination reçoit les informations du réseau, les décode à l'aide des règles BER et les
interprète comme une commande SNMP.

21
- Chaque machine du système de gestion peut avoir sa propre représentation interne des informations de
gestion.
- La syntaxe ASN.1 décrit ces informations sous une forme standard.

3.7. Le codage TLV Type-Length-Value

La structure de codage utilisée pour la représentation externe est appelée encodage TLV* en référence à ses
trois composants Type-Length-Value.

Chaque élément de données est codé comme un identificateur de type, une description de longueur et les
éléments de données réels comme le montre la figure suivante.

Information de type Primitif (simple)

Information de type structuré

Méthode : Le codage TLV Type-Length-Value : Le champ Type


Le champ Type vient en premier et avertit la destination de la structure qui suit. Ainsi, le champ Type contient
une identification de la structure de codage; il code la balise ASN.1 (à la fois la classe et le numéro) pour le
type de données contenues dans le champ Valeur

Le sous-champ Forme (bit 6) indique la forme de l'élément de données. Le codage primitif forme = 0) signifie
que les octets de contenu représentent directement la valeur. Un codage constructeur (forme = 1) signifie que
les octets de contenu codent une ou plusieurs valeurs de données supplémentaires, comme une SEQUENCE.

22
Le numéro de tag apparaît dans le troisième sous-champ et est représenté en binaire.

Le premier octet contient souvent trois sous-champs: la classe, la forme et le numéro d'étiquette (Le Tag). Alors
que, le champ type contient un seul octet quand le numéro de Tag est compris entre 0 et 30, lorsque le numéro
de Tag est 31 ou supérieur, le champ Type contient plusieurs octets. comme montre l'exemple suivant.

Exemple : Numéro de tag faible < 31 (5 Bits)

Exemple : Numéro de tag élevé ≥ 31

Méthode : Le codage TLV Type-Length-Value : Le champ Longueur


- Le champ Longueur suit le champ Type et détermine le nombre d'octets que le champ Valeur contiendra.

23
Méthode : Le codage TLV Type-Length-Value : Le champ Valeur
Le champ Valeur contient zéro ou plusieurs octets, qui transmettent les valeurs de données. Elle peut contenir
un entier, un caractère ASCII ou un IDENTIFICATEUR D'OBJET.

Exemple : Codage d'un entier de valeur = 75


Dans cette exemple nous montrons l'encodage pour le type INTEGER, Value = “75”

4. Message SNMP
La position du message SNMP dans une trame transmise

24
Le message SNMP est divisé en deux parties

En-tête SNMP (Authentification header)

- Version: Identification de la version SNMP pour s'assurer que l'administrateur et l'agent utilisent la même
version du SNMP
- Communauté : authentification (contrôle d'accès: read-only, read-write)

PDU SNMP: la requête elle-même, au format ASN.1.

Il existe 5 différents types de PDU* : GetRequest, GetNextRequest, GetResponse, SetRequest, et Trap.

On définit deux formats de PDU SNMP

- Les PDUs Get, Set, et Response ont le meme format.


- Le PDU Trap utilise un format différent

Méthode : Format des PDUs: Get, Set et Response

25
Méthode : Format de la PDU: Trap

26
Conclusion
SNMP est un protocole de gestion de réseau largement utilisé. Un protocole de la couche application, il collecte des
statistiques sur la communication réseau à l'aide du logiciel agent intégré aux périphériques gérés. Le NMS interroge
l'agent pour fournir des informations de communication réseau. L'agent recherche ensuite la base d'informations de
gestion (MIB) et renvoie les informations requises au NMS.

27
Glossaire

Glossaire
IANA

L'Internet Assigned Numbers Authority (IANA) est un département de l'ICANN, une société américaine
privée à but non lucratif qui supervise l'allocation globale des adresses IP, l'allocation des numéros de
systèmes autonomes, la gestion de la zone racine dans les Domain Name System (DNS), (Wikipédia)

IETF

La IETF Internet Engineering Task Force est une organisation de normalisation ouverte, qui développe et
promeut des normes Internet volontaires, en particulier les normes qui composent la suite de protocoles
Internet. (https://ietf.org/)

RFC

Les RFC (Request for Comments) sont une série numérotée de documents officiels décrivant les aspects et
spécifications techniques d'Internet, ou de différents matériels informatiques. (Wikipedia)

Trap

Messages d'alertes

28
Signification des abréviations

Abréviations
ASN.1 : Abstract Syntax Notation One

CCITT : Comité Consultatif International Téléphonique et Télégraphique

EGP : Exterior Gateway Protocol

ICMP : Internet Control Message Protocol

IP : Internet Protocol

ITU-T : International Telecommunication Union - Telecommunication Standardization Sector

MAC : Media Access Control

MIB : Management Information Base

NMS : Network Management System

OID : Object IDentifier

OSI : Open Systems Interconnection

PDU : Protocol Data Unit

RMON : Romote network MONitoring

SMI : Structure of Management Information

SNMP : Simple Network Management Protocol

TCP : Transmission Control Protocol

TLV : Type Length Value

UDP : User Datagram Protocol

USM : User based Security Model

VACM : View-based Access Control Model

29

Vous aimerez peut-être aussi