1Message ::= 2 SEQUENCE { 3 version 4 INTEGER ({snmp_version}), 5 6 community 7 OCTET STRING, 8 9 pdu 10 PDUs 11 } 12 13 14ObjectName ::= 15 OBJECT IDENTIFIER 16 17ObjectSyntax ::= 18 CHOICE { 19 simple 20 SimpleSyntax, 21 22 application-wide 23 ApplicationSyntax 24 } 25 26SimpleSyntax ::= 27 CHOICE { 28 integer-value 29 INTEGER, 30 31 string-value 32 OCTET STRING, 33 34 objectID-value 35 OBJECT IDENTIFIER 36 } 37 38ApplicationSyntax ::= 39 CHOICE { 40 ipAddress-value 41 IpAddress, 42 43 counter-value 44 Counter32, 45 46 timeticks-value 47 TimeTicks, 48 49 arbitrary-value 50 Opaque, 51 52 big-counter-value 53 Counter64, 54 55 unsigned-integer-value 56 Unsigned32 57 } 58 59IpAddress ::= 60 [APPLICATION 0] 61 IMPLICIT OCTET STRING OPTIONAL ({snmp_helper}) 62 63Counter32 ::= 64 [APPLICATION 1] 65 IMPLICIT INTEGER OPTIONAL 66 67Unsigned32 ::= 68 [APPLICATION 2] 69 IMPLICIT INTEGER OPTIONAL 70 71Gauge32 ::= Unsigned32 OPTIONAL 72 73TimeTicks ::= 74 [APPLICATION 3] 75 IMPLICIT INTEGER OPTIONAL 76 77Opaque ::= 78 [APPLICATION 4] 79 IMPLICIT OCTET STRING OPTIONAL 80 81Counter64 ::= 82 [APPLICATION 6] 83 IMPLICIT INTEGER OPTIONAL 84 85PDUs ::= 86 CHOICE { 87 get-request 88 GetRequest-PDU, 89 90 get-next-request 91 GetNextRequest-PDU, 92 93 get-bulk-request 94 GetBulkRequest-PDU, 95 96 response 97 Response-PDU, 98 99 set-request 100 SetRequest-PDU, 101 102 inform-request 103 InformRequest-PDU, 104 105 snmpV2-trap 106 SNMPv2-Trap-PDU, 107 108 report 109 Report-PDU 110 } 111 112GetRequest-PDU ::= 113 [0] IMPLICIT PDU OPTIONAL 114 115GetNextRequest-PDU ::= 116 [1] IMPLICIT PDU OPTIONAL 117 118Response-PDU ::= 119 [2] IMPLICIT PDU OPTIONAL 120 121SetRequest-PDU ::= 122 [3] IMPLICIT PDU OPTIONAL 123 124-- [4] is obsolete 125 126GetBulkRequest-PDU ::= 127 [5] IMPLICIT PDU OPTIONAL 128 129InformRequest-PDU ::= 130 [6] IMPLICIT PDU OPTIONAL 131 132SNMPv2-Trap-PDU ::= 133 [7] IMPLICIT PDU OPTIONAL 134 135Report-PDU ::= 136 [8] IMPLICIT PDU OPTIONAL 137 138PDU ::= 139 SEQUENCE { 140 request-id 141 INTEGER, 142 143 error-status 144 INTEGER, 145 146 error-index 147 INTEGER, 148 149 variable-bindings 150 VarBindList 151 } 152 153 154VarBind ::= 155 SEQUENCE { 156 name 157 ObjectName, 158 159 CHOICE { 160 value 161 ObjectSyntax, 162 163 unSpecified 164 NULL, 165 166 noSuchObject 167 [0] IMPLICIT NULL, 168 169 noSuchInstance 170 [1] IMPLICIT NULL, 171 172 endOfMibView 173 [2] IMPLICIT NULL 174 } 175} 176 177VarBindList ::= SEQUENCE OF VarBind 178