idnits 2.17.1 draft-ietf-xrblock-rtcp-xr-jb-04.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 (December 17, 2012) is 4147 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) ** Downref: Normative reference to an Informational RFC: RFC 6709 Summary: 2 errors (**), 0 flaws (~~), 1 warning (==), 1 comment (--). Run idnits with the --verbose option for more detailed information about the items above. -------------------------------------------------------------------------------- 2 Audio/Video Transport Working Group A. Clark 3 Internet-Draft Telchemy 4 Intended status: Standards Track V. Singh 5 Expires: June 20, 2013 Aalto University 6 Q. Wu 7 Huawei 8 December 17, 2012 10 RTP Control Protocol (RTCP) Extended Report (XR) Block for Jitter Buffer 11 Metric Reporting 12 draft-ietf-xrblock-rtcp-xr-jb-04.txt 14 Abstract 16 This document defines an RTP Control Protocol (RTCP) Extended Report 17 (XR) Block that allows the reporting of Jitter Buffer metrics for a 18 range of RTP applications. 20 Status of this Memo 22 This Internet-Draft is submitted in full conformance with the 23 provisions of BCP 78 and BCP 79. 25 Internet-Drafts are working documents of the Internet Engineering 26 Task Force (IETF). Note that other groups may also distribute 27 working documents as Internet-Drafts. The list of current Internet- 28 Drafts is at http://datatracker.ietf.org/drafts/current/. 30 Internet-Drafts are draft documents valid for a maximum of six months 31 and may be updated, replaced, or obsoleted by other documents at any 32 time. It is inappropriate to use Internet-Drafts as reference 33 material or to cite them other than as "work in progress." 35 This Internet-Draft will expire on June 20, 2013. 37 Copyright Notice 39 Copyright (c) 2012 IETF Trust and the persons identified as the 40 document authors. All rights reserved. 42 This document is subject to BCP 78 and the IETF Trust's Legal 43 Provisions Relating to IETF Documents 44 (http://trustee.ietf.org/license-info) in effect on the date of 45 publication of this document. Please review these documents 46 carefully, as they describe your rights and restrictions with respect 47 to this document. Code Components extracted from this document must 48 include Simplified BSD License text as described in Section 4.e of 49 the Trust Legal Provisions and are provided without warranty as 50 described in the Simplified BSD License. 52 Table of Contents 54 1. Introduction . . . . . . . . . . . . . . . . . . . . . . . . . 3 55 1.1. Jitter Buffer Metrics Block . . . . . . . . . . . . . . . 3 56 1.2. RTCP and RTCP XR Reports . . . . . . . . . . . . . . . . . 3 57 1.3. Performance Metrics Framework . . . . . . . . . . . . . . 3 58 1.4. Applicability . . . . . . . . . . . . . . . . . . . . . . 3 59 2. Terminology . . . . . . . . . . . . . . . . . . . . . . . . . 4 60 2.1. Standards Language . . . . . . . . . . . . . . . . . . . . 4 61 3. Jitter Buffer Metrics Block . . . . . . . . . . . . . . . . . 5 62 3.1. Report Block Structure . . . . . . . . . . . . . . . . . . 5 63 3.2. Definition of Fields in Jitter Buffer Metrics Block . . . 5 64 4. SDP Signaling . . . . . . . . . . . . . . . . . . . . . . . . 8 65 4.1. SDP rtcp-xr-attrib Attribute Extension . . . . . . . . . . 8 66 4.2. Offer/Answer Usage . . . . . . . . . . . . . . . . . . . . 8 67 5. IANA Considerations . . . . . . . . . . . . . . . . . . . . . 9 68 5.1. New RTCP XR Block Type value . . . . . . . . . . . . . . . 9 69 5.2. New RTCP XR SDP Parameter . . . . . . . . . . . . . . . . 9 70 5.3. Contact information for registrations . . . . . . . . . . 9 71 6. Security Considerations . . . . . . . . . . . . . . . . . . . 10 72 7. Contributors . . . . . . . . . . . . . . . . . . . . . . . . . 11 73 8. Acknowledgments . . . . . . . . . . . . . . . . . . . . . . . 12 74 9. References . . . . . . . . . . . . . . . . . . . . . . . . . . 13 75 9.1. Normative References . . . . . . . . . . . . . . . . . . . 13 76 9.2. Informative References . . . . . . . . . . . . . . . . . . 13 77 Appendix A. Change Log . . . . . . . . . . . . . . . . . . . . . 14 78 A.1. draft-ietf-xrblock-rtcp-xr-jb-04 . . . . . . . . . . . . . 14 79 A.2. draft-ietf-xrblock-rtcp-xr-jb-03 . . . . . . . . . . . . . 14 80 A.3. draft-ietf-xrblock-rtcp-xr-jb-02 . . . . . . . . . . . . . 14 81 A.4. draft-ietf-xrblock-rtcp-xr-jb-01 . . . . . . . . . . . . . 14 82 A.5. draft-ietf-xrblock-rtcp-xr-jb-00 . . . . . . . . . . . . . 14 83 Authors' Addresses . . . . . . . . . . . . . . . . . . . . . . . . 16 85 1. Introduction 87 1.1. Jitter Buffer Metrics Block 89 This document defines a new block type to augment those defined in 90 [RFC3611], for use in a range of RTP applications. 92 The new block type provides information on jitter buffer 93 configuration and performance. 95 The metric belongs to the class of transport-related end system 96 metrics defined in [RFC6792]. 98 Instances of this Metrics Block refer by Synchronization source 99 (SSRC) to the separate auxiliary Measurement Information block 100 [RFC6776] which contains information such as the SSRC of the measured 101 stream, and RTP sequence numbers and time intervals indicating the 102 span of the report. 104 1.2. RTCP and RTCP XR Reports 106 The use of RTCP for reporting is defined in [RFC3550]. [RFC3611] 107 defined an extensible structure for reporting using an RTCP Extended 108 Report (XR). This document defines a new Extended Report block for 109 use with [RFC3550] and [RFC3611]. 111 1.3. Performance Metrics Framework 113 The Performance Metrics Framework [RFC6390] provides guidance on the 114 definition and specification of performance metrics. The RTP 115 Monitoring Architectures [RFC6792] provides guideline for reporting 116 block format using RTCP XR. Metrics described in this draft are in 117 accordance with the guidelines in [RFC6390][RFC6792]. 119 1.4. Applicability 121 Real-time applications employ a jitter buffer to smooth out jitter 122 introduced on the path from source to destination. These metrics are 123 used to report how the jitter buffer at the receiving end of RTP 124 stream behaves as a result of jitter in the network and are 125 applicable to a range of RTP applications. 127 These metrics reflect how terminal-related factors effect real-time 128 application quality and are useful to provide better end-user quality 129 of experience (QoE). 131 2. Terminology 133 2.1. Standards Language 135 The key words "MUST", "MUST NOT", "REQUIRED", "SHALL", "SHALL NOT", 136 "SHOULD", "SHOULD NOT", "RECOMMENDED", "MAY", and "OPTIONAL" in this 137 document are to be interpreted as described in RFC 2119 [RFC2119]. 139 3. Jitter Buffer Metrics Block 141 This block describes the configuration and operating parameters of 142 the jitter buffer in the receiver of the RTP end system or RTP mixer 143 which sends the report. Instances of this Metrics Block refer by 144 SSRC to the separate auxiliary Measurement Information block 145 [RFC6776] which describes the measurement interval in use. This 146 Metrics Block relies on the measurement interval in the Measurement 147 Information block indicating the span of the report and should be 148 sent in the same compound RTCP packet as the measurement information 149 block. If the measurement interval is not received in the same 150 compound RTCP packet as this Metrics Block, this Metrics Block should 151 be discarded. 153 3.1. Report Block Structure 155 JB Metrics Block 157 0 1 2 3 158 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 159 +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ 160 | BT=NJB | I |C|Reserved | block length=3 | 161 +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ 162 | SSRC of Source | 163 +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ 164 | JB nominal | JB maximum | 165 +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ 166 | JB high water mark | JB low water mark | 167 +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ 169 Figure 1: Report Block Structure 171 3.2. Definition of Fields in Jitter Buffer Metrics Block 173 Block type (BT): 8 bits 175 A Jitter Buffer Metrics Report Block is identified by the constant 176 NJB. 178 [Note to RFC Editor: please replace NJB with the IANA provided 179 RTCP XR block type for this block.] 181 Interval Metric flag (I): 2 bits 183 This field is used to indicate whether the Jitter Buffer metrics 184 are Sampled, Interval or Cumulative metrics: 186 I=10: Interval Duration - the reported value applies to the 187 most recent measurement interval duration between successive 188 metrics reports. 190 I=11: Cumulative Duration - the reported value applies to the 191 accumulation period characteristic of cumulative measurements. 193 I=01: Sampled Value - the reported value is a sampled 194 instantaneous value. 196 Jitter Buffer Configuration (C): 1 bit 198 This field is used to identify the jitter buffer method in use at 199 the receiver, according to the following code: 201 0 = Fixed jitter buffer 203 1 = Adaptive jitter buffer 205 Reserved: 5 bits 207 These bits are reserved. They MUST be set to zero by senders 208 ignored by receivers (See [RFC6709] section 4.2). 210 Block Length: 16 bits 212 The length of this report block in 32-bit words, minus one and 213 MUST be set to 3, in accordance with the definition of this field 214 in [RFC3611]. The block MUST be discarded if the block length is 215 set to a different value. 217 jitter buffer nominal delay (JB nominal): 16 bits 219 This is the current nominal jitter buffer delay in milliseconds, 220 which corresponds to the nominal jitter buffer delay for packets 221 that arrive exactly on time. It is calculated based on the time 222 for packets spent in the jitter buffer. This parameter MUST be 223 provided for both fixed and adaptive jitter buffer 224 implementations. 226 If the measured value exceeds 0xFFFD, the value 0xFFFE MUST be 227 reported to indicate an over-range measurement. If the 228 measurement is unavailable, the value 0xFFFF MUST be reported. 230 jitter buffer maximum delay (JB maximum): 16 bits 232 This is the current maximum jitter buffer delay in milliseconds 233 which corresponds to the earliest arriving packet that would not 234 be discarded. In simple queue implementations this may correspond 235 to the nominal size. In adaptive jitter buffer implementations, 236 this value may change dynamically. This parameter MUST be 237 provided for both fixed and adaptive jitter buffer 238 implementations. 240 If the measured value exceeds 0xFFFD, the value 0xFFFE MUST be 241 reported to indicate an over-range measurement. If the 242 measurement is unavailable, the value 0xFFFF MUST be reported. 244 jitter buffer high water mark (JB high water mark): 16 bits 246 This is the highest value of the jitter buffer nominal delay in 247 milliseconds which occurred at any time during the reporting 248 interval. 250 If the measured value exceeds 0xFFFD, the value 0xFFFE MUST be 251 reported to indicate an over-range measurement. If the 252 measurement is unavailable, the value 0xFFFF MUST be reported. 254 jitter buffer low water mark (JB low water mark): 16 bits 256 This is the lowest value of the jitter buffer nominal delay in 257 milliseconds which occurred at any time during the reporting 258 interval. 260 If the measured value exceeds 0xFFFD, the value 0xFFFE MUST be 261 reported to indicate an over-range measurement. If the 262 measurement is unavailable, the value 0xFFFF MUST be reported. 264 4. SDP Signaling 266 [RFC3611] defines the use of SDP (Session Description Protocol) 267 [RFC4566] for signaling the use of XR blocks. XR blocks MAY be used 268 without prior signaling. 270 4.1. SDP rtcp-xr-attrib Attribute Extension 272 This section augments the SDP [RFC4566] attribute "rtcp-xr" defined 273 in [RFC3611] by providing an additional value of "xr-format" to 274 signal the use of the report block defined in this document. 276 xr-format =/ xr-jb-block 278 xr-jb-block = "jitter-bfr" 280 4.2. Offer/Answer Usage 282 When SDP is used in offer-answer context, the SDP Offer/Answer usage 283 defined in [RFC3611] for unilateral "rtcp-xr" attribute parameters 284 applies. For detailed usage in Offer/Answer for unilateral 285 parameter, refer to section 5.2 of [RFC3611]. 287 5. IANA Considerations 289 New block types for RTCP XR are subject to IANA registration. For 290 general guidelines on IANA considerations for RTCP XR, refer to 291 [RFC3611]. 293 5.1. New RTCP XR Block Type value 295 This document assigns the block type value NJB in the IANA "RTCP XR 296 Block Type Registry" to the "JB Metrics Block". 298 [Note to RFC Editor: please replace NJB with the IANA provided RTCP 299 XR block type for this block.] 301 5.2. New RTCP XR SDP Parameter 303 This document also registers a new parameter "jitter-bfr" in the 304 "RTCP XR SDP Parameters Registry". 306 5.3. Contact information for registrations 308 The contact information for the registrations is: 310 Qin Wu (sunseawq@huawei.com) 311 101 Software Avenue, Yuhua District 312 Nanjing, Jiangsu 210012 313 China 315 6. Security Considerations 317 It is believed that this proposed RTCP XR report block introduces no 318 new security considerations beyond those described in [RFC3611]. 319 This block does not provide per-packet statistics so the risk to 320 confidentiality documented in Section 7, paragraph 3 of [RFC3611] 321 does not apply. 323 7. Contributors 325 Geoff Hunt wrote the initial draft of this document. 327 8. Acknowledgments 329 The authors gratefully acknowledge reviews and feedback provided by 330 Bruce Adams, Philip Arden, Amit Arora, Bob Biskner, Kevin Connor, 331 Claus Dahm, Randy Ethier, Roni Even, Jim Frauenthal, Albert Higashi, 332 Tom Hock, Shane Holthaus, Paul Jones, Rajesh Kumar, Keith Lantz, 333 Mohamed Mostafa, Amy Pendleton, Colin Perkins, Mike Ramalho, Ravi 334 Raviraj, Albrecht Schwarz, Tom Taylor, Hideaki Yamada,Claire Bi,Colin 335 Perkin, Dan Romascanu and Glen Zorn. 337 9. References 339 9.1. Normative References 341 [RFC2119] Bradner, S., "Key words for use in RFCs to Indicate 342 Requirement Levels", March 1997. 344 [RFC3550] Schulzrinne, H., "RTP: A Transport Protocol for Real-Time 345 Applications", RFC 3550, July 2003. 347 [RFC3611] Friedman, T., Caceres, R., and A. Clark, "RTP Control 348 Protocol Extended Reports (RTCP XR)", November 2003. 350 [RFC4566] Handley, M., Jacobson, V., and C. Perkins, "SDP: Session 351 Description Protocol", July 2006. 353 [RFC6709] Carpenter, B., Aboba, B., and S. Cheshire, "Design 354 Considerations for Protocol Extensions", RFC 6709, 355 September 2012. 357 9.2. Informative References 359 [RFC6390] Clark, A. and B. Claise, "Framework for Performance Metric 360 Development", RFC 6390, October 2011. 362 [RFC6776] Wu, Q., "Measurement Identity and information Reporting 363 using SDES item and XR Block", RFC 6776, August 2012. 365 [RFC6792] Hunt, G., Wu, Q., and P. Arden, "Monitoring Architectures 366 for RTP", RFC 6792, November 2012. 368 Appendix A. Change Log 370 Note to the RFC-Editor: please remove this section prior to 371 publication as an RFC. 373 A.1. draft-ietf-xrblock-rtcp-xr-jb-04 375 The following are the major changes to previous version : 377 o Some editorial change changes based on the discussion with Glen. 379 A.2. draft-ietf-xrblock-rtcp-xr-jb-03 381 The following are the major changes to previous version : 383 o Reduce the "jb cfg" to 1-bit based on discussion in the WGLC. 385 o Other editorial change changes aligning with PDV,Delay draft. 387 A.3. draft-ietf-xrblock-rtcp-xr-jb-02 389 The following are the major changes to previous version : 391 o Add some explanation text in the SDP offer/answer section. 393 o Add some text in applicability section to explain the use to 394 report jitter buffer metrics. 396 o Other editorial change changes aligning with PDV,Delay draft. 398 A.4. draft-ietf-xrblock-rtcp-xr-jb-01 400 The following are the major changes to previous version : 402 o Outdated reference update 404 o Add one Editor notes to ask clarification on the use of reporting 405 jitter buffer metrics. 407 o Other Editorial changes. 409 A.5. draft-ietf-xrblock-rtcp-xr-jb-00 411 The following are the major changes to previous version : 413 o Boilerplate updates. 415 o references updates 417 o allocate 32 bit field in report block for SSRC 419 o Other editorial changes to get alignment with MONARCH draft. 421 Authors' Addresses 423 Alan Clark 424 Telchemy Incorporated 425 2905 Premiere Parkway, Suite 280 426 Duluth, GA 30097 427 USA 429 Email: alan.d.clark@telchemy.com 431 Varun Singh 432 Aalto University 433 School of Electrical Engineering 434 Otakaari 5 A 435 Espoo, FIN 02150 436 Finland 438 Email: varun@comnet.tkk.fi 440 Qin Wu 441 Huawei 442 101 Software Avenue, Yuhua District 443 Nanjing, Jiangsu 210012 444 China 446 Email: sunseawq@huawei.com