idnits 2.17.1 draft-ietf-mmusic-qos-identification-02.txt: Checking boilerplate required by RFC 5378 and the IETF Trust (see https://trustee.ietf.org/license-info): ---------------------------------------------------------------------------- ** It looks like you're using RFC 3978 boilerplate. You should update this to the boilerplate described in the IETF Trust License Policy document (see https://trustee.ietf.org/license-info), which is required now. -- Found old boilerplate from RFC 3978, Section 5.1 on line 18. -- Found old boilerplate from RFC 3978, Section 5.5, updated by RFC 4748 on line 390. -- Found old boilerplate from RFC 3979, Section 5, paragraph 1 on line 401. -- Found old boilerplate from RFC 3979, Section 5, paragraph 2 on line 408. -- Found old boilerplate from RFC 3979, Section 5, paragraph 3 on line 414. 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 Copyright Line does not match the current year -- The document seems to lack a disclaimer for pre-RFC5378 work, but may have content which was first submitted before 10 November 2008. If you have contacted all the original authors and they are all willing to grant the BCP78 rights to the IETF Trust, then this is fine, and you can ignore this comment. If not, you may need to add the pre-RFC5378 disclaimer. (See the Legal Provisions document at https://trustee.ietf.org/license-info for more information.) -- The document date (October 10, 2008) is 5674 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 3851 (Obsoleted by RFC 5751) ** Obsolete normative reference: RFC 4566 (Obsoleted by RFC 8866) ** Obsolete normative reference: RFC 5226 (Obsoleted by RFC 8126) Summary: 4 errors (**), 0 flaws (~~), 1 warning (==), 7 comments (--). Run idnits with the --verbose option for more detailed information about the items above. -------------------------------------------------------------------------------- 2 MMUSIC James Polk 3 Internet-Draft Subha Dhesikan 4 Intended status: Standards Track Cisco Systems 5 Expires: April 13, 2009 Gonzalo Camarillo 6 Ericsson 7 October 10, 2008 9 Quality of Service (QoS) Mechanism Selection in the Session Description 10 Protocol (SDP) 11 draft-ietf-mmusic-qos-identification-02.txt 13 Status of this Memo 15 By submitting this Internet-Draft, each author represents that any 16 applicable patent or other IPR claims of which he or she is aware 17 have been or will be disclosed, and any of which he or she becomes 18 aware will be disclosed, in accordance with Section 6 of BCP 79. 20 Internet-Drafts are working documents of the Internet Engineering 21 Task Force (IETF), its areas, and its working groups. Note that 22 other groups may also distribute working documents as Internet- 23 Drafts. 25 Internet-Drafts are draft documents valid for a maximum of six months 26 and may be updated, replaced, or obsoleted by other documents at any 27 time. It is inappropriate to use Internet-Drafts as reference 28 material or to cite them other than as "work in progress." 30 The list of current Internet-Drafts can be accessed at 31 http://www.ietf.org/ietf/1id-abstracts.txt. 33 The list of Internet-Draft Shadow Directories can be accessed at 34 http://www.ietf.org/shadow.html. 36 This Internet-Draft will expire on April 13, 2009. 38 Abstract 40 The offer/answer model for SDP assumes that endpoints establish 41 somehow the QoS required for the media streams they establish. 42 Endpoints in closed environments typically agree out of band (e.g., 43 using configuration information) which QoS mechanism to use. 44 However, on the Internet, there is more than one QoS service 45 available. Consequently, there is a need for a mechanism to 46 negotiate which QoS mechanism to use for a particular media stream. 47 This document defines such a mechanism. 49 Table of Contents 51 1. Introduction . . . . . . . . . . . . . . . . . . . . . . . . . 3 52 2. Terminology . . . . . . . . . . . . . . . . . . . . . . . . . 3 53 3. SDP Attributes Definition . . . . . . . . . . . . . . . . . . 3 54 4. Offer/answer Behavior . . . . . . . . . . . . . . . . . . . . 4 55 4.1. Offerer Behavior . . . . . . . . . . . . . . . . . . . . . 4 56 4.2. Answerer Behavior . . . . . . . . . . . . . . . . . . . . 4 57 4.3. Resource Reservation . . . . . . . . . . . . . . . . . . . 5 58 4.4. Subsequent Offer/answer Exchanges . . . . . . . . . . . . 5 59 5. Example . . . . . . . . . . . . . . . . . . . . . . . . . . . 5 60 6. IANA Considerations . . . . . . . . . . . . . . . . . . . . . 6 61 6.1. Registration of the SDP 'qos-mech-send' Attribute . . . . 6 62 6.2. Registration of the SDP 'qos-mech-recv' Attribute . . . . 6 63 6.3. Registry for QoS Mechanism Tokens . . . . . . . . . . . . 7 64 7. Security Considerations . . . . . . . . . . . . . . . . . . . 7 65 8. Acknowledgements . . . . . . . . . . . . . . . . . . . . . . . 8 66 9. References . . . . . . . . . . . . . . . . . . . . . . . . . . 8 67 9.1. Normative References . . . . . . . . . . . . . . . . . . . 8 68 9.2. Informative References . . . . . . . . . . . . . . . . . . 8 69 Authors' Addresses . . . . . . . . . . . . . . . . . . . . . . . . 9 70 Intellectual Property and Copyright Statements . . . . . . . . . . 10 72 1. Introduction 74 The offer/answer model [RFC3264] for SDP [RFC4566] does not provide 75 any mechanism for endpoints to negotiate the QoS mechanism to be used 76 for a particular media stream. Even when QoS preconditions [RFC3312] 77 are used, the choice of the QoS mechanism is left unspecified, up to 78 the endpoints. 80 Endpoints that support more than one QoS mechanism need a way to 81 negotiate which one to use for a particular media stream. Examples 82 of QoS mechanisms are RSVP (Resource Reservation Protocol) [RFC2205] 83 and NSIS (Next Steps in Signaling) [RFC4080]. 85 This document defines a mechanism that allows endpoints to negotiate 86 the QoS mechanism to be used for a particular media stream. 87 Section 3 defines the 'qos-mech-send' and 'qos-mech-recv' SDP 88 attributes. Section 4 specifies the use of these new SDP attributes 89 with the offer/answer model. Section 5 provides an example of an 90 offer/answer exchanges that uses these attributes. 92 2. Terminology 94 The key words "MUST", "MUST NOT", "REQUIRED", "SHALL", "SHALL NOT", 95 "SHOULD", "SHOULD NOT", "RECOMMENDED", "MAY", and "OPTIONAL" in this 96 document are to be interpreted as described in [RFC2119]. 98 3. SDP Attributes Definition 100 This document defines the 'qos-mech-send' and 'qos-mech-recv' session 101 and media-level SDP [RFC4566] attributes. The following is their 102 augmented Backus-Naur Form (BNF) [RFC5234] syntax, which is based on 103 the SDP [RFC4566] grammar: 105 attribute = qos-mech-send-attr 106 attribute = qos-mech-recv-attr 108 qos-mech-send-attr = "qos-mech-send" ":" *(SP qos-mech) 109 qos-mech-recv-attr = "qos-mech-recv" ":" *(SP qos-mech) 111 qos-mech = rsvp / nsis / extension-mech 112 extension-mech = token 114 The 'qos-mech' token identifies a QoS mechanism that is supported by 115 the entity generating the session description. A token that appears 116 in a 'qos-mech-send' attribute identifies a QoS mechanism that can be 117 used to reserve resources for traffic sent by the entity generating 118 the session description. A token that appears in a 'qos-mech-recv' 119 attribute identifies a QoS mechanism that can be used to reserve 120 resources for traffic received by the entity generating the session 121 description. 123 The 'qos-mech-send' and 'qos-mech-recv' attributes are not 124 interdependent; one can be used without the other. 126 The following is an example of an 'm' line with a 'qos-mech-send' and 127 a 'qos-mech-recv' attributes: 129 m=audio 50000 RTP/AVP 0 130 a=qos-mech-send:rsvp nsis 131 a=qos-mech-recv:rsvp nsis 133 4. Offer/answer Behavior 135 An offer/answer exchange using the 'qos-mech-send' and 'qos-mech- 136 recv' attributes allows endpoints to come up with a list of common 137 QoS mechanisms sorted by preference. However, note that endpoints 138 negotiate in which direction QoS is needed using other mechanisms, 139 such as preconditions [RFC3312]. Endpoints may also use other 140 mechanisms to negotiate, if needed, the parameters to use with a 141 given QoS mechanism (e.g., bandwidth to be reserved). 143 4.1. Offerer Behavior 145 Offerers include a 'qos-mech-send' attribute with the tokens 146 corresponding to the QoS mechanisms supported in the send direction 147 in order of preference. Similarly, offerers include a 'qos-mech- 148 recv' attribute with the tokens corresponding to the QoS mechanisms 149 supported in the receive direction in order of preference. 151 4.2. Answerer Behavior 153 On receiving an offer with a set of tokens in a 'qos-mech-send' 154 attribute, the answerer takes those tokens corresponding to QoS 155 mechanisms it supports in the receive direction and includes them, in 156 order of preference, in a 'qos-mech-recv' attribute in the answer. 157 On receiving an offer with a set of tokens in a 'qos-mech-recv' 158 attribute, the answerer takes those tokens corresponding to QoS 159 mechanisms it supports in the send direction and includes them, in 160 order of preference, in a 'qos-mech-send' attribute in the answer. 162 When ordering the tokens in a 'qos-mech-send' or a 'qos-mech-recv' 163 attribute by preference, the answerer may take into account its own 164 preferences and those expressed in the offer. However, the exact 165 algorithm to be used to order such token lists is outside the scope 166 of this specification. 168 Note that if the answerer does not have any QoS mechanism in common 169 with the offerer, it will return empty 'qos-mech-send' and 'qos-mech- 170 recv' attributes. 172 4.3. Resource Reservation 174 Once the offer/answer exchange completes, both offerer and answerer 175 use the token lists in the 'qos-mech-send' and 'qos-mech-recv' 176 attributes of the answer to perform resource reservations. Offerers 177 and answerers SHOULD attempt to use the QoS mechanism with highest 178 priority in each direction first. If an endpoint (the offerer or the 179 answerer) does not succeed using the mechanism with highest priority 180 in a given direction, it SHOULD attempt to use the next QoS mechanism 181 in order of priority in that direction, and so on. 183 If an endpoint tries unsuccessfully all the common QoS mechanisms for 184 a given direction, the endpoint MAY attempt to use additional QoS 185 mechanisms not supported by the remote endpoint. This is because 186 there may be network entities out of the endpoint's control (e.g., an 187 RSVP proxy) that make those mechanisms work. 189 4.4. Subsequent Offer/answer Exchanges 191 If, during an established session for which the QoS mechanism to be 192 used for a given direction was agreed using the mechanism defined in 193 this specification, an endpoint receives a subsequent offer that does 194 not contain the QoS selection attribute corresponding to that 195 direction (i.e., the 'qos-mech-send' or 'qos-mech-recv' attribute is 196 missing), the endpoints SHOULD continue using the same QoS mechanism 197 used up to that moment. 199 5. Example 201 The following is an offer/answer exchange between two endpoints using 202 the 'qos-mech-send' and 'qos-mech-recv' attributes. Parts of the 203 session descriptions are ommitted for clarity purposes. 205 The offerer generates the following session description listing both 206 RSVP and NSIS for both directions. The offerer would prefer to use 207 RSVP and, thus, includes it before NSIS. 209 m=audio 50000 RTP/AVP 0 210 a=qos-mech-send: rsvp nsis 211 a=qos-mech-recv: rsvp nsis 213 The answerer supports NSIS in both directions, but not RSVP. 214 Consequently, it returns the following session description: 216 m=audio 55000 RTP/AVP 0 217 a=qos-mech-send: nsis 218 a=qos-mech-recv: nsis 220 6. IANA Considerations 222 This specification registers two new SDP attributes and creates a new 223 registry for QoS mechanisms. 225 6.1. Registration of the SDP 'qos-mech-send' Attribute 227 This section instructs the IANA to register the following SDP att- 228 field under the Session Description Protocol (SDP) Parameters 229 registry: 231 Contact name: Gonzalo.Camarillo@ericsson.com 233 Attribute name: qos-mech-send 235 Long-form attribute name: QoS Mechanism for the Send Direction 237 Type of attribute Session and Media levels 239 Subject to charset: No 241 Purpose of attribute: To list QoS mechanisms supported in the send 242 direction. 244 Allowed attribute values: IANA Registered Tokens 246 6.2. Registration of the SDP 'qos-mech-recv' Attribute 248 This section instructs the IANA to register the following SDP att- 249 field under the Session Description Protocol (SDP) Parameters 250 registry: 252 Contact name: Gonzalo.Camarillo@ericsson.com 254 Attribute name: qos-mech-recv 255 Long-form attribute name: QoS Mechanism for the Receive Direction 257 Type of attribute Session and Media levels 259 Subject to charset: No 261 Purpose of attribute: To list QoS mechanisms supported in the 262 receive direction. 264 Allowed attribute values: IANA Registered Tokens 266 6.3. Registry for QoS Mechanism Tokens 268 The IANA is requested to create a subregistry for QoS mechanism token 269 values to be used in the 'qos-mech-send' and 'qos-mech-recv' 270 attributes under the Session Description Protocol (SDP) Parameters 271 registry. The initial values for the subregistry are presented in 272 the following, and IANA is requested to add them into its database: 274 QoS Mechanism Reference 275 ---------------------------- --------- 276 rsvp RFC xxxx 277 nsis RFC xxxx 279 [RFC Editor's note: please replace 'RFC xxxx' with the number this 280 RFC will get.] 282 As per the terminology in [RFC5226], the registration policy for new 283 QoS mechanism token values shall be 'Specification Required'. 285 7. Security Considerations 287 An attacker may attempt to add, modify, or remove 'qos-mech-send' and 288 'qos-mech-recv' attributes from a session description. This could 289 result in an application behaving in a non-desirable way. For 290 example, the endpoints under attack may not be able to find a common 291 QoS mechanism to use. 293 Consequently, it is strongly RECOMMENDED that integrity and 294 authenticity protection be applied to SDP session descriptions 295 carrying these attributes. For session descriptions carried in SIP 296 [RFC3261], S/MIME [RFC3851] is the natural choice to provide such 297 end-to-end integrity protection, as described in [RFC3261]. Other 298 applications MAY use a different form of integrity protection. 300 8. Acknowledgements 302 Dave Oran helped form this effort. Flemming Andreasen provided 303 useful comments on this specification. 305 9. References 307 9.1. Normative References 309 [RFC2119] Bradner, S., "Key words for use in RFCs to Indicate 310 Requirement Levels", BCP 14, RFC 2119, March 1997. 312 [RFC3264] Rosenberg, J. and H. Schulzrinne, "An Offer/Answer Model 313 with Session Description Protocol (SDP)", RFC 3264, 314 June 2002. 316 [RFC3851] Ramsdell, B., "Secure/Multipurpose Internet Mail 317 Extensions (S/MIME) Version 3.1 Message Specification", 318 RFC 3851, July 2004. 320 [RFC4566] Handley, M., Jacobson, V., and C. Perkins, "SDP: Session 321 Description Protocol", RFC 4566, July 2006. 323 [RFC5226] Narten, T. and H. Alvestrand, "Guidelines for Writing an 324 IANA Considerations Section in RFCs", BCP 26, RFC 5226, 325 May 2008. 327 [RFC5234] Crocker, D. and P. Overell, "Augmented BNF for Syntax 328 Specifications: ABNF", STD 68, RFC 5234, January 2008. 330 9.2. Informative References 332 [RFC2205] Braden, B., Zhang, L., Berson, S., Herzog, S., and S. 333 Jamin, "Resource ReSerVation Protocol (RSVP) -- Version 1 334 Functional Specification", RFC 2205, September 1997. 336 [RFC3261] Rosenberg, J., Schulzrinne, H., Camarillo, G., Johnston, 337 A., Peterson, J., Sparks, R., Handley, M., and E. 338 Schooler, "SIP: Session Initiation Protocol", RFC 3261, 339 June 2002. 341 [RFC3312] Camarillo, G., Marshall, W., and J. Rosenberg, 342 "Integration of Resource Management and Session Initiation 343 Protocol (SIP)", RFC 3312, October 2002. 345 [RFC4080] Hancock, R., Karagiannis, G., Loughney, J., and S. Van den 346 Bosch, "Next Steps in Signaling (NSIS): Framework", 347 RFC 4080, June 2005. 349 Authors' Addresses 351 James Polk 352 Cisco Systems 353 3913 Treemont Circle 354 Colleyville, Texas 76034 355 USA 357 Phone: +1-817-271-3552 358 Email: jmpolk@cisco.com 360 Subha Dhesikan 361 Cisco Systems 362 170 W. Tasman Drive 363 San Jose, CA 95134 364 USA 366 Email: sdhesika@cisco.com 368 Gonzalo Camarillo 369 Ericsson 370 Hirsalantie 11 371 Jorvas 02420 372 Finland 374 Email: Gonzalo.Camarillo@ericsson.com 376 Full Copyright Statement 378 Copyright (C) The IETF Trust (2008). 380 This document is subject to the rights, licenses and restrictions 381 contained in BCP 78, and except as set forth therein, the authors 382 retain all their rights. 384 This document and the information contained herein are provided on an 385 "AS IS" basis and THE CONTRIBUTOR, THE ORGANIZATION HE/SHE REPRESENTS 386 OR IS SPONSORED BY (IF ANY), THE INTERNET SOCIETY, THE IETF TRUST AND 387 THE INTERNET ENGINEERING TASK FORCE DISCLAIM ALL WARRANTIES, EXPRESS 388 OR IMPLIED, INCLUDING BUT NOT LIMITED TO ANY WARRANTY THAT THE USE OF 389 THE INFORMATION HEREIN WILL NOT INFRINGE ANY RIGHTS OR ANY IMPLIED 390 WARRANTIES OF MERCHANTABILITY OR FITNESS FOR A PARTICULAR PURPOSE. 392 Intellectual Property 394 The IETF takes no position regarding the validity or scope of any 395 Intellectual Property Rights or other rights that might be claimed to 396 pertain to the implementation or use of the technology described in 397 this document or the extent to which any license under such rights 398 might or might not be available; nor does it represent that it has 399 made any independent effort to identify any such rights. Information 400 on the procedures with respect to rights in RFC documents can be 401 found in BCP 78 and BCP 79. 403 Copies of IPR disclosures made to the IETF Secretariat and any 404 assurances of licenses to be made available, or the result of an 405 attempt made to obtain a general license or permission for the use of 406 such proprietary rights by implementers or users of this 407 specification can be obtained from the IETF on-line IPR repository at 408 http://www.ietf.org/ipr. 410 The IETF invites any interested party to bring to its attention any 411 copyrights, patents or patent applications, or other proprietary 412 rights that may cover technology that may be required to implement 413 this standard. Please address the information to the IETF at 414 ietf-ipr@ietf.org.