draft-ietf-isms-tmsm-16.txt   draft-ietf-isms-tmsm-17.txt 
Network Working Group D. Harrington Network Working Group D. Harrington
Internet-Draft Huawei Technologies (USA) Internet-Draft Huawei Technologies (USA)
Updates: 3411,3412,3414,3417 J. Schoenwaelder Updates: 3411,3412,3414,3417 J. Schoenwaelder
(if approved) Jacobs University Bremen (if approved) Jacobs University Bremen
Intended status: Standards Track February 25, 2009 Intended status: Standards Track April 27, 2009
Expires: August 29, 2009 Expires: October 29, 2009
Transport Subsystem for the Simple Network Management Protocol (SNMP) Transport Subsystem for the Simple Network Management Protocol (SNMP)
draft-ietf-isms-tmsm-16 draft-ietf-isms-tmsm-17
Status of This Memo Status of This Memo
This Internet-Draft is submitted to IETF in full conformance with the This Internet-Draft is submitted to IETF in full conformance with the
provisions of BCP 78 and BCP 79. This document may contain material provisions of BCP 78 and BCP 79. This document may contain material
from IETF Documents or IETF Contributions published or made publicly from IETF Documents or IETF Contributions published or made publicly
available before November 10, 2008. The person(s) controlling the available before November 10, 2008. The person(s) controlling the
copyright in some of this material may not have granted the IETF copyright in some of this material may not have granted the IETF
Trust the right to allow modifications of such material outside the Trust the right to allow modifications of such material outside the
IETF Standards Process. Without obtaining an adequate license from IETF Standards Process. Without obtaining an adequate license from
skipping to change at page 1, line 44 skipping to change at page 1, line 44
and may be updated, replaced, or obsoleted by other documents at any and may be updated, replaced, or obsoleted by other documents at any
time. It is inappropriate to use Internet-Drafts as reference time. It is inappropriate to use Internet-Drafts as reference
material or to cite them other than as "work in progress." material or to cite them other than as "work in progress."
The list of current Internet-Drafts can be accessed at The list of current Internet-Drafts can be accessed at
http://www.ietf.org/ietf/1id-abstracts.txt. http://www.ietf.org/ietf/1id-abstracts.txt.
The list of Internet-Draft Shadow Directories can be accessed at The list of Internet-Draft Shadow Directories can be accessed at
http://www.ietf.org/shadow.html. http://www.ietf.org/shadow.html.
This Internet-Draft will expire on August 29, 2009. This Internet-Draft will expire on October 29, 2009.
Copyright Notice Copyright Notice
Copyright (c) 2009 IETF Trust and the persons identified as the Copyright (c) 2009 IETF Trust and the persons identified as the
document authors. All rights reserved. document authors. All rights reserved.
This document is subject to BCP 78 and the IETF Trust's Legal This document is subject to BCP 78 and the IETF Trust's Legal
Provisions Relating to IETF Documents in effect on the date of Provisions Relating to IETF Documents in effect on the date of
publication of this document (http://trustee.ietf.org/license-info). publication of this document (http://trustee.ietf.org/license-info).
Please review these documents carefully, as they describe your rights Please review these documents carefully, as they describe your rights
skipping to change at page 2, line 48 skipping to change at page 2, line 48
3.3. Session Requirements . . . . . . . . . . . . . . . . . . . 14 3.3. Session Requirements . . . . . . . . . . . . . . . . . . . 14
3.3.1. No SNMP Sessions . . . . . . . . . . . . . . . . . . . 14 3.3.1. No SNMP Sessions . . . . . . . . . . . . . . . . . . . 14
3.3.2. Session Establishment Requirements . . . . . . . . . . 15 3.3.2. Session Establishment Requirements . . . . . . . . . . 15
3.3.3. Session Maintenance Requirements . . . . . . . . . . . 16 3.3.3. Session Maintenance Requirements . . . . . . . . . . . 16
3.3.4. Message security versus session security . . . . . . . 16 3.3.4. Message security versus session security . . . . . . . 16
4. Scenario Diagrams and the Transport Subsystem . . . . . . . . 17 4. Scenario Diagrams and the Transport Subsystem . . . . . . . . 17
5. Cached Information and References . . . . . . . . . . . . . . 17 5. Cached Information and References . . . . . . . . . . . . . . 17
5.1. securityStateReference . . . . . . . . . . . . . . . . . . 18 5.1. securityStateReference . . . . . . . . . . . . . . . . . . 18
5.2. tmStateReference . . . . . . . . . . . . . . . . . . . . . 18 5.2. tmStateReference . . . . . . . . . . . . . . . . . . . . . 18
5.2.1. Transport information . . . . . . . . . . . . . . . . 19 5.2.1. Transport information . . . . . . . . . . . . . . . . 19
5.2.2. securityName . . . . . . . . . . . . . . . . . . . . . 19 5.2.2. securityName . . . . . . . . . . . . . . . . . . . . . 20
5.2.3. securityLevel . . . . . . . . . . . . . . . . . . . . 20 5.2.3. securityLevel . . . . . . . . . . . . . . . . . . . . 20
5.2.4. Session Information . . . . . . . . . . . . . . . . . 21 5.2.4. Session Information . . . . . . . . . . . . . . . . . 21
6. Abstract Service Interfaces . . . . . . . . . . . . . . . . . 21 6. Abstract Service Interfaces . . . . . . . . . . . . . . . . . 21
6.1. sendMessage ASI . . . . . . . . . . . . . . . . . . . . . 22 6.1. sendMessage ASI . . . . . . . . . . . . . . . . . . . . . 22
6.2. Changes to RFC3411 Outgoing ASIs . . . . . . . . . . . . . 22 6.2. Changes to RFC3411 Outgoing ASIs . . . . . . . . . . . . . 23
6.2.1. Message Processing Subsystem Primitives . . . . . . . 22 6.2.1. Message Processing Subsystem Primitives . . . . . . . 23
6.2.2. Security Subsystem Primitives . . . . . . . . . . . . 24 6.2.2. Security Subsystem Primitives . . . . . . . . . . . . 24
6.3. The receiveMessage ASI . . . . . . . . . . . . . . . . . . 25 6.3. The receiveMessage ASI . . . . . . . . . . . . . . . . . . 25
6.4. Changes to RFC3411 Incoming ASIs . . . . . . . . . . . . . 26 6.4. Changes to RFC3411 Incoming ASIs . . . . . . . . . . . . . 26
6.4.1. Message Processing Subsystem Primitive . . . . . . . . 26 6.4.1. Message Processing Subsystem Primitive . . . . . . . . 26
6.4.2. Security Subsystem Primitive . . . . . . . . . . . . . 27 6.4.2. Security Subsystem Primitive . . . . . . . . . . . . . 27
7. Security Considerations . . . . . . . . . . . . . . . . . . . 28 7. Security Considerations . . . . . . . . . . . . . . . . . . . 28
7.1. Coexistence, Security Parameters, and Access Control . . . 29 7.1. Coexistence, Security Parameters, and Access Control . . . 29
8. IANA Considerations . . . . . . . . . . . . . . . . . . . . . 30 8. IANA Considerations . . . . . . . . . . . . . . . . . . . . . 30
9. Acknowledgments . . . . . . . . . . . . . . . . . . . . . . . 31 9. Acknowledgments . . . . . . . . . . . . . . . . . . . . . . . 31
10. References . . . . . . . . . . . . . . . . . . . . . . . . . . 31 10. References . . . . . . . . . . . . . . . . . . . . . . . . . . 31
10.1. Normative References . . . . . . . . . . . . . . . . . . . 31 10.1. Normative References . . . . . . . . . . . . . . . . . . . 31
10.2. Informative References . . . . . . . . . . . . . . . . . . 32 10.2. Informative References . . . . . . . . . . . . . . . . . . 32
Appendix A. Why tmStateReference? . . . . . . . . . . . . . . . . 34 Appendix A. Why tmStateReference? . . . . . . . . . . . . . . . . 34
A.1. Define an Abstract Service Interface . . . . . . . . . . . 34 A.1. Define an Abstract Service Interface . . . . . . . . . . . 34
A.2. Using an Encapsulating Header . . . . . . . . . . . . . . 34 A.2. Using an Encapsulating Header . . . . . . . . . . . . . . 35
A.3. Modifying Existing Fields in an SNMP Message . . . . . . . 35 A.3. Modifying Existing Fields in an SNMP Message . . . . . . . 35
A.4. Using a Cache . . . . . . . . . . . . . . . . . . . . . . 35 A.4. Using a Cache . . . . . . . . . . . . . . . . . . . . . . 35
Appendix B. Open Issues . . . . . . . . . . . . . . . . . . . . . 35
Appendix C. Change Log . . . . . . . . . . . . . . . . . . . . . 36
1. Introduction 1. Introduction
This document defines a Transport Subsystem, extending the Simple This document defines a Transport Subsystem, extending the Simple
Network Management Protocol (SNMP) architecture defined in [RFC3411]. Network Management Protocol (SNMP) architecture defined in [RFC3411].
This document identifies and describes some key aspects that need to This document identifies and describes some key aspects that need to
be considered for any Transport Model for SNMP. be considered for any Transport Model for SNMP.
1.1. The Internet-Standard Management Framework 1.1. The Internet-Standard Management Framework
skipping to change at page 6, line 27 skipping to change at page 6, line 27
In the first approach, an individual could sit on his front porch In the first approach, an individual could sit on his front porch
waiting for intruders. In the second approach, he could hire an waiting for intruders. In the second approach, he could hire an
employee , schedule the employee, position the employee to guard what employee , schedule the employee, position the employee to guard what
he wants protected, hire a second guard to cover if the first gets he wants protected, hire a second guard to cover if the first gets
sick, and so on. In the third approach, he could hire a security sick, and so on. In the third approach, he could hire a security
company, tell them what he wants protected, and leave the details to company, tell them what he wants protected, and leave the details to
them. Considerations of hiring and training employees, positioning them. Considerations of hiring and training employees, positioning
and scheduling the guards, arranging for cover, etc., are the and scheduling the guards, arranging for cover, etc., are the
responsibility of the security company. The individual therefore responsibility of the security company. The individual therefore
achieves the desired security, with no significant effort on his part achieves the desired security, with significantly less effort on his
other than identifying requirements and verifying the quality of part except identifying requirements and verifying the quality of
service being provided. service being provided.
The User-based Security Model (USM) as defined in [RFC3414] largely The User-based Security Model (USM) as defined in [RFC3414] largely
uses the first approach - it provides its own security. It utilizes uses the first approach - it provides its own security. It utilizes
existing mechanisms (e.g., SHA), but provides all the coordination. existing mechanisms (e.g., SHA), but provides all the coordination.
USM provides for the authentication of a principal, message USM provides for the authentication of a principal, message
encryption, data integrity checking, timeliness checking, etc. encryption, data integrity checking, timeliness checking, etc.
USM was designed to be independent of other existing security USM was designed to be independent of other existing security
infrastructures. USM therefore requires a separate principal and key infrastructures. USM therefore requires a separate principal and key
skipping to change at page 9, line 20 skipping to change at page 9, line 20
when changes are made. when changes are made.
The RFC3411 architecture includes a Message Processing Subsystem The RFC3411 architecture includes a Message Processing Subsystem
permitting different message versions to be handled by a single permitting different message versions to be handled by a single
engine, a Security Subsystem for enabling different methods of engine, a Security Subsystem for enabling different methods of
providing security services, Applications(s) to support different providing security services, Applications(s) to support different
types of application processors, and an Access Control Subsystem for types of application processors, and an Access Control Subsystem for
allowing multiple approaches to access control. The RFC3411 allowing multiple approaches to access control. The RFC3411
architecture does not include a subsystem for Transport Models, architecture does not include a subsystem for Transport Models,
despite the fact there are multiple transport mappings already despite the fact there are multiple transport mappings already
defined for SNMP. This document describes a Transport Subsystem that defined for SNMP [RFC3417]. This document describes a Transport
is compatible with the RFC3411 architecture. As work is being done Subsystem that is compatible with the RFC3411 architecture. As work
to use secure transports such as SSH and TLS, using a subsystem will is being done to use secure transports such as SSH and TLS, using a
enable consistent design and modularity of such Transport Models. subsystem will enable consistent design and modularity of such
Transport Models.
The design of this Transport Subsystem accepts the goals of the The design of this Transport Subsystem accepts the goals of the
RFC3411 architecture defined in section 1.5 of [RFC3411]. This RFC3411 architecture defined in section 1.5 of [RFC3411]. This
Transport Subsystem uses a modular design that permits Transport Transport Subsystem uses a modular design that permits Transport
Models (which may or may not be security-aware) to be "plugged into" Models (which may or may not be security-aware) to be "plugged into"
the RFC3411 architecture . Such Transport Models would be the RFC3411 architecture. Such Transport Models would be independent
independent of other modular SNMP components as much as possible. of other modular SNMP components as much as possible. This design
This design also permits Transport Models to be advanced through the also permits Transport Models to be advanced through the standards
standards process independently of other Transport Models. process independently of other Transport Models.
To encourage a basic level of interoperability, any Transport Model To encourage a basic level of interoperability, any Transport Model
SHOULD define one mandatory-to-implement security mechanism, but SHOULD define one mandatory-to-implement security mechanism, but
should also be able to support additional existing and new should also be able to support additional existing and new
mechanisms. mechanisms.
The following diagram depicts the SNMPv3 architecture including the The following diagram depicts the SNMPv3 architecture including the
new Transport Subsystem defined in this document, and a new Transport new Transport Subsystem defined in this document, and a new Transport
Security Model defined in [I-D.ietf-isms-transport-security-model]. Security Model defined in [I-D.ietf-isms-transport-security-model].
skipping to change at page 11, line 46 skipping to change at page 11, line 46
A secure transport performs those security functions on the message, A secure transport performs those security functions on the message,
before the message is decoded. Some of these functions might then be before the message is decoded. Some of these functions might then be
repeated by the selected Security Model. repeated by the selected Security Model.
3.2.1.3. Passing Information between SNMP Engines 3.2.1.3. Passing Information between SNMP Engines
A secure Transport Model will establish an authenticated and possibly A secure Transport Model will establish an authenticated and possibly
encrypted tunnel between the Transport Models of two SNMP engines. encrypted tunnel between the Transport Models of two SNMP engines.
After a transport layer tunnel is established, then SNMP messages can After a transport layer tunnel is established, then SNMP messages can
be sent through the tunnel from one SNMP engine to the other. be sent through the tunnel from one SNMP engine to the other. While
the Community Security Models [RFC3584] and the User-based Security
Model establish a security association for each SNMP message, newer
Transport Models MAY support sending multiple SNMP messages through Transport Models MAY support sending multiple SNMP messages through
the same tunnel. the same tunnel to amortize the costs of establishing a security
association.
3.2.2. Access Control Requirements 3.2.2. Access Control Requirements
RFC3411 made some design decisions related to the support of an RFC3411 made some design decisions related to the support of an
Access Control Subsystem. These include establishing and passing in Access Control Subsystem. These include establishing and passing in
a model-independent manner the securityModel, securityName and a model-independent manner the securityModel, securityName and
securityLevel parameters, and separating message authentication from securityLevel parameters, and separating message authentication from
data access authorization. data access authorization.
3.2.2.1. securityName and securityLevel Mapping 3.2.2.1. securityName and securityLevel Mapping
skipping to change at page 14, line 51 skipping to change at page 14, line 51
To reduce redundancy, this document describes aspects that are To reduce redundancy, this document describes aspects that are
expected to be common to all Transport Model sessions. expected to be common to all Transport Model sessions.
3.3.1. No SNMP Sessions 3.3.1. No SNMP Sessions
The architecture defined in [RFC3411] and the Transport Subsystem The architecture defined in [RFC3411] and the Transport Subsystem
defined in this document do not support SNMP sessions or include a defined in this document do not support SNMP sessions or include a
session selector in the Abstract Service Interfaces. session selector in the Abstract Service Interfaces.
The Transport Subsystem may support transport sessions. However, the The Transport Subsystem may support transport sessions. However, the
transport subsystem does not have access to the pduType, so cannot transport subsystem does not have access to the pduType (i.e., the
select a given transport session for particular types of traffic. SNMP operation type), so cannot select a given transport session for
particular types of traffic.
Certain parameters of these ASIs might be used to guide the selection Certain parameters of the Abstract Service Interfaces might be used
of an appropriate transport session to use for a given request by an to guide the selection of an appropriate transport session to use for
application. a given request by an application.
The transportDomain and transportAddress identify the transport The transportDomain and transportAddress identify the transport
connection to a remote network node. Elements of the transport connection to a remote network node. Elements of the transport
address (such as the port number) might be used by an application to address (such as the port number) might be used by an application to
send a particular PDU type to a particular transport address. send a particular PDU type to a particular transport address. For
example, the SNMP-TARGET-MIB and SNMP-NOTIFICATION-MIB [RFC3413] are
used to configure notification originators with the destination port
to which SNMPv2-Trap PDUs or Inform PDUs should be sent, but the
transport subsystem never looks inside the PDU.
The securityName identifies which security principal to communicate The securityName identifies which security principal to communicate
with at that address (e.g., different NMS applications), and the with at that address (e.g., different NMS applications), and the
securityLevel might permit selection of different sets of security securityLevel might permit selection of different sets of security
properties for different purposes (e.g., encrypted SETs vs. non- properties for different purposes (e.g., encrypted SETs vs. non-
encrypted GETs). encrypted GETs).
However, because the handling of transport sessions is specific to However, because the handling of transport sessions is specific to
each transport model, some transport models MAY restrict selecting a each transport model, some transport models MAY restrict selecting a
particular transport session. particular transport session. A user application might use a unique
combination of transportDomain, transportAddress, securityModel,
An application might use a unique combination of transportDomain, securityName, and securityLevel to try to force the selection of a
transportAddress, securityModel, securityName, and securityLevel to given transport session. This usage is NOT RECOMMENDED because it is
try to force the selection of a given transport session. This usage not guaranteed to be interoperable across implementations and across
is NOT RECOMMENDED because it is not guaranteed to be interoperable models.
across implementatioins and across models.
Implementations SHOULD be able to maintain some reasonable number of Implementations SHOULD be able to maintain some reasonable number of
concurrent transport sessions, and MAY provide non-standard internal concurrent transport sessions, and MAY provide non-standard internal
mechanisms to select transport sessions. mechanisms to select transport sessions.
3.3.2. Session Establishment Requirements 3.3.2. Session Establishment Requirements
SNMP applications provide the transportDomain, transportAddress, SNMP applications provide the transportDomain, transportAddress,
securityName, and securityLevel to be used to create a new session. securityName, and securityLevel to be used to create a new session.
skipping to change at page 17, line 4 skipping to change at page 17, line 7
observed on a session, and successfully replay this later in the same observed on a session, and successfully replay this later in the same
session. One approach would be to use sequence information within session. One approach would be to use sequence information within
the protocol, allowing the participants to detect if messages were the protocol, allowing the participants to detect if messages were
replayed or reordered within a session. replayed or reordered within a session.
If a secure transport session is closed between the time a request If a secure transport session is closed between the time a request
message is received, and the corresponding response message is sent, message is received, and the corresponding response message is sent,
then the response message SHOULD be discarded, even if a new session then the response message SHOULD be discarded, even if a new session
has been established. The SNMPv3 WG decided that this should be a has been established. The SNMPv3 WG decided that this should be a
SHOULD architecturally, and it is a security-model-specific decision SHOULD architecturally, and it is a security-model-specific decision
whether to REQUIRE this. whether to REQUIRE this. The architecture does not mandate this
requirement to allow for future security models where this might make
sense, but not requiring this could lead to added complexity and
security vulnerabilities, so most security models SHOULD require
this.
SNMPv3 was designed to support multiple levels of security, SNMPv3 was designed to support multiple levels of security,
selectable on a per-message basis by an SNMP application, because, selectable on a per-message basis by an SNMP application, because,
for example, there is not much value in using encryption for a for example, there is not much value in using encryption for a
Commander Generator to poll for potentially non-sensitive performance Command Generator to poll for potentially non-sensitive performance
data on thousands of interfaces every ten minutes; the encryption data on thousands of interfaces every ten minutes; the encryption
might add significant overhead to processing of the messages. might add significant overhead to processing of the messages.
Some Transport Models might support only specific authentication and Some Transport Models might support only specific authentication and
encryption services, such as requiring all messages to be carried encryption services, such as requiring all messages to be carried
using both authentication and encryption, regardless of the security using both authentication and encryption, regardless of the security
level requested by an SNMP application. A Transport Model MAY level requested by an SNMP application. A Transport Model MAY
upgrade the security level requested by a transport-aware security upgrade the security level requested by a transport-aware security
model, i.e. noAuthNoPriv and authNoPriv might be sent over an model, i.e. noAuthNoPriv and authNoPriv might be sent over an
authenticated and encrypted session. A Transport Model MUST NOT authenticated and encrypted session. A Transport Model MUST NOT
skipping to change at page 29, line 29 skipping to change at page 29, line 29
described by this document does not alter that. described by this document does not alter that.
The architecture change described by this document does however, The architecture change described by this document does however,
allow SNMP to support two different approaches to security - message- allow SNMP to support two different approaches to security - message-
driven security and transport-driven security. With message-driven driven security and transport-driven security. With message-driven
security, SNMP provides its own security, and passes security security, SNMP provides its own security, and passes security
parameters within the SNMP message; with transport-driven security, parameters within the SNMP message; with transport-driven security,
SNMP depends on an external entity to provide security during SNMP depends on an external entity to provide security during
transport by "wrapping" the SNMP message. transport by "wrapping" the SNMP message.
In times of network stress, the security protocol and its underlying
security mechanisms SHOULD NOT depend upon the ready availability of
other network services (e.g., Network Time Protocol (NTP) or
Authentication, Authorization, and Accounting (AAA) protocols or
certificate authorities). The User-based Security Model was
explicitly designed to not depend upon external network services, and
provides its own security services. It is RECOMMENDED that operators
provision authPriv USM to supplement any security model or transport
model that has external dependencies, so that secure SNMP
communications can continue when the external network service is not
available.
Using a non-transport-aware security model with a secure transport Using a non-transport-aware security model with a secure transport
model is NOT RECOMMENDED, for the following reasons. model is NOT RECOMMENDED, for the following reasons.
Security models defined before the Transport Security Model (i.e., Security models defined before the Transport Security Model (i.e.,
SNMPv1, SNMPv2c, and USM) do not support transport-based security, SNMPv1, SNMPv2c, and USM) do not support transport-based security,
and only have access to the security parameters contained within the and only have access to the security parameters contained within the
SNMP message. They do not know about the security parameters SNMP message. They do not know about the security parameters
associated with a secure transport. As a result, the Access Control associated with a secure transport. As a result, the Access Control
Subsystem bases its decisions on the security parameters extracted Subsystem bases its decisions on the security parameters extracted
from the SNMP message, not on transport-based security parameters. from the SNMP message, not on transport-based security parameters.
skipping to change at page 30, line 32 skipping to change at page 30, line 19
RFC3412), regardless of the transport mapping or transport model RFC3412), regardless of the transport mapping or transport model
used. If the SNMPv3 message specifies the User-based Security used. If the SNMPv3 message specifies the User-based Security
Model (USM), with noAuthNoPriv, then the access controls will be Model (USM), with noAuthNoPriv, then the access controls will be
based on the unauthenticated USM user. based on the unauthenticated USM user.
o For outgoing messages, if a secure transport model is selected in o For outgoing messages, if a secure transport model is selected in
combination with a security model that does not populate a combination with a security model that does not populate a
tmStateReference, the secure transport model SHOULD detect the tmStateReference, the secure transport model SHOULD detect the
lack of a valid tmStateReference and fail. lack of a valid tmStateReference and fail.
However, in times of network stress, a secure transport model may not
work properly if its underlying security mechanisms (e.g., Network
Time Protocol (NTP) or Authentication, Authorization, and Accounting
(AAA) protocols or certificate authorities) are not reachable. The
User-based Security Model was explicitly designed to not depend upon
external network services, and provides its own security services.
It is RECOMMENDED that operators provision authPriv USM as a fallback
mechanism to supplement any security model or transport model that
has external dependencies, so that secure SNMP communications can
continue when the external network service is not available.
8. IANA Considerations 8. IANA Considerations
IANA is requested to create a new registry in the Simple Network IANA is requested to create a new registry in the Simple Network
Management Protocol (SNMP) Number Spaces. The new registry should be Management Protocol (SNMP) Number Spaces. The new registry should be
called "SNMP Transport Domains". This registry will contain ASCII called "SNMP Transport Domains". This registry will contain ASCII
strings of one to four characters to identify prefixes for strings of one to four characters to identify prefixes for
corresponding SNMP transport domains. Each transport domain requires corresponding SNMP transport domains. Each transport domain requires
an OID assignment under snmpDomains [RFC2578] . Values are to be an OID assignment under snmpDomains [RFC2578] . Values are to be
assigned via [RFC5226] "Specification Required". assigned via [RFC5226] "Specification Required".
skipping to change at page 32, line 22 skipping to change at page 32, line 22
RFC 3411, December 2002. RFC 3411, December 2002.
[RFC3412] Case, J., Harrington, D., [RFC3412] Case, J., Harrington, D.,
Presuhn, R., and B. Wijnen, Presuhn, R., and B. Wijnen,
"Message Processing and "Message Processing and
Dispatching for the Simple Dispatching for the Simple
Network Management Protocol Network Management Protocol
(SNMP)", STD 62, RFC 3412, (SNMP)", STD 62, RFC 3412,
December 2002. December 2002.
[RFC3413] Levi, D., Meyer, P., and B.
Stewart, "Simple Network
Management Protocol (SNMP)
Applications", STD 62,
RFC 3413, December 2002.
[RFC3414] Blumenthal, U. and B. [RFC3414] Blumenthal, U. and B.
Wijnen, "User-based Wijnen, "User-based
Security Model (USM) for Security Model (USM) for
version 3 of the Simple version 3 of the Simple
Network Management Protocol Network Management Protocol
(SNMPv3)", STD 62, (SNMPv3)", STD 62,
RFC 3414, December 2002. RFC 3414, December 2002.
[RFC3417] Presuhn, R., "Transport [RFC3417] Presuhn, R., "Transport
Mappings for the Simple Mappings for the Simple
skipping to change at page 33, line 47 skipping to change at page 34, line 4
Alvestrand, "Guidelines for Alvestrand, "Guidelines for
Writing an IANA Writing an IANA
Considerations Section in Considerations Section in
RFCs", BCP 26, RFC 5226, RFCs", BCP 26, RFC 5226,
May 2008. May 2008.
[I-D.ietf-isms-transport-security-model] Harrington, D. and W. [I-D.ietf-isms-transport-security-model] Harrington, D. and W.
Hardaker, "Transport Hardaker, "Transport
Security Model for SNMP", d Security Model for SNMP", d
raft-ietf-isms-transport- raft-ietf-isms-transport-
security-model-10 (work in security-model-12 (work in
progress), October 2008. progress), March 2009.
[I-D.ietf-isms-secshell] Harrington, D., Salowey, [I-D.ietf-isms-secshell] Harrington, D., Salowey,
J., and W. Hardaker, J., and W. Hardaker,
"Secure Shell Transport "Secure Shell Transport
Model for SNMP", Model for SNMP",
draft-ietf-isms-secshell-13 draft-ietf-isms-secshell-15
(work in progress), (work in progress),
November 2008. March 2009.
[I-D.ietf-syslog-protocol] Gerhards, R., "The syslog [I-D.ietf-syslog-protocol] Gerhards, R., "The syslog
Protocol", draft-ietf- Protocol", draft-ietf-
syslog-protocol-23 (work in syslog-protocol-23 (work in
progress), September 2007. progress), September 2007.
Appendix A. Why tmStateReference? Appendix A. Why tmStateReference?
This appendix considers why a cache-based approach was selected for This appendix considers why a cache-based approach was selected for
passing parameters. passing parameters.
skipping to change at page 35, line 43 skipping to change at page 36, line 5
is passed as an extra parameter in the ASIs between the Transport is passed as an extra parameter in the ASIs between the Transport
Subsystem and the Security Subsystem, so the Security Model knows Subsystem and the Security Subsystem, so the Security Model knows
which cache of information to consult. which cache of information to consult.
This approach does create dependencies between a specific Transport This approach does create dependencies between a specific Transport
Model and a corresponding specific Security Model. However, the Model and a corresponding specific Security Model. However, the
approach of passing a model-independent reference to a model- approach of passing a model-independent reference to a model-
dependent cache is consistent with the securityStateReference already dependent cache is consistent with the securityStateReference already
being passed around in the RFC3411 ASIs. being passed around in the RFC3411 ASIs.
Appendix B. Open Issues
NOTE to RFC editor: If this section is empty, then please remove this
open issues section before publishing this document as an RFC. (If
it is not empty, please send it back to the editor to resolve.
o
Appendix C. Change Log
NOTE to RFC editor: Please remove this change log before publishing
this document as an RFC.
Changes from -15- to -16-
o editorial changes
o clarified long-term vs short-term nature of tmState
o removed any references to LCD
Changes from -14- to -15-
o editorial changes and reorganization
Changes from -13- to -14-
o
Changes from -12- to -13-
o moved conventions after Internet Standard framework, for
consistency with related documents.
o editorial changes and reorganization
Changes from -10- to -12-
o clarified relation to other documents.
o clarified relation to older security models.
o moved comparison of TSM and USM to TSM document
Changes from -09- to -10-
o Pointed to companion documents
o Wordsmithed extensively
o Modified the note about SNMPv3-consistent terminology
o Modified the note about RFC2119 terminology.
o Modified discussion of cryptographic key generation.
o Added security considerations about coexistence with older
security models
o Expanded discussion of same session functionality
o Described how sendMessage and receiveMessage fit into RFC3411
diagrams
o Modified prepareResponseMessage ASI
Changes from -08- to -09-
o A question was raised that notifications would not work properly,
but we could never find the circumstances where this was true.
o removed appendix with parameter matrix
o Added a note about terminology, for consistency with SNMPv3 rather
than with RFC2828.
Changes from -07- to -08-
o Identified new parameters in ASIs.
o Added discussion about well-known ports.
Changes from -06- to -07-
o Removed discussion of double authentication
o Removed all direct and indirect references to pduType by Transport
Subsystem
o Added warning regarding keeping sensitive security information
available longer than needed.
o Removed knowledge of securityStateReference from Transport
Subsystem.
o Changed transport session identifier to not include securityModel,
since this is not known for incoming messages until the message
processing model.
Changes from revision -05- to -06-
mostly editorial changes
removed some paragraphs considered unnecessary
added Updates to header
modified some text to get the security details right
modified text re: ASIs so they are not API-like
cleaned up some diagrams
cleaned up RFC2119 language
added section numbers to citations to RFC3411
removed gun for political correctness
Changes from revision -04- to -05-
removed all objects from the MIB module.
changed document status to "Standard" rather than the xml2rfc
default of informational.
changed mention of MD5 to SHA
moved addressing style to TDomain and TAddress
modified the diagrams as requested
removed the "layered stack" diagrams that compared USM and a
Transport Model processing
removed discussion of speculative features that might exist in
future Transport Models
removed openSession and closeSession ASIs, since those are model-
dependent
removed the MIB module
removed the MIB boilerplate intro (this memo defines a SMIv2 MIB )
removed IANA considerations related to the now-gone MIB module
removed security considerations related to the MIB module
removed references needed for the MIB module
changed receiveMessage ASI to use origin transport domain/address
updated Parameter CSV appendix
Changes from revision -03- to -04-
changed title from Transport Mapping Security Model Architectural
Extension to Transport Subsystem
modified the abstract and introduction
changed TMSM to TMS
changed MPSP to simply Security Model
changed SMSP to simply Security Model
changed TMSP to Transport Model
removed MPSP and TMSP and SMSP from Acronyms section
modified diagrams
removed most references to dispatcher functionality
worked to remove dependencies between transport and security
models.
defined snmpTransportModel enumeration similar to
snmpSecurityModel, etc.
eliminated all reference to SNMPv3 msgXXXX fields
changed tmSessionReference back to tmStateReference
Changes from revision -02- to -03-
o removed session table from MIB module
o removed sessionID from ASIs
o reorganized to put ASI discussions in EOP section, as was done in
SSHSM
o changed user auth to client auth
o changed tmStateReference to tmSessionReference
o modified document to meet consensus positions published by JS
* authoritative is model-specific
* msgSecurityParameters usage is model-specific
* msgFlags vs. securityLevel is model/implementation-specific
* notifications must be able to cause creation of a session
* security considerations must be model-specific
* TDomain and TAddress are model-specific
* MPSP changed to SMSP (Security Model security processing)
Changes from revision -01- to -02-
o wrote text for session establishment requirements section.
o wrote text for session maintenance requirements section.
o removed section on relation to SNMPv2-MIB
o updated MIB module to pass smilint
o Added Structure of the MIB module, and other expected MIB-related
sections.
o updated author address
o corrected spelling
o removed msgFlags appendix
o Removed section on implementation considerations.
o started modifying the security boilerplate to address TMS and MIB
security issues
o reorganized slightly to better separate requirements from proposed
solution. This probably needs additional work.
o removed section with sample protocols and sample
tmSessionReference.
o Added section for acronyms
o moved section comparing parameter passing techniques to appendix.
o Removed section on notification requirements.
Changes from revision -00-
o changed SSH references from I-Ds to RFCs
o removed parameters from tmSessionReference for DTLS that revealed
lower layer info.
o Added TMS-MIB module
o Added Internet-Standard Management Framework boilerplate
o Added Structure of the MIB Module
o Added MIB security considerations boilerplate (to be completed)
o Added IANA Considerations
o Added ASI Parameter table
o Added discussion of Sessions
o Added Open issues and Change Log
o Rearranged sections
Authors' Addresses Authors' Addresses
David Harrington David Harrington
Huawei Technologies (USA) Huawei Technologies (USA)
1700 Alma Dr. Suite 100 1700 Alma Dr. Suite 100
Plano, TX 75075 Plano, TX 75075
USA USA
Phone: +1 603 436 8634 Phone: +1 603 436 8634
EMail: dharrington@huawei.com EMail: dharrington@huawei.com
 End of changes. 25 change blocks. 
326 lines changed or deleted 68 lines changed or added

This html diff was produced by rfcdiff 1.35. The latest version is available from http://tools.ietf.org/tools/rfcdiff/