idnits 2.17.1 draft-ietf-dime-capablities-update-02.txt: Checking boilerplate required by RFC 5378 and the IETF Trust (see https://trustee.ietf.org/license-info): ---------------------------------------------------------------------------- ** You're using the IETF Trust Provisions' Section 6.b License Notice from 12 Sep 2009 rather than the newer Notice from 28 Dec 2009. (See https://trustee.ietf.org/license-info/) Checking nits according to https://www.ietf.org/id-info/1id-guidelines.txt: ---------------------------------------------------------------------------- No issues found here. Checking nits according to https://www.ietf.org/id-info/checklist : ---------------------------------------------------------------------------- No issues found here. Miscellaneous warnings: ---------------------------------------------------------------------------- == The copyright year in the IETF Trust and authors Copyright Line does not match the current year -- The document date (February 26, 2010) is 5171 days in the past. Is this intentional? Checking references for intended status: Proposed Standard ---------------------------------------------------------------------------- (See RFCs 3967 and 4897 for information about using normative references to lower-maturity documents in RFCs) ** Obsolete normative reference: RFC 3588 (Obsoleted by RFC 6733) -- Obsolete informational reference (is this intentional?): RFC 4960 (Obsoleted by RFC 9260) Summary: 2 errors (**), 0 flaws (~~), 1 warning (==), 2 comments (--). Run idnits with the --verbose option for more detailed information about the items above. -------------------------------------------------------------------------------- 2 Network Working Group K. Jiao 3 Internet-Draft Huawei 4 Intended status: Standards Track G. Zorn 5 Expires: August 30, 2010 Network Zen 6 February 26, 2010 8 The Diameter Capabilities Update Application 9 draft-ietf-dime-capablities-update-02 11 Abstract 13 This document defines a new Diameter application and associated 14 command codes. The Capabilities Update application is intended to 15 allow the dynamic update of certain Diameter peer capabilities while 16 the peer-to-peer connection is in the open state. 18 Status of this Memo 20 This Internet-Draft is submitted to IETF in full conformance with the 21 provisions of BCP 78 and BCP 79. 23 Internet-Drafts are working documents of the Internet Engineering 24 Task Force (IETF), its areas, and its working groups. Note that 25 other groups may also distribute working documents as Internet- 26 Drafts. 28 Internet-Drafts are draft documents valid for a maximum of six months 29 and may be updated, replaced, or obsoleted by other documents at any 30 time. It is inappropriate to use Internet-Drafts as reference 31 material or to cite them other than as "work in progress." 33 The list of current Internet-Drafts can be accessed at 34 http://www.ietf.org/ietf/1id-abstracts.txt. 36 The list of Internet-Draft Shadow Directories can be accessed at 37 http://www.ietf.org/shadow.html. 39 This Internet-Draft will expire on August 30, 2010. 41 Copyright Notice 43 Copyright (c) 2010 IETF Trust and the persons identified as the 44 document authors. All rights reserved. 46 This document is subject to BCP 78 and the IETF Trust's Legal 47 Provisions Relating to IETF Documents 48 (http://trustee.ietf.org/license-info) in effect on the date of 49 publication of this document. Please review these documents 50 carefully, as they describe your rights and restrictions with respect 51 to this document. Code Components extracted from this document must 52 include Simplified BSD License text as described in Section 4.e of 53 the Trust Legal Provisions and are provided without warranty as 54 described in the BSD License. 56 Table of Contents 58 1. Introduction . . . . . . . . . . . . . . . . . . . . . . . . . 3 59 2. Specification of Requirements . . . . . . . . . . . . . . . . . 3 60 3. Diameter Protocol Considerations . . . . . . . . . . . . . . . 3 61 4. Capabilities Update . . . . . . . . . . . . . . . . . . . . . . 3 62 4.1. Command-Code Values . . . . . . . . . . . . . . . . . . . . 4 63 4.1.1. Capabilities-Update-Request . . . . . . . . . . . . . . 5 64 4.1.2. Capabilities-Update-Answer . . . . . . . . . . . . . . 5 65 5. Security Considerations . . . . . . . . . . . . . . . . . . . . 6 66 6. IANA Considerations . . . . . . . . . . . . . . . . . . . . . . 6 67 6.1. Application Identifier . . . . . . . . . . . . . . . . . . 6 68 6.2. Command Codes . . . . . . . . . . . . . . . . . . . . . . . 6 69 7. Contributors . . . . . . . . . . . . . . . . . . . . . . . . . 6 70 8. Acknowledgements . . . . . . . . . . . . . . . . . . . . . . . 6 71 9. References . . . . . . . . . . . . . . . . . . . . . . . . . . 6 72 9.1. Normative References . . . . . . . . . . . . . . . . . . . 6 73 9.2. Informative References . . . . . . . . . . . . . . . . . . 7 74 Authors' Addresses . . . . . . . . . . . . . . . . . . . . . . . . 7 76 1. Introduction 78 Capabilities exchange is an important component of the Diameter Base 79 Protocol [RFC3588], allowing peers to exchange identities and 80 Diameter capabilities (protocol version number, supported Diameter 81 applications, security mechanisms, etc.). As defined in RFC 3588, 82 however, the capabilities exchange process takes place only once, at 83 the inception of a transport connection between a given pair of 84 peers. Therefore, if a peer's capabilities change (due to software 85 update, for example), the existing connection(s) must be torn down 86 (along with all of the associated user sessions) and restarted before 87 the modified capabilities can be advertised. 89 This document defines a new Diameter application intended to allow 90 the dynamic update of a subset of Diameter peer capabilities over an 91 existing connection. Because the Capabilities Update application 92 specified herein operates over an existing transport connection, 93 modification of certain capabilities is prohibited. Specifically, 94 modifying the security mechanism in use is not allowed; if the 95 security method used between a pair of peers is changed the affected 96 connection MUST be restarted. 98 Discussion of this draft may be directed to the dime Working Group of 99 the IETF (dime@ietf.org). 101 2. Specification of Requirements 103 The key words "MUST", "MUST NOT", "REQUIRED", "SHALL", "SHALL NOT", 104 "SHOULD", "SHOULD NOT", "RECOMMENDED", "MAY", and "OPTIONAL" in this 105 document are to be interpreted as described in RFC 2119 [RFC2119]. 107 3. Diameter Protocol Considerations 109 This section details the relationship of the Diameter Capabilities 110 Update application to the Diameter Base Protocol. 112 This document specifies Diameter Application-ID . Diameter 113 nodes conforming to this specification MUST advertise support by 114 including the value in the Auth-Application-Id of the 115 Capabilities-Exchange-Req and Capabilities-Exchange-Answer commands 116 [RFC3588]. 118 4. Capabilities Update 120 When the capabilities of a Diameter node conforming to this 121 specification change, it SHOULD notify all of the nodes with which it 122 has an open transport connection and have also advertised support for 123 the Capabilities Update application using the Capabilities-Update- 124 Request message Section 4.1.1. This message allows the update of a 125 peer's capabilities (protocol version number, supported Diameter 126 applications, etc.). 128 A Diameter node only issues a given command to those peers that have 129 advertised support for the Diameter application that defines the 130 command. A Diameter node MUST cache the supported applications in 131 order to ensure that unrecognized commands and/or AVPs are not 132 unnecessarily sent to a peer. 134 The receiver of the CUR MUST determine common applications by 135 computing the intersection of its own set of supported Application Id 136 against all of the application identifier AVPs (Auth-Application-Id, 137 Acct-Application-Id and Vendor-Specific- Application-Id) present in 138 the CUR. The value of the Vendor-Id AVP in the Vendor-Specific- 139 Application-Id MUST NOT be used during computation. 141 If the receiver of a Capabilities-Update-Req (CUR) message does not 142 have any applications in common with the sender then it MUST return a 143 Capabilities-Update-Answer (CUA) Section 4.1.2 with the Result-Code 144 AVP set to DIAMETER_NO_COMMON_APPLICATION, and SHOULD disconnect the 145 transport layer connection; however, if active sessions are using the 146 connection, peers MAY delay disconnection until the sessions can be 147 redirected or gracefully terminated. Note that receiving a CUA from 148 a peer advertising itself as a Relay (see [RFC3588], Section 2.4) 149 MUST be interpreted as having common applications with the peer. 151 The CUR and CUA messages MUST NOT be proxied, redirected or relayed. 153 Even though the CUR/CUA messages cannot be proxied, it is still 154 possible for an upstream agent to receive a message for which there 155 are no peers available to handle the application that corresponds to 156 the Command-Code. This could happen if, for example, the peers are 157 too busy or down. In such instances, the 'E' bit MUST be set in the 158 answer message with the Result-Code AVP set to 159 DIAMETER_UNABLE_TO_DELIVER to inform the downstream peer to take 160 action (e.g., re-routing requests to an alternate peer). 162 4.1. Command-Code Values 164 This section defines Command-Code [RFC3588] values that MUST be 165 supported by all Diameter implementations conforming to this 166 specification. The following Command Codes are defined in this 167 document: Capabilities-Update-Request (CUR, Section 4.1.1) and 168 Capabilities-Update-Answer (CUA, Section 4.1.2). 170 4.1.1. Capabilities-Update-Request 172 The Capabilities-Update-Request (CUR), indicated by the Command-Code 173 set to and the Command Flags' 'R' bit set, is sent to update 174 local capabilities. Upon detection of a transport failure, this 175 message MUST NOT be sent to an alternate peer. 177 When Diameter is run over SCTP [RFC4960], which allows connections to 178 span multiple interfaces and multiple IP addresses, the Capabilities- 179 Update-Request message MUST contain one Host-IP-Address AVP for each 180 potential IP address that may be locally used when transmitting 181 Diameter messages. 183 Message Format 185 ::= < Diameter Header: TBD2, REQ > 186 { Origin-Host } 187 { Origin-Realm } 188 1* { Host-IP-Address } 189 { Vendor-Id } 190 { Product-Name } 191 [ Origin-State-Id ] 192 * [ Supported-Vendor-Id ] 193 * [ Auth-Application-Id ] 194 * [ Acct-Application-Id ] 195 * [ Vendor-Specific-Application-Id ] 196 [ Firmware-Revision ] 197 * [ AVP ] 199 4.1.2. Capabilities-Update-Answer 201 The Capabilities-Update-Answer indicated by the Command-Code set to 202 and the Command Flags' 'R' bit set, is sent in response to a 203 CUR message. 205 Message Format 207 ::= < Diameter Header: TBD3 > 208 { Origin-Host } 209 { Origin-Realm } 210 { Result-Code } 211 [ Error-Message ] 212 * [ AVP ] 214 5. Security Considerations 216 The security considerations applicable to the Diameter Base Protocol 217 [RFC3588] are also applicable to this document. 219 6. IANA Considerations 221 This section explains the criteria to be used by the IANA for 222 assignment of numbers within namespaces used within this document. 224 6.1. Application Identifier 226 This specification assigns the value from the Application 227 Identifiers namespace defined in RFC 3588. See Section 3 for the 228 assignment of the namespace in this specification. 230 6.2. Command Codes 232 This specification assigns the values and from the 233 Command Codes namespace defined in RFC 3588. See Section 4.1 for the 234 assignment of the namespace in this specification. 236 7. Contributors 238 This document is based upon work done by Tina Tsou. 240 8. Acknowledgements 242 Thanks to Sebastien Decugis, Niklas Neumann, Subash Comerica and Ravi 243 for helpful discussion. 245 9. References 247 9.1. Normative References 249 [RFC2119] Bradner, S., "Key words for use in RFCs to Indicate 250 Requirement Levels", BCP 14, RFC 2119, March 1997. 252 [RFC3588] Calhoun, P., Loughney, J., Guttman, E., Zorn, G., and J. 253 Arkko, "Diameter Base Protocol", RFC 3588, September 2003. 255 9.2. Informative References 257 [RFC4960] Stewart, R., "Stream Control Transmission Protocol", 258 RFC 4960, September 2007. 260 Authors' Addresses 262 Jiao Kang 263 Huawei Technologies 264 Section B1, Huawei Industrial Base 265 Bantian, Longgang District 266 Shenzhen 518129 267 P.R. China 269 Phone: +86 755 2878-6690 270 Email: kangjiao@huawei.com 272 Glen Zorn 273 Network Zen 274 1310 East Thomas Street 275 Seattle, Washington 98102 276 USA 278 Email: gwz@net-zen.net