draft-ietf-mmusic-offer-answer-examples-05.txt   draft-ietf-mmusic-offer-answer-examples-06.txt 
MMUSIC Working Group A. Johnston MMUSIC Working Group A. Johnston
Internet-Draft MCI Internet-Draft MCI
Expires: February 16, 2005 R. Sparks Expires: December 30, 2005 R. Sparks
dynamicsoft Estacado Systems
August 18, 2004 June 28, 2005
Session Description Protocol Offer Answer Examples Session Description Protocol Offer/Answer Examples
draft-ietf-mmusic-offer-answer-examples-05 draft-ietf-mmusic-offer-answer-examples-06
Status of this Memo Status of this Memo
This document is an Internet-Draft and is subject to all provisions By submitting this Internet-Draft, each author represents that any
of section 3 of RFC 3667. By submitting this Internet-Draft, each applicable patent or other IPR claims of which he or she is aware
author represents that any applicable patent or other IPR claims of have been or will be disclosed, and any of which he or she becomes
which he or she is aware have been or will be disclosed, and any of aware will be disclosed, in accordance with Section 6 of BCP 79.
which he or she become aware will be disclosed, in accordance with
RFC 3668.
Internet-Drafts are working documents of the Internet Engineering Internet-Drafts are working documents of the Internet Engineering
Task Force (IETF), its areas, and its working groups. Note that Task Force (IETF), its areas, and its working groups. Note that
other groups may also distribute working documents as other groups may also distribute working documents as Internet-
Internet-Drafts. Drafts.
Internet-Drafts are draft documents valid for a maximum of six months Internet-Drafts are draft documents valid for a maximum of six months
and may be updated, replaced, or obsoleted by other documents at any and may be updated, replaced, or obsoleted by other documents at any
time. It is inappropriate to use Internet-Drafts as reference time. It is inappropriate to use Internet-Drafts as reference
material or to cite them other than as "work in progress." material or to cite them other than as "work in progress."
The list of current Internet-Drafts can be accessed at The list of current Internet-Drafts can be accessed at
http://www.ietf.org/ietf/1id-abstracts.txt. http://www.ietf.org/ietf/1id-abstracts.txt.
The list of Internet-Draft Shadow Directories can be accessed at The list of Internet-Draft Shadow Directories can be accessed at
http://www.ietf.org/shadow.html. http://www.ietf.org/shadow.html.
This Internet-Draft will expire on February 16, 2005. This Internet-Draft will expire on December 30, 2005.
Copyright Notice Copyright Notice
Copyright (C) The Internet Society (2004). Copyright (C) The Internet Society (2005).
Abstract Abstract
This document gives examples of Session Description Protocol (SDP) This document gives examples of Session Description Protocol (SDP)
offer answer exchanges. Examples include codec negotiation and offer/answer exchanges. Examples include codec negotiation and
selection, hold and resume, and addition and deletion of media selection, hold and resume, and addition and deletion of media
streams. The examples show multiple media types, bidirectional, streams. The examples show multiple media types, bidirectional,
unidirectional, inactive streams and dynamic payload types. Common unidirectional, inactive streams and dynamic payload types. Common
Third Party Call Control (3pcc) examples are also given. Third Party Call Control (3pcc) examples are also given.
Table of Contents Table of Contents
1. Overview . . . . . . . . . . . . . . . . . . . . . . . . . . . 3 1. Overview . . . . . . . . . . . . . . . . . . . . . . . . . . . 3
2. Codec Negotiation and Selection . . . . . . . . . . . . . . . 3 2. Codec Negotiation and Selection . . . . . . . . . . . . . . . 3
2.1 Audio and Video 1 . . . . . . . . . . . . . . . . . . . . 3 2.1 Audio and Video 1 . . . . . . . . . . . . . . . . . . . . 3
2.2 Audio and Video 2 . . . . . . . . . . . . . . . . . . . . 4 2.2 Audio and Video 2 . . . . . . . . . . . . . . . . . . . . 4
2.3 Audio and Video 3 . . . . . . . . . . . . . . . . . . . . 6 2.3 Audio and Video 3 . . . . . . . . . . . . . . . . . . . . 6
2.4 Two Audio Streams . . . . . . . . . . . . . . . . . . . . 6 2.4 Two Audio Streams . . . . . . . . . . . . . . . . . . . . 6
2.5 Audio and Video 4 . . . . . . . . . . . . . . . . . . . . 7 2.5 Audio and Video 4 . . . . . . . . . . . . . . . . . . . . 7
2.6 Audio Only 1 . . . . . . . . . . . . . . . . . . . . . . . 8 2.6 Audio Only 1 . . . . . . . . . . . . . . . . . . . . . . . 9
2.7 Audio and Video 5 . . . . . . . . . . . . . . . . . . . . 9 2.7 Audio and Video 5 . . . . . . . . . . . . . . . . . . . . 9
2.8 Audio and Video 6 . . . . . . . . . . . . . . . . . . . . 11 2.8 Audio and Video 6 . . . . . . . . . . . . . . . . . . . . 11
3. Hold and Resume Scenarios . . . . . . . . . . . . . . . . . . 11 3. Hold and Resume Scenarios . . . . . . . . . . . . . . . . . . 12
3.1 Hold and Unhold 1 . . . . . . . . . . . . . . . . . . . . 11 3.1 Hold and Unhold 1 . . . . . . . . . . . . . . . . . . . . 12
3.2 Hold with Two Streams . . . . . . . . . . . . . . . . . . 13 3.2 Hold with Two Streams . . . . . . . . . . . . . . . . . . 13
4. Addition and Deletion of Media Streams . . . . . . . . . . . . 14 4. Addition and Deletion of Media Streams . . . . . . . . . . . . 15
4.1 Second Audio Stream Added . . . . . . . . . . . . . . . . 14 4.1 Second Audio Stream Added . . . . . . . . . . . . . . . . 15
4.2 Audio then Video Added . . . . . . . . . . . . . . . . . . 15 4.2 Audio then Video Added . . . . . . . . . . . . . . . . . . 17
4.3 Audio and Video, then Video Deleted . . . . . . . . . . . 16 4.3 Audio and Video, then Video Deleted . . . . . . . . . . . 18
5. Third Party Call Control (3pcc) . . . . . . . . . . . . . . . 18 5. Third Party Call Control (3pcc) . . . . . . . . . . . . . . . 20
5.1 No Media, then Audio Added . . . . . . . . . . . . . . . . 18 5.1 No Media, then Audio Added . . . . . . . . . . . . . . . . 20
5.2 Hold and Unhold 2 . . . . . . . . . . . . . . . . . . . . 19 5.2 Hold and Unhold 2 . . . . . . . . . . . . . . . . . . . . 21
5.3 Hold and Unhold 3 . . . . . . . . . . . . . . . . . . . . 20 5.3 Hold and Unhold 3 . . . . . . . . . . . . . . . . . . . . 22
6. Security Considerations . . . . . . . . . . . . . . . . . . . 21 6. Security Considerations . . . . . . . . . . . . . . . . . . . 23
7. IANA Considerations . . . . . . . . . . . . . . . . . . . . . 21 7. IANA Considerations . . . . . . . . . . . . . . . . . . . . . 23
8. Informative References . . . . . . . . . . . . . . . . . . . . 21 8. Informative References . . . . . . . . . . . . . . . . . . . . 23
Authors' Addresses . . . . . . . . . . . . . . . . . . . . . . 22 Authors' Addresses . . . . . . . . . . . . . . . . . . . . . . 24
Intellectual Property and Copyright Statements . . . . . . . . 23 Intellectual Property and Copyright Statements . . . . . . . . 25
1. Overview 1. Overview
This document describes offer answer examples of Session Description This document describes offer/answer examples of Session Description
Protocol (SDP) based on RFC 3264 [1]. The SDP in these examples are Protocol (SDP) based on RFC 3264 [1]. The SDP in these examples is
defined by RFC 2327 [2]. The offers and answers are assumed to be defined by RFC 2327 [2]. The offers and answers are assumed to be
transported using a protocol such as Session Initiation Protocol transported using a protocol such as Session Initiation Protocol
(SIP) [3]. (SIP) [3].
Examples include codec negotiation and selection, hold and resume, Examples include codec negotiation and selection, hold and resume,
and addition and deletion of media streams. The examples show and addition and deletion of media streams. The examples show
multiple media types, bidirectional, unidirectional, inactive streams multiple media types, bidirectional, unidirectional, inactive streams
and dynamic payload types. Common Third Party Call Control (3pcc) and dynamic payload types. Common Third Party Call Control (3pcc)
[5] examples are also given. [5] examples are also given.
skipping to change at page 6, line 46 skipping to change at page 6, line 46
s= s=
c=IN IP4 host.biloxi.example.com c=IN IP4 host.biloxi.example.com
t=0 0 t=0 0
m=audio 49172 RTP/AVP 99 m=audio 49172 RTP/AVP 99
a=rtpmap:99 iLBC/8000 a=rtpmap:99 iLBC/8000
m=video 51374 RTP/AVP 31 m=video 51374 RTP/AVP 31
a=rtpmap:31 H261/90000 a=rtpmap:31 H261/90000
2.4 Two Audio Streams 2.4 Two Audio Streams
Alice offers two separate streams, one audio with two codecs and the In this example, Alice wishes to establish separate audio streams,
other with RFC 2833 [4] tones (for DTMF). Bob accepts both audio one for normal audio and the other for telephone-events. Alice
streams choosing the iLBC codec and telephone-events. offers two separate streams, one audio with two codecs and the other
with RFC 2833 [4] tones (for DTMF). Bob accepts both audio streams
choosing the iLBC codec and telephone-events.
[Offer] [Offer]
v=0 v=0
o=alice 2890844526 2890844526 IN IP4 host.atlanta.example.com o=alice 2890844526 2890844526 IN IP4 host.atlanta.example.com
s= s=
c=IN IP4 host.atlanta.example.com c=IN IP4 host.atlanta.example.com
t=0 0 t=0 0
m=audio 49170 RTP/AVP 0 97 m=audio 49170 RTP/AVP 0 97
a=rtpmap:0 PCMU/8000 a=rtpmap:0 PCMU/8000
skipping to change at page 11, line 7 skipping to change at page 11, line 10
c=IN IP4 host.biloxi.example.com c=IN IP4 host.biloxi.example.com
t=0 0 t=0 0
m=audio 49172 RTP/AVP 99 m=audio 49172 RTP/AVP 99
a=rtpmap:99 iLBC/8000 a=rtpmap:99 iLBC/8000
m=video 51374 RTP/AVP 31 32 m=video 51374 RTP/AVP 31 32
a=rtpmap:31 H261/90000 a=rtpmap:31 H261/90000
a=rtpmap:32 MPV/90000 a=rtpmap:32 MPV/90000
2.8 Audio and Video 6 2.8 Audio and Video 6
This scenario shows an audio and video offer that is accepted, but This example shows an audio and video offer that is accepted, but the
the answerer wants the video sent to a different address than the answerer wants the video sent to a different address than the audio.
audio. This is a common scenario in conferencing where the video and This is a common scenario in conferencing where the video and audio
audio mixing utilizes different servers. In this example, Alice mixing utilizes different servers. In this example, Alice offers
offers audio and video and Bob accepts. audio and video and Bob accepts.
[Offer] [Offer]
v=0 v=0
o=alice 2890844526 2890844526 IN IP4 host.atlanta.example.com o=alice 2890844526 2890844526 IN IP4 host.atlanta.example.com
s= s=
c=IN IP4 host.atlanta.example.com c=IN IP4 host.atlanta.example.com
t=0 0 t=0 0
m=audio 49170 RTP/AVP 0 8 97 m=audio 49170 RTP/AVP 0 8 97
a=rtpmap:0 PCMU/8000 a=rtpmap:0 PCMU/8000
skipping to change at page 13, line 7 skipping to change at page 13, line 49
v=0 v=0
o=alice 2890844526 2890844527 IN IP4 host.atlanta.example.com o=alice 2890844526 2890844527 IN IP4 host.atlanta.example.com
s= s=
c=IN IP4 host.atlanta.example.com c=IN IP4 host.atlanta.example.com
t=0 0 t=0 0
m=audio 49178 RTP/AVP 97 m=audio 49178 RTP/AVP 97
a=rtpmap:97 iLBC/8000 a=rtpmap:97 iLBC/8000
3.2 Hold with Two Streams 3.2 Hold with Two Streams
Alice offers two media streams, a bidirectional audio stream and a In this example, two audio streams are established in the first
send only telephone event stream. Bob accepts both streams. Bob offer/answer exchange. In this second offer/answer exchange, one of
then puts Alice's audio stream on hold but not the tone stream. the audio streams ins placed on hold. Alice offers two media
Alice responds with identical SDP to the initial offer. streams, a bidirectional audio stream and a send only telephone event
stream. Bob accepts both streams. Bob then puts Alice's audio
stream on hold but not the tone stream. Alice responds with
identical SDP to the initial offer.
[Offer] [Offer]
v=0 v=0
o=alice 2890844526 2890844526 IN IP4 host.atlanta.example.com o=alice 2890844526 2890844526 IN IP4 host.atlanta.example.com
s= s=
c=IN IP4 host.atlanta.example.com c=IN IP4 host.atlanta.example.com
t=0 0 t=0 0
m=audio 49170 RTP/AVP 0 97 m=audio 49170 RTP/AVP 0 97
a=rtpmap:0 PCMU/8000 a=rtpmap:0 PCMU/8000
skipping to change at page 14, line 24 skipping to change at page 15, line 24
m=audio 49172 RTP/AVP 98 m=audio 49172 RTP/AVP 98
a=rtpmap:98 telephone-event/8000 a=rtpmap:98 telephone-event/8000
a=sendonly a=sendonly
4. Addition and Deletion of Media Streams 4. Addition and Deletion of Media Streams
This section shows addition and deletion of media streams. This section shows addition and deletion of media streams.
4.1 Second Audio Stream Added 4.1 Second Audio Stream Added
The second stream is added by Bob's media server (different In this example, the first offer/answer exchange establishes a single
connection address) to receive RFC 2833 telephone-events (DTMF audio stream with a single codec. The second offer/answer exchange
digits, typically) from Alice. Alice accepts. Even though the 2nd adds a second audio stream for telephone events. The second stream
stream is unidirectional, Alice receives RTCP packets on port 49173 is added by Bob's media server (different connection address) to
from the media server. receive RFC 2833 telephone-events (DTMF digits, typically) from
Alice. Alice accepts. Even though the 2nd stream is unidirectional,
Alice receives RTCP packets on port 49173 from the media server.
[Offer] [Offer]
v=0 v=0
o=alice 2890844526 2890844526 IN IP4 host.atlanta.example.com o=alice 2890844526 2890844526 IN IP4 host.atlanta.example.com
s= s=
c=IN IP4 host.atlanta.example.com c=IN IP4 host.atlanta.example.com
t=0 0 t=0 0
m=audio 49170 RTP/AVP 0 97 m=audio 49170 RTP/AVP 0 97
a=rtpmap:0 PCMU/8000 a=rtpmap:0 PCMU/8000
skipping to change at page 21, line 16 skipping to change at page 23, line 16
6. Security Considerations 6. Security Considerations
SDP offer and answer messages can contain private information about SDP offer and answer messages can contain private information about
addresses and sessions to be established between parties. If this addresses and sessions to be established between parties. If this
information needs to be kept private, some security mechanism in the information needs to be kept private, some security mechanism in the
protocol used to carry the offers and answers must be used. For SIP, protocol used to carry the offers and answers must be used. For SIP,
this means using TLS transport and/or S/MIME encryption of the SDP this means using TLS transport and/or S/MIME encryption of the SDP
message body. message body.
It is important that SDP offer and answer messages be properly
authenticated and authorized before using them to establish a media
session. Example SIP mechanisms include SIP Digest, certs, or
cryptographically verified SIP identity.
7. IANA Considerations 7. IANA Considerations
This document introduces no IANA considerations. This document introduces no IANA considerations.
8 Informative References 8. Informative References
[1] Rosenberg, J. and H. Schulzrinne, "An Offer/Answer Model with [1] Rosenberg, J. and H. Schulzrinne, "An Offer/Answer Model with
Session Description Protocol (SDP)", RFC 3264, June 2002. Session Description Protocol (SDP)", RFC 3264, June 2002.
[2] Handley, M. and V. Jacobson, "SDP: Session Description [2] Handley, M. and V. Jacobson, "SDP: Session Description
Protocol", RFC 2327, April 1998. Protocol", RFC 2327, April 1998.
[3] Rosenberg, J., Schulzrinne, H., Camarillo, G., Johnston, A., [3] Rosenberg, J., Schulzrinne, H., Camarillo, G., Johnston, A.,
Peterson, J., Sparks, R., Handley, M. and E. Schooler, "SIP: Peterson, J., Sparks, R., Handley, M., and E. Schooler, "SIP:
Session Initiation Protocol", RFC 3261, June 2002. Session Initiation Protocol", RFC 3261, June 2002.
[4] Schulzrinne, H. and S. Petrack, "RTP Payload for DTMF Digits, [4] Schulzrinne, H. and S. Petrack, "RTP Payload for DTMF Digits,
Telephony Tones and Telephony Signals", RFC 2833, May 2000. Telephony Tones and Telephony Signals", RFC 2833, May 2000.
[5] Rosenberg, J., Peterson, J., Schulzrinne, H. and G. Camarillo, [5] Rosenberg, J., Peterson, J., Schulzrinne, H., and G. Camarillo,
"Best Current Practices for Third Party Call Control (3pcc) in "Best Current Practices for Third Party Call Control (3pcc) in
the Session Initiation Protocol (SIP)", BCP 85, RFC 3725, April the Session Initiation Protocol (SIP)", BCP 85, RFC 3725,
2004. April 2004.
[6] Duric, A. and S. Andersen, "RTP Payload Format for iLBC Speech", [6] Duric, A. and S. Andersen, "Real-time Transport Protocol (RTP)
draft-ietf-avt-rtp-ilbc-05 (work in progress), June 2004. Payload Format for internet Low Bit Rate Codec (iLBC) Speech",
RFC 3952, December 2004.
Authors' Addresses Authors' Addresses
Alan Johnston Alan Johnston
MCI MCI
100 South 4th Street 100 South 4th Street
St. Louis, MO 63102 St. Louis, MO 63102
EMail: alan.johnston@mci.com Email: alan.johnston@mci.com
Robert J. Sparks Robert J. Sparks
dynamicsoft Estacado Systems
5100 Tennyson Parkway
Suite 1200
Plano, TX 75024
EMail: rsparks@dynamicsoft.com Email: RjS@estacado.net
Intellectual Property Statement Intellectual Property Statement
The IETF takes no position regarding the validity or scope of any The IETF takes no position regarding the validity or scope of any
Intellectual Property Rights or other rights that might be claimed to Intellectual Property Rights or other rights that might be claimed to
pertain to the implementation or use of the technology described in pertain to the implementation or use of the technology described in
this document or the extent to which any license under such rights 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 might or might not be available; nor does it represent that it has
made any independent effort to identify any such rights. Information made any independent effort to identify any such rights. Information
on the procedures with respect to rights in RFC documents can be on the procedures with respect to rights in RFC documents can be
skipping to change at page 23, line 41 skipping to change at page 25, line 41
This document and the information contained herein are provided on an This document and the information contained herein are provided on an
"AS IS" basis and THE CONTRIBUTOR, THE ORGANIZATION HE/SHE REPRESENTS "AS IS" basis and THE CONTRIBUTOR, THE ORGANIZATION HE/SHE REPRESENTS
OR IS SPONSORED BY (IF ANY), THE INTERNET SOCIETY AND THE INTERNET OR IS SPONSORED BY (IF ANY), THE INTERNET SOCIETY AND THE INTERNET
ENGINEERING TASK FORCE DISCLAIM ALL WARRANTIES, EXPRESS OR IMPLIED, ENGINEERING TASK FORCE DISCLAIM ALL WARRANTIES, EXPRESS OR IMPLIED,
INCLUDING BUT NOT LIMITED TO ANY WARRANTY THAT THE USE OF THE INCLUDING BUT NOT LIMITED TO ANY WARRANTY THAT THE USE OF THE
INFORMATION HEREIN WILL NOT INFRINGE ANY RIGHTS OR ANY IMPLIED INFORMATION HEREIN WILL NOT INFRINGE ANY RIGHTS OR ANY IMPLIED
WARRANTIES OF MERCHANTABILITY OR FITNESS FOR A PARTICULAR PURPOSE. WARRANTIES OF MERCHANTABILITY OR FITNESS FOR A PARTICULAR PURPOSE.
Copyright Statement Copyright Statement
Copyright (C) The Internet Society (2004). This document is subject Copyright (C) The Internet Society (2005). This document is subject
to the rights, licenses and restrictions contained in BCP 78, and to the rights, licenses and restrictions contained in BCP 78, and
except as set forth therein, the authors retain all their rights. except as set forth therein, the authors retain all their rights.
Acknowledgment Acknowledgment
Funding for the RFC Editor function is currently provided by the Funding for the RFC Editor function is currently provided by the
Internet Society. Internet Society.
 End of changes. 

This html diff was produced by rfcdiff 1.24, available from http://www.levkowetz.com/ietf/tools/rfcdiff/