Rechnernetze
Home Nach oben

Managementobjekte

Managementobjekt (MO) nicht strukturiert, 
Variablen: Zustandsgröße einer Komponente d. Rechnernetzes
einzige Ausnahme geordnete Mengen von Variablen: Tabellen 
Anzahl ändert sich dynamisch
nicht fest in Agentenimplementierung kodiert 
zusätzliche Strukturierung in MIB-Modul 
eng zusammenhängende Objekttypdefinitionen werden zu Gruppen zusammengefasst
Aufteilung von Gruppen in Untergruppen nicht vorgesehen.
Struktur der Managementinformation
(Structure of Management Information (SMI)) [RFC1155] 
ASN.1-Makro OBJECT-TYPE-Macro

OBJECT-TYPE MACRO ::=
BEGIN
TYPE NOTATION ::= "SYNTAX" type (TYPE ObjectSyntax)
    "ACCESS" Access
    "STATUS" Status
VALUE NOTATION ::= value (VALUE ObjectName)
Access ::= "read-only"
  | "read-write"
  | "write-only"
  | "not-accessible"
Status ::= "mandatory"
  | "optional"
  | "deprecated"
  | "obsolete"
END

Beispiel einer Typdefinition mit diesem Makro:

sysDescr OBJECT-TYPE
    SYNTAX
DisplayString (SIZE (0.255))
    ACCESS read-only
    STATUS mandatory
    := { system 1 }

<list> ::= SEQUENCE { <type1>,
                      ...
                      typeN>,
                    }
<table> ::= SEQUENCE OF <list>

Objekttyp Namen: sysDescr  
unter system 1 im globalen Registrierungsbaum eingeordnet
Syntax von Objekten dieses Typs DisplayString bis zu 255 Zeichen 
Zugriffsrechte für Objekte dieses Typs auf read-only gesetzt
SNMP-MIB muß Objekt dieses Typs enthalten (mandatory).
zusätzlich zu Object Identifier Name zugeordnet, eindeutig in MIB 
für jeden Agenten höchstens eine Instanz eines Objekttyps 
Benennung der um .0 erweiterte Object Identifier eines Objekttyps 
eindeutige Benennung von Objekten in Rechnernetz
Zieladresse + Managementdaten Agent ausgewählt
Objektinstanz in Agent eindeutig
Syntax verwalteter Objekte als ASN.1-Datentyp ObjectSyntax  
CHOICE-Datentypen, drei mögliche Arten
Einfache Typen (simple types) vier primitive ASN.1-Typen
INTEGER
OCTET STRING
OBJECT IDENTIFIER
NULL
Einfach konstruierte Typen (simply constructed)) sind zusammengesetzte ASN.1-Typen.
Anwendungsweite Typen (application wide:) sechs spezielle Datentypen
IpAddress: Ein Datentyp für eine Internetadresse
    IpAddress ::= [APPLICATION 0]  IMPLICIT OCTET STRING (SIZE (4))
NetworkAddress: Ein Datentyp für eine Adresse einer bestimmten Protokollfamilie. Zur Zeit gibt es nur ein CHOICE.
   NetworkAddress ::= CHOICE { internet IpAddress }
Counter: nicht negative Zahl (0..232-1), monoton wächst, bis sie einen maximalen Wert erreicht; dann wird sie auf null zurückgesetzt.
    Counter ::= [APPLICATION 1] IMPLICIT INTEGER (0..4294967295)
Gauge: Eine nicht negative Zahl (0..232-1), die wachsen oder fallen kann, die jedoch an einem maximalem Wert anhält.
    Gauge ::= [APPLICATION 2] IMPLICIT INTEGER (0..4294967295)
TimeTicks: Datentyp für nicht negative ganze Zahl, welche die Zeit in hundertstel Sekunden zählt; Maximalwert 232-1.
    TimeTicks ::= [APPLICATION 3] IMPLICIT INTEGER (0..4294967295)
Objekts mit TimeTicks  legt Startzeitpunkt fest
Opaque: Ein Datentyp für eine beliebige Kodierung.
 Opaque ::= [APPLICATION 4] IMPLICIT OCTET STRING
Typ Opaque erweitert restriktiven Datentypen
beliebiger ASN.1-Datentyp mit Basic Encoding Rules kodiert.
Oktett-Zeichenkette bildet Wert des Opaque-Typen. 
Bedeutung muss zwischen verwaltetem Knoten und Management-Station vereinbart sein.
Zwei zusammengesetzte Typen mit eingeschränkten Anwendungsmöglichkeiten
Liste (list) mit der Form

<list> ::= SEQUENCE { <type1>,
                      ...
                      <typeN>,
                    }

<type> primitiver Typ, weder SEQUENCE noch OPTIONAL  
<list> wird als Zeile in Tabelle (table) verwendet.

<table> ::= SEQUENCE OF <list>

Alle Tabellen sind zweidimensional
Tabelle besteht aus keiner oder mehr Zeilen
jede Zeile hat die gleiche Anzahl von Spalten