Internet Engineering Task Force      Audio/Video Transport Working Group
INTERNET-DRAFT                                                 S. Casner
draft-ietf-avt-rtcp-bw-03.txt                              Packet Design
                                                           March 1, 2001
                                                 Expires: August 1, 2001


               SDP Bandwidth Modifiers for RTCP Bandwidth

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.

                                Abstract

     This document defines an extension to the Session Description Pro-
     tocol (SDP) to specify two additional modifiers for the bandwidth
     attribute.  These modifiers may be used to specify the bandwidth
     allowed for RTCP packets in a Real-Time Transport Protocol (RTP)
     session.















                           Expires August 2001                [Page 1]


Internet Draft        draft-ietf-avt-rtcp-bw-03.txt           March 2001


1.  Introduction

The Real-Time Transport Protocol (RTP), RFC 1889 (under revision as
draft-ietf-avt-rtp-new [1]), includes a control protocol RTCP which pro-
vides synchronization information from data senders and feedback infor-
mation from data receivers.

Normally, the amount of bandwidth allocated to RTCP in an RTP session is
5% of the session bandwidth.  For some applications, it may be appropri-
ate to specify the RTCP bandwidth independently of the session band-
width.  Using a separate parameter allows rate-adaptive applications to
set an RTCP bandwidth consistent with a "typical" data bandwidth that is
lower than the maximum bandwidth specified by the session bandwidth
parameter.  That allows the RTCP bandwidth to be kept under 5% of the
data bandwidth when the rate has been adapted downward.

The RTP specification allows a profile to specify that the RTCP band-
width may be divided into two separate session parameters for those par-
ticipants which are active data senders and those which are not.  Using
two parameters allows RTCP reception reports to be turned off entirely
for a particular session by setting the RTCP bandwidth for non-data-
senders to zero while keeping the RTCP bandwidth for data senders non-
zero so that sender reports can still be sent for inter- media synchro-
nization.  This may be appropriate for systems operating on unidirec-
tional links or for sessions that don't require feedback on the quality
of reception.

This memo defines an extension to the Session Description Protocol
(SDP), RFC 2327 [2], to specify RTCP bandwidth for senders and non-
senders (receivers).

2.  SDP Extensions

The Session Description Protocol includes an optional bandwidth
attribute with the following syntax:

     b=<modifier>:<bandwidth-value>

where <modifier> is a single alphanumeric word giving the meaning of the
bandwidth figure, and <bandwidth-value> is in kilobits per second.  This
attribute specifies the proposed bandwidth to be used by the session or
media.

A typical use is with the modifier "AS" (for Application Specific Maxi-
mum) which may be used to specify the total bandwidth for a single media
stream from one site (source).





                           Expires August 2001                [Page 2]


Internet Draft        draft-ietf-avt-rtcp-bw-03.txt           March 2001


This memo defines two additional bandwidth modifiers:

     b=RS:<bandwidth-value>

     b=RR:<bandwidth-value>

where "RS" indicates the RTCP bandwidth allocated to active data senders
(as defined by the RTP spec) and "RR" indicates the RTCP bandwidth allo-
cated to other participants in the RTP session (i.e., receivers).

The <bandwidth-value> for these modifiers is in units of bits per second
with an integer value.

     NOTE!!!  This specification is in conflict with the SDP spec which
     prescribes that the <bandwidth-value> for all bandwidth modifiers
     should be an integer number of kilobits per second.  This discrep-
     ancy is forced by the fact that the desired RTCP bandwidth setting
     may be less than 1 kb/s.

     At the 44th IETF meeting in Minneapolis, two solutions were consid-
     ered: allow fractional values, or specify that the units for these
     particular modifiers would be in bits per second.  The second
     choice was preferred so that the syntax would not be changed.  The
     SDP spec is to be modified to allow this change in semantics when
     it advances to Draft Standard.

3.  Default values

If either or both of the RS and RR bandwidth specifiers are omitted, the
default values for these parameters are as specified in the RTP profile
in use for the session in question.  For the Audio/Video Profile, RFC
1890 (under revision as draft-ietf-avt-profile-new [3]), the defaults
follow the recommendations of the RTP spec:

     o The total RTCP bandwidth is 5% of the session bandwidth.  If one
       of these RTCP bandwidth specifiers is omitted, its value is 5%
       minus the value of the other one.  If both are omitted, the
       sender and receiver RTCP bandwidths are 1.25% and 3.75% of the
       session bandwidth, respectively.

     o At least 1/4 of of the RTCP bandwidth is dedicated to active data
       senders.  When the proportion of senders is greater than 1/4 of
       the participants, the senders get their proportion of the sum of
       these parameters.

This memo does not impose limits on the values that may be specified
with the RR and RS modifiers, other than that they must be non-negative.
However, the RTP specification and the appropriate RTP profile may



                           Expires August 2001                [Page 3]


Internet Draft        draft-ietf-avt-rtcp-bw-03.txt           March 2001


specify limits.

4.  Precedence

An SDP description consists of a session-level description (details that
apply to the whole session and all media streams) and zero or more
media-level descriptions (details that apply only to a single media
stream).  Bandwidth specifiers may be present either at the session
level to specify the total bandwidth shared by all media, or in the
media sections to specify the bandwidth allocated to each medium, or
both.  This is true for the two RTCP bandwidth modifiers defined here as
well.

Since the bandwidth allocated to RTCP is a fraction of the session band-
width when not specified explicitly using the modifiers defined here,
there is an interaction between the session bandwidth and RTCP bandwidth
specifiers at the session and media levels of the SDP description.  The
precedence of these specifiers is as follows:

1) Explicit RR or RS specifier at media level

2) Explicit RR or RS specifier at session level

3) Default based on session bandwidth specifier at media level

4) Default based on session bandwidth specifier at session level

In particular, the relationship of (2) and (3) means that if the RR
bandwidth is specified as zero at the session level, that turns off RTCP
transmission for non-data-senders in all media.

5.  Example

An example SDP description is:

















                           Expires August 2001                [Page 4]


Internet Draft        draft-ietf-avt-rtcp-bw-03.txt           March 2001


        v=0
        o=mhandley 2890844526 2890842807 IN IP4 126.16.64.4
        s=SDP Seminar
        i=A Seminar on the session description protocol
        c=IN IP4 224.2.17.12/127
        t=2873397496 2873404696
        m=audio 49170 RTP/AVP 0
        b=AS:64
        b=RR:800
        b=RS:2400
        m=video 51372 RTP/AVP 31
        b=AS:256
        b=RR:800
        b=RS:2400


In this example the explicit RTCP bandwidths for the audio medium are
equal to the defaults and so could be omitted.  However, for the video
medium the RTCP bandwidths have been set according to a data bandwidth
of 64 kb/s even though the maximum data bandwidth is specified as 256
kb/s.  This is based on the assumption that the video data bandwidth
will automatically adapt to a lower value based on network conditions.

6.  Registration with IANA

RFC 2327 requires that new bandwidth modifiers be registered with IANA
by reference to a standards-track RFC specifying the semantics of the
bandwidth modifier precisely, indicating when it should be used, and why
the existing registered bandwidth specifiers do not suffice.

This memo is intended to satisfy those requirements.


7.  Security Considerations

This memo defines bandwidth modifier keywords as an extension to SDP, so
the security considerations listed in the SDP specification apply to
session descriptions containing these modifiers as with any other.

The bandwidth value supplied with one of these modifiers could be unrea-
sonably large and cause the application to send RTCP packets at an
excessive rate, resulting in a denial of service.  This is similar to
the risk that an unreasonable bandwidth could be specified for the media
data, though encoders generally have a limited bandwidth range.  Appli-
cations should apply validity checks to all parameters received in an
SDP description, particular one which is not authenticated.  This memo
cannot specify limits because they are dependent on the RTP profile and
application.



                           Expires August 2001                [Page 5]


Internet Draft        draft-ietf-avt-rtcp-bw-03.txt           March 2001


8.  References

[1] H. Schulzrinne, S. Casner, R. Frederick, and V. Jacobson, "RTP:
    A Transport Protocol for real-time applications," RFC 1889,
    January 1996, updated by draft-ietf-avt-rtp-new (Work in
    Progress).

[2] M. Handley and V. Jacobson, "SDP: Session Description Protocol",
    RFC 2327, April 1998.

[3] H. Schulzrinne, S. Casner, "RTP profile for audio and video
    conferences with minimal control", RFC 1890, January 1996, updated
    by draft-ietf-avt-profile-new (Work in Progress).



9.  Author's Address

   Stephen L. Casner
   Packet Design
   2465 Latham Street
   Mountain View, CA 94040
   Phone: +1 650 943-1843
   Email: casner@acm.org



























                           Expires August 2001                [Page 6]