Audio/Video Transport Working Group G. Hunt
Internet-Draft Unaffiliated
Intended status: Standards Track A. Clark
Expires: April 30, 2012 Telchemy
Q. Wu
Huawei
October 28, 2011

RTCP XR Report Block for Packet Delay Variation Metric Reporting
draft-ietf-xrblock-rtcp-xr-pdv-01.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 April 30, 2012.

Copyright Notice

Copyright (c) 2011 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 described in the Simplified BSD License.


Table of Contents

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] (work in progress).

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 [PMOLFRAME] provides guidance on the definition and specification of performance metrics. Metrics described in this draft either reference external definitions or define metrics generally in accordance with the guidelines in [PMOLFRAME].

1.4. Applicability

These metrics are applicable to a range of RTP applications.

2. Definitions

This report block makes use of binary fractions. The terminology used is

3. Packet Delay Variation Metrics Block

Metrics in this block report on packet delay variation in the stream arriving at the RTP system.

3.1. Report Block Structure

       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             |
      +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+

PDV metrics block

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): 1 bit


This field is used to indicate whether the Packet Delay Variation metrics block is an Interval or a Cumulative report, that is, whether the reported values apply to the most recent measurement interval duration between successive metrics reports (I=1) (the Interval Duration) or to the accumulation period characteristic of cumulative measurements (I=0) (the Cumulative Duration).

Packet Delay Variation Metric Type (pdvtyp): 4 bits


This field is used to identify the Packet Delay Variation Metric Type used in this report block, according to the following code:



Rsv.: 3 bits


This field is reserved for future definition. In the absence of such a definition, the bits in this field MUST 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 3.

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 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 SHOULD 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 SHOULD 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 SHOULD 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 SHOULD 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 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 interarrival jitter, the value reported is the value of J(i) calculated according to [RFC3550] at the time the report is generated.

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 SHOULD be reported.

Unused: 16 bits


These bits are unused. 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.

Interarrival jitter (Section 6.4.1 of [RFC3550]) allows comparison of results with those from RTP end systems which support only RTCP as defined in [RFC3550].

MAPDV2 (Clause 6.2.3.2 of [G.1020]) compares instantaneous (per- packet) delay variation against a moving average delay variation. This metric could be useful in determining residual 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 the time of arrival of the first packet of the connection. 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] if the packet index i is set equal to 1, that is, the reference packet for the metric is the first packet of the connection. 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

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.

   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      ; interarrival jitter  RFC 3550
                              / 1      ; MAPDV2 ITU-T G.1020
                              / 2      ; 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

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.

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 SHOULD send the metric block with the flag value indicating that the metric is unavailable.

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:

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.

7. References

7.1. Normative References

[G.1020] , , "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.
[RFC3611] Friedman, T., Caceres, R. and A. Clark, "RTP Control Protocol Extended Reports (RTCP XR)", November 2003.
[RFC4566] Handley, M., Jacobson, V. and C. Perkins, "SDP: Session Description Protocol", July 2006.
[RFC3550] Schulzrinne, H., "RTP: A Transport Protocol for Real-Time Applications", RFC 3550, July 2003.
[RFC4040] Kreuter, R., "RTP Payload Format for a 64 kbit/s Transparent Call", April 2005.
[RFC5226] Narten, T., "Guidelines for Writing an IANA Considerations Section in RFCs", May 2008.

BCP 26

[Y.1540] , , "ITU-T Rec. Y.1540, IP packet transfer and availability performance parameters", November 2007.

7.2. Informative References

[MONARCH] Hunt, G., "Monitoring Architectures for RTP", ID draft-ietf-avtcore-monarch-04, August 2011.
[PMOLFRAME] Clark, A. and B. Claise, "Framework for Performance Metric Development", ID draft-ietf-pmol-metrics-framework-12, July 2011.

Appendix A. Change Log

Note to the RFC-Editor: please remove this section prior to publication as an RFC.

Appendix A.1. draft-ietf-avt-rtcp-xr-pdv-03

The following are the major changes to previous version :

Appendix A.2. draft-ietf-xrblock-rtcp-xr-pdv-00

The following are the major changes to previous version draft-ietf-avt-rtcp-xr-pdv-03 :

Appendix 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 :

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