Audio/Video Transport Working Group                           Q. Wu, Ed.
Internet-Draft                                                    Huawei
Intended status: Informational                                   G. Hunt
Expires: November 3, 30, 2012                                  Unaffiliated
                                                                P. Arden
                                                                      BT
                                                            May 2, 29, 2012

                    Monitoring Architecture for RTP
                   draft-ietf-avtcore-monarch-13.txt
                   draft-ietf-avtcore-monarch-14.txt

Abstract

   This memo proposes an architecture for extending RTP Control Protocol
   (RTCP) with a new RTCP Extended Reports (XR) (RFC3611) block type to
   report new metrics regarding media transmission or reception quality,
   following RTCP guideline guidelines established 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.

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 November 3, 30, 2012.

Copyright Notice

   Copyright (c) 2012 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 . . . . . . . . . . . . . . . . . . . . . . . . .  4
   2.  Terminology  . . . . . . . . . . . . . . . . . . . . . . . . .  5
   3.  RTP monitoring architecture  . . . . . . . . . . . . . . . . .  7
     3.1.  Overview . . . . . . . . . . . . . . . . . . . . . . . . .  7
     3.2.  RTCP Metric Block Report and associated parameters  Location of RTP Monitors . . . . 10
     3.3.  RTP Sender/Receiver entities located in network nodes . . 11 . . . . . . . . . . .  8
   4.  Issues with reporting metric block using RTCP XR extension . . 12 10
     4.1.  Using compound metrics block . . . . . . . . . . . . . . . 10
     4.2.  Correlating RTCP XR with the non-RTP data  . . . . . . . . 10
     4.3.  Measurement Information duplication  . . . . . . . . . . . 10
     4.4.  Consumption of XR block code points  . . . . . . . . . . . 11
   5.  Guideline  Guidelines for reporting metric block using RTCP XR  . . . . . . 14 12
     5.1.  Using  Contain the single metrics blocks in the Metric Block . . . . . . 12
     5.2.  Include the payload type and format parameters in the
           Metric Block . . . . . . . . . . . 14
     5.2.  Correlating RTCP XR with RTP data . . . . . . . . . . . . 14 12
     5.3.  Correlating  Use RTCP SDES to correlate XR reports with the non-RTP data  . 13
     5.4.  Reduce Measurement information repetition across
           metric blocks  . . . . . . . 15
     5.4.  Reducing Measurement information repetition  . . . . . . . 15
     5.5.  Expanding the RTCP XR block namespace . . . . . . . . . . 16 13
   6.  An example of a metric block . . . . . . . . . . . . . . . . . 17 15
   7.  Application to RFC 5117 topologies . . . . . . . . . . . . . . 18 16
     7.1.  Applicability to MCU Translators . . . . . . . . . . . . . . . 16
     7.2.  Applicability to MCU . . . . 18
     7.2.  Applicability to Translators . . . . . . . . . . . . . . . 19 17
   8.  IANA Considerations  . . . . . . . . . . . . . . . . . . . . . 20 18
   9.  Security Considerations  . . . . . . . . . . . . . . . . . . . 21 19
   10. Acknowledgement  . . . . . . . . . . . . . . . . . . . . . . . 22 20
   11. Informative References . . . . . . . . . . . . . . . . . . . . 23 21
   Appendix A.  Change Log  . . . . . . . . . . . . . . . . . . . . . 25 23
     A.1.  draft-ietf-avtcore-monarch-13  draft-ietf-avtcore-monarch-14  . . . . . . . . . . . . . . 25 23
     A.2.  draft-ietf-avtcore-monarch-12  draft-ietf-avtcore-monarch-13  . . . . . . . . . . . . . . 25 23
     A.3.  draft-ietf-avtcore-monarch-11  draft-ietf-avtcore-monarch-12  . . . . . . . . . . . . . . 25 23
     A.4.  draft-ietf-avtcore-monarch-10  draft-ietf-avtcore-monarch-11  . . . . . . . . . . . . . . 25 23
     A.5.  draft-ietf-avtcore-monarch-09  draft-ietf-avtcore-monarch-10  . . . . . . . . . . . . . . 26 24
     A.6.  draft-ietf-avtcore-monarch-08  draft-ietf-avtcore-monarch-09  . . . . . . . . . . . . . . 26 24
     A.7.  draft-ietf-avtcore-monarch-07  draft-ietf-avtcore-monarch-08  . . . . . . . . . . . . . . 26 24
     A.8.  draft-ietf-avtcore-monarch-06  draft-ietf-avtcore-monarch-07  . . . . . . . . . . . . . . 26 24
     A.9.  draft-ietf-avtcore-monarch-05  draft-ietf-avtcore-monarch-06  . . . . . . . . . . . . . . 26 24
     A.10. draft-ietf-avtcore-monarch-04 draft-ietf-avtcore-monarch-05  . . . . . . . . . . . . . . 27 25
     A.11. draft-ietf-avtcore-monarch-03 draft-ietf-avtcore-monarch-04  . . . . . . . . . . . . . . 27 25
     A.12. draft-ietf-avtcore-monarch-02 draft-ietf-avtcore-monarch-03  . . . . . . . . . . . . . . 27 25
     A.13. draft-ietf-avtcore-monarch-01 draft-ietf-avtcore-monarch-02  . . . . . . . . . . . . . . 28 26
     A.14. draft-ietf-avtcore-monarch-01  . . . . . . . . . . . . . . 26
     A.15. draft-ietf-avtcore-monarch-00  . . . . . . . . . . . . . . 28 26
   Authors' Addresses . . . . . . . . . . . . . . . . . . . . . . . . 29 27

1.  Introduction

   As the delivery of multimedia

   Multimedia services using the Real-Time Transport Protocol (RTP) over IP network is gaining an increasing popularity,
   uncertainties in the performance and availability of these services are driving the need to support new standard seeing
   increased use.  Standard methods for gathering RTP performance
   metrics from RTP applications.  These rapidly emerging
   standards, these applications are needed to manage uncertainties in
   the behavior and availability of their services.  Standards , such as
   RTP Control Protocol Extended Reports (RTCP XR)[RFC3611] and other
   RTCP extension to Sender Reports (SR), Receiver Reports (RR)
   [RFC3550] 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 Quality of Experience (QoE) [RFC6390].

   However the proliferation of RTP/RTCP specific metrics for transport
   and application quality monitoring has been identified as a potential
   problem for interoperability when using RTP/RTCP to communicate all
   the parameters of concern to a specific application.  Given that
   different applications layered on RTP may have some monitoring
   requirements in common, these metrics should be satisfied by a common
   design.

   The objective of this document is to define an extensible RTP
   monitoring framework to provide a small number of re-usable Quality
   of Service (QoS)/QoE metrics which facilitate reduced implementation
   costs and help maximize inter-operability.  RTCP Guideline  The "Guidelines for
   Extending the RTP Control Protocol (RTCP)" [RFC5968] 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 [RFC3611] block.  This
   memo assumes that any requirement for a new metric to be transported
   in RTCP will use a new RTCP XR block.

2.  Terminology

   This memo is informative and as such contains no normative
   requirements.

   In addition, the following terms are defined:

   Transport level metrics

      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.

   Application level metrics

      Metrics relating to application specific parameters or QoE related
      parameters.  Application specific parameters are measured at the
      application level and focus on quality of content rather than
      network performance.  QoE related parameters reflect the end-to-
      end performance at the services level and are ususally measured at
      the user endpoint.  One example of such metrics is the QoE Metric
      specified in QoE metric reporting Block [QOE].

   End System metrics

      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.

   Direct metrics

      Metrics that can be directly measured or calculated and are not
      dependent on other metrics.

   Composed metrics

      Metrics that are not measured directly but rather are derived from by
      algorithmically combining one or more other measured metrics.  An
      example is a metric calculated derived based on derived direct metrics that have been
      measured.

   Interval metrics

      It is referred to as

      Metrics measured over the metrics course of which the reported values
      apply to a single reporting interval
      between two successive report blocks.  This may be the most recent measurement
      RTCP reporting interval duration between
      successive metrics reports.

   Cumulative metrics

      It ( [RFC3550], section 6.2) or some other
      interval signalled using an RTCP Measurement Information XR Block
      [MEASI].  An example interval metric is referred to as the metrics count of which the reported values
      apply to number of
      RTP packets lost over the accumulation period characteristic course of cumulative
      measurements.

   Sampled the last RTCP reporting
      interval.

   Cumulative metrics

      It

      Metrics measured over several reporting intervals for accumulating
      statistics.  The time period over which measurements are
      accumulated can be the complete RTP session, or some other
      interval signalled using an RTCP Measurement Information XR Block
      [MEASI].  An example cumulative metric is referred to as the metrics total number of which RTP
      packets lost since the reported values only
      apply to start of the value RTP session.

   Sampled metrics

      Metrics measured at a particular time instant and sampled from the
      values of a continuously measured or calculated metric
      that has been sampled within a
      reporting interval (generally the value of some measurement as
      taken at any given instance the end of the interval. reporting interval).  An example is the
      inter-arrival jitter reported in RTCP SR and RR packets, which is
      continually updated as each RTP data packet arrives, but only
      reported based on a snapshot of the value which is sampled at the
      instant the reporting interval ends.

3.  RTP monitoring architecture

   There are many ways in which the performance of an RTP session can be
   monitored.  These include RTP-based mechanisms such as the RTP SNMP
   MIB [RFC2959], or the SIP event package for RTCP summary reports
   [RFC6035], or non-RTP mechanisms such as generic MIBs, NetFlow,
   IPFix, and so on.  Together, these provide useful mechanisms for
   exporting data on the performance of an RTP session to non-RTP
   network management systems.  It is desirable to also perform in-
   session monitoring of RTP performance.  RTCP provides the means to do
   this.  In the following, we specify an architecture for using and
   extending RTCP for monitoring RTP sessions.  One major benefit of
   such architecture is ease of integration with other RTP/RTCP
   mechanisms.

3.1.  Overview

   The RTP monitoring architecture comprises the following two key
   functional components shown below:

   o  RTP Monitor

   o  RTP Metric Block Structure

   RTP Monitor is the functional component defined in the Real-time
   Transport Protocol [RFC3550] that .  It acts as a source repository of
   information gathered for monitoring purposes.  It may gather purposes and exchanges such
   information
   reported by RTCP XR or with the other RTCP extension and calculate statistics
   from multiple source. RTP monitors using RTP Metric Blocks.
   According to the definition of monitor in the RTP Protocol [RFC3550],
   the end system that runs an application program that sends or
   receives RTP data packets, an intermediate-
   system intermediate-system that forwards RTP
   packets to End-devices or a third party that observes the RTP and
   RTCP traffic but does not make itself visible to the RTP Session
   participants (i.e., the third party monitor depicted
   in figure 1) can be envisioned to act as play the role of the RTP monitor within the RTP
   monitoring architecture.  Note that the  The third party RTP monitor should be
   placed on the RTP/RTCP paths path between the sender, intermediate and the
   receiver.

   The RTP Metric Block monitor also exposes real time Application QoS/QoE metric
   information in the appropriate report block format (e.g.,RTCP XR or
   other non-RTP means) to the management
   system (i.e., report collector) within the RTP monitoring
   architecture. system.  Such information can
   be formulated as:

   o  The as various types of metrics, e.g., direct metrics

   o  or the metrics/
   composed metrics or formulated as

   o  The Interval metrics

   o  or interval metrics/ cumulative metrics

   o  or sampled metrics metrics/sampled
   metrics,etc.  Both the RTCP or RTCP XR can be extended to convey
   these metrics.
   The details on metrics,e.g., the basic RTCP Reception Report (RR) [RFC3550]
   that conveys reception statistics (i.e., transport protocols level statistics)
   for metric blocks are described in
   Section 3.2.

              +-------------------+
              | RTP Sender        |      6       +----------+
              |   +-----------+   ||------------>|Management|
   -------------->|  Monitor  |----|     6       |  System  |
   |          |   |           |   | |----------->|          |
   |          |   +-----------+   | |   -------->|          |
   |          |+-----------------+| |   |        +-------/--+
   |          ||Application      || |   | -----------|   |
   |          ||-Streaming video || |   | |   1      |   |6
   | |---------|-VOIP            || |   | | +--------V------+
   | |        ||-Video conference|| |   | ---  Third Party  |
   | |        ||-Telepresence    || |   |   |    Monitor    |
   | |        ||-Ad insertion    || |  6|   +---------------+
   5 |        |+-----------------+| |   |
   | |        +-------------------+ |   |
   | 1                              |   |
   | | +Intermediate------------+   |   | |------------------------+
   | | | RTP System             |   |   | | multiple RTP Receiver >--4-|    |
   | | |      +-----------      |   |   | |    +-----------+       |
   | | |      |          -----------|   -------|           |  |    |
   | | |      |          |      |         |    |  Monitor  |<--    |
   |-----------  Monitor |<--------5------|----|           |<------|
     | |      |          | Report Block   |    +----/------+      ||
     | |      +----------+Transport Over  |                       ||
     | | media streams,the RTCP XR or XRs [RFC3611] that supplement
   the existing RTCP |         |2            ||
     | | +-----------------+ extension    | +-------/---------+   ||
     | | |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 |    |
       | +-----------------+    |         | +-----------------+    |
       +------------------------+         +------------------------+

                   Figure 1: RTP Monitoring Architecture

   1. packets and provide more detailed feedback on
   reception quality and RTCP NACK [RFC4585] that provides feedback on
   the RTP communication between real time applications.

   2.  Application level metrics collection.

   3.  Transport level metrics collection.

   4.  End System metrics collection.

   5.  Metrics Reporting over sequence numbers for a subset of the RTP/RTCP paths

   6.  RTCP information Export to lost packets or all the network management system.
   currently lost packets.

   RTP may be used to multicast groups, both Any Source Multicast (ASM)
   and Source Specific Multicast (SSM).  These groups can be monitored
   using RTCP.  In the ASM case, the monitor is a member of the
   multicast group and listens to RTCP XR reports from all members of
   the ASM group.  In the SSM case, there is a unicast feedback target
   that receives RTCP feedback from receivers and distributes it to
   other members of the SSM group (see figure 1 of RFC5760). [RFC5760] ).  The
   monitor will need to be co-located with the feedback target to
   receive all feedback from the receivers (this may also be an
   intermediate system).  In both ASM and SSM scenarios, receivers can
   send RTCP XR reports to enhance the reception quality reporting.

3.2.  RTCP Metric Block Report and associated parameters

   The basic RTCP Reception Report (RR) [RFC3550] conveys reception
   statistics (i.e., transport level statistics) in metric block report
   format for multiple RTP media streams including

   o  the fraction of packet lost since the last report

   o  the cumulative number  Location of packets lost

   o  the highest sequence number received

   o  an estimate of the inter-arrival jitter

   o  and information to allow senders to calculate the network round
      trip time.

   The RTCP XRs [RFC3611] supplement the existing RTCP packets and
   provide more detailed feedback on reception quality in several
   categories:

   o  Loss and duplicate Run Length Encoding (RLE) reports

   o  Packet-receipt times reports

   o  Round-trip time reports
   o  Statistics Summary Reports RTP Monitors

   There are also various other scenarios in which it is desirable to
   send RTCP Metric reports more frequently.  For example, the Audio/
   Video Profile with Feedback [RFC4585] extends the standard Audio/
   Video Profile [RFC3551] to allow RTCP reports to several possible locations from where RTP sessions can be sent early
   provided RTCP bandwidth allocation is respected.  The following
   monitored.  These include end-systems that terminate RTP sessions,
   middleboxes that are
   four use cases but an active part of an RTP session, and third-
   party devices that passively monitor an RTP session.  Not every RTP
   sessions will include monitoring, and those sessions that are
   monitored will not limited to:

   o  RTCP NACK is used to provide feedback on the all include each type of monitor.  The performance
   metrics collected by RTP sequence numbers
      for a subset monitors can be divided into end system
   metrics, application level metrics, and transport level metrics.
   Some of these metrics may be specific to the lost packets or all measurement point of the currently lost packets
      [RFC4585].

   o  RTCP is extended to convey requests for full intra-coded frames
   RTP monitor, or
      select depend on where the reference picture, and signal changes RTP monitors are located in the desired
      temporal/spatial trade-off
   network, while others are more general and maximum media bit rate [RFC5104].

   o  RTCP or RTCP XR can be collected in any
   monitoring location.

   End-system monitoring is extended to provide feedback on Explicit
      Congestion Notification (ECN) statistics information [ECN].

   o  RTCP XR monitoring that is extended to provide feedback deployed on multicast acquisition
      statistics information and parameters [RFC6332].

3.3. devices that
   terminate RTP Sender/Receiver entities located flows.  Flows can be terminated in network nodes

   The location of the user equipment, such
   as phones, video conferencing systems, or IPTV set-top boxes.
   Alternatively, they can be terminated in devices that gateway between
   RTP Sender/Receiver entities and other transport protocols.  Transport and end system metrics,
   application level metrics that don't reflect end to end user
   experience may impact a set be collected at all types of
   meaningful metrics.  For instance, end system, but some
   application level metrics (i.e.,quality of experience (QoE) metrics)
   may only be applicable for QoE
   related performance parameters user-facing end systems.

   RTP sessions can include middleboxes that are under most conditions measured at an active part of the user device that receives
   system.  These middleboxes include RTP data packets.  However mixers and translators, MCUs,
   retransmission servers, etc.  If the middlebox establishes separate
   RTP sessions to the other participants, then it must act as an end
   system in some
   cases, given each of those separate RTP sessions for the factors ( "measurement point location", "measurement
   model location", "awareness purposes of content information", etc [P.NAMS])
   taken into account, such
   monitoring.  If a single RTP session traverses the middlebox, then
   the middlebox can be assigned an SSRC in that session which it can
   use for it's reports.  Transport level metrics may be measured in a collected at
   such middlebox.

   Third-party monitors may be deployed that passively monitor RTP
   sessions for network node management purposes.  Third-party monitors often
   do not send reports into the RTP session being monitored, but instead of
   collect transport and end system metrics, application level metrics
   that are reported via some network management application.  In some
   cases, however, third-party monitors can send reports to some or all
   participants in the session being monitored.  For example, in a user device. media
   streaming scenario, third-party monitors may be deployed that
   passively monitor the session and send reception quality reports to
   the media source, but not to the receivers.

4.  Issues with reporting metric block using RTCP XR extension

   Issues

   The following sections discuss four 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:

   o extensions.

4.1.  Using compound metrics block.  A single report block
      (i.e.,compound

   A compound metrics block) block is designed to contain a large number of
   parameters in from different classes for a specific
      application. application in a
   single block.  For example, the RTCP Extended Reports (XRs) [RFC3611]
   defines seven report block formats for network management and quality
   monitoring.  Some of these block types defined in the RTCP XRs
   [RFC3611] 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
   different monitoring requirements.  Designing compound metrics block
   only for specific applications may increase implementation cost and
   minimize interoperability.

   o

4.2.  Correlating RTCP XR with the non-RTP data. data

   Canonical End-Point Identifier SDES Item (CNAME), defined in the RTP
   Protocol [RFC3550], is an example of an existing tool that allows
   binding a Synchronization source (SSRC) that may change to a name
   that is fixed within one RTP session.  CNAME may be also fixed across
   multiple RTP sessions from the same source.  However there may be
   situations where RTCP reports are sent to other participating
   endpoints using non-RTP protocol in a session.  For example, as
   described in the SIP RTCP Summary Report Protocol [RFC6035], the data
   contained in RTCP XR VoIP metrics reports [RFC3611] are forwarded to
   a central collection server systems using SIP.  In such case, there
   is a large portfolio of quality parameters that can be associated
   with real time application, e.g., VOIP application, but only a
   minimal number of parameters are included on the RTCP-XR reports.  Therefore correlation between RTCP XR and
      non-RTP data should be provided if administration or management
      systems need to rely on the mapping
   With these minimal number of RTCP statistics parameters mapped to
   non-RTCP
      measurements to conducts data analysis and creates alerts to the
      users.  Without such correlation, measurements, it is hard to provide accurate measures of
   real time application quality with a minimal number of
      parameters included on quality,conduct detailed data analysis and
   creates alerts timly to the RTCP-XR reports in such case.

   o users.  Therefore correlation between
   RTCP XR and non-RTP data should be provided.

4.3.  Measurement Information duplication.  Measurement information
      provides information relevant to a measurement reported in one or
      more other block types.  For example we duplication

   We may set a metric measurement interval for the session and monitor RTP
   packets within one or several consecutive metric report intervals.  In such
   case, the extra measurement information (e.g., extended sequence
   number of 1st packet, measurement period) may be expected.  However
   if we put such extra measurement information into each metric block,
   there may be situations where an RTCP XR packet containing multiple
   metric blocks, reports on the same streams from the same source.  In
   other words, duplicated data for the measurement is provided multiple
   times, once in every metric block.  Though this design ensures
   immunity to packet loss, it may bring more packetization complexity
   and the processing overhead is not completely trivial in some cases.
   Therefore compromise between processing overhead and reliability
   should be taken into account.

   o

4.4.  Consumption of XR block code points. points

   The RTCP XR block namespace is limited by the 8-bit block type field
   in the RTCP XR header.  Space exhaustion may be a concern in the
   future.  We therefore may  Anticipating the potential need a way to extend the block type
   space, so it is noted that new
      specifications may continue to be developed. Block Type 255 is reserved for future
   extensions in [RFC3611].

5.  Guideline  Guidelines for reporting metric block using RTCP XR

5.1.  Using  Contain the single metrics blocks in the Metric Block

   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 [RFC3550]
   (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.

   To avoid this pitfall, this memo recommends the definition of metrics
   blocks 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 "IP Packet Delay Variation (IPDV)" defined by
   [Y1540].  See Section 6 for architectural considerations for a
   metrics block, using as an example a metrics block to report packet
   delay variation.  Further, it is appropriate to not only define
   report blocks separately, but also to do so in separate documents
   where possible.  This makes it easier to evolve the reports (i.e., to
   update each type of report block separately), and also makes it
   easier to require compliance with a particular report block.

5.2.  Correlating RTCP XR with RTP data  Include the payload type and format parameters in the Metric Block

   There are some classes of metrics that can only be interpreted with
   knowledge of the media codec that is being used (audio MOS mean opinion
   scores (MOS) were the triggering example, but there may be others).
   In such cases the correlation of RTCP XR with RTP data is needed.
   Report blocks that require such correlation need to include the
   payload type of the reported media.  In addition, it is necessary to
   signal the details and parameters of the payload format to which that
   payload type is bound using some out-of-band means (e.g., as part of
   an SDP offer/
   answer offer/answer exchange).

5.3.  Correlating  Use RTCP SDES to correlate XR reports with the non-RTP data

   There may be situations where more than one media transport protocol
   is used by one application to interconnect to the same session in the
   gateway.  For example, one RTCP XR Packet is sent to the
   participating endpoints using non-RTP-based media transport (e.g.,
   using SIP) in a VOIP session.  One crucial factor lies in how to
   handle their different identities that are corresponding to different
   media transport.

   This memo recommends an approach to facilitate the correlation of the
   RTCP Session with other session-related non-RTP data.  That is to say
   if there is a need to correlate RTP sessions with non-RTP sessions,
   then the correlation information needed should be conveyed in a new
   RTCP Source Description (SDES) item, since such correlation
   information describes the source, rather than providing a quality
   report.  An example use case is for a participant endpoint may convey
   a call identifier or a global call identifier associated with the
   SSRC of measured RTP stream.  In such case, the participant endpoint
   uses the SSRC of source to bind the call identifier using SDES item
   in the SDES RTCP packet and send such correlation to the network
   management system.  A flow measurement tool that is configured with
   the 5-tuple and not call-aware then forward the RTCP XR reports along
   with the SSRC of the measured RTP stream which is included in the XR
   Block header and 5-tuple to the network management system.  Network
   management system can then correlate this report using SSRC with
   other diagnostic information such as call detail records.

5.4.  Reducing  Reduce Measurement information repetition across metric blocks

   When multiple metric blocks are carried in one RTCP XR packet,
   reporting on the same stream from the same source for the same time
   period, RTCP should use the SSRC to identify and correlate the
   multiple metric blocks between metric blocks.  This memo proposes to
   define a new XR Block (i.e., the Measurement information block
   [MEASI]) that will be used to convey the common time period and the
   number of packets sent during this period.  If the measurement
   interval for a metric is different from the RTCP reporting interval,
   then this measurement duration in the Measurement information block [MI]
   should be used to specify the interval.  When there may be multiple
   measurements information blocks with the same SSRC in one RTCP XR
   compound packet, the measurement information block should be put in
   order and followed by all the metric blocks associated with this
   measurement information block.  New RTCP XR metric blocks that rely
   on the Measurement information block [MI] [MEASI] must specify the
   response in case the new RTCP XR metric block is received without an
   associated measurement information block.  In most cases, it is
   expected that the correct response is to discard the received metric.
   In order to reduce measurement information repetition in one RTCP XR
   compound packet containing multiple metric blocks, the measurement
   information shall be sent before the related metric blocks that are
   from the same reporting interval.  Note that for packet loss
   robustness if the report blocks for the same interval span over more
   than one RTCP packet packet, then each must have the measurement identity
   information even though they will be the same.

5.5.  Expanding the RTCP XR block namespace

   The consumption of XR block code points isn't a major issue.  However
   if XR block codes points is really close to run out of space, it
   might be desirable to define new fields in the XR report block or
   define one XR block type for vendor-specific extensions, with an
   enterprise number included to identify the vendor making the
   extension.

6.  An example of a metric block

   This section uses the example of an existing proposed metrics block
   to illustrate the application of the principles set out in
   Section 5.1.

   The example [PDV] 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 "interarrival
   jitter" field.  There are other PDV metrics with a certain similarity
   in metric structure which may be more useful to certain applications.
   Two such metrics are the IPDV metric ([Y1540], [RFC3393]) and the
   mean absolute packet delay variation 2 (MAPDV2) metric [G1020].  Use
   of these metrics is consistent with the principle in Section 5 of
   RTCP guideline [RFC5968] 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 architecture using the example of [PDV] rather than to
   document the design of the PDV metrics block or to provide a tutorial
   on PDV in general.

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

   o  provide an RTCP XR block per metric

   o  provide a single RTCP XR block which contains all three metrics

   o  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

   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 [PDV].

7.  Application to RFC 5117 topologies

   The topologies specified in [RFC5117] 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 the RTP protocol [RFC3550].
   For purposes of reporting connection quality to other RTP systems,
   RTP mixers and RTP end systems are very similar.  Mixers
   resynchronize packets and do not relay RTCP reports received from one
   cloud towards other cloud(s).  Translators do not resynchronize
   packets and should forward certain RTCP reports between clouds.  In
   this 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 the RTP protocol
   [RFC3550].  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.  The second category relates to deployed system models used in
   many H.323 [H323] video conferences.  The topologies in this category
   are Topo-Video-Switch-MCU and Topo-RTCP-terminating-MCU.  Such
   topologies based on systems (e.g.,MCUs) do not behave according to
   the RTP protocol [RFC3550].

   Considering the MCU and translator and MCU are two typical topologies intermediate-
   systems in the two categories mentioned above, this document will
   take them as two typical examples to explain how RTCP XR report works
   in different RFC5117 topologies.

7.1.  Applicability to MCU

   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 (i.e.,media
   distribution) unimpaired.

7.2.  Applicability to Translators

   Section 7.2 of the RTP protocol [RFC3550] describes processing of
   RTCP by translators.  RTCP XR is within the scope of the
   recommendations of the RTP protocol [RFC3550].  Some RTCP XR metrics
   blocks may usefully be measured at, and reported by, translators.  As
   described in the RTP protocol [RFC3550] this creates a requirement
   for the translator to allocate an SSRC for the monitor collocated
   with itself so that the monitor may populate the SSRC in the RTCP XR
   packet header as packet sender SSRC and send it out(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.

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

7.2.  Applicability to MCU

   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 connection but increases RTCP bandwidth and may in
   some cases present a security risk. network,
   though an RTP translators may have
   forwarding behaviour based on local policy, which might differ
   between different interfaces of end system complying with the same translator. robustness principle of
   [RFC1122] should survive with essential functions (i.e.,media
   distribution) unimpaired.

8.  IANA Considerations

   There is no IANA action in this document.

9.  Security Considerations

   This document focuses on the RTCP reporting extension using RTCP XR
   and should not give rise to any new security vulnerabilities beyond
   those described in RTCP XRs [RFC3611].  However it also describes the
   architectural framework to be used for monitoring at RTP layer.  The
   security issues with monitoring needs to be considered.

   In RTP sessions, a RTP system may use its own SSRC to send its
   monitoring reports towards its next-neighbour RTP system.  Other RTP
   system in the session may have a choice as to whether they forward
   this RTP system's RTCP packets.  This present a security issue since
   the information in the report may be exposed by the other RTP system
   to any malicious node.  Therefore if the information is considered as
   sensitive, the monitoring report should be encrypted.

   Also note that the third party monitors are not visible at the RTP
   layer since they do not send any RTCP packets.  In order to prevent
   any sensitive information leakage, the monitoring from the third
   party monitors should be prohibited unless the security is in place
   to authenticate them.

10.  Acknowledgement

   The authors would also like to thank Colin Perkins, Charles Eckel,
   Robert Sparks, Salvatore Loreto, Graeme Gibbs, Debbie Greenstreet,
   Keith Drage, Dan Romascanu, Ali C. Begen, Roni Even, Magnus
   Westerlund for their valuable comments and suggestions on the early
   version of this document.

11.  Informative References

   [ECN]      Westerlund, M., Johansson, I., Perkins, C., O'Hanlon, P.,
              and K. Carlberg, "Explicit Congestion Notification (ECN)
              for RTP over UDP", ID draft-ietf-avtcore-ecn-for-rtp-07,
              March 2012.

   [G1020]    ITU-T, "ITU-T Rec. G.1020, Performance parameter
              definitions for quality of speech and other voiceband
              applications utilizing IP networks", July 2006.

   [H323]     ITU-T, "ITU-T Rec. H.323, Packet-based multimedia
              communications systems", June 2006.

   [MI]

   [MEASI]    Wu, Q., "Measurement Identity and information Reporting
              using SDES item and XR Block",
              ID draft-ietf-xrblock-rtcp-xr-meas-identity-06,
              April 2012.

   [P.NAMS]   ITU-T, "Non-intrusive parametric model for the Assessment
              of performance of Multimedia Streaming", ITU-T
              Recommendation P.NAMS, November 2009.

   [PDV]      Hunt, G., Clark, A., and Q. Wu, "RTCP XR Report Block for
              Packet Delay Variation Metric Reporting",
              ID draft-ietf-xrblock-rtcp-xr-pdv-02, December 2011.

   [QOE]      Hunt, G., Clark, A., Wu, Q., Schott, R., and G. Zorn,
              "RTCP XR Blocks for QoE Metric Reporting",
              ID draft-ietf-xrblock-rtcp-xr-qoe-00, February 2012.

   [RFC1122]  Braden, R., "Requirements for Internet Hosts --
              Communication Layers", RFC 1122, October 1989.

   [RFC2959]  Baugher, M., Strahm, B., and I. Suconick, "Real-Time
              Transport Protocol Management Information Base", RFC 2959,
              October 2000.

   [RFC3393]  Demichelis, C., "IP Packet Delay Variation Metric for IP
              Performance Metrics (IPPM)", RFC 3393, November 2002.

   [RFC3550]  Schulzrinne, H., "RTP: A Transport Protocol for Real-Time
              Applications", RFC 3550, July 2003.

   [RFC3551]  Schulzrinne , H. and S. Casner, "Extended RTP Profile for
              Real-time Transport Control Protocol (RTCP)-Based Feedback
              (RTP/AVPF)", RFC 3551, July 2003.

   [RFC3611]  Friedman, T., "RTP Control Protocol Extended Reports (RTCP
              XR)", RFC 3611, November 2003.

   [RFC4585]  Ott, J. and S. Wenger, "Extended RTP Profile for Real-time
              Transport Control Protocol (RTCP)-Based Feedback (RTP/
              AVPF)", RFC 4585, July 2006.

   [RFC5104]  Wenger, S., Chandra, U., Westerlund, M., and B. Burman,
              "Session Initiation Protocol Event Package for Voice
              Quality Reporting", RFC 5104, February 2008.

   [RFC5117]  Westerlund, M., "RTP Topologies", RFC 5117, January 2008.

   [RFC5760]  Ott, J., Chesterfield, J., and E. Schooler, "RTP Control
              Protocol (RTCP) Extensions for Single-Source Multicast
              Sessions with Unicast Feedback", RFC 5760, February 2010.

   [RFC5968]  Ott, J. and C. Perkins, "Guidelines for Extending the RTP
              Control Protocol (RTCP)", RFC 5968, September 2010.

   [RFC6035]  Pendleton, A., Clark, A., Johnston, A., and H. Sinnreich,
              "Session Initiation Protocol Event Package for Voice
              Quality Reporting", RFC 6035, November 2010.

   [RFC6332]  Begen, A. and E. Friedrich, "Multicast Acquisition Report
              Block Type for RTP Control Protocol (RTCP) Extended
              Reports (XRs)", RFC 6332, July 2011.

   [RFC6390]  Clark, A. and B. Claise, "Guidelines for Considering New
              Performance Metric Development", RFC 6390, October 2011.

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

Appendix A.  Change Log

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

A.1.  draft-ietf-avtcore-monarch-14

   The following are the major changes compared to 13:

   o  Incorporate the key points in the section 3.2 into overview
      section.

   o  Remove the figure 1 and use the description instead.

   o  Add description in the section 3.3 to discuss the possible
      location of the monitors and the types of metric at that location.

   o  Add the description to make the definition of Interval metrics/
      cumulative metrics/sampled metrics clear.

   o  Editorial Changes.

A.2.  draft-ietf-avtcore-monarch-13

   The following are the major changes compared to 12:

   o  Editorial Changes.

A.2.

A.3.  draft-ietf-avtcore-monarch-12

   The following are the major changes compared to 11:

   o  Editorial Changes based on Charles' Comments.

   o  Reference update.

   o  Add one new section 5.2 to discuss Correlating RTCP XR with RTP
      data.

   o  Add text in section 5.1 to highlight it is more appropriate to
      define each block in a separate draft.

A.3.

A.4.  draft-ietf-avtcore-monarch-11

   The following are the major changes compared to 10:

   o  Editorial Changes.

A.4.

A.5.  draft-ietf-avtcore-monarch-10

   The following are the major changes compared to 09:

   o  Discuss what exist already for monitoring in section 3.1.

   o  Provide benefit using RTCP XR based monitoring in section 3.1.

   o  add one new paragraph in section 3.1 to describe how monitoring
      architecture is applied to ASM/SSM.

   o  Other Editorial Changes.

A.5.

A.6.  draft-ietf-avtcore-monarch-09

   The following are the major changes compared to 07:

   o  Rephrase application level metric definition.

   o  Add one new section to clarify where to measure QoE related
      parameters.

   o  Add text in section 5.3 to clarify the failure case when
      measurement interval is not sent.

   o  Add text in section 5.3 to clarify how to deal with multiple
      measurements information blocks carried in the same packet.

A.6.

A.7.  draft-ietf-avtcore-monarch-08

   The following are the major changes compared to 07:

   o  Editorial change to the reference.

A.7.

A.8.  draft-ietf-avtcore-monarch-07

   The following are the major changes compared to 06:

   o  Clarify the XR block code points consumption issue in the section
      4 and new section 5.4.

   o  Other editorial changes.

A.8.

A.9.  draft-ietf-avtcore-monarch-06

   The following are the major changes compared to 05:

   o  Some editorial changes.

A.9.

A.10.  draft-ietf-avtcore-monarch-05

   The following are the major changes compared to 04:

   o  Replace "chunk" with "new SDES item".

   o  Add texts in security section to discussion potential security
      issues.

   o  Add new sub-section 5.3 to discuss Reducing Measurement
      information repetition.

   o  Other editorial changes.

A.10.

A.11.  draft-ietf-avtcore-monarch-04

   The following are the major changes compared to 03:

   o  Update section 5.2 to clarify using SDES packet to carry
      correlation information.

   o  Remove section 5.3 since additional identity information goes to
      SDES packet and using SSRC to identify each block is standard RTP
      feature.

   o  Swap the last two paragraphs in the section 4 since identity
      information duplication can not been 100% avoided.

   o  Other editorial changes.

A.11.

A.12.  draft-ietf-avtcore-monarch-03

   The following are the major changes compared to 02:

   o  Update bullet 2 in section 4 to explain the ill-effect of Identity
      Information duplication.

   o  Update bullet 3 in section 4 to explain why Correlating RTCP XR
      with the non-RTP data is needed.

   o  Update section 5.2 to focus on how to reduce the identity
      information repetition

   o  Update section 5.3 to explain how to correlate identity
      information with the non-RTP data

A.12.

A.13.  draft-ietf-avtcore-monarch-02

   The following are the major changes compared to 01:

   o  Deleting first paragraph of Section 1.

   o  Deleting Section 3.1, since the interaction with the management
      application is out of scope of this draft.

   o  Separate identity information correlation from section 5.2 as new
      section 5.3.

   o  Remove figure 2 and related text from section 5.2.

   o  Editorial changes in the section 4 and the first paragraph of
      section 7.

A.13.

A.14.  draft-ietf-avtcore-monarch-01

   The following are the major changes compared to 00:

   o  Restructure the document by merging section 4 into section 3.

   o  Remove section 4.1,section 5 that is out of scope of this
      document.

   o  Remove the last bullet in section 6 and section 7.3 based on
      conclusion of last meeting.

   o  Update figure 1 and related text in section 3 according to the
      monitor definition in RFC3550.

   o  Revise section 9 to address monitor declaration issue.

   o  Merge the first two bullet in section 6.

   o  Add one new bullet to discuss metric block association in section
      6.

A.14.

A.15.  draft-ietf-avtcore-monarch-00

   The following are the major changes compared to
   draft-hunt-avtcore-monarch-02:

   o  Move Geoff Hunt and Philip Arden to acknowledgement section.

Authors' Addresses

   Qin Wu (editor)
   Huawei
   101 Software Avenue, Yuhua District
   Nanjing, Jiangsu  210012
   China

   Email: sunseawq@huawei.com

   Geoff Hunt
   Unaffiliated

   Email: r.geoff.hunt@gmail.com

   Philip Arden
   BT
   Orion 3/7 PP4
   Adastral Park
   Martlesham Heath
   Ipswich, Suffolk  IP5 3RE
   United Kingdom

   Phone: +44 1473 644192
   Email: philip.arden@bt.com