Zum Hauptinhalt springen

2. Übersicht

SNMP-Entitäten, die Befehlsgenerator- oder Benachrichtigungsempfängeranwendungen unterstützen (traditionell "Manager" genannt), kommunizieren mit SNMP-Entitäten, die Befehlsbeantworter- oder Benachrichtigungsursprungsanwendungen unterstützen (traditionell "Agenten" genannt). Der Zweck dieses Protokolls ist der Transport von Verwaltungsinformationen und -operationen.

2.1. Verwaltungsinformationen

Der Begriff "Variable (variable)" bezieht sich auf eine Instanz eines nicht-aggregierten Objekttyps, der gemäß den in der SMI [RFC2578] festgelegten Konventionen oder den auf der SMI [RFC2579] basierenden textuellen Konventionen definiert ist. Der Begriff "Variablenbindung (variable binding)" bezieht sich normalerweise auf die Paarung des Namens einer Variablen und ihres zugehörigen Werts. Wenn jedoch während der Verarbeitung einer Abrufanforderung bestimmte Arten von Ausnahmebedingungen auftreten, paart eine Variablenbindung einen Namen und eine Anzeige dieser Ausnahme.

Eine Variablenbindungsliste (variable-binding list) ist eine einfache Liste von Variablenbindungen.

Der Name einer Variablen ist ein OBJECT IDENTIFIER, der die Verkettung des OBJECT IDENTIFIER des entsprechenden Objekttyps mit einem OBJECT IDENTIFIER-Fragment ist, das die Instanz identifiziert. Der OBJECT IDENTIFIER des entsprechenden Objekttyps wird als OBJECT IDENTIFIER-Präfix der Variablen bezeichnet.

2.2. Erneutes Senden von Anfragen

Bei allen Arten von Anfragen in diesem Protokoll ist der Empfänger unter normalen Umständen verpflichtet, eine Antwort zu generieren und an den Urheber der Anfrage zu übermitteln. Ob eine Anfrage erneut gesendet werden sollte, wenn innerhalb eines angemessenen Zeitintervalls keine entsprechende Antwort empfangen wird, liegt im Ermessen der Anwendung, die die Anfrage initiiert. Dies hängt normalerweise von der Dringlichkeit der Anfrage ab. Eine solche Anwendung muss jedoch in Bezug auf die Häufigkeit und Dauer von Neuübertragungen verantwortungsvoll handeln. Siehe BCP 41 [RFC2914] für eine Diskussion relevanter Staukontrollprinzipien.

2.3. Nachrichtengrößen

Die maximale Größe einer SNMP-Nachricht ist auf das Minimum von beschränkt:

(1) die maximale Nachrichtengröße, die die Ziel-SNMP-Entität akzeptieren kann; und,

(2) die maximale Nachrichtengröße, die die Quell-SNMP-Entität generieren kann.

Ersteres kann auf Pro-Empfänger-Basis bekannt sein; und in Ermangelung solchen Wissens wird es durch die Transportdomäne angezeigt, die beim Senden der Nachricht verwendet wird. Letzteres wird durch implementierungsspezifische lokale Beschränkungen auferlegt.

Jedes Transport-Mapping für SNMP gibt die minimale Nachrichtengröße an, die eine SNMP-Implementierung erzeugen oder verbrauchen können muss. Obwohl Implementierungen ermutigt werden, wann immer möglich größere Werte zu unterstützen, darf eine konforme Implementierung niemals Nachrichten generieren, die größer sind als von der empfangenden SNMP-Entität erlaubt.

Eines der Ziele der in diesem Dokument spezifizierten GetBulkRequest-PDU ist es, die Anzahl der Protokollaustausche zu minimieren, die erforderlich sind, um eine große Menge an Verwaltungsinformationen abzurufen. Daher ermöglicht dieser PDU-Typ einer SNMP-Entität, die Befehlsgeneratoranwendungen unterstützt, anzufordern, dass die Antwort unter den Einschränkungen der Nachrichtengröße so groß wie möglich ist.

Diese Einschränkungen umfassen die Grenzen für die Größe von Nachrichten, die die SNMP-Entität, die die Befehlsgeneratoranwendung unterstützt, generieren oder empfangen kann, und die Grenzen für die Größe von Nachrichten, die die SNMP-Entität, die die Befehlsbeantworteranwendung unterstützt, generieren oder empfangen kann. Die Größe jeder Antwort auf eine Anfrage ist durch das Minimum dieser beiden Beschränkungen begrenzt.

2.4. Transport-Mappings

Es ist ein Zweck von SNMP, so unabhängig wie möglich von der Architektur und den Mechanismen bestimmter Transportdienste zu sein. Die vom SNMP-Architektur [RFC3411] bereitgestellten abstrakten Dienstschnittstellen unterstützen die Zuordnung des Protokolls zu verschiedenen Transportdiensten. Diese Zuordnungen sind in [RFC3417] beschrieben.

2.5. SMIv2-Datentyp-Mappings

Die Syntax der verschiedenen in diesem Dokument beschriebenen PDUs wird unter Verwendung der ASN.1 Basic Encoding Rules (BER) spezifiziert. Das SNMP-Protokoll macht jedoch umfangreichen Gebrauch von der SMIv2 [RFC2578], die selbst unter Verwendung von ASN.1 [ASN1] definiert ist. Die SMIv2 definiert eine Teilmenge von ASN.1-Typen, die zur Definition von Informationsmodulen verwendet werden sollen. Für einige dieser von SMIv2 definierten Typen bieten die Standard-ASN.1-Codierungsregeln keine eindeutige Darstellung. In solchen Fällen spezifiziert die SMIv2 selbst die zu verwendende Darstellung. Insbesondere gilt dies für die folgenden Typen:

  • Counter32
  • Counter64
  • Gauge32
  • TimeTicks
  • Opaque
  • IpAddress

Einzelheiten zur Codierung von SMIv2-Typen finden Sie in [RFC2578].