Audio/Video Transport Working Group G. Hunt Internet-Draft Unaffiliated Intended status: Standards Track A. Clark Expires: November 29, 2012 Telchemy Q. Wu Huawei May 28, 2012 RTCP XR Report Block for Packet Delay Variation Metric Reporting draft-ietf-xrblock-rtcp-xr-pdv-03.txt Abstract This document defines an RTCP XR Report Block that allows the reporting of Packet Delay Variation metrics for a range of RTP applications. Status of this Memo This Internet-Draft is submitted in full conformance with the provisions of BCP 78 and BCP 79. Internet-Drafts are working documents of the Internet Engineering Task Force (IETF). Note that other groups may also distribute working documents as Internet-Drafts. The list of current Internet- Drafts is at http://datatracker.ietf.org/drafts/current/. Internet-Drafts are draft documents valid for a maximum of six months and may be updated, replaced, or obsoleted by other documents at any time. It is inappropriate to use Internet-Drafts as reference material or to cite them other than as "work in progress." This Internet-Draft will expire on November 29, 2012. Copyright Notice Copyright (c) 2012 IETF Trust and the persons identified as the document authors. All rights reserved. This document is subject to BCP 78 and the IETF Trust's Legal Provisions Relating to IETF Documents (http://trustee.ietf.org/license-info) in effect on the date of publication of this document. Please review these documents carefully, as they describe your rights and restrictions with respect to this document. Code Components extracted from this document must include Simplified BSD License text as described in Section 4.e of the Trust Legal Provisions and are provided without warranty as Hunt, et al. Expires November 29, 2012 [Page 1] Internet-Draft RTCP XR Packet Delay Variation May 2012 described in the Simplified BSD License. Table of Contents 1. Introduction . . . . . . . . . . . . . . . . . . . . . . . . . 3 1.1. Packet Delay Variation Metrics Block . . . . . . . . . . . 3 1.2. RTCP and RTCP XR Reports . . . . . . . . . . . . . . . . . 3 1.3. Performance Metrics Framework . . . . . . . . . . . . . . 3 1.4. Applicability . . . . . . . . . . . . . . . . . . . . . . 3 2. Terminology . . . . . . . . . . . . . . . . . . . . . . . . . 4 2.1. Standards Language . . . . . . . . . . . . . . . . . . . . 4 2.2. Notations . . . . . . . . . . . . . . . . . . . . . . . . 4 3. Packet Delay Variation Metrics Block . . . . . . . . . . . . . 5 3.1. Report Block Structure . . . . . . . . . . . . . . . . . . 5 3.2. Definition of Fields in PDV Metrics Block . . . . . . . . 5 3.3. Guidance on use of PDV metrics . . . . . . . . . . . . . . 8 3.4. Examples of use . . . . . . . . . . . . . . . . . . . . . 9 4. SDP Signaling . . . . . . . . . . . . . . . . . . . . . . . . 11 5. IANA Considerations . . . . . . . . . . . . . . . . . . . . . 12 5.1. New RTCP XR Block Type value . . . . . . . . . . . . . . . 12 5.2. New RTCP XR SDP Parameter . . . . . . . . . . . . . . . . 12 5.3. Contact information for registrations . . . . . . . . . . 12 5.4. New registry of PDV types . . . . . . . . . . . . . . . . 12 6. Security Considerations . . . . . . . . . . . . . . . . . . . 14 7. References . . . . . . . . . . . . . . . . . . . . . . . . . . 15 7.1. Normative References . . . . . . . . . . . . . . . . . . . 15 7.2. Informative References . . . . . . . . . . . . . . . . . . 15 Appendix A. Change Log . . . . . . . . . . . . . . . . . . . . . 16 A.1. draft-ietf-xrblock-rtcp-xr-pdv-03 . . . . . . . . . . . . 16 A.2. draft-ietf-xrblock-rtcp-xr-pdv-02 . . . . . . . . . . . . 16 A.3. draft-ietf-xrblock-rtcp-xr-pdv-01 . . . . . . . . . . . . 16 A.4. draft-ietf-xrblock-rtcp-xr-pdv-00 . . . . . . . . . . . . 16 A.5. draft-ietf-avt-rtcp-xr-pdv-03 . . . . . . . . . . . . . . 17 Authors' Addresses . . . . . . . . . . . . . . . . . . . . . . . . 18 Hunt, et al. Expires November 29, 2012 [Page 2] Internet-Draft RTCP XR Packet Delay Variation May 2012 1. Introduction 1.1. Packet Delay Variation Metrics Block This draft defines a new block type to augment those defined in [RFC3611], for use in a range of RTP applications. The new block type provides information on Packet Delay Variation using one of several standard metrics. The metrics belong to the class of transport metrics defined in [MONARCH] . 1.2. RTCP and RTCP XR Reports The use of RTCP for reporting is defined in [RFC3550]. [RFC3611] defined an extensible structure for reporting using an RTCP Extended Report (XR). This draft defines a new Extended Report block that must be used in accordance with [RFC3550] and [RFC3611]. 1.3. Performance Metrics Framework The Performance Metrics Framework [RFC6390] provides guidance on the definition and specification of performance metrics. The RTP Monitoring Architectures [MONARCH] provides guideline for reporting block format using RTCP XR. The XR Block described in this document are in accordance with the guidelines in [RFC6390] and [MONARCH]. 1.4. Applicability These metrics are applicable to a wide range of RTP applications in which the application streams are sensitive to delay variation [RFC5481]. Hunt, et al. Expires November 29, 2012 [Page 3] Internet-Draft RTCP XR Packet Delay Variation May 2012 2. Terminology 2.1. Standards Language The key words "MUST", "MUST NOT", "REQUIRED", "SHALL", "SHALL NOT", "SHOULD", "SHOULD NOT", "RECOMMENDED", "MAY", and "OPTIONAL" in this document are to be interpreted as described in RFC 2119 [RFC2119]. 2.2. Notations This report block makes use of binary fractions. The terminology used is Numeric formats S X:Y where S indicates a two's complement signed representation, X the number of bits prior to the decimal place and Y the number of bits after the decimal place. Hence 8:8 represents an unsigned number in the range 0.0 to 255.996 with a granularity of 0.0039. S7:8 would represent the range -127.996 to +127.996. 0:16 represents a proper binary fraction with range 0.0 to 1 - 1/65536 = 0.9999847 though note that use of flag values at the top of the numeric range slightly reduces this upper limit. For example, if the 16- bit values 0xfffe and 0xffff are used as flags for "over- range" and "unavailable" conditions, a 0:16 quantity has range 0.0 to 1 - 3/65536 = 0.9999542 Hunt, et al. Expires November 29, 2012 [Page 4] Internet-Draft RTCP XR Packet Delay Variation May 2012 3. Packet Delay Variation Metrics Block Metrics in this block report on packet delay variation in the stream arriving at the RTP system. Instances of this Metrics Block refer by Synchronization source (SSRC) to the separate auxiliary Measurement Information block [MEASI] which contains measurement intervals. This metric block relies on the measurement interval in the Measurement Information block indicating the span of the report and SHOULD be sent in the same compound RTCP packet as the measurement information block. If the measurement interval is not received for this metric block, this metric block SHOULD be discarded. 3.1. Report Block Structure PDV metrics block 0 1 2 3 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 +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | BT=NPDV | I |pdvtyp |Rsv| block length=3 | +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | SSRC of Source | +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | Pos PDV Threshold/Peak | Pos PDV Percentile | +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | Neg PDV Threshold/Peak | Neg PDV Percentile | +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | Mean PDV | unused | +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ Figure 1: Report Block Structure 3.2. Definition of Fields in PDV Metrics Block Block type (BT): 8 bits A Packet Delay Variation Metrics Report Block is identified by the constant NPDV. [Note to RFC Editor: please replace NPDV with the IANA provided RTCP XR block type for this block.] Interval Metric flag (I): 2 bit This field is used to indicate whether the Packet Delay variation metrics are Sampled, Interval or Cumulative metrics, that is, whether the reported values applies to the most recent measurement Hunt, et al. Expires November 29, 2012 [Page 5] Internet-Draft RTCP XR Packet Delay Variation May 2012 interval duration between successive metrics reports (I=10) (the Interval Duration) or to the accumulation period characteristic of cumulative measurements (I=11) (the Cumulative Duration) or is a sampled instantaneous value (I=01) (Sampled Value). Packet Delay Variation Metric Type (pdvtyp): 4 bits Packet Delay Variation Metric Type is of type enumerated and should be interpreted as Integer. This field is used to identify the Packet Delay Variation Metric Type used in this report block, according to the following code: bits 014-011 0: MAPDV2, Clause 6.2.3.2 of [G.1020], 1: 2-point PDV, Clause 6.2.4 of [Y.1540]. Rsv.: 2 bits This field is reserved for future definition. In the absence of such a definition, the bits in this field SHOULD be set to zero and MUST be ignored by the receiver. Block Length: 16 bits The length of this report block in 32-bit words, minus one. For the Packet Delay Variation Metrics block, the block length is equal to 4. SSRC of source: 32 bits As defined in Section 4.1 of [RFC3611]. Positive PDV Threshold/Peak: 16 bits This field is associated with the Positive PDV percentile and expressed in Milliseconds with numeric format S11:4. The term Positive represents that the packets are arriving later than the expected time. If the measured value is more negative than -2047.9375 (the value Hunt, et al. Expires November 29, 2012 [Page 6] Internet-Draft RTCP XR Packet Delay Variation May 2012 which would be coded as 0x8001), the value 0x8000 SHOULD be reported to indicate an over-range negative measurement. If the measured value is more positive than +2047.8125 (the value which would be coded as 0x7FFD), the value 0x7FFE SHOULD be reported to indicate an over-range positive measurement. If the measurement is unavailable, the value 0x7FFF MUST be reported. Positive PDV Percentile: 16 bits The percentages of packets in the RTP stream for which individual packet delays were less than the Positive PDV Threshold. It is expressed in numeric format 8:8 with values from 0 to 100th percentile. If the measurement is unavailable, the value 0xFFFF MUST be reported. Negative PDV Threshold/Peak: 16 bits This field is associated with the Negative PDV percentile and expressed in Milliseconds with numeric format S11:4. The term Negative represents that the packets are arriving earlier than the expected time. If the measured value is more negative than -2047.9375 (the value which would be coded as 0x8001), the value 0x8000 SHOULD be reported to indicate an over-range negative measurement. If the measured value is more positive than +2047.8125 (the value which would be coded as 0x7FFD), the value 0x7FFE SHOULD be reported to indicate an over-range positive measurement. If the measurement is unavailable, the value 0x7FFF MUST be reported. Negative PDV Percentile: 16 bits The percentages of packets in the RTP stream for which individual packet delays were more than the Negative PDV Threshold. It is expressed in numeric format 8:8 with values from 0 to 100th percentile. If the measurement is unavailable, the value 0xFFFF MUST be reported. If the PDV Type indicated is 2-point PDV and the Positive and Negative PDV Percentiles are set to 100.0 then the Positive and Negative Threshold/Peak PDV values are the peak values measured Hunt, et al. Expires November 29, 2012 [Page 7] Internet-Draft RTCP XR Packet Delay Variation May 2012 during the reporting interval (which may be from the start of the call for cumulative reports). In this case, the difference between the Positive and Negative Threshold/Peak values defines the range of 2-point PDV. Mean PDV: 16 bits The mean PDV value of data packets is expressed in milliseconds with Numeric format S11:4 format. For MAPDV2 this value is generated according to Clause 6.2.3.2 of [G.1020]. For interval reports the MAPDV2 value is reset at the start of the interval. For 2-point PDV, the value reported is the mean of per-packet 2-point PDV values. This metric indicates the arrival time of the first media packet of the session with respect to the mean of the arrival times of every packet of the session. A single value of the metric (for a single session) may not be useful by itself, but its average over a number of sessions may be useful in diagnosing media delay at session startup. For example, this might occur if media packets are often delayed behind signalling packets due to head-of-line blocking. If the measured value is more negative than -2047.9375 (the value which would be coded as 0x8001), the value 0x8000 SHOULD be reported to indicate an over-range negative measurement. If the measured value is more positive than +2047.8125 (the value which would be coded as 0x7FFD), the value 0x7FFE SHOULD be reported to indicate an over-range positive measurement. If the measurement is unavailable, the value 0x7FFF MUST be reported. Reserved: 16 bits These bits are reserved for future definition. They SHOULD be set to zero by the sender and MUST be ignored by the receiver. 3.3. Guidance on use of PDV metrics This subsection provides informative guidance on when it might be appropriate to use each of the PDV metric types. MAPDV2 (Clause 6.2.3.2 of [G.1020]) is the envelope of instantaneous (per-packet) delay when compared to the short term moving average delay. This metric could be useful in determining residual Hunt, et al. Expires November 29, 2012 [Page 8] Internet-Draft RTCP XR Packet Delay Variation May 2012 impairment when an RTP end system uses an adaptive de-jitter buffer which tracks the average delay variation, provided the adaptive de- jitter buffer have similar averaging behaviour as the MAPDV2 algorithm. 2-point PDV (Clause 6.2.4 of [Y.1540]) reports absolute packet delay variation with respect to a defined reference packet transfer delay . Note that the reference packet is generally selected as the packet with minimum delay based on the most common criterion (See section 1 and section 5.1 of [RFC5481] ). In an RTP context, the two "points" are at the sender (the synchronization source which applies RTP timestamps) and at the receiver. The value of this metric for the packet with index j is identical to the quantity D(i,j) defined in Section 6.4.1 of [RFC3550] and the packet index i should be set equal to the index of the reference packet for the metric in practice. The metric includes the effect of the frequency offsets of clocks in both the sender and receiver end systems, so it is useful mainly in network where synchronisation is distributed. As well as measuring packet delay variation in such networks, it may be used to ensure that synchronisation is effective, for example where the network carries ISDN data traffic over RTP [RFC4040]. The metric is likely to be useful in networks which use fixed de-jitter buffering, because it may be used to determine the length of the required de-jitter buffer, or to determine if network performance has deteriorated such that existing de-jitter buffers are too small to accommodate the observed delay variation. 3.4. Examples of use (b) To report MAPDV2 [G.1020]: Pos PDV Threshold = 50.0; Pos PDV Percentile = 95.3; Neg PDV Threshold = 50.0 (note this implies -50ms); Neg PDV Percentile = 98.4; PDV type = 1 (MAPDV2) causes average MAPDV2 to be reported in the Mean PDV field. Note that implementations may either fix the reported percentile and calculate the associated PDV level or may fix a threshold PDV level and calculate the associated percentile. From a practical implementation perspective it is simpler to use the second of these approaches (except of course in the extreme case of a 100% percentile). (b) To report 2-point PDV [Y.1540]: Pos PDV Threshold = 60 (note this implies +60ms); Pos PDV Percentile = 96.3; Neg PDV Threshold = 0; Neg PDV Percentile = Hunt, et al. Expires November 29, 2012 [Page 9] Internet-Draft RTCP XR Packet Delay Variation May 2012 0; PDV type = 1 (2-point PDV) causes 2-point PDV to be reported in the Mean PDV field. 2-point PDV, according to [Y.1540] is the difference in delay between the current packet and the referenced packet of the stream. If the sending and receiving clocks are not synchronized, this metric includes the effect of relative timing drift. Hunt, et al. Expires November 29, 2012 [Page 10] Internet-Draft RTCP XR Packet Delay Variation May 2012 4. SDP Signaling [RFC3611] defines the use of SDP (Session Description Protocol) [RFC4566] for signaling the use of XR blocks. XR blocks MAY be used without prior signaling. This section augments the SDP [RFC4566] attribute "rtcp-xr" defined in [RFC3611] by providing an additional value of "xr-format" to signal the use of the report block defined in this document. rtcp-xr-attrib = "a=" "rtcp-xr" ":" [xr-format *(SP xr-format)] CRLF (defined in [RFC3611]) xr-format =/ xr-pdv-block xr-pdv-block = "pkt-dly-var" [ "," pdvtype ] [ "," nspec "," pspec ] pdvtype = "pdv=" 0 ; MAPDV2 ITU-T G.1020 / 1 ; 2-point PDV ITU-T Y.1540 nspec = "nthr=" fixpoint ; negative PDV threshold (ms) / "npc=" fixpoint ; negative PDV percentile pspec = "pthr=" fixpoint ; positive PDV threshold (ms) / "ppc=" fixpoint ; positive PDV percentile fixpoint = 1*DIGIT "." 1*DIGIT ; fixed point decimal DIGIT = %x30-39 When SDP is used in offer-answer, a system sending SDP may request a specific type of PDV measurement. In addition, they may state a specific percentile or threshold value, and expect to receive the corresponding threshold or percentile metric, respectively. The system receiving the SDP SHOULD send the PDV metrics requested, but if the metric is not available, the system receiving the SDP MUST send the metric block with the flag value indicating that the metric is unavailable. Hunt, et al. Expires November 29, 2012 [Page 11] Internet-Draft RTCP XR Packet Delay Variation May 2012 5. IANA Considerations New block types for RTCP XR are subject to IANA registration. For general guidelines on IANA considerations for RTCP XR, refer to [RFC3611]. 5.1. New RTCP XR Block Type value This document assigns the block type value NPDV in the IANA "RTCP XR Block Type Registry" to the "Packet Delay Variation Metrics Block". [Note to RFC Editor: please replace NPDV with the IANA provided RTCP XR block type for this block.] 5.2. New RTCP XR SDP Parameter This document also registers a new parameter "pkt-dly-var" in the "RTCP XR SDP Parameters Registry". 5.3. Contact information for registrations The contact information for the registrations is: Qin Wu (sunseawq@huawei.com) 101 Software Avenue, Yuhua District Nanjing, Jiangsu 210012 China 5.4. New registry of PDV types This document creates a new registry to be called "RTCP XR PDV block - PDV type" as a sub-registry of the "RTP Control Protocol Extended Reports (RTCP XR) Block Type Registry". Policies for this new registry are as follows: o The information required to support an assignment is an unambiguous definition of the new metric, covering the base measurements and how they are processed to generate the reported metric. This should include the units of measurement, how values of the metric are reported in the three 16-bit fields "Pos PDV Threshold/Peak", "Neg PDV Threshold/Peak" and "Mean PDV" within the report block, and how the metric uses the two 16-bit fields "Pos PDV Percentile" and "Neg PDV Percentile". Hunt, et al. Expires November 29, 2012 [Page 12] Internet-Draft RTCP XR Packet Delay Variation May 2012 o The review process for the registry is "Specification Required" as described in Section 4.1 of [RFC5226]. o Entries in the registry are integers. The valid range is 0 to 15 corresponding to the 4-bit field "pdvtyp" in the block. Values are to be recorded in decimal. o Initial assignments are as follows: * 0: MAPDV2, Clause 6.2.3.2 of [G.1020], * 1: 2-point PDV, Clause 6.2.4 of [Y.1540] Hunt, et al. Expires November 29, 2012 [Page 13] Internet-Draft RTCP XR Packet Delay Variation May 2012 6. Security Considerations It is believed that this proposed RTCP XR report block introduces no new security considerations beyond those described in [RFC3611]. This block does not provide per-packet statistics so the risk to confidentiality documented in Section 7, paragraph 3 of [RFC3611] does not apply. Hunt, et al. Expires November 29, 2012 [Page 14] Internet-Draft RTCP XR Packet Delay Variation May 2012 7. References 7.1. Normative References [G.1020] ITU-T, "ITU-T Rec. G.1020, Performance parameter definitions for quality of speech and other voiceband applications utilizing IP networks", July 2006. [RFC2119] Bradner, S., "Key words for use in RFCs to Indicate Requirement Levels", March 1997. [RFC3550] Schulzrinne, H., "RTP: A Transport Protocol for Real-Time Applications", RFC 3550, July 2003. [RFC3611] Friedman, T., Caceres, R., and A. Clark, "RTP Control Protocol Extended Reports (RTCP XR)", November 2003. [RFC4040] Kreuter, R., "RTP Payload Format for a 64 kbit/s Transparent Call", April 2005. [RFC4566] Handley, M., Jacobson, V., and C. Perkins, "SDP: Session Description Protocol", July 2006. [RFC5226] Narten, T., "Guidelines for Writing an IANA Considerations Section in RFCs", May 2008. BCP 26 [Y.1540] ITU-T, "ITU-T Rec. Y.1540, IP packet transfer and availability performance parameters", November 2007. 7.2. Informative References [MEASI] Hunt, G., "Measurement Identity and information Reporting using SDES item and XR Block", ID draft-ietf-xrblock-rtcp-xr-meas-identity-06, April 2012. [MONARCH] Hunt, G., "Monitoring Architectures for RTP", ID draft-ietf-avtcore-monarch-13, May 2012. [RFC5481] Morton, A. and B. Claise, "Packet Delay Variation Applicability Statement", RFC 5481, March 2009. [RFC6390] Clark, A. and B. Claise, "Framework for Performance Metric Development", RFC 6390, October 2011. Hunt, et al. Expires November 29, 2012 [Page 15] Internet-Draft RTCP XR Packet Delay Variation May 2012 Appendix A. Change Log Note to the RFC-Editor: please remove this section prior to publication as an RFC. A.1. draft-ietf-xrblock-rtcp-xr-pdv-03 The following are the major changes to previous version draft-ietf-xrblock-rtcp-xr-pdv-02: o Make definition of pdvtype get alignment with IANA section. o Make Guidance on use of PDV metrics get alignment with RFC5481. o Other Editorial changes. A.2. draft-ietf-xrblock-rtcp-xr-pdv-02 The following are the major changes to previous version draft-ietf-xrblock-rtcp-xr-pdv-01: o Updated references. o Allocate one more bit for Interval metric flag to indicate sampled metric can be used. o Add a few clarification text for failure mode. A.3. draft-ietf-xrblock-rtcp-xr-pdv-01 The following are the major changes to previous version draft-ietf-xrblock-rtcp-xr-pdv-00: o Fix typos or nits in the definition of Negative PDV Threshold/ Peak. o Fix nits in Numeric format S7:8. o remove the text that is relevant to tag field. o Add text in SDP signaling section to clarify indicationof metric unavailable. A.4. draft-ietf-xrblock-rtcp-xr-pdv-00 The following are the major changes to previous version draft-ietf-avt-rtcp-xr-pdv-03: Hunt, et al. Expires November 29, 2012 [Page 16] Internet-Draft RTCP XR Packet Delay Variation May 2012 o Updated references. A.5. draft-ietf-avt-rtcp-xr-pdv-03 The following are the major changes to previous version : o Changed BNF for SDP following Christian Groves' and Tom Taylor's comments (4th and 5th May 2009). o Updated references. Hunt, et al. Expires November 29, 2012 [Page 17] Internet-Draft RTCP XR Packet Delay Variation May 2012 Authors' Addresses Geoff Hunt Unaffiliated Email: r.geoff.hunt@gmail.com Alan Clark Telchemy Incorporated 2905 Premiere Parkway, Suite 280 Duluth, GA 30097 USA Email: alan.d.clark@telchemy.com Qin Wu Huawei 101 Software Avenue, Yuhua District Nanjing, Jiangsu 210012 China Email: sunseawq@huawei.com Hunt, et al. Expires November 29, 2012 [Page 18]