idnits 2.17.1 draft-ietf-dime-priority-avps-06.txt: Checking boilerplate required by RFC 5378 and the IETF Trust (see https://trustee.ietf.org/license-info): ---------------------------------------------------------------------------- No issues found here. 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 : ---------------------------------------------------------------------------- ** There are 90 instances of too long lines in the document, the longest one being 4 characters in excess of 72. Miscellaneous warnings: ---------------------------------------------------------------------------- == The copyright year in the IETF Trust and authors Copyright Line does not match the current year == The document seems to contain a disclaimer for pre-RFC5378 work, but was first submitted on or after 10 November 2008. The disclaimer is usually necessary only for documents that revise or obsolete older RFCs, and that take significant amounts of text from those RFCs. If you can contact all authors of the source material and they are willing to grant the BCP78 rights to the IETF Trust, you can and should remove the disclaimer. Otherwise, the disclaimer is needed and you can ignore this comment. (See the Legal Provisions document at https://trustee.ietf.org/license-info for more information.) -- The document date (June 28, 2012) is 4313 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) == Outdated reference: A later version (-34) exists of draft-ietf-dime-rfc3588bis-26 Summary: 1 error (**), 0 flaws (~~), 3 warnings (==), 1 comment (--). Run idnits with the --verbose option for more detailed information about the items above. -------------------------------------------------------------------------------- 2 Diameter Maintenance and K. Carlberg, Ed. 3 Extensions (DIME) G11 4 Internet-Draft T. Taylor 5 Intended status: Standards Track PT Taylor Consulting 6 June 28, 2012 8 Diameter Priority Attribute Value Pairs 9 draft-ietf-dime-priority-avps-06.txt 11 Status of this Memo 13 This Internet-Draft is submitted to IETF in full conformance with the 14 provisions of BCP 78 and BCP 79. 16 Internet-Drafts are working documents of the Internet Engineering Task 17 Force (IETF). Note that other groups may also distribute working 18 documents as Internet-Drafts. The list of current Internet-Drafts is at 19 http://datatracker.ietf.org/drafts/current/. 21 Internet-Drafts are draft documents valid for a maximum of six months 22 and may be updated, replaced, or obsoleted by other documents at any 23 time. It is inappropriate to use Internet-Drafts as reference material 24 or to cite them other than as "work in progress." 26 Copyright Notice 28 Copyright (c) 2012 IETF Trust and the persons identified as the 29 document authors. All rights reserved. 31 This document is subject to BCP 78 and the IETF Trust's Legal Provisions 32 Relating to IETF Documents (http://trustee.ietf.org/license-info) in 33 effect on the date of publication of this document. Please review these 34 documents carefully, as they describe your rights and restrictions with 35 respect to this document. Code Components extracted from this document 36 must include Simplified BSD License text as described in Section 4.e of 37 the Trust Legal Provisions and are provided without warranty as 38 described in the Simplified BSD License. 40 This document may contain material from IETF Documents or IETF 41 Contributions published or made publicly available before November 10, 42 2008. The person(s) controlling the copyright in some of this material 43 may not have granted the IETF Trust the right to allow modifications of 44 such material outside the IETF Standards Process. Without obtaining an 45 adequate license from the person(s) controlling the copyright in such 46 materials, this document may not be modified outside the IETF Standards 47 Process, and derivative works of it may not be created outside the IETF 48 Standards Process, except to format it for publication as an RFC or to 49 translate it into languages other than English. 51 Abstract 53 This document defines Attribute-Value Pair (AVP) containers for various 54 priority parameters for use with Diameter and the AAA framework. The 55 parameters themselves are defined in several different protocols that 56 operate at either the network or application layer. 58 1. Introduction 60 This document defines a number of Attribute-Value Pairs (AVP) that can 61 be used within the Diameter protocol [I-D.ietf-dime-rfc3588bis] to 62 convey a specific set of priority parameters. These parameters are 63 specified in other documents, but are briefly described below. The 64 corresponding AVPs defined in Section 3 are an extension to those 65 defined in [RFC5866]. We note that all the priority fields associated 66 with the AVPs defined in this document are extensible and allow for 67 additional values beyond what may have already been defined or 68 registered with IANA. 70 Priority influences the distribution of resources, and in turn the QoS 71 associated with that resource. This influence may be probabilistic, 72 ranging between (but not including) 0% and 100%, or it may be in the 73 form of a guarantee to either receive or not receive the resource. 75 Another example of how prioritization can be realized is articulated in 76 Appendix A.3 (the priority by-pass model) of [RFC6401]. In this case, 77 prioritized flows may gain access to resources that are never shared 78 with non-prioritized flows. 80 1.1 Other Priority-Related AVPs 82 3rd Generation Partnership Project (3GPP) has defined several Diameter 83 AVPs that support prioritization of sessions. The following AVPs are 84 intended to be used for priority services (e.g., Multimedia Priority 85 Service): 87 - Reservation-Priority AVP as defined in [ETSI] 88 - MPS-Identifier AVP as defined in [3GPPa] 89 - Priority-Level AVP (as part of the Allocation Retention Priority 90 AVP) as defined in [3GPPb] 91 - Session-Priority AVP as defined in [3GPPc][3GPPd] 93 Both the Reservation-Priority AVP and the Priority-Level AVP can carry 94 priority levels associated with a session initiated by a user. We note 95 that these AVPs are defined from the allotment set aside for 3GPP for 96 Diameter-based interfaces and are particularly aimed at IP Multimedia 97 Subsystem (IMS) deployment environments. The above AVPs defined by 3GPP 98 are to be viewed as private implementations operating within a walled 99 garden. In contrast, the priority related AVPs defined below in Section 100 3 are not constrained to IMS environments. The potential applicability 101 or use case scenarios that involve coexistance between the above 3GPP 102 defined priority related AVPs and those defined below in Section 3 is 103 for further study. 105 2. Terminology and Abbreviations 107 The key words "MUST", "MUST NOT", "REQUIRED", "SHALL", "SHALL NOT", 108 "SHOULD", "SHOULD NOT", "RECOMMENDED", "MAY", and "OPTIONAL" in this 109 document are to be interpreted as described in RFC2119 [RFC2119]. 111 3. Priority Parameter Encoding 113 This section defines a set of AVPs that correlate to priority fields 114 defined in other protocols. This set of priority related AVPs is for 115 use with the DIAMETER QoS application [RFC5866] and represents a 116 continuation of the list of AVPs defined in [RFC5624]. The syntax 117 notation used is that of [I-D.ietf-dime-rfc3588bis]. We note that the 118 following subsections describe the prioritization field of a given 119 protocol as well as the structure of the AVP corresponding to that 120 field. 122 We stress that neither the priority related AVPs, nor the Diameter 123 protocol, perform or realize QoS for a session or flow of packets. 124 Rather, these AVPs are part of a mechanism to determine validation of 125 the priority value. 127 3.1. Dual-Priority AVP 129 The Dual-Priority AVP is a grouped AVP consisting of two AVPs; the 130 Preemption-Priority and the Defending-Priority AVP. These AVPs are 131 derived from the corresponding priority fields specified in the Signaled 132 Preemption Priority Policy Element [RFC3181] of RSVP [RFC2205]. 134 In [RFC3181], the Defending-Priority value is set when the reservation 135 has been admitted by the RSVP protocol. The Preemption-Priority field 136 in [RFC3181] of a newly requested reservation is compared with the 137 Defending-Priority value of a previously admitted flow. The actions 138 taken based upon the result of this comparison are a function of local 139 policy. 141 Dual-Priority ::= < AVP Header: TBD > 142 { Preemption-Priority } 143 { Defending-Priority } 145 3.1.1. Preemption-Priority AVP 147 The Preemption-Priority AVP (AVP Code TBD) is of type Unsigned16. 148 Higher values represent higher priority. The value encoded in this AVP 149 is the same as the preemption priority value that would be encoded in 150 the signaled preemption priority policy element. 152 3.1.2. Defending-Priority AVP 154 The Defending-Priority AVP (AVP Code TBD) is of type Unsigned16. Higher 155 values represent higher priority. The value encoded in this AVP is the 156 same as the defending priority value that would be encoded in the 157 signaled preemption priority policy element. 159 3.2. Admission-Priority AVP 161 The Admission-Priority AVP (AVP Code TBD) is of type Unsigned8. The 162 admission priority associated with an RSVP flow is used to increase the 163 probability of session establishment for selected RSVP flows. Higher 164 values represent higher priority. A given admission priority is encoded 165 in this information element using the same value as when encoded in the 166 admission priority parameter defined in Section 5.1 of [RFC6401]. 168 3.3. SIP-Resource-Priority AVP 170 The SIP-Resource-Priority AVP is a grouped AVP consisting of two AVPs, 171 the SIP-Resource-Priority-Namespace and the SIP-Resource- Priority-Value 172 AVP, which are derived from the corresponding optional header fields in 173 [rfc4412]. 175 SIP-Resource-Priority ::= < AVP Header: TBD > 176 { SIP-Resource-Priority-Namespace } 177 { SIP-Resource-Priority-Value } 179 3.3.1. SIP-Resource-Priority-Namespace AVP 181 The SIP-Resource-Priority-Namespace AVP (AVP Code TBD) is of type 182 UTF8String. This AVP contains a string that identifies a unique ordered 183 set of priority values as described in [rfc4412]. 185 3.3.2 SIP-Resource-Priority-Value AVP 187 The SIP-Resource-Priority-Value AVP (AVP Code TBD) is of type 188 UTF8String. This AVP contains a string (i.e., a Namespace entry) that 189 identifies a member of a set of priority values unique to the Namespace. 190 Examples of Namespaces and corresponding sets of priority values are 191 found in [rfc4412]. 193 3.4. Application-Level-Resource-Priority AVP 195 The Application-Level-Resource-Priority (ALRP) AVP is a grouped AVP 196 consisting of two AVPs, the ALRP-Namespace AVP and the ALRP-Value AVP. 198 Application-Level-Resource-Priority ::= < AVP Header: TBD > 199 { ALRP-Namespace } 200 { ALRP-Value } 202 A description of the semantics of the parameter values can be found in 203 [RFC4412] and in [RFC6401]. The registry set up by [RFC4412] provided 204 string values for both the priority namespace and the priority values 205 associated with that namespace. [RFC6401] modifies that registry to 206 assign numerical values to both the namespace identifiers and the 207 priority values within them. Consequently, SIP-Resource-Priority and 208 Application-Level-Resource-Priority AVPs convey the same priority 209 semantics, but with differing syntax. In the former case, an 210 alpha-numeric encoding is used, while the latter case is constrained to 211 a numeric-only value. 213 3.4.1. ALRP-Namespace AVP 215 The ALRP-Namespace AVP (AVP Code TBD) is of type Unsigned16. This AVP 216 contains a numerical value identifying the namespace of the 217 application-level resource priority as described in [RFC6401]. 219 3.4.2. ALRP-Value AVP 221 The ALRP-Value AVP (AVP Code TBD) is of type Unsigned8. This AVP 222 contains the priority value within the ALRP-Namespace, as described in 223 [RFC6401]. 225 4. Examples of Usage 227 Usage of the Dual-Priority, Admission-Priority, and 228 Application-Level-Resource-Priority AVPs can all be illustrated by the 229 same simple network scenario, although they would not all typically be 230 used in the same network. The scenario is as follows: 232 An user with special authorization is authenticated by a Network Access 233 Server (NAS), which acts as a client to a Diameter Server supporting the 234 user's desired application. Once the user has authenticated, the 235 Diameter Server provides the NAS with information on the user's 236 authorized QoS, including instances of the Dual-Priority, 237 Admission-Priority, and/or Application-Level-Resource-Priority AVPs. 239 Local policy governs the usage of the values conveyed by these AVPs at 240 the NAS to decide whether the flow associated with the user's 241 application can be admitted. If the decision is positive, the NAS 242 forwards the authorized QoS values as objects in RSVP signalling. In 243 particular, the values in the Dual-Priority AVP would be carried in the 244 Signaled Preemption Priority Policy Element defined in [RFC3181], and so 245 on. Each subsequent node would make its own decision taking account of 246 the authorized QoS objects including the priority-related objects, again 247 governed by local policy. The example assumes that the user session 248 terminates on a host or server in the same administrative domain as the 249 NAS, to avoid complications due to the restricted applicability of 250 [RFC3181] and [RFC6401]. 252 Local policy might for example indicate: 254 - which value to take if both Admission-Priority and Application-Level- 255 Resource-Priority are present; 257 - what namespace or namespaces are recognized for use in 258 Application-Level-Resource-Priority; 260 - which resources are subject to pre-emption if the values in 261 Dual-Priority are high enough to allow it. 263 A scenario for the use of the SIP-Resource-Priority AVP will differ 264 slightly from the previous one, in that the initial decision point would 265 typically be a SIP proxy receiving a session initiation request 266 containing a Resource-Priority header field and deciding whether to 267 admit the session to the domain. Like the NAS, the SIP proxy would serve 268 as client to a Diameter Server during the process of user 269 authentication, and upon successful authentication would receive back 270 from the Diameter Server AVPs indicating authorized QoS. Among these 271 might be the SIP-Resource-Priority AVP, the contents of which would be 272 compared with the contents of the Resource-Priority header field. Again, 273 local policy would determine which namespaces would be accepted and what 274 the effect of a given priority level would be on the admission decision. 276 For the sake of our example, suppose now that the SIP proxy signals 277 using RSVP to the border router that will be admitting the media flows 278 associated with the session. (This, of course, makes a few assumptions 279 on routing and knowledge of that routing at the proxy.) The SIP proxy 280 can indicate authorized QoS using various objects. In particular, it can 281 map the values from the Resource-Priority header field to the 282 corresponding numeric values as defined by [RFC6401], and send it using 283 the Application-Level Resource Priority Policy Element. 285 5. IANA Considerations 287 5.1. AVP Codes 289 IANA is requested to allocate AVP codes for the following AVPs that are 290 defined in this document. 291 +------------------------------------------------------------------+ 292 | AVP Section | 293 |AVP Name Code Defined Data Type | 294 +------------------------------------------------------------------+ 295 |Dual-Priority TBD 3.1 Grouped | 296 |Preemption-Priority TBD 3.1.1 Unsigned16 | 297 |Defending-Priority TBD 3.1.2 Unsigned16 | 298 |Admission-Priority TBD 3.2 Unsigned8 | 299 |SIP-Resource-Priority TBD 3.3 Grouped | 300 |SIP-Resource-Priority-Namespace TBD 3.3.1 UTF8String | 301 |SIP-Resource-Priority-Value TBD 3.3.2 UTF8String | 302 |Application-Level-Resource-Priority TBD 3.4 Grouped | 303 |ALRP-Namespace TBD 3.4.1 Unsigned32 | 304 |ALRP-Value TBD 3.4.2 Unsigned32 | 305 +------------------------------------------------------------------+ 307 5.2. QoS Profile 309 IANA is requested to allocate a new value from the Authentication, 310 Authorization, and Accounting (AAA) Parameters/QoS Profile registry 311 defined in [RFC5624] for the QoS profile defined in this document. The 312 name of the profile is "Resource priority parameters". 314 6. Security Considerations 316 This document describes an extension for conveying Quality of Service 317 information, and therefore follows the same security considerations of 318 the Diameter QoS Application [RFC5866]. The values placed in the AVPs 319 are not changed by this draft, nor are they changed in the Diameter QoS 320 application. We recommend the use of mechanisms to ensure integrity 321 when exchanging information from one protocol to an associated DIAMETER 322 AVP. Examples of these integrity mechanisms would be use of S/MIME with 323 SIP RPH, or an INTEGRITY object within a POLICY_DATA object within the 324 context of RSVP. The consequences of changing values in the Priority 325 AVPs may result in an allocation of additional or less resources. 327 Changes in integrity protected values SHOULD NOT be ignored, and 328 appropriate protocol specific error messages SHOULD be sent back 329 upstream. Note that we do not use the term "MUST NOT be ignored" 330 because local policy of an administrative domain associated with other 331 protocols acts as the final arbiter. In addition, some protocols 332 associated with the AVPs defined in this document may be deployed within 333 a single administrative domain or "walled garden", and thus possible 334 changes in values would reflect policies of that administrative domain. 336 The security considerations of the Diameter protocol itself are discussed 337 in [I-D.ietf-dime-rfc3588bis]. Use of the AVPs defined in this document 338 MUST take into consideration the security issues and requirements of the 339 Diameter base protocol. 341 The authors also recommend that readers should familiarize themselves 342 with the security considerations of the various protocols listed in the 343 Normative References. This is because values placed in the AVPs defined 344 in this draft are set/changed by other protocols. 346 7. Acknowledgements 348 We would like to thank Lionel Morand, Janet Gunn, Piers O'Hanlon, Lars 349 Eggert, Jan Engelhardt, Francois LeFaucheur, John Loughney, An Nguyen, 350 Dave Oran, James Polk, Martin Stiemerling, and Magnus Westerlund, David 351 Harrington, Robert Sparks, and Dan Romascanu for their review and/or 352 comments on previous versions of the draft. 354 8. References 355 8.1. Normative References 357 [I-D.ietf-dime-rfc3588bis] 358 Fajardo, V., Arkko, J., Loughney, J., and G. Zorn, 359 "Diameter Base Protocol", draft-ietf-dime-rfc3588bis-26 360 (work in progress), January 2011. 362 [RFC2119] Bradner, S., "Key words for use in RFCs to Indicate 363 Requirement Levels", BCP 14, RFC 2119, March 1997. 365 [RFC2205] Braden, B., et. al., "Resource ReSerVation Protocol (RSVP) 366 -- Version 1 Functional Specification", RFC 2205, September 367 1997 369 [RFC3181] Herzog, S., "Signaled Preemption Priority Policy Element", 370 RFC 3181, October 2001. 372 [RFC4412] Schulzrinne, H. and J. Polk, "Communications Resource 373 Priority for the Session Initiation Protocol (SIP)", 374 RFC 4412, February 2006. 376 [RFC5624] Korhonen, J., Tschofenig, H., and E. Davies, "Quality of 377 Service Parameters for Usage with Diameter", RFC 5624, 378 Aug 2009. 380 [RFC5866] Sun, D., et. al., "Diameter Quality-of-Service 381 Application", RFC 5866, May 2010. 383 [RFC6401] Faucheur, F., Polk, J., and K. Carlberg, "Resource 384 ReSerVation Protocol (RSVP) Extensions for Emergency 385 Services", RFC 6401, Oct 2011. 387 8.2. Informative References 389 [3GPPa] "TS 29.214: Policy and charging control over Rx reference 390 point", 3GPP, March, 2011 392 [3GPPb] "TS 29.212: Policy and charging control over Gx reference 393 point", 3GPP, October, 2010 395 [3GPPc] "TS 29.229: Cx and Dx interfaces based on the Diameter 396 protocol; Protocol details", 3GPP, September, 2010 398 [3GPPd] "TS 29.329: Sh interface based on the Diameter protocol; 399 Protocol details", 3GPP, September, 2010 401 [ETSI] "TS 183 017: Telecommunications and Internet Converged 402 Services and Protocols for Advanced Networking (TISPAN); 403 Resource and Admission Control", ETSI 405 Authors' Addresses 407 Ken Carlberg (editor) Tom Taylor 408 G11 PT Taylor Consulting 409 1601 Clarendon Dr 1852 Lorraine Ave 410 Arlington, VA 22209 Ottawa 411 United States Canada 413 Email: carlberg@g11.org.uk Email: tom.taylor.stds@gmail.com