[Search] [txt|pdf|bibtex] [Tracker] [Email] [Nits]

Versions: 00 01                                                         
MMUSIC Working Group                                         A. Johnston
Internet-Draft                                                  WorldCom
Expires: April 27, 2003                                        R. Sparks
                                                             dynamicsoft
                                                        October 27, 2002


           Session Description Protocol Offer Answer Examples
             draft-johnston-mmusic-offer-answer-examples-00

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.

   The list of Internet-Draft Shadow Directories can be accessed at
   http://www.ietf.org/shadow.html.

   This Internet-Draft will expire on April 27, 2003.

Copyright Notice

   Copyright (C) The Internet Society (2002).  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.







Johnston & Sparks        Expires April 27, 2003                 [Page 1]


Internet-Draft         SDP Offer Answer Examples            October 2002


Table of Contents

   1.  Overview . . . . . . . . . . . . . . . . . . . . . . . . . . .  3
   2.  Codec Negotiation and Selection  . . . . . . . . . . . . . . .  3
   2.1 Audio: 3 offered, 1 accepted, Video: 2 offered, 1 accepted . .  3
   2.2 Audio: 3 offered, 2 accepted, Video declined, second
       exchange Audio: 1 offered, 1 accepted  . . . . . . . . . . . .  4
   2.3 Audio: 3 offered, 1 accepted with different dynamic
       payload, Video: 2 offered, 1 accepted  . . . . . . . . . . . .  6
   2.4 Audio: sendrecv and sendonly established . . . . . . . . . . .  7
   2.5 Audio and Video established in first exchange, second
       exchange changes address and port  . . . . . . . . . . . . . .  7
   2.6 Two audio streams offered, one accepted, one declined  . . . .  9
   2.7 Audio and Video session established, second video codec
       added in second exchange . . . . . . . . . . . . . . . . . . .  9
   2.8 Audio: 3 offered, 1 accepted, Video: 2 offered, 1 accepted
       with different address . . . . . . . . . . . . . . . . . . . . 11
   3.  Hold and Resume Scenarios  . . . . . . . . . . . . . . . . . . 12
   3.1 Audio: offered, placed on hold in answer, counter offer
       taken off hold . . . . . . . . . . . . . . . . . . . . . . . . 12
   3.2 Two Audio Streams established in initial exchange - one is
       put on hold in second exchange . . . . . . . . . . . . . . . . 13
   4.  Addition and Deletion of Media Streams . . . . . . . . . . . . 14
   4.1 Audio: 1 stream established in first exchange, 2nd
       exchange establishes 2nd one-way stream  . . . . . . . . . . . 14
   4.2 Audio session established, video added after second
       exchange . . . . . . . . . . . . . . . . . . . . . . . . . . . 15
   4.3 Two media streams established in the first exchange, one
       is deleted in the second exchange  . . . . . . . . . . . . . . 17
   5.  Third Party Call Control (3pcc)  . . . . . . . . . . . . . . . 18
   5.1 No media offered and accepted, media added in second
       exchange . . . . . . . . . . . . . . . . . . . . . . . . . . . 18
   5.2 Audio: 0.0.0.0 in offer, accepted, second exchange,
       address changed and stream established . . . . . . . . . . . . 19
   5.3 Audio: offered, accepted with address 0.0.0.0, second
       exchange, address changed and stream established . . . . . . . 20
   6.  Security Considerations  . . . . . . . . . . . . . . . . . . . 22
       References . . . . . . . . . . . . . . . . . . . . . . . . . . 22
       Authors' Addresses . . . . . . . . . . . . . . . . . . . . . . 22
       Full Copyright Statement . . . . . . . . . . . . . . . . . . . 23











Johnston & Sparks        Expires April 27, 2003                 [Page 2]


Internet-Draft         SDP Offer Answer Examples            October 2002


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].

   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)
   [5] examples are also given.

   The following sections contain examples in which two parties, Alice
   and Bob, exchange SDP offers, answers, and, in some cases, counter
   (additional) offers and answers.

2. Codec Negotiation and Selection

2.1 Audio: 3 offered, 1 accepted, Video: 2 offered, 1 accepted

   This common scenario shows a video and audio session in which
   multiple codecs are offered but only one is accepted.  As a result of
   the exchange shown below, Alice may send only PCMU audio and MPV
   video, but Bob may send either PCMU, PCMA, or iLBC audio and either
   H261 or MPV video.  Note: Dynamic payload type 97 is used for iLBC
   codec.























Johnston & Sparks        Expires April 27, 2003                 [Page 3]


Internet-Draft         SDP Offer Answer Examples            October 2002


    [Offer]

      v=0
      o=alice 2890844526 2890844526 IN IP4 host.anywhere.com
      s=
      c=IN IP4 host.anywhere.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
      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.there.com
      s=
      c=IN IP4 host.there.com
      t=0 0
      m=audio 49174 RTP/AVP 0
      a=rtpmap:0 PCMU/8000
      m=video 49170 RTP/AVP 32
      a=rtpmap:32 MPV/90000



2.2 Audio: 3 offered, 2 accepted, Video declined, second exchange Audio:
    1 offered, 1 accepted

   Alice can support PCMU, PCMA, and iLBC codecs, but not more than one
   at the same time.  Alice offers all three to maximize chances of a
   successful exchange and Bob accepts two of them.  Audio only session
   is established in initial exchange between Alice and Bob using either
   PCMU or PCMA codecs (payload type in RTP packet tells which is being
   used).  Since Alice only supports one audio codec at a time, a
   counter offer is made with just that one codec to limit the codec
   choice to just one.

   Note: the version number is incremented in both SDP messages in the
   counter exchange.  Now only PCMU codec may be used for media session
   between Alice and Bob.

   Note: The declined video stream still present in the second exchange
   of SDP with ports set to zero.




Johnston & Sparks        Expires April 27, 2003                 [Page 4]


Internet-Draft         SDP Offer Answer Examples            October 2002


   [Offer]

      v=0
      o=alice 2890844526 2890844526 IN IP4 host.anywhere.com
      s=
      c=IN IP4 host.anywhere.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
      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.there.com
      s=
      c=IN IP4 host.there.com
      t=0 0
      m=audio 49172 RTP/AVP 0 8
      a=rtpmap:0 PCMU/8000
      a=rtpmap:8 PCMA/8000
      m=video 0 RTP/AVP 31
      a=rtpmap:31 H261/90000

    [Counter-Offer]

      v=0
      o=alice 2890844526 2890844527 IN IP4 host.anywhere.com
      s=
      c=IN IP4 host.anywhere.com
      t=0 0
      m=audio 51372 RTP/AVP 0
      a=rtpmap:0 PCMU/8000
      m=video 0 RTP/AVP 31
      a=rtpmap:31 H261/90000

   [Counter-Answer]

      v=0
      o=bob 2808844564 2808844565 IN IP4 host.there.com
      s=
      c=IN IP4 host.there.com
      t=0 0
      m=audio 49172 RTP/AVP 0



Johnston & Sparks        Expires April 27, 2003                 [Page 5]


Internet-Draft         SDP Offer Answer Examples            October 2002


      a=rtpmap:0 PCMU/8000
      m=video 0 RTP/AVP 31
      a=rtpmap:31 H261/90000



2.3 Audio: 3 offered, 1 accepted with different dynamic payload, Video:
    2 offered, 1 accepted

   As a result of this exchange, Bob can send with either PCMU, PCMA, or
   iLBC for audio and H261 or MPV for video.  Alice can send with iLBC
   and H261.

   Note: change of dynamic payload type from 97 to 99 between the offer
   and the answer is OK since it references same codec.


    [Offer]

      v=0
      o=alice 2890844526 2890844526 IN IP4 host.anywhere.com
      s=
      c=IN IP4 host.anywhere.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
      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.there.com
      s=
      c=IN IP4 host.there.com
      t=0 0
      m=audio 49172 RTP/AVP 99
      a=rtpmap:99 iLBC
      m=video 51374 RTP/AVP 31
      a=rtpmap:31 H261/90000








Johnston & Sparks        Expires April 27, 2003                 [Page 6]


Internet-Draft         SDP Offer Answer Examples            October 2002


2.4 Audio: sendrecv and sendonly established

   Alice sends but can not receive RFC 2833 tones [4] in a separate
   audio stream.  Bob accepts both audio streams.


    [Offer]

      v=0
      o=alice 2890844526 2890844526 IN IP4 host.anywhere.com
      s=
      c=IN IP4 host.anywhere.com
      t=0 0
      m=audio 49170 RTP/AVP 0 97
      a=rtpmap:0 PCMU/8000
      a=rtpmap:97 iLBC
      m=audio 49172 RTP/AVP 98
      a=rtpmap:98 telephone-event
      a=sendonly

   [Answer]

      v=0
      o=bob 2808844564 2808844564 IN IP4 host.there.com
      s=
      c=IN IP4 host.there.com
      t=0 0
      m=audio 49172 RTP/AVP 97
      a=rtpmap:97 iLBC
      m=audio 49174 RTP/AVP 98
      a=rtpmap:98 telephone-event
      a=recvonly



2.5 Audio and Video established in first exchange, second exchange
    changes address and port

   Alice and Bob establish an audio and video session.  In a second
   exchange, Bob changes his address for media and Alice accepts with
   the same SDP as the initial exchange (and does not increment the
   version number).

    [Offer]

      v=0
      o=alice 2890844526 2890844526 IN IP4 host.anywhere.com
      s=



Johnston & Sparks        Expires April 27, 2003                 [Page 7]


Internet-Draft         SDP Offer Answer Examples            October 2002


      c=IN IP4 host.anywhere.com
      t=0 0
      m=audio 49170 RTP/AVP 97
      a=rtpmap:97 iLBC
      m=video 51372 RTP/AVP 31
      a=rtpmap:31 H261/90000

   [Answer]

      v=0
      o=bob 2808844564 2808844564 IN IP4 host.there.com
      s=
      c=IN IP4 host.there.com
      t=0 0
      m=audio 49174 RTP/AVP 97
      a=rtpmap:0 PCMU/8000
      m=video 49170 RTP/AVP 31
      a=rtpmap:31 H261/90000

   [Counter-Offer]

      v=0
      o=bob 2808844564 2808844565 IN IP4 host.there.com
      s=
      c=IN IP4 newhost.there.com
      t=0 0
      m=audio 49178 RTP/AVP 97
      a=rtpmap:0 PCMU/8000
      m=video 49188 RTP/AVP 31
      a=rtpmap:31 H261/90000

   [Counter-Answer]

      v=0
      o=alice 2890844526 2890844526 IN IP4 host.anywhere.com
      s=
      c=IN IP4 host.anywhere.com
      t=0 0
      m=audio 49170 RTP/AVP 97
      a=rtpmap:97 iLBC
      m=video 51372 RTP/AVP 31
      a=rtpmap:31 H261/90000









Johnston & Sparks        Expires April 27, 2003                 [Page 8]


Internet-Draft         SDP Offer Answer Examples            October 2002


2.6 Two audio streams offered, one accepted, one declined

   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 counter offered declining one of the
   streams, as shown in Section 4.3.



   [Offer]

      v=0
      o=alice 2890844526 2890844526 IN IP4 host.anywhere.com
      s=
      c=IN IP4 host.anywhere.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


   [Answer]

      v=0
      o=bob 2808844564 2808844564 IN IP4 host.there.com
      s=
      c=IN IP4 host.there.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




2.7 Audio and Video session established, second video codec added in
    second exchange

   Alice and Bob establish an audio and video session in the first
   exchange.  In the second exchange, Alice adds a second video codec
   which Bob accepts.




Johnston & Sparks        Expires April 27, 2003                 [Page 9]


Internet-Draft         SDP Offer Answer Examples            October 2002


    [Offer]

      v=0
      o=alice 2890844526 2890844526 IN IP4 host.anywhere.com
      s=
      c=IN IP4 host.anywhere.com
      t=0 0
      m=audio 49170 RTP/AVP 99
      a=rtpmap:99 iLBC
      m=video 51372 RTP/AVP 31
      a=rtpmap:31 H261/90000

   [Answer]

      v=0
      o=bob 2808844564 2808844564 IN IP4 host.there.com
      s=
      c=IN IP4 host.there.com
      t=0 0
      m=audio 49172 RTP/AVP 99
      a=rtpmap:99 iLBC
      m=video 51374 RTP/AVP 31
      a=rtpmap:31 H261/90000

   [Counter-Offer]

      v=0
      o=alice 2890844526 2890844527 IN IP4 host.anywhere.com
      s=
      c=IN IP4 host.anywhere.com
      t=0 0
      m=audio 49170 RTP/AVP 99
      a=rtpmap:99 iLBC
      m=video 51372 RTP/AVP 31 32
      a=rtpmap:31 H261/90000
      a=rtpmap:32 MPV/90000

   [Counter-Answer]

      v=0
      o=bob 2808844564 2808844565 IN IP4 host.there.com
      s=
      c=IN IP4 host.there.com
      t=0 0
      m=audio 49172 RTP/AVP 99
      a=rtpmap:99 iLBC
      m=video 51374 RTP/AVP 31 32
      a=rtpmap:31 H261/90000



Johnston & Sparks        Expires April 27, 2003                [Page 10]


Internet-Draft         SDP Offer Answer Examples            October 2002


      a=rtpmap:32 MPV/90000



2.8 Audio: 3 offered, 1 accepted, Video: 2 offered, 1 accepted with
    different address

   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
   offers audio and video and Bob accepts.



    [Offer]

      v=0
      o=alice 2890844526 2890844526 IN IP4 host.anywhere.com
      s=
      c=IN IP4 host.anywhere.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
      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.there.com
      s=
      c=IN IP4 host.there.com
      t=0 0
      m=audio 49174 RTP/AVP 0
      a=rtpmap:0 PCMU/8000
      c=IN IP4 otherhost.there.com

      m=video 49172 RTP/AVP 32
      a=rtpmap:32 MPV/90000








Johnston & Sparks        Expires April 27, 2003                [Page 11]


Internet-Draft         SDP Offer Answer Examples            October 2002


3. Hold and Resume Scenarios

3.1 Audio: offered, placed on hold in answer, counter offer taken off
    hold

   Alice calls Bob, but Bob answers placing Alice on hold.  Bob then
   takes Alice off hold in the counter offer.  Alice changes port number
   in the second exchange.  The media session between Alice and Bob is
   now active after Alice's counter answer.  Note that a=sendrecv could
   be present in both counter-offer and counter-exchange.  This is a
   common flow in 3pcc [5] scenarios.


   [Offer]

      v=0
      o=alice 2890844526 2890844526 IN IP4 host.anywhere.com
      s=
      c=IN IP4 host.anywhere.com
      t=0 0
      m=audio 49170 RTP/AVP 0 97
      a=rtpmap:0 PCMU/8000
      a=rtpmap:97 iLBC

   [Answer]

      v=0
      o=bob 2808844564 2808844564 IN IP4 host.there.com
      s=
      c=IN IP4 placeholder.there.com
      t=0 0
      m=audio 49172 RTP/AVP 97
      a=rtpmap:97 iLBC
      a=sendonly

   [Counter-Offer]

      v=0
      o=bob 2808844564 2808844565 IN IP4 host.there.com
      s=
      c=IN IP4 host.there.com
      t=0 0
      m=audio 49170 RTP/AVP 97
      a=rtpmap:97 iLBC

   [Counter-Answer]

      v=0



Johnston & Sparks        Expires April 27, 2003                [Page 12]


Internet-Draft         SDP Offer Answer Examples            October 2002


      o=alice 2890844526 2890844527 IN IP4 host.anywhere.com
      s=
      c=IN IP4 host.anywhere.com
      t=0 0
      m=audio 49178 RTP/AVP 97
      a=rtpmap:97 iLBC



3.2 Two Audio Streams established in initial exchange - one is put on
    hold in second exchange

   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.anywhere.com
      s=
      c=IN IP4 host.anywhere.com
      t=0 0
      m=audio 49170 RTP/AVP 0 97
      a=rtpmap:0 PCMU/8000
      a=rtpmap:97 iLBC
      m=audio 49172 RTP/AVP 98
      a=rtpmap:98 telephone-event
      a=sendonly

   [Answer]

      v=0
      o=bob 2808844564 2808844564 IN IP4 host.there.com
      s=
      c=IN IP4 host.there.com
      t=0 0
      m=audio 49172 RTP/AVP 97
      a=rtpmap:97 iLBC
      m=audio 49174 RTP/AVP 98
      a=rtpmap:98 telephone-event
      a=recvonly

   [Counter-Offer]

      v=0



Johnston & Sparks        Expires April 27, 2003                [Page 13]


Internet-Draft         SDP Offer Answer Examples            October 2002


      o=bob 2808844564 2808844565 IN IP4 host.there.com
      s=
      c=IN IP4 host.there.com
      t=0 0
      m=audio 49172 RTP/AVP 97
      a=rtpmap:97 iLBC
      a=sendonly
      m=audio 49174 RTP/AVP 98
      a=rtpmap:98 telephone-event
      a=recvonly

   [Counter-Answer]

      v=0
      o=alice 2890844526 2890844527 IN IP4 host.anywhere.com
      s=
      c=IN IP4 host.anywhere.com
      t=0 0
      m=audio 49170 RTP/AVP 0 97
      a=rtpmap:0 PCMU/8000
      a=rtpmap:97 iLBC
      m=audio 49172 RTP/AVP 98
      a=rtpmap:98 telephone-event
      a=sendonly



4. Addition and Deletion of Media Streams

   This section shows addition and deletion of media streams.

4.1 Audio: 1 stream established in first exchange, 2nd exchange
    establishes 2nd one-way stream

   The second stream is added by Bob's media server (different
   connection address) to 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]

      v=0
      o=alice 2890844526 2890844526 IN IP4 host.anywhere.com
      s=
      c=IN IP4 host.anywhere.com
      t=0 0



Johnston & Sparks        Expires April 27, 2003                [Page 14]


Internet-Draft         SDP Offer Answer Examples            October 2002


      m=audio 49170 RTP/AVP 0 97
      a=rtpmap:0 PCMU/8000
      a=rtpmap:97 iLBC

   [Answer]

      v=0
      o=bob 2808844564 2808844564 IN IP4 host.there.com
      s=
      c=IN IP4 host.there.com
      t=0 0
      m=audio 49170 RTP/AVP 97
      a=rtpmap:97 iLBC

   [Counter-Offer]

      v=0
      o=bob 2808844564 2808844565 IN IP4 host.there.com
      s=
      c=IN IP4 host.there.com
      t=0 0
      m=audio 49170 RTP/AVP 97
      a=rtpmap:97 iLBC
      c=IN IP4 mediaserver.there.com
      m=audio 48282 RTP/AVP 98
      a=rtpmap:98 telephone-events
      a=recvonly

   [Counter-Answer]

      v=0
      o=alice 2890844526 2890844527 IN IP4 host.anywhere.com
      s=
      c=IN IP4 host.anywhere.com
      t=0 0
      m=audio 49170 RTP/AVP 97
      a=rtpmap:97 iLBC
      c=IN IP4 host.anywhere.com
      m=audio 49172 RTP/AVP 98
      a=rtpmap:98 telephone-events
      a=sendonly



4.2 Audio session established, video added after second exchange

   Audio only session is established in initial exchange between Alice
   and Bob using PCMU codec.  Alice adds a video stream which is



Johnston & Sparks        Expires April 27, 2003                [Page 15]


Internet-Draft         SDP Offer Answer Examples            October 2002


   accepted by Bob.



   [Offer]

      v=0
      o=alice 2890844526 2890844526 IN IP4 host.anywhere.com
      s=
      c=IN IP4 host.anywhere.com
      t=0 0
      m=audio 49170 RTP/AVP 0
      a=rtpmap:0 PCMU/800

   [Answer]

      v=0
      o=bob 2808844564 2808844564 IN IP4 host.there.com
      s=
      c=IN IP4 host.there.com
      t=0 0
      m=audio 49172 RTP/AVP 0
      a=rtpmap:0 PCMU/8000

    [Counter-Offer]

      v=0
      o=alice 2890844526 2890844527 IN IP4 host.anywhere.com
      s=
      c=IN IP4 host.anywhere.com
      t=0 0
      m=audio 49170 RTP/AVP 0
      a=rtpmap:0 PCMU/8000
      m=video 49172 RTP/AVP 31
      a=rtpmap:31 H261/90000

   [Counter-Answer]

      v=0
      o=bob 2808844564 2808844565 IN IP4 host.there.com
      s=
      c=IN IP4 host.there.com
      t=0 0
      m=audio 49170 RTP/AVP 0
      a=rtpmap:0 PCMU/8000
      m=video 49168 RTP/AVP 31
      a=rtpmap:31 H261/90000




Johnston & Sparks        Expires April 27, 2003                [Page 16]


Internet-Draft         SDP Offer Answer Examples            October 2002


4.3 Two media streams established in the first exchange, one is deleted
    in the second exchange

   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.anywhere.com
      s=
      c=IN IP4 host.anywhere.com
      t=0 0
      m=audio 49170 RTP/AVP 97
      a=rtpmap:97 iLBC
      m=video 51372 RTP/AVP 31
      a=rtpmap:31 H261/90000

   [Answer]

      v=0
      o=bob 2808844564 2808844564 IN IP4 host.there.com
      s=
      c=IN IP4 host.there.com
      t=0 0
      m=audio 49174 RTP/AVP 97
      a=rtpmap:0 PCMU/8000
      m=video 49170 RTP/AVP 31
      a=rtpmap:31 H261/90000

   [Counter-Offer]

      v=0
      o=bob 2808844564 2808844565 IN IP4 host.there.com
      s=
      c=IN IP4 host.there.com
      t=0 0
      m=audio 49174 RTP/AVP 97
      a=rtpmap:0 PCMU/8000
      m=video 0 RTP/AVP 31
      a=rtpmap:31 H261/90000

   [Counter-Answer]

      v=0
      o=alice 2890844526 2890844527 IN IP4 host.anywhere.com
      s=



Johnston & Sparks        Expires April 27, 2003                [Page 17]


Internet-Draft         SDP Offer Answer Examples            October 2002


      c=IN IP4 host.anywhere.com
      t=0 0
      m=audio 49170 RTP/AVP 97
      a=rtpmap:97 iLBC
      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 offered and accepted, media added in second exchange

   The first offer from Alice contains no media lines, so Bob accepts
   with no media lines.  In the second exchange, Alice adds an audio
   stream which Bob accepts.
































Johnston & Sparks        Expires April 27, 2003                [Page 18]


Internet-Draft         SDP Offer Answer Examples            October 2002


    [Offer]

      v=0
      o=alice 2890844526 2890844526 IN IP4 host.anywhere.com
      s=
      c=IN IP4 host.anywhere.com
      t=0 0

   [Answer]

      v=0
      o=bob 2808844564 2808844564 IN IP4 host.there.com
      s=
      c=IN IP4 host.there.com
      t=0 0

   [Counter-Offer]

      v=0
      o=alice 2890844526 2890844527 IN IP4 host.anywhere.com
      s=
      c=IN IP4 host.anywhere.com
      t=0 0
      m=audio 49170 RTP/AVP 97
      a=rtpmap:97 iLBC

   [Counter-Answer]

      v=0
      o=bob 2808844564 2808844565 IN IP4 host.there.com
      s=
      c=IN IP4 host.there.com
      t=0 0
      m=audio 49172 RTP/AVP 97
      a=rtpmap:97 iLBC



5.2 Audio: 0.0.0.0 in offer, accepted, second exchange, address changed
    and stream established

   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.





Johnston & Sparks        Expires April 27, 2003                [Page 19]


Internet-Draft         SDP Offer Answer Examples            October 2002


    [Offer]

      v=0

      o=alice 2890844526 2890844526 IN IP4 host.anywhere.com
      s=
      c=IN IP4 0.0.0.0
      t=0 0
      m=audio 23442 RTP/AVP 97
      a=rtpmap:97 iLBC

   [Answer]

      v=0
      o=bob 2808844564 2808844564 IN IP4 host.there.com
      s=
      c=IN IP4 host.there.com
      t=0 0
      m=audio 49170 RTP/AVP 97
      a=rtpmap:97 iLBC

   [Counter-Offer]

      v=0
      o=alice 2890844526 2890844527 IN IP4 host.anywhere.com
      s=
      c=IN IP4 host.anywhere.com
      t=0 0
      m=audio 49170 RTP/AVP 97
      a=rtpmap:97 iLBC

   [Counter-Answer]

      v=0
      o=bob 2808844564 2808844564 IN IP4 host.there.com
      s=
      c=IN IP4 host.there.com
      t=0 0
      m=audio 49170 RTP/AVP 97
      a=rtpmap:97 iLBC



5.3 Audio: offered, accepted with address 0.0.0.0, second exchange,
    address changed and stream established

   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



Johnston & Sparks        Expires April 27, 2003                [Page 20]


Internet-Draft         SDP Offer Answer Examples            October 2002


   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
   established.


    [Offer]

      v=0
      o=alice 2890844526 2890844526 IN IP4 host.anywhere.com
      s=
      c=IN IP4 host.anywhere.com
      t=0 0
      m=audio 49170 RTP/AVP 97
      a=rtpmap:97 iLBC

   [Answer]

      v=0
      o=bob 2808844564 2808844564 IN IP4 host.there.com
      s=
      c=IN IP4 0.0.0.0
      t=0 0
      m=audio 9322 RTP/AVP 97
      a=rtpmap:97 iLBC

   [Counter-Offer]

      v=0
      o=bob 2808844564 2808844565 IN IP4 host.there.com
      s=
      c=IN IP4 host.there.com
      t=0 0
      m=audio 49172 RTP/AVP 97
      a=rtpmap:97 iLBC


   [Counter-Answer]

      v=0
      o=alice 2890844526 2890844526 IN IP4 host.anywhere.com
      s=
      c=IN IP4 host.anywhere.com
      t=0 0
      m=audio 49170 RTP/AVP 97
      a=rtpmap:97 iLBC





Johnston & Sparks        Expires April 27, 2003                [Page 21]


Internet-Draft         SDP Offer Answer Examples            October 2002


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.

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. Petrak, "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-02 (work
        in progress), June 2002.


Authors' Addresses

   Alan Johnston
   WorldCom
   100 South 4th Street
   St. Louis, MO  63104

   EMail: alan.johnston@wcom.com


   Robert J. Sparks
   dynamicsoft
   5100 Tennyson Parkway
   Suite 1200
   Plano, TX  75024

   EMail: rsparks@dynamicsoft.com




Johnston & Sparks        Expires April 27, 2003                [Page 22]


Internet-Draft         SDP Offer Answer Examples            October 2002


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.

   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.

Acknowledgement

   Funding for the RFC Editor function is currently provided by the
   Internet Society.



















Johnston & Sparks        Expires April 27, 2003                [Page 23]