idnits 2.17.1 draft-ietf-xrblock-rtcp-xr-pdv-01.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 (October 28, 2011) is 4563 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: April 30, 2012 Telchemy 6 Q. Wu 7 Huawei 8 October 28, 2011 10 RTCP XR Report Block for Packet Delay Variation Metric Reporting 11 draft-ietf-xrblock-rtcp-xr-pdv-01.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 April 30, 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 A.3. draft-ietf-xrblock-rtcp-xr-pdv-01 . . . . . . . . . . . . 16 78 Authors' Addresses . . . . . . . . . . . . . . . . . . . . . . . . 17 80 1. Introduction 82 1.1. Packet Delay Variation Metrics Block 84 This draft defines a new block type to augment those defined in 85 [RFC3611], for use in a range of RTP applications. 87 The new block type provides information on Packet Delay Variation 88 using one of several standard metrics. 90 The metrics belong to the class of transport metrics defined in 91 [MONARCH] (work in progress). 93 1.2. RTCP and RTCP XR Reports 95 The use of RTCP for reporting is defined in [RFC3550]. [RFC3611] 96 defined an extensible structure for reporting using an RTCP Extended 97 Report (XR). This draft defines a new Extended Report block that 98 MUST be used in accordance with [RFC3550] and [RFC3611]. 100 1.3. Performance Metrics Framework 102 The Performance Metrics Framework [PMOLFRAME] provides guidance on 103 the definition and specification of performance metrics. Metrics 104 described in this draft either reference external definitions or 105 define metrics generally in accordance with the guidelines in 106 [PMOLFRAME]. 108 1.4. Applicability 110 These metrics are applicable to a range of RTP applications. 112 2. Definitions 114 This report block makes use of binary fractions. The terminology 115 used is 117 Numeric formats S X:Y 119 where S indicates a two's complement signed representation, X 120 the number of bits prior to the decimal place and Y the number 121 of bits after the decimal place. 123 Hence 8:8 represents an unsigned number in the range 0.0 to 124 255.996 with a granularity of 0.0039. S7:8 would represent the 125 range -127.996 to +127.996. 0:16 represents a proper binary 126 fraction with range 128 0.0 to 1 - 1/65536 = 0.9999847 130 though note that use of flag values at the top of the numeric 131 range slightly reduces this upper limit. For example, if the 132 16- bit values 0xfffe and 0xffff are used as flags for "over- 133 range" and "unavailable" conditions, a 0:16 quantity has range 135 0.0 to 1 - 3/65536 = 0.9999542 137 3. Packet Delay Variation Metrics Block 139 Metrics in this block report on packet delay variation in the stream 140 arriving at the RTP system. 142 3.1. Report Block Structure 144 PDV metrics block 146 0 1 2 3 147 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 148 +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ 149 | BT=NPDV |I|pdvtyp | Rsv.| block length=3 | 150 +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ 151 | SSRC of Source | 152 +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ 153 | Pos PDV Threshold/Peak | Pos PDV Percentile | 154 +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ 155 | Neg PDV Threshold/Peak | Neg PDV Percentile | 156 +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ 157 | Mean PDV | unused | 158 +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ 160 Figure 1: Report Block Structure 162 3.2. Definition of Fields in PDV Metrics Block 164 Block type (BT): 8 bits 166 A Packet Delay Variation Metrics Report Block is identified by the 167 constant NPDV. 169 [Note to RFC Editor: please replace NPDV with the IANA provided 170 RTCP XR block type for this block.] 172 Interval Metric flag (I): 1 bit 174 This field is used to indicate whether the Packet Delay Variation 175 metrics block is an Interval or a Cumulative report, that is, 176 whether the reported values apply to the most recent measurement 177 interval duration between successive metrics reports (I=1) (the 178 Interval Duration) or to the accumulation period characteristic of 179 cumulative measurements (I=0) (the Cumulative Duration). 181 Packet Delay Variation Metric Type (pdvtyp): 4 bits 183 This field is used to identify the Packet Delay Variation Metric 184 Type used in this report block, according to the following code: 186 bits 014-017 188 0: interarrival jitter, Section 6.4.1 of [RFC3550], 190 1: MAPDV2, Clause 6.2.3.2 of [G.1020], 192 2: 2-point PDV, Clause 6.2.4 of [Y.1540]. 194 Rsv.: 3 bits 196 This field is reserved for future definition. In the absence of 197 such a definition, the bits in this field MUST be set to zero and 198 MUST be ignored by the receiver. 200 Block Length: 16 bits 202 The length of this report block in 32-bit words, minus one. For 203 the Packet Delay Variation Metrics block, the block length is 204 equal to 3. 206 SSRC of source: 32 bits 208 As defined in Section 4.1 of [RFC3611]. 210 Positive PDV Threshold/Peak: 16 bits 212 This field is associated with the Positive PDV percentile and 213 expressed in Milliseconds with numeric format S11:4. The term 214 Positive represents that the packets are arriving later than the 215 expected time. 217 If the measured value is more negative than -2047.9375 (the value 218 which would be coded as 0x8001), the value 0x8000 SHOULD be 219 reported to indicate an over-range negative measurement. If the 220 measured value is more positive than +2047.8125 (the value which 221 would be coded as 0x7FFD), the value 0x7FFE SHOULD be reported to 222 indicate an over-range positive measurement. If the measurement 223 is unavailable, the value 0x7FFF SHOULD be reported. 225 Positive PDV Percentile: 16 bits 227 The percentages of packets in the RTP stream for which individual 228 packet delays were less than the Positive PDV Threshold. It is 229 expressed in numeric format 8:8 with values from 0 to 100th 230 percentile. 232 If the measurement is unavailable, the value 0xFFFF SHOULD be 233 reported. 235 Negative PDV Threshold/Peak: 16 bits 237 This field is associated with the Negative PDV percentile and 238 expressed in Milliseconds with numeric format S11:4. The term 239 Negative represents that the packets are arriving earlier than the 240 expected time. 242 If the measured value is more negative than -2047.9375 (the value 243 which would be coded as 0x8001), the value 0x8000 SHOULD be 244 reported to indicate an over-range negative measurement. If the 245 measured value is more positive than +2047.8125 (the value which 246 would be coded as 0x7FFD), the value 0x7FFE SHOULD be reported to 247 indicate an over-range positive measurement. If the measurement 248 is unavailable, the value 0x7FFF SHOULD be reported. 250 Negative PDV Percentile: 16 bits 252 The percentages of packets in the RTP stream for which individual 253 packet delays were more than the Negative PDV Threshold. It is 254 expressed in numeric format 8:8 with values from 0 to 100th 255 percentile. 257 If the measurement is unavailable, the value 0xFFFF SHOULD be 258 reported. 260 If the PDV Type indicated is 2-point PDV and the Positive and 261 Negative PDV Percentiles are set to 100.0 then the Positive and 262 Negative Threshold/Peak PDV values are the peak values measured 263 during the reporting interval (which may be from the start of the 264 call for cumulative reports). In this case, the difference 265 between the Positive and Negative Threshold/Peak values defines 266 the range of 2-point PDV. 268 Mean PDV: 16 bits 270 The mean PDV value of data packets is expressed in milliseconds 271 with Numeric format S11:4 format. 273 For MAPDV2 this value is generated according to Clause 6.2.3.2 of 274 [G.1020]. For interval reports the MAPDV2 value is reset at the 275 start of the interval. 277 For interarrival jitter, the value reported is the value of J(i) 278 calculated according to [RFC3550] at the time the report is 279 generated. 281 For 2-point PDV, the value reported is the mean of per-packet 282 2-point PDV values. This metric indicates the arrival time of the 283 first media packet of the session with respect to the mean of the 284 arrival times of every packet of the session. A single value of 285 the metric (for a single session) may not be useful by itself, but 286 its average over a number of sessions may be useful in diagnosing 287 media delay at session startup. For example, this might occur if 288 media packets are often delayed behind signalling packets due to 289 head-of-line blocking. 291 If the measured value is more negative than -2047.9375 (the value 292 which would be coded as 0x8001), the value 0x8000 SHOULD be 293 reported to indicate an over-range negative measurement. If the 294 measured value is more positive than +2047.8125 (the value which 295 would be coded as 0x7FFD), the value 0x7FFE SHOULD be reported to 296 indicate an over-range positive measurement. If the measurement 297 is unavailable, the value 0x7FFF SHOULD be reported. 299 Unused: 16 bits 301 These bits are unused. They SHOULD be set to zero by the sender 302 and MUST be ignored by the receiver. 304 3.3. Guidance on use of PDV metrics 306 This subsection provides informative guidance on when it might be 307 appropriate to use each of the PDV metric types. 309 Interarrival jitter (Section 6.4.1 of [RFC3550]) allows comparison of 310 results with those from RTP end systems which support only RTCP as 311 defined in [RFC3550]. 313 MAPDV2 (Clause 6.2.3.2 of [G.1020]) compares instantaneous (per- 314 packet) delay variation against a moving average delay variation. 315 This metric could be useful in determining residual impairment when 316 an RTP end system uses an adaptive de-jitter buffer which tracks the 317 average delay variation, provided the adaptive de-jitter buffer have 318 similar averaging behaviour as the MAPDV2 algorithm. 320 2-point PDV (Clause 6.2.4 of [Y.1540]) reports absolute packet delay 321 variation with respect to the time of arrival of the first packet of 322 the connection. In an RTP context, the two "points" are at the 323 sender (the synchronization source which applies RTP timestamps) and 324 at the receiver. The value of this metric for the packet with index 325 j is identical to the quantity D(i,j) defined in Section 6.4.1 of 326 [RFC3550] if the packet index i is set equal to 1, that is, the 327 reference packet for the metric is the first packet of the 328 connection. The metric includes the effect of the frequency offsets 329 of clocks in both the sender and receiver end systems, so it is 330 useful mainly in network where synchronisation is distributed. As 331 well as measuring packet delay variation in such networks, it may be 332 used to ensure that synchronisation is effective, for example where 333 the network carries ISDN data traffic over RTP [RFC4040]. The metric 334 is likely to be useful in networks which use fixed de-jitter 335 buffering, because it may be used to determine the length of the 336 required de-jitter buffer, or to determine if network performance has 337 deteriorated such that existing de-jitter buffers are too small to 338 accommodate the observed delay variation. 340 3.4. Examples of use 342 (a) To report interarrival jitter [RFC3550]: 344 PDV Threshold = FFFF (Undefined); PDV Percentile = FFFF 345 (Undefined); PDV type = 0 (interarrival jitter) 347 causes interarrival jitter to be reported in the Mean PDV 348 field. 350 (b) To report MAPDV2 [G.1020]: 352 Pos PDV Threshold = 50.0; Pos PDV Percentile = 95.3; Neg PDV 353 Threshold = 50.0 (note this implies -50ms); Neg PDV Percentile 354 = 98.4; PDV type = 1 (MAPDV2) 356 causes average MAPDV2 to be reported in the Mean PDV field. 358 Note that implementations may either fix the reported 359 percentile and calculate the associated PDV level or may fix a 360 threshold PDV level and calculate the associated percentile. 361 From a practical implementation perspective it is simpler to 362 use the second of these approaches (except of course in the 363 extreme case of a 100% percentile). 365 2-point PDV, according to [Y.1540] is the difference in delay 366 between the current packet and the first packet of the stream. 367 If the sending and receiving clocks are not synchronized, this 368 metric includes the effect of relative timing drift. 370 4. SDP Signaling 372 [RFC3611] defines the use of SDP (Session Description Protocol) 373 [RFC4566] for signaling the use of XR blocks. XR blocks MAY be used 374 without prior signaling. 376 This section augments the SDP [RFC4566] attribute "rtcp-xr" defined 377 in [RFC3611] by providing an additional value of "xr-format" to 378 signal the use of the report block defined in this document. 380 rtcp-xr-attrib = "a=" "rtcp-xr" ":" [xr-format *(SP xr-format)] CRLF 382 (defined in [RFC3611]) 384 xr-format =/ xr-pdv-block 386 xr-pdv-block = "pkt-dly-var" [ "," pdvtype ] [ "," nspec "," pspec ] 388 pdvtype = "pdv=" 0 ; interarrival jitter RFC 3550 389 / 1 ; MAPDV2 ITU-T G.1020 390 / 2 ; 2-point PDV ITU-T Y.1540 391 nspec = "nthr=" fixpoint ; negative PDV threshold (ms) 392 / "npc=" fixpoint ; negative PDV percentile 393 pspec = "pthr=" fixpoint ; positive PDV threshold (ms) 394 / "ppc=" fixpoint ; positive PDV percentile 396 fixpoint = 1*DIGIT "." 1*DIGIT ; fixed point decimal 397 DIGIT = %x30-39 399 When SDP is used in offer-answer, a system sending SDP may request a 400 specific type of PDV measurement. In addition, they may state a 401 specific percentile or threshold value, and expect to receive the 402 corresponding threshold or percentile metric, respectively. The 403 system receiving the SDP SHOULD send the PDV metrics requested, but 404 if the metric is not available, the system receiving the SDP SHOULD 405 send the metric block with the flag value indicating that the metric 406 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 A.3. draft-ietf-xrblock-rtcp-xr-pdv-01 540 The following are the major changes to previous version 541 draft-ietf-xrblock-rtcp-xr-pdv-00 : 543 o Fix typos or nits in the definition of Negative PDV Threshold/ 544 Peak. 546 o Fix nits in Numeric format S7:8. 548 o remove the text that is relevant to tag field. 550 o Add text in SDP signaling section to clarify indicationof metric 551 unavailable. 553 Authors' Addresses 555 Geoff Hunt 556 Unaffiliated 558 Email: r.geoff.hunt@gmail.com 560 Alan Clark 561 Telchemy Incorporated 562 2905 Premiere Parkway, Suite 280 563 Duluth, GA 30097 564 USA 566 Email: alan.d.clark@telchemy.com 568 Qin Wu 569 Huawei 570 101 Software Avenue, Yuhua District 571 Nanjing, Jiangsu 210012 572 China 574 Email: sunseawq@huawei.com