Internet Engineering Task Force                                   SIP WG
Internet Draft                                              G. Camarillo
                                                                Ericsson
                                                          H. Schulzrinne
                                                     Columbia University
                                                               E. Burger
                                                      SnowShore Networks
draft-camarillo-mmusic-source-sink-00.txt
September 10, 2002
Expires: March 2003


  The source and sink attributes for the Session Description Protocol

STATUS OF THIS MEMO

   This document is an Internet-Draft and is in full conformance with
   all provisions of Section 10 of RFC2026.

   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

   To view the list Internet-Draft Shadow Directories, see
   http://www.ietf.org/shadow.html.


Abstract

   This document defines two media level SDP attributes, namely source
   and sink. They are intended to be used to invoke services that
   involve media manipulation, such as transcoding services.










G. Camarillo et. al.                                          [Page 1]


Internet Draft                    SIP                 September 10, 2002





                           Table of Contents



   1          Introduction ........................................    3
   1.1        Terminology .........................................    3
   2          Applicability .......................................    3
   3          Syntax of source and sink ...........................    3
   4          SDP example .........................................    4
   5          Use of Source and Sink with SIP .....................    4
   6          Open Issue ..........................................    5
   7          IANA considerations .................................    5
   8          Acknowledgements ....................................    5
   9          Authors' Addresses ..................................    5
   10         Normative References ................................    5
   11         Informative References ..............................    6
































G. Camarillo et. al.                                          [Page 2]


Internet Draft                    SIP                 September 10, 2002


1 Introduction

   Servers performing media manipulations, such as transcoding or
   mixing, take the contents of one or several media streams as input
   and send their output over another media stream. A client requesting
   this type of service from a server needs to identify which media
   streams are to be used as input and which ones will be used to send
   the output of the media manipulation process. This document defines
   two SDP media level attributes, namely source and sink, that can be
   used to explicitly convey this information in an SDP session
   description.

1.1 Terminology

   In this document, the key words "MUST", "MUST NOT", "REQUIRED",
   "SHALL", "SHALL NOT", "SHOULD", "SHOULD NOT", "RECOMMENDED", "MAY",
   and "OPTIONAL" are to be interpreted as described in RFC 2119 [1] and
   indicate requirement levels for compliant SIP implementations.

2 Applicability

   A server that provides simple media manipulation services between a
   single unidirectional input (recvonly) stream and a single
   unidirectional output (sendonly) stream, such as a text-to-speech
   server, does not need to specify source and sink attributes in the
   SDP. However, a server that needs to correlate more than the simple
   media manipulation service needs a mechanism to specify which media
   descriptions refer to which directionality of the input streams.

   Thus, servers that use SDP [2] to provide more complex services that
   involve more media streams (like some of the ones described by [5])
   SHOULD make use of the source and sink attributes.

   The source and sink attributes MUST NOT be used to perform media
   alignment between SIP [3] user agents. The nth matching rules defined
   by the offer/answer model [4] must be used regardless of the presence
   or absence of the sink and source attributes.

3 Syntax of source and sink

   We define the following media level SDP attributes:



        source-attribute    =  "a=source:" identification-tag
        sink-attribute      =  "a=sink:" identification-tag
        identification-tag  =  token




G. Camarillo et. al.                                          [Page 3]


Internet Draft                    SIP                 September 10, 2002


   An SDP session description that contains a media stream with a
   particular identification tag in a source attribute MUST have the
   same identification tag in, at least, one sink attribute. An SDP
   session description that contains a media stream with a particular
   identification tag in a sink attribute MUST have the same
   identification tag in, at least, one source attribute.

   If an entity receives a session description that breaks the rules
   stated above, it MUST act as if it had received a malformed session
   description.

4 SDP example

   The SDP session description below sent to a server indicates that
   incoming audio from the first stream has to be sent over the second
   audio stream and over the text stream. Incoming text has to be sent
   over the first audio stream (but not over the second one). The exact
   media manipulations to be applied are typically identified by the URI
   that identifies the service [6] (e.g., sip:texttospeech@domain.com).



            m=audio 40000 RTP/AVP 0
            c=IN IP4 B.domain.com
            a=source:1
            a=sink:2
            m=audio 20000 RTP/AVP 0
            c=IN IP4 A.domain.com
            a=recvonly
            a=sink:1
            m=text 20002 RTP/AVP t140
            c=IN IP4 A.domain.com
            a=source:2
            a=sink:1



5 Use of Source and Sink with SIP

   A user agent that wishes to use the source and sink attributes adds
   them to an offer. The answerer SHOULD copy the same source and sink
   attributes in its answer for all the streams that were accepted
   (i.e., their port number is different than zero).

   An answerer that understand the source and sink attributes MUST NOT
   add or remove any of them from a stream that was accepted. The
   offerer knows whether the answerer understands these attributes
   because the answer will contain source and sink attributes. If the



G. Camarillo et. al.                                          [Page 4]


Internet Draft                    SIP                 September 10, 2002


   answerer does not understand them, the answer will not contain source
   and sink attributes.

6 Open Issue

   Right now, an offerer discovers whether or not the answerer supports
   source and sink by checking if there are source and sink attributes
   in the answer. If the answerer did not support source and sink, the
   offerer can send a BYE right away.

   If such a behavior is not acceptable, we could define a SIP option
   tag to be used in the Require header field associated with source and
   sink.

7 IANA considerations

   This document defines two media level SDP attributes: "source" and
   "sink".

8 Acknowledgements

   Jeff Van Dyke provided useful comments on this document.

9 Authors' Addresses

   Gonzalo Camarillo
   Ericsson
   Advanced Signalling Research Lab.
   FIN-02420 Jorvas
   Finland
   electronic mail:  Gonzalo.Camarillo@ericsson.com

   Henning Schulzrinne
   Dept. of Computer Science
   Columbia University
   1214 Amsterdam Avenue
   New York, NY 10027
   USA
   electronic mail:  schulzrinne@cs.columbia.edu

   Eric W. Burger
   SnowShore Networks, Inc.
   Chelmsford, MA
   USA
   electronic mail:  eburger@snowshore.com

10 Normative References




G. Camarillo et. al.                                          [Page 5]


Internet Draft                    SIP                 September 10, 2002


   [1] S. Bradner, "Key words for use in RFCs to indicate requirement
   levels," RFC 2119, Internet Engineering Task Force, Mar. 1997.

   [2] M. Handley and V. Jacobson, "SDP: session description protocol,"
   RFC 2327, Internet Engineering Task Force, Apr. 1998.

   [3] J. Rosenberg, H. Schulzrinne, G. Camarillo, A. Johnston, J.
   Peterson, R. Sparks, M. Handley, and E. Schooler, "SIP: session
   initiation protocol," RFC 3261, Internet Engineering Task Force, June
   2002.

   [4] J. Rosenberg and H. Schulzrinne, "An offer/answer model with
   session description protocol (SDP)," RFC 3264, Internet Engineering
   Task Force, June 2002.

11 Informative References

   [5] N. Charlton  et al.  , "User requirements for the session
   initiation protocol (SIP) in support of deaf, hard of hearing and
   speech-impaired individuals," Internet Draft, Internet Engineering
   Task Force, Apr. 2002.  Work in progress.

   [6] J. V. Dyke, E. Burger, A. Spitzer, and W. O'Connor, "Basic
   network media services with SIP," Internet Draft, Internet
   Engineering Task Force, July 2002.  Work in progress.


   Full Copyright Statement

   Copyright (c) The Internet Society (2002). All Rights Reserved.

   This document and translations of it may be copied and furnished to
   others, and derivative works that comment on or otherwise explain it
   or assist in its implementation may be prepared, copied, published
   and distributed, in whole or in part, without restriction of any
   kind, provided that the above copyright notice and this paragraph are
   included on all such copies and derivative works. However, this
   document itself may not be modified in any way, such as by removing
   the copyright notice or references to the Internet Society or other
   Internet organizations, except as needed for the purpose of
   developing Internet standards in which case the procedures for
   copyrights defined in the Internet Standards process must be
   followed, or as required to translate it into languages other than
   English.

   The limited permissions granted above are perpetual and will not be
   revoked by the Internet Society or its successors or assigns.




G. Camarillo et. al.                                          [Page 6]


Internet Draft                    SIP                 September 10, 2002


   This document and the information contained herein is provided on an
   "AS IS" basis and THE INTERNET SOCIETY AND THE INTERNET ENGINEERING
   TASK FORCE DISCLAIMS 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.













































G. Camarillo et. al.                                          [Page 7]