SIPPING Working Group A. Johnston Internet-Draft H. Sinnreich Expires: July 13, 2005 MCI A. Clark Telchemy Incorporated A. Pendleton Nortel Networks January 12, 2005 SIP Service Quality Reporting Event draft-johnston-sipping-rtcp-summary-06 Status of this Memo This document is an Internet-Draft and is subject to all provisions of section 3 of RFC 3667. By submitting this Internet-Draft, each author represents that any applicable patent or other IPR claims of which he or she is aware have been or will be disclosed, and any of which he or she become aware will be disclosed, in accordance with RFC 3668. Internet-Drafts are working documents of the Internet Engineering Task Force (IETF), its areas, and its working groups. Note that other groups may also distribute working documents as Internet-Drafts. 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." The list of current Internet-Drafts can be accessed at http://www.ietf.org/ietf/1id-abstracts.txt. The list of Internet-Draft Shadow Directories can be accessed at http://www.ietf.org/shadow.html. This Internet-Draft will expire on July 13, 2005. Copyright Notice Copyright (C) The Internet Society (2005). Abstract This document discusses the motivation and requirements for the delivery of service quality reports from SIP endpoints to non-participants in the session. A publication mechanism using a new Johnston, et al. Expires July 13, 2005 [Page 1] Internet-Draft SIP Service Quality Reporting Event January 2005 SIP events package is proposed as a solution. An event package "svcqual" and an application/svcqual MIME type is defined in this document along with some example call flows. Table of Contents 1. Introduction . . . . . . . . . . . . . . . . . . . . . . . . . 3 2. Requirements . . . . . . . . . . . . . . . . . . . . . . . . . 3 3. Motivations for the Approach . . . . . . . . . . . . . . . . . 3 4. Why SNMP is Not Appropriate . . . . . . . . . . . . . . . . . 4 5. SIP Events Approach . . . . . . . . . . . . . . . . . . . . . 4 6. Use of PUBLISH Method . . . . . . . . . . . . . . . . . . . . 4 7. Event Package Formal Definition . . . . . . . . . . . . . . . 5 7.1 Event Package Name . . . . . . . . . . . . . . . . . . . . 5 7.2 Event Package Parameters . . . . . . . . . . . . . . . . . 5 7.3 SUBSCRIBE Bodies . . . . . . . . . . . . . . . . . . . . . 5 7.4 Subscription Duration . . . . . . . . . . . . . . . . . . 5 7.5 NOTIFY Bodies . . . . . . . . . . . . . . . . . . . . . . 5 7.6 Voice Quality Event Syntax . . . . . . . . . . . . . . . . 6 7.7 Voice Quality Metric Definitions . . . . . . . . . . . . . 8 7.8 Call Flows and Syntax Examples . . . . . . . . . . . . . . 11 7.8.1 End of Session Notification using PUBLISH . . . . . . 11 7.8.2 End of Session Notification using NOTIFY . . . . . . . 13 7.8.3 Mid Session Threshold Violation using PUBLISH . . . . 15 7.8.4 Mid Session Threshold Violation using NOTIFY . . . . . 18 7.9 IANA Considerations . . . . . . . . . . . . . . . . . . . 20 7.9.1 SIP Event Package Registration . . . . . . . . . . . . 20 7.9.2 application/rtcp-xr MIME Registration . . . . . . . . 21 7.10 Security Considerations . . . . . . . . . . . . . . . . . 21 7.11 Updates since -04 . . . . . . . . . . . . . . . . . . . . 22 7.12 Updates since -03 . . . . . . . . . . . . . . . . . . . . 22 7.13 Contributors . . . . . . . . . . . . . . . . . . . . . . . 22 8. Informative References . . . . . . . . . . . . . . . . . . . . 22 Authors' Addresses . . . . . . . . . . . . . . . . . . . . . . 23 Intellectual Property and Copyright Statements . . . . . . . . 24 Johnston, et al. Expires July 13, 2005 [Page 2] Internet-Draft SIP Service Quality Reporting Event January 2005 1. Introduction This document defines a new performance report SIP event package and a new MIME type for VoIP performance metrics. In addition, the document includes the requirements, motivation, and a discussion why SNMP alone is not sufficient for this problem space. Using this mechanism, a SIP user agent (UA) can publish performance reports, or a performance quality collector can subscribe to receive performance reports from a particular SIP UA. The application/svcqual MIME type defined in this document is based on the information contained in a RTCP-XR VOIP block and is highly optimized and useful for voice session quality. As VoIP is currently has the most immediate need for the real time quality reports available with this package, it has been defined first. However, the event package is designed to be extensible - existing MIME types which carry performance reports could be used, or other application/media specific MIME types could be defined and used within this framework. 2. Requirements REQ-1: An authorized third party should be able to receive selected performance reports on a near real time basis. REQ-2: The VoIP application should not have to store large amounts of information. REQ-3: The VoIP application must be able to authenticate the third party. REQ-4: The performance report information must be able to be transferred securely. REQ-6: The reports will include or be associated with dialog identifiers for correlation purposes. 3. Motivations for the Approach Monitor the application: While QoS monitoring in network elements using for example SNMP is quite common, only the VoIP applications in endpoints are close enough to the experience of individual users, on a call by call basis in endpoints as diverse as desktop SIP phones, PDAs, PCs or mobile phones. For this reason, the approach taken here is to monitor the voice quality at the application level and not in network elements. Focus on voice specific impairments: Johnston, et al. Expires July 13, 2005 [Page 3] Internet-Draft SIP Service Quality Reporting Event January 2005 RTCP extensions support the monitoring of various impairments such as packet loss, delay and jitter, but more important, specific metrics are included to measure burst errors that produce voice clipping. Voice clipping is the most annoying impairment in VoIP due to network congestion in the media path between VoIP applications. 4. Why SNMP is Not Appropriate Since this type of QoS monitoring seems related to management, SNMP could possibly be used to collect this type of data as well. SNMP is however primarily used for management of network devices as they relate to the infrastructure but is not typically used for management of applications on that infrastructure. The focus of SIP is applications and the performance management for those applications cannot rely on SNMP. SNMP may be used to manage some aspects of the physical device aspects of the SIP user agent Specifically, SNMP may be used to manage the SIP user agent - the phone, soft phone or gateway. However, the information available in RTCP summary reports is of less interest to the management of the UA and more of interest to the VoIP service provider. In many cases, separate entities will be involved. For example, an enterprise may manage their own SIP phones using SNMP, but a service provider provides SIP and gateway services. It is unlikely a service provider will have SNMP privileges and may not be able to manage NAT/firewall traversal, etc. For these reasons, SNMP is not a good fit for this "service level" management function. 5. SIP Events Approach In this approach, a new SIP events package [6] is defined. The intended methods to use for this event are PUBLISH [8] and SUBSCRIBE/NOTIFY. A VoIP application will send performance data using either of these methods to an entity which will make the information available to other applications. 6. Use of PUBLISH Method A VoIP application which supports this specification may send performance report information using the PUBLISH method. An application wishing to access this performance data maintains a State Agent for the svcqual event package. The Request-URI of the PUBLISH method is set to the address of the resource for the VoIP application. The PUBLISH method is sent to the normal default outbound proxy server of the VoIP application. The use of PUBLISH by this event is unique in that it does not require a soft or hard state to be maintained by either the Event Johnston, et al. Expires July 13, 2005 [Page 4] Internet-Draft SIP Service Quality Reporting Event January 2005 Publication Agent (EPA) or the Event State Compositor (ESC). Futhermore the information that is presented by the svcqual event in a PUBLISH request is not expected to have an expiration, rather, the information is associated with the timestamps in the event itself. The primary intention of using PUBLISH for this event is reduction of transaction processing. The State Agent can use normal mechanisms for publication throttling or rejection of the information as described in the PUBLISH [8] specification. 7. Event Package Formal Definition 7.1 Event Package Name This document defines a SIP Event Package as defined in RFC 3265 [2]. The event-package token name for this package is: "svcqual" 7.2 Event Package Parameters No event package parameters are defined. 7.3 SUBSCRIBE Bodies No SUBSCRIBE bodies are described by this specification. 7.4 Subscription Duration Subscriptions to this event package MAY range from minutes to weeks. Subscriptions in hours or days are more typical and are RECOMMENDED. The default subscription duration for this event package is one hour. 7.5 NOTIFY Bodies There are two notify bodies: a general report and a threshold report. The general report is used for periodic, mid-call reporting and end of call reporting. The metrics provided by this event are intended to be generically defined to allow both cumulative based and short interval based reporting. The threshold report is used when call quality degrades. The general report is also included in the alert report to provide all of the necessary diagnostic information. This specification defines a new MIME type application/svcqual which is a text encoding of the RTCP-XR statistics, with the addition of a Johnston, et al. Expires July 13, 2005 [Page 5] Internet-Draft SIP Service Quality Reporting Event January 2005 few additional identifiers. 7.6 Voice Quality Event Syntax This section describes the syntax extensions required for event publication in SIP. The formal syntax definitions described in this section are expressed in the Augmented BNF format [7] used in SIP [2], and contains references to elements defined therein. General Report Event: VQEvent = VoiceQualityAlert / (LocalMetrics [CLRF RemoteMetrics]) [DialogID] LocalMetrics = ("LocalMetrics") HCOLON VoiceQualityMetrics RemoteMetrics = ("RemoteMetrics") HCOLON VoiceQualityMetrics VoiceQualityMetrics = ("VQMetrics") CLRF TimeStampInfo CLRF SessionDesc CLRF CallID CLRF Ssrc CRLF JitterBuffer CRLF PacketLoss CRLF BurstLoss CLRF GapLoss CLRF Delay CLRF Signal CLRF Quality TimeStampInfo = "Timestamps" EQUAL start-time SP stop-time start-time = "start" COLON alphanum [*alphanum] stop-time = "stop" COLON alphanum [*alphanum] SessionDesc = ("SessionDesc") EQUAL cline mline aline cline = "cline" COLON alphanum [*alphanum] mline = "mline" COLON alphanum [*alphanum] aline = "aline" COLON alphanum [*alphanum] [*aline] CallID = ("CallID" / "i") COLON callid callid = word [ "@" word ] Johnston, et al. Expires July 13, 2005 [Page 6] Internet-Draft SIP Service Quality Reporting Event January 2005 Ssrc = ("Ssrc") COLON alphanum [*alphanum] JitterBuffer = ("JitterBuffer") EQUAL jb-type SP jb-rate SP jb-nom SP jb-max SP jb-abs-max jb-type = ("type") COLON ("adapt" / "non-adapt" / "unknown" / "not available" ) jb-rate = ("rate") COLON 1*3DIGIT / notAvail jb-max = ("max") COLON 1*3DIGIT / notAvail jb-nom = ("nom") COLON 1*3DIGIT / notAvail jb-absmax = ("abmax") COLON 1*3DIGIT / notAvail PacketLoss = ("PktLoss") EQUAL loss-rate SP disc-rate loss-rate = ("loss") 1*2DIGIT / notAvail disc-rate = ("discard") COLON 1*2DIGIT / notAvail BurstLoss = ("BurstLoss") EQUAL density SP length GapLoss = ("GapLoss") EQUAL density SP length density = ("density") COLON 1*4DIGIT / notAvail length = ("length") COLON 1*4DIGIT / notAvail Delay = ("Delay") EQUAL roundtrip SP endsys SP jitter roundtrip = ("roundtrip") COLON 1*4DIGIT / notAvail endsys = ("endsystem") COLON 1*4DIGIT / notAvail jitter = ("jitter") COLON 1*3DIGIT / notAvail Signal = ("Signal") EQ signal SP echo SP noise signal = ("signalLevel") COLON 1*2DIGIT / notAvail echo = ("echoReturnLoss") COLON 1*3DIGIT / notAvail noise = ("noiseLevel") COLON 1*2DIGIT / notAvail Quality = ("QualityScores") EQ r-lq SP r-cg SP r-cq-ext SP m-lq SP m-cq r-lq = ("r-lq") COLON 1*3DIGIT / notAvail r-cq = ("r-cq") COLON 1*3DIGIT / notAvail r-cq-ext = ("r-cq-ext") COLON 1*3DIGIT / notAvail m-lq = ("mos-lq") COLON DIGIT ["." 1*2DIGIT] / notAvail m-cq = ("mos-cq") COLON DIGIT ["." 1*2DIGIT] / notAvail DialogID = ("DialogID") COLON callid *(SEMI did-parm) did-parm = to-tag / from-tag / generic-param callid = token to-tag = "to-tag" EQUAL token from-tag = "from-tag" EQUAL token VoiceQualityAlert = ("VQAlert") COLON SP ViolationMetric SP Severity SP ViolationDirection CRLF VoiceQualityMetrics ViolationMetric = ("Type") COLON ("r-lq" / "r-cq" / "r-cq-ext" / Johnston, et al. Expires July 13, 2005 [Page 7] Internet-Draft SIP Service Quality Reporting Event January 2005 "mos-lq" / "mos-cq" / "burst" / "erl" / "delay" / "loss" / "siglvl" / "noiselvl" / "jitter" / "discard" / token ) ViolationDirection = ("Dir") COLON ("local" / "remote") Severity = ("Severity") COLON ("Warning" / "Critical" / "Clear") notAvail = "not available" / "na" 7.7 Voice Quality Metric Definitions Timestamp Information This line will provide the start and stop time for the metric measurement interval. In some cases, this could be the entire call and in other cases could be only a very short duration when threshold-based or interval-based reporting are supporting. Session Description This line should provide media session information using the Session Description Protocol (SDP) for the local endpoint. The format defined only requires the endpoint to send its "c=" line, "m=" line, and all related "a=" lines. SSRC This line provides the SSRC parameter that is transmited in the RTP packets which should provide unique identification of the media stream. Jitter Buffer Information Line The parameters in this line provide information about the jitter buffer within the media endpoint. Jitter Buffer Type Indicator of the jitter buffer is adaptive or static. When the jitter buffer is adaptive, then its size is being dynamically adjusted to deal with varying levels of Johnston, et al. Expires July 13, 2005 [Page 8] Internet-Draft SIP Service Quality Reporting Event January 2005 jitter. When non-adaptive, the jitter buffer size is maintained at a fixed level. Jitter Buffer Adaptation Rate This represents the implementation specific adjustment rate of a jitter buffer in adaptive mode. Jitter Buffer Nomimal Delay This is the current nominal jitter buffer delay in milliseconds, which corresponds to the nominal jitter buffer delay for packets that arrive exactly on time. This parameter MUST be provided for both fixed and adaptive jitter buffer implementations. Jitter Buffer Maximum Delay This is the current maximum jitter buffer delay in milliseconds which corresponds to the earliest arriving packet that would not be discarded. In simple queue implementations this may correspond to the nominal size. In adaptive jitter buffer implementations, this value may dynamically vary up to JB abs max (see below). Jitter Buffer Absolute Maximum Delay This is the absolute maximum delay in milliseconds that the adaptive jitter buffer can reach under worst case conditions. If this value exceeds 65535 milliseconds, then this field SHALL convey the value 65535. This parameter MUST be provided for adaptive jitter buffer implementations and its value MUST be set to JB maximum for fixed jitter buffer implementations. Packet Loss Information Line The parameters in this line are general packet loss metrics. Packet Loss Ratio The percentage of packets lost within the network during the time period captured by the report. Packet Discard Rate The percentage of packets discarded due to jitter within the network during the time period captured by the report. Burst Loss Information Line The parameters in this provide burst loss metrics. Johnston, et al. Expires July 13, 2005 [Page 9] Internet-Draft SIP Service Quality Reporting Event January 2005 Burst Density The percentage of packets lost and discarded within a burst (high loss rate) period. Burst Length (mS) The mean length of a burst. Gap Loss Information Line The parameters in this provide random loss metrics. Gap Density The percentage of packets lost and discarded within a gap (low loss rate) period. Gap Length (mS) The mean length of a gap Delay Information Line The parameters in this provide delay metrics. Round Trip Delay (mS) The round trip delay between RTP interfaces End System Round Trip Delay (mS) The "round trip" delay between the RTP interface and the analog or trunk interface. Jitter Using definition from the RTCP, interarrival jitter is defined to be the mean deviation of the difference in packet spacing at the receiver compared to the sender for a pair of packets. This metric is provided in milliseconds. Signal Information Line The parameters in this provide analog impairment metrics. Signal Level The signal level in decibals during talkspurts. Noise Level (dBm) The signal level in decibals during silence periods. Residual Echo Return Loss (dB) The residual (uncancelled) echo level from the analog or Johnston, et al. Expires July 13, 2005 [Page 10] Internet-Draft SIP Service Quality Reporting Event January 2005 trunk interface. Quality Scores Information Line This line provides various quality scores for the session. R - Listening Quality Estimated listening call quality expressed in a score from 0 - 100, per ITU-T standard G.107. The calculation of this value should only involve impairments measured from the listening direction. R - Conversational Quality Estimated conversational call quality expressed in a score from 0 - 100, per ITU-T standard G.107. R - Conversational Quality - External Estimated external conversational transmission quality expressed as a score from 0 - 100, per ITU-T standard G.107. This value provides the score for the segment of the session that is carried over a network segment external to the RTP segment; for example a cellular network. MOS-LQ Estimated listening call quality expressed as a floating point number between 0.0 and 5.0. MOS-CQ Estimated conversational call quality expressed as a floating point number between 0.0 and 5.0. 7.8 Call Flows and Syntax Examples This section shows a number of call flow examples showing how the event package works. 7.8.1 End of Session Notification using PUBLISH Alice Proxy/Registrar Collector Bob | | | | | | | | | REGISTER Allow-Event:svcqual F1 | | |------------------->| | | | 200 OK F2 | | | |<-------------------| | | | INVITE F3 | | | Johnston, et al. Expires July 13, 2005 [Page 11] Internet-Draft SIP Service Quality Reporting Event January 2005 |------------------->| | | | | INVITE F4 | | | |---------------------------------------->| | | 200 OK F5 | | | |<----------------------------------------| | 200 OK F6 | | | |<-------------------| | | | ACK F7 | | | |------------------->| | | | | ACK F8 | | | |---------------------------------------->| | RTP | | | |<============================================================>| | RTCP | | | |<============================================================>| | | | | | BYE F9 | | | |------------------->| BYE F10 | | | |---------------------------------------->| | | 200 OK F11 | | | |<----------------------------------------| | 200 OK F12 | | | |<-------------------| | | | PUBLISH Event:svcqual F13 | | |------------------->| | | | | PUBLISH Event:svcqual F14 | | |------------------->| | | | 200 OK F15 | | | |<-------------------| | | 200 OK F16 | | | |<-------------------| | | Figure 1. Summary report sent after session termination. In the call flow depicted in Figure 1, the following message format is sent in F13: PUBLISH sip:collector@example.com SIP/2.0 Via: SIP/2.0/UDP pc22.example.com;branch=z9hG4bK3343d7 Max-Forwards: 70 To: From: Alice ;tag=a3343df32 Call-ID: 1890463548@alice.chicago.com CSeq: 4331 PUBLISH Allow: INVITE, ACK, CANCEL, OPTIONS, BYE, REFER, SUBSCRIBE, NOTIFY Johnston, et al. Expires July 13, 2005 [Page 12] Internet-Draft SIP Service Quality Reporting Event January 2005 Event: svcqual Accept: application/sdp, message/sipfrag Content-Type: application/svcqual Content-Length: ... LocalMetrics:VQMetrics: TimeStampInfo=start:10012004.18.23.43 stop:10012004.18.26.02 SessionDesc=cline:IN IP4 10.10.1.123 mline:audio 5002 RTP/AVP 0 aline:rtpmap:0 PCMU/8000 aline:ptime=20 CallID=1890463548@alice.uac.chicago.com Ssrc=fjuekdn393k JitterBuffer=type:adapt rate:2 nom:40 max:80 abmax:120 PktLoss=loss:5 discard:2 BurstLoss=density:0 length:0 GapLoss=density:2 length:0 Delay=roundtrip:200 endsystem:140 jitter:2 Signal=signalLevel:2 echoReturnLoss:14 noiseLevel:10 QualityScores=r-lq:90 r-cq:80 r-cq-ext:92 mos-lq:3.4 mos-cq:3.3 RemoteMetrics:VQMetrics: TimeStampInfo=start:10012004.18.23.43 stop:10012004.18.26.02 SessionDesc=cline:IN IP4 11.1.1.150 mline:audio 5002 RTP/AVP 0 aline:rtpmap:0 PCMU/8000 aline:ptime=20 CallID=1890463548@alice.uac.chicago.com Ssrc=r3k3k99weid JitterBuffer=type:adapt rate:2 nom:40 max:80 abmax:120 PktLoss=loss:2 discard:1 BurstLoss=density:0 length:0 GapLoss=density:2 length:0 Delay=roundtrip:100 endsystem:140 jitter:2 Signal=signalLevel:2 echoReturnLoss:0 noiseLevel:9 QualityScores=r-lq:88 r-cq:80 r-cq-ext:92 mos-lq:3.3 mos-cq:3.3 DialogID:38419823470834;to-tag=8472761;from-tag=9123dh311 7.8.2 End of Session Notification using NOTIFY Alice Proxy/Registrar Collector Bob | | | | | | | | | REGISTER Allow-Event:svcqual F1 | | |------------------->| | | | 200 OK F2 | | | |<-------------------| | | | | SUBSCRIBE Event:svcqual F3 | | |<-------------------| | Johnston, et al. Expires July 13, 2005 [Page 13] Internet-Draft SIP Service Quality Reporting Event January 2005 | SUBSCRIBE Event:svcqual F4 | | |<-------------------| | | | 200 OK F5 | | | |------------------->| | | | | 200 OK F6 | | | |------------------->| | | INVITE F7 | | | |------------------->| | | | | INVITE F8 | | | |---------------------------------------->| | | 200 OK F9 | | | |<----------------------------------------| | 200 OK F10 | | | |<-------------------| | | | ACK F11 | | | |------------------->| | | | | ACK F12 | | | |---------------------------------------->| | RTP | | | |<============================================================>| | RTCP | | | |<============================================================>| | | | | | BYE F13 | | | |------------------->| BYE F14 | | | |---------------------------------------->| | | 200 OK F15 | | | |<----------------------------------------| | 200 OK F16 | | | |<-------------------| | | | NOTIFY Event:svcqual F17 | | |------------------->| | | | | NOTIFY Event:svcqual F18 | | |------------------->| | | | 200 OK F19 | | | |<-------------------| | | 200 OK F20 | | | |<-------------------| | | Figure 2. Summary report sent after session termination. In the call flow depicted in Figure 2, the following message format is sent in F17: NOTIFY sip:collector@example.com SIP/2.0 Via: SIP/2.0/UDP pc22.example.com;branch=z9hG4bK3343d7 Max-Forwards: 70 Johnston, et al. Expires July 13, 2005 [Page 14] Internet-Draft SIP Service Quality Reporting Event January 2005 To: ;tag=43524545 From: Alice ;tag=a3343df32 Call-ID: 1890463548@alice.chicago.com CSeq: 4321 NOTIFY Contact: Allow: INVITE, ACK, CANCEL, OPTIONS, BYE, REFER, SUBSCRIBE, NOTIFY Event: svcqual Accept: application/sdp, message/sipfrag Subscription-State: active;expires=3600 Content-Type: application/svcqual Content-Length: ... LocalMetrics:VQMetrics: TimeStampInfo=start:10012004.18.23.43 stop:10012004.18.26.02 SessionDesc=cline:IN IP4 11.1.1.150 mline:audio 5002 RTP/AVP 0 aline:rtpmap:0 PCMU/8000 aline:ptime=20 CallID=1890463548@alice.chicago.com Ssrc=fjuekdn393k JitterBuffer=type:adapt rate:2 nom:40 max:80 abmax:120 PktLoss=loss:5 discard:2 BurstLoss=density:0 length:0 GapLoss=density:2 length:0 Delay=roundtrip:200 endsystem:140 jitter:2 Signal=signalLevel:2 echoReturnLoss:14 noiseLevel:10 QualityScores=r-lq:90 r-cq:80 r-cq-ext:92 mos-lq:3.4 mos-cq:3.3 RemoteMetrics:VQMetrics: SessionDesc=cline:IN IP4 11.1.1.150 mline:audio 5002 RTP/AVP 0 aline:rtpmap:0 PCMU/8000 aline:ptime=20 CallID=1890463548@alice.uac.chicago.com Ssrc=r3k3k99weidtd JitterBuffer=type:adapt rate:2 nom:40 max:80 abmax:120 PktLoss=loss:2 discard:1 BurstLoss=density:0 length:0 GapLoss=density:2 length:0 Delay=roundtrip:100 endsystem:140 jitter:2 Signal=signalLevel:2 echoReturnLoss:0 noiseLevel:9 QualityScores=r-lq:88 r-cq:80 r-cq-ext:92 mos-lq:3.3 mos-cq:3.3 DialogID:38419823470834;to-tag=8472761;from-tag=9123dh311 7.8.3 Mid Session Threshold Violation using PUBLISH Alice Proxy/Registrar Collector Bob Johnston, et al. Expires July 13, 2005 [Page 15] Internet-Draft SIP Service Quality Reporting Event January 2005 | | | | | INVITE F1 | | | |------------------->| | | | | INVITE F2 | | | |---------------------------------------->| | | 200 OK F3 | | | |<----------------------------------------| | 200 OK F4 | | | |<-------------------| | | | ACK F5 | | | |------------------->| | | | | ACK F6 | | | |---------------------------------------->| | RTP | | | |<============================================================>| | RTCP | | | |<============================================================>| | PUBLISH Event:svcqual F7 | | |------------------->| | | | | PUBLISH Event:svcqual F8 | | |------------------->| | | | 200 OK F9 | | | |<-------------------| | | 200 OK F10 | | | |<-------------------| | | | | | | | BYE F12 | | | |------------------->| BYE F13 | | | |---------------------------------------->| | | 200 OK F14 | | | |<----------------------------------------| | 200 OK F15 | | | |<-------------------| | | | PUBLISH Event:svcqual F16 | | |------------------->| | | | | PUBLISH Event:svcqual F17 | | |------------------->| | | | 200 OK F18 | | | |<-------------------| | | 200 OK F19 | | | |<-------------------| | | Figure 3. Summary report sent during session with threshold report. In the call flow depicted in Figure 3, the following message format is sent in F16: PUBLISH sip:collector@chicago.example.com SIP/2.0 Johnston, et al. Expires July 13, 2005 [Page 16] Internet-Draft SIP Service Quality Reporting Event January 2005 Via: SIP/2.0/UDP pc22.example.com;branch=z9hG4bK3343d7 Max-Forwards: 70 To: From: Alice ;tag=a3343df32 Call-ID: 1890463548@alice.chicago.com CSeq: 4321 PUBLISH Allow: INVITE, ACK, CANCEL, OPTIONS, BYE, REFER, SUBSCRIBE, NOTIFY Event: svcqual Accept: application/sdp, message/sipfrag Content-Type: application/svcqual Content-Length: ... VQAlert: Type:r-lq Severity:Warning Dir:local LocalMetrics:VQMetrics: TimeStampInfo=start:10012004.19.01.04 stop:10012004.19.01.52 SessionDesc=cline:IN IP4 11.1.1.150 mline:audio 5002 RTP/AVP 0 aline:rtpmap:0 PCMU/8000 aline:ptime=20 CallID=1890463548@alice.chicago.com Ssrc=fjuekdn3 JitterBuffer=type:adapt rate:2 nom:40 max:80 abmax:120 PktLoss=loss:5 discard:2 BurstLoss=density:0 length:0 GapLoss=density:2 length:0 Delay=roundtrip:200 endsystem:140 jitter:2 Signal=signalLevel:2 echoReturnLoss:14 noiseLevel:1 QualityScores=r-lq:82 r-cq:80 mos-lq:3.4 mos-cq:3.3 RemoteMetrics:VQMetrics: SessionDesc=cline:IN IP4 11.1.1.150 mline:audio 5002 RTP/AVP 0 aline:rtpmap:0 PCMU/8000 aline:ptime=20 CallID=1890463548@alice.uac.chicago.com Ssrc=r3k3k99weidtd JitterBuffer=type:adapt rate:2 nom:40 max:80 abmax:120 PktLoss=loss:2 discard:1 BurstLoss=density:0 length:0 GapLoss=density:2 length:0 Delay=roundtrip:100 endsystem:140 jitter:2 Signal=signalLevel:2 echoReturnLoss:14 noiseLevel:1 QualityScosres=r-lq:81 r-cq:81 mos-lq:3.1 mos-cq:3.2 DialogID:38419823470834;to-tag=8472761;from-tag=9123dh311 This alert indicates that the quality of the call in progress, as calculated using the Listening Quality transmission rating R , has degraded to an unacceptable level. For futher troubleshooting of the problem, all metrics are populated, including the remote values which were obtained via RTCP XR in the endpoints. Johnston, et al. Expires July 13, 2005 [Page 17] Internet-Draft SIP Service Quality Reporting Event January 2005 7.8.4 Mid Session Threshold Violation using NOTIFY Alice Proxy/Registrar Collector Bob | | | | | | | | | REGISTER Allow-Event:svcqual F1 | | |------------------->| | | | 200 OK F2 | | | |<-------------------| | | | | SUBSCRIBE Event:svcqual F3 | | |<-------------------| | | SUBSCRIBE Event:svcqual F4 | | |<-------------------| | | | 200 OK F5 | | | |------------------->| | | | | 200 OK F6 | | | |------------------->| | | INVITE F7 | | | |------------------->| | | | | INVITE F8 | | | |---------------------------------------->| | | 200 OK F9 | | | |<----------------------------------------| | 200 OK F10 | | | |<-------------------| | | | ACK F11 | | | |------------------->| | | | | ACK F12 | | | |---------------------------------------->| | RTP | | | |<============================================================>| | RTCP | | | |<============================================================>| | NOTIFY Event:svcqual F17 | | |------------------->| | | | | NOTIFY Event:svcqual F18 | | |------------------->| | | | 200 OK F19 | | | |<-------------------| | | 200 OK F20 | | | |<-------------------| | | | | | | | BYE F13 | | | |------------------->| BYE F14 | | | |---------------------------------------->| | | 200 OK F15 | | | |<----------------------------------------| Johnston, et al. Expires July 13, 2005 [Page 18] Internet-Draft SIP Service Quality Reporting Event January 2005 | 200 OK F16 | | | |<-------------------| | | | NOTIFY Event:svcqual F17 | | |------------------->| | | | | NOTIFY Event:svcqual F18 | | |------------------->| | | | 200 OK F19 | | | |<-------------------| | | 200 OK F20 | | | |<-------------------| | | Figure 4. Summary report sent during session with threshold report. In the call flow depicted in Figure 2, the following message format is sent in F17: NOTIFY sip:collector@chicago.example.com SIP/2.0 Via: SIP/2.0/UDP pc22.example.com;branch=z9hG4bK3343d7 Max-Forwards: 70 To: From: Alice ;tag=a3343df32 Call-ID: 1890463548@alice.chicago.com CSeq: 4321 PUBLISH Allow: INVITE, ACK, CANCEL, OPTIONS, BYE, REFER, SUBSCRIBE, NOTIFY Event: svcqual Accept: application/sdp, message/sipfrag Content-Type: application/svcqual Content-Length: ... VQAlert: Type:r-lq Severity:Warning Dir:local LocalMetrics:VQMetrics: TimeStampInfo=start:10012004.19.01.04 stop:10012004.19.01.52 SessionDesc=cline:IN IP4 11.1.1.150 mline:audio 5002 RTP/AVP 0 aline:rtpmap:0 PCMU/8000 aline:ptime=20 CallID=1890463548@alice.chicago.com Ssrc=fjuekdn3 JitterBuffer=type:adapt rate:2 nom:40 max:80 abmax:120 PktLoss=loss:5 discard:2 BurstLoss=density:0 length:0 GapLoss=density:2 length:0 Delay=roundtrip:200 endsystem:140 Signal=signalLevel:2 echoReturnLoss:14 noiseLevel:1 QualityScores=r-lq:82 r-cq:80 mos-lq:3.4 mos-cq:3.3 Remote:VQMetrics: SessionDesc=cline:IN IP4 11.1.1.150 mline:audio 5002 RTP/AVP 0 aline:rtpmap:0 PCMU/8000 aline:ptime=20 CallID=1890463548@alice.uac.chicago.com Johnston, et al. Expires July 13, 2005 [Page 19] Internet-Draft SIP Service Quality Reporting Event January 2005 Ssrc=r3k3k99weidtd JitterBuffer=type:adapt rate:2 nom:40 max:80 abmax:120 PktLoss=loss:2 discard:1 BurstLoss=density:0 length:0 GapLoss=density:2 length:0 Delay=roundtrip:100 endsystem:140 jitter:2 Signal=signalLevel:2 echoReturnLoss:14 noiseLevel:1 QualityScosres=r-lq:81 r-cq:90 mos-lq:3.1 mos-cq:3.2 DialogID:38419823470834;to-tag=8472761;from-tag=9123dh311 This alert indicates that the quality of the call in progress, as calculated using the Listening Quality transmission rating R , has degraded to an unacceptable level. For futher troubleshooting of the problem, all metrics are populated, including the remote values which were obtained via RTCP XR [4] in the endpoints.. 7.9 IANA Considerations This document registers a new SIP Event Package and a new MIME type. 7.9.1 SIP Event Package Registration Package name: svcqual Type: package Contact: Alan Johnston Published Specification: This document Johnston, et al. Expires July 13, 2005 [Page 20] Internet-Draft SIP Service Quality Reporting Event January 2005 7.9.2 application/rtcp-xr MIME Registration MIME media type name: application MIME subtype name: svcqual Mandatory parameters: none Optional parameters: none Encoding considerations: text Security considerations: See next section. Interoperability considerations: none. Published specification: This document. Applications which use this media type: This document type is being used in notifications of VoIP quality reports. Additional Information: Magic Number: None File Extension: None Macintosh file type code: "TEXT" Personal and email address for further information: Alan Johnston Intended usage: COMMON Author/Change controller: The IETF. 7.10 Security Considerations RTCP reports can contain sensitive information since they can provide information about the nature and duration of a session established between two endpoints. As a result, any third party wishing to obtain this information should be properly authenticated and the information transferred securely. Johnston, et al. Expires July 13, 2005 [Page 21] Internet-Draft SIP Service Quality Reporting Event January 2005 7.11 Updates since -04 - Changed package name from "perfrpt" to "svcqual" 7.12 Updates since -03 - Removed discussion of alternative mechanisms - Changed from NOTIFY transport to PUBLISH transport. - Changed package name from "rtcp-xr" to "perfrpt" - Corrected call flows. - Minor updates to message body format. - Added IANA registration for perfrpt SIP Event Package and application/rtcp-xr MIME registration. - Added more discussion for motivation and reasons why SNMP is not suitable 7.13 Contributors The authors would like to thank Rajesh Kumar, Dave Oran and Tom Redman for their discussions. 8 Informative References [1] Bradner, S., "Key words for use in RFCs to Indicate Requirement Levels", BCP 14, RFC 2119, March 1997. [2] Rosenberg, J., Schulzrinne, H., Camarillo, G., Johnston, A., Peterson, J., Sparks, R., Handley, M. and E. Schooler, "SIP: Session Initiation Protocol", RFC 3261, June 2002. [3] Schulzrinne, H., Casner, S., Frederick, R. and V. Jacobson, "RTP: A Transport Protocol for Real-Time Applications", STD 64, RFC 3550, July 2003. [4] Friedman, T., Caceres, R. and A. Clark, "RTP Control Protocol Extended Reports (RTCP XR)", RFC 3611, November 2003. [5] Huitema, C., "Real Time Control Protocol (RTCP) attribute in Session Description Protocol (SDP)", RFC 3605, October 2003. [6] Roach, A., "Session Initiation Protocol (SIP)-Specific Event Notification", RFC 3265, June 2002. Johnston, et al. Expires July 13, 2005 [Page 22] Internet-Draft SIP Service Quality Reporting Event January 2005 [7] Crocker, D. and P. Overell, "Augmented BNF for Syntax Specifications: ABNF", RFC 2234, November 1997. [8] Niemi, A., "An Event State Publication Extension to the Session Initiation Protocol (SIP)", draft-ietf-sip-publish-04 (work in progress), May 2004. Authors' Addresses Alan Johnston MCI 100 South 4th Street St. Louis, MO 63104 EMail: alan.johnston@mci.com Henry Sinnreich MCI 400 International Parkway Richardson, TX 75081 EMail: henry.sinnreich@mci.com Alan Clark Telchemy Incorporated 3360 Martins Farm Road, Suite 200 Suwanee, GA 30024 EMail: alan@telchemy.com Amy Pendleton Nortel Networks 2380 Performance Drive Richardson, TX 75081 EMail: aspen@nortelnetworks.com Johnston, et al. Expires July 13, 2005 [Page 23] Internet-Draft SIP Service Quality Reporting Event January 2005 Intellectual Property Statement The IETF takes no position regarding the validity or scope of any Intellectual Property Rights or other rights that might be claimed to pertain to the implementation or use of the technology described in this document or the extent to which any license under such rights might or might not be available; nor does it represent that it has made any independent effort to identify any such rights. Information on the procedures with respect to rights in RFC documents can be found in BCP 78 and BCP 79. Copies of IPR disclosures made to the IETF Secretariat and any assurances of licenses to be made available, or the result of an attempt made to obtain a general license or permission for the use of such proprietary rights by implementers or users of this specification can be obtained from the IETF on-line IPR repository at http://www.ietf.org/ipr. The IETF invites any interested party to bring to its attention any copyrights, patents or patent applications, or other proprietary rights that may cover technology that may be required to implement this standard. Please address the information to the IETF at ietf-ipr@ietf.org. Disclaimer of Validity This document and the information contained herein are provided on an "AS IS" basis and THE CONTRIBUTOR, THE ORGANIZATION HE/SHE REPRESENTS OR IS SPONSORED BY (IF ANY), THE INTERNET SOCIETY AND THE INTERNET ENGINEERING TASK FORCE DISCLAIM ALL WARRANTIES, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO ANY WARRANTY THAT THE USE OF THE INFORMATION HEREIN WILL NOT INFRINGE ANY RIGHTS OR ANY IMPLIED WARRANTIES OF MERCHANTABILITY OR FITNESS FOR A PARTICULAR PURPOSE. Copyright Statement Copyright (C) The Internet Society (2005). This document is subject to the rights, licenses and restrictions contained in BCP 78, and except as set forth therein, the authors retain all their rights. Acknowledgment Funding for the RFC Editor function is currently provided by the Internet Society. Johnston, et al. Expires July 13, 2005 [Page 24]