One document matched: draft-singh-xrblock-webrtc-additional-stats-01.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 rfc7002 PUBLIC "" 
"http://xml.resource.org/public/rfc/bibxml/reference.RFC.7002.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.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-01"
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>
    <xref target="I-D.alvestrand-rtcweb-stats-registry">RTCWEB-STATS</xref>
    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 better complement the identifiers already in the statistics registry.
    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 Javascript application on the receiving endpoint extracts the
    statistics for the remote (incoming) media stream from the browser's RTP
    using the <xref target="W3C.WD-webrtc-20130910">Stats API</xref>. There
    are multiple ways to exchange these observed identifiers with the remote
    party, one of which is to use corresponding <xref target="RFC3611">RTCP
    Extension Reports (XRs)</xref> and query the statistic identifiers for the
    local (outgoing) media stream. However, the exchange of statistics of the
    local stream are currently outside the scope of WebRTC.
  </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 the group of
      identifiers are well defined on a ReportGroup corresponding to an SSRC.
      In practice the application MUST be able to query the statistic
      identifiers on an incoming media stream (remote stream). Depending on
      the support of the corresponding XR report the endpoint MAY be able to
      query the statistic identifier for the outgoing media stream (local
      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, Appendix A
        of <xref target="RFC7002" /></t>
        
        <!-- ######## -->
        <t>Name: OctetsDiscarded</t>
        <t>Definition: Cumulative Number of octets discarded, Appendix A of
        <xref target="I-D.ietf-xrblock-rtcp-xr-bytes-discarded-metric" /></t>
        
      </section>
      
      <section title="Cumulative Number of Retransmitted Packets Received">
        <!-- ######## -->
        <t>Name: PacketsRetx</t>
        <t>Definition: See Appendix A of this document, [RFCXXXX].</t>
        <!-- VS: Missing ref to retx packet count RFC4588? -->
        <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: Appendix A (b) of <xref
        target="I-D.huang-xrblock-post-repair-loss-count" /></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;
    &rfc7002;
    &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;
  </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-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-20262026-04-23 16:22:42