idnits 2.17.1 draft-ietf-avtcore-feedback-supression-rtp-15.txt: Checking boilerplate required by RFC 5378 and the IETF Trust (see https://trustee.ietf.org/license-info): ---------------------------------------------------------------------------- No issues found here. Checking nits according to https://www.ietf.org/id-info/1id-guidelines.txt: ---------------------------------------------------------------------------- No issues found here. Checking nits according to https://www.ietf.org/id-info/checklist : ---------------------------------------------------------------------------- No issues found here. Miscellaneous warnings: ---------------------------------------------------------------------------- == The copyright year in the IETF Trust and authors Copyright Line does not match the current year -- The document date (March 9, 2012) is 4424 days in the past. Is this intentional? Checking references for intended status: Proposed Standard ---------------------------------------------------------------------------- (See RFCs 3967 and 4897 for information about using normative references to lower-maturity documents in RFCs) == Missing Reference: 'RFCXXXX' is mentioned on line 511, but not defined ** Obsolete normative reference: RFC 4566 (Obsoleted by RFC 8866) -- Obsolete informational reference (is this intentional?): RFC 5117 (Obsoleted by RFC 7667) Summary: 1 error (**), 0 flaws (~~), 2 warnings (==), 2 comments (--). Run idnits with the --verbose option for more detailed information about the items above. -------------------------------------------------------------------------------- 2 Network Working Group Q. Wu 3 Internet-Draft F. Xia 4 Intended status: Standards Track R. Even 5 Expires: September 10, 2012 Huawei 6 March 9, 2012 8 RTCP Extension for Third-party Loss Report 9 draft-ietf-avtcore-feedback-supression-rtp-15 11 Abstract 13 In a large RTP session using the RTCP feedback mechanism defined in 14 RFC 4585, a feedback target may experience transient overload if some 15 event causes a large number of receivers to send feedback at once. 16 This overload is usually avoided by ensuring that feedback reports 17 are forwarded to all receivers, allowing them to avoid sending 18 duplicate feedback reports. However, there are cases where it is not 19 recommended to forward feedback reports, and this may allow feedback 20 implosion. This memo discusses these cases and defines a new RTCP 21 third-party loss report that can be used to inform receivers that the 22 feedback target is aware of some loss event, allowing them to 23 suppress feedback. Associated SDP signalling is also defined. 25 Status of this Memo 27 This Internet-Draft is submitted in full conformance with the 28 provisions of BCP 78 and BCP 79. 30 Internet-Drafts are working documents of the Internet Engineering 31 Task Force (IETF). Note that other groups may also distribute 32 working documents as Internet-Drafts. The list of current Internet- 33 Drafts is at http://datatracker.ietf.org/drafts/current/. 35 Internet-Drafts are draft documents valid for a maximum of six months 36 and may be updated, replaced, or obsoleted by other documents at any 37 time. It is inappropriate to use Internet-Drafts as reference 38 material or to cite them other than as "work in progress." 40 This Internet-Draft will expire on September 10, 2012. 42 Copyright Notice 44 Copyright (c) 2012 IETF Trust and the persons identified as the 45 document authors. All rights reserved. 47 This document is subject to BCP 78 and the IETF Trust's Legal 48 Provisions Relating to IETF Documents 49 (http://trustee.ietf.org/license-info) in effect on the date of 50 publication of this document. Please review these documents 51 carefully, as they describe your rights and restrictions with respect 52 to this document. Code Components extracted from this document must 53 include Simplified BSD License text as described in Section 4.e of 54 the Trust Legal Provisions and are provided without warranty as 55 described in the Simplified BSD License. 57 Table of Contents 59 1. Introduction . . . . . . . . . . . . . . . . . . . . . . . . . 4 60 2. Requirements Notation . . . . . . . . . . . . . . . . . . . . 4 61 2.1. Glossary . . . . . . . . . . . . . . . . . . . . . . . . . 5 62 3. Protocol Overview . . . . . . . . . . . . . . . . . . . . . . 5 63 4. Format of RTCP Feedback Messages . . . . . . . . . . . . . . . 6 64 4.1. Transport Layer Feedback: Third Party Loss Report 65 (TPLR) . . . . . . . . . . . . . . . . . . . . . . . . . . 6 66 4.2. Payload Specific Feedback: Third Party Loss Report 67 (TPLR) . . . . . . . . . . . . . . . . . . . . . . . . . . 7 68 5. SDP Signaling . . . . . . . . . . . . . . . . . . . . . . . . 8 69 6. Example Use Cases . . . . . . . . . . . . . . . . . . . . . . 9 70 6.1. Source Specific Multicast (SSM) use case . . . . . . . . . 9 71 6.2. Unicast based Rapid Acquisition of Multicast Stream 72 (RAMS) use case . . . . . . . . . . . . . . . . . . . . . 10 73 6.3. RTP Transport Translator use case . . . . . . . . . . . . 10 74 6.4. Multipoint Control Unit (MCU) use case . . . . . . . . . . 10 75 6.5. Mixer use case . . . . . . . . . . . . . . . . . . . . . . 11 76 7. Security Considerations . . . . . . . . . . . . . . . . . . . 11 77 8. IANA Consideration . . . . . . . . . . . . . . . . . . . . . . 12 78 9. Acknowledgement . . . . . . . . . . . . . . . . . . . . . . . 13 79 10. References . . . . . . . . . . . . . . . . . . . . . . . . . . 13 80 10.1. Normative References . . . . . . . . . . . . . . . . . . . 13 81 10.2. Informative References . . . . . . . . . . . . . . . . . . 13 82 Appendix A. Change Log . . . . . . . . . . . . . . . . . . . . . 14 83 A.1. draft-ietf-avtcore-feedback-suppression-rtp-01 . . . . . . 14 84 A.2. draft-ietf-avtcore-feedback-suppression-rtp-02 . . . . . . 14 85 A.3. draft-ietf-avtcore-feedback-suppression-rtp-03 . . . . . . 15 86 A.4. draft-ietf-avtcore-feedback-suppression-rtp-04 . . . . . . 15 87 A.5. draft-ietf-avtcore-feedback-suppression-rtp-05 . . . . . . 15 88 A.6. draft-ietf-avtcore-feedback-suppression-rtp-06 . . . . . . 16 89 A.7. draft-ietf-avtcore-feedback-suppression-rtp-07 . . . . . . 16 90 A.8. draft-ietf-avtcore-feedback-suppression-rtp-08 . . . . . . 16 91 A.9. draft-ietf-avtcore-feedback-suppression-rtp-09 . . . . . . 17 92 A.10. draft-ietf-avtcore-feedback-suppression-rtp-10 . . . . . . 17 93 A.11. draft-ietf-avtcore-feedback-suppression-rtp-11 . . . . . . 17 94 A.12. draft-ietf-avtcore-feedback-suppression-rtp-12 . . . . . . 17 95 A.13. draft-ietf-avtcore-feedback-suppression-rtp-13 . . . . . . 17 96 A.14. draft-ietf-avtcore-feedback-suppression-rtp-14 . . . . . . 18 97 A.15. draft-ietf-avtcore-feedback-suppression-rtp-15 . . . . . . 18 98 Authors' Addresses . . . . . . . . . . . . . . . . . . . . . . . . 18 100 1. Introduction 102 RTCP feedback messages [RFC4585] allow the receivers in an RTP 103 session to report events and ask for action from the media source (or 104 a delegated feedback target when using unicast RTCP feedback with SSM 105 [RFC5760]). There are cases where multiple receivers may initiate 106 the same, or an equivalent message towards the same media source or 107 the same feedback target. When the receiver count is large, this 108 behavior may cause transient overload of the media source, the 109 network or both. This is known as a "feedback storm" or a "NACK 110 storm". One common cause of such a feedback storm is receivers 111 utilizing RTP retransmission [RFC4588] as a packet loss recovery 112 technique, sending feedback using RTCP NACK messages [RFC4585] 113 without proper dithering of the retransmission requests (e.g., not 114 implementing the RFC 4585 dithering rules or sending NACKs to a 115 feedback target that doesn't redistribute them to other receivers). 117 Another use case involves video Fast Update requests. A storm of 118 these feedback messages can occur in conversational multimedia 119 scenarios like multipoint video switching conference [RFC4587]. In 120 this scenario, the receiver may lose synchronization with the video 121 stream when speaker is changed in the middle of session. Poorly 122 designed receivers that blindly issue fast update requests (i.e., 123 Full Intra Request (FIR) described in RFC5104 [RFC5104]), can cause 124 an implosion of FIR requests from receivers to the same media source. 126 RTCP feedback storms may cause short term overload, and in extreme 127 cases to pose a possible risk of increasing network congestion on the 128 control channel (e.g. RTCP feedback), the data channel, or both. It 129 is therefore desirable to provide a way of suppressing unneeded 130 feedback. This document specifies a new third-party loss report for 131 this function. It supplements the existing the use of RTCP NACK 132 packet and further is more precise in the uses where the network is 133 active to suppress feedback. It tells receivers explicitly that 134 feedback for a particular packet or frame loss is not needed and can 135 provide an early indication before the receiver reacts to the loss 136 and invokes its packet loss repair machinery. Section 6 provides 137 some examples of when to send the Third Party Loss Report message. 139 2. Requirements Notation 141 The key words "MUST", "MUST NOT", "REQUIRED", "SHALL", "SHALL NOT", 142 "SHOULD", "SHOULD NOT", "RECOMMENDED", "MAY", and "OPTIONAL" in this 143 document are to be interpreted as described in RFC2119 [RFC2119]. 145 2.1. Glossary 147 TPLR - Third Party Loss Report 148 TLLEI - Transport layer third party loss Early Indication 149 PSLEI - Third Party Loss Early Indication 150 FCI - Feedback Control Information [RFC4585] 151 AVPF - The Audio-Visual Profile with RTCP-based feedback [RFC4585] 152 SSRC - Synchronization Source 153 BRS - Burst/Retransmission Sources [RFC6285] 154 FIR - Full Intra Request [RFC5104] 155 PLI - Picture Loss Indication [RFC4585] 156 SSM - Source Specific Multicast [RFC5760] 157 RAMS - Unicast based Rapid Acquisition of Multicast Stream [RFC6285] 158 MCU - Multipoint Control Unit [RFC5117] 160 3. Protocol Overview 162 This document extends the RTCP feedback messages defined in the RTP/ 163 AVPF [RFC4585] defining a RTCP Third Party Loss Report (TPLR) 164 message. The RTCP TPLR message can be used by the intermediaries to 165 inform the receiver that the sender of the RTCP TPLR has received 166 reports that the indicated packets were lost, and asks the receiver 167 not to send feedback to it regarding these packets. Intermediaries 168 are variously referred to as Distribution source, Burst/ 169 Retransmission Sources (BRS), MCUs, RTP translator, or RTP mixers, 170 depending on the precise use case described Section 6. 172 RTCP TPLR follows the similar format of message type as RTCP NACK or 173 Full Intra Request Command. However, the RTCP TPLR is defined as an 174 indication that the sender of the feedback has received reports that 175 the indicated packets were lost, while NACK [RFC4585] just indicates 176 that the sender of the NACK observed that these packets were lost. 177 The RTCP TPLR message is generated by an intermediary that may not 178 have seen the actual packet loss. It is sent following the same 179 timing rule as sending NACK defined in RFC4585 [RFC4585]. The RTCP 180 TPLR message may be sent in a regular full compound RTCP packet or in 181 an early RTCP packet, as per the RTP/AVPF rules. Intermediaries in 182 the network that receive a RTCP TPLR SHOULD NOT send their own 183 additional Third Party Loss Report messages for the same packet 184 sequence numbers. They SHOULD simply forward the RTCP TPLR message 185 received from upstream direction to the receiver(s), additionally, 186 they may generate their own RTCP TPLR that reports a set of the 187 losses they see, which are different from ones reported in the RTCP 188 TPLR they received. The RTCP TPLR does not have the retransmission 189 request [RFC4588] semantics. 191 When a receiver gets a RTCP TPLR message, it MUST follow the rules 192 for NACK suppression in RFC4585 [RFC4585]and refrain from sending a 193 feedback request (e.g., NACK or FIR) for the missing packets reported 194 in the message,which is dealt with in the same way as receiving NACK. 196 To increase the robustness to the loss of a TPLR, The RTCP TPLR may 197 be retransmitted. If the additional TPLR arrives at receiver, the 198 receiver SHOULD deal with the additional TPLR in the same way as 199 receiving the first TPLR for the same packet and no additional 200 behavior for receiver is required. 202 A receiver may have sent a Feedback message according to the RTP/AVPF 203 scheduling algorithm of RFC4585 [RFC4585] before receiving a RTCP 204 TPLR message, but further feedback messages for those sequence 205 numbers SHOULD be suppressed after receiving the RTCP TPLR. Nodes 206 that do not understand the RTCP TPLR message will ignore it, and 207 might therefore still send feedback according to the AVPF scheduling 208 algorithm of RFC4585 [RFC4585]. The media source or intermediate 209 nodes cannot be certain that the use of a RTCP TPLR message actually 210 reduces the amount of feedback it receives. 212 4. Format of RTCP Feedback Messages 214 This document introduces two new RTCP Feedback messages for Third 215 Party Loss Report. Applications that are employing one or more loss- 216 repair methods MAY use the RTCP TPLR together with their existing 217 loss-repair methods either for every packet they expect to receive, 218 or for an application-specific subset of the RTP packets in a 219 session. 221 The following two sections each define a RTCP TPLR message. Both 222 messages are feedback messages as defined in section 6.1 of RFC4585 223 [RFC4585], and use the header format defined there. Each section 224 defines how to populate the PT, FMT,length SSRC of packet sender, 225 SSRC of media source, and FCI fields in that header. 227 4.1. Transport Layer Feedback: Third Party Loss Report (TPLR) 229 This TPLR message is identified by RTCP packet type value PT=RTPFB 230 and FMT=TBA1. 232 Within the common packet header for feedback messages (as defined in 233 section 6.1 of RFC4585 [RFC4585]), the "SSRC of packet sender" field 234 indicates the source of the request, and the "SSRC of media source" 235 denotes the media sender of the flow for which the indicated losses 236 are being suppressed. 238 The Feedback Control Information (FCI) field MUST contain one or more 239 entries of transport layer third party loss Early Indication (TLLEI). 240 Each entry applies to the same media source identified by the SSRC 241 contained in the SSRC of media source field of Feedback header. The 242 length field in the TLLEI feedback message MUST be set to 2+1*N, 243 where N is the number of FCI entries. 245 The FCI field for TLLEI uses the similar format of message Types 246 defined in the section 6.2.1 of RFC4585 [RFC4585]. The format is 247 shown in Figure 1. 249 0 1 2 3 250 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 251 +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ 252 | PID | BLP | 253 +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ 255 Figure 1: Syntax of an FCI Entry in the TLLEI Feedback Message 257 Packet ID (PID): 16 bits 259 The PID field is used to specify a lost packet. The PID field 260 refers to the RTP sequence number of the lost packet. 262 bitmask of lost packets (BLP): 16 bits 264 The BLP allows for reporting losses of any of the 16 RTP packets 265 immediately following the RTP packet indicated by the PID. The 266 BLP's definition is identical to that given in the section 6.2.1 267 of [RFC4585]. 269 4.2. Payload Specific Feedback: Third Party Loss Report (TPLR) 271 This TPLR message is identified by RTCP packet type value PT=PSFB and 272 FMT=TBA2, which is used to suppress FIR [RFC5104] and PLI [RFC4585]. 274 Within the common packet header for feedback messages (as defined in 275 section 6.1 of RFC4585 [RFC4585]), the "SSRC of packet sender" field 276 indicates the source of the request, and the "SSRC of media source" 277 is not used and SHALL be set to 0. The SSRCs of the media senders to 278 which this message applies are in the corresponding FCI entries. 280 The FCI field for a Payload Specific Third Party Loss Early 281 Indication (PSLEI) consists one or more FCI entries. Each entry 282 applies to a different media Source, identified by its SSRC. the 283 content of which is depicted in Figure 2. The length field in the 284 PSLEI feedback message MUST be set to 2+1*N, where N is the number of 285 FCI entries. 287 The format is shown in Figure 2. 289 0 1 2 3 290 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 291 +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ 292 | SSRC | 293 +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ 295 Figure 2: Syntax of an FCI Entry in the PSLEI Feedback Message 297 Synchronization source (SSRC):32 bits 299 The SSRC value of the media source that is already aware, or in 300 the process of being made aware, that some receiver lost 301 synchronization with the media stream and for which the PSLEI 302 receiver's own response to any such error is suppressed. 304 5. SDP Signaling 306 The Session Description Protocol (SDP) [RFC4566] attribute, rtcp-fb, 307 is defined in the Section 4 of RFC4585 [RFC4585] and may be used to 308 negotiate the capability to handle specific AVPF commands and 309 indications. The ABNF for rtcp-fb is described in section 4.2 of 310 RFC4585 [RFC4585]. In this section, we extend the rtcp-fb attribute 311 to include the commands and indications that are described for third 312 party loss report in the present document. 314 In the ABNF [RFC5234] for rtcp-fb-val defined in RFC4585 [RFC4585], 315 the feedback type "nack", without parameters, indicates use of the 316 Generic NACK feedback format as defined in Section 6.2.1of RFC4585 317 [RFC4585]. In this document, we define two parameters that indicate 318 the third party loss supported for use with "nack", namely: 320 o "tllei" denotes support of transport layer third party loss early 321 indication. 323 o "pslei" denotes support of payload specific third party loss early 324 indication. 326 The ABNF for these two parameters for "nack" is defined here (please 327 refer to section 4.2 of RFC4585 [RFC4585] for complete ABNF syntax). 329 rtcp-fb-val =/ "nack" rtcp-fb-nack-param 330 rtcp-fb-nack-param = SP "tllei" 331 ;transport layer third party 332 ; loss early indication 333 / SP "pslei" 334 ;payload specific third party 335 ; loss early indication 336 / SP token [SP byte-string] 337 ; for future commands/indications 338 token = 339 byte-string = 341 Refer to Section 4.2 of RFC4585 [RFC4585] for a detailed description 342 and the full syntax of the "rtcp-fb" attribute. 344 6. Example Use Cases 346 The operation of feedback suppression is similar for all types of RTP 347 sessions and topologies [RFC5117], however the exact messages used 348 and the scenarios in which suppression is employed differ for various 349 use cases. The following sections outline some of the intended use 350 cases for using the Third Party Loss Report for feedback suppression 351 and give an overview of the particular mechanisms. 353 6.1. Source Specific Multicast (SSM) use case 355 In SSM RTP sessions as described in "RTP Control Protocol (RTCP) 356 Extensions for Single-Source Multicast Sessions with Unicast 357 Feedback" [RFC5760], one or more Media Sources send RTP packets to a 358 Distribution Source. The Distribution Source relays the RTP packets 359 to the receivers using a source- specific multicast group. 361 As outlined in the RFC5760 [RFC5760], there are two Unicast Feedback 362 models that may be used for reporting, the Simple Feedback model and 363 the Distribution Source Feedback Summary Model. In the simple 364 Feedback Model, there's no need for distribution source to create the 365 RTCP TPLRs, instead, RTCP NACKs are reflected by the distribution 366 source to the other Receivers. However in the Distribution Source 367 Feedback Summary model, the distribution source will not redistribute 368 the NACK for some reason(e.g., to prevent revealing the identity or 369 existence of a system sending NACK)and may send a RTCP TPLR message 370 to the systems that were unable to receive the NACK, and won't 371 receive the NACK via other means. The RTCP TPLR can be generated at 372 the distribution source when downstream loss is reported (e.g., 373 downstream loss report is received), which indicates to the receivers 374 that they should not transmit feedback messages for the same loss 375 event for a certain time. Therefore the distribution source in the 376 feedback summary model can be reasonably certain that it will help 377 the situation (i.e., unable receive the NACK) by sending this RTCP 378 TPLR message to all the relevant receivers impacted by the packet 379 loss. 381 6.2. Unicast based Rapid Acquisition of Multicast Stream (RAMS) use 382 case 384 The typical RAMS architecture [RFC6285] may have several Burst/ 385 Retransmission Sources(BRS) behind the multicast source (MS) placed 386 at the same level. These BRSes will receive the primary multicast 387 RTP stream from the media source and cache most recent packets after 388 joining multicast session. If packet loss happens at the upstream of 389 all the BRSs or the downstream of BRSes. One of the BRSes or all the 390 BRSes may send a RTCP NACK or RTCP TPLR message to the DS, where the 391 SSRC in this RTCP NACK or RTCP TPLR message is the BRS that is 392 sending the message. The DS forwards/reflects this message down on 393 the primary SSM. The details on how DS deal with this message is 394 specified in [RETRANSMISSION-FOR-SSM]. 396 6.3. RTP Transport Translator use case 398 A Transport Translator (Topo-Trn-Translator), as defined in RFC5117 399 [RFC5117] is typically forwarding the RTP and RTCP traffic between 400 RTP clients, for example converting from multicast to unicast for 401 domains that do not support multicast. The translator may suffer a 402 loss of important video packets. In this case, the translator may 403 forward RTCP TPLR message received from upstream in the same way as 404 forwarding other RTCP traffic. If the translator acting as the 405 monitor [MONARCH] is aware of packet loss, it may use the SSRC of 406 monitor as packet sender SSRC to create NACK message and send it to 407 the receivers that are not aware of packet loss. 409 6.4. Multipoint Control Unit (MCU) use case 411 When the speaker is changed in a voice-activated multipoint video 412 switching conference [RFC4587], an RTP mixer can be used to select 413 the available input streams and forward them to each participants. 414 If the MCU is doing a blind switch without waiting for a 415 synchronization point on the new stream it can send a FIR to the new 416 video source. In this case the MCU should send a FIR suppression 417 message to the new receivers. e.g., when the RTP Mixer starts to 418 receive FIR from some participants it can suppress the remaining 419 session participants from sending FIR by sending out a RTCP TPLR 420 message. 422 6.5. Mixer use case 424 A Mixer, in accordance with RFC5117 [RFC5117], aggregates multiple 425 RTP streams from other session participants and generates a new RTP 426 stream sent to the session participants. In some cases, the video 427 frames may get badly screwed up between media source and the mixer. 428 In such case, the mixer need to check if the packet loss will result 429 in PLI or FIR transmissions from most of the group by analyzing the 430 received video. If so the mixer may initiate FIR or PLI towards the 431 media source on behalf of all the session participants and send out a 432 RTCP TPLR message to these session participants that may or are 433 expected to send a PLI or FIR. Alternatively, when the mixer starts 434 to receive FIR or PLI from some participants and like to suppress the 435 remaining session participants from sending FIR or PLI by forwarding 436 the FIR/PLI from one session participant to others. 438 7. Security Considerations 440 The defined messages have certain properties that have security 441 implications. These must be addressed and taken into account by 442 users of this protocol. 444 Spoofed or maliciously created feedback messages of the type defined 445 in this specification can have the following implications: 447 Sending the spurious Third Party Loss Report packet(e.g., the RTCP 448 TPLR with the wrong sequence number of lost packet) that causes 449 missing RTP packets to not be repaired in a timely fashion. If a 450 receiver accepts such unauthenticated packet, an attacker could cause 451 packet loss disrupting an important part of a session, preemptively 452 sending feedback suppression. An attacker that is also a receiver 453 has enough information to suppress all the feedbacks from any other 454 listeners that don't accept unauthenticated packets. 456 To prevent these attacks, there is a need to apply authentication and 457 integrity protection of the feedback messages. This can be 458 accomplished against threats external to the current RTP session 459 using the RTP profile that combines Secure RTP [RFC3711] and AVPF 460 into SAVPF [RFC5124]. 462 Note that intermediaries that are not visible at the RTP layer that 463 wish to send the Third Party Loss Reports on behalf of the media 464 source can only do so if they spoof the SSRC of the media source. 465 This is difficult in case SRTP is in use. If the intermediary is 466 visible at the RTP layer, this is not an issue, provided the 467 intermediary is part of the security context for the session. 469 Also note that endpoints that receive a Third Party Loss Report would 470 be well-advised to ignore it, unless the security is in place to 471 authenticate the sender of the Third Party Loss Report. Accepting 472 Third Party Loss Report from un-authenticated sender can lead to a 473 denial of service attack, where the endpoint accepts poor quality 474 media that could be repaired. 476 8. IANA Consideration 478 This document instructs IANA to add two values to the '"ack" and 479 "nack" Attribute Values' sub-registry [RFC4585] of the 'Session 480 Description Protocol (SDP) Parameters' registry. 482 The value registration for the attribute value "nack": 484 Value name: tllei 485 Long name: Transport Layer Third Party Loss Early Indication 486 Usable with: nack 487 Reference: RFC 4585. 489 Value name: pslei 490 Long name: Payload Specific Third Party 491 Usable with: nack 492 Reference: RFC 4585. 494 The following value have been registered as one FMT value in the "FMT 495 Values for RTPFB Payload Types" registry located at the time of 496 publication at: http://www.iana.org/assignments/rtp-parameters 498 RTPFB range 499 Name Long Name Value Reference 500 -------------- --------------------------------- ----- --------- 501 TLLEI Transport Layer Third Party TBA1 [RFCXXXX] 502 Loss Early Indication 504 The following value have been registered as one FMT value in the "FMT 505 Values for PSFB Payload Types" registry located at the time of 506 publication at: http://www.iana.org/assignments/rtp-parameters 508 PSFB range 509 Name Long Name Value Reference 510 -------------- --------------------------------- ----- -------- 511 PSLEI Payload Specific Third Party TBA2 [RFCXXXX] 512 Loss Early Indication 514 9. Acknowledgement 516 The authors would like to thank David R Oran, Magnus Westerlund, 517 Colin Perkins, Ali C. Begen, Tom VAN CAENEGEM, Ingemar Johansson S, 518 Bill Ver Steeg, Jonathan Lennox, WeeSan Lee for their valuable 519 comments and suggestions on this document. 521 10. References 523 10.1. Normative References 525 [RFC2119] Bradner, S., "Key words for use in RFCs to Indicate 526 Requirement Levels", March 1997. 528 [RFC4585] Ott, J., Wenger, S., Sato, N., Burmeister, C., and J. Rey, 529 "Extended RTP Profile for Real-time Transport Control 530 Protocol (RTCP)-Based Feedback (RTP/AVPF)", RFC 4585, 531 July 2006. 533 [RFC4588] Rey, J., Leon, D., Miyazaki, A., Varsa, V., and R. 534 Hakenberg, "RTP Retransmission Payload Format", RFC 4588, 535 July 2006. 537 [RFC4566] Handley, M., Jacobson, V., and C. Perkins, "SDP: Session 538 Description Protocol", RFC 4566, July 2006. 540 [RFC5234] Crocker, D. and P. Overell, "Augmented BNF for Syntax 541 Specifications: ABNF", STD 68, RFC 5234, January 2008. 543 [RFC5104] Wenger, S., Chandra, U., Westerlund, M., and B. Burman, 544 "Codec Control Messages in the RTP Audio-Visual Profile 545 with Feedback (AVPF)", RFC 5104, February 2008. 547 [RFC3711] Baugher, M., McGrew, D., Naslund, M., Carrara, E., and K. 548 Norrman, "The Secure Real-time Transport Protocol (SRTP)", 549 RFC 3711, March 2004. 551 [RFC5124] Ott, J. and E. Carrara, "Extended Secure RTP Profile for 552 Real-time Transport Control Protocol (RTCP)-Based Feedback 553 (RTP/SAVPF)", RFC 5124, February 2008. 555 10.2. Informative References 557 [RFC6285] Steeg, B., Begen, A., Caenegem, T., and Z. Vax, "Unicast- 558 Based Rapid Acquisition of Multicast RTP Sessions", 559 June 2011. 561 [MONARCH] Wu, Q., Hunt, G., and P. Arden, "Monitoring Architectures 562 for RTP", June 2011. 564 [RETRANSMISSION-FOR-SSM] 565 Caenegem, T., Steeg, B., and A. Begen, "Retransmission for 566 Source-Specific Multicast (SSM) Sessions", May 2011. 568 [RFC5117] Westerlund, M. and S. Wenger, "RTP Topologies", RFC 5117, 569 January 2008. 571 [RFC4587] Even, R., "RTP Payload Format for H.261 Video Streams", 572 RFC 4587, August 2006. 574 [RFC5760] Ott, J., Chesterfield, J., and E. Schooler, "RTP Control 575 Protocol (RTCP) Extensions for Single-Source Multicast 576 Sessions with Unicast Feedback", RFC 5760, February 2010. 578 Appendix A. Change Log 580 Note to the RFC-Editor: please remove this section prior to 581 publication as an RFC. 583 A.1. draft-ietf-avtcore-feedback-suppression-rtp-01 585 The following are the major changes compared to previous version: 587 o Remove the merge report from SSM use case and additional text to 588 address report merging issue. 590 o Revise section 3 and section 6 to address FEC packet dealing issue 591 and Leave how to repair packet loss beyond the scope. 593 o Modify the SSM use case and RAMS use case to focus on uses. 595 o Other Editorial changes. 597 A.2. draft-ietf-avtcore-feedback-suppression-rtp-02 599 The following are the major changes compared to previous version: 601 o In Section 4.1, fix typo: change Section 4.3.1.1 of section 602 [RFC5104] to section 6.2.1 of [RFC4585]. 604 o In Section 3: Clarify how to deal with downstream loss using Third 605 party loss report and upstream loss using NACK. 607 o Update title and abstract to focus on third party loss report. 609 o In Section 6.1: Update this section to explain how third party 610 loss report is used to deal with downstream loss. 612 o In section 6.1.2: Update this section to explain how third party 613 loss report is used to deal with downstream loss. 615 o In section 6.2: Rephrase the text to discuss how BRS deal with the 616 third party loss report. 618 A.3. draft-ietf-avtcore-feedback-suppression-rtp-03 620 The following are the major changes compared to previous version: 622 o In Appendix A, fix typo: Appendix A. Appendix A. -> Appendix A. 624 o Update abstract to clarify when third-party loss reports should be 625 sent instead of NACKs. 627 o Update section 3 Paragraph 2 to differentiate when a third-party 628 loss report should be used compared to a NACK. 630 o Update section 3 Paragraph 3 to explain when media source to send 631 a third-party loss. 633 o Move specific rules for section 6.1.1 and section 6.1.2 to section 634 6.1 as generic rules and delete section 6.1.1. 636 A.4. draft-ietf-avtcore-feedback-suppression-rtp-04 638 The following are the major changes compared to previous version: 639 o Reference Update. 641 o Clarify the use of the third party loss report in section 3 and 642 section 6.1.1. 644 A.5. draft-ietf-avtcore-feedback-suppression-rtp-05 646 The following are the major changes compared to previous version: 647 o Remove 3rd and 4th paragraphs of section 6.1 and replaced them 648 with 2nd and 3rd paragraphs of section 3. 650 o Remove section 6.1.1.1. 652 o Revise the last paragraph of section 1 to clarify the rationale of 653 using new message. 655 o Update RTP transport translator case in section 6.3 to correct the 656 use of the third party loss report. 658 o Update MCU case in section 6.4 to correct the use of the third 659 party loss report. 661 o Revise SSM use case to address multiple DS issue. 663 o References Update. 665 o Move one rationale on preventing sending unicast NACK in 666 introduction section to SSM case section. 668 o Other Editorial changes to section 6.1, 6.1.1, 6.2. 670 A.6. draft-ietf-avtcore-feedback-suppression-rtp-06 672 The following are the major changes compared to previous version: 674 o A few Editorial changes to the whole document. 676 A.7. draft-ietf-avtcore-feedback-suppression-rtp-07 678 The following are the major changes compared to previous version: 680 o Restructuring the protocol overview section to clarify the round 681 trip 683 time calculation and receiver behavior to the additional TPLR. 685 o Restructuring the SSM use case section to focus on the use of 686 TPLR. 688 o Editorial changes to the abstract, introduction, message format, 689 use cases and IANA sections. 691 o References update 693 A.8. draft-ietf-avtcore-feedback-suppression-rtp-08 695 The following are the major changes compared to previous version: 697 o Clarify which RTT is used and how timer is refreshed in the 698 section 3. 700 o Editorial changes to the Introduction, Protocol Overview, SDP 702 Signaling, Message Format, Use case,Security Consideration and 703 IANA sections. 705 o Remove Seq Nr field in the figure 2 for payload specific feedback. 707 o References reorganizing. 709 A.9. draft-ietf-avtcore-feedback-suppression-rtp-09 711 The following are the major changes compared to previous version: 713 o Clarify to suppression interval with regard to how long to receive 714 the 716 retransmitted packet. Treating TPLR in the same way as receiving 717 NACK. 719 o Replace timer based approach with timeless based approach. 721 A.10. draft-ietf-avtcore-feedback-suppression-rtp-10 723 The following are the major changes compared to previous version: 725 o Fix the definition of Synchronization source for TPLR in section 726 4.2. 728 o Associate SDP parameters tllei and pslei with "nack". 730 o Remove the packet loss recovery from TPLR loss handling part. 732 o Other typo fixed. 734 A.11. draft-ietf-avtcore-feedback-suppression-rtp-11 736 The following are the major changes compared to previous version: 738 o Additional Editorial changes. 740 A.12. draft-ietf-avtcore-feedback-suppression-rtp-12 742 The following are the major changes compared to previous version: 744 o Additional Editorial changes. 746 A.13. draft-ietf-avtcore-feedback-suppression-rtp-13 748 The following are the major changes compared to previous version: 750 o Additional Editorial changes. 752 A.14. draft-ietf-avtcore-feedback-suppression-rtp-14 754 The following are the major changes compared to previous version: 756 o Two References moving to normative refereces. 758 o Revise IANA section to clarify whether to create new registry or 759 add new value to the existing registry. 761 o Revise Security section to clarify ill effect of accepting 762 unauthenticated messages. 764 o Add a glossary to fix acronym issue. 766 o Other Editorial changes. 768 A.15. draft-ietf-avtcore-feedback-suppression-rtp-15 770 The following are the major changes compared to previous version: 772 o Some Editorial changes. 774 Authors' Addresses 776 Qin Wu 777 Huawei 778 101 Software Avenue, Yuhua District 779 Nanjing, Jiangsu 210012 780 China 782 Email: sunseawq@huawei.com 784 Frank Xia 785 Huawei 786 1700 Alma Dr. Suite 500 787 Plano, TX 75075 788 USA 790 Phone: +1 972-509-5599 791 Email: xiayangsong@huawei.com 792 Roni Even 793 Huawei 794 14 David Hamelech 795 Tel Aviv 64953 796 Israel 798 Email: even.roni@huawei.com