📄 rfc1452.txt
字号:
If a MIB module is changed to conform to the SNMPv2 framework,
then each occurrence of the TRAP-TYPE macro must be changed to
a corresponding invocation of the NOTIFICATION-TYPE macro:
(1) The IMPORTS statement must not reference RFC-1215.
(2) The ENTERPRISES clause must be removed.
(3) The VARIABLES clause must be renamed to the OBJECTS
clause.
Case, McCloghrie, Rose & Waldbusser [Page 6]
RFC 1452 Coexistence between SNMPv1 and SNMPv2 April 1993
(4) The STATUS clause must be added.
(5) The value of an invocation of the NOTIFICATION-TYPE macro
is an OBJECT IDENTIFIER, not an INTEGER, and must be
changed accordingly.
2.3. Compliance Statements
For those information modules which are "standard", a
corresponding invocation of the MODULE-COMPLIANCE macro must
be included within the information module (or in a companion
information module), and any commentary text in the
information module which relates to compliance must be
removed. Typically this editing can occur when the
information module undergoes review.
2.4. Capabilities Statements
In the current framework, the informational document [9] uses
the MODULE-CONFORMANCE macro to describe an agent's
capabilities with respect to one or more MIB modules.
Converting such a description for use with the SNMPv2
framework requires these changes:
(1) Use the macro name AGENT-CAPABILITIES instead of MODULE-
CONFORMANCE.
(2) The STATUS clause must be added.
(3) For all occurrences of the CREATION-REQUIRES clause, note
the slight change in semantics, and omit this clause if
appropriate.
Case, McCloghrie, Rose & Waldbusser [Page 7]
RFC 1452 Coexistence between SNMPv1 and SNMPv2 April 1993
3. Protocol Operations
The SNMPv2 documents which deal with protocol operations are:
Protocol Operations for SNMPv2 [10], which defines the
syntax and semantics of the operations conveyed by the
protocol; and,
Transport Mappings for SNMPv2 [11], which defines how the
protocol operations are carried over different transport
services.
The following section considers two areas: the proxy behavior
between a SNMPv2 entity and a SNMPv1 agent; and, the behavior
of "bi-lingual" protocol entities acting in a manager role.
3.1. Proxy Agent Behavior
To achieve coexistence at the protocol-level, a proxy
mechanism may be used. A SNMPv2 entity acting in an agent
role may be implemented and configured to act in the role of a
proxy agent.
3.1.1. SNMPv2 -> SNMPv1
When converting requests from a SNMPv2 entity acting in a
manager role into requests sent to a SNMPv1 entity acting in
an agent role:
(1) If a GetRequest-PDU, GetNextRequest-PDU, or SetRequest-
PDU is received, then it is passed unaltered by the proxy
agent.
(2) If a GetBulkRequest-PDU is received, the proxy agent sets
the non-repeaters and max-repetitions fields to zero, and
sets the tag of the PDU to GetNextRequest-PDU.
3.1.2. SNMPv1 -> SNMPv2
When converting responses received from a SNMPv1 entity acting
in an agent role into responses sent to a SNMPv2 entity acting
in a manager role:
Case, McCloghrie, Rose & Waldbusser [Page 8]
RFC 1452 Coexistence between SNMPv1 and SNMPv2 April 1993
(1) If a GetResponse-PDU is received, then it is passed
unaltered by the proxy agent. Note that even though a
SNMPv2 entity will never generate a Response-PDU with a
error-status field having a value of `noSuchName',
`badValue', or `readOnly', the proxy agent must not
change this field. This allows the SNMPv2 entity acting
in a manager role to interpret the response correctly.
If a GetResponse-PDU is received with an error-status
field having a value of `tooBig', the proxy agent will
remove the contents of the variable-bindings field before
propagating the response. Note that even though a SNMPv2
entity will never generate a `tooBig' in response to a
GetBulkRequestPDU, the proxy agent must propagate such a
response.
(2) If a Trap-PDU is received, then it is mapped into a
SNMPv2-Trap-PDU. This is done by prepending onto the
variable-bindings field two new bindings: sysUpTime.0
[12], which takes its value from the timestamp field of
the Trap-PDU; and, snmpTrapOID.0 [13], which is
calculated thusly: if the value of generic-trap field is
`enterpriseSpecific', then the value used is the
concatenation of the enterprise field from the Trap-PDU
with two additional sub-identifiers, `0', and the value
of the specific-trap field; otherwise, the value of the
corresponding trap defined in [13] is used. (For
example, if the value of the generic-trap field is
`coldStart', then the coldStart trap [13] is used.) Then,
one new binding is appended onto the variable-bindings
field: snmpTrapEnterpriseOID.0 [13], which takes its
value from the enterprise field of the Trap-PDU. To
determine the destinations for the SNMPv2-Trap-PDU, the
proxy agent applies the procedures defined in Section
4.2.6 of [10], with the exception that no check is made
to see if the instances associated with this trap are
present in the proxy agent's view.
Case, McCloghrie, Rose & Waldbusser [Page 9]
RFC 1452 Coexistence between SNMPv1 and SNMPv2 April 1993
3.2. Bi-lingual Manager Behavior
To achieve coexistence at the protocol-level, a protocol
entity acting in a manager role might support both SNMPv1 and
SNMPv2. When a management application needs to contact a
protocol entity acting in an agent role, the entity acting in
a manager role consults a local database to select the correct
management protocol to use.
In order to provide transparency to management applications,
the entity acting in a manager role must map operations as if
it were acting as a proxy agent.
Case, McCloghrie, Rose & Waldbusser [Page 10]
RFC 1452 Coexistence between SNMPv1 and SNMPv2 April 1993
4. Acknowledgements
The comments of the SNMP version 2 working group are
gratefully acknowledged:
Beth Adams, Network Management Forum
Steve Alexander, INTERACTIVE Systems Corporation
David Arneson, Cabletron Systems
Toshiya Asaba
Fred Baker, ACC
Jim Barnes, Xylogics, Inc.
Brian Bataille
Andy Bierman, SynOptics Communications, Inc.
Uri Blumenthal, IBM Corporation
Fred Bohle, Interlink
Jack Brown
Theodore Brunner, Bellcore
Stephen F. Bush, GE Information Services
Jeffrey D. Case, University of Tennessee, Knoxville
John Chang, IBM Corporation
Szusin Chen, Sun Microsystems
Robert Ching
Chris Chiotasso, Ungermann-Bass
Bobby A. Clay, NASA/Boeing
John Cooke, Chipcom
Tracy Cox, Bellcore
Juan Cruz, Datability, Inc.
David Cullerot, Cabletron Systems
Cathy Cunningham, Microcom
James R. (Chuck) Davin, Bellcore
Michael Davis, Clearpoint
Mike Davison, FiberCom
Cynthia DellaTorre, MITRE
Taso N. Devetzis, Bellcore
Manual Diaz, DAVID Systems, Inc.
Jon Dreyer, Sun Microsystems
David Engel, Optical Data Systems
Mike Erlinger, Lexcel
Roger Fajman, NIH
Daniel Fauvarque, Sun Microsystems
Karen Frisa, CMU
Shari Galitzer, MITRE
Shawn Gallagher, Digital Equipment Corporation
Richard Graveman, Bellcore
Maria Greene, Xyplex, Inc.
Case, McCloghrie, Rose & Waldbusser [Page 11]
RFC 1452 Coexistence between SNMPv1 and SNMPv2 April 1993
Michel Guittet, Apple
Robert Gutierrez, NASA
Bill Hagerty, Cabletron Systems
Gary W. Haney, Martin Marietta Energy Systems
Patrick Hanil, Nokia Telecommunications
Matt Hecht, SNMP Research, Inc.
Edward A. Heiner, Jr., Synernetics Inc.
Susan E. Hicks, Martin Marietta Energy Systems
Geral Holzhauer, Apple
John Hopprich, DAVID Systems, Inc.
Jeff Hughes, Hewlett-Packard
Robin Iddon, Axon Networks, Inc.
David Itusak
Kevin M. Jackson, Concord Communications, Inc.
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -