One document matched: draft-singh-xrblock-webrtc-additional-stats-02.xml
<?xml version="1.0"?>
<!DOCTYPE rfc SYSTEM "rfc2629.dtd" [
<!ENTITY rfc2119 PUBLIC ""
"http://xml.resource.org/public/rfc/bibxml/reference.RFC.2119.xml">
<!ENTITY rfc3550 PUBLIC ""
"http://xml.resource.org/public/rfc/bibxml/reference.RFC.3550.xml">
<!ENTITY rfc3611 PUBLIC ""
"http://xml.resource.org/public/rfc/bibxml/reference.RFC.3611.xml">
<!ENTITY rfc4588 PUBLIC ""
"http://xml.resource.org/public/rfc/bibxml/reference.RFC.4588.xml">
<!ENTITY rfc6798 PUBLIC ""
"http://xml.resource.org/public/rfc/bibxml/reference.RFC.6798.xml">
<!ENTITY rfc6958 PUBLIC ""
"http://xml.resource.org/public/rfc/bibxml/reference.RFC.6958.xml">
<!ENTITY rfc7002 PUBLIC ""
"http://xml.resource.org/public/rfc/bibxml/reference.RFC.7002.xml">
<!ENTITY rfc7003 PUBLIC ""
"http://xml.resource.org/public/rfc/bibxml/reference.RFC.7003.xml">
<!ENTITY rfc7004 PUBLIC ""
"http://xml.resource.org/public/rfc/bibxml/reference.RFC.7004.xml">
<!ENTITY I-D.ietf-rtcweb-use-cases-and-requirements PUBLIC ""
"http://xml.resource.org/public/rfc/bibxml3/reference.I-D.ietf-rtcweb-use-cases-and-requirements.xml">
<!ENTITY I-D.ietf-rtcweb-rtp-usage PUBLIC ""
"http://xml.resource.org/public/rfc/bibxml3/reference.I-D.ietf-rtcweb-rtp-usage.xml">
<!ENTITY I-D.alvestrand-rtcweb-stats-registry PUBLIC ""
"http://xml.resource.org/public/rfc/bibxml3/reference.I-D.alvestrand-rtcweb-stats-registry.xml">
<!ENTITY I-D.huang-xrblock-post-repair-loss-count PUBLIC ""
"http://xml.resource.org/public/rfc/bibxml3/reference.I-D.huang-xrblock-post-repair-loss-count.xml">
<!ENTITY I-D.huang-xrblock-rtcweb-rtcp-xr-metrics PUBLIC ""
"http://xml.resource.org/public/rfc/bibxml3/reference.I-D.huang-xrblock-rtcweb-rtcp-xr-metrics.xml">
<!ENTITY I-D.ietf-xrblock-rtcp-xr-bytes-discarded-metric PUBLIC ""
"http://xml.resource.org/public/rfc/bibxml3/reference.I-D.ietf-xrblock-rtcp-xr-bytes-discarded-metric.xml">
<!ENTITY W3C.WD-webrtc-20130910 PUBLIC ""
"http://xml.resource.org/public/rfc/bibxml-w3c/reference.W3C.WD-webrtc-20130910.xml">
]>
<?xml-stylesheet type='text/xsl' href='rfc2629.xslt' ?>
<?rfc toc="yes" ?>
<?rfc compact="yes" ?>
<?rfc subcompact="no" ?>
<?rfc symrefs="yes" ?>
<rfc ipr="trust200902"
docName="draft-singh-xrblock-webrtc-additional-stats-02"
category="std">
<!-- What is the category field value-->
<front>
<title abbrev="Additional RTCP XR Metrics for WebRTC">
Additional RTP Control Protocol (RTCP) Extended Report (XR) Metrics for
WebRTC Statistics API
</title>
<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>
<uri>http://www.netlab.tkk.fi/~varun/</uri>
</address>
</author>
<author initials="R." surname="Huang" fullname="Rachel Huang">
<organization>Huawei</organization>
<address>
<postal>
<street>101 Software Avenue, Yuhua District</street>
<city>Nanjing</city> <region>CN</region><code>210012</code>
<country>China</country>
</postal>
<email>rachel.huang@huawei.com</email>
</address>
</author>
<author initials="R." surname="Even" fullname="Roni Even">
<organization>Huawei</organization>
<address>
<postal>
<street>14 David Hamelech</street>
<city>Tel Aviv</city> <region></region><code>64953</code>
<country>Israel</country>
</postal>
<email>roni.even@mail01.huawei.com</email>
</address>
</author>
<date />
<area>RAI</area>
<workgroup>XR Block Working Group</workgroup>
<keyword>WebRTC</keyword>
<keyword>RTCP</keyword>
<keyword>statistics</keyword>
<abstract>
<t>
This document describes a list of additional identifiers used in
WebRTC's Javascript statistics API. These identifiers are a set of RTCP
XR metrics related to the transport of multimedia flows.
</t>
</abstract>
</front>
<middle>
<section title="Introduction">
<t>
Web-based real-time communication (WebRTC) deployments are emerging and
applications need to be able to estimate the service quality. If
sufficient information (metrics or statistics) are provided to the
applications, it can attempt to improve the media quality. <xref
target="I-D.ietf-rtcweb-use-cases-and-requirements" /> specifies a
requirement for statistics:
</t>
<figure align="left" alt="" height="" suppress-title="false" title=""
width="">
<artwork align="left" alt="" height="" name="" type="" width=""
xml:space="preserve"><![CDATA[
F38 The browser must be able to collect statistics, related to the
transport of audio and video between peers, needed to estimate
quality of experience.
]]></artwork></figure>
<t>
The <xref target="I-D.alvestrand-rtcweb-stats-registry" />
describes a registration procedure for metrics reported by the Javascript
API. It currently lists basic metrics reported in the RTCP Sender and
Receiver Report (SR/RR) to fulfill this requirement. However, the basic
metrics from RTCP SR/RR are not sufficient for precise quality monitoring
or troubleshooting. This document proposes to expose the RTCP XR metrics
to complement the identifiers already in the
<xref target="I-D.alvestrand-rtcweb-stats-registry" >statistics registry</xref>.
In depth discussion about the XR metrics candidates is carried out in
<xref target="I-D.huang-xrblock-rtcweb-rtcp-xr-metrics" />.
</t>
<t>
The WebRTC application has two options to extract the statistics: 1)
the browser monitors the local (outgoing) and remote (incoming) RTP stream
and exposes metrics to the application via the
<xref target="W3C.WD-webrtc-20130910">Stats API</xref>, or 2) the browser
measures the remote (incoming) RTP stream and exposes the metrics to
the other participant by sending the appropriate RTCP XR. At the moment
<xref target="I-D.ietf-rtcweb-rtp-usage" /> does not specify the use of any
RTCP XRs and since their usage is optional, the exchange of statistics
between participants or a monitoring server is outside the scope of
this document.
</t>
</section>
<section anchor="add-stats" title="Candidate XR Block Metrics for WebRTC
Statistics API">
<t>
This document describes a list of additional identifiers to complement
the identifiers in Section 4.1 of <xref
target="I-D.alvestrand-rtcweb-stats-registry" /> and these group of
identifiers are defined on a ReportGroup corresponding to an SSRC.
In practice the application MUST be able to query the statistic
identifiers on both an incoming (remote) and outgoing (local) media
stream. Depending on the support of the corresponding XR report the
endpoint MAY be able to query the reception statistics for its
outgoing (local) media stream.
</t>
<t>The following contact information is used for all registrations in
this document:
<figure>
<artwork><![CDATA[
Contact: Varun Singh
mailto:varun.singh@iki.fi
tel:+358-9-470-24785
]]></artwork>
</figure></t>
<section title="Variables from XR Blocks">
<t></t>
<!-- -
<section title="Cumulative Number of Packets Lost">
<t>Name: LostPacketCount</t>
<t>Definition: section 6.4.1 in <xref target="RFC3550" /></t>
</section>
-->
<section title="Packets and Octets Discarded">
<!-- ######## -->
<t>Name: PacketsDiscarded</t>
<t>Definition: Cumulative Number of RTP packets discarded due
to late or early-arrival, Appendix A (a) of <xref target="RFC7002" />.</t>
<!-- ######## -->
<t>Name: OctetsDiscarded</t>
<t>Definition: Cumulative Number of octets discarded due to late or
early-arrival, Appendix A of
<xref target="I-D.ietf-xrblock-rtcp-xr-bytes-discarded-metric" /></t>
</section>
<!-- VS: Missing ref to retx packet count RFC4588? -->
<!-- <section title="Cumulative Number of Retransmitted Packets">
<t>Name: PacketsRetxReceived</t>
<t>Definition: See Appendix A of this document, [RFCXXXX].</t>
<t> RFC EDITOR NOTE: please change XXXX in [RFCXXXX] by the new RFC
number, when assigned and remove this note.</t>
<t>Name: PacketsRetxSent</t>
<t>Definition: See Appendix B of this document, [RFCXXXX].</t>
<t> RFC EDITOR NOTE: please change XXXX in [RFCXXXX] by the new RFC
number, when assigned and remove this note.</t>
</section> -->
<section title="Cumulative Number of Packets Repaired">
<!-- ######## -->
<t>Name: PacketsRepaired</t>
<t>Definition: The cumulative number of lost RTP packets repaired
after applying a error-resilience mechanism, Appendix A (b) of <xref
target="I-D.huang-xrblock-post-repair-loss-count" />. To clarify,
the value is upper bound to the cumulative number of lost packets.</t>
</section>
<section title="Burst Packet Loss or Discarded">
<!-- ######## -->
<t>Name: BurstPacketDiscarded</t>
<t>Definition: The total number of RTP packets discarded during discard
bursts, Appendix A (b) of <xref target="RFC7003" />.</t>
<!-- ######## -->
<t>Name: BurstPacketLost</t>
<t>Definition: The total number of RTP packets lost during loss bursts,
Appendix A (c) of <xref target="RFC6958" />.</t>
<t>Name: BurstCount</t>
<t>Definition: The cumulative number of bursts of lost RTP
packets, Appendix A (e) of <xref target="RFC6958" />.</t>
<t><xref target="RFC3611" /> recommends a Gmin value of 16.</t>
</section>
<section title="Frame Impairment Metrics">
<!-- ######## -->
<t>Name: FullFramesLostCount</t>
<t>Definition: Number of full frames lost, Appendix A (i) of <xref
target="RFC7004" /></t>
<!-- VS: Partial frames lost? -->
<!-- ######## -->
<t>Name: PartialFramesLostCount</t>
<t>Definition: Number of frames partially lost, Appendix A (j) of
<xref target="RFC7004" /></t>
<!-- ######## -->
<t>Name: FramesDiscardedCount</t>
<t>Definition: Number of full frames discarded, Appendix A (g) of
<xref target="RFC7004" /></t>
</section>
</section>
</section>
<section anchor="IANA" title="IANA Considerations">
<t>
This document requests IANA to update the registry described in <xref
target="I-D.alvestrand-rtcweb-stats-registry" /> with the identifiers
defined in <xref target="add-stats"></xref>.
</t>
<t></t>
</section>
<section anchor="Security" title="Security Considerations">
<t>
The security considerations of <xref
target="I-D.alvestrand-rtcweb-stats-registry" />, apply.
</t>
<!-- <t>
In some situations, returning very detailed error information (e.g.,
over-range measurement or measurement unavailable) exposed by the
statistics API can provide an attacker with insight into the media
processing.
</t> -->
</section>
<section anchor="Acknowledgements" title="Acknowledgements">
<t>
This document is a product of discussion in XRBLOCK WG, initial
motivation for this documented is discussed in <xref
target="I-D.huang-xrblock-rtcweb-rtcp-xr-metrics" />
</t>
<t>
The authors would like to thank
Al Morton,
Colin Perkins,
Dan Romascanu, and
Shida Schubert,
for their valuable comments and suggestions on earlier version of this
document.</t>
</section>
</middle>
<back>
<references title="Normative References">
&rfc2119; <!-- keywords -->
&I-D.alvestrand-rtcweb-stats-registry;
&rfc3550;
&rfc3611;
&rfc4588;
&rfc6958;
&rfc7002;
&rfc7003;
&I-D.ietf-xrblock-rtcp-xr-bytes-discarded-metric;
&I-D.huang-xrblock-post-repair-loss-count;
&rfc7004;
<!-- &rfc6798; -->
</references>
<references title="Informative References">
&I-D.ietf-rtcweb-use-cases-and-requirements;
&I-D.huang-xrblock-rtcweb-rtcp-xr-metrics;
&W3C.WD-webrtc-20130910;
&I-D.ietf-rtcweb-rtp-usage;
</references>
<!-- <section title="Metrics represented using RFC6390 Template">
<t> RFC EDITOR NOTE: please change XXXX in [RFCXXXX] by the new RFC
number, when assigned and remove this note.</t>
<t> <list style="letters">
<t> Number of Packets Retransmitted Metric
<list style="symbols">
<t> Metric Name: Cumulative number of RTP Packets retransmitted </t>
<t> Metric Description: Total number of packets retransmitted from the
beginning of the session. </t>
<t> Method of Measurement or Calculation:
Cumulative number of retransmitted packets received from the beginning
of the session. The measured value is an unsigned value. If the
measured value exceeds 0xFFFFFFFD, the value 0xFFFFFFFE MUST be
reported to indicate an over-range measurement. If the measurement is
unavailable, the value 0xFFFFFFFF MUST be reported.
</t>
<t> Units of Measurement: The counter is increased by one for every
retransmitted RTP packet that is received. </t>
<t> Measurement Point(s) with Potential Measurement Domain:
This metric reports the number of retransmitted RTP packets received
by the receiver. The measurement of these metrics are made at the
receiving end of the retransmission stream and the association of the
retransmission and original streams should refer to section 5.3 of
<xref target="RFC4588" />.
</t>
<t> Measurement Timing: This metric is applicable to cumulative
measurements, which may be the duration of the ongoing RTP session.
</t>
<t>Use and applications: See section 1 of [RFCXXXX].</t>
<t>Reporting model: Queried periodically by the WebRTC Statistics API.
</t>
</list> </t>
</list> </t>
</section> -->
<section anchor="App-a" title="Change Log">
<t>Note to the RFC-Editor: please remove this section prior to
publication as an RFC.</t>
<section title="changes in draft-singh-xrblock-webrtc-additional-stats-01">
<t><list style="symbols">
<t>Addressed comments from the Vancouver IETF meeting.</t>
<t>Added Burst discard/loss metric.</t>
<t>Removed retransmission metric.</t>
</list></t>
</section>
<section title="changes in draft-singh-xrblock-webrtc-additional-stats-00">
<t><list style="symbols">
<t>Clarified measurement points for remote (incoming) media stream
and local (outgoing) media stream.</t>
<t>Added this section.</t>
</list></t>
</section>
</section>
<!-- Change Log v00 2013-10-01 Varun Initial version -->
</back>
</rfc>| PAFTECH AB 2003-2026 | 2026-04-23 16:25:10 |