idnits 2.17.1 draft-ietf-xrblock-rtcp-xr-loss-conceal-03.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 (October 22, 2012) is 4202 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) ** Obsolete normative reference: RFC 4566 (Obsoleted by RFC 8866) Summary: 1 error (**), 0 flaws (~~), 1 warning (==), 1 comment (--). Run idnits with the --verbose option for more detailed information about the items above. -------------------------------------------------------------------------------- 2 Network Working Group C. Bi 3 Internet-Draft STTRI 4 Intended status: Standards Track A. Clark 5 Expires: April 25, 2013 Telchemy 6 G. Hunt 7 Unaffiliated 8 Q. Wu 9 Huawei 10 G. Zorn, Ed. 11 Network Zen 12 October 22, 2012 14 RTCP XR Report Block for Loss Concealment Metric Reporting 15 draft-ietf-xrblock-rtcp-xr-loss-conceal-03.txt 17 Abstract 19 This document defines an RTCP XR Report Block that allows the 20 reporting of loss concealment metrics primarily for audio 21 applications of RTP. 23 Status of This Memo 25 This Internet-Draft is submitted in full conformance with the 26 provisions of BCP 78 and BCP 79. 28 Internet-Drafts are working documents of the Internet Engineering 29 Task Force (IETF). Note that other groups may also distribute 30 working documents as Internet-Drafts. The list of current Internet- 31 Drafts is at http://datatracker.ietf.org/drafts/current/. 33 Internet-Drafts are draft documents valid for a maximum of six months 34 and may be updated, replaced, or obsoleted by other documents at any 35 time. It is inappropriate to use Internet-Drafts as reference 36 material or to cite them other than as "work in progress." 38 This Internet-Draft will expire on April 25, 2013. 40 Copyright Notice 42 Copyright (c) 2012 IETF Trust and the persons identified as the 43 document authors. All rights reserved. 45 This document is subject to BCP 78 and the IETF Trust's Legal 46 Provisions Relating to IETF Documents 47 (http://trustee.ietf.org/license-info) in effect on the date of 48 publication of this document. Please review these documents 49 carefully, as they describe your rights and restrictions with respect 50 to this document. Code Components extracted from this document must 51 include Simplified BSD License text as described in Section 4.e of 52 the Trust Legal Provisions and are provided without warranty as 53 described in the Simplified BSD License. 55 Table of Contents 57 1. Introduction . . . . . . . . . . . . . . . . . . . . . . . . . 3 58 1.1. Standards Language . . . . . . . . . . . . . . . . . . . . 3 59 1.2. Loss Concealment Report Block . . . . . . . . . . . . . . . 3 60 1.3. RTCP and RTCP XR Reports . . . . . . . . . . . . . . . . . 4 61 1.4. Performance Metrics Framework . . . . . . . . . . . . . . . 4 62 1.5. Applicability . . . . . . . . . . . . . . . . . . . . . . . 4 63 2. Loss Concealment Block . . . . . . . . . . . . . . . . . . . . 4 64 2.1. Report Block Structure . . . . . . . . . . . . . . . . . . 4 65 2.2. Definition of Fields in Loss Concealment Report Block . . . 5 66 3. SDP Signaling . . . . . . . . . . . . . . . . . . . . . . . . . 8 67 4. IANA Considerations . . . . . . . . . . . . . . . . . . . . . . 8 68 4.1. New RTCP XR Block Type value . . . . . . . . . . . . . . . 8 69 4.2. New RTCP XR SDP Parameter . . . . . . . . . . . . . . . . . 8 70 4.3. Contact Information for Registrations . . . . . . . . . . . 8 71 5. Security Considerations . . . . . . . . . . . . . . . . . . . . 9 72 6. Acknowledgements . . . . . . . . . . . . . . . . . . . . . . . 9 73 7. References . . . . . . . . . . . . . . . . . . . . . . . . . . 9 74 7.1. Normative References . . . . . . . . . . . . . . . . . . . 9 75 7.2. Informative References . . . . . . . . . . . . . . . . . . 9 77 1. Introduction 79 1.1. Standards Language 81 The key words "MUST", "MUST NOT", "REQUIRED", "SHALL", "SHALL NOT", 82 "SHOULD", "SHOULD NOT", "RECOMMENDED", "MAY", and "OPTIONAL" in this 83 document are to be interpreted as described in RFC 2119 [RFC2119]. 85 1.2. Loss Concealment Report Block 87 This draft defines a new block type to augment those defined in 88 Friedman, et al. [RFC3611] for use in a range of RTP applications. 90 At any instant, the audio output at a receiver may be classified as 91 either 'normal' or 'concealed'. 'Normal' refers to playout of audio 92 payload received from the remote end, and also includes locally 93 generated signals such as announcements, tones and comfort noise. 94 Concealment refers to playout of locally-generated signals used to 95 mask the impact of network impairments or to reduce the audibility of 96 jitter buffer adaptations. 98 The new block type provides metrics for actions taken by the receiver 99 to mitigate the effect of packet loss and packet discard. 100 Specifically, the first metric (On-Time Playout Duration) reports the 101 duration of normal playout of data which the receiver obtained from 102 the sender's stream. A second metric (Loss Concealment Duration) 103 reports the total time during which the receiver played out media 104 data which was manufactured locally, because the sender's data for 105 these periods was not available due to packet loss or discard. A 106 similar metric (Buffer Adjustment Concealment Duration) reports the 107 duration of playout of locally-manufactured data replacing data 108 unavailable due to adaptation of an adaptive de-jitter buffer. 109 Further metrics (Playout Interrupt Count and Mean Playout Interrupt 110 Size) report the number of times normal playout was interrupted, and 111 the mean duration of these interruptions. 113 Loss Concealment Duration and Buffer Adjustment Concealment Duration 114 are reported separately because buffer adjustment is typically 115 arranged to occur in silence periods and so may have very little 116 impact on user experience, whilst loss concealment may occur at any 117 time. 119 The metric belongs to the class of transport-related terminal metrics 120 defined in Wu, et al. [I-D.ietf-avtcore-monarch]. 122 1.3. RTCP and RTCP XR Reports 124 The use of RTCP for reporting is defined in Schulzrinne, et 125 al. [RFC3550]. Friedman, Cacares & Clark [RFC3611] define an 126 extensible structure for reporting using an RTCP Extended Report 127 (XR). This draft defines a new Extended Report block that MUST be 128 used as specified in RFC 3550 and RFC 3611. 130 1.4. Performance Metrics Framework 132 Clark & Claise [RFC6390] provides guidance on the definition and 133 specification of performance metrics. Wu, et 134 al. [I-D.ietf-avtcore-monarch] provides guidelines for RTCP XR report 135 block formats. The report block defined in this document is in 136 accordance with those guidelines. 138 1.5. Applicability 140 This metric is primarily applicable to audio applications of RTP. 141 EDITOR'S NOTE: are there metrics for concealment of transport errors 142 for video? 144 2. Loss Concealment Block 146 2.1. Report Block Structure 148 0 1 2 3 149 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 150 +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ 151 | BT= | I |plc| resv | block length=5 | 152 +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ 153 | SSRC of Source | 154 +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ 155 | On-time Playout Duration | 156 +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ 157 | Loss Concealment Duration | 158 +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ 159 | Buffer Adjustment Concealment Duration | 160 +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ 161 | Playout Interrupt Count | Mean Playout Interrupt Size | 162 +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ 164 Figure 1: Structure of the Loss Concealment Metrics Block 166 2.2. Definition of Fields in Loss Concealment Report Block 168 Block type (BT): 8 bits 170 A Loss Concealment Metrics Report Block is identified by the 171 constant . 173 [Note to RFC Editor: please replace with the RTCP XR block 174 type allocated by IANA for this block.] 176 Interval Metric flag (I): 2 bits 178 This field is used to indicate whether the delay metrics are 179 sampled, interval or cumulative metrics, that is, whether the 180 reported values applies to the most recent measurement interval 181 duration between successive metrics reports (I=10) (the interval 182 duration) or to the accumulation period characteristic of 183 cumulative measurements (I=11) (the cumulative duration) or is a 184 sampled instantaneous value (I=01) (sampled value). 186 Packet Loss Concealment Method (plc): 2 bits 188 This field is used to identify the packet loss concealment method 189 in use at the receiver, according to the following scheme: 191 00 = silence insertion 193 01 = simple replay, no attenuation 195 10 = simple replay, with attenuation 197 11 = enhanced 199 Reserved (resv): 4 bits 201 These bits are reserved. They MUST be set to zero by senders and 202 SHOULD be ignored by receivers. 204 block length: 16 bits 206 The length of this report block in 32-bit words, minus one. For 207 the Loss Concealment block, the block length is equal to 5. 209 SSRC of source: 32 bits 211 As defined in Section 4.1 of RFC 3611. 213 On-time Playout Duration (ms): 32 bits 215 'On-time' playout is the uninterrupted, in-sequence playout of 216 valid decoded audio information originating from the remote 217 endpoint. This includes comfort noise during periods of remote 218 talker silence if voice activity detection (VAD) is in use, and 219 locally generated or regenerated tones and announcements. 221 An equivalent definition is that on-time playout is playout of any 222 signal other than those used for concealment. 224 On-time playout duration MUST include both speech and silence 225 intervals, whether VAD is used or not. This duration is reported 226 in millisecond units. 228 If the measured value exceeds 0xFFFFFFFD, the value 0xFFFFFFFE 229 SHOULD be reported to indicate an over-range measurement. If the 230 measurement is unavailable, the value 0xFFFFFFFF SHOULD be 231 reported. 233 Loss Concealment Duration (ms): 32 bits 235 The duration, in milliseconds, of audio playout corresponding to 236 loss-type concealment. 238 Loss-type concealment is reactive insertion or deletion of samples 239 in the audio playout stream due to effective frame loss at the 240 audio decoder. "Effective frame loss" is the event in which a 241 frame of coded audio is simply not present at the audio decoder 242 when required. In this case, substitute audio samples are 243 generally formed, at the decoder or elsewhere, to reduce audible 244 impairment. 246 If the measured value exceeds 0xFFFFFFFD, the value 0xFFFFFFFE 247 SHOULD be reported to indicate an over-range measurement. If the 248 measurement is unavailable, the value 0xFFFFFFFF SHOULD be 249 reported. 251 Buffer Adjustment Concealment Duration (ms): 32 bits 253 The duration, in milliseconds, of audio playout corresponding to 254 buffer adjustment concealment, if known. 256 If the measured value exceeds 0xFFFFFFFD, the value 0xFFFFFFFE 257 SHOULD be reported to indicate an over-range measurement. If the 258 measurement is unavailable, the value 0xFFFFFFFF SHOULD be 259 reported. 261 Buffer adjustment concealment is proactive or controlled insertion 262 or deletion of samples in the audio playout stream due to jitter 263 buffer adaptation, re-sizing or re-centering decisions within the 264 endpoint. 266 Because this insertion is controlled, rather than occurring 267 randomly in response to losses, it is typically less audible than 268 loss-type concealment. For example, jitter buffer adaptation 269 events may be constrained to occur during periods of talker 270 silence, in which case only silence duration is affected, or 271 sophisticated time-stretching methods for insertion/deletion 272 during favorable periods in active speech may be employed. 274 Concealment events which cannot be classified as buffer adjustment 275 MUST be classified as loss concealment. 277 Playout Interrupt Count: 16 bits 279 The number of interruptions to normal playout which occurred 280 during the reporting period. 282 If the measured value exceeds 0xFFFD, the value 0xFFFE SHOULD be 283 reported to indicate an over-range measurement. If the 284 measurement is unavailable, the value 0xFFFF SHOULD be reported. 286 Mean Playout Interrupt Size (ms): 16 bits 288 The mean duration, in ms, of interruptions to normal playout which 289 occurred during the reporting period. 291 If the measured value exceeds 0xFFFD, the value 0xFFFE SHOULD be 292 reported to indicate an over-range measurement. If the 293 measurement is unavailable, the value 0xFFFF SHOULD be reported. 295 3. SDP Signaling 297 The use of the Session Description Protocol (SDP) [RFC4566] for 298 signaling the use of XR blocks is described in RFC 3611. XR blocks 299 MAY be used without prior signaling. 301 This section augments the SDP attribute "rtcp-xr" defined in Section 302 5.1 of RFC 3611 by providing an additional value of "xr-format" to 303 signal the use of the report block defined in this document. 305 rtcp-xr-attrib = "a=" "rtcp-xr" ":" [xr-format *(SP xr-format)] CRLF 307 (defined in RFC 3611) 309 xr-format =/ xr-conceal-block 311 xr-conceal-block = "loss-conceal" 313 4. IANA Considerations 315 New block types for RTCP XR are subject to IANA registration. For 316 general guidelines on IANA considerations for RTCP XR, refer to RFC 317 3611. 319 4.1. New RTCP XR Block Type value 321 This document assigns the block type value in the IANA "RTCP XR 322 Block Type Registry" to the "Loss Concealment Metrics Block". 324 [Note to RFC Editor: please replace with the RTCP XR block type 325 assigned by IANA for this block.] 327 4.2. New RTCP XR SDP Parameter 329 This document also registers a new parameter "loss-conceal" in the 330 "RTCP XR SDP Parameters Registry". 332 4.3. Contact Information for Registrations 334 The contact information for the registrations is: 336 Alan Clark (alan.d.clark@telchemy.com) 338 2905 Premiere Parkway, Suite 280 339 Duluth, GA 30097 340 USA 342 5. Security Considerations 344 It is believed that this proposed RTCP XR report block introduces no 345 new security considerations beyond those described in RFC 3611. This 346 block does not provide per-packet statistics so the risk to 347 confidentiality documented in Section 7, paragraph 3 of RFC 3611 does 348 not apply. 350 6. Acknowledgements 352 The authors gratefully acknowledge the comments and suggestions made 353 by Bruce Adams, Philip Arden, Amit Arora, Bob Biskner, Kevin Connor, 354 Claus Dahm, Randy Ethier, Roni Even, Jim Frauenthal, Albert Higashi, 355 Tom Hock, Shane Holthaus, Paul Jones, Rajesh Kumar, Keith Lantz, 356 Mohamed Mostafa, Amy Pendleton, Colin Perkins, Mike Ramalho, Ravi 357 Raviraj, Albrecht Schwarz, Tom Taylor, and Hideaki Yamada. 359 7. References 361 7.1. Normative References 363 [RFC2119] Bradner, S., "Key words for use in RFCs 364 to Indicate Requirement Levels", BCP 14, 365 RFC 2119, March 1997. 367 [RFC3550] Schulzrinne, H., Casner, S., Frederick, 368 R., and V. Jacobson, "RTP: A Transport 369 Protocol for Real-Time Applications", 370 STD 64, RFC 3550, July 2003. 372 [RFC3611] Friedman, T., Caceres, R., and A. Clark, 373 "RTP Control Protocol Extended Reports 374 (RTCP XR)", RFC 3611, November 2003. 376 [RFC4566] Handley, M., Jacobson, V., and C. 377 Perkins, "SDP: Session Description 378 Protocol", RFC 4566, July 2006. 380 7.2. Informative References 382 [I-D.ietf-avtcore-monarch] Wu, W., Hunt, G., and P. Arden, 383 "Guidelines for Use of the RTP Monitoring 384 Framework", draft-ietf-avtcore-monarch-22 385 (work in progress), September 2012. 387 [RFC6390] Clark, A. and B. Claise, "Guidelines for 388 Considering New Performance Metric 389 Development", BCP 170, RFC 6390, 390 October 2011. 392 Authors' Addresses 394 Claire Bi 395 Shanghai Research Institure of China Telecom Corporation Limited 396 No.1835, South Pudong Road 397 Shanghai 200122 398 China 400 EMail: bijy@sttri.com.cn 402 Alan Clark 403 Telchemy Incorporated 404 2905 Premiere Parkway, Suite 280 405 Duluth, GA 30097 406 USA 408 EMail: alan.d.clark@telchemy.com 410 Geoff Hunt 411 Unaffiliated 413 EMail: r.geoff.hunt@gmail.com 415 Qin Wu 416 Huawei 417 101 Software Avenue, Yuhua District 418 Nanjing, Jiangsu 210012 419 China 421 EMail: sunseawq@huawei.com 423 Glen Zorn (editor) 424 Network Zen 425 227/358 Thanon Sanphawut 426 Bang Na, Bangkok 10260 427 Thailand 429 Phone: +66 (0) 90 920 1060 430 EMail: glenzorn@gmail.com