Next: Umsetzung von MIB-Modulen
Up: Der JIDM-Algorithmus
Previous: Der JIDM-Algorithmus
Tabelle
zeigt die Umsetzung von (einigen)
ASN.1-Datentypen in die Datentypen von OMG IDL. Da sie elementare
Datentypen definieren, werden sie in einer Datei
,,ASN1Types.idl`` abgelegt und müssen in jede übersetzte MIB-Datei
eingebunden werden.
Tabelle:
Abbildung der Datentypen von ASN.1
nach IDL
| 1|c|ASN.1-Datentyp |
1c|IDL-Datentyp |
| NULL |
typedef octet ASN1_Null; |
| BOOLEAN |
typedef boolean ASN1_Boolean; |
| INTEGER |
typedef long ASN1_Integer; |
| REAL |
typedef double ASN1_Real; |
| ENUMERATED |
enum { item1, ... ,itemn }; |
| BIT STRING |
typedef sequence<octet> ASN1_BitString; |
| OCTET STRING |
typedef sequence<octet> ASN1_OctetString; |
| STRING |
typedef sequence<octet> ... ; |
| |
typedef string ... ; |
| |
typedef sequence<long> ... ; |
| |
typedef sequence<unsigned short> ... ; |
| OBJECT IDENTIFIER |
typedef string ASN1_Objectidentifier; |
| CHOICE |
union/switch |
| SET,SEQUENCE |
struct |
| SET,SEQUENCE OF type |
typedef sequence<type> ... ; |
Der Grund, weshalb der ASN.1-Datentyp STRING mehrere
IDL-Entsprechungen hat, sind die verschiedenen Varianten dieses Typs: Ein
STRING kann in ASN.1 eine einfache Zeichenkette oder eine
Sequenz eines bestimmten Datentyps (z.B. ein 32-Bit-Wert) sein,
wofür jeweils ein entsprechender IDL-Datentyp definiert werden muß.
Aus der obigen Liste der ASN.1-Datentypen sind in der Version 1 von
Internet-SMI [#!rfc1155!#] nur die Datentypen NULL, INTEGER,
OCTET STRING und OBJECT IDENTIFIER sowie die Datentypen
SEQUENCE, SEQUENCE OF zugelassen. Sie werden verwendet, um die
Datentypen des Internet-SMI in der Version 1 (Zähler, IP-Adresse
etc.) zu definieren. Für diese gilt der obere Teil der
Umsetzungstabelle
.
Tabelle:
Umsetzung der Datentypen von SNMP in OMG IDL
| 1|c|SNMP |
1c|IDL |
| IpAddress |
sequence<octet, 4> IpAddressType; |
| Counter |
typedef unsigned short CounterType; |
| Gauge |
typedef unsigned short GaugeType; |
| TimeTicks |
typedef unsigned short TimeTicksType; |
| Opaque |
sequence<octet> OpaqueType; |
| Neue SNMPv2 Datentypen: |
|
| Integer32 |
typedef long Integer32Type; |
| Counter32 |
typedef unsigned long Counter32Type; |
| Gauge32 |
typedef unsigned long Gauge32Type; |
| TimeTicks |
typedef unsigned long TimeTicksType; |
| Counter64 |
typedef long Counter64Type; |
| Unsigned32 |
typedef unsigned long Unsigned32Type; |
Das SNMPv2-Informationsmodell [#!RFC1902!#] erweitert die erste
Version von Internet-SMI um die im zweiten Teil der Tabelle
aufgeführten ASN.1-Datentypen.
Next: Umsetzung von MIB-Modulen
Up: Der JIDM-Algorithmus
Previous: Der JIDM-Algorithmus
Copyright Munich Network Management Team