--- 1/draft-ietf-mmusic-offer-answer-examples-02.txt 2006-02-05 00:26:47.000000000 +0100 +++ 2/draft-ietf-mmusic-offer-answer-examples-03.txt 2006-02-05 00:26:47.000000000 +0100 @@ -1,82 +1,86 @@ MMUSIC Working Group A. Johnston Internet-Draft MCI -Expires: August 15, 2004 R. Sparks +Expires: December 29, 2004 R. Sparks dynamicsoft - February 15, 2004 + June 30, 2004 Session Description Protocol Offer Answer Examples - draft-ietf-mmusic-offer-answer-examples-02 + draft-ietf-mmusic-offer-answer-examples-03 Status of this Memo - This document is an Internet-Draft and is in full conformance with - all provisions of Section 10 of RFC2026. + By submitting this Internet-Draft, I certify that any applicable + patent or other IPR claims of which I am aware have been disclosed, + and any of which I become aware will be disclosed, in accordance with + RFC 3668. 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. + 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 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 15, 2004. + This Internet-Draft will expire on December 29, 2004. Copyright Notice Copyright (C) The Internet Society (2004). All Rights Reserved. Abstract This document gives examples of Session Description Protocol (SDP) offer answer exchanges. Examples include codec negotiation and selection, hold and resume, and addition and deletion of media streams. The examples show multiple media types, bidirectional, unidirectional, inactive streams and dynamic payload types. Common Third Party Call Control (3pcc) examples are also given. Table of Contents 1. Overview . . . . . . . . . . . . . . . . . . . . . . . . . . . 3 2. Codec Negotiation and Selection . . . . . . . . . . . . . . . 3 - 2.1 Audio and Video 1 . . . . . . . . . . . . . . . . . . . . . . 3 - 2.2 Audio and Video 2 . . . . . . . . . . . . . . . . . . . . . . 4 - 2.3 Audio and Video 3 . . . . . . . . . . . . . . . . . . . . . . 6 - 2.4 Two Audio Steams . . . . . . . . . . . . . . . . . . . . . . . 6 - 2.5 Audio and Video 4 . . . . . . . . . . . . . . . . . . . . . . 7 - 2.6 Audio Only 1 . . . . . . . . . . . . . . . . . . . . . . . . . 8 - 2.7 Audio and Video 5 . . . . . . . . . . . . . . . . . . . . . . 9 - 2.8 Audio and Video 6 . . . . . . . . . . . . . . . . . . . . . . 11 + 2.1 Audio and Video 1 . . . . . . . . . . . . . . . . . . . . 3 + 2.2 Audio and Video 2 . . . . . . . . . . . . . . . . . . . . 4 + 2.3 Audio and Video 3 . . . . . . . . . . . . . . . . . . . . 6 + 2.4 Two Audio Streams . . . . . . . . . . . . . . . . . . . . 6 + 2.5 Audio and Video 4 . . . . . . . . . . . . . . . . . . . . 7 + 2.6 Audio Only 1 . . . . . . . . . . . . . . . . . . . . . . . 8 + 2.7 Audio and Video 5 . . . . . . . . . . . . . . . . . . . . 9 + 2.8 Audio and Video 6 . . . . . . . . . . . . . . . . . . . . 11 3. Hold and Resume Scenarios . . . . . . . . . . . . . . . . . . 11 - 3.1 Hold and Unhold 1 . . . . . . . . . . . . . . . . . . . . . . 11 - 3.2 Hold with Two Streams . . . . . . . . . . . . . . . . . . . . 13 + 3.1 Hold and Unhold 1 . . . . . . . . . . . . . . . . . . . . 11 + 3.2 Hold with Two Streams . . . . . . . . . . . . . . . . . . 13 4. Addition and Deletion of Media Streams . . . . . . . . . . . . 14 - 4.1 Second Audio Stream Added . . . . . . . . . . . . . . . . . . 14 - 4.2 Audio then Video Added . . . . . . . . . . . . . . . . . . . . 15 - 4.3 Audio and Video, then Video Deleted . . . . . . . . . . . . . 16 + 4.1 Second Audio Stream Added . . . . . . . . . . . . . . . . 14 + 4.2 Audio then Video Added . . . . . . . . . . . . . . . . . . 15 + 4.3 Audio and Video, then Video Deleted . . . . . . . . . . . 16 5. Third Party Call Control (3pcc) . . . . . . . . . . . . . . . 18 - 5.1 No Media, then Audio Added . . . . . . . . . . . . . . . . . . 18 - 5.2 Hold and Unhold 2 . . . . . . . . . . . . . . . . . . . . . . 19 - 5.3 Hold and Unhold 3 . . . . . . . . . . . . . . . . . . . . . . 20 + 5.1 No Media, then Audio Added . . . . . . . . . . . . . . . . 18 + 5.2 Hold and Unhold 2 . . . . . . . . . . . . . . . . . . . . 19 + 5.3 Hold and Unhold 3 . . . . . . . . . . . . . . . . . . . . 20 6. Security Considerations . . . . . . . . . . . . . . . . . . . 21 7. Changes since -00 . . . . . . . . . . . . . . . . . . . . . . 21 8. Changes since -01 . . . . . . . . . . . . . . . . . . . . . . 21 - Informative References . . . . . . . . . . . . . . . . . . . . 21 + 9. Changes since -02 . . . . . . . . . . . . . . . . . . . . . . 21 + 10. Informative References . . . . . . . . . . . . . . . . . . . 21 Authors' Addresses . . . . . . . . . . . . . . . . . . . . . . 22 Intellectual Property and Copyright Statements . . . . . . . . 23 1. Overview This document describes offer answer examples of Session Description Protocol (SDP) based on RFC 3264 [1]. The SDP in these examples are defined by RFC 2327 [2]. The offers and answers are assumed to be transported using a protocol such as Session Initiation Protocol (SIP) [3]. @@ -103,21 +107,21 @@ [Offer] v=0 o=alice 2890844526 2890844526 IN IP4 host.atlanta.example.com s= c=IN IP4 host.atlanta.example.com t=0 0 m=audio 49170 RTP/AVP 0 8 97 a=rtpmap:0 PCMU/8000 a=rtpmap:8 PCMA/8000 - a=rtpmap:97 iLBC + a=rtpmap:97 iLBC/8000 m=video 51372 RTP/AVP 31 32 a=rtpmap:31 H261/90000 a=rtpmap:32 MPV/90000 [Answer] v=0 o=bob 2808844564 2808844564 IN IP4 host.biloxi.example.com s= c=IN IP4 host.biloxi.example.com @@ -148,21 +152,21 @@ [Offer] v=0 o=alice 2890844526 2890844526 IN IP4 host.atlanta.example.com s= c=IN IP4 host.atlanta.example.com t=0 0 m=audio 49170 RTP/AVP 0 8 97 a=rtpmap:0 PCMU/8000 a=rtpmap:8 PCMA/8000 - a=rtpmap:97 iLBC + a=rtpmap:97 iLBC/8000 m=video 51372 RTP/AVP 31 32 a=rtpmap:31 H261/90000 a=rtpmap:32 MPV/90000 [Answer] v=0 o=bob 2808844564 2808844564 IN IP4 host.biloxi.example.com s= c=IN IP4 host.biloxi.example.com @@ -209,122 +213,122 @@ [Offer] v=0 o=alice 2890844526 2890844526 IN IP4 host.atlanta.example.com s= c=IN IP4 host.atlanta.example.com t=0 0 m=audio 49170 RTP/AVP 0 8 97 a=rtpmap:0 PCMU/8000 a=rtpmap:8 PCMA/8000 - a=rtpmap:97 iLBC + a=rtpmap:97 iLBC/8000 m=video 51372 RTP/AVP 31 32 a=rtpmap:31 H261/90000 a=rtpmap:32 MPV/90000 [Answer] v=0 o=bob 2808844564 2808844564 IN IP4 host.biloxi.example.com s= c=IN IP4 host.biloxi.example.com t=0 0 m=audio 49172 RTP/AVP 99 - a=rtpmap:99 iLBC + a=rtpmap:99 iLBC/8000 m=video 51374 RTP/AVP 31 a=rtpmap:31 H261/90000 -2.4 Two Audio Steams +2.4 Two Audio Streams Alice 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] v=0 o=alice 2890844526 2890844526 IN IP4 host.atlanta.example.com s= c=IN IP4 host.atlanta.example.com t=0 0 m=audio 49170 RTP/AVP 0 97 a=rtpmap:0 PCMU/8000 - a=rtpmap:97 iLBC + a=rtpmap:97 iLBC/8000 m=audio 49172 RTP/AVP 98 - a=rtpmap:98 telephone-event + a=rtpmap:98 telephone-event/8000 a=sendonly [Answer] v=0 o=bob 2808844564 2808844564 IN IP4 host.biloxi.example.com s= c=IN IP4 host.biloxi.example.com t=0 0 m=audio 49172 RTP/AVP 97 - a=rtpmap:97 iLBC + a=rtpmap:97 iLBC/8000 m=audio 49174 RTP/AVP 98 - a=rtpmap:98 telephone-event + a=rtpmap:98 telephone-event/8000 a=recvonly 2.5 Audio and Video 4 Alice and Bob establish an audio and video session with a single audio and video codec. In a second exchange, Bob changes his address for media and Alice accepts with the same SDP as the initial exchange (and as a result does not increment the version number). [Offer] v=0 o=alice 2890844526 2890844526 IN IP4 host.atlanta.example.com s= c=IN IP4 host.atlanta.example.com t=0 0 m=audio 49170 RTP/AVP 97 - a=rtpmap:97 iLBC + a=rtpmap:97 iLBC/8000 m=video 51372 RTP/AVP 31 a=rtpmap:31 H261/90000 [Answer] v=0 o=bob 2808844564 2808844564 IN IP4 host.biloxi.example.com s= c=IN IP4 host.biloxi.example.com t=0 0 m=audio 49174 RTP/AVP 97 - a=rtpmap:97 iLBC + a=rtpmap:97 iLBC/8000 m=video 49170 RTP/AVP 31 a=rtpmap:31 H261/90000 [Second-Offer] v=0 o=bob 2808844564 2808844565 IN IP4 host.biloxi.example.com s= c=IN IP4 newhost.biloxi.example.com t=0 0 m=audio 49178 RTP/AVP 97 - a=rtpmap:97 iLBC + a=rtpmap:97 iLBC/8000 m=video 49188 RTP/AVP 31 a=rtpmap:31 H261/90000 [Second-Answer] v=0 o=alice 2890844526 2890844526 IN IP4 host.atlanta.example.com s= c=IN IP4 host.atlanta.example.com t=0 0 m=audio 49170 RTP/AVP 97 - a=rtpmap:97 iLBC + a=rtpmap:97 iLBC/8000 m=video 51372 RTP/AVP 31 a=rtpmap:31 H261/90000 2.6 Audio Only 1 Alice wishes to establish an audio session with Bob using either PCMU codec or iLBC codec with RFC2833 tones, but not both at the same time. The offer contains these two media streams. Bob declines the first one and accepts the second one. If both media streams had been accepted, Alice would have sent a second declining one of the @@ -333,90 +337,90 @@ [Offer] v=0 o=alice 2890844526 2890844526 IN IP4 host.atlanta.example.com s= c=IN IP4 host.atlanta.example.com t=0 0 m=audio 49170 RTP/AVP 0 a=rtpmap:0 PCMU/8000 m=audio 51372 RTP/AVP 97 101 - a=rtpmap:97 iLBC - a=rtpmap:101 telephone-events + a=rtpmap:97 iLBC/8000 + a=rtpmap:101 telephone-event/8000 [Answer] v=0 o=bob 2808844564 2808844564 IN IP4 host.biloxi.example.com s= c=IN IP4 host.biloxi.example.com t=0 0 m=audio 0 RTP/AVP 0 a=rtpmap:0 PCMU/8000 m=audio 49170 RTP/AVP 97 101 - a=rtpmap:97 iLBC - a=rtpmap:101 telephone-events + a=rtpmap:97 iLBC/8000 + a=rtpmap:101 telephone-event/8000 2.7 Audio and Video 5 Alice and Bob establish an audio and video session in the first exchange with a single audio and video codec. In the second exchange, Alice adds a second video codec which Bob accepts which allows Alice and Bob to switch between the two video codecs without another offer/answer exchange. [Offer] v=0 o=alice 2890844526 2890844526 IN IP4 host.atlanta.example.com s= c=IN IP4 host.atlanta.example.com t=0 0 m=audio 49170 RTP/AVP 99 - a=rtpmap:99 iLBC + a=rtpmap:99 iLBC/8000 m=video 51372 RTP/AVP 31 a=rtpmap:31 H261/90000 [Answer] v=0 o=bob 2808844564 2808844564 IN IP4 host.biloxi.example.com s= c=IN IP4 host.biloxi.example.com t=0 0 m=audio 49172 RTP/AVP 99 - a=rtpmap:99 iLBC + a=rtpmap:99 iLBC/8000 m=video 51374 RTP/AVP 31 a=rtpmap:31 H261/90000 [Second-Offer] v=0 o=alice 2890844526 2890844527 IN IP4 host.atlanta.example.com s= c=IN IP4 host.atlanta.example.com t=0 0 m=audio 49170 RTP/AVP 99 - a=rtpmap:99 iLBC + a=rtpmap:99 iLBC/8000 m=video 51372 RTP/AVP 31 32 a=rtpmap:31 H261/90000 a=rtpmap:32 MPV/90000 [Second-Answer] v=0 o=bob 2808844564 2808844565 IN IP4 host.biloxi.example.com s= c=IN IP4 host.biloxi.example.com t=0 0 m=audio 49172 RTP/AVP 99 - a=rtpmap:99 iLBC + a=rtpmap:99 iLBC/8000 m=video 51374 RTP/AVP 31 32 a=rtpmap:31 H261/90000 a=rtpmap:32 MPV/90000 2.8 Audio and Video 6 This scenario shows an audio and video offer that is accepted, but the answerer wants the video sent to a different address than the audio. This is a common scenario in conferencing where the video and audio mixing utilizes different servers. In this example, Alice @@ -425,21 +429,21 @@ [Offer] v=0 o=alice 2890844526 2890844526 IN IP4 host.atlanta.example.com s= c=IN IP4 host.atlanta.example.com t=0 0 m=audio 49170 RTP/AVP 0 8 97 a=rtpmap:0 PCMU/8000 a=rtpmap:8 PCMA/8000 - a=rtpmap:97 iLBC + a=rtpmap:97 iLBC/8000 m=video 51372 RTP/AVP 31 32 a=rtpmap:31 H261/90000 a=rtpmap:32 MPV/90000 [Answer] v=0 o=bob 2808844564 2808844564 IN IP4 host.biloxi.example.com s= c=IN IP4 host.biloxi.example.com @@ -463,114 +467,112 @@ [Offer] v=0 o=alice 2890844526 2890844526 IN IP4 host.atlanta.example.com s= c=IN IP4 host.atlanta.example.com t=0 0 m=audio 49170 RTP/AVP 0 97 a=rtpmap:0 PCMU/8000 - a=rtpmap:97 iLBC + a=rtpmap:97 iLBC/8000 [Answer] v=0 o=bob 2808844564 2808844564 IN IP4 host.biloxi.example.com s= c=IN IP4 placeholder.biloxi.example.com t=0 0 m=audio 49172 RTP/AVP 97 - a=rtpmap:97 iLBC + a=rtpmap:97 iLBC/8000 a=sendonly [Second-Offer] v=0 o=bob 2808844564 2808844565 IN IP4 host.biloxi.example.com s= c=IN IP4 host.biloxi.example.com t=0 0 m=audio 49170 RTP/AVP 97 - a=rtpmap:97 iLBC + a=rtpmap:97 iLBC/8000 [Second-Answer] v=0 o=alice 2890844526 2890844527 IN IP4 host.atlanta.example.com s= c=IN IP4 host.atlanta.example.com t=0 0 m=audio 49178 RTP/AVP 97 - a=rtpmap:97 iLBC + a=rtpmap:97 iLBC/8000 3.2 Hold with Two Streams Alice sends but can not receive RFC2833 tones in a separate audio stream. Bob accepts both audio 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] v=0 o=alice 2890844526 2890844526 IN IP4 host.atlanta.example.com s= c=IN IP4 host.atlanta.example.com t=0 0 m=audio 49170 RTP/AVP 0 97 a=rtpmap:0 PCMU/8000 - a=rtpmap:97 iLBC + a=rtpmap:97 iLBC/8000 m=audio 49172 RTP/AVP 98 - a=rtpmap:98 telephone-event + a=rtpmap:98 telephone-event/8000 a=sendonly [Answer] v=0 o=bob 2808844564 2808844564 IN IP4 host.biloxi.example.com s= c=IN IP4 host.biloxi.example.com t=0 0 m=audio 49172 RTP/AVP 97 - a=rtpmap:97 iLBC + a=rtpmap:97 iLBC/8000 m=audio 49174 RTP/AVP 98 - a=rtpmap:98 telephone-event + a=rtpmap:98 telephone-event/8000 a=recvonly [Second-Offer] v=0 o=bob 2808844564 2808844565 IN IP4 host.biloxi.example.com s= c=IN IP4 host.biloxi.example.com t=0 0 m=audio 49172 RTP/AVP 97 - a=rtpmap:97 iLBC + a=rtpmap:97 iLBC/8000 a=sendonly - m=audio 49174 RTP/AVP 98 - a=rtpmap:98 telephone-event + a=rtpmap:98 telephone-event/8000 a=recvonly - [Second-Answer] v=0 o=alice 2890844526 2890844527 IN IP4 host.atlanta.example.com s= c=IN IP4 host.atlanta.example.com t=0 0 m=audio 49170 RTP/AVP 0 97 a=rtpmap:0 PCMU/8000 - a=rtpmap:97 iLBC + a=rtpmap:97 iLBC/8000 m=audio 49172 RTP/AVP 98 - a=rtpmap:98 telephone-event + a=rtpmap:98 telephone-event/8000 a=sendonly 4. Addition and Deletion of Media Streams This section shows addition and deletion of media streams. 4.1 Second Audio Stream Added The second stream is added by Bob's media server (different connection address) to receive RFC 2833 telephone-events (DTMF @@ -580,58 +582,58 @@ [Offer] v=0 o=alice 2890844526 2890844526 IN IP4 host.atlanta.example.com s= c=IN IP4 host.atlanta.example.com t=0 0 m=audio 49170 RTP/AVP 0 97 a=rtpmap:0 PCMU/8000 - a=rtpmap:97 iLBC + a=rtpmap:97 iLBC/8000 [Answer] v=0 o=bob 2808844564 2808844564 IN IP4 host.biloxi.example.com s= c=IN IP4 host.biloxi.example.com t=0 0 m=audio 49170 RTP/AVP 97 - a=rtpmap:97 iLBC + a=rtpmap:97 iLBC/8000 [Second-Offer] v=0 o=bob 2808844564 2808844565 IN IP4 host.biloxi.example.com s= c=IN IP4 host.biloxi.example.com t=0 0 m=audio 49170 RTP/AVP 97 - a=rtpmap:97 iLBC + a=rtpmap:97 iLBC/8000 m=audio 48282 RTP/AVP 98 c=IN IP4 mediaserver.biloxi.example.com - a=rtpmap:98 telephone-events + a=rtpmap:98 telephone-event/8000 a=recvonly [Second-Answer] v=0 o=alice 2890844526 2890844527 IN IP4 host.atlanta.example.com s= c=IN IP4 host.atlanta.example.com t=0 0 m=audio 49170 RTP/AVP 97 - a=rtpmap:97 iLBC - c=IN IP4 host.atlanta.example.com + a=rtpmap:97 iLBC/8000 m=audio 49172 RTP/AVP 98 - a=rtpmap:98 telephone-events + c=IN IP4 host.atlanta.example.com + a=rtpmap:98 telephone-event/8000 a=sendonly 4.2 Audio then Video Added Audio only session is established in initial exchange between Alice and Bob using PCMU codec. Alice adds a video stream which is accepted by Bob. [Offer] @@ -677,63 +679,64 @@ m=video 49168 RTP/AVP 31 a=rtpmap:31 H261/90000 4.3 Audio and Video, then Video Deleted Alice and Bob establish an audio and video session. In a second exchange, Bob deletes the video session resulting in an audio only session. [Offer] + v=0 o=alice 2890844526 2890844526 IN IP4 host.atlanta.example.com s= c=IN IP4 host.atlanta.example.com t=0 0 m=audio 49170 RTP/AVP 97 - a=rtpmap:97 iLBC + a=rtpmap:97 iLBC/8000 m=video 51372 RTP/AVP 31 a=rtpmap:31 H261/90000 [Answer] v=0 o=bob 2808844564 2808844564 IN IP4 host.biloxi.example.com s= c=IN IP4 host.biloxi.example.com t=0 0 m=audio 49174 RTP/AVP 97 - a=rtpmap:0 PCMU/8000 + a=rtpmap:97 iLBC/8000 m=video 49170 RTP/AVP 31 a=rtpmap:31 H261/90000 [Second-Offer] v=0 o=bob 2808844564 2808844565 IN IP4 host.biloxi.example.com s= c=IN IP4 host.biloxi.example.com t=0 0 m=audio 49174 RTP/AVP 97 - a=rtpmap:97 iLBC + a=rtpmap:97 iLBC/8000 m=video 0 RTP/AVP 31 a=rtpmap:31 H261/90000 [Second-Answer] v=0 o=alice 2890844526 2890844527 IN IP4 host.atlanta.example.com s= c=IN IP4 host.atlanta.example.com t=0 0 m=audio 49170 RTP/AVP 97 - a=rtpmap:97 iLBC + a=rtpmap:97 iLBC/8000 m=video 0 RTP/AVP 31 a=rtpmap:31 H261/90000 5. Third Party Call Control (3pcc) This section shows examples common in Third Party Call Control (3pcc) flows [5]. Call hold and resume flows are also common in 3pcc. 5.1 No Media, then Audio Added @@ -758,236 +761,234 @@ t=0 0 [Second-Offer] v=0 o=alice 2890844526 2890844527 IN IP4 host.atlanta.example.com s= c=IN IP4 host.atlanta.example.com t=0 0 m=audio 49170 RTP/AVP 97 - a=rtpmap:97 iLBC + a=rtpmap:97 iLBC/8000 [Second-Answer] v=0 o=bob 2808844564 2808844565 IN IP4 host.biloxi.example.com s= c=IN IP4 host.biloxi.example.com t=0 0 m=audio 49172 RTP/AVP 97 - a=rtpmap:97 iLBC + a=rtpmap:97 iLBC/8000 5.2 Hold and Unhold 2 The first offer from Alice contains the connection address 0.0.0.0 and a random port number, which means that Bob can not send media to Alice (the media stream is "black holed" or "bh"). Bob accepts with normal SDP. In the second exchange, Alice changes the connection address, Bob accepts, and a media session is established. [Offer] v=0 o=alice 2890844526 2890844526 IN IP4 host.atlanta.example.com s= c=IN IP4 0.0.0.0 t=0 0 m=audio 23442 RTP/AVP 97 - a=rtpmap:97 iLBC + a=rtpmap:97 iLBC/8000 [Answer] v=0 o=bob 2808844564 2808844564 IN IP4 host.biloxi.example.com s= c=IN IP4 host.biloxi.example.com t=0 0 m=audio 49170 RTP/AVP 97 - a=rtpmap:97 iLBC + a=rtpmap:97 iLBC/8000 [Second-Offer] v=0 o=alice 2890844526 2890844527 IN IP4 host.atlanta.example.com s= c=IN IP4 host.atlanta.example.com t=0 0 m=audio 49170 RTP/AVP 97 - a=rtpmap:97 iLBC + a=rtpmap:97 iLBC/8000 [Second-Answer] v=0 o=bob 2808844564 2808844564 IN IP4 host.biloxi.example.com s= c=IN IP4 host.biloxi.example.com t=0 0 m=audio 49170 RTP/AVP 97 - a=rtpmap:97 iLBC + a=rtpmap:97 iLBC/8000 5.3 Hold and Unhold 3 The first offer from Alice contains an audio stream, but the answer from Bob contains the connection address 0.0.0.0 and a random port number, which means that Alice can not send media to Bob (the media - stream is "black holed" or "bh"). In the second exchange, Bob changes - the connection address, Alice accepts, and a media session is + stream is "black holed" or "bh"). In the second exchange, Bob + changes the connection address, Alice accepts, and a media session is established. [Offer] v=0 o=alice 2890844526 2890844526 IN IP4 host.atlanta.example.com s= c=IN IP4 host.atlanta.example.com t=0 0 m=audio 49170 RTP/AVP 97 - a=rtpmap:97 iLBC + a=rtpmap:97 iLBC/8000 [Answer] v=0 o=bob 2808844564 2808844564 IN IP4 host.biloxi.example.com s= c=IN IP4 0.0.0.0 t=0 0 m=audio 9322 RTP/AVP 97 - a=rtpmap:97 iLBC + a=rtpmap:97 iLBC/8000 [Second-Offer] v=0 o=bob 2808844564 2808844565 IN IP4 host.biloxi.example.com s= c=IN IP4 host.biloxi.example.com t=0 0 m=audio 49172 RTP/AVP 97 - a=rtpmap:97 iLBC + a=rtpmap:97 iLBC/8000 [Second-Answer] v=0 o=alice 2890844526 2890844526 IN IP4 host.atlanta.example.com s= c=IN IP4 host.atlanta.example.com t=0 0 m=audio 49170 RTP/AVP 97 - a=rtpmap:97 iLBC + a=rtpmap:97 iLBC/8000 6. Security Considerations SDP offer and answer messages can contain private information about addresses and sessions to be established between parties. If this information needs to be kept private, some security mechanism in the 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 message body. 7. Changes since -00 - Added asymmetrical codec and attribute examples 8. Changes since -01 - Removed asymmetrical codec and attribute examples - Updated references -Informative References +9. Changes since -02 + + - Updated references + + - Added sampling rate to iLBC rtmap lines + + - Added sampling rate to telephone-event rtmap lines + + - Fixed order of c= line in 4.1 Second Answer + + - Fixed a= line in 4.3 Answer + +10 Informative References [1] Rosenberg, J. and H. Schulzrinne, "An Offer/Answer Model with Session Description Protocol (SDP)", RFC 3264, June 2002. [2] Handley, M. and V. Jacobson, "SDP: Session Description Protocol", RFC 2327, April 1998. [3] Rosenberg, J., Schulzrinne, H., Camarillo, G., Johnston, A., Peterson, J., Sparks, R., Handley, M. and E. Schooler, "SIP: Session Initiation Protocol", RFC 3261, June 2002. [4] Schulzrinne, H. and S. Petrack, "RTP Payload for DTMF Digits, Telephony Tones and Telephony Signals", RFC 2833, May 2000. [5] Rosenberg, J., Peterson, J., Schulzrinne, H. and G. Camarillo, - "Best Current Practices for Third Party Call Control in the - Session Initiation Protocol", draft-ietf-sipping-3pcc-06 (work - in progress), January 2004. + "Best Current Practices for Third Party Call Control (3pcc) in + the Session Initiation Protocol (SIP)", BCP 85, RFC 3725, April + 2004. [6] Duric, A. and S. Andersen, "RTP Payload Format for iLBC Speech", draft-ietf-avt-rtp-ilbc-04 (work in progress), December 2003. - [7] Camarillo, G., Eriksson, G., Holler, J. and H. Schulzrinne, - "Grouping of Media Lines in the Session Description Protocol - (SDP)", RFC 3388, December 2002. - Authors' Addresses Alan Johnston MCI 100 South 4th Street St. Louis, MO 63102 EMail: alan.johnston@mci.com Robert J. Sparks dynamicsoft 5100 Tennyson Parkway Suite 1200 Plano, TX 75024 EMail: rsparks@dynamicsoft.com Intellectual Property Statement The IETF takes no position regarding the validity or scope of any - intellectual property 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 this document or the extent to which any license under such rights - might or might not be available; neither does it represent that it - has made any effort to identify any such rights. Information on the - IETF's procedures with respect to rights in standards-track and - standards-related documentation can be found in BCP-11. Copies of - claims of rights made available for publication 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 implementors or users of this specification can - be obtained from the IETF Secretariat. + 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 which may cover technology that may be required to practice - this standard. Please address the information to the IETF Executive - Director. - -Full Copyright Statement + 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. - Copyright (C) The Internet Society (2004). All Rights Reserved. +Disclaimer of Validity - 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. + 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 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. - The limited permissions granted above are perpetual and will not be - revoked by the Internet Society or its successors or assignees. +Copyright Statement - 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. + Copyright (C) The Internet Society (2004). 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. Acknowledgment Funding for the RFC Editor function is currently provided by the Internet Society.