Les
modules de transport
(UDP, IPX, autres)
Le protocole SNMP nest ni lié à un protocole réseau
et ni à un mode de transport particulier, même si en pratique
il est plus que souvent utilisé sur le protocole UDP [RFC 768].
Pour permettre lindépendance du moyen de transport, le
module gérant cet aspect est externe au moteur SNMP. Il est possible
den placer plusieurs qui fonctionnent simultanément. On
pourrait avoir par exemple, un module de transport UDP, un AppleTalk
ou un RS-232.
Les
modules de traitement
(MPv1, MPv3, MPng)
Un module de traitement est requis pour faire le décodage des paquets
SNMP qui arrivent du réseau et l’encodage de ceux qui s’apprêtent à
partir sur le réseau. Pour garder SNMP flexible, et permettre les changements
futurs, chaque paquet SNMP est marqué d’un numéro de version (voir la
description d'une trame). Ce numéro de version permet à un moteur SNMP
de déterminer à quel module de traitement ce message est destiné. Normalement,
chaque module de traitement prend en charge une version de SNMP. Ce
module a aussi la tâche d’imposer le respect d’un standard SNMP, pour
la version qui le concerne. Le module de traitement est modulaire, ceci
permet l’adaptation aux prochaines versions de SNMP. Un ajout d’un nouveau
module de traitement pourrait permettre au moteur SNMP de comprendre
des messages SNMPng (Snmp Next Generation). Ceci permet l’évolution
du protocole sans entraîner les coûts de reconstruction complète du
moteur. Un des grands avantages est qu’il est possible de faire fonctionner
plusieurs modules de traitements simultanément. Il est donc possible
pour un moteur SNMP de traiter des messages SNMPv1, SNMPv3, SNMPng tous
en même temps.
Le
système de sécurité
Certains environnements requièrent des interactions sécuritaires. La
sécurité est normalement appliquée en deux étapes: dans la transmission
et la réception du message et dans le traitement du contenu du message.
Trois fonctions sont généralement communes à tous les modules de sécurité:
l’authentification, l’encryption et la vérification du temps. Encore
une fois, plusieurs modules de sécurité peuvent être actifs simultanément
dans un moteur SNMP.
Les
applications
Les applications sont des processus qui interagissent avec le moteur
SNMP en utilisant des messages qui peuvent être définis dans le protocole,
ou des messages décrits par une mise en œuvre spécifique du moteur.
Les applications sont développées pour effectuer des opérations de gestion
spécifiques. Les objectifs peuvent être fort variés d’une application
à l’autre. Toutefois, toutes les applications utilisent en commun le
même moteur SNMP pour effectuer les opérations de gestion. Par exemple,
une application de gestion pourrait contrôler des éléments de gestion.
Un proxy pourrait effectuer le relais de messages entre les médiums
différents ou des versions différentes de SNMP.
Le
contrôle d’accès
Le module du contrôle d’accès doit décider si une requête est permise
et si une réponse peut être envoyée, ou l’ignorer si une personne non
autorisée à fait la requête. Chaque application a le choix d’accepter
ou de rejeter une requête. Mais si plusieurs applications fonctionnent
sur un même agent, il serait avantageux de centraliser le contrôle d’accès.
Le standard SNMPv3 place donc un module de contrôle d’accès qui peut
être interrogé par les applications. On peut donc faire une seule configuration
des droits des accès. Ce module peut autoriser une requête sur les critères
de qui l’a demandé, quel type de requête et quelle information est touchée
par la requête. On doit noter qu’à ce stade, l’authentification de l’entité
(usager ou application) qui a effectué la requête a déjà été faite.
Par conséquent, ce module n’a donc
pas à s’en préoccuper.