Network Working Group C. Boulton Internet-Draft Avaya Intended status: Standards Track February 22, 2008 Expires: August 25, 2008 A Session Description Protocol (SDP) Control Package Attribute draft-boulton-mmusic-sdp-control-package-attribute-02 Status of this Memo By submitting this Internet-Draft, each author represents that any applicable patent or other IPR claims of which he or she is aware have been or will be disclosed, and any of which he or she becomes aware will be disclosed, in accordance with Section 6 of BCP 79. Internet-Drafts are working documents of the Internet Engineering Task Force (IETF), its areas, and its working groups. Note that other groups may also distribute working documents as Internet- Drafts. Internet-Drafts are draft documents valid for a maximum of six months and may be updated, replaced, or obsoleted by other documents at any time. It is inappropriate to use Internet-Drafts as reference material or to cite them other than as "work in progress." The list of current Internet-Drafts can be accessed at http://www.ietf.org/ietf/1id-abstracts.txt. The list of Internet-Draft Shadow Directories can be accessed at http://www.ietf.org/shadow.html. This Internet-Draft will expire on August 25, 2008. Copyright Notice Copyright (C) The IETF Trust (2008). Boulton Expires August 25, 2008 [Page 1] Internet-Draft Control Package Attribute February 2008 Abstract This document defines a new Session Description Protocol (SDP) media- level attribute: "ctrl-package". The "ctrl-package" attribute conveys details of the SIP Control Framework extension packages that are supported by a client participating in an offer/answer exchange. Table of Contents 1. Introduction . . . . . . . . . . . . . . . . . . . . . . . . . 3 2. Conventions and Terminology . . . . . . . . . . . . . . . . . 4 3. The Ctrl-Package Attribute . . . . . . . . . . . . . . . . . . 5 4. The Ctrl-Package Attribute in the Offer/Answer Model . . . . . 7 5. Example . . . . . . . . . . . . . . . . . . . . . . . . . . . 8 6. Security Considerations . . . . . . . . . . . . . . . . . . . 9 7. IANA Considerations . . . . . . . . . . . . . . . . . . . . . 10 8. Acknowledgments . . . . . . . . . . . . . . . . . . . . . . . 11 9. References . . . . . . . . . . . . . . . . . . . . . . . . . . 12 9.1. Normative References . . . . . . . . . . . . . . . . . . . 12 9.2. Informative References . . . . . . . . . . . . . . . . . . 12 Author's Address . . . . . . . . . . . . . . . . . . . . . . . . . 13 Intellectual Property and Copyright Statements . . . . . . . . . . 14 Boulton Expires August 25, 2008 [Page 2] Internet-Draft Control Package Attribute February 2008 1. Introduction The MEDIACTRL work group of the IETF has defined a Media Control Channel Framework[I-D.boulton-sip-control-framework]. The Media Control Channel Framework introduces the concept of Control Packages which are extensions to the core connection framework. The Control Package extension documents allow for the base mechanism to be extended for specific usages, in a similar way that RFC 3265 [RFC3265] has 'Event Packages'. A good example is the Basic IVR Control Package[I-D.boulton-ivr-control-package] that is also defined by the MEDIACTRL work group for basic Interactive Voice Response. Control Packages are identified using a unique registered token in a similar mechanism to other IETF technologies such as RFC 3265 [RFC3265]. The core Media Control Channel Framework provides a dynamic, session level negotiation mechanism to decide on a common set of Control Packages that are supported by both clients participating in a control framework session. A mechanism does not exist for clients to identify SIP Control Packages supported before the control channel has been established. This specification defines the SDP 'ctrl-package' media-level attribute which provides an indication of Control Package extensions that are supported. Boulton Expires August 25, 2008 [Page 3] Internet-Draft Control Package Attribute February 2008 2. Conventions and Terminology In this document, BCP 14/RFC 2119 [RFC2119] defines the key words "MUST", "MUST NOT", "REQUIRED", "SHALL", "SHALL NOT", "SHOULD", "SHOULD NOT", "RECOMMENDED", "NOT RECOMMENDED", "MAY", and "OPTIONAL". In addition, BCP 15 indicates requirement levels for compliant implementations. Boulton Expires August 25, 2008 [Page 4] Internet-Draft Control Package Attribute February 2008 3. The Ctrl-Package Attribute This specification defines a new media-level value attribute: 'ctrl- package'. Its formatting in SDP is described by the following ABNF[RFC5234]. ctrl-package-attribute = "a=ctrl-package:" 1*(SP ctrl-package-name) CRLF ctrl-package-name = token token = 1*(token-char) token-char = %x21 / %x23-27 / %x2A-2B / %x2D-2E / %x30-39 / %x41-5A / %x5E-7E The token-char and token elements are defined in RFC 4566 [RFC4566] but included here to provide support for the implementer of this SDP feature. The values of a 'ctrl-package' attribute consists of a token that has been appropriately defined by the Media Control Channel Framework extension procedures for Control packages. This includes appropriate registration. The 'ctrl-package' attribute serves as a complimentary mechanism to the Control Package extension negotiation mechanism that is defined in the Media Control Channel Framework. It serves as an initial hint to the negotiating endpoints on exactly what Control Packages are supported when creating a new control channel. This can be beneficial both from a resource allocation perspective and it could also result in two clients identifying they are not capable of successful control channel interactions. This would lead to early abandonment of control channel setup (for example, a client may choose to terminate the associated SIP dialog and not attempt to make the connection). It should be noted that the 'ctrl-package' attribute does not have any context outside the creation of a control channel using the Media Control Channel Framework. It is simply to provide two Media Control Framework clients an opportunity to convey supported Control Packages. The Media Control Channel Framework has its own dynamic negotiation mechanism that is used to negotiate session level supported Control Packages. Allowing such additional semantics during an active Control Framework session would result in confusing and conflicting operation. For this reason, the 'ctrl-package' attribute MUST only be used in association with the value of 'new' defined for the 'connection' attribute in the COMEDIA[RFC4145] specification. This ensures that no conflicts take place between the Boulton Expires August 25, 2008 [Page 5] Internet-Draft Control Package Attribute February 2008 signalling layer and the underlying media control channel. Once a control channel has been established, the 'ctrl-package' attribute (and changes to it) has no impact on the Media Control Channel Framework session and should be ignored. Boulton Expires August 25, 2008 [Page 6] Internet-Draft Control Package Attribute February 2008 4. The Ctrl-Package Attribute in the Offer/Answer Model This specification does not define a means to discover whether or not the peer endpoint understands the 'ctrl-package' attribute because values contained in the attribute are informative and only intended as a hint at the offer/answer level. At the offer/answer level, the fact that an offer does not contain a 'ctrl-package' attribute does not imply that the answer should not contain one. As a result, this also implies that an offer containing a 'ctrl-package' attribute does not imply that the answer should contain one. Boulton Expires August 25, 2008 [Page 7] Internet-Draft Control Package Attribute February 2008 5. Example The following is an example of an SDP session description that uses the 'ctrl-package' attribute: v=0 o=originator 2890844526 2890842808 IN IP4 controller.example,com s=- i=A demo of the ctrl-package attribute c=IN IP4 controller.example.com t=0 0 m=application 7575 TCP/ESCS a=setup:active a=connection:new a=ctrl-package:msc-basic-ivr/1.0 Boulton Expires August 25, 2008 [Page 8] Internet-Draft Control Package Attribute February 2008 6. Security Considerations Security Considerations to be included in later versions of this document. Boulton Expires August 25, 2008 [Page 9] Internet-Draft Control Package Attribute February 2008 7. IANA Considerations Contact name: Chris Boulton cboulton@avaya.com. Attribute name: "ctrl-package". Type of attribute Media level. Subject to charset: Not. Purpose of attribute: The 'ctrl-package' attribute indicates supported Sip Control Framework extension documents that are supported in an associated media session. Allowed attribute values: A token. Boulton Expires August 25, 2008 [Page 10] Internet-Draft Control Package Attribute February 2008 8. Acknowledgments The authors would like to thank.... Boulton Expires August 25, 2008 [Page 11] Internet-Draft Control Package Attribute February 2008 9. References 9.1. Normative References [RFC2119] Bradner, S., "Key words for use in RFCs to Indicate Requirement Levels", BCP 14, RFC 2119, March 1997. [RFC4145] Yon, D. and G. Camarillo, "TCP-Based Media Transport in the Session Description Protocol (SDP)", RFC 4145, September 2005. [RFC4566] Handley, M., Jacobson, V., and C. Perkins, "SDP: Session Description Protocol", RFC 4566, July 2006. [RFC5234] Crocker, D. and P. Overell, "Augmented BNF for Syntax Specifications: ABNF", STD 68, RFC 5234, January 2008. 9.2. Informative References [I-D.boulton-ivr-control-package] Boulton, C., Melanchuk, T., and S. McGlashan, "A Basic Interactive Voice Response (IVR) Control Package for the Session Initiation Protocol (SIP)", draft-boulton-ivr-control-package-05 (work in progress), November 2007. [I-D.boulton-sip-control-framework] Boulton, C., "A Control Framework for the Session Initiation Protocol (SIP)", draft-boulton-sip-control-framework-05 (work in progress), February 2007. [RFC3265] Roach, A., "Session Initiation Protocol (SIP)-Specific Event Notification", RFC 3265, June 2002. Boulton Expires August 25, 2008 [Page 12] Internet-Draft Control Package Attribute February 2008 Author's Address Chris Boulton Avaya Building 3 Wern Fawr Lane St Mellons Cardiff, South Wales CF3 5EA Email: cboulton@avaya.com Boulton Expires August 25, 2008 [Page 13] Internet-Draft Control Package Attribute February 2008 Full Copyright Statement Copyright (C) The IETF Trust (2008). This document is subject to the rights, licenses and restrictions contained in BCP 78, and except as set forth therein, the authors retain all their rights. This document and the information contained herein are provided on an "AS IS" basis and THE CONTRIBUTOR, THE ORGANIZATION HE/SHE REPRESENTS OR IS SPONSORED BY (IF ANY), THE INTERNET SOCIETY, THE IETF TRUST AND THE INTERNET ENGINEERING TASK FORCE DISCLAIM ALL WARRANTIES, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO ANY WARRANTY THAT THE USE OF THE INFORMATION HEREIN WILL NOT INFRINGE ANY RIGHTS OR ANY IMPLIED WARRANTIES OF MERCHANTABILITY OR FITNESS FOR A PARTICULAR PURPOSE. Intellectual Property The IETF takes no position regarding the validity or scope of any Intellectual Property Rights or other rights that might be claimed to pertain to the implementation or use of the technology described in this document or the extent to which any license under such rights might or might not be available; nor does it represent that it has made any independent effort to identify any such rights. Information on the procedures with respect to rights in RFC documents can be found in BCP 78 and BCP 79. Copies of IPR disclosures made to the IETF Secretariat and any assurances of licenses to be made available, or the result of an attempt made to obtain a general license or permission for the use of such proprietary rights by implementers or users of this specification can be obtained from the IETF on-line IPR repository at http://www.ietf.org/ipr. The IETF invites any interested party to bring to its attention any copyrights, patents or patent applications, or other proprietary rights that may cover technology that may be required to implement this standard. Please address the information to the IETF at ietf-ipr@ietf.org. Acknowledgment Funding for the RFC Editor function is provided by the IETF Administrative Support Activity (IASA). Boulton Expires August 25, 2008 [Page 14]