One document matched: draft-ietf-avtcore-monarch-01.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="info" docName="draft-ietf-avtcore-monarch-01.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="RTP Monitoring Architectures">Monitoring Architectures for
    RTP</title>

    <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 month="May" year="2011" />

    <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 memo proposes an architecture for extending RTCP with a new RTCP
      XR (RFC3611) block type to report new metrics regarding media
      transmission or reception quality, as proposed in RFC5968. This memo
      suggests that a new block should contain a single metric or a small
      number of metrics relevant to a single parameter of interest or concern,
      rather than containing a number of metrics which attempt to provide full
      coverage of all those parameters of concern to a specific application.
      Applications may then "mix and match" to create a set of blocks which
      covers their set of concerns. Where possible, a specific block should be
      designed to be re-usable across more than one application, for example,
      for all of voice, streaming audio and video.</t>
    </abstract>
  </front>

  <middle>
    <section anchor="intro" title="Introduction">
      <t>Service providers and network providers today suffer from lack of
      good service that can monitor the performance at the user's home,
      handset or remote office. Without service performance metrics, it is
      difficult for network operators to properly locate the problem and solve
      service issues before problems impact subscriber/end user. The
      resolution generally involves deploying costly field network technician
      to conduct on-site troubleshooting and diagnostics. By reducing the
      expensive deployments with more automated remote monitoring
      capabilities, network operators can save significant costs, reduce mean
      time to repair and provide a better service offering.</t>

      <t>As more users and subscribers rely on real time application services,
      uncertainties in the performance and availability of these services are
      driving the need to support new standard methods for gathering
      performance metrics from RTP applications. These rapidly emerging
      standards, such as RTCP XR <xref target="RFC3611"></xref>and other RTCP
      extension to Sender Reports(SR), Receiver Reports (RR) <xref
      target="RFC3550"></xref>are being developed for the purpose of
      collecting and reporting performance metrics from endpoint devices that
      can be used to correlate the metrics, provide end to end service
      visibility and measure and monitor QoE.</t>

      <t>However the proliferation of RTP/RTCP specific metrics for transport
      and application quality monitoring has been identified as a potential
      problem for RTP/RTCP interoperability, which attempt to provide full
      coverage of all those parameters of concern to a specific application.
      Since different applications layered on RTP may have some monitoring
      requirements in common, therefore these metrics should be satisfied by a
      common design.</t>

      <t>The objective of this document is to define an extensible RTP
      monitoring framework to provide a small number of re-usable QoS/QoE
      metrics which facilitate reduced implementation costs and help maximize
      inter-operability. <xref target="RFC5968"></xref> has stated that, where
      RTCP is to be extended with a new metric, the preferred mechanism is by
      the addition of a new RTCP XR <xref target="RFC3611"></xref> block. This
      memo assumes that any requirement for a new metric to be transported in
      RTCP will use a new RTCP XR block.</t>
    </section>

    <section title="Requirements notation">
      <t>This memo is informative and as such contains no normative
      requirements.</t>

      <t>In addition, the following terms are defined:</t>

      <t><list style="hanging">
          <t hangText="Transport level metrics"><vspace blankLines="1" />A set
          of metrics which characterise the three transport impairments of
          packet loss, packet delay, and packet delay variation. These metrics
          should be usable by any application which uses RTP transport.<vspace
          blankLines="1" /></t>

          <t hangText="Application level metrics"><vspace
          blankLines="1" />Metrics relating to QoE related parameters. These
          metrics are measured at the application level and focus on quality
          of content rather than network parameters.<vspace
          blankLines="1" /></t>

          <t hangText="End System metrics"><vspace blankLines="1" />Metrics
          relating to the way a terminal deals with transport impairments
          affecting the incident RTP stream. These may include de-jitter
          buffering, packet loss concealment, and the use of redundant streams
          (if any) for correction of error or loss.<vspace
          blankLines="1" /></t>
        </list></t>
    </section>

    <section title="RTP monitoring architecture">
      <t>The RTP monitoring architecture comprises the following two key
      functional components shown below:<list style="symbols">
          <t>Monitor</t>

          <t>Metric Block Structure</t>
        </list></t>

      <t>Monitor is a functional component defined in RFC3550 that acts as a
      source of information gathered for monitoring purposes. It may also
      collect statistics from multiple source, stores such information
      reported by RTCP XR or other RTCP extension appropriately as base metric
      or calculates composite metric. According to the definition of monitor
      in RFC3550, the end system that source RTP streams, an
      intermediate-system that forwards RTP packets to End-devices or a third
      party that does not participate RTP session (i.e., the third party
      monitor depicted in figure 1) can be envisioned to act as Monitor within
      the RTP monitoring architecture.</t>

      <t>The Metric Block exposes real time Application Quality information in
      the appropriate report block format to monitor within the RTP monitoring
      architecture. Both the RTCP or RTCP XR can be extended to convey such
      information. The details on transport protocol for metric block is
      described in <xref target="sec2"></xref>.</t>

      <figure anchor="ARCH" title="RTP Monitoring Architecture">
        <artwork>
                                             |---------------+
                                             | Management    |
             +-------------------+           |   System      |
             | RTP Sender        |           |  +----------+ |
             |   +-----------+   |           |  |          | |
---------------->|  Monitor  |---------5------->|  Monitor | |
|            |   |           |   |           |  |          | |
|            |   +-----------+   |           |  +----\-----+ |
|            |+-----------------+|           |       |       |
|            ||Application      ||           --------|-------+
|            ||-Streaming video ||                   |
|   |---------|-VOIP            ||                   5
|   |        ||-Video conference||                   |
|   |        ||-Telepresence    ||       +---------------+
|   |        ||-Ad insertion    ||       |  Third Party  |
5   |        |+-----------------+|       |    Monitor    |
|   |        +-------------------+       +---------------+
|   1
|   | +Intermediate------------+         |-------------- ---- ----+
|   | | RTP System       Report Block    | RTP Receiver >--4-|    |
|   | |      +---------- transported over|    +-----------+  |    |
|   | |      |           RTCP extension  |    |  Monitor  |<--    |
|-------------  Monitor |<--------5------|----|           |<------|
    | |      |          |   Report Block      +----/------+      ||
    | |      +----------+   transported over       |             ||
    | |                     RTCP XR      |         |2            ||
    | | +-----------------+    |         | +-------/---------+   ||
    | | |Application      |    |         | |Application      |   ||
    | | |-Streaming video |    |         | |-Streaming video |   ||
    | | |-VOIP            |    |    1    | |-VOIP            |   3|
    ---->-Video conference|--------------->|-Video conference    ||
      | |-Telepresence    |    |         | |-Telepresence    |   ||
      | |-Ad insertion    |    |         | |-Ad insertion    |   ||
      | +-----------------+    |         | +-----------------+   ||
      | +-----------------+    |         | +-----------------+   ||
      | |Transport        |    |         | |Transport        |   ||
      | |-IP/UDP/RTP      |    |         | |-IP/UDP/RTP      >---||
      | |-IP/TCP/RTP      |    |         | | -IP/TCP/RTP     |    |
      | |-IP/TCP/RTSP/RTP |    |         | |-IP/TCP/RTSP/RTP |    |
      | +-----------------+    |         | +-----------------+    |
      +------------------------+         +------------------------+

</artwork>
      </figure>

      <t><list style="numbers">
          <t>RTP communication between real time applications</t>

          <t>Application level metrics</t>

          <t>Transport level metrics</t>

          <t>End System metrics</t>

          <t>Reporting Session- metrics transmitted over specified
          interfaces</t>
        </list></t>

      <section anchor="sec1" title="Interaction with Management Application">
        <t>The full solution may include Management application which
        interacts with monitor. The Monitor outputs reports to the management
        application. The management application collects raw data from
        monitor, organizes database, conducts data analysis and creates alerts
        to the users. However Management application interaction with Monitor
        is out of scope of this document.</t>
      </section>

      <section anchor="sec2"
               title="RTCP Metric Block Report and associated parameters">
        <t>The basic RTCP Reception Report (RR) conveys reception statistics
        in metric block report format for multiple RTP media streams including
        <list style="symbols">
            <t>transport level statistics</t>

            <t>the fraction of packet lost since the last report</t>

            <t>the cumulative number of packets lost</t>

            <t>the highest sequence number received</t>

            <t>an estimate of the inter-arrival jitter</t>

            <t>and information to allow senders to calculate the network round
            trip time.</t>
          </list>The RTCP XRs <xref target="RFC3611"></xref> supplement the
        existing RTCP packets and provide more detailed feedback on reception
        quality in several categories:<list style="symbols">
            <t>Loss and duplicate RLE reports</t>

            <t>Packet-receipt times reports</t>

            <t>Round-trip time reports</t>

            <t>Statistics Summary Reports</t>
          </list></t>

        <t>There are also various other scenarios in which it is desirable to
        send RTCP Metric reports more frequently. The Audio/Video Profile with
        Feedback <xref target="RFC4585"></xref>extends the standard A/V
        Profile<xref target="RFC3551"></xref> to allow RTCP reports to be sent
        early provided RTCP bandwidth allocation is respected. There are four
        use cases but are not limited to:<list style="symbols">
            <t hangText="Retransmission">RTCP NACK is used to provide feedback
            on the RTP sequence number of the lost packets.</t>

            <t hangText="Rapid acquisition of multicast sessions">RTCP XR is
            extended to provide feedback on multicast acquisition statistics
            information and parameters.</t>

            <t hangText="Codec Control">RTCP is extended to convey requests
            for full intra-coded frames or select the reference picture, and
            signalchanges in the desired temporal/spatial trade-off and
            maximum media bit rate.</t>

            <t hangText="Congestion Notification">RTCP or RTCP XR is extended
            to provide feedback on ECN statistics information.</t>
          </list></t>
      </section>
    </section>

    <section title="Issues with reporting metric block using RTCP XR extension">
      <t>Issues that have come up in the past with reporting metric block
      using RTCP XR extensions include (but are probably not limited to) the
      following:<list style="symbols">
          <t>Using large block. A single report block or metric is designed to
          contain a large number of parameters in different classes for a
          specific application. For example, RFC 3611 <xref
          target="RFC3611"></xref> defines seven report block formats for
          network management and quality monitoring. However some of these
          block types defined in <xref target="RFC3611"></xref> are only
          specifically designed for conveying multicast inference of network
          characteristics(MINC) or voice over IP (VoIP) monitoring. However
          different applications layered on RTP may have some monitoring
          requirements in common, design large block only for specific
          applications may increase implementation cost and minimize
          interoperability. </t>

          <t>Identity Information duplication. When multiple small blocks in
          the same RTCP XR packet contain measurement data for the same stream
          and period, it bring inefficiency to Repeat the information in a
          number of metrics blocks within the same RTCP packet. </t>

          <t>Metric Blocks association. When an RTCP XR packet containing four
          metrics blocks, reporting on streams from two sources, two identity
          blocks need to be added into the RTCP XR packet to correlate two
          sources if identity information is allowed separate from each metric
          block as one independent block. However how to associate identity
          block with relevant metric block is a problem, e.g., all identity
          blocks are following all the metric block or vice versa make one
          receiving RTCP XR packet hard to distinguish from which metric block
          belong to which source. </t>
        </list></t>
    </section>

    <section title=" Guideline for reporting block format using RTCP XR">
      <section anchor="smallblock" title="Using small blocks">
        <t>Different applications using RTP for media transport certainly have
        differing requirements for metrics transported in RTCP to support
        their operation. For many applications, the basic metrics for
        transport impairments provided in RTCP SR and RR packets <xref
        target="RFC3550"></xref> (together with source identification provided
        in RTCP SDES packets) are sufficient. For other applications
        additional metrics may be required or at least sufficiently useful to
        justify the overheads, both of processing in endpoints and of
        increased session bandwidth. For example an IPTV application using
        Forward Error Correction (FEC) might use either a metric of
        post-repair loss or a metric giving detailed information about
        pre-repair loss bursts to optimise payload bandwidth and the strength
        of FEC required for changing network conditions. However there are
        many metrics available. It is likely that different applications or
        classes of applications will wish to use different metrics. Any one
        application is likely to require metrics for more than one parameter
        but if this is the case, different applications will almost certainly
        require different combinations of metrics. If larger blocks are
        defined containing multiple metrics to address the needs of each
        application, it becomes likely that many different such larger blocks
        are defined, which becomes a danger to interoperability.</t>

        <t>To avoid this pitfall, this memo proposes the use of small RTCP XR
        metrics blocks each containing a very small number of individual
        metrics characterizing only one parameter of interest to an
        application running over RTP. For example, at the RTP transport layer,
        the parameter of interest might be packet delay variation, and
        specifically the metric "IPDV" defined by <xref
        target="Y1540"></xref>. See <xref target="example"></xref> for
        architectural considerations for a metrics block, using as an example
        a metrics block to report packet delay variation.</t>
      </section>

      <section anchor="identity" title="Sharing the identity block">
        <t>Any measurement must be identified. However if metrics are
        delivered in small blocks there is a danger of inefficiency arising
        from repeating this information in a number of metrics blocks within
        the same RTCP packet, in cases where the same identification
        information applies to multiple metrics blocks.</t>

        <t>An instance of a metric must be identified using information which
        is likely to include most of the following:</t>

        <t><list style="symbols">
            <t>the node at which it was measured,</t>

            <t>the source of the measured stream (for example, its CNAME),</t>

            <t>the SSRC of the measured stream,</t>

            <t>the sequence number of the first packet of the RTP session,</t>

            <t>the extended sequence numbers of the first packet of the
            current measurement interval, and the last packet included in the
            measurement,</t>

            <t>the duration of the most recent measurement interval and</t>

            <t>the duration of the interval applicable to cumulative
            measurements (which may be the duration of the RTP session to
            date).</t>
          </list></t>

        <t>Note that this set of information may overlap with, but is more
        extensive than, that in the union of similar information in RTCP RR
        packets. However we can not assume that RR information is always
        present when XR is sent, since they may have different measurement
        intervals. Also the reason for the additional information carried in
        the XR is the perceived difficulty of "locating" the *start* of the
        RTP session (sequence number of 1st packet, duration of interval
        applicable to cumulative measurements) using only RR. However when an
        RTCP XR packet containing more than two metrics blocks, reporting on
        the same streams from the same source, each metric block should have
        the same measurement identity, if each metric block carry the
        duplicated data for the measurement identity ,it leads to redundant
        information in this design since equivalent information is provided
        multiple times, once in *every* identification packet. Though this
        ensures immunity to packet loss, the design bring more complexity and
        the overhead is not completely trivial.</t>

        <t>This section proposes an approach to minimise the inefficiency of
        providing this identification information, assuming that an
        architecture based on small blocks means that a typical RTCP packet
        will contain more than one metrics block needing the same
        identification. The choice of identification information to be
        provided is discussed in <xref target="IDENTITY"></xref> .</t>

        <t>The approach is to define a stand-alone block containing only
        identification information, and to tag this identification block with
        a number which is unique within the scope of the containing RTCP XR
        packet. The "containing RTCP XR packet" is defined here as the RTCP XR
        header with PT=XR=207 defined in Section 2 of <xref
        target="RFC3611"></xref> and the associated payload defined by the
        length field of this RTCP XR header. The RTCP XR header itself
        includes the SSRC of the node at which all of the contained metrics
        were measured, hence this SSRC need not be repeated in the stand-alone
        identification block. A single containing RTCP XR packet may contain
        multiple identification blocks limited by the range of the tag field.
        Typically there will be one identification block per monitored source
        SSRC, but the use of more than one identification block for a single
        monitored source SSRC within a single containing RTCP XR packet is not
        ruled out.</t>

        <t>There will be zero or more metrics blocks dependent on each
        identification block. The dependence of an instance of a metrics block
        on an identification block is established by the metrics block's
        having the same numeric value of the tag field as its identification
        block (in the same containing RTCP XR packet).</t>

        <t><xref target="identfigure"></xref> below illustrates this principle
        using as an example an RTCP XR packet containing four metrics blocks,
        reporting on streams from two sources. The measurement identity
        information is provided in two blocks with Block Type NMI, and tag
        values 0 and 1 respectively.</t>

        <t>Note: in this example, RTCP XR block type values for four proposed
        new block types (work in progress) are given as NMI, NPDV, NBGL and
        NDEL.</t>

        <t>Each of these two identity blocks will specify the SSRC of one of
        the monitored streams, as well as information about the span of the
        measurement. There are two metrics blocks with tag=0 indicating their
        association with the measurement identity block which also has tag=0.
        These are the two blocks following the identity block with tag=0,
        though this positioning is not mandatory. There are also two metrics
        blocks with tag=1 indicating their association with the measurement
        identity block which also has tag=1, and these are the two blocks
        following the identity block with tag=1.</t>

        <t>Note that if metrics blocks associated with an identity block must
        always follow the identity block, we could save the tag field and
        possibly simplify processing. However depending on ordering of metric
        block and identity block may bring inefficiency since you do not know
        which block is the last metric block associated with identity block
        unless you identify the next identity block. Hence it is more
        desirable to to do cross-referencing with a numeric tag,i.e., using
        tag field to associated metric block with identity block.</t>

        <t>In the example, the block types of the metrics blocks associated
        with tag=0 are BT=NPDV (a PDV metrics block) and BT=NBGL (a burst and
        gap loss metrics block). The block types of the metrics blocks
        associated with tag=1 are BT=NPDV (a second PDV metrics block) and
        BT=NDEL (a delay metrics block). This illustrates that:</t>

        <t><list style="symbols">
            <t>multiple instances of the same metrics block may occur within a
            containing RTCP XR packet, associated with different
            identification information, and</t>

            <t>differing measurements may be made, and reported, for the
            different streams arriving at an RTP system.</t>
          </list></t>

        <figure anchor="identfigure"
                title="RTCP XR block with identity blocks">
          <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
   +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
   |V=2|P|reserved |   PT=XR=207   |             length            |
   +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
   |                  SSRC of RTCP XR packet sender                |
   +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
   |     BT=NMI    |0|tag=0| resv  |        block length           |
   +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
   |                  SSRC of stream source 1                      |
   +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
   .      ...measurement identity information, source 1...         .
   +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
   |     BT=NPDV   |I|tag=0|pdvtyp |        block length           |
   +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
   .               ...PDV information for source 1...              .
   +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
   |    BT=NBGL    |I|tag=0| resv  |        block length           |
   +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
   .            ...burst-gap-loss information for source 1...      .
   +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
   |     BT=NMI    |0|tag=1| resv  |        block length           |
   +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
   |                  SSRC of stream source 2                      |
   +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
   .      ...measurement identity information, source 2...         .
   +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
   |     BT=NPDV   |I|tag=1|pdvtyp |        block length           |
   +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
   .              ...PDV information for source 2...               .
   +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
   |    BT=NDEL    |I|tag=1| resv  |        block length           |
   +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
   .             ...delay information for source 2...              .
   +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
</artwork>
        </figure>

        <t>This approach of separating the identification information is more
        costly than providing identification in each metrics block if only a
        single metrics block is sent in an RTCP packet, but becomes beneficial
        as soon as more than one metrics block shares common
        identification.</t>
      </section>
    </section>

    <section anchor="example" title="An example of a metric block">
      <t>This section uses the example of an existing proposed metrics block
      to illustrate the application of the principles set out in <xref
      target="smallblock"></xref>.</t>

      <t>The example <xref target="PDV"></xref> (work in progress) is a block
      to convey information about packet delay variation (PDV) only,
      consistent with the principle that a metrics block should address only
      one parameter of interest. One simple metric of PDV is available in the
      RTCP RR packet as the "jit" field. There are other PDV metrics which may
      be more useful to certain applications. Two such metrics are the IPDV
      metric (<xref target="Y1540"></xref>, <xref target="RFC3393"></xref>)
      and the MAPDV2 metric <xref target="G1020"></xref>. Use of these metrics
      is consistent with the principle in Section 5 of <xref
      target="RFC5968"></xref> that metrics should usually be defined
      elsewhere, so that RTCP standards define only the transport of the
      metric rather than its nature. The purpose of this section is to
      illustrate the architecure using the example of <xref
      target="PDV"></xref> (work in progress) rather than to document the
      design of the PDV metrics block or to provide a tutorial on PDV in
      general.</t>

      <t>Given the availability of at least three metrics for PDV, there are
      design options for the allocation of metrics to RTCP XR blocks:</t>

      <t><list style="symbols">
          <t>provide an RTCP XR block per metric</t>

          <t>provide a single RTCP XR block which contains all three
          metrics</t>

          <t>provide a single RTCP block to convey any one of the three
          metrics, together with a identifier to inform the receiving RTP
          system of the specific metric being conveyed</t>
        </list></t>

      <t>In choosing between these options, extensibility is important,
      because additional metrics of PDV may well be standardized and require
      inclusion in this framework. The first option is extensible but only by
      use of additional RTCP XR blocks, which may consume the limited
      namespace for RTCP XR blocks at an unacceptable rate. The second option
      is not extensible, so could be rejected on that basis, but in any case a
      single application is quite unlikely to require transport of more than
      one metric for PDV. Hence the third option was chosen. This implies the
      creation of a subsidiary namespace to enumerate the PDV metrics which
      may be transported by this block, as discussed further in <xref
      target="PDV"></xref> (work in progress).</t>
    </section>

    <section anchor="topologies" title="Application to RFC 5117 topologies">
      <t>The topologies specified in <xref target="RFC5117"></xref> fall into
      two categories. The first category relates to the RTP system model
      utilizing multicast and/or unicast. The topologies in this category are
      specifically Topo-Point-to-Point, Topo- Multicast, Topo-Translator (both
      variants, Topo-Trn-Translator and Topo-Media-Translator, and
      combinations of the two), and Topo-Mixer. These topologies use RTP end
      systems, RTP mixers and RTP translators defined in <xref
      target="RFC3550"></xref>. The second category relates to deployed system
      models used in many H.323 <xref target="H323"></xref> video conferences.
      The topologies in this category are Topo-Video-Switch-MCU and
      Topo-RTCP-terminating-MCU. Such topologies based on systems do not
      behave according to <xref target="RFC3550"></xref>. As for the first
      category, the RTP system (end system, mixer or translator) which
      originates, terminates or forwards RTCP XR blocks is expected to handle
      RTCP, including RTCP XR, according to <xref target="RFC3550"></xref>.
      Provided this expectation is met, an RTP system using RTCP XR is
      architecturally no different from an RTP system of the same class (end
      system, mixer, or translator) which does not use RTCP XR. Considering
      the translator and MCU are two typical topologies in thetwo categories
      mentioned above, this document will take them as two typical examples to
      explain how RTCP XR report works in different RFC5117 topologies.</t>

      <section title="Applicability to MCU">
        <t>Topo-Video-Switch-MCU and Topo-RTCP-terminating-MCU, suffer from
        the difficulties described in [RFC5117]. These difficulties apply to
        systems sending, and expecting to receive, RTCP XR blocks as much as
        to systems using other RTCP packet types. For example, a participant
        RTP end system may send media to a video switch MCU. If the media
        stream is not selected for forwarding by the switch, neither RTCP RR
        packets nor RTCP XR blocks referring to the end system's generated
        stream will be received at the RTP end system. Strictly the RTP end
        system can only conclude that its RTP has been lost in the network,
        though an RTP end system complying with the robustness principle of
        [RFC1122] should survive with essential functions unimpaired.</t>
      </section>

      <section anchor="txlat" title="Applicability to Translators">
        <t>Section 7.2 of <xref target="RFC3550"></xref> describes processing
        of RTCP by translators. RTCP XR is within the scope of the
        recommendations of <xref target="RFC3550"></xref>. Some RTCP XR
        metrics blocks may usefully be measured at, and reported by,
        translators. As described in <xref target="RFC3550"></xref> this
        creates a requirement for the translator to allocate an SSRC for the
        monitor within itself so that it may populate the SSRC in the RTCP XR
        packet header (although the translator is not a Synchronisation Source
        in the sense of originating RTP media packets). It must also supply
        this SSRC and the corresponding CNAME in RTCP SDES packets.</t>

        <t>In RTP sessions where one or more translators generate any RTCP
        traffic towards their next-neighbour RTP system, other translators in
        the session have a choice as to whether they forward a translator's
        RTCP packets. Forwarding may provide additional information to other
        RTP systems in the connection but increases RTCP bandwidth and may in
        some cases present a security risk. RTP translators may have
        forwarding behaviour based on local policy, which might differ between
        different interfaces of the same translator.</t>

        <t>For bidirectional unicast, an RTP system may usually detect RTCP XR
        from a translator by noting that the sending SSRC is not present in
        any RTP media packet. However even for bidirectional unicast there is
        a possibility of a source sending RTCP XR before it has sent any RTP
        media (leading to transient mis-categorisation of an RTP end system or
        RTP mixer as a translator), and for multicast sessions - or
        unidirectional/streaming unicast - there is a possibility of a
        receive-only end system being permanently mis-categorised as a
        translator sending XR report, i.e.,monitor collocated with transaltor.
        Hence it is desirable for a translator that send XR to have a way to
        declare itself explicitly.</t>
      </section>
    </section>

    <section title="IANA Considerations">
      <t>None.</t>
    </section>

    <section title="Security Considerations">
      <t>This document itself contains no normative text and hence should not
      give rise to any new security considerations, to be confirmed.</t>
    </section>

    <section title="Acknowledgement">
      <t>Geoff Hunt and Philip Arden wrote the initial draft for this document
      and provided useful reviews. Many thanks to them. The authors would also
      like to thank Colin Perkins, Graeme Gibbs, Debbie Greenstreet, Keith
      Drage,Dan Romascanu, Ali C. Begen, Roni Even for their valuable comments
      and suggestions on the early version of this document.</t>
    </section>
  </middle>

  <back>
    <references title="Informative References">
      <reference anchor="RFC1122">
        <front>
          <title>Requirements for Internet Hosts -- Communication
          Layers</title>

          <author initials="R." surname="Braden">
            <organization>USC/ISI</organization>
          </author>

          <date month="October" year="1989" />
        </front>

        <seriesInfo name="RFC" value="1122" />

        <format type="TXT" />
      </reference>

      <reference anchor="RFC3393">
        <front>
          <title>IP Packet Delay Variation Metric for IP Performance Metrics
          (IPPM)</title>

          <author fullname="Carlo Demichelis" initials="C."
                  surname="Demichelis">
            <organization>Telecomitalia Lab</organization>
          </author>

          <date month="November" year="2002" />
        </front>

        <seriesInfo name="RFC" value="3393" />

        <format type="TXT" />
      </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="RFC3611">
        <front>
          <title>RTP Control Protocol Extended Reports (RTCP XR)</title>

          <author fullname="Timur Friedman" initials="T. (Ed)"
                  surname="Friedman">
            <organization>Paris 6</organization>
          </author>

          <date month="November" year="2003" />
        </front>

        <seriesInfo name="RFC" value="3611" />

        <format type="TXT" />
      </reference>

      <reference anchor="RFC5117">
        <front>
          <title>RTP Topologies</title>

          <author fullname="Magnus Westerlund" initials="M."
                  surname="Westerlund">
            <organization>Ericsson Research</organization>
          </author>

          <date month="January" year="2008" />
        </front>

        <seriesInfo name="RFC" value="5117" />

        <format type="TXT" />
      </reference>

      <reference anchor="RFC5968">
        <front>
          <title>Guidelines for Extending the RTP Control Protocol
          (RTCP)</title>

          <author fullname="Joerg Ott" initials="J." surname="Ott">
            <organization>Helsinki University of Technology</organization>
          </author>

          <author fullname="C. Perkins" initials="C." surname="Perkins">
            <organization>University of Glasgow</organization>
          </author>

          <date month="September" year="2010" />
        </front>

        <seriesInfo name="RFC" value="5968" />

        <format type="TXT" />
      </reference>

      <reference anchor="RFC4585">
        <front>
          <title>Extended RTP Profile for Real-time Transport Control Protocol
          (RTCP)-Based Feedback (RTP/AVPF)</title>

          <author fullname="Joerg Ott" initials="J." surname="Ott">
            <organization>Helsinki University of Technology</organization>
          </author>

          <author fullname="S. Wenger" initials="S." surname="Wenger">
            <organization>Nokia</organization>
          </author>

          <date month="July" year="2006" />
        </front>

        <seriesInfo name="RFC" value="4585" />

        <format type="TXT" />
      </reference>

      <reference anchor="RFC3551">
        <front>
          <title>Extended RTP Profile for Real-time Transport Control Protocol
          (RTCP)-Based Feedback (RTP/AVPF)</title>

          <author fullname="H. Schulzrinne" initials="H."
                  surname="Schulzrinne ">
            <organization>Columbia University</organization>
          </author>

          <author fullname="S. Casner" initials="S." surname="Casner">
            <organization>Packet Design</organization>
          </author>

          <date month="July" year="2003" />
        </front>

        <seriesInfo name="RFC" value="3551" />

        <format type="TXT" />
      </reference>

      <reference anchor="IDENTITY">
        <front>
          <title>RTCP XR Report Block for Measurement Identity</title>

          <author fullname="Geoff Hunt" initials="G." surname="Hunt">
            <organization>BT</organization>
          </author>

          <date month="May" year="2009" />
        </front>

        <seriesInfo name="ID" value="draft-ietf-avt-rtcp-xr-meas-identity-02" />

        <format type="TXT" />
      </reference>

      <reference anchor="PDV">
        <front>
          <title>RTCP XR Report Block for Packet Delay Variation Metric
          Reporting</title>

          <author fullname="Geoff Hunt" initials="G." surname="Hunt">
            <organization>BT</organization>
          </author>

          <date month="May" year="2009" />
        </front>

        <seriesInfo name="ID" value="draft-ietf-avt-rtcp-xr-pdv-03" />

        <format type="TXT" />
      </reference>

      <reference anchor="G1020">
        <front>
          <title>ITU-T Rec. G.1020, Performance parameter definitions for
          quality of speech and other voiceband applications utilizing IP
          networks</title>

          <author fullname="" initials="" surname="">
            <organization>ITU-T</organization>
          </author>

          <date month="July" year="2006" />
        </front>

        <format type="TXT" />
      </reference>

      <reference anchor="Y1540">
        <front>
          <title>ITU-T Rec. Y.1540, IP packet transfer and availability
          performance parameters</title>

          <author fullname="" initials="" surname="">
            <organization>ITU-T</organization>
          </author>

          <date month="November" year="2007" />
        </front>

        <format type="TXT" />
      </reference>

      <reference anchor="H323">
        <front>
          <title>ITU-T Rec. H.323, Packet-based multimedia communications
          systems</title>

          <author fullname="" initials="" surname="">
            <organization>ITU-T</organization>
          </author>

          <date month="June" year="2006" />
        </front>

        <format type="TXT" />
      </reference>
    </references>

    <section title="Appendix A. Change Log">
      <t>Note to the RFC-Editor: please remove this section prior to
      publication as an RFC.</t>

      <section title="draft-ietf-avtcore-monarch-00">
        <t>The following are the major changes compared to
        draft-hunt-avtcore-monarch-02: <list style="symbols">
            <t>Move Geoff Hunt and Philip Arden to acknowledgement
            section.</t>
          </list></t>
      </section>

      <section title="draft-ietf-avtcore-monarch-01">
        <t>The following are the major changes compared to 00: <list
            style="symbols">
            <t>Restructure the document by merging section 4 into section
            3.</t>

            <t>Remove section 4.1,section 5 that is out of scope of this
            document.</t>

            <t>Remove the last bullet in section 6 and section 7.3 based on
            conclusion of last meeting.</t>

            <t>Update figure 1 and related text in section 3 according to the
            monitor definition in RFC3550.</t>

            <t>Revise section 9 to address monitor declaration issue.</t>

            <t>Merge the first two bullet in section 6.</t>

            <t>Add one new bullet to discuss metric block association in
            section 6.</t>
          </list></t>
      </section>
    </section>
  </back>
</rfc>

PAFTECH AB 2003-20262026-04-24 13:12:12