Network Working Group                                              Q. Wu
Internet-Draft                                                    F. Xia
Intended status: Standards Track                                 R. Even
Expires: March 3, 29, 2012                                           Huawei
                                                         August 31,
                                                      September 26, 2011

               RTCP Extension for Third-party Loss Report
             draft-ietf-avtcore-feedback-supression-rtp-06
             draft-ietf-avtcore-feedback-supression-rtp-07

Abstract

   In a large RTP session using the RTCP feedback mechanism defined in
   RFC 4585, a feedback target may experience transient overload if some
   event causes a large number of receivers to send feedback at once.
   This overload is usually avoided by ensuring that feedback reports
   are forwarded to all receivers, allowing them to avoid sending
   duplicate feedback reports.  However, there are cases where it is not
   recommended to forward feedback reports, and this may allow feedback
   implosion.  This memo discusses these cases and defines a new RTCP
   third-party loss report that can be used to inform receivers that a
   feedback target the
   network is aware of some loss event, allowing them to suppress
   feedback.  Associated SDP signalling is also defined.

Status of this Memo

   This Internet-Draft is submitted in full conformance with the
   provisions of BCP 78 and BCP 79.

   Internet-Drafts are working documents of the Internet Engineering
   Task Force (IETF).  Note that other groups may also distribute
   working documents as Internet-Drafts.  The list of current Internet-
   Drafts is at http://datatracker.ietf.org/drafts/current/.

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

   This Internet-Draft will expire on March 3, 29, 2012.

Copyright Notice

   Copyright (c) 2011 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
   (http://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.

   This document may contain material from IETF Documents or IETF
   Contributions published or made publicly available before November
   10, 2008.  The person(s) controlling the copyright in some of this
   material may not have granted the IETF Trust the right to allow
   modifications of such material outside the IETF Standards Process.
   Without obtaining an adequate license from the person(s) controlling
   the copyright in such materials, this document may not be modified
   outside the IETF Standards Process, and derivative works of it may
   not be created outside the IETF Standards Process, except to format
   it for publication as an RFC or to translate it into languages other
   than English.

Table of Contents

   1.  Introduction . . . . . . . . . . . . . . . . . . . . . . . . .  4  3
   2.  Terminology  . . . . . . . . . . . . . . . . . . . . . . . . .  5  4
   3.  Protocol Overview  . . . . . . . . . . . . . . . . . . . . . .  5  4
   4.  Format of RTCP Feedback Messages . . . . . . . . . . . . . . .  6  5
     4.1.  Transport Layer Feedback:  Third-party Loss Report . . . .  6  5
     4.2.  Payload Specific Feedback: Third-party Loss Report . . . .  7  6
   5.  SDP Signaling  . . . . . . . . . . . . . . . . . . . . . . . .  8  7
   6.  Example Use Cases  . . . . . . . . . . . . . . . . . . . . . .  8
     6.1.  Source Specific Multicast (SSM) use case . . . . . . . . .  9  8
     6.2.  Unicast based Rapid Acquisition of Multicast Stream
           (RAMS) use case  . . . . . . . . . . . . . . . . . . . . . 10  9
     6.3.  RTP transport translator use case  . . . . . . . . . . . . 11  9
     6.4.  Multipoint Control Unit (MCU) use case . . . . . . . . . . 11  9
     6.5.  Mixer use Case . . . . . . . . . . . . . . . . . . . . . . 10
   7.  Security Considerations  . . . . . . . . . . . . . . . . . . . 12 10
   8.  IANA Consideration . . . . . . . . . . . . . . . . . . . . . . 12 11
   9.  Acknowledgement  . . . . . . . . . . . . . . . . . . . . . . . 13 12
   10. References . . . . . . . . . . . . . . . . . . . . . . . . . . 14 12
     10.1. Normative References . . . . . . . . . . . . . . . . . . . 14 12
     10.2. Informative References . . . . . . . . . . . . . . . . . . 14 13
   Appendix A.  Change Log  . . . . . . . . . . . . . . . . . . . . . 15 13
     A.1.  draft-ietf-avtcore-feedback-suppression-rtp-01 . . . . . . 15 13
     A.2.  draft-ietf-avtcore-feedback-suppression-rtp-02 . . . . . . 15 14
     A.3.  draft-ietf-avtcore-feedback-suppression-rtp-03 . . . . . . 16 14
     A.4.  draft-ietf-avtcore-feedback-suppression-rtp-04 . . . . . . 16 14
     A.5.  draft-ietf-avtcore-feedback-suppression-rtp-05 . . . . . . 16 15
     A.6.  draft-ietf-avtcore-feedback-suppression-rtp-06 . . . . . . 17 15
     A.7.  draft-ietf-avtcore-feedback-suppression-rtp-07 . . . . . . 15
   Authors' Addresses . . . . . . . . . . . . . . . . . . . . . . . . 17 16

1.  Introduction

   RTCP feedback messages [RFC4585] allow the receivers in an RTP
   session to report events and ask for action from the media source (or
   a delegated feedback target when using unicast RTCP feedback with SSM
   [RFC5760]).  There are cases where multiple receivers may initiate
   the same, or an equivalent message towards the same media source.
   When the receiver count is large, this behavior may cause transient
   overload of the media source, the network or both.  This is known as
   a "feedback storm" or a "NACK storm".  One common cause of such a
   feedback storm is receivers utilizing RTP retransmission [RFC4588] as
   a packet loss recovery technique based, sending feedback using RTCP
   NACK messages [RFC4585] without proper dithering of the
   retransmission requests. requests (e.g., implementing the RFC 4585 dithering
   rules or sending NACKs to a middlebox that doesn't redistribute them
   to other receivers).

   Another use case involves video Fast Update requests.  A storm of
   these feedback messages can occur in conversational multimedia
   scenarios like Topo-Video-switch-MCU [RFC5117]. multipoint video switching conference [RFC4587].  In
   this scenario,
   packet loss the receiver may happen on an upstream link lose synchronization with the video
   stream when speaker is changed in the middle of an intermediate network
   element such as a Multipoint Control Unit(MCU). session.  Poorly
   designed receivers that blindly issue fast update requests (i.e.,
   Full Intra Request (FIR) described in [RFC5104]), can cause an
   implosion of FIR requests from receivers to the same media source.

   RTCP feedback storms may cause short term overload, and in extreme
   cases to pose a possible risk of increasing network congestion on the
   control channel (e.g.  RTCP feedback), the data channel, or both.  It
   is therefore desirable to provide a way of suppressing unneeded
   feedback.

   One approach to this, suggested in [DVB-IPTV], involves sending a
   NACK message to the other clients (or receiver) in the same group as
   the sender of NACK.  However NACK is defined as a receiver report
   sent from a receiver observing a packet loss, therefore it only
   inform others that sender of NACK detected loss while the case the
   sender of the feedback has received reports that the indicated
   packets were lost is not covered.  This document specifies a new
   third-party loss report for this function.  It supplements the
   existing the use of RTCP NACK packet and further is more precise in
   the intended uses and less likely to be confusing where the network is active to
   receivers. suppress feedback.  It tells
   receivers explicitly that feedback for a particular packet or frame
   loss is not needed for a period of time and can provide an early
   indication before the receiver reacts to the loss and invokes its
   packet loss repair machinery.  Section 6 provides some examples of
   when to send the Third Party Loss Report message.  Section 6 provides
   some examples of when to send the Third Party Loss Report message.

2.  Terminology

   The keywords "MUST", "MUST NOT", "REQUIRED", "SHALL", "SHALL NOT",
   "SHOULD", "SHOULD NOT", "RECOMMENDED", "MAY", and "OPTIONAL" in this
   document are to be interpreted as described in [RFC2119].

3.  Protocol Overview

   This document extends the RTCP feedback messages defined in the
   Audio-Visual Profile with feedback (RTP/AVPF) [RFC4585] defining a
   Third Party Loss Report message.  The Third Party Loss Report message
   can be used by the media source or intermediaries to inform the receiver that the
   sender of the Third Party Loss Report has received reports that the
   indicated packets were lost, and asks the receiver not to send
   feedback to it regarding these packets.

   When a receiver gets a Third Party Loss Report message, it should
   refrain from sending a feedback request (e.g., NACK or FIR) for the
   missing packets reported in the message for a certain period of time.
   A receiver may still have sent a Feedback message according to the
   RTP/AVPF scheduling algorithm of [RFC4585]before receiving a Third
   Party Loss Report message, but further feedback messages for those
   sequence numbers will be suppressed by this technique for a certain
   period of time.  Nodes that do not understand the Third Party Loss
   Report message will ignore it, and might therefore still send
   feedback according to the AVPF scheduling algorithm of [RFC4585].
   The media source or intermediate nodes cannot assume that the use of
   a Third Party Loss Report message actually reduces the amount of
   feedback it receives.

   RTCP

   RTCP Third Party Loss Report follows the similar format of message
   type as RTCP NACK. NACK or Full Intra Request Command.  However, the Third
   Party Loss Report is defined as an indication that the sender of the
   feedback has received reports that the indicated packets were lost,
   while NACK [RFC4585] just indicates that the sender of the NACK
   observed that these packets were lost.  The Third Party Loss Report
   message is generated by a RTP system that has not seen the actual
   packet loss. loss and sent following the same timing rule as sending NACK
   defined in [RFC4585], e.g., The TPLR message may be sent in a regular
   full compound RTCP packet or in an early RTCP packet, as per AVPF.
   RTP Systems in the network that receive a Third Party Loss Report
   SHOULD NOT initiate their own additional Third Party Loss Report
   messages for the same packet sequence numbers.  They may either should simply
   forward the Third Party Loss Report message, or message received from upstream
   direction, additionally, they may generate their own Third Party Loss
   Report that reports a set of the losses they see, which are different
   from ones reported in the Third Party Loss report they received.  The
   Third Party Loss Report does not have the retransmission request
   [RFC4588] semantics.

   Since

   When a receiver gets a Third Party Loss Report interacts strongly with repair timing, message, it has to work together with should
   start a timer for this message and refrain from sending a feedback to not adversely impact
   request (e.g., NACK or FIR) for the
   repair of lost source packets.  One example is missing packets reported in the middle box gets
   message during the retransmitted packet by sending a NACK upstream and sent it
   downstream.  This retransmitted packet was lost lifetime of the timer.  The timer value shall be
   based on the downstream
   link.  In order to deal with this, the downstream observed round-trip time.  A receiver can start
   a timeout in which it expected should compute an
   estimate of the round-trip time (RTT) to get the sender of TPLR from RTCP
   report round-trip time if available, or its reception time of the
   reflected RTCP FB message (e.g.,NACK), or any other means.

   To increase the robustness to the loss of a retransmission TPLR or of a transmission
   packet, a receiver is allowed to receive additional TPLR for the same
   packet.  In the case the first TPLR is lost and the additional TPLR
   arrives at the receiver, the receiver should immediately refresh the
   timer.  When the timer for this timeout message expires and there is no
   retransmitted packet or a new Third Party Loss Report message, it can the
   receiver should take its normal behavior as if there is no current
   retransmission suppression.

   A receiver may still have sent a Feedback message according to the
   RTP/AVPF scheduling algorithm of [RFC4585] before receiving a Third
   Party Loss Report message, but further feedback messages for those
   sequence numbers will be suppressed by this technique for a certain
   period of time.  Nodes that do not understand the Third Party Loss
   Report message will ignore it, and might therefore still send
   feedback according to the AVPF scheduling algorithm of [RFC4585].
   The media source or intermediate nodes cannot assume that the use of
   a Third Party Loss Report message actually reduces the amount of
   feedback it receives.

   Since Third Party Loss Report interacts strongly with repair timing,
   it has to work together with feedback to not adversely impact the
   repair of lost source packets.  In order not to incur a lot of NACK
   requests due to additional TPLR described above, it is recommended
   that the case RTP system sending TPLR should be implemented more closer to
   the source.  Also when the loss was detected and repair initiated
   much closer to the source, the delay for the receiver to recover from
   packet loss can be reduced through the combination of intermediary
   feedback to the source and Third Party Loss Report downstream.

4.  Format of RTCP Feedback Messages

   This document registers two new RTCP Feedback messages for Third
   Party Loss Report.  Applications that are employing one or more loss-
   repair methods MAY use the Third Party Loss Report together with
   their existing loss-repair methods either for every packet they
   expect to receive, or for an application-specific subset of the RTP
   packets in a session.  In other words, receivers MAY ignore Third
   Party Loss Report messages, but SHOULD react to them unless they have
   good reason to still send feedback messages despite having been
   requested to suppress them.

4.1.  Transport Layer Feedback:  Third-party Loss Report

   This Third Party Loss Report message is an extension to the RTCP
   Transport Layer Feedback Report and identified by RTCP packet type
   value PT=RTPFB and FMT=TBD.

   The FCI field MUST contain one or more entries of transport layer

   Within the common packet header for feedback messages (as defined in
   section 6.1 of [RFC4585]), the "SSRC of packet sender" field
   indicates the source of the request, and the "SSRC of media source"
   denotes the media sender.

   The FCI field MUST contain one or more entries of transport layer
   third party loss Early Indication (TLLEI).  Each entry applies to a
   different the
   same media source, source identified by its SSRC. the SSRC contained in the SSRC of
   media source field of Feedback header.

   The Feedback Control Information (FCI) for TLLEI uses the similar
   format of message Types defined in the section 6.2.1 of [RFC4585].
   The format is shown in Figure 1.

         0                   1                   2                   3
        0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1
       +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
       |            PID                |             BLP               |
       +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+

         Figure 1: Message Format for the Third Party Loss Report

   Packet ID (PID): 16 bits

      The PID field is used to specify a lost packet.  The PID field
      refers to the RTP sequence number of the lost packet.

   bitmask of proceeding lost packets (BLP): 16 bits

      The BLP allows for reporting losses of any of the 16 RTP packets
      immediately following the RTP packet indicated by the PID.  The
      BLP's definition is identical to that given in [RFC4585].

4.2.  Payload Specific Feedback: Third-party Loss Report

   This message is an extension to the RTCP Payload Specific Feedback
   report and identified by RTCP packet type value PT=PSFB and FMT=TBD. FMT=TBD,
   which is used to suppress FIR [RFC5104]or PLI [RFC4585].

   Within the common packet header for feedback messages (as defined in
   section 6.1 of [RFC4585]), the "SSRC of packet sender" field
   indicates the source of the request, and the "SSRC of media source"
   is not used and SHALL be set to 0.  The SSRCs of the media senders to
   which this message applies are in the corresponding FCI entries.

   The FCI field MUST contain a Payload Specific Third Party Loss Early
   Indication (PSLEI) entry.  Each entry applies to a different media
   source,
   Source that is requested to send a decoder refresh point or that is
   indicated that it lost synchronization with the video stream,
   identified by its SSRC.

   The Feedback Control Information (FCI) for PSLEI uses the similar
   format of message Types defined in the section 4.3.1.1 of [RFC5104].
   The format is shown in Figure 2.

         0                   1                   2                   3
        0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1
       +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
       |                              SSRC                             |
       +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
       |     Seq nr.   |                   Reserved                    |
       +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+

         Figure 2: Message Format for the Third Party Loss Report

   SSRC (32 bits):

      The SSRC value of the media source that is requested to send a
      decoder refresh point. point or that is indicated that it lost
      synchronization with the video stream.

   Seq nr:8bits  Command sequence number.  It is used by the Command
      receiver to check if the Command is repeated.  The sequence number
      space is unique for each pairing of the SSRC of command source sender and
      the SSRC of the command target. receiver.  The sequence number SHALL be increased
      increase by 1 modulo 256 for each new request. Command.  A repetition SHALL
      NOT increase the sequence number.  The initial value is arbitrary.

   Reserved: 24 bits

      All bits SHALL be set to 0 by the media source and SHALL be
      ignored on reception.

5.  SDP Signaling

   A new feedback value "tplr" needs to be defined for the Third Party
   Loss Report message to be used with Session Description Protocol
   (SDP) [RFC4566] using the Augmented Backus-Naur Form (ABNF)
   [RFC4585].

   The "tplr" feedback value SHOULD be used with parameters that
   indicate the third party loss supported.  In this document, we define
   two such parameter, namely:

   o  "tllei" denotes support of transport layer third party loss early
      indication.

   o  "pslei" denotes support of payload specific third party loss early
      indication.

   In the ABNF for rtcp-fb-val defined in [RFC4585], there is a
   placeholder called rtcp-fb-id to define new feedback types. "tplr" is
   defined as a new feedback type in this document, and the ABNF for the
   parameters for tplr is defined here (please refer to section 4.2 of
   [RFC4585] for complete ABNF syntax).

         rtcp-fb-val        =/ "tplr" rtcp-fb-tplr-param
         rtcp-fb-tplr-param  = SP "tllei";transport layer third party loss early indication
                             / SP "pslei";payload specific third party loss early indication
                             / SP token [SP byte-string]
                                       ; for future commands/indications
      byte-string = <as defined in section 4.2 of [RFC4585] >

   Refer to Section 4.2 of [RFC4585] for a detailed description and the
   full syntax of the "rtcp-fb" attribute.

6.  Example Use Cases

   The operation of feedback suppression is similar for all types of RTP
   sessions and topologies [RFC5117], however the exact messages used
   and the scenarios in which suppression is employed differ for various
   use cases.  The following sections outline some of the intended use
   cases for using the Third Party Loss Report for feedback suppression
   and give an overview of the particular mechanisms.

6.1.  Source Specific Multicast (SSM) use case

   In SSM RTP sessions as described in [RFC5760], one or more Media
   Sources send RTP packets to a Distribution Source.  The Distribution
   Source relays the RTP packets to the receivers using a source-
   specific multicast group.  Note that each receiver sending multicast
   NACK to its group may still need to send unicast NACK addressed to
   the media source or distribution source for lost packets, this may
   lead to a NACK storm if feedback suppression is not performed and if
   the RTCP bandwidth limit is misconfigured.

   As outlined in the [RFC5760], there are two Unicast Feedback models
   that may be used for reporting, - the Simple Feedback model and the
   Distribution Source Feedback Summary Model.  In the simple Feedback
   Model, NACKs are reflected by the distribution source to the other
   receivers, and there's no need for distribution source to create the Third
   Party Loss Report.  The Third Party Loss Report may be
   generated at Report, instead, NACKs are reflected by the distribution
   source when downstream loss report is
   received to the other Receivers.  However in the Distribution Source
   Feedback Summary model, since
   this summary feedback does not mandate the forwarding of NACK
   downstream.

   In order to observe packet loss before the receivers perceive it, one
   or more intermediate nodes may be placed between the media source and
   the receivers.  These intermediaries monitor for upstream packet loss
   .  These intermediates may be Distribution source, MCUs, RTP
   translator, or RTP mixers, depending on the precise implementation.
   If an intermediary notices the loss itself, then it may send a NACK
   both downstream towards the receivers and upstream towards the media
   source, to indicate that it has noticed the loss, and to suppress
   feedback from other downstream receivers.  In the SSM case, If the distribution source ,using the simple feedback model, receives a NACK
   from another system (e.g.,an intermediary), it should redistribute
   that NACK to all other systems that would will not otherwise receive it.
   If the distribution source, using redistribute
   the summary feedback model,
   receives a NACK from another system, but, for some reason(e.g., to prevent revealing the identity or
   existence of a system sending
   NACK), cannot redistribute that NACK, then it NACK)and may send a Third Party Loss
   Report to the systems that were unable to receive the NACK, and won't
   receive the NACK via other means.  Therefore since the intermediate
   node can be reasonably certain that it will help summary feedback does not
   mandate the situation by
   sending a forwarding of NACK downstream.  The Third Party Loss
   Report message to all can be generated at the relevant
   receivers, thereby indicating distribution source when downstream
   loss is told (e.g., downstream loss report is received), which
   indicates to the receivers that they should not transmit feedback
   messages for the same loss event for a certain period of time.  The
   intermediate node needs to take into account such factors as the
   tolerable application delay, packet loss recovery techniques, the
   network dynamics, and the media type.  Loss-repair methods such as
   retransmission and Forward Error Correction may be used to recover
   the missing packet.

   Alternatively,  Therefore the media
   distribution source may directly monitor in the amount of feedback reports it receives from downstream.  If the media source
   notices the loss itself, then it may send a NACK downstream towards
   the receivers to suppress feedback.  If the media source receives a
   NACK from another system, it should redistribute that NACK to all
   other systems summary model can be reasonably
   certain that would not otherwise receive it.  If it will help the media
   source receives a NACK from another system, but, for some reason
   (e.g., hiding identity or existing a system situation by sending NACK ), cannot
   redistribute that NACK, then it may send a this Third Party
   Loss Report message to all the systems that were unable to receive the NACK, and won't receive relevant receivers impacted by the NACK via other means.
   packet loss.

6.2.  Unicast based Rapid Acquisition of Multicast Stream (RAMS) use
      case

   The typical RAMS architecture [RFC6285] may have several Burst/
   Retransmission Sources(BRS) behind the multicast source (MS) placed
   at the same level.  These BRSes will receive the primary multicast SSM
   RTP stream from the media source.  If one of the BRSes receives downstream loss
   report (i.e., First loss in Figure 3) on its downstream link, but the
   others BRSes have not, as the packet loss took place on the SSM tree
   branch that does not impact the other BRSes.  In such case, the BRSes
   not being impacted are not aware of downstream loss at their
   downstream link, therefore these BRSes will not create a new Third
   Party Loss Report message source and send it to receivers in their
   downstream path. cache most recent packets after
   joining multicast session.  If the BRS impacted by packet loss has been told
   the actual packet loss, happens at the BRS MAY choose to create new Third Party
   Loss Report message and send it to upstream of
   all the receivers in BRSs or the downstream
   link.  Note that BRS must use its own SSRC as packet sender SSRC for
   transmitting of one or more BRSes. one of the feedback suppress message.

   The BRS BRSes
   or all the BRSes may also send a NACK upstream or TPLR message to request the retransmitted
   packet.  Upon receiving the retransmitted packet, DS, where the BRS sent it
   downstream.  Note that this retransmitted packet may get lost (i.e.,
   second loss
   SSRC in this NACK or TPLR message is the Figure 3) one of the BRS.  The DS
   forwards/reflects this message down on the downstream link.  In order to primary SSM.  The details
   on how DS deal with this issue, the downstream receiver can start a timeout
   clock in which it expected to get a retransmission packet.  When this
   timeout expires and there is no retransmitted packet or a new Third
   Party Loss Report message, it can take its normal behavior as if
   there message is no current retransmission suppression specified in place.

                                     +------------+ First Loss +----------+
                                     |Burst and   |Second Loss |          |
                         +-----------| Retrans.   |----X--X--->|          |
                         | Upstream  |Source1(BRS)| Downstream |          |
           Link close    | link 1    +------------+ link 1     |          |
           to multicast  |                                     |          |
           source        |                                     |          |
                |        |                                     |          |
                |        |           +------------+            |   RTP    |
   +---------+  |  +-----++          |Burst and   |            | Receiver |
   |Multicast|  V| |      +----------| Retrans.   |----------->|          |
   | Source  +-----|Router|Upstream  |Source2(BRS)| Downstream |  RTP_Rx  |
   +---------+     |      |link 2    +------------+ link 2     |          |
                   +-----++                                    |          |
                         |                                     |          |
                         |                                     |          |
                         |                                     |          |
                         |           +------------+            |          |
                         |           |Burst and   |            |          |
                         +-----------+ Retrans.   |----------->|          |
                           Upstream  |Source k(BRS| Downstream |          |
                           link k    +------------+ link k     +----------+

                          Figure 3: RAMS Use Case
   [RETRANSMISSION-FOR-SSM].

6.3.  RTP transport translator use case

   A Transport Translator (Topo-Trn-Translator), as defined in [RFC5117]
   is typically forwarding the RTP and RTCP traffic between RTP clients,
   for example converting between multicast and unicast for domains that
   do not support multicast.  The translator can identify packet acting as quality
   monitoring [Monarch] may suffer a loss
   using co-located monitor [I-D.ietf-avtcore-monarch] of important video packets.
   In this case, the translator may trigger repair by receiving a
   NACK from another system the media sender
   and then at the monitor can use same time,use it's own SSRC as packet sender SSRC for transmitting the to
   create a new Third Party Loss Report message and send this message it to the unicast
   receivers that is not aware of packet loss.

6.4.  Multipoint Control Unit (MCU) use case

   In point to

   When the speaker is changed in a voice-activated multipoint topologies using video
   switching MCU (Topo-
   Video-switch-MCU) [RFC5117], the MCU typically forwards a single
   media stream conference [RFC4587], an RTP mixer can be used to each participant, selected from select
   the available input
   streams.  The selection of streams and forward them to each participants.
   If the input stream MCU is often based doing a blind switch without waiting for a
   synchronization point on voice
   activity in the audio-visual conference, but other conference
   management mechanisms (like presentation mode or explicit floor
   control) exist as well. new stream it can send a FIR to the new
   video source.  In this case the MCU may identify packet loss by receiving should send a NACK
   from another system or may decide FIR suppression
   message to switch the new receivers. e.g.,when the RTP Mixer starts to
   receive FIR from some participants it can suppress the remaining
   session participants from sending FIR by sending out a Third party
   Loss report message.

6.5.  Mixer use Case

   A Mixer, in accordance with [RFC5117], aggregates multiple RTP
   streams from other session participants and generates a new source.  In both
   cases RTP
   stream sent to the receiver may lose synchronization with session participants.  In some cases, the video stream and
   frames may send a FIR request.  If get badly screwed up between media source and the MCU itself can detect mixer.
   In such case, the mis-
   synchronization mixer need to check if the packet loss will result
   in PLI or FIR transmissions from most of the video, group by analyzing the MCU can send
   received video.  If so the mixer initiates FIR suppression
   message to or PLI towards the receivers
   media source on behalf of all the session participants and send out a
   Third party Loss report message to these session participants that
   may or are expected to send a PLI or FIR request Another possible way for
   mixer to the video source.
   As suggested in RFC 5117, this topology deal with, is better implemented as an
   Topo-Mixer, in which case when the mixer's SSRC is used as packet sender
   SSRC for transmitting mixer starts to receive FIR or PLI
   from some participants and like to suppress the remaining session
   participants from sending FIR or PLI by sending out a Third Party party
   Loss Report report message.

7.  Security Considerations

   The defined messages have certain properties that have security
   implications.  These must be addressed and taken into account by
   users of this protocol.

   Spoofed or maliciously created feedback messages of the type defined
   in this specification can have the following implications:

   Sending the spurious Third Party Loss Report (e.g., the Third Party
   Loss Report with the wrong sequence number of lost packet packet) that makes
   missing RTP packets can not be compensated.

   To prevent these attacks, there is a need to apply authentication and
   integrity protection of the feedback messages.  This can be
   accomplished against threats external to the current RTP session
   using the RTP profile that combines Secure RTP [RFC3711] and AVPF
   into SAVPF [RFC5124].

   Note that middleboxes that are not visible at the RTP layer that wish
   to send the Third Party Loss Reports on behalf of the media source
   can only do so if they spoof the SSRC of the media source.  This is
   difficult in case SRTP is in use.  If the middlebox is visible at the
   RTP layer, this is not an issue, provided the middlebox is part of
   the security context for the session.

   Also note that endpoints that receive a Third Party Loss Report would
   be well-advised to ignore it, unless it the security is authenticated via SRTCP or
   similar. in place to
   authenticate the sender of the Third Party Loss Report.  Accepting un-authenticated
   Third Party Loss Report from un-authenticated sender can lead to a
   denial of service attack, where the endpoint accepts poor
   quality media that could be repaired.

8.  IANA Consideration

   New feedback type and New parameters for RTCP Third Party Loss Report
   are subject to IANA registration.  For general guidelines on accepts poor quality
   media that could be repaired.

8.  IANA
   considerations for RTCP feedback, refer to [RFC4585].

   This document assigns one Consideration

   The new feedback type value "TPLR" has been registered with IANA in the RTCP
   feedback report "rtcp-fb"
   Attribute Values registry to "Third Party Loss Report" with located at the
   following registrations format:

                    Name:            TPLR time of publication at:
   http://www.iana.org/assignments/sdp-parameters

      Value name:       tplr
      Long Name:        Third Party Loss Report
                    Value:           TBD Reports
      Reference:        This document.

   This document also assigns the parameter value in the RTCP TPLR
   feedback report Registry to

   A new registry " Transport Layer Third Party Loss Early
   Indication ", with Report Messages" has been created
   to hold "tplr" parameters located at time of publication at:
   http://www.iana.org/assignments/sdp-parameters

   New registration in this registry follows the "Specification
   required" policy as defined by [RFC2434].  In addition, they are
   required to indicate any additional RTCP feedback types, such as
   "nack" and "ack".

   The following registrations format:

        Name:           TLLEI values have been registered as FMT values in the "FMT
   Values for RTPFB Payload Types" registry located at the time of
   publication at: http://www.iana.org/assignments/rtp-parameters

      RTPFB range
      Name           Long name: Name                         Value  Reference
      -------------- --------------------------------- -----  ---------
      TLLEI         Transport Layer Third Party         X   [RFCXXXX]
                    Loss Early Indication
        Value:          TBD
        Reference:      this document.

   This document also assigns the parameter value

   The following values have been registered as FMT values in the RTCP TPLR
   feedback report Registry to "Payload Specific Third Party Loss Early
   Indication ", with "FMT
   Values for PSFB Payload Types" registry located at the following registrations format:

        Name:           PSLEI time of
   publication at: http://www.iana.org/assignments/rtp-parameters

   PSFB range
   Name           Long name: Name                             Value  Reference
   -------------- ---------------------------------     ----- ---------
   PSLEI         Payload Specific Third Party             X   [RFCXXXX]
                 Loss Early Indication
        Value:          TBD
        Reference:      this document.

   The contact information for the registrations is:

     Qin Wu
     sunseawq@huawei.com
     101 Software Avenue, Yuhua District
     Nanjing, Jiangsu  210012, China

9.  Acknowledgement

   The authors would like to thank David R Oran, Magnus Westerlund,
   Colin Perkins, Ali C. Begen, Colin
   Perkins,Tom Tom VAN CAENEGEM, Ingemar Johansson S,
   Bill Ver Steeg, Jonathan Lennox, WeeSan Lee for their valuable
   comments and suggestions on this document.

10.  References

10.1.  Normative References

   [RFC5760]  Ott, J., Chesterfield, J., and E. Schooler, "RTP Control
              Protocol (RTCP) Extensions for Single-Source Multicast
              Sessions with Unicast Feedback", RFC 5760, February 2010.

   [RFC2119]  Bradner, S., "Key words for use in RFCs to Indicate
              Requirement Levels", BCP 14, RFC 2119, March 1997.

   [RFC4585]  Ott, J., Wenger, S., Sato, N., Burmeister, C., and J. Rey,
              "Extended RTP Profile for Real-time Transport Control
              Protocol (RTCP)-Based Feedback (RTP/AVPF)", RFC 4585,
              July 2006.

   [RFC3550]  Schulzrinne, H., Casner, S., Frederick, R., and V.
              Jacobson, "RTP: A Transport Protocol for Real-Time
              Applications", STD 64, RFC 3550, July 2003.

   [RFC5117]  Westerlund, M. and S. Wenger, "RTP Topologies", RFC 5117,
              January 2008.

   [RFC4588]  Rey, J., Leon, D., Miyazaki, A., Varsa, V., and R.
              Hakenberg, "RTP Retransmission Payload Format", RFC 4588,
              July 2006.

   [RFC4566]  Handley, M., Jacobson, V., and C. Perkins, "SDP: Session
              Description Protocol", RFC 4566, July 2006.

   [RFC5234]  Crocker, D. and P. Overell, "Augmented BNF for Syntax
              Specifications: ABNF", STD 68, RFC 5234, January 2008.

   [RFC5104]  Wenger, S., Chandra, U., Westerlund, M., and B. Burman,
              "Codec Control Messages in the RTP Audio-Visual Profile
              with Feedback (AVPF)", RFC 5104, February 2008.

   [RFC3711]  Baugher, M., McGrew, D., Naslund, M., Carrara, E., and K.
              Norrman, "The Secure Real-time Transport Protocol (SRTP)",
              RFC 3711, March 2004.

   [RFC5124]  Ott, J. and E. Carrara, "Extended Secure RTP Profile for
              Real-time Transport Control Protocol (RTCP)-Based Feedback
              (RTP/SAVPF)", RFC 5124, February 2008.

10.2.  Informative References

   [RFC5740]  Adamson, B., Bormann, C., Handley, M., and J. Macker,
              "NACK-Oriented Reliable Multicast (NORM) Transport
              Protocol", November 2009.

   [DVB-IPTV]
              ETSI Standard, "Digital Video Broadcasting(DVB); Transport
              of MPEG-2 TS Based DVB Services over IP Based Networks",
              ETSI TS 102 034, V1.4.1 , August 2009.

   [RFC6285]  Steeg, B., Begen, A., Caenegem, T., and Z. Vax, "Unicast-
              Based Rapid Acquisition of Multicast RTP Sessions",
              June 2011.

   [I-D.ietf-avtcore-monarch]

   [Monarch]  Wu, Q., Hunt, G., and P. Arden, "Monitoring Architectures
              for RTP", June 2011.

   [I-D.ietf-pmol-metrics-framework]
              Clark, A.

   [RETRANSMISSION-FOR-SSM]
              Caenegem, T., Steeg, B., and B. Claise, "Framework A. Begen, "Retransmission for Performance Metric
              Development", January
              Source-Specific Multicast (SSM) Sessions", May 2011.

   [RFC5117]  Westerlund, M. and S. Wenger, "RTP Topologies", RFC 5117,
              January 2008.

   [RFC4587]  Even, R., "RTP Payload Format for H.261 Video Streams",
              RFC 4587, August 2006.

Appendix A.  Change Log

   Note to the RFC-Editor: please remove this section prior to
   publication as an RFC.

A.1.  draft-ietf-avtcore-feedback-suppression-rtp-01

   The following are the major changes compared to previous version:

   o  Remove the merge report from SSM use case and additional text to
      address report merging issue.

   o  Revise section 3 and section 6 to address FEC packet dealing issue
      and Leave how to repair packet loss beyond the scope.

   o  Modify the SSM use case and RAMS use case to focus on uses.

   o  Other Editorial changes.

A.2.  draft-ietf-avtcore-feedback-suppression-rtp-02

   The following are the major changes compared to previous version:

   o  In Section 4.1, fix typo: Section 4.3.1.1 of section [RFC5104]->
      section 6.2.1 of [RFC4585].

   o  In Section 3: Clarify how to deal with downstream loss using Third
      party loss report and upstream loss using NACK.

   o  Update title and abstract to focus on third party loss report.

   o  In Section 6.1: Update this section to explain how third party
      loss report is used to deal with downstream loss.

   o  In section 6.1.2: Update this section to explain how third party
      loss report is used to deal with downstream loss.

   o  In section 6.2: Rephrase the text to discuss how BRS deal with the
      third party loss report.

A.3.  draft-ietf-avtcore-feedback-suppression-rtp-03

   The following are the major changes compared to previous version:

   o  In Appendix A, fix typo: Appendix A.  Appendix A.  -> Appendix A.

   o  Update abstract to clarify when third-party loss reports should be
      sent instead of NACKs.

   o  Update section 3 Paragraph 2 to differentiate when a third-party
      loss report should be used compared to a NACK.

   o  Update section 3 Paragraph 3 to explain when media source to send
      a third-party loss.

   o  Move specific rules for section 6.1.1 and section 6.1.2 to section
      6.1 as generic rules and delete section 6.1.1.

A.4.  draft-ietf-avtcore-feedback-suppression-rtp-04

   The following are the major changes compared to previous version:

   o  Reference Update.

   o  Clarify the use of the third party loss report in section 3 and
      section 6.1.1.

A.5.  draft-ietf-avtcore-feedback-suppression-rtp-05

   The following are the major changes compared to previous version:
   o  Remove 3rd and 4th paragraphs of section 6.1 and replaced them
      with 2nd and 3rd paragraphs of section 3.

   o  Remove section 6.1.1.1.

   o  Revise the last paragraph of section 1 to clarify the rationale of
      using new message.

   o  Update RTP transport translator case in section 6.3 to correct the
      use of the third party loss report.

   o  Update MCU case in section 6.4 to correct the use of the third
      party loss report.

   o  Revise SSM use case to address multiple DS issue.

   o  References Update.

   o  Move one rationale on preventing sending unicast NACK in
      introduction section to SSM case section.

   o  Other Editorial changes to section 6.1, 6.1.1, 6.2.

A.6.  draft-ietf-avtcore-feedback-suppression-rtp-06

   The following are the major changes compared to previous version:

   o  A few Editorial changes to the whole document.

A.7.  draft-ietf-avtcore-feedback-suppression-rtp-07

   The following are the major changes compared to previous version:

   o  Restructuring the protocol overview section to clarify the round
      trip time calculation and receiver behavior to the additional
      TPLR.

   o  Restructuring the SSM use case section to focus on the use of
      TPLR.

   o  Editorial changes to the abstract, introduction, message format,
      use cases and IANA sections.

   o  References update

Authors' Addresses

   Qin Wu
   Huawei
   101 Software Avenue, Yuhua District
   Nanjing, Jiangsu  210012
   China

   Email: sunseawq@huawei.com

   Frank Xia
   Huawei
   1700 Alma Dr. Suite 500
   Plano, TX 75075
   USA

   Phone: +1 972-509-5599
   Email: xiayangsong@huawei.com

   Roni Even
   Huawei
   14 David Hamelech
   Tel Aviv 64953
   Israel

   Email: even.roni@huawei.com