One document matched: draft-ietf-xrblock-rtcp-xr-jb-03.xml
<?xml version="1.0" encoding="UTF-8"?>
<!-- edited with XMLSPY v5 rel. 3 U (http://www.xmlspy.com)
by Daniel M Kohn (private) -->
<!DOCTYPE rfc SYSTEM "rfc2629.dtd" [
<!ENTITY rfc2119 PUBLIC "" "http://xml.resource.org/public/rfc/bibxml/reference.RFC.2119.xml">
]>
<rfc category="std" docName="draft-ietf-xrblock-rtcp-xr-jb-03.txt"
ipr="trust200902">
<?xml-stylesheet type='text/xsl' href='rfc2629.xslt' ?>
<?rfc toc="yes" ?>
<?rfc symrefs="yes" ?>
<?rfc sortrefs="yes"?>
<?rfc iprnotified="no" ?>
<?rfc strict="yes" ?>
<front>
<title abbrev="RTCP XR Jitter Buffer">RTP Control Protocol (RTCP) Extended
Report (XR) Block for Jitter Buffer Metric Reporting</title>
<author fullname="Alan Clark" initials="A." surname="Clark">
<organization abbrev="Telchemy">Telchemy Incorporated</organization>
<address>
<postal>
<street>2905 Premiere Parkway, Suite 280</street>
<city>Duluth</city>
<region>GA</region>
<code>30097</code>
<country>USA</country>
</postal>
<email>alan.d.clark@telchemy.com</email>
</address>
</author>
<author fullname="Varun Singh" initials="V" surname="Singh">
<organization>Aalto University</organization>
<address>
<postal>
<street>School of Electrical Engineering</street>
<street>Otakaari 5 A</street>
<city>Espoo</city>
<region>FIN</region>
<code>02150</code>
<country>Finland</country>
</postal>
<email>varun@comnet.tkk.fi</email>
</address>
</author>
<author fullname="Qin Wu" initials="Q." surname="Wu">
<organization>Huawei</organization>
<address>
<postal>
<street>101 Software Avenue, Yuhua District</street>
<city>Nanjing</city>
<region>Jiangsu</region>
<code>210012</code>
<country>China</country>
</postal>
<email>sunseawq@huawei.com</email>
</address>
</author>
<date year="2012" />
<area>Real-time Applications and Infrastructure Area</area>
<workgroup>Audio/Video Transport Working Group</workgroup>
<keyword>RFC</keyword>
<keyword>Request for Comments</keyword>
<keyword>I-D</keyword>
<keyword>Internet-Draft</keyword>
<keyword>Real Time Control Protocol</keyword>
<abstract>
<t>This document defines an RTP Control Protocol (RTCP) Extended Report
(XR) Block that allows the reporting of Jitter Buffer metrics for a
range of RTP applications.</t>
</abstract>
</front>
<middle>
<section anchor="intro" title="Introduction">
<section title="Jitter Buffer Metrics Block">
<t>This document defines a new block type to augment those defined in
<xref target="RFC3611"></xref>, for use in a range of RTP
applications.</t>
<t>The new block type provides information on jitter buffer
configuration and performance.</t>
<t>The metric belongs to the class of transport-related end system
metrics defined in <xref target="RFC6792"></xref>.</t>
<t>Instances of this Metrics Block refer by SSRC to the separate
auxiliary Measurement Information block <xref target="RFC6776"></xref>
which contains information such as the SSRC of the measured stream,
and RTP sequence numbers and time intervals indicating the span of the
report.</t>
</section>
<section title="RTCP and RTCP XR Reports">
<t>The use of RTCP for reporting is defined in <xref
target="RFC3550"></xref>. <xref target="RFC3611"></xref> defined an
extensible structure for reporting using an RTCP Extended Report (XR).
This document defines a new Extended Report block for use with <xref
target="RFC3550"></xref> and <xref target="RFC3611"></xref>.</t>
</section>
<section title="Performance Metrics Framework">
<t>The Performance Metrics Framework <xref target="RFC6390"></xref>
provides guidance on the definition and specification of performance
metrics. The RTP Monitoring Architectures <xref
target="RFC6792"></xref> provides guideline for reporting block format
using RTCP XR. Metrics described in this draft are in accordance with
the guidelines in <xref target="RFC6390"></xref><xref
target="RFC6792"></xref>.</t>
</section>
<section title="Applicability">
<t>Real-time applications employ a jitter buffer to smooth out jitter
encountered on the path from source to destination. These metrics are
used to measure how the jitter buffer behave as a result of the jitter
and applicable to a range of RTP applications. These metrics reflect
terminal related factor that most affects real-time application
quality and useful to provide more precise estimation for user
experience to the quality of real-time application performance and
also valuable to network manager in troubleshooting network.</t>
</section>
</section>
<section title="Terminology">
<section title="Standards Language">
<t>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 <xref
target="RFC2119">RFC 2119</xref>. </t>
</section>
</section>
<section title="Jitter Buffer Metrics Block">
<t>This block describes the configuration and operating parameters of
the jitter buffer in the receiver of the RTP end system or RTP mixer
which sends the report. Instances of this Metrics Block refer by SSRC to
the separate auxiliary Measurement Information block <xref
target="RFC6776"></xref> 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 in the same compound RTCP
packet as this metric block, this metric block should be discarded.</t>
<section title="Report Block Structure">
<t>JB Metrics Block<figure title="Figure 1: Report Block Structure">
<artwork>
0 1 2 3
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
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
| BT=NJB | I |C|Reserved | block length=3 |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
| SSRC of Source |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
| JB nominal | JB maximum |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
| JB high water mark | JB low water mark |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
</artwork>
</figure></t>
</section>
<section title="Definition of Fields in Jitter Buffer Metrics Block">
<t><list style="hanging">
<t hangText="Block type (BT): 8 bits"><vspace blankLines="1" /> A
Jitter Buffer Metrics Report Block is identified by the constant
NJB.<vspace blankLines="1" /> [Note to RFC Editor: please replace
NJB with the IANA provided RTCP XR block type for this
block.]<vspace blankLines="1" /></t>
<t hangText="Interval Metric flag (I): 2 bits"><vspace
blankLines="1" />This field is used to indicate whether the Jitter
Buffer metrics are Sampled, Interval or Cumulative metrics: <list>
<t>I=10: Interval Duration - the reported value applies to the
most recent measurement interval duration between successive
metrics reports.</t>
<t>I=11: Cumulative Duration - the reported value applies to
the accumulation period characteristic of cumulative
measurements.</t>
<t>I=01: Sampled Value - the reported value is a sampled
instantaneous value.</t>
</list><vspace blankLines="1" /></t>
<t hangText="Jitter Buffer Configuration (C): 1 bit"><vspace
blankLines="1" /> This field is used to identify the jitter buffer
method in use at the receiver, according to the following
code:<list>
<t><list>
<t>0 = Fixed jitter buffer</t>
<t>1 = Adaptive jitter buffer</t>
</list></t>
</list><vspace blankLines="1" /></t>
<t hangText="Reserved: 5 bits"><vspace blankLines="1" />These bits
are reserved. They MUST be set to zero by senders ignored by
receivers (See <xref target="RFC6709"></xref> section 4.2).
<vspace blankLines="1" /></t>
<t hangText="Block Length: 16 bits"><vspace blankLines="1" />The
length of this report block in 32-bit words, minus one and MUST be
set to 3, in accordance with the definition of this field in <xref
target="RFC3611"></xref>. The block MUST be discarded if the block
length is set to a different value. <vspace blankLines="1" /></t>
<t
hangText="jitter buffer nominal delay (JB nominal): 16 bits"><vspace
blankLines="1" />This is the current nominal jitter buffer delay
in milliseconds, which corresponds to the nominal jitter buffer
delay for packets that arrive exactly on time. It is calculated
based on the time for packets spent in the jitter buffer. This
parameter MUST be provided for both fixed and adaptive jitter
buffer implementations.<vspace blankLines="1" />If the measured
value exceeds 0xFFFD, the value 0xFFFE MUST be reported to
indicate an over-range measurement. If the measurement is
unavailable, the value 0xFFFF MUST be reported.<vspace
blankLines="1" /></t>
<t
hangText="jitter buffer maximum delay (JB maximum): 16 bits"><vspace
blankLines="1" />This is the current maximum jitter buffer delay
in milliseconds which corresponds to the earliest arriving packet
that would not be discarded. In simple queue implementations this
may correspond to the nominal size. In adaptive jitter buffer
implementations, this value may change dynamically. This parameter
MUST be provided for both fixed and adaptive jitter buffer
implementations.<vspace blankLines="1" />If the measured value
exceeds 0xFFFD, the value 0xFFFE MUST be reported to indicate an
over-range measurement. If the measurement is unavailable, the
value 0xFFFF MUST be reported.<vspace blankLines="1" /></t>
<t
hangText="jitter buffer high water mark (JB high water mark): 16 bits"><vspace
blankLines="1" /> This is the highest value of the jitter buffer
nominal delay in milliseconds which occurred at any time during
the reporting interval.<vspace blankLines="1" />If the measured
value exceeds 0xFFFD, the value 0xFFFE MUST be reported to
indicate an over-range measurement. If the measurement is
unavailable, the value 0xFFFF MUST be reported.<vspace
blankLines="1" /></t>
<t
hangText="jitter buffer low water mark (JB low water mark): 16 bits"><vspace
blankLines="1" />This is the lowest value of the jitter buffer
nominal delay in milliseconds which occurred at any time during
the reporting interval.<vspace blankLines="1" /> If the measured
value exceeds 0xFFFD, the value 0xFFFE MUST be reported to
indicate an over-range measurement. If the measurement is
unavailable, the value 0xFFFF MUST be reported.<vspace
blankLines="1" /></t>
</list></t>
</section>
</section>
<section title="SDP Signaling">
<t>[RFC3611] defines the use of SDP (Session Description Protocol) <xref
target="RFC4566"></xref> for signaling the use of XR blocks. XR blocks
MAY be used without prior signaling.</t>
<section title="SDP rtcp-xr-attrib Attribute Extension">
<t>This section augments the SDP <xref target="RFC4566"></xref>
attribute "rtcp-xr" defined in <xref target="RFC3611"></xref> by
providing an additional value of "xr-format" to signal the use of the
report block defined in this document.<figure>
<artwork>
xr-format =/ xr-jb-block
xr-jb-block = "jitter-bfr"
</artwork>
</figure></t>
</section>
<section title="Offer/Answer Usage">
<t>When SDP is used in offer-answer context, the SDP Offer/Answer
usage defined in <xref target="RFC3611"></xref> for unilateral
"rtcp-xr" attribute parameters applies. For detailed usage in
Offer/Answer for unilateral parameter, refer to section 5.2 of <xref
target="RFC3611"></xref>.</t>
</section>
</section>
<section title="IANA Considerations">
<t>New block types for RTCP XR are subject to IANA registration. For
general guidelines on IANA considerations for RTCP XR, refer to <xref
target="RFC3611"></xref>.</t>
<section title="New RTCP XR Block Type value">
<t>This document assigns the block type value NJB in the IANA "RTCP XR
Block Type Registry" to the "JB Metrics Block".</t>
<t>[Note to RFC Editor: please replace NJB with the IANA provided RTCP
XR block type for this block.]</t>
</section>
<section title="New RTCP XR SDP Parameter">
<t>This document also registers a new parameter "jitter-bfr" in the
"RTCP XR SDP Parameters Registry".</t>
</section>
<section title="Contact information for registrations">
<t><figure>
<artwork>
The contact information for the registrations is:
Qin Wu (sunseawq@huawei.com)
101 Software Avenue, Yuhua District
Nanjing, Jiangsu 210012
China
</artwork>
</figure><vspace blankLines="1" /></t>
</section>
</section>
<section title="Security Considerations">
<t>It is believed that this proposed RTCP XR report block introduces no
new security considerations beyond those described in <xref
target="RFC3611"></xref>. This block does not provide per-packet
statistics so the risk to confidentiality documented in Section 7,
paragraph 3 of <xref target="RFC3611"></xref> does not apply.</t>
</section>
<section title="Contributors">
<t>Geoff Hunt wrote the initial draft of this document.</t>
</section>
<section title="Acknowledgments">
<t>The authors gratefully acknowledge reviews and feedback provided by
Bruce Adams, Philip Arden, Amit Arora, Bob Biskner, Kevin Connor, Claus
Dahm, Randy Ethier, Roni Even, Jim Frauenthal, Albert Higashi, Tom Hock,
Shane Holthaus, Paul Jones, Rajesh Kumar, Keith Lantz, Mohamed Mostafa,
Amy Pendleton, Colin Perkins, Mike Ramalho, Ravi Raviraj, Albrecht
Schwarz, Tom Taylor, Hideaki Yamada,Claire Bi,Colin Perkin and Dan
Romascanu.</t>
</section>
</middle>
<back>
<references title="Normative References">
<reference anchor="RFC2119">
<front>
<title abbrev="RFC Key Words">Key words for use in RFCs to Indicate
Requirement Levels</title>
<author fullname="Scott Bradner" initials="S." surname="Bradner">
<organization>Harvard University</organization>
<address>
<postal>
<street>1350 Mass. Ave.</street>
<street>Cambridge</street>
<street>MA 02138</street>
</postal>
<phone>- +1 617 495 3864</phone>
<email>sob@harvard.edu</email>
</address>
</author>
<date month="March" year="1997" />
<area>General</area>
<keyword>keyword</keyword>
<abstract>
<t>In many standards track documents several words are used to
signify the requirements in the specification. These words are
often capitalized. This document defines these words as they
should be interpreted in IETF documents. Authors who follow these
guidelines should incorporate this phrase near the beginning of
their document: <list>
<t>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.</t>
</list></t>
<t>Note that the force of these words is modified by the
requirement level of the document in which they are used.</t>
</abstract>
</front>
</reference>
<reference anchor="RFC3611">
<front>
<title>RTP Control Protocol Extended Reports (RTCP XR)</title>
<author fullname="T. Friedman" initials="T." surname="Friedman">
<organization></organization>
</author>
<author fullname="R. Caceres" initials="R." surname="Caceres">
<organization></organization>
</author>
<author fullname="A. Clark" initials="A." surname="Clark">
<organization></organization>
</author>
<date month="November" year="2003" />
<abstract>
<t>This document defines the Extended Report (XR) packet type for
the RTP Control Protocol (RTCP), and defines how the use of XR
packets can be signaled by an application if it employs the
Session Description Protocol (SDP). XR packets are composed of
report blocks, and seven block types are defined here. The purpose
of the extended reporting format is to convey information that
supplements the six statistics that are contained in the report
blocks used by RTCP's Sender Report (SR) and Receiver Report (RR)
packets. Some applications, such as multicast inference of network
characteristics (MINC) or voice over IP (VoIP) monitoring, require
other and more detailed statistics. In addition to the block types
defined here, additional block types may be defined in the future
by adhering to the framework that this document provides.</t>
</abstract>
</front>
</reference>
<reference anchor="RFC4566">
<front>
<title>SDP: Session Description Protocol</title>
<author fullname="M. Handley" initials="M." surname="Handley">
<organization></organization>
</author>
<author fullname="V. Jacobson" initials="V." surname="Jacobson">
<organization></organization>
</author>
<author fullname="C. Perkins" initials="C." surname="Perkins">
<organization></organization>
</author>
<date month="July" year="2006" />
<abstract>
<t>This memo defines the Session Description Protocol (SDP). SDP
is intended for describing multimedia sessions for the purposes of
session announcement, session invitation, and other forms of
multimedia session initiation. [STANDARDS-TRACK]</t>
</abstract>
</front>
</reference>
<reference anchor="RFC3550">
<front>
<title>RTP: A Transport Protocol for Real-Time Applications</title>
<author fullname="Henning Schulzrinne" initials="H."
surname="Schulzrinne">
<organization>Columbia University</organization>
</author>
<date month="July" year="2003" />
</front>
<seriesInfo name="RFC" value="3550" />
<format type="TXT" />
</reference>
<reference anchor="RFC6709">
<front>
<title>Design Considerations for Protocol Extensions</title>
<author fullname="B.Carpenter" initials="B." surname="Carpenter">
<organization></organization>
</author>
<author fullname="B.Aboba" initials="B." surname="Aboba">
<organization></organization>
</author>
<author fullname="S.Cheshire" initials="S." surname="Cheshire">
<organization></organization>
</author>
<date month="September" year="2012" />
</front>
<seriesInfo name="RFC" value="6709" />
<format type="TXT" />
</reference>
</references>
<references title="Informative References">
<reference anchor="RFC6792">
<front>
<title>Monitoring Architectures for RTP</title>
<author fullname="Geoff Hunt" initials="G." surname="Hunt">
<organization></organization>
</author>
<author fullname="Qin Wu" initials="Q." surname="Wu">
<organization></organization>
</author>
<author fullname="Philip Arden" initials="P." surname="Arden">
<organization></organization>
</author>
<date month="November" year="2012" />
</front>
<seriesInfo name="RFC" value="6792" />
<format type="TXT" />
</reference>
<reference anchor="RFC6390">
<front>
<title>Framework for Performance Metric Development</title>
<author fullname="Alan Clark" initials="A." surname="Clark">
<organization></organization>
</author>
<author fullname="Benoit Claise " initials="B." surname="Claise">
<organization></organization>
</author>
<date month="October" year="2011" />
</front>
<seriesInfo name="RFC" value="6390" />
</reference>
<reference anchor="RFC6776">
<front>
<title>Measurement Identity and information Reporting using SDES
item and XR Block</title>
<author fullname="Qin Wu" initials="Q." surname="Wu">
<organization></organization>
</author>
<date month="August" year="2012" />
</front>
<seriesInfo name="RFC" value="6776" />
<format type="TXT" />
</reference>
</references>
<section title="Change Log">
<t>Note to the RFC-Editor: please remove this section prior to
publication as an RFC.</t>
<section title="draft-ietf-xrblock-rtcp-xr-jb-03">
<t>The following are the major changes to previous version : <list
style="symbols">
<t>Reduce the "jb cfg" to 1-bit based on discussion in the
WGLC.</t>
<t>Other editorial change changes aligning with PDV,Delay
draft.</t>
</list></t>
</section>
<section title="draft-ietf-xrblock-rtcp-xr-jb-02">
<t>The following are the major changes to previous version : <list
style="symbols">
<t>Add some explaination text in the SDP offer/answer section.</t>
<t>Add some text in applicability section to explain the use to
report jitter buffer metrics.</t>
<t>Other editorial change changes aligning with PDV,Delay
draft.</t>
</list></t>
</section>
<section title="draft-ietf-xrblock-rtcp-xr-jb-01">
<t>The following are the major changes to previous version : <list
style="symbols">
<t>Outdated reference update</t>
<t>Add one Editor notes to ask clarification on the use of
reporting jitter buffer metrics.</t>
<t>Other Editorial changes.</t>
</list></t>
</section>
<section title="draft-ietf-xrblock-rtcp-xr-jb-00">
<t>The following are the major changes to previous version : <list
style="symbols">
<t>Boilerplate updates.</t>
<t>references updates</t>
<t>allocate 32 bit field in report block for SSRC</t>
<t>Other editorial changes to get alignment with MONARCH
draft.</t>
</list></t>
</section>
</section>
</back>
</rfc>
| PAFTECH AB 2003-2026 | 2026-04-24 15:11:05 |