Freigeben über


TCP/IP-indizierte Eigenschaften und Geräteindizes

Eine indizierte Eigenschaft ermöglicht das Anfügen eines numerischen Indexes an einen Schemaeigenschaftennamen, wodurch mehrere verwandte Eigenschaften denselben Namen gemeinsam nutzen können, wobei jedoch jede über einen numerischen Index zur Identifizierung der einzelnen Eigenschaft verfügt. Ein Indexwert muss eine positive ganze Zahl sein, aber es gibt keine Obergrenze für seine Größe. Die Schemaabfrage bestimmt den Indexwert, der einem bestimmten Element zugeordnet werden soll. Mit diesem Mechanismus können Sie auf Daten in MIB-Tabellen zugreifen.

Das IndexedProperty-Konstrukt definiert eine indizierte Eigenschaft. Für dieses Konstrukt gelten die folgenden Einschränkungen.

  • Ein IndexedProperty-Konstrukt kann nicht das übergeordnete Element eines Property-Konstrukts sein. Ein NonIndexedProperty-Konstrukt ist ein Konstrukt, das eine Eigenschaft ohne Index unter einem IndexedProperty-Konstrukt definiert.

  • Weder ein IndexedProperty-Konstrukt noch ein NonIndexedProperty-Konstrukt kann das übergeordnete Element eines Installierten Konstrukts sein.

Eine Abfrage kann auch einen anderen Index umfassen: einen Geräteindex. Ein Netzwerkgerät, das SNMP unterstützt, kann der Host für eine Vielzahl von Untergeräten sein, einschließlich Druckern. Die MIB-Tabellen in Netzwerkdruckern enthalten Einträge, die entsprechend dem Gerätetyp (geräteindex) indiziert werden. Damit eine Abfrage Daten aus der MIB-Tabelle abrufen kann, muss die Abfrage über den richtigen Geräteindex verfügen. Mit dem TCP/IP-Standardportmonitor kann der Geräteindex über die Benutzeroberfläche für die Portkonfiguration konfiguriert werden. Eine bidi-Erweiterung, in der deviceIndex auf TRUE festgelegt ist (siehe die Konstrukte Value und Installed ), bewirkt, dass eine OID mit dem Geräteindex generiert wird, der mit der ursprünglichen OID verkettet ist. Der Index einer indizierten Eigenschaft wird bei Verwendung mit der OID verkettet, die dem Geräteindex folgt.

Codebeispiel

Im folgenden Codebeispiel wird das TCP/IP-Bidi-Kommunikationsschema erweitert, indem der Printer-Eigenschaft eine Display-Eigenschaft hinzugefügt wird. Darüber hinaus verfügt die Display-Eigenschaft über eine indizierte Eigenschaft, Row, und deviceIndex ist auf TRUE festgelegt. Das hier gezeigte Schema erzeugt eine Abfrage, die Text aus einer bestimmten Zeile der Druckeranzeige abruft.

<Property name="Printer">
  <Property name="Display">
    <IndexedProperty name="Row">
      <Value name="Text" type="BIDI_TEXT" 
             oid="1.3.6.1.2.1.43.16.5.1.2" deviceIndex="true"/>
    </IndexedProperty>
  </Property>
</Property>

Das obige Beispiel ergibt die folgende Abfrage:

\Printer.Display.Row1:Text

Die in diesem Beispiel generierte OID beginnt identisch mit dem oid-Attribut in der Value-Eigenschaft , verfügt jedoch über zwei angefügte Indizes. Die angefügten Indizes im Beispiel ergeben sich daraus, dass das attribut deviceIndex auf TRUE und Row als indizierte Eigenschaft festgelegt wird. Unter der Annahme, dass die Benutzeroberfläche der Portkonfiguration den Geräteindex auf 111 definiert und der Text in Zeile 1 des Druckerdisplays von Interesse ist, würde die generierte OID 1.3.6.1.2.1.43.16.5.1.2.111.1 sein. Diese OID ist mit dem Original identisch, mit Ausnahme des Geräteindexes (111) und des Eigenschaftenindexes (1) am Ende. Wenn deviceIndex auf FALSE festgelegt oder nicht angegeben wurde, wäre die resultierende OID 1.3.6.1.2.1.43.16.5.1.2.1. Verwenden Sie zum Anzeigen von Text aus Zeile n der Anzeige den Eigenschaftsindex n.