Network Working Group | A. Clark |
Internet-Draft | Telchemy |
Intended status: Standards Track | Q. Wu |
Expires: December 20, 2013 | Huawei |
R. Schott | |
Deutsche Telekom | |
G. Zorn | |
Network Zen | |
June 18, 2013 |
RTP Control Protocol (RTCP) Extended Report (XR) Blocks for QoE Metric Reporting
draft-ietf-xrblock-rtcp-xr-qoe-09
This document defines an RTP Control Protocol (RTCP) Extended Report (XR) Block including two new segment types and associated SDP parameters that allow the reporting of QoE metrics for use in a range of RTP applications.
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 December 20, 2013.
Copyright (c) 2013 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.
This document defines a new block type to augment those defined in [RFC3611], for use in a range of RTP applications.
The new block type provides information on media quality using one of several standard metrics (i.e.,Mean Opinion Score(MoS)).
The metrics belong to the class of application level metrics defined in [RFC6792].
The use of RTCP for reporting is defined in [RFC3550]. [RFC3611] defined an extensible structure for reporting using an RTCP Extended Report (XR). This document defines a new Extended Report block for use with [RFC3550] and [RFC3611].
The Performance Metrics Framework [RFC6390] provides guidance on the definition and specification of performance metrics. The RTP Monitoring Architectures [RFC6792] provides guidelines for reporting block format using RTCP XR. The XR block type described in this document are in accordance with the guidelines in [RFC6390] and [RFC6792].
The QoE Metrics Report Block can be used in any application of RTP for which QoE measurement algorithms are defined.
The factors that affect real-time audio/video application quality can be split into two categories. The first category consists of transport-specific factors such as packet loss, delay and jitter (which also translates into losses in the playback buffer). The factors in the second category are application-specific factors that affect real time application (e.g., video) quality. These factors can be but are not limited to video codec and loss recovery technique, coding bit rate, packetization scheme, and content characteristics.
Compared with application-specific factors, the transport-specific factors sometimes are not sufficient to measure real time media quality, since the ability to analyze the real time media in the application layer provides quantifiable measurements for end user Quality of Experience (QoE) that may not be captured in the transmission layers or from the RTP layer down. In a typical scenario, monitoring of the transmission layers can produce statistics suggesting that quality is not an issue, such as the fact that network jitter is not excessive. However, problems may occur in the service layers leading to poor subscriber QoE. Therefore monitoring using only network-level measurements may be insufficient when application layer media quality is required.
In order to provide accurate measures of real time media quality when transporting real time media across a network, the QoE Metrics is highly required which can be conveyed in the RTCP XR packets [RFC3611] and may have the following three benefits:
The key words "MUST", "MUST NOT", "REQUIRED", "SHALL", "SHALL NOT", "SHOULD", "SHOULD NOT", "RECOMMENDED", "MAY", and "OPTIONAL" in this document are to be interpreted as described in RFC 2119 [RFC2119].
The terminology used is
Multimedia application QoE metric is commonly expressed as a MOS ("Mean Opinion Score"), MOS is on a scale from 1 to 5, in which 5 represents excellent and 1 represents unacceptable. MOS scores are usually obtained using subjective testing or using objective algorithm. However Subjective testing to estimate the multimedia quality may be not suitable for measuring the multimedia quality since the results may vary from test to test. Therefore using objective algorithm to calculate MOS scores is RECOMMENDED. ITU-T recommendations (e.g., [G.107][G.107.1][P.862][P.862.1][P.862.2][P.863][P.564][G.1082][P.1201.1][P.1201.2][P.1202.1][P.1202.2]) define the methodologies for assessment of the performance of multimedia stream and provides a method to evaluate QoE estimation algorithms and objective model for video and audio. Hence this document recommends vendors and implementers to use these International Telecommunication Union (ITU)-specified methodologies to measure parameters when possible.
This block reports the multimedia application performance or media quality beyond the information carried in the standard RTCP packet format. Information is recorded about QoE metric which provides a measure that gives a numerical indication of the perceived quality of the media received. The measurement of metrics in this block are usually made at the receiving end of the RTP stream. Instances of this Metrics Block refer by Synchronization source (SSRC) to the separate auxiliary Measurement Information block [RFC6776] which describes measurement periods in use (see RFC6776 section 4.2).
This Metrics Block relies on the measurement period in the Measurement Information block indicating the span of the report. Senders MUST send this block in the same compound RTCP packet as the measurement information block. Receivers MUST verify that the measurement period is received in the same compound RTCP packet as this Metrics Block. If not, this Metrics Block MUST be discarded.
The report block contents are dependent upon a series of flag bits carried in the first part of the header. Not all parameters need to be reported in each block. Flags indicate which are and which are not reported. The fields corresponding to unreported parameters MUST be present, and MUST be set to zero. The receiver MUST ignore any QoE Metrics Block with a non-zero value in any field flagged as unreported. The encoding of QoE metrics block payload consists of a series of 32 bit units called segments that describe payload Type, MoS algorithm and MoS value.
0 1 2 3 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1 +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | BT=QMB | I | Reserved | Block Length | +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | SSRC of source | +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | Segment 1 | +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | Segment 2 | +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ .................. +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | Segment n | +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
The QoE Metrics Block has the following format:
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ |S| CAID | PT | MOS Value | +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ |S| CAID | PT |CHID | MOS Value | +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
[RFC3611] defines the use of SDP (Session Description Protocol) [RFC4566] for signaling the use of XR blocks. However XR blocks MAY be used without prior signaling (see section 5 of RFC3611).
This section augments the SDP [RFC4566] attribute "rtcp-xr" defined in [RFC3611] by providing an additional value of "xr-format" to signal the use of the report block defined in this document. Within the "xr-format", the syntax element "calgextmap" is an attribute as defined in [RFC4566] and used to signal the mapping of the local identifier (CAID) in the segment extension defined in section 3.2 to the calculation algorithm. Specific extensionattributes are defined by the specification that defines a specific extension name; there might be several.
xr-format =/ xr-qoe-block xr-qoe-block = "qoe-metrics" ["=" extmap *("," calgextmap)] calgextmap = mapentry "=" extensionname [SP extentionattributes] direction = "sendonly" / "recvonly" / "sendrecv" / "inactive" mapentry = "calg:" 1*5 DIGIT ["/" direction] extensionname = "P564";ITU-T P.564 Compliant Algorithm [P.564] / "G107";ITU-T G.107 [G.107] / “G107_1”;ITU-T G.107.1 [G.107.1] / "TS101_329";ETSI TS 101 329-5 Annex E [ ETSI] /"JJ201_1 ";TTC JJ201.1 [TTC] /"P1201_1";ITU-T P.1201.2 [P.1201.1] /"P1201_2";ITU-T P.1201.2 [P.1201.2] /"P1202_1";ITU-T P.1202.1 [P.1202.1] /"P1202_2";ITU-T P.1202.2 [P.1202.2] /”P.862.2”;ITU-T P.862.2 [P.862.2] /”P.863”; ITU-T P.863 [P.863] / non-ws-string extentionattributes = mosref /attributes-ext mosref = "mosref=" ("l"; lower resolution /“m”; middle resolution / "h";higher resolution / non-ws-string) mostype = “mostype=” (”e”; Estimated MoS [P.800.1] /”s”;subjective MoS [P.800.1] /”o”;objective MoS [P.800.1] /non-ws-string) attributes-ext = non-ws-string SP = <Define in RFC5234> non-ws-string = 1*(%x21-FF)
a=calgextmap:<value> ["/"<direction>] <name> [<extensionattributes>]
Each local identifier (CAID)of calculation algorithm used in the segment defined in the section 3.2 is mapped to a string using an attribute of the form:
Example: a=rtcp-xr:qoe-metrics=calg:1=G107,calg:2=P1202_1
where <name> is a calculation algorithm name, as above, <value> is the local identifier (CAID)of the calculation algorithm associated with the segment defined in this document and is an integer in the valid range inclusive.
A usable mapping MUST use IDs in the valid range, and each ID in this range MUST be unique and used only once for each stream or each channel in the stream.
The mapping MUST be provided per media stream (in the media-level section(s) of SDP, i.e., after an "m=" line).
The syntax element "mosref" is referred to the media resolution relative reference (e.g., Narrowband (3.4kHz) Speech and Standard Definition (SD) Resolution Video with lower resolution, Wideband (7kHz) Speech and High Definition (HD) Resolution Video with higher resolution). MOS scores reported in the QoE block might vary with the MoS reference; For example, MOS values for narrowband, wideband codecs occupy the same range but SHOULD be reported in different value. For video application, MoS scores for SD resolution, HD resolution video also occupy the same ranges and SHOULD be reported in different value.
When SDP is used in offer-answer context, the SDP Offer/Answer usage defined in [RFC3611] applies. In the offer answer context, the signaling described above might be used in three ways:
A direction attribute MAY be included in a calgextmap; without it, the direction implicitly inherits, of course, from the RTCP stream direction.
Segment extension, with their directions, MAY be signaled for an "inactive" stream. It is an error to use an extension direction incompatible with the stream direction (e.g., a "sendonly" attribute for a "recvonly" stream).
If an segment extension is offered as "sendrecv", explicitly or implicitly, and asymmetric behavior is desired, the SDP MAY be modified to modify or add direction qualifiers for that segment extension.
A mosref attribute and mos type attribute MAY be included in an calgextmap; without it, the mosref and most type attribute implicitly inherits, of course, from the name attribute (e.g., P.1201.1 [P.1201.1] indicates lower resolution used while P.1201.2 [P.1201.2] indicates higher resolution used) or payload type carried in the segment extension (e.g.,EVRC-WB [RFC5188] indicates using Wideband Codec). However not all payload types or MoS algorithm names indicate resolution to be used and mos type to be used.
If an answerer receives an offer with an mosref attribute value it doesn't support (e.g.,the answerer only supports "l" and receives "h"from offerer), the answer SHOULD reject the mosref attribute value offered by the offerer.
If the answerer wishes to reject a mosref attribute offered by the offerer, it sets identifiers associated with segment extensions in the answer to the value in the range 4096-4351. The rejected answer MUST contain 'mosref ' attribute whose value is the value of the SDP offer.
Local identifiers in the valid range inclusive in an offer or answer must not be used more than once per media section. A session update MAY change the direction qualifiers of segment extensions under use. A session update MAY add or remove segment extension(s). Identifiers values in the valid range MUST NOT be altered (remapped).
If a party wishes to offer mutually exclusive alternatives, then multiple segment extensions with the same identifier in the (unusable) range 4096-4351 MAY be offered; the answerer SHOULD select at most one of the offered extensions with the same identifier, and remap it to a free identifier in the valid range, for that extension to be usable. Note that two segment types defined in section 3 are also two exclusive alternatives.
If more segment extensions are offered in the valid range, the answerer SHOULD choose those that are desired, and place the offered identifier value "as is" in the SDP answer.
Similarly, if more segment extensions are offered than can be fit in the valid range, identifiers in the range 4096-4351 MAY be offered; the answerer SHOULD choose those that are desired, and remap them to a free identifier in the valid range.
Example (port numbers, RTP profiles, payload IDs and rtpmaps, etc. all omitted for brevity): The offer:
Note that the range 4096-4351 for these negotiation identifiers is deliberately restricted to allow expansion of the range of valid identifiers in future. Segment extensions with an identifier outside the valid range cannot, of course, be used.
The answerer is interested in transmission P.1202.1 on lower resolution application, but doesn't support P.1201.1 on lower resolution application at all. It is interested in transmission G.107. It therefore adjusts the declarations:
a=rtcp-xr:qoe-metrics=calg:1=P1202_l,calg:2=G107
New block types for RTCP XR are subject to IANA registration. For general guidelines on IANA considerations for RTCP XR, refer to [RFC3611].
This document assigns the block type value QMB in the IANA " RTP Control Protocol Extended Reports (RTCP XR) Block Type Registry" to the "QoE Metrics Block".
[Note to RFC Editor: please replace QMB with the IANA provided RTCP XR block type for this block.]
This document also registers a new parameter "qoe-metrics" in the " RTP Control Protocol Extended Reports (RTCP XR) Session Description Protocol (SDP) Parameters Registry".
Qin Wu sunseawq@huawei.com
This section contains the information required by [RFC4566] for an SDP attribute.
Name Name Description Reference Type ========= =================================== ========== ==== P564 ITU-T P.564 Compliant Algorithm [P.564] Voice G107 ITU-T G.107 [G.107] Voice TS101_329 ETSI TS 101 329-5 Annex E [ETSI] Voice JJ201_1 TTC JJ201.1 [TTC] Voice G107_1 ITU-T G.107.1 [G.107.1] Voice P862 ITU-T P.862 [P.862] Voice P862_2 ITU-T P.862.2 [P.862.2] Voice P863 ITU-T P.863 [P.863] Voice P1201_1 ITU-T P.1201.1 [P.1201.1] Multimedia P1201_2 ITU-T P.1201.2 [P.1201.2] Multimedia P1202_1 ITU-T P.1202.1 [P.1202.1] Video P1202_2 ITU-T P.1202.2 [P.1202.2] Video
This document creates a new registry to be called "RTCP XR QoE metric block - multimedia application Calculation Algorithm" as a sub- registry of the "RTP Control Protocol Extended Reports (RTCP XR) Block Type Registry". This registry applies to the multimedia session where each type of media are sent in a separate RTP stream and also applies to the session where Multi-channel audios are carried in one RTP stream. Policies for this new registry are as follows:
The new RTCP XR report blocks proposed in this document introduces no new security considerations beyond those described in [RFC3611].
This draft merges ideas from two drafts addressing the QoE metric Reporting issue. The authors of these drafts are listed below (in alphabetical order):
The authors gratefully acknowledge the comments and contributions made by Bruce Adams, Philip Arden, Amit Arora, Bob Biskner, Kevin Connor, Claus Dahm, Randy Ethier, Roni Even, Jim Frauenthal, Albert Higashi, Tom Hock, Shane Holthaus, Paul Jones, Rajesh Kumar, Keith Lantz, Mohamed Mostafa, Amy Pendleton, Colin Perkins, Mike Ramalho, Ravi Raviraj, Albrecht Schwarz, Tom Taylor, Bill Ver Steeg, David R Oran, Ali Begen and Hideaki Yamada.
To evaluate user quality of experience levels using objective test data, MoS Scores provide a familiar, easily understood numeric representation of video, audio, and overall audiovisual quality. Unlike audio, video is even more sensitive to transport impairments , and even low rates of packet loss can cause severe degradation in perceived quality. However, all occurrences of packet loss do not have an equal impact on perceptual quality, in part because of the way video frames are structured during the encoding process - such as frame properties including frame type, frame structure and quantization parameter (QP), and in part due to subjective factors - such as the degree to which perception is affected by the levels of motion, detail in the video sequence, and decoder characteristic parameters including media resolution,codec type. When a video stream is sent from the media source to RTP receiving end and get monitored. in order to provide accurate evaluation of video quality, one possible QoE evaluation method is having network nodes that implement network management tools in place. They may know frame properties,perception degree, decoder characteristic parameters of this video stream using some out of band means, gather transport impairment information received from the RTP receiving end and use them as MoS calculation input parameters to calculate MoS scores by choosing appropriate MoS calculation algorithm. Such MoS Scores value can be useful for troubleshooting or comparing video quality across different service types.
RFC EDITOR NOTE: please change XXXX in [RFCXXXX] by the new RFC number, when assigned.
The following are the major changes compared to previous version:
The following are the major changes compared to previous version:
The following are the major changes compared to previous version:
The following are the major changes compared to previous two versions:
The following are the major changes compared to previous version:
The following are the major changes compared to previous version:
The following are the major changes compared to previous version:
The following are the major changes compared to previous version:
The following are the major changes compared to previous version: