Vous êtes sur la page 1sur 31

1

Administration et contrle des Rseaux Administration et contrle des Rseaux


Le protocole SNNP
SN!6 SN!6
FSR FSR
2011f2012 2011f2012
Gnralits sur l'administration Gnralits sur l'administration
Qu Qu 'est 'est- -ce que l ce que l 'administration rseau ? 'administration rseau ?
- - Les moyens de connatre l Les moyens de connatre l 'tat physique et logique du 'tat physique et logique du
rseau rseau
Pourquoi ? Pourquoi ?
- - Permet une meilleure dtection des problmes utilisateurs Permet une meilleure dtection des problmes utilisateurs
Comment ? Comment ?
- - Par l Par l 'intermdiaire d 'intermdiaire d 'outils dterminant l 'outils dterminant l 'accessibilit au 'accessibilit au
rseau et ceux excutant des statistiques rseau et ceux excutant des statistiques
2
!fconfig !fconfig f f ping ping f f fping fping
Route Route
Netstat Netstat
telnet telnet f SSH f SSH
!nterface Web !nterface Web
OUTILS systme et rseau OUTILS systme et rseau
"natifs" "natifs"
Organisation de l'administration Organisation de l'administration
3 points de vue 3 points de vue
- - Utilisateurs => Qualit de services Utilisateurs => Qualit de services
- - Entits a grer Entits a grer
- - Outils de gestion Outils de gestion
Types de gestion Types de gestion
- - Gestion du rseau rel Gestion du rseau rel
- - Gestion du rseau logique (gestion des configurations,..) Gestion du rseau logique (gestion des configurations,..)
- - Gestion des performances et de la scurit Gestion des performances et de la scurit
- - Gestion de la planification (gestion des informations comptables Gestion de la planification (gestion des informations comptables
3
Stratgie d'administration Stratgie d'administration
Plug and Playf Plug and PlayfPray Pray
- - on branche et a marche on branche et a marche
- - aucun paramtre a dfinir aucun paramtre a dfinir
Configuration Configuration a la main a la main
- - ex : a chaque ajout de terminal, lui affecter statiquement ex : a chaque ajout de terminal, lui affecter statiquement
des des parametres parametres, dfinir les pilotes, . , dfinir les pilotes, .
But de l'administrateur : But de l'administrateur : tirer le meilleur profit du matriel tirer le meilleur profit du matriel
prsent prsent
Ncessit de trouver un compromis entre les deux approches Ncessit de trouver un compromis entre les deux approches
prcdentes prcdentes
Une stratgie est propre a chaque entit grante (entreprise, Une stratgie est propre a chaque entit grante (entreprise,
laboratoire, etc.) laboratoire, etc.)
Les standards d'administration Les standards d'administration
4
Nodle OS! Nodle OS!
Administration rseaux Administration rseaux
Architecture OS! Architecture OS!
d'administration rseaux d'administration rseaux
2 types d' 2 types d'application application processes processes
- - managers managers sur les systmes d sur les systmes d 'administration 'administration
- - agents agents sur les systmes administrs sur les systmes administrs
Dialogue Dialogue manager manager- -agent agent utilise un ensemble de protocoles utilise un ensemble de protocoles
Le manager Le manager
- - Envoie des ordres aux agents (self Envoie des ordres aux agents (self- -test) test)
- - Reoit des informations des agents (lit une variable) Reoit des informations des agents (lit une variable)
- - Fixe des valeurs (crit une variable) Fixe des valeurs (crit une variable)
Un agent contrle des Un agent contrle des managed objects managed objects
- - Un modem Un modem
- - Une table de routage !P Une table de routage !P
- - Une connexion TCP Une connexion TCP
5
Architecture classique Architecture classique
d'administration d'administration
Notification
Arrt du systme
Tentative de rparation
Nodle d'administration Nodle d'administration
L'administration peut tre vue au travers de 3 L'administration peut tre vue au travers de 3
modles modles
- - Nodle organisationnel Nodle organisationnel
- - Nodle fonctionnel Nodle fonctionnel
- - Nodle d'information Nodle d'information
6
Nodle organisationnel Nodle organisationnel
Notion de domaine d'administration Notion de domaine d'administration
Utilit Utilit
- - Nise a l'chelle Nise a l'chelle
- - Autonomie d'administration Autonomie d'administration
- - Rpartition des agentsfmanagers Rpartition des agentsfmanagers
- - Un domaine peut comporter plusieurs agentsfmanagers Un domaine peut comporter plusieurs agentsfmanagers
- - 1 agentfmanager peut tre partag entre plusieurs 1 agentfmanager peut tre partag entre plusieurs
domaines domaines
Systme d'administration Systme d'administration hairchique hairchique, coopratif et distribu , coopratif et distribu
Nodle fonctionnel Nodle fonctionnel
5 5 Specific Specific Nanagement Nanagement Functionnal Functionnal Areas Areas (SNFA) (SNFA)
- - Gestion Gestion des erreurs des erreurs
Dtecter, isoler, corriger les erreurs du rseau Dtecter, isoler, corriger les erreurs du rseau
- - Gestion de Gestion de la configuration la configuration
Configuration distante d'lments du rseau Configuration distante d'lments du rseau
- - Gestion Gestion des performances des performances
Evaluation des performances Evaluation des performances
- - Gestion Gestion de comptes utilisateurs de comptes utilisateurs
Faire payer l'utilisation du rseau en fonction de son utilisati Faire payer l'utilisation du rseau en fonction de son utilisation on
Limiter l'utilisation des ressources Limiter l'utilisation des ressources
- - Gestion Gestion de la scurit de la scurit
Contrle d'accs Contrle d'accs
Authentification Authentification
Cryptage Cryptage
7
Nodle d'information Nodle d'information
Structure of Management Information {SMI) Structure of Management Information {SMI)
- - Ensemble de conventions pour la description et l'identification Ensemble de conventions pour la description et l'identification des donnes des donnes
- - regroupes dans des base de donne regroupes dans des base de donne MIB MIB
- - utilisent le langage a objets de description utilisent le langage a objets de description ASN ASN- -1 1
- - Permet a n'importe quel type de protocole de manipuler les donn Permet a n'importe quel type de protocole de manipuler les donnes (CN!P ou SNNP) es (CN!P ou SNNP)
Management Information Base {MIB) Management Information Base {MIB)
- - Dpt conceptuel d'information de gestion Dpt conceptuel d'information de gestion
- - Ensemble des informations ncessaires a l'administration Ensemble des informations ncessaires a l'administration
- - des objets standards, ou variables, (dfinis par les des objets standards, ou variables, (dfinis par les RFCs RFCs RFC1155, RFC1156 ( RFC1155, RFC1156 (N!B ! N!B !) et ) et
RFC 1213 ( RFC 1213 (N!B!! N!B!!) )
Exemples d'objets : Exemples d'objets :
table de routage, nombre de collisions, taille des files d'atten table de routage, nombre de collisions, taille des files d'attentes tes
beaucoup de compteurs : charge du CPU, paquets reus . beaucoup de compteurs : charge du CPU, paquets reus .
Ces N!B sont implantes par les fournisseurs du systme d'admini Ces N!B sont implantes par les fournisseurs du systme d'administration rseau stration rseau
Gestion des oprations Gestion des oprations
- - N N- -GET GET
pour obtenir la valeur pour obtenir la valeur
- - N N- -SET SET
pour mettre a jour une information de gestion pour mettre a jour une information de gestion
- - N N- -ACT!ON ACT!ON
pour faire excuter une action pour faire excuter une action
- - N N- -CREATE CREATE
pour crer une nouvelle instance d'un objet pour crer une nouvelle instance d'un objet
- - N N- -DELETE DELETE
pour supprimer une instance d'un objet pour supprimer une instance d'un objet
8
ASN.1 ASN.1
Notation de Syntaxe Abstraite 1 Notation de Syntaxe Abstraite 1
Description de donnes Description de donnes
Dclarations ASN.1 similaires aux dclarations en C Dclarations ASN.1 similaires aux dclarations en C
Types de donnes: Types de donnes:
- - Existence de types prdfinis Existence de types prdfinis
- - Possibilit de crer de nouveaux types Possibilit de crer de nouveaux types
- - Possibilit de sous Possibilit de sous- -typage typage
ASN.1 est associ a des rgles de codages ASN.1 est associ a des rgles de codages
normalises comme le BER (Rgle Basic de Codage) normalises comme le BER (Rgle Basic de Codage)
9
Quelques types de donnes Quelques types de donnes
ASN.1 ASN.1
Type Signification
!NTEGER Entier
B!T STR!NG Chane de bits
OCTET STR!NG Chane d'octets
NULL Aucun type
OBJECT !DENT!F!ER Type de donnes
officiellement dfini

Not cl Signification
SEQUENCE Equivalent a une structure C
SEQUENCE OF Tableau mono-dimensionnel
CHO!CE Union d'une certaine liste de
types

!dentification des objets : !dentification des objets : Utilisation d'un arbre de nommage Utilisation d'un arbre de nommage
- -Chaque objet normalis doit se trouver a un emplacement unique d Chaque objet normalis doit se trouver a un emplacement unique de l'arbre e l'arbre
Nuds identifis par : Nuds identifis par :
- -un couple : tiquette(nombre) un couple : tiquette(nombre)
- -ou par le nombre seul ou par le nombre seul
SNNP SNNP
Simple Network Nanagement Simple Network Nanagement
Protocol Protocol
10
SNNP : Composants d'un rseau SNNP : Composants d'un rseau
Nuds administrs Nuds administrs : :Entit capable de communiquer des informations d'tat Entit capable de communiquer des informations d'tat
- - Htes, routeurs, ponts, imprimantes. Htes, routeurs, ponts, imprimantes.
- - Excute un agent SNNP qui Excute un agent SNNP qui gre gre une base de donnes locale de variables une base de donnes locale de variables
donnant l'tat et l'historique donnant l'tat et l'historique
Stations d'administration Stations d'administration : : Ordinateur excutant un logiciel particulier Ordinateur excutant un logiciel particulier
- - Communique avec les agents Communique avec les agents
- - Envoi de commandesfrception de rponses Envoi de commandesfrception de rponses
- - Avantage: Avantage:
- - Agents trs simples Agents trs simples
!nformation d'administration !nformation d'administration : : Chaque entit gre des variables dcrivant Chaque entit gre des variables dcrivant
son tat, Une variable est appele objet. L'ensemble des objets son tat, Une variable est appele objet. L'ensemble des objets d'un rseau se d'un rseau se
trouve dans la N!B (Nanagement !nformation Base) trouve dans la N!B (Nanagement !nformation Base)
Protocole d'administration Protocole d'administration : SNNP : SNNP
SNNP : Composants d'un rseau SNNP : Composants d'un rseau
Agent mandataire (Cas ou un nud n'est pas capable d'excuter un Agent mandataire (Cas ou un nud n'est pas capable d'excuter un
agent): agent):
- - Situ sur un autre nud Situ sur un autre nud
- - Communique avec l'entit a administrer dans un protocole non Communique avec l'entit a administrer dans un protocole non
standard standard
- - Communique avec la station d'administration en utilisant SNNP Communique avec la station d'administration en utilisant SNNP
11
SNNP utilise les SNNP utilise les SN!s SN!s (Structure of (Structure of
Nanagement !nformation) pour Nanagement !nformation) pour
donner l'ensemble des rgles de donner l'ensemble des rgles de
dfinition des objets a grer. dfinition des objets a grer.
SNNP utilise aussi les N!Bs SNNP utilise aussi les N!Bs
(Nanagement !nformation Base) (Nanagement !nformation Base)
reprsentant la base de reprsentant la base de donnes de donnes de
l'ensemble des objets pour un agent l'ensemble des objets pour un agent
donn. donn.
SNNP agit sur la N!B d'un agent SNNP agit sur la N!B d'un agent
donn afin de pouvoir l'administrer. donn afin de pouvoir l'administrer.
Grace a la N!B, Grace a la N!B, la station la station
d'administration peut lire les d'administration peut lire les
informations de l'agent et agir sur lui informations de l'agent et agir sur lui
en modifiant la valeur de certains en modifiant la valeur de certains
objets. objets.
SNNP : protocole SNNP : protocole
SNNP : mise en uvre(1) SNNP : mise en uvre(1)
Un Un agent agent SNNP SNNP
- - implant dans l'quipement a administrer implant dans l'quipement a administrer
Unix : Unix : snmpd snmpd
- - rpond aux requtes de la station d'administration rpond aux requtes de la station d'administration
- - envoie des alarmes a ces stations envoie des alarmes a ces stations
- - Exemple de fichier f Exemple de fichier fetc etcf fsnmpd snmpd. .conf conf : :
- - get get- -community community- -name name: public : public
- - set set- -community community- -name name: public : public
- - Set Set- -dest dest: 110.210.X.Y : 110.210.X.Y
- - contact: XXXXX (mail XXXXX@ contact: XXXXX (mail XXXXX@fsr fsr. .ac ac.ma) .ma)
12
SNNP : mise en uvre (2) SNNP : mise en uvre (2)
La station d'administration La station d'administration
- - Envoie des Envoie des commandes commandes (communication (communication udp udp port 161) port 161)
Get Get : lecture d'une variable de la N!B ( : lecture d'une variable de la N!B (std std ou prive) ou prive)
Set : mise a jour d'une variable sur les quipements Set : mise a jour d'une variable sur les quipements
- - Reoit les alarmes Reoit les alarmes envoyes par les agents des quipements envoyes par les agents des quipements
- - peut peut dclencher une action dclencher une action sur rception d'vnement sur rception d'vnement
(programmes C, scripts (programmes C, scripts shells shells,e ,e- -mails, ...) mails, ...)
Attention Attention : la programmation est a votre charge sauf : la programmation est a votre charge sauf
- - si vous utilisez un logiciel de gestion si vous utilisez un logiciel de gestion snmp snmp ( (NetSNNP NetSNNP). ).
Langage de dveloppement : Perl avec son module Langage de dveloppement : Perl avec son module snmp snmp
Nessages SNNP Nessages SNNP
Nessage 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 (SNNPv2)
Set Nise a jour d'une ou plusieurs variables
!nform Nessage de description d'une N!B locale
(SNNPv2)
Trap !ndication de droutement provenant d'un agent
Response Rponse


13
Echanges des messages SNNP Echanges des messages SNNP
SNNPv1 SNNPv1
Avantages Avantages
- - Simple donc implment sur de nombreux quipements Simple donc implment sur de nombreux quipements
- - Permet d'administrer du matriel htrogne Permet d'administrer du matriel htrogne
- - C'est le protocole le plus largement rpandu C'est le protocole le plus largement rpandu
!nconvnients !nconvnients
- - !l faut un administrateur comptent !l faut un administrateur comptent
- - Scurit limite a un contrle sur la Scurit limite a un contrle sur la communaut communaut ( (community community
string string) )
- - Administration rpartie ou hirarchique impossible Administration rpartie ou hirarchique impossible
14
SNNPv2 SNNPv2
Simple Network Nanagement Protocol version 2 Simple Network Nanagement Protocol version 2
- - Corrige la plupart des dfauts de jeunesse de SNNP (v1) Corrige la plupart des dfauts de jeunesse de SNNP (v1)
scurit, lecture groupe de variables, scurit, lecture groupe de variables, nvelle nvelle fonctionnalit : fonctionnalit :
- - !nclut l'authentification !nclut l'authentification
- - L'encryptage + configuration a distance L'encryptage + configuration a distance
Administration rseau hirarchise Administration rseau hirarchise
N!B : Nanagement !nformation Base N!B : Nanagement !nformation Base
La N!B est la base de donnes des informations de gestion La N!B est la base de donnes des informations de gestion
maintenue par l'agent, auprs de laquelle le manager va venir po maintenue par l'agent, auprs de laquelle le manager va venir pour ur
s'informer. s'informer.
Un fichier N!B est un document texte crit en langage ASN.1 qui Un fichier N!B est un document texte crit en langage ASN.1 qui
dcrit les variables, les tables et les alarmes gres au sein d dcrit les variables, les tables et les alarmes gres au sein d'une 'une
N!B. N!B.
SNNP procde de deux faon pour nommer les objets d'une N!B: SNNP procde de deux faon pour nommer les objets d'une N!B:
- - la premire est un nom unique par objet (ex: la premire est un nom unique par objet (ex:sysUpTime sysUpTime), ),
- - la seconde utilise les notations d'ASN.1 la seconde utilise les notations d'ASN.1
La classification des objets est arborescente. L'identificateur La classification des objets est arborescente. L'identificateur d'un d'un
objet est dfini, en ASN.1 par le chemin qui conduit a l'objet. objet est dfini, en ASN.1 par le chemin qui conduit a l'objet.
15
Par exemple, pour accder un objet d'administration, son identificateur autrement
appel OID commencera par 1.3.6.1.2 (iso.org.dod.internet.mgmt).
N!B N!B
La classification des objets est arborescente. L'identificateur d'un objet est
dfini, en ASN.1 par le chemin qui conduit l'objet.
Pour qu'un client accde a ces objets, il faut qu'il soit au cou Pour qu'un client accde a ces objets, il faut qu'il soit au courant rant
de leur existence. Une N!B contient un certain nombre de leur existence. Une N!B contient un certain nombre
d'informations standards : c'est la d'informations standards : c'est la MIB standard MIB standard. .
Or pour la plupart des lments rseau, on rajoute un certain Or pour la plupart des lments rseau, on rajoute un certain
nombre d'objets propre a un agent pour en exploiter les nombre d'objets propre a un agent pour en exploiter les
possibilits : c'est la possibilits : c'est la MIB prive MIB prive. .
Lorsqu'une entreprise veut dfinir son propre ensemble de Lorsqu'une entreprise veut dfinir son propre ensemble de
variables de gestion, elle va enregistrer son numro d'objet sou variables de gestion, elle va enregistrer son numro d'objet sous s
le noeud iso. le noeud iso.org org. .dod dod.internet. .internet.private private.entreprise. Ces N!B seront .entreprise. Ces N!B seront
dites prives. Elles correspondent a la racine 1.3.6.1.+.1. dites prives. Elles correspondent a la racine 1.3.6.1.+.1.
N!B N!B
16
N!B : Zoom de la branche internet N!B : Zoom de la branche internet
On peut donc dire que la N!B On peut donc dire que la N!B
standard dsigne le plus petit standard dsigne le plus petit
dnominateur commun entre tous dnominateur commun entre tous
les types de matriel que l'on peut les types de matriel que l'on peut
rencontrer sur un rseau. rencontrer sur un rseau.
Le premier standard utilis pour la Le premier standard utilis pour la
dfinition des objets dfinition des objets
d'administration de la N!B standard d'administration de la N!B standard
fut la N!B fut la N!B- -!. !.
Son O!D est : 1.3.6.1.2.1 et sa Son O!D est : 1.3.6.1.2.1 et sa
dfinition est la suivante: dfinition est la suivante:
N!B N!B- -! !
17
N!B !! N!B !!
Un second standard fut dfini pour rajouter des objets dans Un second standard fut dfini pour rajouter des objets dans
quelques unes des catgories de la N!B standard. Ce standard quelques unes des catgories de la N!B standard. Ce standard
est appel N!B est appel N!B- -!! et, fort de ses 172 lments, a remplac !! et, fort de ses 172 lments, a remplac
actuellement la N!B !. Son O!D est aussi : 1.3.6.1.2.1 actuellement la N!B !. Son O!D est aussi : 1.3.6.1.2.1
Dans le groupe Interfaces, vous pourrez trouver les variables suivantes :
ifIndex numro de l'interface
ifDescr description de l'interface
ifType type de l'interface
ifInOctets / ifOutOctets nombre total d'octets reus / emis par l'interface
La dfinition de N!B !! La dfinition de N!B !!
(3)
(33)
(17)
(6)
(4)
18
Les objets du groupe system de N!B !! Les objets du groupe system de N!B !!
Le type de service Le type de service
administr administr
!nteger32 !nteger32 sysServices sysServices 1.3.6.1.2.1.1. 1.3.6.1.2.1.1.7 7
Emplacement Emplacement
gographique du noeud gographique du noeud
OCTET STR!NG OCTET STR!NG sysLocation sysLocation 1.3.6.1.2.1.1. 1.3.6.1.2.1.1.6 6
Nom du nud administr Nom du nud administr OCTET STR!NG OCTET STR!NG sysName sysName 1.3.6.1.2.1.1. 1.3.6.1.2.1.1.5 5
Personne travaillant sur le Personne travaillant sur le
nud administr nud administr
OCTET STR!NG OCTET STR!NG sysContact sysContact 1.3.6.1.2.1.1. 1.3.6.1.2.1.1.+ +
Temps depuis l'activation Temps depuis l'activation
de l'administration de l'administration systeme systeme
TimeTicks TimeTicks sysUpTime sysUpTime 1.3.6.1.2.1.1. 1.3.6.1.2.1.1.3 3
!dentifiant de l'objet !dentifiant de l'objet
attribu par le fabricant attribu par le fabricant
OBJECT !DENT!F!ER OBJECT !DENT!F!ER sysObject!D sysObject!D 1.3.6.1.2.1.1. 1.3.6.1.2.1.1.2 2
description du type de description du type de
matriel, du SE, et des matriel, du SE, et des
logiciel rseau logiciel rseau
OCTET STR!NG OCTET STR!NG sysDescr sysDescr 1.3.6.1.2.1.1. 1.3.6.1.2.1.1.1 1
Description Description Type Type Nom Nom !dentifiant de l'objet !dentifiant de l'objet
Les fichiers N!B Les fichiers N!B
Un fichier N!B est un document texte crit en langage Un fichier N!B est un document texte crit en langage
ASN.1 qui dcrit les variables, les tables et les alarmes ASN.1 qui dcrit les variables, les tables et les alarmes
gres au sein d'une N!B. gres au sein d'une N!B.
Exemple : Exemple : sysName sysName est une proprit de l'objet est une proprit de l'objet
standard standard systeme systeme du N!B du N!B- -2 2
Le fichier N!B dcrivant l'objet Le fichier N!B dcrivant l'objet sysName sysName : :
sysName sysName OBJECT OBJECT- -TYPE TYPE
SYNTAX SYNTAX DisplayString DisplayString (size (0..255)) (size (0..255))
ACCESS ACCESS read read- -write write
STATUS STATUS mandatory mandatory
DESCRIPTION DESCRIPTION ::= { system 5 } ::= { system 5 }
19
N!B : Exemple N!B : Exemple
1.3.6.1.2.1.1.3.0 1.3.6.1.2.1.1.3.0 : : " l' " l'uptime uptime " de la machine locale (le " de la machine locale (le
temps depuis lequel le systme est en service) temps depuis lequel le systme est en service)
[ [root root@ @gw gw mibs mibs|# |# snmpget snmpget - -v 1 v 1 - -c public c public localhost localhost
.1.3.6.1.2.1.1.3.0 .1.3.6.1.2.1.1.3.0
system.sysUpTime.0 = system.sysUpTime.0 = Timeticks Timeticks: (235998+1) 2 : (235998+1) 2 days days, 17:33:18.+1 , 17:33:18.+1
si nous nous tions tromps dans le chemin, nous si nous nous tions tromps dans le chemin, nous
aurions obtenu : aurions obtenu :
[root root@ @gw gw mibs mibs|# |# snmpget snmpget - -v 1 v 1 - -c public c public localhost localhost .1.3.6.1.2.1.1.3. .1.3.6.1.2.1.1.3.1 1
Error Error in in packet packet Reason Reason: ( : (noSuchName noSuchName) There ) There is is no no such such variable variable name name in in this this N!B. N!B.
Failed Failed object object: system.sysUpTime.1 : system.sysUpTime.1
Structure messages SNNP Structure messages SNNP
VersIon CommunIty P0U VersIon CommunIty P0U
CetPequest-P0U
CetNextPequest-P0U
CetPesponse-P0U
SetPequest-P0U
Trap-P0U
AuthentIfIcatIon
(Chane ASC)
Remarque : Le nom de commmunt ublc ne ermet qu'un accs en lecture.
(0) pour Ia versIon 1
20
PDU PDU get getfset fset
Type P0U IdentIfIcateur Etat d 'erreur Index erreur Dbjet 1, VaIeur 1 Dbjet 2 , VaIeur 2 .......
0fInItIon des varIabIes obets et valeurs assocIes
Index poIntant sur Ia varable orIgIne de I 'erreur
(le champ tat d 'erreur n 'est posItIonn que sur CetFesponseP0U )
(0) noerreur DpratIon ralIse correcte
(1) Tooy La rponse ne peut pas tenIr dans le P0U getFesponse
(2) noSuchName L 'objet demand n 'exIste pas.
(3) badValue La valeur fournIe, par la requte set, n 'est pas correcte
(4) read0nly Lecture autorIse seulement sur l 'objet
(5) yenErr Autre type d 'erreur
VaIeur permettant de corrIer Ia rponse Ia requte
(0) CetRequest
(1) CetNextRequest
(2) CetResonse
(3) SetRequest
Lapproche TLV
Les erreurs Les erreurs status status
Le Le Error Status Error Status est l'indicateur du type d'erreur. Si aucune erreur ne s'est est l'indicateur du type d'erreur. Si aucune erreur ne s'est
produite, ce champ est mis a zro. Les rponses ngatives possib produite, ce champ est mis a zro. Les rponses ngatives possibles sont dcrites les sont dcrites
dans le tableau suivant : dans le tableau suivant :
21
PDU Les PDU Les traps traps
Type P0U IdentIfIcateur Adresse agent Type de trap gnrIque Type de trap spcIfIque Horodatage Dbjet1, VaIeur1 Dbjet2, vaIeur2 ..
0fInItIon des varIables
ob]ets et vcleurs assocIes
Temps entre dernIere (r) InItIalIsatIon de
l 'agent et la gnratIon du trap
contIent un numro de trcp spc]que l 'applIcatIon
(0) coldStart
(1) warmStart
(2) lnk0own
(3) lnkU
(4) authentjcatonFalure
(5) eyNeyhborLoss
(6) entrerseSecjc
Adresse lP de l 'agent
mettant le trap
ldent]e l'ob]et pour
lequel le trap a t dfInI.
(4) tra
coldStart : FInItIalIsatIon de l 'quIpement
(la confIguratIon a pu tre modIfIe)
warmStart : FInItIalIsatIon de l 'quIpement
(la confIguratIon n'est pas modIfIe)
lnk0own : AnomalIe dtecte sur un des lIens de communIcatIon
(l'Interface concerne est IndIque en varIable)
lnkU : Un lIen de communIcatIon est actIv
(l'Interface concerne est IndIque en varIable)
authentjcatonFalure : |essage reu mal authentIfI
eyNeyhborLoss : Perte de contact avec le voIsIn (Fouteur ECP)
entrerseSecjc : Trap non gnrIque (spcIfIque un fabrIcant)
Lapproche TLV
Encodage TLv Encodage TLv
Pour l'encodage des Pour l'encodage des PDUs PDUs on utilise ces on utilise ces
rgles rgles
On encode en TLv On encode en TLv
- - Type Type
- - Longueur Longueur
- - valeur valeur
22
Encodage du Type dans TLv Encodage du Type dans TLv
TYPE LDNCUEUP VALEUP
2 bts 1 bt 5 bts
VaIeur de I 'tIquette (Tag)
ExempIe d 'tIquettes pour cIasse UNIVEPSAL
2 = INTECEP ;
4 = DCTET STPINC
5 = NULL;
6 = DJET I0ENTIFIEP
16 = SEUENCE ou SEUENCE DF
SI vaIeur>31; aIors on met ces 5 bIts
' 1 ' et on code sur octet(s) suIvant(s)
Type prImItIf =0
Type construIt =1
VaIeur de Ia cIasse
00 UNIVEPSAL
01 APPLICATIDN
10 CDNTEXT-SPECIFIC
11 PPIVATE
VaIeur de I 'tIquette (Tag)
ExempIe d 'tIquettes pour cIasse Contex
t-specIfIc
Encodage Longueur dans TLv Encodage Longueur dans TLv
TYPE LDNCUEUP VALEUP
1 octet/ n octets1 octet/ n octets
Nbre d 'octets suIvants
2. Encodage du champ LDNCUEUP
23
TYPE LONGUEUR VALEUR
1 octet/ n octets 1 octet/ n octets 1 octet/ n octets
Exemples:
NTECEF : Nbre mInImum d 'octets pour reprsenter l 'entIer
DCTET STFNC : 7aleurs de la chaIne d'octets
NULL : Pas de valeur
D8JET 0ENTFEF : l s 'agIt de coder la valeur de l 'D0
Dn code selon la formule : 1er composant x 40 dcImal + 2eme composant
les autres valeurs de composants sont cods Indpendemment
Exemple :
Le codage de l'D0 1.J.6.1.2.1.200 sera :
40x1 + J = 4J ; puIs 6; puIs 1 etc ....
Dn aura donc, dans cet exemple, le codage de 7ALEUF avec les octets suIvants
28 06 01 02 01 81 48
Codage TL7 de l'D0 1.J.6.1.2.1.200
28 06 01 02 01 81 48
3. Encodage du champ VALEUP
Analyse d'une trame Analyse d'une trame
SNNP SNNP
24
N!B : Exemple N!B : Exemple
Capture de a trame Capture de a trame
Ethernet Ethernet
Destination: 00:00:00:00:00:00 (00:00:00_00:00:00) Destination: 00:00:00:00:00:00 (00:00:00_00:00:00)
Source: 00:00:00:00:00:00 (00:00:00_00:00:00) Source: 00:00:00:00:00:00 (00:00:00_00:00:00)
Type: !P (0x0800) Type: !P (0x0800)
Internet Protocol Internet Protocol, ,
Src Src Addr Addr: : localhost localhost. .localdomain localdomain (127.0.0.1), (127.0.0.1),
Dst Dst Addr Addr: : localhost localhost. .localdomain localdomain (127.0.0.1) (127.0.0.1)
version: + version: +
Header Header length length: 20 bytes : 20 bytes
Differentiated Differentiated Services Field: 0x00 (DSCP Services Field: 0x00 (DSCP
Total Total Length Length: 71 : 71
!dentification: 0x0000 Flags: 0x0+ . !dentification: 0x0000 Flags: 0x0+ .
1.. = 1.. = Don't Don't fragment: Set fragment: Set
..0. = Nore fragments: Not set ..0. = Nore fragments: Not set
Fragment offset: 0 Fragment offset: 0
Time to live: 6+ Time to live: 6+
Protocol: UDP {0x11) Protocol: UDP {0x11)
Header checksum: 0x3ca+ (correct) Header checksum: 0x3ca+ (correct)
Source: Source: localhost localhost. .localdomain localdomain (127.0.0.1) (127.0.0.1)
Destination: Destination: localhost localhost. .localdomain localdomain (127.0.0.1) (127.0.0.1)
User User Datagram Datagram Protocol, Protocol,
Src Src Port: 1867 (1867), Port: 1867 (1867),
Dst Port: Dst Port: snmp snmp (161) (161)
Checksum: 0xd027 (correct) Checksum: 0xd027 (correct)
Simple Network Management Protocol Simple Network Management Protocol
Version Version: 1 : 1
Community Community: public : public
PDU type PDU type: GET : GET Request Request (code 0000) (code 0000)
Id: Id: 0x3+339329 0x3+339329
Error Error Status Status: NO ERROR : NO ERROR Error Error
Index: Index: 0 Object 0 Object
i identifier dentifier 1: 1.3.6.1.2.1.1.3.0 1: 1.3.6.1.2.1.1.3.0
Value Value: NULL : NULL
La source La source
09 09 C0 C0 02 02 C8 C8 09 09 C0 C0 8B 8B 72 72 11 11 1E 1E 00 00 00 00 03 03 1A 1A +5 +5 00 00 00 10 00 10
0+ 0+ 00 00 01 01 02 02 27 27 30 30 18 18 7E 7E 31 31 00 00 A1 A1 00 00 00 00 0+ 0+ 0+ 0+ C8 C8 00 20 00 20
00 00 01 01 02 02 A+ A+ 0F 0F 02 02 02 02 1A 1A A0 A0 63 63 69 69 6C 6C 62 62 75 75 70 70 06 06 00 30 00 30
03 03 01 01 01 01 02 02 01 01 06 06 2B 2B 08 08 06 06 0C 0C 30 30 0E 0E 30 30 00 00 01 01 02 02 00 40 00 40
00 50 00 50
00 00 00 00
7E 7E 00 00 0A 0A 00 00 00 00 05 05 00 00
00 00 +5 +5 00 00 08 08 B7 B7 C2 C2 70 70 2+ 2+ A0 A0 00 00 16 16 53 53 E0 E0 A3 A3 00 00 00 00
25
La source (suite) La source (suite)
09 09 C0 C0 02 02 C8 C8 09 09 C0 C0 8B 8B 72 72 11 11 1E 1E 00 00 00 00 03 03 1A 1A +5 +5 00 00 00 10 00 10
0+ 0+ 00 00 01 01 02 02 27 27 30 30 18 18 7E 7E 31 31 00 00 A1 A1 00 00 00 00 0+ 0+ 0+ 0+ C8 C8 00 20 00 20
00 00 01 01 02 02 A+ A+ 0F 0F 02 02 02 02 1A 1A A0 A0 63 63 69 69 6C 6C 62 62 75 75 70 70 06 06 00 30 00 30
03 03 01 01 01 01 02 02 01 01 06 06 2B 2B 08 08 06 06 0C 0C 30 30 0E 0E 30 30 00 00 01 01 02 02 00 40 00 40
00 50 00 50
00 00 00 00
7E 7E 00 00 0A 0A 00 00 00 00 05 05 00 00
00 00 +5 +5 00 00 08 08 B7 B7 C2 C2 70 70 2+ 2+ A0 A0 00 00 16 16 53 53 E0 E0 +3 +3 00 00 00 00
Z7 ~ 39 ocfefs Z7 ~ 39 ocfefs Z7 Z7 30 30 Sequence Sequence
26
Z7 ~ 39 ocfefs Z7 ~ 39 ocfefs Z7 Z7 30 30 Sequence Sequence
00 00 : : 0I 0I 0Z 0Z Enfier Enfier
Z7 ~ 39 ocfefs Z7 ~ 39 ocfefs Z7 Z7 30 30 Sequence Sequence
C C
o3 o3
I I
o9 o9
L L
oC oC
8 8
oZ oZ
U U
7b 7b 70 70 : : 0o 0o 04 04 Corocfre Corocfre
P P
00 00 : : 0I 0I 0Z 0Z Enfier Enfier
Heoder
27
Z7 ~ 39 ocfefs Z7 ~ 39 ocfefs Z7 Z7 30 30 Sequence Sequence
IA ~ Zo ocfefs IA ~ Zo ocfefs
C C
o3 o3
A0 ~ I0I0 0000 ( A0 ~ I0I0 0000 (0ef Pequesf 0ef Pequesf) )
I I
o9 o9
L L
oC oC
8 8
oZ oZ
U U
7b 7b 70 70 : : 0o 0o 04 04 Corocfre Corocfre
P P
A0 A0 Sequence Sequence
IA IA
00 00 : : 0I 0I 0Z 0Z Enfier Enfier
PDU
Z7 ~ 39 ocfefs Z7 ~ 39 ocfefs Z7 Z7 30 30 Sequence Sequence
IA ~ Zo ocfefs IA ~ Zo ocfefs
C C
o3 o3
A0 ~ I0I0 0000 ( A0 ~ I0I0 0000 (0ef Pequesf 0ef Pequesf) )
I I
o9 o9
L L
oC oC
A4 A4
8 8
oZ oZ
00 00
00 00
0F 0F
U U
7b 7b
Error sfofus Error sfofus : 0 : 0 : : 0I 0I 0Z 0Z Enfier Enfier
Error Error index : 0 index : 0 : : 0I 0I 0Z 0Z Enfier Enfier
70 70 : : 0o 0o 04 04 Corocfre Corocfre
P P
A0 A0 Sequence Sequence
IA IA
Peq Peq. ID ~ 4004 . ID ~ 4004 : : 0Z 0Z 0Z 0Z Enfier Enfier
00 00 : : 0I 0I 0Z 0Z Enfier Enfier
PDU
28
Z7 ~ 39 ocfefs Z7 ~ 39 ocfefs Z7 Z7 30 30 Sequence Sequence
Z. Z.
0Z 0Z
IA ~ Zo ocfefs IA ~ Zo ocfefs
C C
o3 o3
I. I.
0I 0I
A0 ~ I0I0 0000 ( A0 ~ I0I0 0000 (0ef Pequesf 0ef Pequesf) )
I I
o9 o9
o. o.
0o 0o
L L
oC oC
I.3. I.3.
Z8 Z8
A4 A4
8 8
oZ oZ
: :
00 00
00 00
0F 0F
U U
7b 7b
OC ~ IZ ocfefs OC ~ IZ ocfefs 0C 0C 30 30 Sequence Sequence
00 00 03 03 0I 0I 0I 0I 08 08 0o 0o Objef Objef
Error Error sfofuf : 0 sfofuf : 0 : : 0I 0I 0Z 0Z Enfier Enfier
Error Error index : 0 index : 0 : : 0I 0I 0Z 0Z Enfier Enfier
0E ~ I4 ocfefs 0E ~ I4 ocfefs 0E 0E 30 30 Sequence Sequence
70 70 : : 0o 0o 04 04 Corocfre Corocfre
P P
A0 A0 Sequence Sequence
IA IA
Peq Peq. ID ~ 0FA4 . ID ~ 0FA4 : : 0Z 0Z 0Z 0Z Enfier Enfier
0 0 3. 3. I. I. I. I.
00 00 : : 0I 0I 0Z 0Z Enfier Enfier
MuII MuII 0b 0b 00 00
1-sysDescr
Z-sysObgectID
3-sysUpTime
4-sysContuct
-sysNume
-sysLocution
1 1 - - 3 3 - - 6 6 - - 1 1 - - 2 2 - - 1 1 - - 1 1 - - 3 3
Addr, Truns,
3
Syst
1
Interfuce
Z
IP
4
ICMP

TCP

UDP
7
ESP

MI I
1
Z
Directory
1
Mgmt
Z
Eperim,
3
Privute
4
Internet
1
Z
3
4
1
Z
3
4

DoD

STD
0
ORS
3
Z
1
UIT
0
ISO
1
Z
29
Simulation SNNP Simulation SNNP
une intressante animation d'un change SNNP une intressante animation d'un change SNNP
prsente par "RAD prsente par "RAD University University" : " :
h http:ffwww. ttp:ffwww.raduniversity raduniversity. .com comfnetworksf1998f fnetworksf1998fsnmp snmpf fsn sn
mp mp.html .html
La simulation consiste a construire un message SNNP La simulation consiste a construire un message SNNP
au moyen du bouton " au moyen du bouton "Construct Construct Nessage", puis a Nessage", puis a
l'envoyer au moyen du bouton " l'envoyer au moyen du bouton "Send Send". L'animation ". L'animation
reprsente alors le cheminement du message au reprsente alors le cheminement du message au
travers des couches de protocole TCPf!P et du rseau, travers des couches de protocole TCPf!P et du rseau,
et le parcours de la N!B de l'agent. et le parcours de la N!B de l'agent.
SNNP : conclusion : SNNP : conclusion :
Avantages Avantages
L'avantage majeur dans le fait d'utiliser SNNP est qu'il est de L'avantage majeur dans le fait d'utiliser SNNP est qu'il est de conception conception
simple ; il est donc ais de l'implmenter sur un rseau, puisqu simple ; il est donc ais de l'implmenter sur un rseau, puisqu'il ne prend pas 'il ne prend pas
longtemps a configurer et qu'il est de petite taille. longtemps a configurer et qu'il est de petite taille.
Un autre avantage de SNNP est qu'il est vraiment beaucoup rpand Un autre avantage de SNNP est qu'il est vraiment beaucoup rpandu u
aujourd'hui. Presque tous les grands constructeurs de matriel h aujourd'hui. Presque tous les grands constructeurs de matriel hardware inter ardware inter- -
rseaux, tels que les ponts ou les routeurs, conoivent leurs pr rseaux, tels que les ponts ou les routeurs, conoivent leurs produits de oduits de
manire a ce qu'il supportent SNNP, rendant ce dernier trs faci manire a ce qu'il supportent SNNP, rendant ce dernier trs facile a le a
implmenter. implmenter.
Enfin, SNNP est bas sur le protocole de transport UDP ce qu Enfin, SNNP est bas sur le protocole de transport UDP ce qui ncessite i ncessite
moins de ressources et de connexions simultanes qu'avec TCP. !l moins de ressources et de connexions simultanes qu'avec TCP. !l n'y a pas de n'y a pas de
rcupration d'erreurs et un faible rcupration d'erreurs et un faible overhead overhead UDP au niveau des messages. Et UDP au niveau des messages. Et
enfin, c'est une solution peu chre. enfin, c'est une solution peu chre.
30
Le premier dfaut de SNNP est qu'il contient quelques gros trou Le premier dfaut de SNNP est qu'il contient quelques gros trous de s de
scurit a travers lesquels des intrus peuvent accder aux infor scurit a travers lesquels des intrus peuvent accder aux informations mations
transitant sur le rseau. Ces intrus pourraient aussi bien provo transitant sur le rseau. Ces intrus pourraient aussi bien provoquer un quer un shut shut- -
down sur certains terminaux. La solution a ce problme est appor down sur certains terminaux. La solution a ce problme est apporte dans te dans
SNNPv2 qui implmente des mcanismes de scurit en ce qui conce SNNPv2 qui implmente des mcanismes de scurit en ce qui concerne le rne le
caractre priv des donnes, l'authentification et le contrle d caractre priv des donnes, l'authentification et le contrle d'accs. 'accs.
Puisque SNNP se trouve au dessus de UDP, il n'y a pas de repri Puisque SNNP se trouve au dessus de UDP, il n'y a pas de reprise sur se sur
erreur, ni de contrle de flux. La requte ou la rponse peut t erreur, ni de contrle de flux. La requte ou la rponse peut tre gare, ce re gare, ce
qui peut tre qui peut tre gnant gnant dans le cas du dans le cas du trap trap. Le Nanager surveille donc son . Le Nanager surveille donc son
environnement en procdant a des interrogations rgulires de se environnement en procdant a des interrogations rgulires de ses agents, s agents,
c'est ce que l'on appelle le Polling. SNNP est donc un protocole c'est ce que l'on appelle le Polling. SNNP est donc un protocole bavard. bavard.
Cette surcharge de Cette surcharge de traffic traffic n'est pas trop gnante sur un rseau local mais n'est pas trop gnante sur un rseau local mais
devient embarrassante via le rseau public. devient embarrassante via le rseau public.
SNNP : conclusion : SNNP : conclusion :
!nconvnients !nconvnients
Si la priode de polling est fixe a 10 secondes, le dbit du Si la priode de polling est fixe a 10 secondes, le dbit du
lien de 6+ kbitfs et la taille moyenne d'un message lien de 6+ kbitfs et la taille moyenne d'un message
SNNP de 100 SNNP de 100 octes octes, quelle est l'influence de la , quelle est l'influence de la
consultation de 100 objets SNNP a travers un lien WAN? consultation de 100 objets SNNP a travers un lien WAN?
Exercice : SNNP et charge du rseau Exercice : SNNP et charge du rseau
31
Le nombre de sollicitations est de 100 toutes les 10 Le nombre de sollicitations est de 100 toutes les 10
secondes, ce qui correspond a 10 sollicitations par secondes, ce qui correspond a 10 sollicitations par
seconde. Dans ces conditions, le volume a transfrer est seconde. Dans ces conditions, le volume a transfrer est
de : de :
(100 * 8) * 10 = 8000 bitsfs (100 * 8) * 10 = 8000 bitsfs
Ce qui correspond pour une ligne a 6+ Kbitsfs a 12,5 de Ce qui correspond pour une ligne a 6+ Kbitsfs a 12,5 de
ses capacits de transfert. ses capacits de transfert.
Conclusion : le protocole SNNP est un protocole Bavard. Conclusion : le protocole SNNP est un protocole Bavard.
Solution : SNNP et charge du rseau Solution : SNNP et charge du rseau