draft-ietf-dime-capablities-update-04.txt   draft-ietf-dime-capablities-update-05.txt 
Network Working Group K. Jiao Network Working Group K. Jiao
Internet-Draft Huawei Internet-Draft Huawei
Intended status: Standards Track G. Zorn Intended status: Standards Track G. Zorn
Expires: November 25, 2010 Network Zen Expires: December 20, 2010 Network Zen
May 24, 2010 June 18, 2010
The Diameter Capabilities Update Application The Diameter Capabilities Update Application
draft-ietf-dime-capablities-update-04 draft-ietf-dime-capablities-update-05
Abstract Abstract
This document defines a new Diameter application and associated This document defines a new Diameter application and associated
command codes. The Capabilities Update application is intended to command codes. The Capabilities Update application is intended to
allow the dynamic update of certain Diameter peer capabilities while allow the dynamic update of certain Diameter peer capabilities while
the peer-to-peer connection is in the open state. the peer-to-peer connection is in the open state.
Status of this Memo Status of this Memo
skipping to change at page 1, line 34 skipping to change at page 1, line 34
Internet-Drafts are working documents of the Internet Engineering Internet-Drafts are working documents of the Internet Engineering
Task Force (IETF). Note that other groups may also distribute Task Force (IETF). Note that other groups may also distribute
working documents as Internet-Drafts. The list of current Internet- working documents as Internet-Drafts. The list of current Internet-
Drafts is at http://datatracker.ietf.org/drafts/current/. Drafts is at http://datatracker.ietf.org/drafts/current/.
Internet-Drafts are draft documents valid for a maximum of six months Internet-Drafts are draft documents valid for a maximum of six months
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."
This Internet-Draft will expire on November 25, 2010. This Internet-Draft will expire on December 20, 2010.
Copyright Notice Copyright Notice
Copyright (c) 2010 IETF Trust and the persons identified as the Copyright (c) 2010 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 Provisions Relating to IETF Documents
(http://trustee.ietf.org/license-info) in effect on the date of (http://trustee.ietf.org/license-info) in effect on the date of
publication of this document. Please review these documents publication of this document. Please review these documents
skipping to change at page 3, line 8 skipping to change at page 3, line 8
7. Contributors . . . . . . . . . . . . . . . . . . . . . . . . . 6 7. Contributors . . . . . . . . . . . . . . . . . . . . . . . . . 6
8. Acknowledgements . . . . . . . . . . . . . . . . . . . . . . . 6 8. Acknowledgements . . . . . . . . . . . . . . . . . . . . . . . 6
9. References . . . . . . . . . . . . . . . . . . . . . . . . . . 6 9. References . . . . . . . . . . . . . . . . . . . . . . . . . . 6
9.1. Normative References . . . . . . . . . . . . . . . . . . . 6 9.1. Normative References . . . . . . . . . . . . . . . . . . . 6
9.2. Informative References . . . . . . . . . . . . . . . . . . 7 9.2. Informative References . . . . . . . . . . . . . . . . . . 7
Authors' Addresses . . . . . . . . . . . . . . . . . . . . . . . . 7 Authors' Addresses . . . . . . . . . . . . . . . . . . . . . . . . 7
1. Introduction 1. Introduction
Capabilities exchange is an important component of the Diameter Base Capabilities exchange is an important component of the Diameter Base
Protocol [RFC3588], allowing peers to exchange identities and Protocol [I-D.ietf-dime-rfc3588bis], allowing peers to exchange
Diameter capabilities (protocol version number, supported Diameter identities and Diameter capabilities (protocol version number,
applications, security mechanisms, etc.). As defined in RFC 3588, supported Diameter applications, security mechanisms, etc.). As
however, the capabilities exchange process takes place only once, at defined in RFC 3588, however, the capabilities exchange process takes
the inception of a transport connection between a given pair of place only once, at the inception of a transport connection between a
peers. Therefore, if a peer's capabilities change (due to software given pair of peers. Therefore, if a peer's capabilities change (due
update, for example), the existing connection(s) must be torn down to software update, for example), the existing connection(s) must be
(along with all of the associated user sessions) and restarted before torn down (along with all of the associated user sessions) and
the modified capabilities can be advertised. restarted before the modified capabilities can be advertised.
This document defines a new Diameter application intended to allow This document defines a new Diameter application intended to allow
the dynamic update of a subset of Diameter peer capabilities over an the dynamic update of a subset of Diameter peer capabilities over an
existing connection. Because the Capabilities Update application existing connection. Because the Capabilities Update application
specified herein operates over an existing transport connection, specified herein operates over an existing transport connection,
modification of certain capabilities is prohibited. Specifically, modification of certain capabilities is prohibited. Specifically,
modifying the security mechanism in use is not allowed; if the modifying the security mechanism in use is not allowed; if the
security method used between a pair of peers is changed the affected security method used between a pair of peers is changed the affected
connection MUST be restarted. connection MUST be restarted.
skipping to change at page 3, line 44 skipping to change at page 3, line 44
document are to be interpreted as described in RFC 2119 [RFC2119]. document are to be interpreted as described in RFC 2119 [RFC2119].
3. Diameter Protocol Considerations 3. Diameter Protocol Considerations
This section details the relationship of the Diameter Capabilities This section details the relationship of the Diameter Capabilities
Update application to the Diameter Base Protocol. Update application to the Diameter Base Protocol.
This document specifies Diameter Application-ID <TBD1>. Diameter This document specifies Diameter Application-ID <TBD1>. Diameter
nodes conforming to this specification MUST advertise support by nodes conforming to this specification MUST advertise support by
including the value <TBD1> in the Auth-Application-Id of the including the value <TBD1> in the Auth-Application-Id of the
Capabilities-Exchange-Req and Capabilities-Exchange-Answer commands Capabilities-Exchange-Request and Capabilities-Exchange-Answer
[RFC3588]. commands [I-D.ietf-dime-rfc3588bis].
4. Capabilities Update 4. Capabilities Update
When the capabilities of a Diameter node conforming to this When the capabilities of a Diameter node conforming to this
specification change, it SHOULD notify all of the nodes with which it specification change, it MUST notify all of the nodes with which it
has an open transport connection and have also advertised support for has an open transport connection and have also advertised support for
the Capabilities Update application using the Capabilities-Update- the Capabilities Update application using the Capabilities-Update-
Request message (Section 4.1.1). This message allows the update of a Request (CUR) message (Section 4.1.1). This message allows the
peer's capabilities (supported Diameter applications, etc.). update of a peer's capabilities (supported Diameter applications,
etc.).
A Diameter node only issues a given command to those peers that have A Diameter node only issues a given command to those peers that have
advertised support for the Diameter application that defines the advertised support for the Diameter application that defines the
command. A Diameter node MUST cache the supported applications in command. A Diameter node MUST cache the supported applications in
order to ensure that unrecognized commands and/or AVPs are not order to ensure that unrecognized commands and/or AVPs are not
unnecessarily sent to a peer. unnecessarily sent to a peer.
The receiver of the CUR MUST determine common applications by The receiver of the CUR MUST determine common applications by
computing the intersection of its own set of supported Application Id computing the intersection of its own set of supported Application Id
against all of the application identifier AVPs (Auth-Application-Id, against all of the application identifier AVPs (Auth-Application-Id,
Acct-Application-Id and Vendor-Specific- Application-Id) present in Acct-Application-Id and Vendor-Specific- Application-Id) present in
the CUR. The value of the Vendor-Id AVP in the Vendor-Specific- the CUR. The value of the Vendor-Id AVP in the Vendor-Specific-
Application-Id MUST NOT be used during computation. Application-Id MUST NOT be used during computation.
If the receiver of a Capabilities-Update-Req (CUR) message does not If the receiver of a CUR does not have any applications in common
have any applications in common with the sender then it MUST return a with the sender then it MUST return a Capabilities-Update-Answer
Capabilities-Update-Answer (CUA) (Section 4.1.2) with the Result-Code (CUA) (Section 4.1.2) with the Result-Code AVP set to
AVP set to DIAMETER_NO_COMMON_APPLICATION, and SHOULD disconnect the DIAMETER_NO_COMMON_APPLICATION, and SHOULD disconnect the transport
transport layer connection; however, if active sessions are using the layer connection; however, if active sessions are using the
connection, peers MAY delay disconnection until the sessions can be connection, peers MAY delay disconnection until the sessions can be
redirected or gracefully terminated. Note that receiving a CUA from redirected or gracefully terminated. Note that receiving a CUA from
a peer advertising itself as a Relay (see [RFC3588], Section 2.4) a peer advertising itself as a Relay (see [I-D.ietf-dime-rfc3588bis],
MUST be interpreted as having common applications with the peer. Section 2.4) MUST be interpreted as having common applications with
the peer.
The CUR and CUA messages MUST NOT be proxied, redirected or relayed. The CUR and CUA messages MUST NOT be proxied, redirected or relayed.
Even though the CUR/CUA messages cannot be proxied, it is still Even though the CUR/CUA messages cannot be proxied, it is still
possible for an upstream agent to receive a message for which there possible for an upstream agent to receive a message for which there
are no peers available to handle the application that corresponds to are no peers available to handle the application that corresponds to
the Command-Code. This could happen if, for example, the peers are the Command-Code. This could happen if, for example, the peers are
too busy or down. In such instances, the 'E' bit MUST be set in the too busy or down. In such instances, the 'E' bit MUST be set in the
answer message with the Result-Code AVP set to answer message with the Result-Code AVP set to
DIAMETER_UNABLE_TO_DELIVER to inform the downstream peer to take DIAMETER_UNABLE_TO_DELIVER to inform the downstream peer to take
action (e.g., re-routing requests to an alternate peer). action (e.g., re-routing requests to an alternate peer).
4.1. Command-Code Values 4.1. Command-Code Values
This section defines Command-Code [RFC3588] values that MUST be This section defines Command-Code [I-D.ietf-dime-rfc3588bis] values
supported by all Diameter implementations conforming to this that MUST be supported by all Diameter implementations conforming to
specification. The following Command Codes are defined in this this specification. The following Command Codes are defined in this
document: Capabilities-Update-Request (CUR, Section 4.1.1) and document: Capabilities-Update-Request (CUR, Section 4.1.1) and
Capabilities-Update-Answer (CUA, Section 4.1.2). Capabilities-Update-Answer (CUA, Section 4.1.2).
4.1.1. Capabilities-Update-Request 4.1.1. Capabilities-Update-Request
The Capabilities-Update-Request (CUR), indicated by the Command-Code The Capabilities-Update-Request (CUR), indicated by the Command-Code
set to <TBD2> and the Command Flags' 'R' bit set, is sent to update set to <TBD2> and the Command Flags' 'R' bit set, is sent to update
local capabilities. Upon detection of a transport failure, this local capabilities. Upon detection of a transport failure, this
message MUST NOT be sent to an alternate peer. message MUST NOT be sent to an alternate peer.
skipping to change at page 5, line 36 skipping to change at page 5, line 37
[ Origin-State-Id ] [ Origin-State-Id ]
* [ Supported-Vendor-Id ] * [ Supported-Vendor-Id ]
* [ Auth-Application-Id ] * [ Auth-Application-Id ]
* [ Acct-Application-Id ] * [ Acct-Application-Id ]
* [ Vendor-Specific-Application-Id ] * [ Vendor-Specific-Application-Id ]
[ Firmware-Revision ] [ Firmware-Revision ]
* [ AVP ] * [ AVP ]
4.1.2. Capabilities-Update-Answer 4.1.2. Capabilities-Update-Answer
The Capabilities-Update-Answer indicated by the Command-Code set to The Capabilities-Update-Answer, indicated by the Command-Code set to
<TBD3> and the Command Flags' 'R' bit set, is sent in response to a <TBD3> and the Command Flags' 'R' bit cleared, is sent in response to
CUR message. a CUR message.
Message Format Message Format
<CUA> ::= < Diameter Header: TBD3 > <CUA> ::= < Diameter Header: TBD3 >
{ Origin-Host } { Origin-Host }
{ Origin-Realm } { Origin-Realm }
{ Result-Code } { Result-Code }
[ Error-Message ] [ Error-Message ]
* [ AVP ] * [ AVP ]
5. Security Considerations 5. Security Considerations
The security considerations applicable to the Diameter Base Protocol The security considerations applicable to the Diameter Base Protocol
[RFC3588] are also applicable to this document. [I-D.ietf-dime-rfc3588bis] are also applicable to this document.
6. IANA Considerations 6. IANA Considerations
This section explains the criteria to be used by the IANA for This section explains the criteria to be used by the IANA for
assignment of numbers within namespaces used within this document. assignment of numbers within namespaces used within this document.
6.1. Application Identifier 6.1. Application Identifier
This specification assigns the value <TBD1> from the Application This specification assigns the value <TBD1> from the Application
Identifiers namespace defined in RFC 3588. See Section 3 for the Identifiers namespace defined in RFC 3588. See Section 3 for the
skipping to change at page 6, line 33 skipping to change at page 6, line 33
This specification assigns the values <TBD2> and <TBD3> from the This specification assigns the values <TBD2> and <TBD3> from the
Command Codes namespace defined in RFC 3588. See Section 4.1 for the Command Codes namespace defined in RFC 3588. See Section 4.1 for the
assignment of the namespace in this specification. assignment of the namespace in this specification.
7. Contributors 7. Contributors
This document is based upon work done by Tina Tsou. This document is based upon work done by Tina Tsou.
8. Acknowledgements 8. Acknowledgements
Thanks to Sebastien Decugis, Niklas Neumann, Subash Comerica and Ravi Thanks to Sebastien Decugis, Niklas Neumann, Subash Comerica, Lionel
for helpful discussion. Morand and Ravi for helpful discussion.
9. References 9. References
9.1. Normative References 9.1. Normative References
[I-D.ietf-dime-rfc3588bis]
Fajardo, V., Arkko, J., Loughney, J., and G. Zorn,
"Diameter Base Protocol", draft-ietf-dime-rfc3588bis-21
(work in progress), June 2010.
[RFC2119] Bradner, S., "Key words for use in RFCs to Indicate [RFC2119] Bradner, S., "Key words for use in RFCs to Indicate
Requirement Levels", BCP 14, RFC 2119, March 1997. Requirement Levels", BCP 14, RFC 2119, March 1997.
[RFC3588] Calhoun, P., Loughney, J., Guttman, E., Zorn, G., and J.
Arkko, "Diameter Base Protocol", RFC 3588, September 2003.
9.2. Informative References 9.2. Informative References
[RFC4960] Stewart, R., "Stream Control Transmission Protocol", [RFC4960] Stewart, R., "Stream Control Transmission Protocol",
RFC 4960, September 2007. RFC 4960, September 2007.
Authors' Addresses Authors' Addresses
Jiao Kang Jiao Kang
Huawei Technologies Huawei Technologies
Section B1, Huawei Industrial Base Section B1, Huawei Industrial Base
 End of changes. 15 change blocks. 
37 lines changed or deleted 41 lines changed or added

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