1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
207
208
209
210
211
212
213
214
215
216
217
218
219
220
221
222
223
224
225
226
227
228
229
230
231
232
233
234
235
236
237
238
239
240
241
242
243
244
245
246
247
248
249
250
251
252
253
254
255
256
257
258
259
260
261
262
263
264
265
266
267
268
269
270
271
272
273
274
275
276
277
278
279
280
281
282
283
284
285
286
287
288
289
290
291
292
293
294
295
296
297
298
299
300
301
302
303
304
305
306
307
308
309
310
311
312
313
314
315
316
317
318
319
320
321
322
323
324
325
326
327
328
329
330
331
332
333
334
335
336
337
338
339
340
341
342
343
344
345
346
347
348
349
350
351
352
353
354
355
356
357
358
359
360
361
362
363
364
365
366
367
368
369
370
371
372
373
374
375
376
377
378
379
380
381
382
383
384
385
386
387
388
389
390
391
392
393
394
395
396
397
398
399
400
401
402
403
404
405
406
407
408
409
410
411
412
413
414
415
416
417
418
419
420
421
422
423
424
425
426
427
428
429
430
431
432
433
434
435
436
437
438
439
440
441
442
443
444
445
446
447
448
449
450
451
452
453
454
455
456
457
458
459
460
461
462
463
464
465
466
467
468
469
470
471
472
473
474
475
476
477
478
479
480
481
482
483
484
485
486
487
488
489
490
491
492
493
494
495
496
497
498
499
500
501
502
503
504
505
506
507
|
Network Working Group M. Rose, Editor
Request for Comments: 1215 Performance Systems International
March 1991
A Convention for Defining Traps
for use with the SNMP
Status of this Memo
This memo suggests a straight-forward approach towards defining traps
used with the SNMP. Readers should note that the use of traps in the
Internet-standard network management framework is controversial. As
such, this memo is being put forward for information purposes.
Network management practitioners who employ traps are encouraged to
make use of this document. Practitioners who do not employ traps can
safely ignore this document.
This memo provides information for the Internet community. It does
not specify any standard. Distribution of this memo is unlimited.
Table of Contents
1. Historical Perspective ................................ 1
2. Defining Traps ........................................ 2
2.1 Mapping of the TRAP-TYPE macro ....................... 3
2.1.1 Mapping of the ENTERPRISE clause ................... 3
2.1.2 Mapping of the VARIABLES clause .................... 4
2.1.3 Mapping of the DESCRIPTION clause .................. 4
2.1.4 Mapping of the REFERENCE clause .................... 4
2.1.5 Mapping of the TRAP-TYPE value ..................... 4
2.2 Usage Examples ....................................... 5
2.2.1 Enterprise-specific Trap ........................... 5
2.2.2 Generic-Traps for use with the SNMP ................ 5
3. Acknowledgements ...................................... 7
4. References ............................................ 9
5. Security Considerations................................ 9
6. Author's Address....................................... 9
1. Historical Perspective
As reported in RFC 1052, IAB Recommendations for the Development of
Internet Network Management Standards [1], a two-prong strategy for
network management of TCP/IP-based internets was undertaken. In the
short-term, the Simple Network Management Protocol (SNMP), defined in
RFC 1067, was to be used to manage nodes in the Internet community.
In the long-term, the use of the OSI network management framework was
be examined. Two documents were produced to define the management
SNMP Working Group [Page 1]
^L
RFC 1215 Convention for Defining Traps March 1991
information: RFC 1065, which defined the Structure of Management
Information (SMI), and RFC 1066, which defined the Management
Information Base (MIB). Both of these documents were designed so as
to be compatible with both the SNMP and the OSI network management
framework.
This strategy was quite successful in the short-term: Internet-based
network management technology was fielded, by both the research and
commercial communities, within a few months. As a result of this,
portions of the Internet community became network manageable in a
timely fashion.
As reported in RFC 1109, Report of the Second Ad Hoc Network
Management Review Group [2], the requirements of the SNMP and the OSI
network management frameworks were more different than anticipated.
As such, the requirement for compatibility between the SMI/MIB and
both frameworks was suspended. This action permitted the operational
network management framework, based on the SNMP, to respond to new
operational needs in the Internet community by producing MIB-II.
In May of 1990, the core documents were elevated to "Standard
Protocols" with "Recommended" status. As such, the Internet-standard
network management framework consists of: Structure and
Identification of Management Information for TCP/IP-based internets,
RFC 1155 [3], which describes how managed objects contained in the
MIB are defined; Management Information Base for Network Management
of TCP/IP-based internets, which describes the managed objects
contained in the MIB, RFC 1156 [4]; and, the Simple Network
Management Protocol, RFC 1157 [5], which defines the protocol used to
manage these objects.
2. Defining Traps
Due to its initial requirement to be protocol-independent, the
Internet-standard SMI does not provide a means for defining traps.
Instead, the SNMP defines a few standardized traps and provides a
means for management enterprises to transmit enterprise-specific
traps.
However, with the introduction of experimental MIBs, some of which
have a need to define experiment-specific traps, a convenient means
of defining traps is desirable. The TRAP-TYPE macro is suggested for
this purpose:
IMPORTS
ObjectName
FROM RFC1155-SMI;
SNMP Working Group [Page 2]
^L
RFC 1215 Convention for Defining Traps March 1991
TRAP-TYPE MACRO ::=
BEGIN
TYPE NOTATION ::= "ENTERPRISE" value
(enterprise OBJECT IDENTIFIER)
VarPart
DescrPart
ReferPart
VALUE NOTATION ::= value (VALUE INTEGER)
VarPart ::=
"VARIABLES" "{" VarTypes "}"
| empty
VarTypes ::=
VarType | VarTypes "," VarType
VarType ::=
value (vartype ObjectName)
DescrPart ::=
"DESCRIPTION" value (description DisplayString)
| empty
ReferPart ::=
"REFERENCE" value (reference DisplayString)
| empty
END
It must be emphasized however, that the use of traps is STRONGLY
discouraged in the Internet-standard Network Management Framework.
The TRAP-TYPE macro is intended to allow concise definitions of
existing traps, not to spur the definition of new traps.
2.1. Mapping of the TRAP-TYPE macro
It should be noted that the expansion of the TRAP-TYPE macro is
something which conceptually happens during implementation and not
during run-time.
2.1.1. Mapping of the ENTERPRISE clause
The ENTERPRISE clause, which must be present, defines the management
enterprise under whose registration authority this trap is defined
(for a discussion on delegation of registration authority, see the
SMI [3]). This value is placed inside the enterprise field of the
SNMP Trap-PDU.
By convention, if the value of the ENTERPRISE clause is
SNMP Working Group [Page 3]
^L
RFC 1215 Convention for Defining Traps March 1991
snmp OBJECT IDENTIFIER ::= { mib-2 11 }
as defined in MIB-II [7], then instead of using this value, the value
of sysObjectID is placed in the enterprise field of the SNMP Trap-
PDU. This provides a simple means of using the TRAP-TYPE macro to
represent the existing standard SNMP traps; it is not intended to
provide a means to define additional standard SNMP traps.
2.1.2. Mapping of the VARIABLES clause
The VARIABLES clause, which need not be present, defines the ordered
sequence of MIB objects which are contained within every instance of
the trap type. Each variable is placed, in order, inside the
variable-bindings field of the SNMP Trap-PDU. Note that at the
option of the agent, additional variables may follow in the
variable-bindings field.
However, if the value of the ENTERPRISE clause is
snmp OBJECT IDENTIFIER ::= { mib-2 11 }
as defined in MIB-II [7], then the introduction of additional
variables must not result in the serialized SNMP Message being larger
than 484 octets.
2.1.3. Mapping of the DESCRIPTION clause
The DESCRIPTION clause, which need not be present, contains a textual
definition of the trap type. Note that in order to conform to the
ASN.1 syntax, the entire value of this clause must be enclosed in
double quotation marks, although the value may be multi-line.
Further, note that if the MIB module does not contain a textual
description of the trap elsewhere then the DESCRIPTION clause must be
present.
2.1.4. Mapping of the REFERENCE clause
The REFERENCE clause, which need not be present, contains a textual
cross-reference to a trap, event, or alarm, defined in some other MIB
module. This is useful when de-osifying a MIB produced by some other
organization.
2.1.5. Mapping of the TRAP-TYPE value
The value of an invocation of the TRAP-TYPE macro is the (integer)
number which is uniquely assigned to the trap by the registration
authority indicated by the ENTERPRISE clause. This value is placed
SNMP Working Group [Page 4]
^L
RFC 1215 Convention for Defining Traps March 1991
inside the specific-trap field of the SNMP Trap-PDU, and the
generic-trap field is set to "enterpriseSpecific(6)".
By convention, if the value of the ENTERPRISE clause is
snmp OBJECT IDENTIFIER ::= { mib-2 11 }
as defined in MIB-II [7], then the value of an invocation of the
TRAP-TYPE macro is placed inside the generic-trap field of the SNMP
Trap-PDU, and the specific-trap field is set to 0. This provides a
simple means of using the TRAP-TYPE macro to represent the existing
standard SNMP traps; it is not intended to provide a means to define
additional standard SNMP traps.
2.2. Usage Examples
2.2.1. Enterprise-specific Trap
Consider a simple example of an enterprise-specific trap that is sent
when a communication link failure is encountered:
myEnterprise OBJECT IDENTIFIER ::= { enterprises 9999 }
myLinkDown TRAP-TYPE
ENTERPRISE myEnterprise
VARIABLES { ifIndex }
DESCRIPTION
"A myLinkDown trap signifies that the sending
SNMP application entity recognizes a failure
in one of the communications links represented
in the agent's configuration."
::= 2
2.2.2. Generic-Traps for use with the SNMP
Consider how the standard SNMP traps might be defined:
coldStart TRAP-TYPE
ENTERPRISE snmp
DESCRIPTION
"A coldStart trap signifies that the sending
protocol entity is reinitializing itself such
that the agent's configuration or the rotocol
entity implementation may be altered."
::= 0
warmStart TRAP-TYPE
ENTERPRISE snmp
SNMP Working Group [Page 5]
^L
RFC 1215 Convention for Defining Traps March 1991
DESCRIPTION
"A warmStart trap signifies that the sending
protocol entity is reinitializing itself such
that neither the agent configuration nor the
protocol entity implementation is altered."
::= 1
linkDown TRAP-TYPE
ENTERPRISE snmp
VARIABLES { ifIndex }
DESCRIPTION
"A linkDown trap signifies that the sending
protocol entity recognizes a failure in one of
the communication links represented in the
agent's configuration."
::= 2
linkUp TRAP-TYPE
ENTERPRISE snmp
VARIABLES { ifIndex }
DESCRIPTION
"A linkUp trap signifies that the sending
protocol entity recognizes that one of the
communication links represented in the agent's
configuration has come up."
::= 3
authenticationFailure TRAP-TYPE
ENTERPRISE snmp
DESCRIPTION
"An authenticationFailure trap signifies that
the sending protocol entity is the addressee
of a protocol message that is not properly
authenticated. While implementations of the
SNMP must be capable of generating this trap,
they must also be capable of suppressing the
emission of such traps via an implementation-
specific mechanism."
::= 4
SNMP Working Group [Page 6]
^L
RFC 1215 Convention for Defining Traps March 1991
egpNeighborLoss TRAP-TYPE
ENTERPRISE snmp
VARIABLES { egpNeighAddr }
DESCRIPTION
"An egpNeighborLoss trap signifies that an EGP
neighbor for whom the sending protocol entity
was an EGP peer has been marked down and the
peer relationship no longer obtains."
::= 5
3. Acknowledgements
This document was produced by the SNMP Working Group:
Anne Ambler, Spider
Karl Auerbach, Sun
Fred Baker, ACC
Ken Brinkerhoff
Ron Broersma, NOSC
Jack Brown, US Army
Theodore Brunner, Bellcore
Jeffrey Buffum, HP
John Burress, Wellfleet
Jeffrey D. Case, University of Tennessee at Knoxville
Chris Chiptasso, Spartacus
Paul Ciarfella, DEC
Bob Collet
John Cook, Chipcom
Tracy Cox, Bellcore
James R. Davin, MIT-LCS
Eric Decker, cisco
Kurt Dobbins, Cabletron
Nadya El-Afandi, Network Systems
Gary Ellis, HP
Fred Engle
Mike Erlinger
Mark S. Fedor, PSI
Richard Fox, Synoptics
Karen Frisa, CMU
Chris Gunner, DEC
Fred Harris, University of Tennessee at Knoxville
Ken Hibbard, Xylogics
Ole Jacobsen, Interop
Ken Jones
Satish Joshi, Synoptics
Frank Kastenholz, Racal-Interlan
Shimshon Kaufman, Spartacus
Ken Key, University of Tennessee at Knoxville
SNMP Working Group [Page 7]
^L
RFC 1215 Convention for Defining Traps March 1991
Jim Kinder, Fibercom
Alex Koifman, BBN
Christopher Kolb, PSI
Cheryl Krupczak, NCR
Paul Langille, DEC
Peter Lin, Vitalink
John Lunny, TWG
Carl Malamud
Randy Mayhew, University of Tennessee at Knoxville
Keith McCloghrie, Hughes LAN Systems
Donna McMaster, David Systems
Lynn Monsanto, Sun
Dave Perkins, 3COM
Jim Reinstedler, Ungerman Bass
Anil Rijsinghani, DEC
Kathy Rinehart, Arnold AFB
Kary Robertson
Marshall T. Rose, PSI (chair)
L. Michael Sabo, NCSC
Jon Saperia, DEC
Greg Satz, cisco
Martin Schoffstall, PSI
John Seligson
Steve Sherry, Xyplex
Fei Shu, NEC
Sam Sjogren, TGV
Mark Sleeper, Sparta
Lance Sprung
Mike St.Johns
Bob Stewart, Xyplex
Emil Sturniold
Kaj Tesink, Bellcore
Dean Throop, Data General
Bill Townsend, Xylogics
Maurice Turcotte, Racal-Milgo
Kannan Varadhou
Sudhanshu Verma, HP
Bill Versteeg, Network Research Corporation
Warren Vik, Interactive Systems
David Waitzman, BBN
Steve Waldbusser, CMU
Dan Wintringhan
David Wood
Wengyik Yeong, PSI
Jeff Young, Cray Research
SNMP Working Group [Page 8]
^L
RFC 1215 Convention for Defining Traps March 1991
4. References
[1] Cerf, V., "IAB Recommendations for the Development of Internet
Network Management Standards", RFC 1052, NRI, April 1988.
[2] Cerf, V., "Report of the Second Ad Hoc Network Management Review
Group", RFC 1109, NRI, August 1989.
[3] Rose M., and K. McCloghrie, "Structure and Identification of
Management Information for TCP/IP-based internets", RFC 1155,
Performance Systems International, Hughes LAN Systems, May 1990.
[4] McCloghrie K., and M. Rose, "Management Information Base for
Network Management of TCP/IP-based internets", RFC 1156, Hughes
LAN Systems, Performance Systems International, May 1990.
[5] Case, J., Fedor, M., Schoffstall, M., and J. Davin, "Simple
Network Management Protocol", RFC 1157, SNMP Research,
Performance Systems International, Performance Systems
International, MIT Laboratory for Computer Science, May 1990.
[6] Information processing systems - Open Systems Interconnection -
Specification of Abstract Syntax Notation One (ASN.1),
International Organization for Standardization International
Standard 8824, December 1987.
[7] Rose M., Editor, "Management Information Base for Network
Management of TCP/IP-based internets: MIB-II", RFC 1213,
Performance Systems International, March 1991.
5. Security Considerations
Security issues are not discussed in this memo.
6. Author's Address
Marshall T. Rose
Performance Systems International
5201 Great America Parkway
Suite 3106
Santa Clara, CA 95054
Phone: +1 408 562 6222
EMail: mrose@psi.com
X.500: rose, psi, us
SNMP Working Group [Page 9]
^L
|