idnits 2.17.1 draft-ietf-mmusic-qos-identification-01.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 392. -- Found old boilerplate from RFC 3979, Section 5, paragraph 1 on line 403. -- Found old boilerplate from RFC 3979, Section 5, paragraph 2 on line 410. -- Found old boilerplate from RFC 3979, Section 5, paragraph 3 on line 416. 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 (January 23, 2008) is 5909 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 2434 (Obsoleted by RFC 5226) ** Obsolete normative reference: RFC 3851 (Obsoleted by RFC 5751) ** Downref: Normative reference to an Informational RFC: RFC 4080 ** Obsolete normative reference: RFC 4234 (Obsoleted by RFC 5234) ** Obsolete normative reference: RFC 4566 (Obsoleted by RFC 8866) Summary: 6 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: July 26, 2008 Gonzalo Camarillo 6 Ericsson 7 January 23, 2008 9 Quality of Service (QoS) Mechanism Selection in the Session Description 10 Protocol (SDP) 11 draft-ietf-mmusic-qos-identification-01.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 July 26, 2008. 38 Copyright Notice 40 Copyright (C) The IETF Trust (2008). 42 Abstract 44 The offer/answer model for SDP assumes that endpoints establish, 45 somehow, the QoS required for the media streams they establish. 46 Endpoints in closed environments typically agree out of band (e.g., 47 using configuration information) which QoS mechanism to use. 48 However, on the Internet, there is more than one QoS service 49 available. Consequently, there is a need for a mechanism to 50 negotiate which QoS mechanism to use for a particular media stream. 51 This document defines such a mechanism. 53 Table of Contents 55 1. Introduction . . . . . . . . . . . . . . . . . . . . . . . . . 3 56 2. Terminology . . . . . . . . . . . . . . . . . . . . . . . . . 3 57 3. SDP Attributes Definition . . . . . . . . . . . . . . . . . . 3 58 4. Offer/answer Behavior . . . . . . . . . . . . . . . . . . . . 4 59 4.1. Offerer Behavior . . . . . . . . . . . . . . . . . . . . . 4 60 4.2. Answerer Behavior . . . . . . . . . . . . . . . . . . . . 4 61 4.3. Resource Reservation . . . . . . . . . . . . . . . . . . . 5 62 4.4. Subsequent Offer/answer Exchanges . . . . . . . . . . . . 5 63 5. Example . . . . . . . . . . . . . . . . . . . . . . . . . . . 5 64 6. IANA Considerations . . . . . . . . . . . . . . . . . . . . . 6 65 6.1. Registration of the SDP 'qos-mech-send' Attribute . . . . 6 66 6.2. Registration of the SDP 'qos-mech-recv' Attribute . . . . 6 67 6.3. Registry for QoS Mechanism Tokens . . . . . . . . . . . . 7 68 7. Security Considerations . . . . . . . . . . . . . . . . . . . 7 69 8. Acknowledgements . . . . . . . . . . . . . . . . . . . . . . . 8 70 9. References . . . . . . . . . . . . . . . . . . . . . . . . . . 8 71 9.1. Normative References . . . . . . . . . . . . . . . . . . . 8 72 9.2. Informative References . . . . . . . . . . . . . . . . . . 8 73 Authors' Addresses . . . . . . . . . . . . . . . . . . . . . . . . 9 74 Intellectual Property and Copyright Statements . . . . . . . . . . 10 76 1. Introduction 78 The offer/answer model [RFC3264] for SDP [RFC4566] does not provide 79 any mechanism for endpoints to negotiate the QoS mechanism to be used 80 for a particular media stream. Even when QoS preconditions [RFC3312] 81 are used, the choice of the QoS mechanism is left unspecified, up to 82 the endpoints. 84 Endpoints that support more than one QoS mechanism need a way to 85 negotiate which one to use for a particular media stream. Examples 86 of QoS mechanisms are RSVP (Resource Reservation Protocol) [RFC2205] 87 and NSIS (Next Steps in Signaling) [RFC4080]. 89 This document defines a mechanism that allows endpoints to negotiate 90 the QoS mechanism to be used for a particular media stream. 91 Section 3 defines the 'qos-mech-send' and 'qos-mech-recv' SDP 92 attributes. Section 4 specifies the use of these new SDP attributes 93 with the offer/answer model. Section 5 provides an example of an 94 offer/answer exchanges that uses these attributes. 96 2. Terminology 98 The key words "MUST", "MUST NOT", "REQUIRED", "SHALL", "SHALL NOT", 99 "SHOULD", "SHOULD NOT", "RECOMMENDED", "MAY", and "OPTIONAL" in this 100 document are to be interpreted as described in [RFC2119]. 102 3. SDP Attributes Definition 104 This document defines the 'qos-mech-send' and 'qos-mech-recv' session 105 and media-level SDP [RFC4566] attributes. The following is their 106 augmented Backus-Naur Form (BNF) [RFC4234] syntax, which is based on 107 the SDP [RFC4566] grammar: 109 attribute = qos-mech-send-attr 110 attribute = qos-mech-recv-attr 112 qos-mech-send-attr = "qos-mech-send" ":" *(SP qos-mech) 113 qos-mech-recv-attr = "qos-mech-recv" ":" *(SP qos-mech) 115 qos-mech = rsvp / nsis / extension-mech 116 extension-mech = token 118 The 'qos-mech' token identifies a QoS mechanism that is supported by 119 the entity generating the session description. A token that appears 120 in a 'qos-mech-send' attribute identifies a QoS mechanism that can be 121 used to reserve resources for traffic sent by the entity generating 122 the session description. A token that appears in a 'qos-mech-recv' 123 attribute identifies a QoS mechanism that can be used to reserve 124 resources for traffic received by the entity generating the session 125 description. 127 The 'qos-mech-send' and 'qos-mech-recv' attributes are not 128 interdependent; one can be used without the other. 130 The following is an example of an 'm' line with a 'qos-mech-send' and 131 a 'qos-mech-recv' attributes: 133 m=audio 50000 RTP/AVP 0 134 a=qos-mech-send:rsvp nsis 135 a=qos-mech-recv:rsvp nsis 137 4. Offer/answer Behavior 139 An offer/answer exchange using the 'qos-mech-send' and 'qos-mech- 140 recv' attributes allows endpoints to come up with a list of common 141 QoS mechanisms sorted by preference. However, note that endpoints 142 negotiate in which direction QoS is needed using other mechanisms, 143 such as preconditions [RFC3312]. Endpoints may also use other 144 mechanisms to negotiate, if needed, the parameters to use with a 145 given QoS mechanism (e.g., bandwidth to be reserved). 147 4.1. Offerer Behavior 149 Offerers include a 'qos-mech-send' attribute with the tokens 150 corresponding to the QoS mechanisms supported in the send direction 151 in order of preference. Similarly, offerers include a 'qos-mech- 152 recv' attribute with the tokens corresponding to the QoS mechanisms 153 supported in the receive direction in order of preference. 155 4.2. Answerer Behavior 157 On receiving an offer with a set of tokens in a 'qos-mech-send' 158 attribute, the answerer takes those tokens corresponding to QoS 159 mechanisms it supports in the receive direction and includes them, in 160 order of preference, in a 'qos-mech-recv' attribute in the answer. 161 On receiving an offer with a set of tokens in a 'qos-mech-recv' 162 attribute, the answerer takes those tokens corresponding to QoS 163 mechanisms it supports in the send direction and includes them, in 164 order of preference, in a 'qos-mech-send' attribute in the answer. 166 When ordering the tokens in a 'qos-mech-send' or a 'qos-mech-recv' 167 attribute by preference, the answerer may take into account its own 168 preferences and those expressed in the offer. However, the exact 169 algorithm to be used to order such token lists is outside the scope 170 of this specification. 172 Note that if the answerer does not have any QoS mechanism in common 173 with the offerer, it will return empty 'qos-mech-send' and 'qos-mech- 174 recv' attributes. 176 4.3. Resource Reservation 178 Once the offer/answer exchange completes, both offerer and answerer 179 use the token lists in the 'qos-mech-send' and 'qos-mech-recv' 180 attributes of the answer to perform resource reservations. Offerers 181 and answerers SHOULD attempt to use the QoS mechanism with highest 182 priority in each direction first. If an endpoint (the offerer or the 183 answerer) does not succeed using the mechanism with highest priority 184 in a given direction, it SHOULD attempt to use the next QoS mechanism 185 in order of priority in that direction, and so on. 187 If an endpoint tries unsuccessfully all the common QoS mechanisms for 188 a given direction, the endpoint MAY attempt to use additional QoS 189 mechanisms not supported by the remote endpoint. This is because 190 there may be network entities out of the endpoint's control (e.g., an 191 RSVP proxy) that make those mechanisms work. 193 4.4. Subsequent Offer/answer Exchanges 195 If, during an established session for which the QoS mechanism to be 196 used for a given direction was agreed using the mechanism defined in 197 this specification, an endpoint receives a subsequent offer that does 198 not contain the QoS selection attribute corresponding to that 199 direction (i.e., the 'qos-mech-send' or 'qos-mech-recv' attribute is 200 missing), the endpoints SHOULD continue using the same QoS mechanism 201 used up to that moment. 203 5. Example 205 The following is an offer/answer exchange between two endpoints using 206 the 'qos-mech-send' and 'qos-mech-recv' attributes. Parts of the 207 session descriptions are ommitted for clarity purposes. 209 The offerer generates the following session description listing both 210 RSVP and NSIS for both directions. The offerer would prefer to use 211 RSVP and, thus, includes it before NSIS. 213 m=audio 50000 RTP/AVP 0 214 a=qos-mech-send: rsvp nsis 215 a=qos-mech-recv: rsvp nsis 217 The answerer supports NSIS in both directions, but not RSVP. 218 Consequently, it returns the following session description: 220 m=audio 55000 RTP/AVP 0 221 a=qos-mech-send: nsis 222 a=qos-mech-recv: nsis 224 6. IANA Considerations 226 This specification registers two new SDP attributes and creates a new 227 registry for QoS mechanisms. 229 6.1. Registration of the SDP 'qos-mech-send' Attribute 231 This section instructs the IANA to register the following SDP att- 232 field under the Session Description Protocol (SDP) Parameters 233 registry: 235 Contact name: Gonzalo.Camarillo@ericsson.com 237 Attribute name: qos-mech-send 239 Long-form attribute name: QoS Mechanism for the Send Direction 241 Type of attribute Session and Media levels 243 Subject to charset: No 245 Purpose of attribute: To list QoS mechanisms supported in the send 246 direction. 248 Allowed attribute values: IANA Registered Tokens 250 6.2. Registration of the SDP 'qos-mech-recv' Attribute 252 This section instructs the IANA to register the following SDP att- 253 field under the Session Description Protocol (SDP) Parameters 254 registry: 256 Contact name: Gonzalo.Camarillo@ericsson.com 258 Attribute name: qos-mech-recv 260 Long-form attribute name: QoS Mechanism for the Receive Direction 262 Type of attribute Session and Media levels 264 Subject to charset: No 266 Purpose of attribute: To list QoS mechanisms supported in the 267 receive direction. 269 Allowed attribute values: IANA Registered Tokens 271 6.3. Registry for QoS Mechanism Tokens 273 The IANA is requested to create a subregistry for QoS mechanism token 274 values to be used in the 'qos-mech-send' and 'qos-mech-recv' 275 attributes under the Session Description Protocol (SDP) Parameters 276 registry. The initial values for the subregistry are presented in 277 the following, and IANA is requested to add them into its database: 279 QoS Mechanism Reference 280 ---------------------------- --------- 281 rsvp RFC 2205 282 nsis RFC 4080 284 As per the terminology in [RFC2434], the registration policy for new 285 QoS mechanism token values shall be 'Specification Required'. 287 7. Security Considerations 289 An attacker may attempt to add, modify, or remove 'qos-mech-send' and 290 'qos-mech-recv' attributes from a session description. This could 291 result in an application behaving in a non-desirable way. For 292 example, the endpoints under attack may not be able to find a common 293 QoS mechanism to use. 295 Consequently, it is strongly RECOMMENDED that integrity protection be 296 applied to SDP session descriptions carrying these attributes. For 297 session descriptions carried in SIP [RFC3261], S/MIME [RFC3851] is 298 the natural choice to provide such end-to-end integrity protection, 299 as described in [RFC3261]. Other applications MAY use a different 300 form of integrity protection. 302 8. Acknowledgements 304 Dave Oran helped form this effort. Flemming Andreasen provided 305 useful comments on this specification. 307 9. References 309 9.1. Normative References 311 [RFC2119] Bradner, S., "Key words for use in RFCs to Indicate 312 Requirement Levels", BCP 14, RFC 2119, March 1997. 314 [RFC2205] Braden, B., Zhang, L., Berson, S., Herzog, S., and S. 315 Jamin, "Resource ReSerVation Protocol (RSVP) -- Version 1 316 Functional Specification", RFC 2205, September 1997. 318 [RFC2434] Narten, T. and H. Alvestrand, "Guidelines for Writing an 319 IANA Considerations Section in RFCs", BCP 26, RFC 2434, 320 October 1998. 322 [RFC3261] Rosenberg, J., Schulzrinne, H., Camarillo, G., Johnston, 323 A., Peterson, J., Sparks, R., Handley, M., and E. 324 Schooler, "SIP: Session Initiation Protocol", RFC 3261, 325 June 2002. 327 [RFC3264] Rosenberg, J. and H. Schulzrinne, "An Offer/Answer Model 328 with Session Description Protocol (SDP)", RFC 3264, 329 June 2002. 331 [RFC3851] Ramsdell, B., "Secure/Multipurpose Internet Mail 332 Extensions (S/MIME) Version 3.1 Message Specification", 333 RFC 3851, July 2004. 335 [RFC4080] Hancock, R., Karagiannis, G., Loughney, J., and S. Van den 336 Bosch, "Next Steps in Signaling (NSIS): Framework", 337 RFC 4080, June 2005. 339 [RFC4234] Crocker, D., Ed. and P. Overell, "Augmented BNF for Syntax 340 Specifications: ABNF", RFC 4234, October 2005. 342 [RFC4566] Handley, M., Jacobson, V., and C. Perkins, "SDP: Session 343 Description Protocol", RFC 4566, July 2006. 345 9.2. Informative References 347 [RFC3312] Camarillo, G., Marshall, W., and J. Rosenberg, 348 "Integration of Resource Management and Session Initiation 349 Protocol (SIP)", RFC 3312, October 2002. 351 Authors' Addresses 353 James Polk 354 Cisco Systems 355 3913 Treemont Circle 356 Colleyville, Texas 76034 357 USA 359 Phone: +1-817-271-3552 360 Email: jmpolk@cisco.com 362 Subha Dhesikan 363 Cisco Systems 364 170 W. Tasman Drive 365 San Jose, CA 95134 366 USA 368 Email: sdhesika@cisco.com 370 Gonzalo Camarillo 371 Ericsson 372 Hirsalantie 11 373 Jorvas 02420 374 Finland 376 Email: Gonzalo.Camarillo@ericsson.com 378 Full Copyright Statement 380 Copyright (C) The IETF Trust (2008). 382 This document is subject to the rights, licenses and restrictions 383 contained in BCP 78, and except as set forth therein, the authors 384 retain all their rights. 386 This document and the information contained herein are provided on an 387 "AS IS" basis and THE CONTRIBUTOR, THE ORGANIZATION HE/SHE REPRESENTS 388 OR IS SPONSORED BY (IF ANY), THE INTERNET SOCIETY, THE IETF TRUST AND 389 THE INTERNET ENGINEERING TASK FORCE DISCLAIM ALL WARRANTIES, EXPRESS 390 OR IMPLIED, INCLUDING BUT NOT LIMITED TO ANY WARRANTY THAT THE USE OF 391 THE INFORMATION HEREIN WILL NOT INFRINGE ANY RIGHTS OR ANY IMPLIED 392 WARRANTIES OF MERCHANTABILITY OR FITNESS FOR A PARTICULAR PURPOSE. 394 Intellectual Property 396 The IETF takes no position regarding the validity or scope of any 397 Intellectual Property Rights or other rights that might be claimed to 398 pertain to the implementation or use of the technology described in 399 this document or the extent to which any license under such rights 400 might or might not be available; nor does it represent that it has 401 made any independent effort to identify any such rights. Information 402 on the procedures with respect to rights in RFC documents can be 403 found in BCP 78 and BCP 79. 405 Copies of IPR disclosures made to the IETF Secretariat and any 406 assurances of licenses to be made available, or the result of an 407 attempt made to obtain a general license or permission for the use of 408 such proprietary rights by implementers or users of this 409 specification can be obtained from the IETF on-line IPR repository at 410 http://www.ietf.org/ipr. 412 The IETF invites any interested party to bring to its attention any 413 copyrights, patents or patent applications, or other proprietary 414 rights that may cover technology that may be required to implement 415 this standard. Please address the information to the IETF at 416 ietf-ipr@ietf.org. 418 Acknowledgment 420 Funding for the RFC Editor function is provided by the IETF 421 Administrative Support Activity (IASA).