One document matched: draft-johnston-sipping-rtcp-summary-04.txt

Differences from draft-johnston-sipping-rtcp-summary-03.txt



SIPPING Working Group                                        A. Johnston
Internet-Draft                                              H. Sinnreich
Expires: April 14, 2005                                              MCI
                                                                A. Clark
                                                   Telchemy Incorporated
                                                            A. Pendleton
                                                         Nortel Networks
                                                        October 14, 2004


               A Performance Report Event Package For SIP
                 draft-johnston-sipping-rtcp-summary-04

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 April 14, 2005.

Copyright Notice

   Copyright (C) The Internet Society (2004).

Abstract

   This document discusses the motivation and requirements for the
   delivery of performance reports and other summary reports from VoIP
   applications in endpoints to non-participants in the session.  A



Johnston, et al.         Expires April 14, 2005                 [Page 1]

Internet-Draft        SIP Performance Report Event          October 2004


   publication mechanism using a new SIP events package is proposed as a
   solution.  An event package "perfrpt" and an application/perfrtp 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 . . . . . . . . . . . . . . 12
       7.8.1   End of Session Notification using PUBLISH  . . . . . . 12
       7.8.2   End of Session Notification using NOTIFY . . . . . . . 14
       7.8.3   Mid Session Threshold Violation using PUBLISH  . . . . 16
       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 -02  . . . . . . . . . . . . . . . . . . . . 22
     7.12  Contributors . . . . . . . . . . . . . . . . . . . . . . . 22
   8.  Informative References . . . . . . . . . . . . . . . . . . . . 22
       Authors' Addresses . . . . . . . . . . . . . . . . . . . . . . 23
       Intellectual Property and Copyright Statements . . . . . . . . 24

















Johnston, et al.         Expires April 14, 2005                 [Page 2]

Internet-Draft        SIP Performance Report Event          October 2004


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/voiprpt 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 April 14, 2005                 [Page 3]

Internet-Draft        SIP Performance Report Event          October 2004


   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 perfrpt 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 April 14, 2005                 [Page 4]

Internet-Draft        SIP Performance Report Event          October 2004


   Publication Agent (EPA) or the Event State Compositor (ESC).
   Futhermore the information that is presented by the perfrpt 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:

   "perfrpt"

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/rtcp-xr which
   is a text encoding of the RTCP-XR statistics, with the addition of a



Johnston, et al.         Expires April 14, 2005                 [Page 5]

Internet-Draft        SIP Performance Report Event          October 2004


   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
                                 StreamInfo CLRF
                                 CallID CLRF
                                 CodecInfo 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]

           StreamInfo  = ("StreamInfo") EQUAL source-info SP dest-info
           source-info = ("src") COLON ipAddress SP port [SP ssrc]
           dest-info   = ("dest") COLON ipAddress SP port [SP ssrc]
           ssrc        = 1*alphanum
           ipAddress   = ("ipaddr") COLON (IPv6address / IPv4address)
           port        = 1*DIGIT

           CallID  =  ("CallID" / "i") COLON callid



Johnston, et al.         Expires April 14, 2005                 [Page 6]

Internet-Draft        SIP Performance Report Event          October 2004


           callid  =  word [ "@" word ]

           CodecInfo   = ("CodecInfo") EQUAL c-type SP sample-rate
                                 SP frame-size SP pl-conceal
           c-type      = ("type") COLON alphanum [*alphanum] / notAvail
           sample-rate = ("srate") COLON 1*5DIGIT / notAvail
           frame-size  = ("fsize") COLON 1*3DIGIT / notAvail
           pl-conceal  = ("plc") COLON ("std" / "enh" / "unk")

           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 m-lq SP m-cq
           r-lq    = ("r-lq") COLON 1*3DIGIT / notAvail
           r-cq    = ("r-cg") 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



Johnston, et al.         Expires April 14, 2005                 [Page 7]

Internet-Draft        SIP Performance Report Event          October 2004


           VoiceQualityAlert = ("VQAlert") COLON SP ViolationMetric SP
                                     Severity SP ViolationDirection
                                     CRLF VoiceQualityMetrics

           ViolationMetric = ("Type")  COLON ("r-lq" / "r-cq" /
                                              "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.

             Stream Identification Information
             The purpose of this line and its parameters is to provide
             a mechanism for differentiating between multiple streams
             in which a given endpoint may be involved at a point in
             time.

             Source
             The source IP address, RTP port, and SSRC for the stream
             with which the performance report is associated.

             Destination
             The destination IP address, RTP port, and SSRC for the
             stream with which the performance report is associated.


             Codec Information Line
             The parameters in this line provide information about the
             vocoder used for the session.



Johnston, et al.         Expires April 14, 2005                 [Page 8]

Internet-Draft        SIP Performance Report Event          October 2004


             Type
             It is recommend, where possible, to use IANA defined audio
             codec values.  For dynamic codecs, the defintion has been
             left as an arbitrary string
             of alphanumeric values with the intention of allowing an
             explanation of the codec type.

             Sample Rate
             The rate, in kiloHertz (kHz), at which the source audio is
             sampled.

             Frame Size
             The size in bytes of the frames within an RTP packet.

             Packet Loss Concealment
             Indicator of whether packet loss concealment is used.
             When PLC = "std", or standard, then a simple replay or
             interpolation algorithm is being used to fill-in the
             missing packet; this approach is typically able to conceal
             isolated lost packets at low packet loss rates.  When PLC
             = "enh", or enhanced, then an enhanced interpolation
             algorithm is being used; algorithms of this type are able
             to conceal high packet loss rates effectively.  When PLC =
             "unk", then no information is available concerning the use
             of PLC; however, for some codecs this may be
             inferred.


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



Johnston, et al.         Expires April 14, 2005                 [Page 9]

Internet-Draft        SIP Performance Report Event          October 2004


             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.

             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



Johnston, et al.         Expires April 14, 2005                [Page 10]

Internet-Draft        SIP Performance Report Event          October 2004


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

             R - Conversational Quality
             Estimated conversational call quality expressed in a



Johnston, et al.         Expires April 14, 2005                [Page 11]

Internet-Draft        SIP Performance Report Event          October 2004


             score from
             0 - 100, per ITU-T standard G.107.

             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:perfrpt F1         |                    |
          |------------------->|                    |                    |
          |      200 OK F2     |                    |                    |
          |<-------------------|                    |                    |
          |      INVITE F3     |                    |                    |
          |------------------->|                    |                    |
          |                    |      INVITE F4     |                    |
          |                    |---------------------------------------->|
          |                    |      200 OK F5     |                    |
          |                    |<----------------------------------------|
          |     200 OK F6      |                    |                    |
          |<-------------------|                    |                    |
          |        ACK F7      |                    |                    |
          |------------------->|                    |                    |
          |                    |      ACK F8        |                    |
          |                    |---------------------------------------->|
          |        RTP         |                    |                    |
          |<============================================================>|
          |        RTCP        |                    |                    |
          |<============================================================>|
          |                    |                    |                    |
          |    BYE F9          |                    |                    |
          |------------------->|      BYE F10       |                    |
          |                    |---------------------------------------->|
          |                    |     200 OK F11     |                    |



Johnston, et al.         Expires April 14, 2005                [Page 12]

Internet-Draft        SIP Performance Report Event          October 2004


          |                    |<----------------------------------------|
          |     200 OK F12     |                    |                    |
          |<-------------------|                    |                    |
          |  PUBLISH Event:perfrpt F13              |                    |
          |------------------->|                    |                    |
          |                    | PUBLISH Event:perfrpt 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: <sip:proxy@example.com>
                  From: Alice <sip:alice@example.com>;tag=a3343df32
                  Call-ID: 1890463548@alice.chicago.com
                  CSeq: 4331 PUBLISH
                  Allow: INVITE, ACK, CANCEL, OPTIONS, BYE, REFER,
                   SUBSCRIBE, NOTIFY
                  Event: perfrpt
                  Accept: application/sdp, message/sipfrag
                  Content-Type: application/rtcp-xr
                  Content-Length: ...

                  LocalMetrics:VQMetrics:
                  TimeStampInfo=start:10012004.18.23.43 stop:10012004.18.26.02
                  StreamInfo=srcAddr:10.10.1.123 5001 destAddr:11.1.1.150 5001 ssrc:r3k3k99weid
                  CallID=1890463548@alice.uac.chicago.com
                  CodecInfo=type:0 srate:8 fsize:20 plc:std
                  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:10
                  QualityScores=r-lq:90 r-cq:80 mos-lq:3.4 mos-cq:3.3
                  RemoteMetrics:VQMetrics:
                  StreamInfo=srcAddr:11.1.1.150 5001 destAddr:10.10.1.123 5001 src ssrc:fjuekdn393k
                  Call-ID=1890463548@alice.uac.chicago.com



Johnston, et al.         Expires April 14, 2005                [Page 13]

Internet-Draft        SIP Performance Report Event          October 2004


                  CodecInfo=type:0 prate:20 plc:std
                  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 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:perfrpt F1         |                    |
          |------------------->|                    |                    |
          |      200 OK F2     |                    |                    |
          |<-------------------|                    |                    |
          |                    |  SUBSCRIBE Event:perfrpt F3             |
          |                    |<-------------------|                    |
          | SUBSCRIBE Event:perfrpt 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       |                    |



Johnston, et al.         Expires April 14, 2005                [Page 14]

Internet-Draft        SIP Performance Report Event          October 2004


          |                    |---------------------------------------->|
          |                    |     200 OK F15     |                    |
          |                    |<----------------------------------------|
          |     200 OK F16     |                    |                    |
          |<-------------------|                    |                    |
          |  NOTIFY Event:perfrpt F17               |                    |
          |------------------->|                    |                    |
          |                    | NOTIFY Event:perfrpt 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
           To: <sip:collector@example.com>;tag=43524545
           From: Alice <sip:alice@example.com>;tag=a3343df32
           Call-ID: 1890463548@alice.chicago.com
           CSeq: 4321 NOTIFY
           Contact: <sip:alice@pc22.example.com>
           Allow: INVITE, ACK, CANCEL, OPTIONS, BYE, REFER,
           SUBSCRIBE, NOTIFY
           Event: perfrpt
           Accept: application/sdp, message/sipfrag
           Subscription-State: active;expires=3600
           Content-Type: text/plain
           Content-Length: ...

           LocalMetrics:VQMetrics:
           TimeStampInfo=start:10012004.18.23.43 stop:10012004.18.26.02
           StreamInfo=src:10.10.1.123 5001 r3k3k99weid dest:11.1.1.150 5001 fjuekdn393k
           CallID=1890463548@alice.chicago.com
           CodecInfo=type:0 prate:20 plc:std
           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:10
           QualityScores=r-lq:90 r-cq:80 mos-lq:3.4 mos-cq:3.3



Johnston, et al.         Expires April 14, 2005                [Page 15]

Internet-Draft        SIP Performance Report Event          October 2004


           RemoteMetrics:VQMetrics:
           StreamInfo=src:11.1.1.150 5001 fjuekdn393k dest:10.10.1.123 5001 r3k3k99weid
           Call-ID=1890463548@alice.chicago.com
           CodecInfo=type:0 prate:20 plc:std
           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 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
          |                    |                    |                    |
          |      INVITE F1     |                    |                    |
          |------------------->|                    |                    |
          |                    |      INVITE F2     |                    |
          |                    |---------------------------------------->|
          |                    |      200 OK F3     |                    |
          |                    |<----------------------------------------|
          |     200 OK F4      |                    |                    |
          |<-------------------|                    |                    |
          |        ACK F5      |                    |                    |
          |------------------->|                    |                    |
          |                    |      ACK F6        |                    |
          |                    |---------------------------------------->|
          |        RTP         |                    |                    |
          |<============================================================>|
          |        RTCP        |                    |                    |
          |<============================================================>|
          |  PUBLISH Event:perfrpt F7               |                    |
          |------------------->|                    |                    |
          |                    | PUBLISH Event:perfrpt F8                |
          |                    |------------------->|                    |
          |                    |     200 OK F9      |                    |
          |                    |<-------------------|                    |
          |     200 OK F10     |                    |                    |
          |<-------------------|                    |                    |
          |                    |                    |                    |
          |      BYE F12       |                    |                    |
          |------------------->|      BYE F13       |                    |
          |                    |---------------------------------------->|



Johnston, et al.         Expires April 14, 2005                [Page 16]

Internet-Draft        SIP Performance Report Event          October 2004


          |                    |     200 OK F14     |                    |
          |                    |<----------------------------------------|
          |     200 OK F15     |                    |                    |
          |<-------------------|                    |                    |
          |  PUBLISH Event:perfrpt F16              |                    |
          |------------------->|                    |                    |
          |                    | PUBLISH Event:perfrpt 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
          Via: SIP/2.0/UDP pc22.example.com;branch=z9hG4bK3343d7
          Max-Forwards: 70
          To: <sip:collector@example.com>
          From: Alice <sip:alice@example.com>;tag=a3343df32
          Call-ID: 1890463548@alice.chicago.com
          CSeq: 4321 PUBLISH
          Allow: INVITE, ACK, CANCEL, OPTIONS, BYE, REFER,
           SUBSCRIBE, NOTIFY
          Event: perfrpt
          Accept: application/sdp, message/sipfrag
          Content-Type: application/rtcp-xr
          Content-Length: ...

          VQAlert: Type:r-lq Severity:Warning Dir:local
          LocalMetrics:VQMetrics:
          TimeStampInfo=start:10012004.19.01.04 stop:10012004.19.01.52
          Stream=src:10.10.1.123 5001 r3k3k99weid dest:11.1.1.150 5001 fjuekdn393k
          CallID=1890463548@alice.chicago.com
          Codec=type:0 srate:8 fsize:20 plc:enh
          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
          RemoteMetrics:VQMetrics:
          Stream=src:11.1.1.150 5001 fjuekdn393k dest:10.10.1.123 5001 r3k3k99weid
          CallID=1890463548@alice.chicago.com



Johnston, et al.         Expires April 14, 2005                [Page 17]

Internet-Draft        SIP Performance Report Event          October 2004


          Codec=type:0 srate:8 fsize:20 plc:enh
          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:40
          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.



7.8.4  Mid Session Threshold Violation using NOTIFY


        Alice            Proxy/Registrar        Collector               Bob
          |                    |                    |                    |
          |                    |                    |                    |
          | REGISTER Allow-Event:perfrpt F1         |                    |
          |------------------->|                    |                    |
          |      200 OK F2     |                    |                    |
          |<-------------------|                    |                    |
          |                    |  SUBSCRIBE Event:perfrpt F3             |
          |                    |<-------------------|                    |
          | SUBSCRIBE Event:perfrpt F4              |                    |
          |<-------------------|                    |                    |
          |     200 OK F5      |                    |                    |
          |------------------->|                    |                    |
          |                    |   200 OK F6        |                    |
          |                    |------------------->|                    |
          |      INVITE F7     |                    |                    |
          |------------------->|                    |                    |
          |                    |      INVITE F8     |                    |
          |                    |---------------------------------------->|
          |                    |      200 OK F9     |                    |
          |                    |<----------------------------------------|
          |     200 OK F10     |                    |                    |
          |<-------------------|                    |                    |
          |        ACK F11     |                    |                    |
          |------------------->|                    |                    |
          |                    |      ACK F12       |                    |
          |                    |---------------------------------------->|



Johnston, et al.         Expires April 14, 2005                [Page 18]

Internet-Draft        SIP Performance Report Event          October 2004


          |        RTP         |                    |                    |
          |<============================================================>|
          |        RTCP        |                    |                    |
          |<============================================================>|
          |  NOTIFY Event:perfrpt F17               |                    |
          |------------------->|                    |                    |
          |                    | NOTIFY Event:perfrpt F18                |
          |                    |------------------->|                    |
          |                    |     200 OK F19     |                    |
          |                    |<-------------------|                    |
          |     200 OK F20     |                    |                    |
          |<-------------------|                    |                    |
          |                    |                    |                    |
          |    BYE F13         |                    |                    |
          |------------------->|      BYE F14       |                    |
          |                    |---------------------------------------->|
          |                    |     200 OK F15     |                    |
          |                    |<----------------------------------------|
          |     200 OK F16     |                    |                    |
          |<-------------------|                    |                    |
          |  NOTIFY Event:perfrpt F17               |                    |
          |------------------->|                    |                    |
          |                    | NOTIFY Event:perfrpt 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: <sip:collector@example.com>
          From: Alice <sip:alice@example.com>;tag=a3343df32
          Call-ID: 1890463548@alice.chicago.com
          CSeq: 4321 PUBLISH
          Allow: INVITE, ACK, CANCEL, OPTIONS, BYE, REFER,
           SUBSCRIBE, NOTIFY
          Event: perfrpt
          Accept: application/sdp, message/sipfrag
          Content-Type: application/rtcp-xr
          Content-Length: ...




Johnston, et al.         Expires April 14, 2005                [Page 19]

Internet-Draft        SIP Performance Report Event          October 2004


          VQAlert: Type:r-lq Severity:Warning Dir:local
          LocalMetrics:VQMetrics:
          TimeStampInfo=start:10012004.19.01.04 stop:10012004.19.01.52
          StreamInfo=src:10.10.1.123 5001 r3k3k99weid dest:11.1.1.150 5001 fjuekdn393k
          CallID=1890463548@alice.chicago.com
          CodecInfo=type:0 srate:8 fsize:20 plc:enh
          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:
          StreamInfo=src:11.1.1.150 5001 fjuekdn393k dest:10.10.1.123 5001 r3k3k99weid
          CallID=1890463548@alice.chicago.com
          CodecInfo=type:0 srate:8 fsize:20 plc:enh
          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
          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: perfrpt

      Type: package

      Contact: Alan Johnston <alan.johnston@mci.com>

      Published Specification: This document





Johnston, et al.         Expires April 14, 2005                [Page 20]

Internet-Draft        SIP Performance Report Event          October 2004


7.9.2  application/rtcp-xr MIME Registration

      MIME media type name: application

      MIME subtype name: rtcp-xr

      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
        <alan.johnston@mci.com>

      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 April 14, 2005                [Page 21]

Internet-Draft        SIP Performance Report Event          October 2004


7.11  Updates since -02

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

   [7]  Crocker, D. and P. Overell, "Augmented BNF for Syntax
        Specifications: ABNF", RFC 2234, November 1997.




Johnston, et al.         Expires April 14, 2005                [Page 22]

Internet-Draft        SIP Performance Report Event          October 2004


   [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 April 14, 2005                [Page 23]

Internet-Draft        SIP Performance Report Event          October 2004


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 (2004).  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 April 14, 2005                [Page 24]




PAFTECH AB 2003-20262026-04-21 22:16:48