4
Network Working Group J. Case
5
Request for Comments: 1448 SNMP Research, Inc.
9
Dover Beach Consulting, Inc.
11
Carnegie Mellon University
17
Simple Network Management Protocol (SNMPv2)
22
This RFC specifes an IAB standards track protocol for the
23
Internet community, and requests discussion and suggestions
24
for improvements. Please refer to the current edition of the
25
"IAB Official Protocol Standards" for the standardization
26
state and status of this protocol. Distribution of this memo
32
1 Introduction .......................................... 2
33
1.1 A Note on Terminology ............................... 2
34
2 Overview .............................................. 3
35
2.1 Roles of Protocol Entities .......................... 3
36
2.2 Management Information .............................. 3
37
2.3 Access to Management Information .................... 4
38
2.4 Retransmission of Requests .......................... 4
39
2.5 Message Sizes ....................................... 5
40
2.6 Transport Mappings .................................. 6
41
3 Definitions ........................................... 7
42
4 Protocol Specification ................................ 12
43
4.1 Common Constructs ................................... 12
44
4.2 PDU Processing ...................................... 12
45
4.2.1 The GetRequest-PDU ................................ 13
46
4.2.2 The GetNextRequest-PDU ............................ 15
47
4.2.2.1 Example of Table Traversal ...................... 16
48
4.2.3 The GetBulkRequest-PDU ............................ 18
49
4.2.3.1 Another Example of Table Traversal .............. 21
50
4.2.4 The Response-PDU .................................. 22
51
4.2.5 The SetRequest-PDU ................................ 23
52
4.2.6 The SNMPv2-Trap-PDU ............................... 26
53
4.2.7 The InformRequest-PDU ............................. 27
59
Case, McCloghrie, Rose & Waldbusser [Page i]
65
RFC 1448 Protocol Operations for SNMPv2 April 1993
68
5 Acknowledgements ...................................... 29
69
6 References ............................................ 33
70
7 Security Considerations ............................... 35
71
8 Authors' Addresses .................................... 35
118
Case, McCloghrie, Rose & Waldbusser [Page 1]
124
RFC 1448 Protocol Operations for SNMPv2 April 1993
129
A network management system contains: several (potentially
130
many) nodes, each with a processing entity, termed an agent,
131
which has access to management instrumentation; at least one
132
management station; and, a management protocol, used to convey
133
management information between the agents and management
134
stations. Operations of the protocol are carried out under an
135
administrative framework which defines both authentication and
136
authorization policies.
138
Network management stations execute management applications
139
which monitor and control network elements. Network elements
140
are devices such as hosts, routers, terminal servers, etc.,
141
which are monitored and controlled through access to their
142
management information.
144
Management information is viewed as a collection of managed
145
objects, residing in a virtual information store, termed the
146
Management Information Base (MIB). Collections of related
147
objects are defined in MIB modules. These modules are written
148
using a subset of OSI's Abstract Syntax Notation One (ASN.1)
149
[1], termed the Structure of Management Information (SMI) [2].
151
The management protocol, version 2 of the Simple Network
152
Management Protocol, provides for the exchange of messages
153
which convey management information between the agents and the
154
management stations. The form of these messages is a message
155
"wrapper" which encapsulates a Protocol Data Unit (PDU). The
156
form and meaning of the "wrapper" is determined by an
157
administrative framework which defines both authentication and
158
authorization policies.
160
It is the purpose of this document, Protocol Operations for
161
SNMPv2, to define the operations of the protocol with respect
162
to the sending and receiving of the PDUs.
165
1.1. A Note on Terminology
167
For the purpose of exposition, the original Internet-standard
168
Network Management Framework, as described in RFCs 1155, 1157,
169
and 1212, is termed the SNMP version 1 framework (SNMPv1).
170
The current framework is termed the SNMP version 2 framework
177
Case, McCloghrie, Rose & Waldbusser [Page 2]
183
RFC 1448 Protocol Operations for SNMPv2 April 1993
188
2.1. Roles of Protocol Entities
190
A SNMPv2 entity may operate in a manager role or an agent
193
A SNMPv2 entity acts in an agent role when it performs SNMPv2
194
management operations in response to received SNMPv2 protocol
195
messages (other than an inform notification) or when it sends
198
A SNMPv2 entity acts in a manager role when it initiates
199
SNMPv2 management operations by the generation of SNMPv2
200
protocol messages or when it performs SNMPv2 management
201
operations in response to received trap or inform
204
A SNMPv2 entity may support either or both roles, as dictated
205
by its implementation and configuration. Further, a SNMPv2
206
entity can also act in the role of a proxy agent, in which it
207
appears to be acting in an agent role, but satisfies
208
management requests by acting in a manager role with a remote
209
entity. The use of proxy agents and the transparency
210
principle that defines their behavior is described in [3].
213
2.2. Management Information
215
The term, variable, refers to an instance of a non-aggregate
216
object type defined according to the conventions set forth in
217
the SMI [2] or the textual conventions based on the SMI [4].
218
The term, variable binding, normally refers to the pairing of
219
the name of a variable and its associated value. However, if
220
certain kinds of exceptional conditions occur during
221
processing of a retrieval request, a variable binding will
222
pair a name and an indication of that exception.
224
A variable-binding list is a simple list of variable bindings.
226
The name of a variable is an OBJECT IDENTIFIER which is the
227
concatenation of the OBJECT IDENTIFIER of the corresponding
228
object-type together with an OBJECT IDENTIFIER fragment
229
identifying the instance. The OBJECT IDENTIFIER of the
230
corresponding object-type is called the OBJECT IDENTIFIER
236
Case, McCloghrie, Rose & Waldbusser [Page 3]
242
RFC 1448 Protocol Operations for SNMPv2 April 1993
245
prefix of the variable.
248
2.3. Access to Management Information
250
Three types of access to management information are provided
251
by the protocol. One type is a request-response interaction,
252
in which a SNMPv2 entity, acting in a manager role, sends a
253
request to a SNMPv2 entity, acting in an agent role, and the
254
latter SNMPv2 entity then responds to the request. This type
255
is used to retrieve or modify management information
256
associated with the managed device.
258
A second type is also a request-response interaction, in which
259
a SNMPv2 entity, acting in a manager role, sends a request to
260
a SNMPv2 entity, also acting in a manager role, and the latter
261
SNMPv2 entity then responds to the request. This type is used
262
to notify a SNMPv2 entity, acting in a manager role, of
263
management information associated with another SNMPv2 entity,
264
also acting in a manager role.
266
The third type of access is an unconfirmed interaction, in
267
which a SNMPv2 entity, acting in an agent role, sends a
268
unsolicited message, termed a trap, to a SNMPv2 entity, acting
269
in a manager role, and no response is returned. This type is
270
used to notify a SNMPv2 entity, acting in a manager role, of
271
an exceptional situation, which has resulted in changes to
272
management information associated with the managed device.
275
2.4. Retransmission of Requests
277
For all types of request in this protocol, the receiver is
278
required under normal circumstances, to generate and transmit
279
a response to the originator of the request. Whether or not a
280
request should be retransmitted if no corresponding response
281
is received in an appropriate time interval, is at the
282
discretion of the application originating the request. This
283
will normally depend on the urgency of the request. However,
284
such an application needs to act responsibly in respect to the
285
frequency and duration of re-transmissions.
295
Case, McCloghrie, Rose & Waldbusser [Page 4]
301
RFC 1448 Protocol Operations for SNMPv2 April 1993
306
The maximum size of a SNMPv2 message is limited the minimum
309
(1) the maximum message size which the destination SNMPv2
310
entity can accept; and,
312
(2) the maximum message size which the source SNMPv2 entity
315
The former is indicated by partyMaxMessageSize[5] of the
316
destination party. The latter is imposed by implementation-
317
specific local constraints.
319
Each transport mapping for the SNMPv2 indicates the minimum
320
message size which a SNMPv2 implementation must be able to
321
produce or consume. Although implementations are encouraged
322
to support larger values whenever possible, a conformant
323
implementation must never generate messages larger than
324
allowed by the receiving SNMPv2 entity.
326
One of the aims of the GetBulkRequest-PDU, specified in this
327
protocol, is to minimize the number of protocol exchanges
328
required to retrieve a large amount of management information.
329
As such, this PDU type allows a SNMPv2 entity acting in a
330
manager role to request that the response be as large as
331
possible given the constraints on message sizes. These
332
constraints include the limits on the size of messages which
333
the SNMPv2 entity acting in an agent role can generate, and
334
the SNMPv2 entity acting in a manager role can receive.
336
However, it is possible that such maximum sized messages may
337
be larger than the Path MTU of the path across the network
338
traversed by the messages. In this situation, such messages
339
are subject to fragmentation. Fragmentation is generally
340
considered to be harmful [6], since among other problems, it
341
leads to a decrease in the reliability of the transfer of the
342
messages. Thus, a SNMPv2 entity which sends a
343
GetBulkRequest-PDU must take care to set its parameters
344
accordingly, so as to reduce the risk of fragmentation. In
345
particular, under conditions of network stress, only small
346
values should be used for max-repetitions.
354
Case, McCloghrie, Rose & Waldbusser [Page 5]
360
RFC 1448 Protocol Operations for SNMPv2 April 1993
363
2.6. Transport Mappings
365
It is important to note that the exchange of SNMPv2 messages
366
requires only an unreliable datagram service, with every
367
message being entirely and independently contained in a single
368
transport datagram. Specific transport mappings and encoding
369
rules are specified elsewhere [7]. However, the preferred
370
mapping is the use of the User Datagram Protocol [8].
413
Case, McCloghrie, Rose & Waldbusser [Page 6]
419
RFC 1448 Protocol Operations for SNMPv2 April 1993
424
SNMPv2-PDU DEFINITIONS ::= BEGIN
427
ObjectName, ObjectSyntax, Integer32
431
-- protocol data units
472
Case, McCloghrie, Rose & Waldbusser [Page 7]
478
RFC 1448 Protocol Operations for SNMPv2 April 1993
487
GetNextRequest-PDU ::=
501
GetBulkRequest-PDU ::=
505
InformRequest-PDU ::=
531
Case, McCloghrie, Rose & Waldbusser [Page 8]
537
RFC 1448 Protocol Operations for SNMPv2 April 1993
541
INTEGER ::= 2147483647
548
error-status -- sometimes ignored
552
noSuchName(2), -- for proxy compatibility
553
badValue(3), -- for proxy compatibility
554
readOnly(4), -- for proxy compatibility
562
inconsistentValue(12),
563
resourceUnavailable(13),
566
authorizationError(16),
571
error-index -- sometimes ignored
572
INTEGER (0..max-bindings),
574
variable-bindings -- values are sometimes ignored
590
Case, McCloghrie, Rose & Waldbusser [Page 9]
596
RFC 1448 Protocol Operations for SNMPv2 April 1993
599
BulkPDU ::= -- MUST be identical in
600
SEQUENCE { -- structure to PDU
605
INTEGER (0..max-bindings),
608
INTEGER (0..max-bindings),
610
variable-bindings -- values are ignored
649
Case, McCloghrie, Rose & Waldbusser [Page 10]
655
RFC 1448 Protocol Operations for SNMPv2 April 1993
669
unSpecified -- in retrieval requests
672
-- exceptions in responses
685
-- variable-binding list
688
SEQUENCE (SIZE (0..max-bindings)) OF
708
Case, McCloghrie, Rose & Waldbusser [Page 11]
714
RFC 1448 Protocol Operations for SNMPv2 April 1993
717
4. Protocol Specification
720
4.1. Common Constructs
722
The value of the request-id field in a Response-PDU takes the
723
value of the request-id field in the request PDU to which it
724
is a response. By use of the request-id value, a SNMPv2
725
application can distinguish the (potentially multiple)
726
outstanding requests, and thereby correlate incoming responses
727
with outstanding requests. In cases where an unreliable
728
datagram service is used, the request-id also provides a
729
simple means of identifying messages duplicated by the
730
network. Use of the same request-id on a retransmission of a
731
request allows the response to either the original
732
transmission or the retransmission to satisfy the request.
733
However, in order to calculate the round trip time for
734
transmission and processing of a request-response transaction,
735
the SNMPv2 application needs to use a different request-id
736
value on a retransmitted request. The latter strategy is
737
recommended for use in the majority of situations.
739
A non-zero value of the error-status field in a Response-PDU
740
is used to indicate that an exception occurred to prevent the
741
processing of the request. In these cases, a non-zero value
742
of the Response-PDU's error-index field provides additional
743
information by identifying which variable binding in the list
744
caused the exception. A variable binding is identified by its
745
index value. The first variable binding in a variable-binding
746
list is index one, the second is index two, etc.
748
SNMPv2 limits OBJECT IDENTIFIER values to a maximum of 128
749
sub-identifiers, where each sub-identifier has a maximum value
755
It is mandatory that all SNMPv2 entities acting in an agent
756
role be able to generate the following PDU types: Response-PDU
757
and SNMPv2-Trap-PDU; further, all such implementations must be
758
able to receive the following PDU types: GetRequest-PDU,
759
GetNextRequest-PDU, GetBulkRequest-PDU, and SetRequest-PDU.
767
Case, McCloghrie, Rose & Waldbusser [Page 12]
773
RFC 1448 Protocol Operations for SNMPv2 April 1993
776
It is mandatory that all SNMPv2 entities acting in a manager
777
role be able to generate the following PDU types: GetRequest-
778
PDU, GetNextRequest-PDU, GetBulkRequest-PDU, SetRequest-PDU,
779
InformRequest-PDU, and Response-PDU; further, all such
780
implementations must be able to receive the following PDU
781
types: Response-PDU, SNMPv2-Trap-PDU, InformRequest-PDU;
783
In the elements of procedure below, any field of a PDU which
784
is not referenced by the relevant procedure is ignored by the
785
receiving SNMPv2 entity. However, all components of a PDU,
786
including those whose values are ignored by the receiving
787
SNMPv2 entity, must have valid ASN.1 syntax and encoding. For
788
example, some PDUs (e.g., the GetRequest-PDU) are concerned
789
only with the name of a variable and not its value. In this
790
case, the value portion of the variable binding is ignored by
791
the receiving SNMPv2 entity. The unSpecified value is defined
792
for use as the value portion of such bindings.
794
For all generated PDUs, the message "wrapper" to encapsulate
795
the PDU is generated and transmitted as specified in [3]. The
796
size of a message is limited only by constraints on the
797
maximum message size, either a local limitation or the limit
798
associated with the message's destination party, i.e., it is
799
not limited by the number of variable bindings.
801
On receiving a management communication, the procedures
802
defined in Section 3.2 of [3] are followed. If these
803
procedures indicate that the PDU contained within the message
804
"wrapper" is to be processed, then the SNMPv2 context
805
associated with the PDU defines the object resources which are
806
visible to the operation.
809
4.2.1. The GetRequest-PDU
811
A GetRequest-PDU is generated and transmitted at the request
812
of a SNMPv2 application.
814
Upon receipt of a GetRequest-PDU, the receiving SNMPv2 entity
815
processes each variable binding in the variable-binding list
816
to produce a Response-PDU. All fields of the Response-PDU
817
have the same values as the corresponding fields of the
818
received request except as indicated below. Each variable
819
binding is processed as follows:
826
Case, McCloghrie, Rose & Waldbusser [Page 13]
832
RFC 1448 Protocol Operations for SNMPv2 April 1993
835
(1) If the variable binding's name does not have an OBJECT
836
IDENTIFIER prefix which exactly matches the OBJECT
837
IDENTIFIER prefix of any variable accessible by this
838
request, then its value field is set to `noSuchObject'.
840
(2) Otherwise, if the variable binding's name does not
841
exactly match the name of a variable accessible by this
842
request, then its value field is set to `noSuchInstance'.
844
(3) Otherwise, the variable binding's value field is set to
845
the value of the named variable.
847
If the processing of any variable binding fails for a reason
848
other than listed above, then the Response-PDU is re-formatted
849
with the same values in its request-id and variable-bindings
850
fields as the received GetRequest-PDU, with the value of its
851
error-status field set to `genErr', and the value of its
852
error-index field is set to the index of the failed variable
855
Otherwise, the value of the Response-PDU's error-status field
856
is set to `noError', and the value of its error-index field is
859
The generated Response-PDU is then encapsulated into a
860
message. If the size of the resultant message is less than or
861
equal to both a local constraint and the maximum message size
862
of the request's source party, it is transmitted to the
863
originator of the GetRequest-PDU.
865
Otherwise, an alternate Response-PDU is generated. This
866
alternate Response-PDU is formatted with the same value in its
867
request-id field as the received GetRequest-PDU, with the
868
value of its error-status field set to `tooBig', the value of
869
its error-index field set to zero, and an empty variable-
870
bindings field. This alternate Response-PDU is then
871
encapsulated into a message. If the size of the resultant
872
message is less than or equal to both a local constraint and
873
the maximum message size of the request's source party, it is
874
transmitted to the originator of the GetRequest-PDU.
875
Otherwise, the resultant message is discarded.
885
Case, McCloghrie, Rose & Waldbusser [Page 14]
891
RFC 1448 Protocol Operations for SNMPv2 April 1993
894
4.2.2. The GetNextRequest-PDU
896
A GetNextRequest-PDU is generated and transmitted at the
897
request of a SNMPv2 application.
899
Upon receipt of a GetNextRequest-PDU, the receiving SNMPv2
900
entity processes each variable binding in the variable-binding
901
list to produce a Response-PDU. All fields of the Response-
902
PDU have the same values as the corresponding fields of the
903
received request except as indicated below. Each variable
904
binding is processed as follows:
906
(1) The variable is located which is in the lexicographically
907
ordered list of the names of all variables which are
908
accessible by this request and whose name is the first
909
lexicographic successor of the variable binding's name in
910
the incoming GetNextRequest-PDU. The corresponding
911
variable binding's name and value fields in the
912
Response-PDU are set to the name and value of the located
915
(2) If the requested variable binding's name does not
916
lexicographically precede the name of any variable
917
accessible by this request, i.e., there is no
918
lexicographic successor, then the corresponding variable
919
binding produced in the Response-PDU has its value field
920
set to 'endOfMibView', and its name field set to the
921
variable binding's name in the request.
923
If the processing of any variable binding fails for a reason
924
other than listed above, then the Response-PDU is re-formatted
925
with the same values in its request-id and variable-bindings
926
fields as the received GetNextRequest-PDU, with the value of
927
its error-status field set to `genErr', and the value of its
928
error-index field is set to the index of the failed variable
931
Otherwise, the value of the Response-PDU's error-status field
932
is set to `noError', and the value of its error-index field is
935
The generated Response-PDU is then encapsulated into a
936
message. If the size of the resultant message is less than or
937
equal to both a local constraint and the maximum message size
938
of the request's source party, it is transmitted to the
944
Case, McCloghrie, Rose & Waldbusser [Page 15]
950
RFC 1448 Protocol Operations for SNMPv2 April 1993
953
originator of the GetNextRequest-PDU.
955
Otherwise, an alternate Response-PDU is generated. This
956
alternate Response-PDU is formatted with the same values in
957
its request-id field as the received GetNextRequest-PDU, with
958
the value of its error-status field set to `tooBig', the value
959
of its error-index field set to zero, and an empty variable-
960
bindings field. This alternate Response-PDU is then
961
encapsulated into a message. If the size of the resultant
962
message is less than or equal to both a local constraint and
963
the maximum message size of the request's source party, it is
964
transmitted to the originator of the GetNextRequest-PDU.
965
Otherwise, the resultant message is discarded.
968
4.2.2.1. Example of Table Traversal
970
An important use of the GetNextRequest-PDU is the traversal of
971
conceptual tables of information within a MIB. The semantics
972
of this type of request, together with the method of
973
identifying individual instances of objects in the MIB,
974
provides access to related objects in the MIB as if they
975
enjoyed a tabular organization.
977
In the protocol exchange sketched below, a SNMPv2 application
978
retrieves the media-dependent physical address and the
979
address-mapping type for each entry in the IP net-to-media
980
Address Translation Table [9] of a particular network element.
981
It also retrieves the value of sysUpTime [9], at which the
982
mappings existed. Suppose that the agent's IP net-to-media
983
table has three entries:
985
Interface-Number Network-Address Physical-Address Type
987
1 10.0.0.51 00:00:10:01:23:45 static
988
1 9.2.3.4 00:00:10:54:32:10 dynamic
989
2 10.0.0.15 00:00:10:98:76:54 dynamic
991
The SNMPv2 entity acting in a manager role begins by sending a
992
GetNextRequest-PDU containing the indicated OBJECT IDENTIFIER
993
values as the requested variable names:
995
GetNextRequest ( sysUpTime,
996
ipNetToMediaPhysAddress,
1003
Case, McCloghrie, Rose & Waldbusser [Page 16]
1009
RFC 1448 Protocol Operations for SNMPv2 April 1993
1012
The SNMPv2 entity acting in an agent role responds with a
1015
Response (( sysUpTime.0 = "123456" ),
1016
( ipNetToMediaPhysAddress.1.9.2.3.4 =
1018
( ipNetToMediaType.1.9.2.3.4 = "dynamic" ))
1020
The SNMPv2 entity acting in a manager role continues with:
1022
GetNextRequest ( sysUpTime,
1023
ipNetToMediaPhysAddress.1.9.2.3.4,
1024
ipNetToMediaType.1.9.2.3.4 )
1026
The SNMPv2 entity acting in an agent role responds with:
1028
Response (( sysUpTime.0 = "123461" ),
1029
( ipNetToMediaPhysAddress.1.10.0.0.51 =
1031
( ipNetToMediaType.1.10.0.0.51 = "static" ))
1033
The SNMPv2 entity acting in a manager role continues with:
1035
GetNextRequest ( sysUpTime,
1036
ipNetToMediaPhysAddress.1.10.0.0.51,
1037
ipNetToMediaType.1.10.0.0.51 )
1039
The SNMPv2 entity acting in an agent role responds with:
1041
Response (( sysUpTime.0 = "123466" ),
1042
( ipNetToMediaPhysAddress.2.10.0.0.15 =
1044
( ipNetToMediaType.2.10.0.0.15 = "dynamic" ))
1046
The SNMPv2 entity acting in a manager role continues with:
1048
GetNextRequest ( sysUpTime,
1049
ipNetToMediaPhysAddress.2.10.0.0.15,
1050
ipNetToMediaType.2.10.0.0.15 )
1052
As there are no further entries in the table, the SNMPv2
1053
entity acting in an agent role responds with the variables
1054
that are next in the lexicographical ordering of the
1055
accessible object names, for example:
1062
Case, McCloghrie, Rose & Waldbusser [Page 17]
1068
RFC 1448 Protocol Operations for SNMPv2 April 1993
1071
Response (( sysUpTime.0 = "123471" ),
1072
( ipNetToMediaNetAddress.1.9.2.3.4 =
1074
( ipRoutingDiscards.0 = "2" ))
1076
This response signals the end of the table to the SNMPv2
1077
entity acting in a manager role.
1080
4.2.3. The GetBulkRequest-PDU
1082
A GetBulkRequest-PDU is generated and transmitted at the
1083
request of a SNMPv2 application. The purpose of the
1084
GetBulkRequest-PDU is to request the transfer of a potentially
1085
large amount of data, including, but not limited to, the
1086
efficient and rapid retrieval of large tables.
1088
Upon receipt of a GetBulkRequest-PDU, the receiving SNMPv2
1089
entity processes each variable binding in the variable-binding
1090
list to produce a Response-PDU with its request-id field
1091
having the same value as in the request. Processing begins by
1092
examining the values in the non-repeaters and max-repetitions
1093
fields. If the value in the non-repeaters field is less than
1094
zero, then the value of the field is set to zero. Similarly,
1095
if the value in the max-repetitions field is less than zero,
1096
then the value of the field is set to zero.
1098
For the GetBulkRequest-PDU type, the successful processing of
1099
each variable binding in the request generates zero or more
1100
variable bindings in the Response-PDU. That is, the one-to-
1101
one mapping between the variable bindings of the GetRequest-
1102
PDU, GetNextRequest-PDU, and SetRequest-PDU types and the
1103
resultant Response-PDUs does not apply for the mapping between
1104
the variable bindings of a GetBulkRequest-PDU and the
1105
resultant Response-PDU.
1107
The values of the non-repeaters and max-repetitions fields in
1108
the request specify the processing requested. One variable
1109
binding in the Response-PDU is requested for the first N
1110
variable bindings in the request and M variable bindings are
1111
requested for each of the R remaining variable bindings in the
1112
request. Consequently, the total number of requested variable
1113
bindings communicated by the request is given by N + (M * R),
1114
where N is the minimum of: a) the value of the non-repeaters
1115
field in the request, and b) the number of variable bindings
1121
Case, McCloghrie, Rose & Waldbusser [Page 18]
1127
RFC 1448 Protocol Operations for SNMPv2 April 1993
1130
in the request; M is the value of the max-repetitions field in
1131
the request; and R is the maximum of: a) number of variable
1132
bindings in the request - N, and b) zero.
1134
The receiving SNMPv2 entity produces a Response-PDU with up to
1135
the total number of requested variable bindings communicated
1136
by the request. The request-id shall have the same value as
1137
the received GetBulkRequest-PDU.
1139
If N is greater than zero, the first through the (N)-th
1140
variable bindings of the Response-PDU are each produced as
1143
(1) The variable is located which is in the lexicographically
1144
ordered list of the names of all variables which are
1145
accessible by this request and whose name is the first
1146
lexicographic successor of the variable binding's name in
1147
the incoming GetBulkRequest-PDU. The corresponding
1148
variable binding's name and value fields in the
1149
Response-PDU are set to the name and value of the located
1152
(2) If the requested variable binding's name does not
1153
lexicographically precede the name of any variable
1154
accessible by this request, i.e., there is no
1155
lexicographic successor, then the corresponding variable
1156
binding produced in the Response-PDU has its value field
1157
set to `endOfMibView', and its name field set to the
1158
variable binding's name in the request.
1160
If M and R are non-zero, the (N + 1)-th and subsequent
1161
variable bindings of the Response-PDU are each produced in a
1162
similar manner. For each iteration i, such that i is greater
1163
than zero and less than or equal to M, and for each repeated
1164
variable, r, such that r is greater than zero and less than or
1165
equal to R, the (N + ( (i-1) * R ) + r)-th variable binding of
1166
the Response-PDU is produced as follows:
1168
(1) The variable which is in the lexicographically ordered
1169
list of the names of all variables which are accessible
1170
by this request and whose name is the (i)-th
1171
lexicographic successor of the (N + r)-th variable
1172
binding's name in the incoming GetBulkRequest-PDU is
1173
located and the variable binding's name and value fields
1174
are set to the name and value of the located variable.
1180
Case, McCloghrie, Rose & Waldbusser [Page 19]
1186
RFC 1448 Protocol Operations for SNMPv2 April 1993
1189
(2) If there is no (i)-th lexicographic successor, then the
1190
corresponding variable binding produced in the Response-
1191
PDU has its value field set to `endOfMibView', and its
1192
name field set to either the last lexicographic
1193
successor, or if there are no lexicographic successors,
1194
to the (N + r)-th variable binding's name in the request.
1196
While the maximum number of variable bindings in the
1197
Response-PDU is bounded by N + (M * R), the response may be
1198
generated with a lesser number of variable bindings (possibly
1199
zero) for either of two reasons.
1201
(1) If the size of the message encapsulating the Response-PDU
1202
containing the requested number of variable bindings
1203
would be greater than either a local constraint or the
1204
maximum message size of the request's source party, then
1205
the response is generated with a lesser number of
1206
variable bindings. This lesser number is the ordered set
1207
of variable bindings with some of the variable bindings
1208
at the end of the set removed, such that the size of the
1209
message encapsulating the Response-PDU is approximately
1210
equal to but no greater than the minimum of the local
1211
constraint and the maximum message size of the request's
1212
source party. Note that the number of variable bindings
1213
removed has no relationship to the values of N, M, or R.
1215
(2) The response may also be generated with a lesser number
1216
of variable bindings if for some value of iteration i,
1217
such that i is greater than zero and less than or equal
1218
to M, that all of the generated variable bindings have
1219
the value field set to the `endOfMibView'. In this case,
1220
the variable bindings may be truncated after the (N + (i
1221
* R))-th variable binding.
1223
If the processing of any variable binding fails for a reason
1224
other than listed above, then the Response-PDU is re-formatted
1225
with the same values in its request-id and variable-bindings
1226
fields as the received GetBulkRequest-PDU, with the value of
1227
its error-status field set to `genErr', and the value of its
1228
error-index field is set to the index of the failed variable
1231
Otherwise, the value of the Response-PDU's error-status field
1232
is set to `noError', and the value of its error-index field to
1239
Case, McCloghrie, Rose & Waldbusser [Page 20]
1245
RFC 1448 Protocol Operations for SNMPv2 April 1993
1248
The generated Response-PDU (possibly with an empty variable-
1249
bindings field) is then encapsulated into a message. If the
1250
size of the resultant message is less than or equal to both a
1251
local constraint and the maximum message size of the request's
1252
source party, it is transmitted to the originator of the
1253
GetBulkRequest-PDU. Otherwise, the resultant message is
1257
4.2.3.1. Another Example of Table Traversal
1259
This example demonstrates how the GetBulkRequest-PDU can be
1260
used as an alternative to the GetNextRequest-PDU. The same
1261
traversal of the IP net-to-media table as shown in Section
1262
4.2.2.1 is achieved with fewer exchanges.
1264
The SNMPv2 entity acting in a manager role begins by sending a
1265
GetBulkRequest-PDU with the modest max-repetitions value of 2,
1266
and containing the indicated OBJECT IDENTIFIER values as the
1267
requested variable names:
1269
GetBulkRequest [ non-repeaters = 1, max-repetitions = 2 ]
1271
ipNetToMediaPhysAddress,
1274
The SNMPv2 entity acting in an agent role responds with a
1277
Response (( sysUpTime.0 = "123456" ),
1278
( ipNetToMediaPhysAddress.1.9.2.3.4 =
1280
( ipNetToMediaType.1.9.2.3.4 = "dynamic" ),
1281
( ipNetToMediaPhysAddress.1.10.0.0.51 =
1283
( ipNetToMediaType.1.10.0.0.51 = "static" ))
1285
The SNMPv2 entity acting in a manager role continues with:
1287
GetBulkRequest [ non-repeaters = 1, max-repetitions = 2 ]
1289
ipNetToMediaPhysAddress.1.10.0.0.51,
1290
ipNetToMediaType.1.10.0.0.51 )
1298
Case, McCloghrie, Rose & Waldbusser [Page 21]
1304
RFC 1448 Protocol Operations for SNMPv2 April 1993
1307
The SNMPv2 entity acting in an agent role responds with:
1309
Response (( sysUpTime.0 = "123466" ),
1310
( ipNetToMediaPhysAddress.2.10.0.0.15 =
1312
( ipNetToMediaType.2.10.0.0.15 =
1314
( ipNetToMediaNetAddress.1.9.2.3.4 =
1316
( ipRoutingDiscards.0 = "2" ))
1318
This response signals the end of the table to the SNMPv2
1319
entity acting in a manager role.
1322
4.2.4. The Response-PDU
1324
The Response-PDU is generated by a SNMPv2 entity only upon
1325
receipt of a GetRequest-PDU, GetNextRequest-PDU,
1326
GetBulkRequest-PDU, SetRequest-PDU, or InformRequest-PDU, as
1327
described elsewhere in this document.
1329
If the error-status field of the Response-PDU is non-zero, the
1330
value fields of the variable bindings in the variable binding
1333
If both the error-status field and the error-index field of
1334
the Response-PDU are non-zero, then the value of the error-
1335
index field is the index of the variable binding (in the
1336
variable-binding list of the corresponding request) for which
1337
the request failed. The first variable binding in a request's
1338
variable-binding list is index one, the second is index two,
1341
A compliant SNMPv2 entity acting in a manager role must be
1342
able to properly receive and handle a Response-PDU with an
1343
error-status field equal to `noSuchName', `badValue', or
1344
`readOnly'. (See Section 3.1.2 of [10].)
1346
Upon receipt of a Response-PDU, the receiving SNMPv2 entity
1347
presents its contents to the SNMPv2 application which
1348
generated the request with the same request-id value.
1357
Case, McCloghrie, Rose & Waldbusser [Page 22]
1363
RFC 1448 Protocol Operations for SNMPv2 April 1993
1366
4.2.5. The SetRequest-PDU
1368
A SetRequest-PDU is generated and transmitted at the request
1369
of a SNMPv2 application.
1371
Upon receipt of a SetRequest-PDU, the receiving SNMPv2 entity
1372
determines the size of a message encapsulating a Response-PDU
1373
with the same values in its request-id, error-status, error-
1374
index and variable-bindings fields as the received
1375
SetRequest-PDU. If the determined message size is greater
1376
than either a local constraint or the maximum message size of
1377
the request's source party, then an alternate Response-PDU is
1378
generated, transmitted to the originator of the SetRequest-
1379
PDU, and processing of the SetRequest-PDU terminates
1380
immediately thereafter. This alternate Response-PDU is
1381
formatted with the same values in its request-id field as the
1382
received SetRequest-PDU, with the value of its error-status
1383
field set to `tooBig', the value of its error-index field set
1384
to zero, and an empty variable-bindings field. This alternate
1385
Response-PDU is then encapsulated into a message. If the size
1386
of the resultant message is less than or equal to both a local
1387
constraint and the maximum message size of the request's
1388
source party, it is transmitted to the originator of the
1389
SetRequest-PDU. Otherwise, the resultant message is
1390
discarded. Regardless, processing of the SetRequest-PDU
1393
Otherwise, the receiving SNMPv2 entity processes each variable
1394
binding in the variable-binding list to produce a Response-
1395
PDU. All fields of the Response-PDU have the same values as
1396
the corresponding fields of the received request except as
1399
The variable bindings are conceptually processed as a two
1400
phase operation. In the first phase, each variable binding is
1401
validated; if all validations are successful, then each
1402
variable is altered in the second phase. Of course,
1403
implementors are at liberty to implement either the first, or
1404
second, or both, of the these conceptual phases as multiple
1405
implementation phases. Indeed, such multiple implementation
1406
phases may be necessary in some cases to ensure consistency.
1408
The following validations are performed in the first phase on
1409
each variable binding until they are all successful, or until
1416
Case, McCloghrie, Rose & Waldbusser [Page 23]
1422
RFC 1448 Protocol Operations for SNMPv2 April 1993
1425
(1) If the variable binding's name specifies a variable which
1426
is not accessible by this request, then the value of the
1427
Response-PDU's error-status field is set to `noAccess',
1428
and the value of its error-index field is set to the
1429
index of the failed variable binding.
1431
(2) Otherwise, if the variable binding's name specifies a
1432
variable which does not exist and could not ever be
1433
created, then the value of the Response-PDU's error-
1434
status field is set to `noCreation', and the value of its
1435
error-index field is set to the index of the failed
1438
(3) Otherwise, if the variable binding's name specifies a
1439
variable which exists but can not be modified no matter
1440
what new value is specified, then the value of the
1441
Response-PDU's error-status field is set to
1442
`notWritable', and the value of its error-index field is
1443
set to the index of the failed variable binding.
1445
(4) Otherwise, if the variable binding's value field
1446
specifies, according to the ASN.1 language, a type which
1447
is inconsistent with that required for the variable, then
1448
the value of the Response-PDU's error-status field is set
1449
to `wrongType', and the value of its error-index field is
1450
set to the index of the failed variable binding.
1452
(5) Otherwise, if the variable binding's value field
1453
specifies, according to the ASN.1 language, a length
1454
which is inconsistent with that required for the
1455
variable, then the value of the Response-PDU's error-
1456
status field is set to `wrongLength', and the value of
1457
its error-index field is set to the index of the failed
1460
(6) Otherwise, if the variable binding's value field contains
1461
an ASN.1 encoding which is inconsistent with that field's
1462
ASN.1 tag, then: the value of the Response-PDU's error-
1463
status field is set to `wrongEncoding', and the value of
1464
its error-index field is set to the index of the failed
1467
(7) Otherwise, if the variable binding's value field
1468
specifies a value which could under no circumstances be
1469
assigned to the variable, then: the value of the
1475
Case, McCloghrie, Rose & Waldbusser [Page 24]
1481
RFC 1448 Protocol Operations for SNMPv2 April 1993
1484
Response-PDU's error-status field is set to `wrongValue',
1485
and the value of its error-index field is set to the
1486
index of the failed variable binding.
1488
(8) Otherwise, if the variable binding's name specifies a
1489
variable which does not exist but can not be created not
1490
under the present circumstances (even though it could be
1491
created under other circumstances), then the value of the
1492
Response-PDU's error-status field is set to
1493
`inconsistentName', and the value of its error-index
1494
field is set to the index of the failed variable binding.
1496
(9) Otherwise, if the variable binding's value field
1497
specifies a value that could under other circumstances be
1498
assigned to the variable, but is presently inconsistent,
1499
then the value of the Response-PDU's error-status field
1500
is set to `inconsistentValue', and the value of its
1501
error-index field is set to the index of the failed
1504
(10) Otherwise, if the assignment of the value specified by
1505
the variable binding's value field to the specified
1506
variable requires the allocation of a resource which is
1507
presently unavailable, then: the value of the Response-
1508
PDU's error-status field is set to `resourceUnavailable',
1509
and the value of its error-index field is set to the
1510
index of the failed variable binding.
1512
(11) If the processing of the variable binding fails for a
1513
reason other than listed above, then the value of the
1514
Response-PDU's error-status field is set to `genErr', and
1515
the value of its error-index field is set to the index of
1516
the failed variable binding.
1518
(12) Otherwise, the validation of the variable binding
1521
At the end of the first phase, if the validation of all
1522
variable bindings succeeded, then:
1524
The value of the Response-PDU's error-status field is set to
1525
`noError' and the value of its error-index field is zero.
1527
For each variable binding in the request, the named variable
1528
is created if necessary, and the specified value is assigned
1534
Case, McCloghrie, Rose & Waldbusser [Page 25]
1540
RFC 1448 Protocol Operations for SNMPv2 April 1993
1543
to it. Each of these variable assignments occurs as if
1544
simultaneously with respect to all other assignments specified
1545
in the same request. However, if the same variable is named
1546
more than once in a single request, with different associated
1547
values, then the actual assignment made to that variable is
1548
implementation-specific.
1550
If any of these assignments fail (even after all the previous
1551
validations), then all other assignments are undone, and the
1552
Response-PDU is modified to have the value of its error-status
1553
field set to `commitFailed', and the value of its error-index
1554
field set to the index of the failed variable binding.
1556
If and only if it is not possible to undo all the assignments,
1557
then the Response-PDU is modified to have the value of its
1558
error-status field set to `undoFailed', and the value of its
1559
error-index field is set to zero. Note that implementations
1560
are strongly encouraged to take all possible measures to avoid
1561
use of either `commitFailed' or `undoFailed' - these two
1562
error-status codes are not to be taken as license to take the
1563
easy way out in an implementation.
1565
Finally, the generated Response-PDU is encapsulated into a
1566
message, and transmitted to the originator of the SetRequest-
1570
4.2.6. The SNMPv2-Trap-PDU
1572
A SNMPv2-Trap-PDU is generated and transmitted by a SNMPv2
1573
entity acting in an agent role when an exceptional situation
1576
The destination(s) to which a SNMPv2-Trap-PDU is sent is
1577
determined by consulting the aclTable [5] to find all entries
1578
satisfying the following conditions:
1580
(1) The value of aclSubject refers to the SNMPv2 entity.
1582
(2) The value of aclPrivileges allows for the SNMPv2-Trap-
1585
(3) aclResources refers to a SNMPv2 context denoting local
1586
object resources, and the notification's administratively
1587
assigned name is present in the corresponding MIB view.
1593
Case, McCloghrie, Rose & Waldbusser [Page 26]
1599
RFC 1448 Protocol Operations for SNMPv2 April 1993
1602
(That is, the set of entries in the viewTable [5] for
1603
which the instance of viewIndex has the same value as the
1604
aclResources's contextViewIndex, define a MIB view which
1605
contains the notification's administratively assigned
1608
(4) If the OBJECTS clause is present in the invocation of the
1609
corresponding NOTIFICATION-TYPE macro, then the
1610
correspondent variables are all present in the MIB view
1611
corresponding to aclResource.
1613
Then, for each entry satisfying these conditions, a SNMPv2-
1614
Trap-PDU is sent from aclSubject with context aclResources to
1615
aclTarget. The instance of snmpTrapNumbers [11] corresponding
1616
to aclTarget is incremented, and is used as the request-id
1617
field of the SNMPv2-Trap-PDU. Then, the variable-bindings
1618
field are constructed as:
1620
(1) The first variable is sysUpTime.0 [9].
1622
(2) The second variable is snmpTrapOID.0 [11], which contains
1623
the administratively assigned name of the notification.
1625
(3) If the OBJECTS clause is present in the invocation of the
1626
corresponding NOTIFICATION-TYPE macro, then each
1627
corresponding variable is copied, in order, to the
1628
variable-bindings field.
1630
(4) At the option of the SNMPv2 entity acting in an agent
1631
role, additional variables may follow in the variable-
1635
4.2.7. The InformRequest-PDU
1637
An InformRequest-PDU is generated and transmitted at the
1638
request an application in a SNMPv2 entity acting in a manager
1639
role, that wishes to notify another application (in a SNMPv2
1640
entity also acting in a manager role) of information in the
1641
MIB View of a party local to the sending application.
1643
The destination(s) to which an InformRequest-PDU is sent is
1644
determined by inspecting the snmpEventNotifyTable [12], or as
1645
specified by the requesting application. The first two
1646
variable bindings in the variable binding list of an
1652
Case, McCloghrie, Rose & Waldbusser [Page 27]
1658
RFC 1448 Protocol Operations for SNMPv2 April 1993
1661
InformRequest-PDU are sysUpTime.0 [9] and snmpEventID.i [12]
1662
respectively. If the OBJECTS clause is present in the
1663
invocation of the corresponding NOTIFICATION-TYPE macro, then
1664
each corresponding variable, as instantiated by this
1665
notification, is copied, in order, to the variable-bindings
1668
Upon receipt of an InformRequest-PDU, the receiving SNMPv2
1669
entity determines the size of a message encapsulating a
1670
Response-PDU with the same values in its request-id, error-
1671
status, error-index and variable-bindings fields as the
1672
received InformRequest-PDU. If the determined message size is
1673
greater than either a local constraint or the maximum message
1674
size of the request's source party, then an alternate
1675
Response-PDU is generated, transmitted to the originator of
1676
the InformRequest-PDU, and processing of the InformRequest-PDU
1677
terminates immediately thereafter. This alternate Response-
1678
PDU is formatted with the same values in its request-id field
1679
as the received InformRequest-PDU, with the value of its
1680
error-status field set to `tooBig', the value of its error-
1681
index field set to zero, and an empty variable-bindings field.
1682
This alternate Response-PDU is then encapsulated into a
1683
message. If the size of the resultant message is less than or
1684
equal to both a local constraint and the maximum message size
1685
of the request's source party, it is transmitted to the
1686
originator of the InformRequest-PDU. Otherwise, the resultant
1687
message is discarded. Regardless, processing of the
1688
InformRequest-PDU terminates.
1690
Otherwise, the receiving SNMPv2 entity:
1692
(1) presents its contents to the appropriate SNMPv2
1695
(2) generates a Response-PDU with the same values in its
1696
request-id and variable-bindings fields as the received
1697
InformRequest-PDU, with the value of its error-status
1698
field is set to `noError' and the value of its error-
1699
index field is zero; and
1701
(3) transmits the generated Response-PDU to the originator of
1702
the InformRequest-PDU.
1711
Case, McCloghrie, Rose & Waldbusser [Page 28]
1717
RFC 1448 Protocol Operations for SNMPv2 April 1993
1722
This document is based, in part, on RFC 1157. The mechanism
1723
for bulk retrieval is influenced by many experiments,
1724
including RFC1187 and also Greg Satz's work on SNMP over TCP.
1726
Finally, the comments of the SNMP version 2 working group are
1727
gratefully acknowledged:
1729
Beth Adams, Network Management Forum
1730
Steve Alexander, INTERACTIVE Systems Corporation
1731
David Arneson, Cabletron Systems
1734
Jim Barnes, Xylogics, Inc.
1736
Andy Bierman, SynOptics Communications, Inc.
1737
Uri Blumenthal, IBM Corporation
1738
Fred Bohle, Interlink
1740
Theodore Brunner, Bellcore
1741
Stephen F. Bush, GE Information Services
1742
Jeffrey D. Case, University of Tennessee, Knoxville
1743
John Chang, IBM Corporation
1744
Szusin Chen, Sun Microsystems
1746
Chris Chiotasso, Ungermann-Bass
1747
Bobby A. Clay, NASA/Boeing
1750
Juan Cruz, Datability, Inc.
1751
David Cullerot, Cabletron Systems
1752
Cathy Cunningham, Microcom
1753
James R. (Chuck) Davin, Bellcore
1754
Michael Davis, Clearpoint
1755
Mike Davison, FiberCom
1756
Cynthia DellaTorre, MITRE
1757
Taso N. Devetzis, Bellcore
1758
Manual Diaz, DAVID Systems, Inc.
1759
Jon Dreyer, Sun Microsystems
1760
David Engel, Optical Data Systems
1761
Mike Erlinger, Lexcel
1763
Daniel Fauvarque, Sun Microsystems
1770
Case, McCloghrie, Rose & Waldbusser [Page 29]
1776
RFC 1448 Protocol Operations for SNMPv2 April 1993
1779
Shari Galitzer, MITRE
1780
Shawn Gallagher, Digital Equipment Corporation
1781
Richard Graveman, Bellcore
1782
Maria Greene, Xyplex, Inc.
1783
Michel Guittet, Apple
1784
Robert Gutierrez, NASA
1785
Bill Hagerty, Cabletron Systems
1786
Gary W. Haney, Martin Marietta Energy Systems
1787
Patrick Hanil, Nokia Telecommunications
1788
Matt Hecht, SNMP Research, Inc.
1789
Edward A. Heiner, Jr., Synernetics Inc.
1790
Susan E. Hicks, Martin Marietta Energy Systems
1791
Geral Holzhauer, Apple
1792
John Hopprich, DAVID Systems, Inc.
1793
Jeff Hughes, Hewlett-Packard
1794
Robin Iddon, Axon Networks, Inc.
1796
Kevin M. Jackson, Concord Communications, Inc.
1797
Ole J. Jacobsen, Interop Company
1798
Ronald Jacoby, Silicon Graphics, Inc.
1799
Satish Joshi, SynOptics Communications, Inc.
1800
Frank Kastenholz, FTP Software
1801
Mark Kepke, Hewlett-Packard
1802
Ken Key, SNMP Research, Inc.
1803
Zbiginew Kielczewski, Eicon
1805
Andrew Knutsen, The Santa Cruz Operation
1806
Michael L. Kornegay, VisiSoft
1807
Deirdre C. Kostik, Bellcore
1808
Cheryl Krupczak, Georgia Tech
1809
Mark S. Lewis, Telebit
1811
David Lindemulder, AT&T/NCR
1812
Ben Lisowski, Sprint
1813
David Liu, Bell-Northern Research
1814
John Lunny, The Wollongong Group
1815
Robert C. Lushbaugh Martin, Marietta Energy Systems
1817
Carl Madison, Star-Tek, Inc.
1818
Keith McCloghrie, Hughes LAN Systems
1819
Evan McGinnis, 3Com Corporation
1820
Bill McKenzie, IBM Corporation
1821
Donna McMaster, SynOptics Communications, Inc.
1822
John Medicke, IBM Corporation
1823
Doug Miller, Telebit
1829
Case, McCloghrie, Rose & Waldbusser [Page 30]
1835
RFC 1448 Protocol Operations for SNMPv2 April 1993
1838
Dave Minnich, FiberCom
1839
Mohammad Mirhakkak, MITRE
1840
Rohit Mital, Protools
1841
George Mouradian, AT&T Bell Labs
1842
Patrick Mullaney, Cabletron Systems
1843
Dan Myers, 3Com Corporation
1844
Rina Nathaniel, Rad Network Devices Ltd.
1845
Hien V. Nguyen, Sprint
1848
William B. Norton, MERIT
1849
Steve Onishi, Wellfleet Communications, Inc.
1850
David T. Perkins, SynOptics Communications, Inc.
1852
Ilan Raab, SynOptics Communications, Inc.
1853
Richard Ramons, AT&T
1854
Venkat D. Rangan, Metric Network Systems, Inc.
1855
Louise Reingold, Sprint
1856
Sam Roberts, Farallon Computing, Inc.
1857
Kary Robertson, Concord Communications, Inc.
1858
Dan Romascanu, Lannet Data Communications Ltd.
1859
Marshall T. Rose, Dover Beach Consulting, Inc.
1860
Shawn A. Routhier, Epilogue Technology Corporation
1862
Asaf Rubissa, Fibronics
1863
Jon Saperia, Digital Equipment Corporation
1865
Mike Scanlon, Interlan
1867
John Seligson, Ultra Network Technologies
1868
Paul A. Serice, Corporation for Open Systems
1869
Chris Shaw, Banyan Systems
1871
Robert Snyder, Cisco Systems
1874
Einar Stefferud, Network Management Associates
1875
John Stephens, Cayman Systems, Inc.
1876
Robert L. Stewart, Xyplex, Inc. (chair)
1877
Kaj Tesink, Bellcore
1878
Dean Throop, Data General
1879
Ahmet Tuncay, France Telecom-CNET
1880
Maurice Turcotte, Racal Datacom
1881
Warren Vik, INTERACTIVE Systems Corporation
1888
Case, McCloghrie, Rose & Waldbusser [Page 31]
1894
RFC 1448 Protocol Operations for SNMPv2 April 1993
1897
Steven L. Waldbusser, Carnegie Mellon Universitty
1898
Timothy M. Walden, ACC
1899
Alice Wang, Sun Microsystems
1900
James Watt, Newbridge
1901
Luanne Waul, Timeplex
1902
Donald E. Westlake III, Digital Equipment Corporation
1904
Bert Wijnen, IBM Corporation
1905
Peter Wilson, 3Com Corporation
1906
Steven Wong, Digital Equipment Corporation
1907
Randy Worzella, IBM Corporation
1908
Daniel Woycke, MITRE
1910
Jeff Yarnell, Protools
1911
Chris Young, Cabletron
1912
Kiho Yum, 3Com Corporation
1947
Case, McCloghrie, Rose & Waldbusser [Page 32]
1953
RFC 1448 Protocol Operations for SNMPv2 April 1993
1958
[1] Information processing systems - Open Systems
1959
Interconnection - Specification of Abstract Syntax
1960
Notation One (ASN.1), International Organization for
1961
Standardization. International Standard 8824, (December,
1964
[2] Case, J., McCloghrie, K., Rose, M., and Waldbusser, S.,
1965
"Structure of Management Information for version 2 of the
1966
Simple Network Management Protocol (SNMPv2)", RFC 1442,
1967
SNMP Research, Inc., Hughes LAN Systems, Dover Beach
1968
Consulting, Inc., Carnegie Mellon University, April 1993.
1970
[3] Galvin, J., and McCloghrie, K., "Administrative Model for
1971
version 2 of the Simple Network Management Protocol
1972
(SNMPv2)", RFC 1445, Trusted Information Systems, Hughes
1973
LAN Systems, April 1993.
1975
[4] Case, J., McCloghrie, K., Rose, M., and Waldbusser, S.,
1976
"Textual Conventions for version 2 of the the Simple
1977
Network Management Protocol (SNMPv2)", RFC 1443, SNMP
1978
Research, Inc., Hughes LAN Systems, Dover Beach
1979
Consulting, Inc., Carnegie Mellon University, April 1993.
1981
[5] McCloghrie, K., and Galvin, J., "Party MIB for version 2
1982
of the Simple Network Management Protocol (SNMPv2)", RFC
1983
1447, Hughes LAN Systems, Trusted Information Systems,
1986
[6] C. Kent, J. Mogul, Fragmentation Considered Harmful,
1987
Proceedings, ACM SIGCOMM '87, Stowe, VT, (August 1987).
1989
[7] Case, J., McCloghrie, K., Rose, M., and Waldbusser, S.,
1990
"Transport Mappings for version 2 of the Simple Network
1991
Management Protocol (SNMPv2)", RFC 1449, SNMP Research,
1992
Inc., Hughes LAN Systems, Dover Beach Consulting, Inc.,
1993
Carnegie Mellon University, April 1993.
1995
[8] Postel, J., "User Datagram Protocol", STD 6, RFC 768,
1996
USC/Information Sciences Institute, August 1980.
1998
[9] McCloghrie, K., and Rose, M., "Management Information
1999
Base for Network Management of TCP/IP-based internets:
2000
MIB-II", STD 17, RFC 1213, March 1991.
2006
Case, McCloghrie, Rose & Waldbusser [Page 33]
2012
RFC 1448 Protocol Operations for SNMPv2 April 1993
2015
[10] Case, J., McCloghrie, K., Rose, M., and Waldbusser, S.,
2016
"Coexistence between version 1 and version 2 of the
2017
Internet-standard Network Management Framework", RFC
2018
1452, SNMP Research, Inc., Hughes LAN Systems, Dover
2019
Beach Consulting, Inc., Carnegie Mellon University, April
2022
[11] Case, J., McCloghrie, K., Rose, M., and Waldbusser, S.,
2023
"Management Information Base for version 2 of the Simple
2024
Network Management Protocol (SNMPv2)", RFC 1450, SNMP
2025
Research, Inc., Hughes LAN Systems, Dover Beach
2026
Consulting, Inc., Carnegie Mellon University, April 1993.
2028
[12] Case, J., McCloghrie, K., Rose, M., and Waldbusser, S.,
2029
"Manager-to-Manager Management Information Base", RFC
2030
1451, SNMP Research, Inc., Hughes LAN Systems, Dover
2031
Beach Consulting, Inc., Carnegie Mellon University, April
2065
Case, McCloghrie, Rose & Waldbusser [Page 34]
2071
RFC 1448 Protocol Operations for SNMPv2 April 1993
2074
7. Security Considerations
2076
Security issues are not discussed in this memo.
2079
8. Authors' Addresses
2083
3001 Kimberlin Heights Rd.
2084
Knoxville, TN 37920-9716
2087
Phone: +1 615 573 1434
2088
Email: case@snmp.com
2093
1225 Charleston Road
2094
Mountain View, CA 94043
2097
Phone: +1 415 966 7934
2102
Dover Beach Consulting, Inc.
2104
Mountain View, CA 94043-2186
2107
Phone: +1 415 968 1052
2108
Email: mrose@dbc.mtview.ca.us
2111
Carnegie Mellon University
2113
Pittsburgh, PA 15213
2116
Phone: +1 412 268 6628
2117
Email: waldbusser@cmu.edu
2124
Case, McCloghrie, Rose & Waldbusser [Page 35]