Using Simulcast in Session Description Protocol (SDP) and RTP Sessions
RFC 8853

Document Type RFC - Proposed Standard (January 2021; No errata)
Authors Bo Burman  , Magnus Westerlund  , Suhas Nandakumar  , Mo Zanaty 
Last updated 2021-01-19
Replaces draft-burman-mmusic-sdp-simulcast
Stream Internet Engineering Task Force (IETF)
Formats plain text html xml pdf htmlized (tools) htmlized bibtex
Reviews
Stream WG state Submitted to IESG for Publication
Document shepherd Flemming Andreasen
Shepherd write-up Show (last changed 2018-03-06)
IESG IESG state RFC 8853 (Proposed Standard)
Action Holders
(None)
Consensus Boilerplate Yes
Telechat date
Responsible AD Ben Campbell
Send notices to (None)
IANA IANA review state Version Changed - Review Needed
IANA action state RFC-Ed-Ack


Internet Engineering Task Force (IETF)                         B. Burman
Request for Comments: 8853                                 M. Westerlund
Category: Standards Track                                       Ericsson
ISSN: 2070-1721                                            S. Nandakumar
                                                               M. Zanaty
                                                                   Cisco
                                                            January 2021

 Using Simulcast in Session Description Protocol (SDP) and RTP Sessions

Abstract

   In some application scenarios, it may be desirable to send multiple
   differently encoded versions of the same media source in different
   RTP streams.  This is called simulcast.  This document describes how
   to accomplish simulcast in RTP and how to signal it in the Session
   Description Protocol (SDP).  The described solution uses an RTP/RTCP
   identification method to identify RTP streams belonging to the same
   media source and makes an extension to SDP to indicate that those RTP
   streams are different simulcast formats of that media source.  The
   SDP extension consists of a new media-level SDP attribute that
   expresses capability to send and/or receive simulcast RTP streams.

Status of This Memo

   This is an Internet Standards Track document.

   This document is a product of the Internet Engineering Task Force
   (IETF).  It represents the consensus of the IETF community.  It has
   received public review and has been approved for publication by the
   Internet Engineering Steering Group (IESG).  Further information on
   Internet Standards is available in Section 2 of RFC 7841.

   Information about the current status of this document, any errata,
   and how to provide feedback on it may be obtained at
   https://www.rfc-editor.org/info/rfc8853.

Copyright Notice

   Copyright (c) 2021 IETF Trust and the persons identified as the
   document authors.  All rights reserved.

   This document is subject to BCP 78 and the IETF Trust's Legal
   Provisions Relating to IETF Documents
   (https://trustee.ietf.org/license-info) in effect on the date of
   publication of this document.  Please review these documents
   carefully, as they describe your rights and restrictions with respect
   to this document.  Code Components extracted from this document must
   include Simplified BSD License text as described in Section 4.e of
   the Trust Legal Provisions and are provided without warranty as
   described in the Simplified BSD License.

Table of Contents

   1.  Introduction
   2.  Definitions
     2.1.  Terminology
     2.2.  Requirements Language
   3.  Use Cases
     3.1.  Reaching a Diverse Set of Receivers
     3.2.  Application-Specific Media Source Handling
     3.3.  Receiver Media-Source Preferences
   4.  Overview
   5.  Detailed Description
     5.1.  Simulcast Attribute
     5.2.  Simulcast Capability
     5.3.  Offer/Answer Use
       5.3.1.  Generating the Initial SDP Offer
       5.3.2.  Creating the SDP Answer
       5.3.3.  Offerer Processing the SDP Answer
       5.3.4.  Modifying the Session
     5.4.  Use with Declarative SDP
     5.5.  Relating Simulcast Streams
     5.6.  Signaling Examples
       5.6.1.  Single-Source Client
       5.6.2.  Multisource Client
       5.6.3.  Simulcast and Redundancy
   6.  RTP Aspects
     6.1.  Outgoing from Endpoint with Media Source
     6.2.  RTP Middlebox to Receiver
       6.2.1.  Media-Switching Mixer
       6.2.2.  Selective Forwarding Middlebox
     6.3.  RTP Middlebox to RTP Middlebox
   7.  Network Aspects
     7.1.  Bitrate Adaptation
   8.  Limitation
   9.  IANA Considerations
   10. Security Considerations
   11. References
     11.1.  Normative References
     11.2.  Informative References
   Appendix A.  Requirements
   Acknowledgements
   Contributors
   Authors' Addresses

1.  Introduction

   Most of today's multiparty video-conference solutions make use of
   centralized servers to reduce the bandwidth and CPU consumption in
   the endpoints.  Those servers receive RTP streams from each
   participant and send some suitable set of possibly modified RTP
   streams to the rest of the participants, which usually have
   heterogeneous capabilities (screen size, CPU, bandwidth, codec,
   etc.).  One of the biggest issues is how to perform RTP stream
   adaptation to different participants' constraints with the minimum
   possible impact on both video quality and server performance.

   Simulcast is defined in this memo as the act of simultaneously
   sending multiple different encoded streams of the same media source
   -- e.g., the same video source encoded with different video-encoder
   types or image resolutions.  This can be done in several ways and for
   different purposes.  This document focuses on the case where it is
   desirable to provide a media source as multiple encoded streams over
   RTP [RFC3550] towards an intermediary so that the intermediary can
Show full document text