idnits 2.17.1 draft-ietf-xrblock-rtcp-xr-pdv-00.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 seems to lack the recommended RFC 2119 boilerplate, even if it appears to use RFC 2119 keywords. (The document does seem to have the reference to RFC 2119 which the ID-Checklist requires). -- The document date (September 26, 2011) is 4586 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) == Unused Reference: 'RFC2119' is defined on line 484, but no explicit reference was found in the text -- Possible downref: Non-RFC (?) normative reference: ref. 'G.1020' ** Obsolete normative reference: RFC 4566 (Obsoleted by RFC 8866) ** Obsolete normative reference: RFC 5226 (Obsoleted by RFC 8126) == Outdated reference: A later version (-22) exists of draft-ietf-avtcore-monarch-04 Summary: 2 errors (**), 0 flaws (~~), 4 warnings (==), 2 comments (--). Run idnits with the --verbose option for more detailed information about the items above. -------------------------------------------------------------------------------- 2 Audio/Video Transport Working Group G. Hunt 3 Internet-Draft Unaffiliated 4 Intended status: Standards Track A. Clark 5 Expires: March 29, 2012 Telchemy 6 Q. Wu 7 Huawei 8 September 26, 2011 10 RTCP XR Report Block for Packet Delay Variation Metric Reporting 11 draft-ietf-xrblock-rtcp-xr-pdv-00.txt 13 Abstract 15 This document defines an RTCP XR Report Block that allows the 16 reporting of Packet Delay Variation metrics for a range of RTP 17 applications. 19 Status of this Memo 21 This Internet-Draft is submitted in full conformance with the 22 provisions of BCP 78 and BCP 79. 24 Internet-Drafts are working documents of the Internet Engineering 25 Task Force (IETF). Note that other groups may also distribute 26 working documents as Internet-Drafts. The list of current Internet- 27 Drafts is at http://datatracker.ietf.org/drafts/current/. 29 Internet-Drafts are draft documents valid for a maximum of six months 30 and may be updated, replaced, or obsoleted by other documents at any 31 time. It is inappropriate to use Internet-Drafts as reference 32 material or to cite them other than as "work in progress." 34 This Internet-Draft will expire on March 29, 2012. 36 Copyright Notice 38 Copyright (c) 2011 IETF Trust and the persons identified as the 39 document authors. All rights reserved. 41 This document is subject to BCP 78 and the IETF Trust's Legal 42 Provisions Relating to IETF Documents 43 (http://trustee.ietf.org/license-info) in effect on the date of 44 publication of this document. Please review these documents 45 carefully, as they describe your rights and restrictions with respect 46 to this document. Code Components extracted from this document must 47 include Simplified BSD License text as described in Section 4.e of 48 the Trust Legal Provisions and are provided without warranty as 49 described in the Simplified BSD License. 51 Table of Contents 53 1. Introduction . . . . . . . . . . . . . . . . . . . . . . . . . 3 54 1.1. Packet Delay Variation Metrics Block . . . . . . . . . . . 3 55 1.2. RTCP and RTCP XR Reports . . . . . . . . . . . . . . . . . 3 56 1.3. Performance Metrics Framework . . . . . . . . . . . . . . 3 57 1.4. Applicability . . . . . . . . . . . . . . . . . . . . . . 3 58 2. Definitions . . . . . . . . . . . . . . . . . . . . . . . . . 4 59 3. Packet Delay Variation Metrics Block . . . . . . . . . . . . . 5 60 3.1. Report Block Structure . . . . . . . . . . . . . . . . . . 5 61 3.2. Definition of Fields in PDV Metrics Block . . . . . . . . 5 62 3.3. Guidance on use of PDV metrics . . . . . . . . . . . . . . 8 63 3.4. Examples of use . . . . . . . . . . . . . . . . . . . . . 9 64 4. SDP Signaling . . . . . . . . . . . . . . . . . . . . . . . . 11 65 5. IANA Considerations . . . . . . . . . . . . . . . . . . . . . 12 66 5.1. New RTCP XR Block Type value . . . . . . . . . . . . . . . 12 67 5.2. New RTCP XR SDP Parameter . . . . . . . . . . . . . . . . 12 68 5.3. Contact information for registrations . . . . . . . . . . 12 69 5.4. New registry of PDV types . . . . . . . . . . . . . . . . 12 70 6. Security Considerations . . . . . . . . . . . . . . . . . . . 14 71 7. References . . . . . . . . . . . . . . . . . . . . . . . . . . 15 72 7.1. Normative References . . . . . . . . . . . . . . . . . . . 15 73 7.2. Informative References . . . . . . . . . . . . . . . . . . 15 74 Appendix A. Change Log . . . . . . . . . . . . . . . . . . . . . 16 75 A.1. draft-ietf-avt-rtcp-xr-pdv-03 . . . . . . . . . . . . . . 16 76 A.2. draft-ietf-xrblock-rtcp-xr-pdv-00 . . . . . . . . . . . . 16 77 Authors' Addresses . . . . . . . . . . . . . . . . . . . . . . . . 17 79 1. Introduction 81 1.1. Packet Delay Variation Metrics Block 83 This draft defines a new block type to augment those defined in 84 [RFC3611], for use in a range of RTP applications. 86 The new block type provides information on Packet Delay Variation 87 using one of several standard metrics. 89 The metrics belong to the class of transport metrics defined in 90 [MONARCH] (work in progress). 92 1.2. RTCP and RTCP XR Reports 94 The use of RTCP for reporting is defined in [RFC3550]. [RFC3611] 95 defined an extensible structure for reporting using an RTCP Extended 96 Report (XR). This draft defines a new Extended Report block that 97 MUST be used in accordance with [RFC3550] and [RFC3611]. 99 1.3. Performance Metrics Framework 101 The Performance Metrics Framework [PMOLFRAME] provides guidance on 102 the definition and specification of performance metrics. Metrics 103 described in this draft either reference external definitions or 104 define metrics generally in accordance with the guidelines in 105 [PMOLFRAME]. 107 1.4. Applicability 109 These metrics are applicable to a range of RTP applications. 111 2. Definitions 113 This report block makes use of binary fractions. The terminology 114 used is 116 Numeric formats S X:Y 118 where S indicates a two's complement signed representation, X 119 the number of bits prior to the decimal place and Y the number 120 of bits after the decimal place. 122 Hence 8:8 represents an unsigned number in the range 0.0 to 123 255.996 with a granularity of 0.0039. S7:8 would represent the 124 range -128.000 to +127.996. 0:16 represents a proper binary 125 fraction with range 127 0.0 to 1 - 1/65536 = 0.9999847 129 though note that use of flag values at the top of the numeric 130 range slightly reduces this upper limit. For example, if the 131 16- bit values 0xfffe and 0xffff are used as flags for "over- 132 range" and "unavailable" conditions, a 0:16 quantity has range 134 0.0 to 1 - 3/65536 = 0.9999542 136 3. Packet Delay Variation Metrics Block 138 Metrics in this block report on packet delay variation in the stream 139 arriving at the RTP system. 141 3.1. Report Block Structure 143 PDV metrics block 145 0 1 2 3 146 0 1 2 3 4 5 6 7 0 1 2 3 4 5 6 7 0 1 2 3 4 5 6 7 0 1 2 3 4 5 6 7 147 +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ 148 | BT=NPDV |I|pdvtyp | Rsv.| block length=3 | 149 +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ 150 | SSRC of Source | 151 +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ 152 | Pos Threshold/Peak PDV | Pos PDV Percentile | 153 +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ 154 | Neg Threshold/Peak PDV | Neg PDV Percentile | 155 +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ 156 | Mean PDV | unused | 157 +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ 159 Figure 1: Report Block Structure 161 3.2. Definition of Fields in PDV Metrics Block 163 Block type (BT): 8 bits 165 A Packet Delay Variation Metrics Report Block is identified by the 166 constant NPDV. 168 [Note to RFC Editor: please replace NPDV with the IANA provided 169 RTCP XR block type for this block.] 171 Interval Metric flag (I): 1 bit 173 This field is used to indicate whether the Packet Delay Variation 174 metrics block is an Interval or a Cumulative report, that is, 175 whether the reported values apply to the most recent measurement 176 interval duration between successive metrics reports (I=1) (the 177 Interval Duration) or to the accumulation period characteristic of 178 cumulative measurements (I=0) (the Cumulative Duration). 179 Numerical values for both these intervals are provided in the 180 Measurement Identifier block referenced by the tag field below. 182 Packet Delay Variation Metric Type (pdvtyp): 4 bits 184 This field is used to identify the Packet Delay Variation Metric 185 Type used in this report block, according to the following code: 187 bits 014-017 189 0: interarrival jitter, Section 6.4.1 of [RFC3550], 191 1: MAPDV2, Clause 6.2.3.2 of [G.1020], 193 2: 2-point PDV, Clause 6.2.4 of [Y.1540]. 195 Rsv.: 3 bits 197 This field is reserved for future definition. In the absence of 198 such a definition, the bits in this field MUST be set to zero and 199 MUST be ignored by the receiver. 201 Block Length: 16 bits 203 The length of this report block in 32-bit words, minus one. For 204 the Packet Delay Variation Metrics block, the block length is 205 equal to 3. 207 SSRC of source: 32 bits 209 As defined in Section 4.1 of [RFC3611]. 211 Positive PDV Threshold/Peak: 16 bits 213 This field is associated with the Positive PDV percentile and 214 expressed in Milliseconds with numeric format S11:4. The term 215 Positive represents that the packets are arriving later than the 216 expected time. 218 If the measured value is more negative than -2047.9375 (the value 219 which would be coded as 0x8001), the value 0x8000 SHOULD be 220 reported to indicate an over-range negative measurement. If the 221 measured value is more positive than +2047.8125 (the value which 222 would be coded as 0x7FFD), the value 0x7FFE SHOULD be reported to 223 indicate an over-range positive measurement. If the measurement 224 is unavailable, the value 0x7FFF SHOULD be reported. 226 Positive PDV Percentile: 16 bits 228 The percentages of packets in the RTP stream for which individual 229 packet delays were less than the Positive PDV Threshold. It is 230 expressed in numeric format 8:8 with values from 0 to 100th 231 percentile. 233 If the measurement is unavailable, the value 0xFFFF SHOULD be 234 reported. 236 Negative PDV Threshold/Peak: 16 bits 238 The percentages of packets in the RTP stream for which individual 239 packet delays were more than the Negative PDV Threshold. It is 240 expressed in numeric format 8:8 with values from 0 to 100th 241 percentile. 243 If the measured value is more negative than -2047.9375 (the value 244 which would be coded as 0x8001), the value 0x8000 SHOULD be 245 reported to indicate an over-range negative measurement. If the 246 measured value is more positive than +2047.8125 (the value which 247 would be coded as 0x7FFD), the value 0x7FFE SHOULD be reported to 248 indicate an over-range positive measurement. If the measurement 249 is unavailable, the value 0x7FFF SHOULD be reported. 251 Negative PDV Percentile: 16 bits 253 The percentages of packets in the RTP stream for which individual 254 packet delays were more than the Negative PDV Threshold. It is 255 expressed in numeric format 8:8 with values from 0 to 100th 256 percentile. 258 If the measurement is unavailable, the value 0xFFFF SHOULD be 259 reported. 261 If the PDV Type indicated is 2-point PDV and the Positive and 262 Negative PDV Percentiles are set to 100.0 then the Positive and 263 Negative Threshold/Peak PDV values are the peak values measured 264 during the reporting interval (which may be from the start of the 265 call for cumulative reports). In this case, the difference 266 between the Positive and Negative Threshold/Peak values defines 267 the range of 2-point PDV. 269 Mean PDV: 16 bits 271 The mean PDV value of data packets is expressed in milliseconds 272 with Numeric format S11:4 format. 274 For MAPDV2 this value is generated according to Clause 6.2.3.2 of 275 [G.1020]. For interval reports the MAPDV2 value is reset at the 276 start of the interval. 278 For interarrival jitter, the value reported is the value of J(i) 279 calculated according to [RFC3550] at the time the report is 280 generated. 282 For 2-point PDV, the value reported is the mean of per-packet 283 2-point PDV values. This metric indicates the arrival time of the 284 first media packet of the session with respect to the mean of the 285 arrival times of every packet of the session. A single value of 286 the metric (for a single session) may not be useful by itself, but 287 its average over a number of sessions may be useful in diagnosing 288 media delay at session startup. For example, this might occur if 289 media packets are often delayed behind signalling packets due to 290 head-of-line blocking. 292 If the measured value is more negative than -2047.9375 (the value 293 which would be coded as 0x8001), the value 0x8000 SHOULD be 294 reported to indicate an over-range negative measurement. If the 295 measured value is more positive than +2047.8125 (the value which 296 would be coded as 0x7FFD), the value 0x7FFE SHOULD be reported to 297 indicate an over-range positive measurement. If the measurement 298 is unavailable, the value 0x7FFF SHOULD be reported. 300 Unused: 16 bits 302 These bits are unused. They SHOULD be set to zero by the sender 303 and MUST be ignored by the receiver. 305 3.3. Guidance on use of PDV metrics 307 This subsection provides informative guidance on when it might be 308 appropriate to use each of the PDV metric types. 310 Interarrival jitter (Section 6.4.1 of [RFC3550]) allows comparison of 311 results with those from RTP end systems which support only RTCP as 312 defined in [RFC3550]. 314 MAPDV2 (Clause 6.2.3.2 of [G.1020]) compares instantaneous (per- 315 packet) delay variation against a moving average delay variation. 316 This metric could be useful in determining residual impairment when 317 an RTP end system uses an adaptive de-jitter buffer which tracks the 318 average delay variation, provided the adaptive de-jitter buffer have 319 similar averaging behaviour as the MAPDV2 algorithm. 321 2-point PDV (Clause 6.2.4 of [Y.1540]) reports absolute packet delay 322 variation with respect to the time of arrival of the first packet of 323 the connection. In an RTP context, the two "points" are at the 324 sender (the synchronization source which applies RTP timestamps) and 325 at the receiver. The value of this metric for the packet with index 326 j is identical to the quantity D(i,j) defined in Section 6.4.1 of 327 [RFC3550] if the packet index i is set equal to 1, that is, the 328 reference packet for the metric is the first packet of the 329 connection. The metric includes the effect of the frequency offsets 330 of clocks in both the sender and receiver end systems, so it is 331 useful mainly in network where synchronisation is distributed. As 332 well as measuring packet delay variation in such networks, it may be 333 used to ensure that synchronisation is effective, for example where 334 the network carries ISDN data traffic over RTP [RFC4040]. The metric 335 is likely to be useful in networks which use fixed de-jitter 336 buffering, because it may be used to determine the length of the 337 required de-jitter buffer, or to determine if network performance has 338 deteriorated such that existing de-jitter buffers are too small to 339 accommodate the observed delay variation. 341 3.4. Examples of use 343 (a) To report interarrival jitter [RFC3550]: 345 Threshold PDV = FFFF (Undefined); PDV Percentile = FFFF 346 (Undefined); PDV type = 0 (interarrival jitter) 348 causes interarrival jitter to be reported in the Mean PDV 349 field. 351 (b) To report MAPDV2 [G.1020]: 353 Pos Threshold PDV = 50.0; Pos PDV Percentile = 95.3; Neg 354 Threshold PDV = 50.0 (note this implies -50ms); Neg PDV 355 Percentile = 98.4; PDV type = 1 (MAPDV2) 357 causes average MAPDV2 to be reported in the Mean PDV field. 359 Note that implementations may either fix the reported 360 percentile and calculate the associated PDV level or may fix a 361 threshold PDV level and calculate the associated percentile. 362 From a practical implementation perspective it is simpler to 363 use the second of these approaches (except of course in the 364 extreme case of a 100% percentile). 366 2-point PDV, according to [Y.1540] is the difference in delay 367 between the current packet and the first packet of the stream. 368 If the sending and receiving clocks are not synchronized, this 369 metric includes the effect of relative timing drift. 371 4. SDP Signaling 373 [RFC3611] defines the use of SDP (Session Description Protocol) 374 [RFC4566] for signaling the use of XR blocks. XR blocks MAY be used 375 without prior signaling. 377 This section augments the SDP [RFC4566] attribute "rtcp-xr" defined 378 in [RFC3611] by providing an additional value of "xr-format" to 379 signal the use of the report block defined in this document. 381 rtcp-xr-attrib = "a=" "rtcp-xr" ":" [xr-format *(SP xr-format)] CRLF 383 (defined in [RFC3611]) 385 xr-format =/ xr-pdv-block 387 xr-pdv-block = "pkt-dly-var" [ "," pdvtype ] [ "," nspec "," pspec ] 389 pdvtype = "pdv=" 0 ; interarrival jitter RFC 3550 390 / 1 ; MAPDV2 ITU-T G.1020 391 / 2 ; 2-point PDV ITU-T Y.1540 392 nspec = "nthr=" fixpoint ; negative PDV threshold (ms) 393 / "npc=" fixpoint ; negative PDV percentile 394 pspec = "pthr=" fixpoint ; positive PDV threshold (ms) 395 / "ppc=" fixpoint ; positive PDV percentile 397 fixpoint = 1*DIGIT "." 1*DIGIT ; fixed point decimal 398 DIGIT = %x30-39 400 When SDP is used in offer-answer, a system sending SDP may request a 401 specific type of PDV measurement. In addition, they may state a 402 specific percentile or threshold value, and expect to receive the 403 corresponding threshold or percentile metric, respectively. The 404 system receiving the SDP SHOULD send the PDV metrics requested, but 405 if the metric is not available, the system receiving the SDP SHOULD 406 send the flag value indicating that the metric is unavailable. 408 5. IANA Considerations 410 New block types for RTCP XR are subject to IANA registration. For 411 general guidelines on IANA considerations for RTCP XR, refer to 412 [RFC3611]. 414 5.1. New RTCP XR Block Type value 416 This document assigns the block type value NPDV in the IANA "RTCP XR 417 Block Type Registry" to the "Packet Delay Variation Metrics Block". 419 [Note to RFC Editor: please replace NPDV with the IANA provided RTCP 420 XR block type for this block.] 422 5.2. New RTCP XR SDP Parameter 424 This document also registers a new parameter "pkt-dly-var" in the 425 "RTCP XR SDP Parameters Registry". 427 5.3. Contact information for registrations 429 The contact information for the registrations is: 431 Qin Wu (sunseawq@huawei.com) 433 101 Software Avenue, Yuhua District 434 Nanjing, Jiangsu 210012 435 China 437 5.4. New registry of PDV types 439 This document creates a new registry to be called "RTCP XR PDV block 440 - PDV type" as a sub-registry of the "RTP Control Protocol Extended 441 Reports (RTCP XR) Block Type Registry". Policies for this new 442 registry are as follows: 444 o The information required to support an assignment is an 445 unambiguous definition of the new metric, covering the base 446 measurements and how they are processed to generate the reported 447 metric. This should include the units of measurement, how values 448 of the metric are reported in the three 16-bit fields "Pos PDV 449 Threshold/Peak", "Neg PDV Threshold/Peak" and "Mean PDV" within 450 the report block, and how the metric uses the two 16-bit fields 451 "Pos PDV Percentile" and "Neg PDV Percentile". 453 o The review process for the registry is "Specification Required" as 454 described in Section 4.1 of [RFC5226]. 456 o Entries in the registry are integers. The valid range is 0 to 15 457 corresponding to the 4-bit field "pdvtyp" in the block. Values 458 are to be recorded in decimal. 460 o Initial assignments are as follows: 462 1. interarrival jitter, Section 6.4.1 of [RFC3550], 464 2. MAPDV2, Clause 6.2.3.2 of [G.1020], 466 3. 2-point PDV, Clause 6.2.4 of [Y.1540] 468 6. Security Considerations 470 It is believed that this proposed RTCP XR report block introduces no 471 new security considerations beyond those described in [RFC3611]. 472 This block does not provide per-packet statistics so the risk to 473 confidentiality documented in Section 7, paragraph 3 of [RFC3611] 474 does not apply. 476 7. References 478 7.1. Normative References 480 [G.1020] ITU-T, "ITU-T Rec. G.1020, Performance parameter 481 definitions for quality of speech and other voiceband 482 applications utilizing IP networks", July 2006. 484 [RFC2119] Bradner, S., "Key words for use in RFCs to Indicate 485 Requirement Levels", March 1997. 487 [RFC3550] Schulzrinne, H., "RTP: A Transport Protocol for Real-Time 488 Applications", RFC 3550, July 2003. 490 [RFC3611] Friedman, T., Caceres, R., and A. Clark, "RTP Control 491 Protocol Extended Reports (RTCP XR)", November 2003. 493 [RFC4040] Kreuter, R., "RTP Payload Format for a 64 kbit/s 494 Transparent Call", April 2005. 496 [RFC4566] Handley, M., Jacobson, V., and C. Perkins, "SDP: Session 497 Description Protocol", July 2006. 499 [RFC5226] Narten, T., "Guidelines for Writing an IANA Considerations 500 Section in RFCs", May 2008. 502 BCP 26 504 [Y.1540] ITU-T, "ITU-T Rec. Y.1540, IP packet transfer and 505 availability performance parameters", November 2007. 507 7.2. Informative References 509 [MONARCH] Hunt, G., "Monitoring Architectures for RTP", 510 ID draft-ietf-avtcore-monarch-04, August 2011. 512 [PMOLFRAME] 513 Clark, A. and B. Claise, "Framework for Performance Metric 514 Development", ID draft-ietf-pmol-metrics-framework-12, 515 July 2011. 517 Appendix A. Change Log 519 Note to the RFC-Editor: please remove this section prior to 520 publication as an RFC. 522 A.1. draft-ietf-avt-rtcp-xr-pdv-03 524 The following are the major changes to previous version : 526 o Changed BNF for SDP following Christian Groves' and Tom Taylor's 527 comments (4th and 5th May 2009). 529 o Updated references. 531 A.2. draft-ietf-xrblock-rtcp-xr-pdv-00 533 The following are the major changes to previous version 534 draft-ietf-avt-rtcp-xr-pdv-03 : 536 o Updated references. 538 Authors' Addresses 540 Geoff Hunt 541 Unaffiliated 543 Email: r.geoff.hunt@gmail.com 545 Alan Clark 546 Telchemy Incorporated 547 2905 Premiere Parkway, Suite 280 548 Duluth, GA 30097 549 USA 551 Email: alan.d.clark@telchemy.com 553 Qin Wu 554 Huawei 555 101 Software Avenue, Yuhua District 556 Nanjing, Jiangsu 210012 557 China 559 Email: sunseawq@huawei.com