One document matched: draft-ietf-pmol-sip-perf-metrics-04.xml


<?xml version="1.0" encoding="US-ASCII"?>
<!-- This template is for creating an Internet Draft using xml2rfc,
     which is available here: http://xml.resource.org. -->
<!DOCTYPE rfc SYSTEM "rfc2629.dtd" [
<!-- One method to get references from the online citation libraries.
     There has to be one entity for each item to be referenced. 
     An alternate method (rfc include) is described in the references. -->

<!ENTITY RFC2119 SYSTEM "reference.RFC.2119.xml">
<!ENTITY RFC3261 SYSTEM "reference.RFC.3261.xml">
<!ENTITY RFC3265 SYSTEM "reference.RFC.3265.xml">
<!ENTITY RFC3665 SYSTEM "reference.RFC.3665.xml">
<!ENTITY RFC3326 SYSTEM "reference.RFC.3326.xml">
<!ENTITY RFC3428 SYSTEM "reference.RFC.3428.xml">
<!ENTITY RFC4780 SYSTEM "reference.RFC.4780.xml">
<!ENTITY RFC3398 SYSTEM "reference.RFC.3398.xml">
<!ENTITY RFC2330 SYSTEM "reference.RFC.2330.xml">
]>
<?xml-stylesheet type='text/xsl' href='rfc2629.xslt' ?>
<!-- used by XSLT processors -->
<!-- For a complete list and description of processing instructions (PIs), 
     please see http://xml.resource.org/authoring/README.html. -->
<!-- Below are generally applicable Processing Instructions (PIs) that most I-Ds might want to use.
     (Here they are set differently than their defaults in xml2rfc v1.32) -->
<?rfc strict="no" ?>
<!-- give errors regarding ID-nits and DTD validation -->
<!-- control the table of contents (ToC) -->
<?rfc toc="yes"?>
<!-- generate a ToC -->
<?rfc tocdepth="4"?>
<!-- the number of levels of subsections in ToC. default: 3 -->
<!-- control references -->
<?rfc symrefs="yes"?>
<!-- use symbolic references tags, i.e, [RFC2119] instead of [1] -->
<?rfc sortrefs="yes" ?>
<!-- sort the reference entries alphabetically -->
<!-- control vertical white space 
     (using these PIs as follows is recommended by the RFC Editor) -->
<?rfc compact="yes" ?>
<!-- do not start each main section on a new page -->
<?rfc subcompact="no" ?>
<!-- keep one blank line between list items -->
<!-- end of list of popular I-D processing instructions -->
<rfc category="std" docName="draft-ietf-pmol-sip-perf-metrics-04"
     ipr="trust200811">
  <!-- ***** FRONT MATTER ***** -->

  <front>
    <!-- The abbreviated title is used in the page header - it is only necessary if the 
         full title is longer than 39 characters -->

    <title abbrev="SIP End-to-End Performance Metrics">SIP End-to-End
    Performance Metrics</title>

    <!-- add 'role="editor"' below for the editors if appropriate -->

    <!-- Another author who claims to be an editor -->

    <author fullname="Daryl Malas" initials="D.M." surname="Malas">
      <organization>CableLabs</organization>

      <address>
        <postal>
          <street>858 Coal Creek Circle</street>

          <!-- Reorder these if your country does things differently -->

          <city>Louisville</city>

          <region>CO</region>

          <code>80027</code>

          <country>US</country>
        </postal>

        <phone>+1 303 661 3302</phone>

        <email>d.malas@cablelabs.com</email>

        <!-- uri and facsimile elements may also be added -->
      </address>
    </author>

    <author fullname="Al Morton" initials="A.M." surname="Morton">
      <organization>AT&T Labs</organization>

      <address>
        <postal>
          <street>200 Laurel Avenue South</street>

          <!-- Reorder these if your country does things differently -->

          <city>Middletown</city>

          <region>NJ</region>

          <code>07748</code>

          <country>US</country>
        </postal>

        <phone>+1 732 420 1571</phone>

        <email>acmorton@att.com</email>

        <!-- uri and facsimile elements may also be added -->
      </address>
    </author>

    <date month="September" year="2009" />

    <!-- If the month and year are both specified and are the current ones, xml2rfc will fill 
         in the current day for you. If only the current year is specified, xml2rfc will fill 
	 in the current day and month for you. If the year is not the current one, it is 
	 necessary to specify at least a month (xml2rfc assumes day="1" if not specified for the 
	 purpose of calculating the expiry date).  With drafts it is normally sufficient to 
	 specify just the year. -->

    <!-- Meta-data Declarations -->

    <area>Operations and Management</area>

    <workgroup>PMOL</workgroup>

    <!-- WG name at the upperleft corner of the doc,
         IETF is fine for individual submissions.  
	 If this element is not present, the default is "Network Working Group",
         which is used by the RFC Editor as a nod to the history of the IETF. -->

    <keyword>template</keyword>

    <!-- Keywords will be incorporated into HTML output
         files in a meta tag but they have no effect on text or nroff
         output. If you submit your draft to the RFC Editor, the
         keywords will be used for the search engine. -->

    <note title="">
      <t>This document may contain material from IETF Documents or IETF
      Contributions published or made publicly available before November 10,
      2008. The person(s) controlling the copyright in some of this material
      may not have granted the IETF Trust the right to allow modifications of
      such material outside the IETF Standards Process. Without obtaining an
      adequate license from the person(s) controlling the copyright in such
      materials, this document may not be modified outside the IETF Standards
      Process, and derivative works of it may not be created outside the IETF
      Standards Process, except to format it for publication as an RFC or to
      translate it into languages other than English.</t>
    </note>

    <note title="Abstract">
      <t>This document defines a set of metrics and their usage to evaluate
      the performance of end-to-end Session Initiation Protocol (SIP) based
      services in both production and testing environments. The purpose of
      this document is to combine a standard set of common metrics, allowing
      interoperable performance measurements, easing the comparison of
      industry implementations.</t>
    </note>
  </front>

  <middle>
    <section title="Introduction and Scope">
      <t>SIP has become a widely-used standard among many service providers,
      vendors, and end users. Although there are many different standards for
      measuring the performance of signaling protocols, none of them
      specifically address SIP.</t>

      <t>The scope of this document is limited to the definitions of a
      standard set of metrics for measuring and reporting SIP performance from
      an end-to-end perspective. The metrics introduce a common foundation for
      understanding and quantifying performance expectations between service
      providers, vendors, and the users of services based on SIP. The intended
      audience for this document can be found among network operators, who
      often collect information on the responsiveness of the network to
      customer requests for services.</t>

      <t>Measurements of the metrics described in this document are affected
      by variables external to SIP. The following is a non-exhaustive list of
      examples:</t>

      <t><list style="symbols">
          <t>Network connectivity</t>

          <t>Switch and router performance</t>

          <t>Server processes and hardware performance</t>
        </list></t>

      <t>Note that some metrics in this document may not apply to all
      applications of SIP. This document defines a list of pertinent metrics,
      which may be used individually or as a set based on the usage of SIP
      within the context of a given service.</t>

      <t>The metrics defined in this document DO NOT take into consideration
      the impairment or failure of actual application processing of a request
      or response. The metrics do not distinguish application processing time
      from other sources of delay, such as packet transfer delay.</t>

      <t>Metrics designed to quantify single device application processing
      performance are beyond the scope of this document.</t>

      <t>This document does not provide any numerical objectives or acceptance
      threshold values for the SIP performance metrics defined below, as these
      items are beyond the scope of IETF activities, in general.</t>

      <t>The metrics defined in this document are applicable in scenarios
      where the SIP messages launched (into a network under test) are
      dedicated messages for testing purposes, or where the messages are
      user-initiated and a portion of the live traffic present. These two
      scenarios are sometimes referred to as active and passive measurement,
      respectively.</t>
    </section>

    <section title="Terminology">
      <t>The following terms and conventions will be used throughout this
      document:</t>

      <t>The key words "MUST", "MUST NOT", "REQUIRED", "SHALL", "SHALL NOT",
      "SHOULD", "SHOULD NOT", "RECOMMENDED", "MAY", and "OPTIONAL" in this
      document are to be interpreted as described in <xref
      target="RFC2119">RFC 2119</xref>.</t>

      <t>End-to-End - This is described as two or more elements utilized for
      initiating a request, receiving the request, and responding to the
      request. It encompasses elements as necessary to be involved in a
      session dialog between the originating user agent client (UAC),
      destination user agent server (UAS), and any interim proxies (may also
      include back-to-back user agent's (B2BUA's)). This may be relative to a
      single operator's set of elements or extend to encompass all elements
      (if beyond a single operator's network) associated with a session.</t>

      <t>Session - As described in <xref target="RFC3261">RFC 3261</xref>, SIP
      is used primarily to request, create, and conclude sessions. "These
      sessions include Internet telephone calls, multimedia distribution, and
      multimedia conferences." The metrics within this document measure the
      performance associated with the processes necessary to establish these
      sessions; therefore, they are titled as: Session Request Delay, Session
      Disconnect Delay, etc. Although the titles of many of the metrics
      include this term, they are specifically measuring the signaling aspects
      only. Each session is identified by a unique Call-ID.</t>

      <t>Session Establishment - Session establishment occurs when a 200 OK
      response from the UAS has been received, in response to a corresponding
      UAC's INVITE setup request, indicating the session setup request was
      successful.</t>

      <t>Session Setup - As referenced within the sub-sections of 4.2 in this
      document, session setup is the set of messages and included parameters
      directly related to the process of a UAC requesting to establish a
      session with a corresponding UAS. This is also described as a set of
      steps in order to establish "ringing" <xref
      target="RFC3261"></xref>.</t>
    </section>

    <section title="Time Interval Measurement and Reporting">
      <t>Many of the metrics defined in this memo utilize a clock to assess
      the time interval between two events. This section defines time- related
      terms and reporting requirements.</t>

      <t>T1 - start time</t>

      <t>This is the time instant (when a request is sent) that begins a
      continuous time interval. T1 occurs when the designated request has been
      processed by the SIP application and the first bit of the request packet
      has been sent from the UA or proxy (and is externally observable at some
      logical or physical interface).</t>

      <t>T1 represents the time at which each request-response test begins,
      and SHALL be used to designate the time-of-day when a particular
      measurement was conducted (e.g., The Session Request Delay at "T1" and
      (some specific UA interface) was measured to be X ms.)</t>

      <t>T4 - end time</t>

      <t>This is the time instant that concludes the continuous time interval
      begun when the related request is sent. T4 occurs when the last bit of
      the designated response is received by the SIP application at the
      requesting device (and is externally observable at some logical or
      physical interface).</t>

      <t>Note: The designations T2 and T3 are reserved for future use at
      another interface involved in satisfying a request.</t>

      <t>Section 10.1 of <xref target="RFC2330">RFC 2330</xref> describes
      time-related issues in measurements, and defines the errors that can be
      attributed to the clock themselves. These definitions are used in the
      material below.</t>

      <t>Time of Day Accuracy</t>

      <t>As defined above, T1 is associated with the start of a request and
      also serves as the time-of-day stamp associated with a single specific
      measurement. The clock offset <xref target="RFC2330"></xref> is the
      difference between T1 and a recognized primary source of time, such as
      UTC (offset = T1 - UTC).</t>

      <t>When measurement results will be correlated with other results or
      information using time-of-day stamps, then the time clock that supplies
      T1 SHOULD be synchronized to a primary time source, to minimize the
      clock's offset. The clocks used at the different measurement points
      SHOULD be synchronized to each other, to minimize the relative offset
      (as defined in RFC2330). The clock's offset and the relative offset MUST
      be reported with each measurement.</t>

      <t>Time Interval Accuracy</t>

      <t>The accuracy of the T4-T1 interval is also critical to maintain and
      report. The difference between a clock's offsets at T1 and T4 is one
      source of error for the measurement and is associated with the clock's
      skew <xref target="RFC2330"></xref>.</t>

      <t>A stable and reasonably accurate clock is needed to make the time
      interval measurements required by this memo. This source of error SHOULD
      be constrained to less than +/- 1 ms, implying 1 part per 1000 frequency
      accuracy for a 1 second interval. This implies greater stability is
      required as the length of the T4-T1 increases, in order to constrain the
      error to be less than +/- 1ms.</t>

      <t>There are several other important aspects of clock operation:</t>

      <t><list style="numbers">
          <t>Synchronization protocols require some ability to make
          adjustments to the local clock. However, these adjustments (clock
          steps or slewing) can cause large errors if they occur during the T1
          to T4 measurement interval. Clock correction SHOULD be suspended
          during a T1 to T4 measurement interval, unless the time interval
          accuracy requirement above will be met. Alternatively, a measurement
          SHOULD NOT be performed during clock correction, unless the time
          interval accuracy requirement above will be met.</t>

          <t>If a free-running clock is used to make the time interval
          measurement, then the time of day reported with the measurement
          (which is normally timestamp T1) SHOULD be derived from a different
          clock that meets the time of day accuracy requirements described
          above.</t>
        </list></t>

      <t>The physical operation of reading time from a clock may be
      constrained by the delay to service the interrupt. Therefore, if the
      accuracy of the time stamp read at T1 or T4 includes the interrupt
      delay, this source of error SHOULD be known and included in the error
      assessment.</t>
    </section>

    <section title="SIP Performance Metrics">
      <t>In regards to all of the following metrics, T1 begins with the first
      associated SIP message sent by the UAC or UAS, and is not reset if the
      UAC or UAS must retransmit the same request, with the same Call-ID,
      multiple times. The first associated SIP message indicates the T1
      associated with the user or application expectation relative to the
      request.</t>

      <t>Some metrics are calculated based on the final response message.
      These metrics do not take into consideration route advances to
      additional signaling functions based on "final" failure responses. In
      these unique cases, the final response related to the initial setup
      attempt SHOULD be utilized for input to the metric.</t>

      <t>In regards to all of the metrics, the accuracy and granularity of the
      output values are related to the accuracy and granularity of the input
      values.</t>

      <t>The following metrics may be utilized for many different SIP
      applications.</t>

      <section title="Registration Request Delay (RRD)">
        <t>Registration Request Delay (RRD) is a measurement of the delay in
        responding to a UAC REGISTER request. RRD SHALL be measured and
        reported only for successful REGISTER requests, while Ineffective
        Registration Attempts (Section 4.2) SHALL be reported for failures.
        This metric is measured at the UAC. The output value of this metric is
        numerical and SHOULD be stated in units of milliseconds. The RRD is
        calculated using the following formula:</t>

        <t>RRD = Time of Final Response - Time of REGISTER Request</t>

        <t>In a successful registration attempt, RRD is defined as the time
        interval from the first bit of the initial REGISTER message containing
        the necessary information is passed by the originating UAC to the
        intended registrar until the last bit of the 200 OK is received
        indicating the registration attempt has completed successfully. This
        dialog includes an expected authentication challenge prior to
        receiving the 200 OK as described in the following registration flow
        examples.</t>

        <t>The following flow provides an example of identifiable events
        necessary for inputs in calculating RRD during a successful
        registration completion:</t>

        <figure>
          <artwork><![CDATA[
    
               UA1                 Registrar 
                |                      | 
                |REGISTER              | 
         T1---->|--------------------->| 
            /\  |                   401| 
            ||  |<---------------------| 
           RRD  |REGISTER              | 
            ||  |--------------------->| 
            \/  |                   200| 
         T4---->|<---------------------| 
                |                      |
                
    ]]></artwork>
        </figure>
      </section>

      <section title="Ineffective Registration Attempts (IRA)">
        <t>Ineffective registration attempts are utilized to detect failures
        or impairments causing an inability for a registrar to receive a UAC
        REGISTER request. This metric is measured at the UAC. The output value
        of this metric is numerical and SHOULD be reported as a percentage of
        registration attempts.</t>

        <t>This metric is calculated as a percentage of total REGISTER
        requests. The IRA is calculated using the following formula:</t>

        <figure>
          <artwork><![CDATA[
    
                     # of IRA  
   IRA % = ----------------------------- x 100 
            Total # of REGISTER Requests
     
     ]]></artwork>
        </figure>

        <t>A failed registration attempt is defined as a final failure
        response to the initial REGISTER request. It usually indicates a
        failure received from the destination registrar, interim proxies, or
        due to a timeout of the REGISTER request at the originating UA. A
        failure response is described as a 4XX (excluding 401, 402, and 407
        non- failure challenge response codes), 5XX, or possible 6XX message.
        A timeout failure is identified by the timer F expiring. IRA may be
        used to detect problems in downstream signaling functions, which may
        be impairing the REGISTER message from reaching the intended
        registrar; or, it may indicate a registrar has become overloaded and
        is unable to respond to the request.</t>

        <t>The following flow provides a timeout example of an identifiable
        event necessary for input as a failed registration attempt:</t>

        <figure>
          <artwork><![CDATA[
     
               UA1                Registrar 
                |                      | 
                |REGISTER              | 
                |--------------------->| 
                |REGISTER              | 
                |--------------------->| 
                |REGISTER              | 
                |--------------------->| 
                |                      | 
   Failure ---->|***Timer F Expires    | 
                |                      |
     
     ]]></artwork>
        </figure>

        <t>In the previous message flow the UAC retries a REGISTER request
        multiple times before the timer, indicating the failure, expires. Only
        the first REGISTER request MUST used for input to the calculation and
        an IRA. Subsequent REGISTER retries are identified by the same Call-ID
        and MUST be ignored for purposes of metric calculation. This ensures
        an accurate representation of the metric output.</t>

        <t>The following flow provides a registrar servicing failure example
        of an identifiable event necessary for input as a failed registration
        attempt:</t>

        <figure>
          <artwork><![CDATA[
     
               UA1                Registrar 
                |                      | 
                |REGISTER              | 
                |--------------------->| 
                |                      | 
                |                      | 
                |                      | 
                |                      | 
                |                   503| 
   Failure ---->|<---------------------| 
                |                      |
     ]]></artwork>
        </figure>
      </section>

      <section title="Session Request Delay (SRD)">
        <t>Session Request Delay is utilized to detect failures or impairments
        causing delays in responding to a UA session request. SRD is measured
        for both successful and failed session setup requests as this metric
        usually relates to a user experience; however, SRD for session
        requests ending in a failure MUST NOT be combined in the same result
        with successful requests. The duration associated with success and
        failure responses will likely vary substantially, and the desired
        output time associated with each will be significantly different in
        many cases. This metric is similar to Post-Selection Delay <xref
        target="E.721"></xref> or Post-Dial Delay (PDD) in telephony
        applications of SIP, and it is measured at the UAC only. The output
        value of this metric MUST indicate whether the output is for
        successful or failed session requests and SHOULD be stated in units of
        seconds. The SRD is calculated using the following formula:</t>

        <t>SRD = Time of Status Indicative Response - Time of INVITE</t>

        <section title="Successful Session Setup SRD">
          <t>In a successful request attempt, SRD is defined as the time
          interval from the first bit of the initial INVITE message containing
          the necessary information is sent by the originating agent or user
          to the intended mediation or destination agent until the last bit of
          the first provisional response is received indicating an audible or
          visual status of the initial session setup request. In SIP, the
          message indicating status would be a non-100 Trying provisional
          message received in response to an INVITE request. In some cases, a
          non-100 Trying provisional message is not received, but rather a 200
          message is received as the first status message instead. In these
          situations, the 200 message would be used to calculate the
          interval.</t>

          <t>The following flow provides an example of identifiable events
          necessary for inputs in calculating SRD during a successful session
          setup request without a redirect (i.e. 3XX message):</t>

          <figure>
            <artwork><![CDATA[
     
               UA1                    UA2 
                |                      | 
                |INVITE                | 
         T1---->|--------------------->| 
            /\  |                      | 
            ||  |                      | 
           SRD  |                      | 
            ||  |                      | 
            \/  |                   180| 
         T4---->|<---------------------| 
                |                      |
     
     ]]></artwork>
          </figure>

          <t>The following flow provides an example of identifiable events
          necessary for inputs in calculating SRD during a successful session
          setup with a redirect (e.g. 302 Moved Temporarily):</t>

          <figure>
            <artwork><![CDATA[
     
               UA1             Redirect Server              UA2 
                |                      |                     | 
                |INVITE                |                     | 
         T1---->|--------------------->|                     | 
            /\  |                   302|                     | 
            ||  |<---------------------|                     | 
            ||  |ACK                   |                     |     
           SRD  |--------------------->|                     | 
            ||  |INVITE                                      | 
            ||  |------------------------------------------->| 
            \/  |                                         180| 
         T4---->|<-------------------------------------------|
     
     ]]></artwork>
          </figure>
        </section>

        <section title="Failed Session Setup SRD">
          <t>In a failed request attempt, SRD is defined as the time interval
          from the first bit of the initial INVITE message containing the
          necessary information sent by the originating agent or user to the
          intended mediation or destination agent until the last bit of the
          first provisional response or a failure indication response. A
          failure response is described as a 4XX (excluding 401, 402, and 407
          non-failure challenge response codes), 5XX, or possible 6XX message.
          SRD may be used to detect problems in downstream signaling
          functions, which may be impairing the INVITE message from reaching
          the intended UA. While this metric calculates the delay associated
          with a failed session request, the metric Ineffective Session
          Attempts (Section 4.10) is used for calculating a ratio of session
          attempt failures.</t>

          <t>The following flow provides an example of identifiable events
          necessary for inputs in calculating SRD during a failed session
          setup attempt without a redirect (i.e. 3XX message):</t>

          <figure>
            <artwork><![CDATA[
     
               UA1                    UA2 
                |                      | 
                |INVITE                | 
         T1---->|--------------------->| 
            /\  |                      | 
            ||  |                      | 
           SRD  |                      | 
            ||  |                      | 
            \/  |                   480| 
         T4---->|<---------------------| 
                |                      |
     
     ]]></artwork>
          </figure>

          <t>The following flow provides an example of identifiable events
          necessary for inputs in calculating SRD during a failed session
          setup attempt with a redirect (e.g. 302 Moved Temporarily):</t>

          <figure>
            <artwork><![CDATA[
     
               UA1             Redirect Server              UA2 
                |                      |                     | 
                |INVITE                |                     | 
         T1---->|--------------------->|                     | 
            /\  |                   302|                     | 
            ||  |<---------------------|                     | 
            ||  |ACK                   |                     |     
           SRD  |--------------------->|                     | 
            ||  |INVITE                                      | 
            ||  |------------------------------------------->| 
            \/  |                                         480| 
         T4---->|<-------------------------------------------|
     
     ]]></artwork>
          </figure>
        </section>

        <section title="Instant Messaging">
          <t>This metric is also applicable to MESSAGE <xref
          target="RFC3428"></xref> requests. In the above metric, INVITE can
          be replaced with MESSAGE to provide SRD for instant messaging (IM).
          The dialog will vary slightly as described in <xref
          target="RFC3428">RFC 3428</xref>. The inputs for this metric SHOULD
          be utilized regardless of whether a prior SIP dialog was utilized to
          setup the session. In that case both the SIP dialog and the MESSAGE
          requests are measured independently.</t>

          <t>The following flow provides an example of identifiable events
          necessary for inputs in calculating SRD during a successful session
          MESSAGE request:</t>

          <figure>
            <artwork><![CDATA[
     
               UA1                    UA2 
                |                      | 
                |MESSAGE               | 
         T1---->|--------------------->| 
            /\  |                      | 
            ||  |                      | 
           SRD  |                      | 
            ||  |                      | 
            \/  |                   200| 
         T4---->|<---------------------| 
                |                      |
     
     ]]></artwork>
          </figure>

          <t>Failure requests occur similarly as to those described in section
          4.2.2 with MESSAGE in replacement of INVITE as the IM session
          request method.</t>
        </section>
      </section>

      <section title="Session Disconnect Delay (SDD)">
        <t>This metric is utilized to detect failures or impairments delaying
        the time necessary to end a session. It can be measured from both a
        UAC and UAS perspective. SDD is measured for both successful and
        failed session completions. The output value of this metric is
        numerical and SHOULD be stated in units of milliseconds. The SDD is
        calculated using the following formula:</t>

        <t>SDD = Time of 2XX or Timeout - Time of Completion Message (BYE)</t>

        <section title="Successful session completion SDD">
          <t>In a successful session completion, SDD is defined as the
          interval between the first bit of the sent session completion
          message, such as a BYE, and the last bit of the subsequently
          received 2XX acknowledgment. The following flows provide an example
          of identifiable events necessary for inputs in calculating SDD
          during a successful session completion:</t>

          <t>Measuring SDD at the UAC -</t>

          <figure>
            <artwork><![CDATA[
     
               UA1                    UA2 
                |                      | 
                |INVITE                | 
                |--------------------->| 
                |                   180| 
                |<---------------------| 
                |                   200| 
                |<---------------------| 
                |ACK                   | 
                |--------------------->|  
                |BYE                   | 
         T1---->|--------------------->| 
            /\  |                      | 
            ||  |                      | 
           SDD  |                      | 
            ||  |                      | 
            \/  |                   200| 
         T4---->|<---------------------|
     
     ]]></artwork>
          </figure>

          <t>Measuring SDD at the UAS -</t>

          <figure>
            <artwork><![CDATA[
     
               UA1                    UA2 
                |                      | 
                |INVITE                | 
                |--------------------->| 
                |                   180| 
                |<---------------------| 
                |                   200| 
                |<---------------------| 
                |ACK                   | 
                |--------------------->|  
                |                   BYE| 
                |<---------------------|<----T1 
                |                      |  /\ 
                |                      |  || 
                |                      | SDD 
                |                      |  || 
                |200                   |  \/ 
                |--------------------->|<----T4
     
     ]]></artwork>
          </figure>
        </section>

        <section title="Failed session completion SDD">
          <t>In some cases, no response is received after a session completion
          message is sent and potentially retried. In this case, SDD is
          defined as the interval between the first bit of the sent session
          completion message, such as a BYE, and the resulting Timer F
          expiration. The following flows provide an example of identifiable
          events necessary for inputs in calculating SDD during a failed
          session completion attempt:</t>

          <t>Measuring SDD at the UAC -</t>

          <figure>
            <artwork><![CDATA[
     
               UA1                    UA2 
                |                      | 
                |INVITE                | 
                |--------------------->| 
                |                   180| 
                |<---------------------| 
                |                   200| 
                |<---------------------| 
                |ACK                   |  
                |--------------------->| 
                |BYE                   | 
         T1---->|--------------------->| 
            /\  |BYE                   | 
            ||  |--------------------->| 
           SDD  |BYE                   | 
            ||  |--------------------->| 
            \/  |                      | 
         T4---->|***Timer F Expires    | 
     
     ]]></artwork>
          </figure>

          <t>Measuring SDD at the UAS -</t>

          <figure>
            <artwork><![CDATA[
     
               UA1                    UA2 
                |                      | 
                |INVITE                | 
                |--------------------->| 
                |                   180| 
                |<---------------------| 
                |                   200| 
                |<---------------------| 
                |ACK                   |  
                |--------------------->| 
                |                   BYE| 
                |<---------------------|<----T1 
                |                   BYE|  /\ 
                |<---------------------|  || 
                |                   BYE| SDD 
                |<---------------------|  || 
                |                      |  \/ 
                |    Timer F Expires***|<----T4
     
     ]]></artwork>
          </figure>
        </section>
      </section>

      <section title="Session Duration Time (SDT)">
        <t>This metric is used to detect problems (e.g. poor audio quality)
        causing short session durations. SDT is measured for both successful
        and failed session completions. It can be measured from both a UAC and
        UAS perspective. This metric is similar to Call Hold Time, and is
        traditionally calculated as Average Call Hold Time (ACHT) in telephony
        applications of SIP. The output value of this metric is numerical and
        SHOULD be stated in units of seconds. The SDT is calculated using the
        following formula:</t>

        <t>SDT = Time of BYE or Timeout - Time of 200 OK response to
        INVITE</t>

        <section title="Successful session duration SDT">
          <t>In a successful session completion, SDT is calculated as an
          average and is defined as the duration of a dialog defined by the
          interval from receipt of the first bit of a 200 OK response to an
          INVITE and receipt of the last bit of an associated BYE message
          indicating dialog completion.</t>

          <t>The following flows provide an example of identifiable events
          necessary for inputs in calculating SDT during a successful session
          completion (The message flows are changed between the UAC and UAS to
          provide varying examples.):</t>

          <t>Measuring SDT at the UAC -</t>

          <figure>
            <artwork><![CDATA[
     
               UA1                    UA2 
                |                      | 
                |INVITE                | 
                |--------------------->| 
                |                   180| 
                |<---------------------| 
                |                   200| 
         T1---->|<---------------------| 
            /\  |ACK                   | 
            ||  |--------------------->| 
            ||  |                      | 
           SDT  |                      | 
            ||  |                      | 
            ||  |                      | 
            \/  |BYE                   | 
         T4---->|--------------------->| 
                |                      |
     
     ]]></artwork>
          </figure>

          <t>When measuring SDT at the UAS, it is defined by the interval from
          sending the first bit of a 200 OK response to an INVITE and receipt
          of the last bit of an associated BYE message indicating dialog
          completion. If the UAS initiates the BYE, then it is defined by the
          interval from sending the first bit of a 200 OK response to an
          INVITE and sending the first bit of an associated BYE message
          indicating dialog completion. This is illustrated in the following
          example message flow -</t>

          <figure>
            <artwork><![CDATA[
     
               UA1                    UA2 
                |                      | 
                |INVITE                | 
                |--------------------->| 
                |                   180| 
                |<---------------------| 
                |                   200| 
                |<---------------------|<----T1 
                |ACK                   |  /\ 
                |--------------------->|  || 
                |                      |  || 
                |                      |  SDT 
                |                      |  || 
                |                      |  || 
                |                   BYE|  \/ 
                |<---------------------|<----T4   
                |                      |
     
     ]]></artwork>
          </figure>

          <t>(In these two examples, T1 is the same even if the UAC/UAS
          receives the BYE instead of sending it.)</t>
        </section>

        <section title="Failed session completion SDT">
          <t>In some cases, no response is received after a session completion
          message is sent and potentially retried. In this case, SDT is
          defined as the interval between receiving the first bit of a 200 OK
          response to an INVITE, and the resulting Timer F expiration. The
          following flows provide an example of identifiable events necessary
          for inputs in calculating SDT during a failed session completion
          attempt:</t>

          <t>Measuring SDT at the UAC -</t>

          <figure>
            <artwork><![CDATA[
     
               UA1                    UA2 
                |                      | 
                |INVITE                | 
                |--------------------->| 
                |                   180| 
                |<---------------------| 
                |                   200| 
         T1---->|<---------------------| 
            /\  |BYE                   | 
            ||  |--------------------->| 
            ||  |BYE                   | 
           SDT  |--------------------->| 
            ||  |BYE                   | 
            ||  |--------------------->| 
            \/  |                      | 
         T4---->|***Timer F Expires    |
     
     ]]></artwork>
          </figure>

          <t>When measuring SDT at the UAS, SDT is defined as the interval
          between sending the first bit of a 200 OK response to an INVITE, and
          the resulting Timer F expiration. This is illustrated in the
          following example message flow -</t>

          <figure>
            <artwork><![CDATA[
     
               UA1                    UA2 
                |                      | 
                |INVITE                | 
                |--------------------->| 
                |                   180| 
                |<---------------------| 
                |                   200| 
                |<---------------------|<----T1 
                |                   BYE|  /\ 
                |<---------------------|  || 
                |                   BYE|  || 
                |<---------------------|  SDT 
                |                   BYE|  || 
                |<---------------------|  || 
                |                      |  \/ 
                |    Timer F Expires***|<----T4
     
     ]]></artwork>
          </figure>
        </section>
      </section>

      <section title="Hops per Request (HpR)">
        <t>This metric is used to indicate potential inefficient routing and
        to detect failure occurrences related to the number of elements
        traversed by a single SIP INVITE or MESSAGE request. HpR is defined as
        the number of hops traversed by an INVITE or MESSAGE request. This
        metric requires the Max-Forwards value to be captured at both the
        originating UAC or proxy and the terminating UAS or proxy perspective
        as relative to the end-to-end network under measurement. The output
        value of this metric is measured in a numerical value indicating a
        number of hops.</t>

        <t>The following variables MUST be captured for use in the HpR
        formula:</t>

        <t>a = Initial INVITE/MESSAGE "Max-Forwards" value</t>

        <t>b = Initial INVITE/MESSAGE received by terminating UAS "Max-
        Forwards" value</t>

        <t>c = # of Hops for INVITE/MESSAGE requests</t>

        <t>Using the variables defined above, the HpR is calculated using the
        following formula:</t>

        <t>c = a - b</t>

        <t>The following dialog provides an example describing the inputs
        necessary for this calculation. Although this example is of an INVITE
        SIP dialog request, a MESSAGE request is similar in its use of the
        Max-Forwards header. (The dialog continuation was omitted for
        clarity):</t>

        <figure>
          <artwork><![CDATA[
     
       UA1           Proxy 1          Proxy 2             UA2 
        |                |                |                | 
        |INVITE          |                |                | 
        |--------------->|                |                | 
        |             407|                |                | 
        |<---------------|                |                | 
        |ACK             |                |                | 
        |--------------->|                |                | 
        |INVITE (F4)     |                |                | 
        |--------------->|INVITE (F5)     |                | 
        |             100|--------------->|INVITE (F6)     | 
        |<---------------|             100|--------------->| 
        |                |<---------------|                |
     
     ]]></artwork>
        </figure>

        <t>Message Details (Only the message details of the INVITE messages
        have been included for clarity. Also, some headers after Max-Forwards
        have been omitted for additional clarity.):</t>

        <figure>
          <artwork><![CDATA[
     
     (F4) INVITE UA1 -> Proxy 1 
    
     INVITE sip:ua2@biloxi.example.com SIP/2.0 
     Via: SIP/2.0/TCP 
   client.atlanta.example.com:5060;branch=z9hG4bK74bf9 
      Max-Forwards: 70 
      Route: <sip:ss1.atlanta.example.com;lr> 
      From: UA1 <sip:ua1@atlanta.example.com>;tag=9fxced76sl 
      To: UA2 <sip:ua2@biloxi.example.com> 
    
      (F5) INVITE Proxy 1 -> Proxy 2 
    
      INVITE sip:ua2@biloxi.example.com SIP/2.0 
      Via: SIP/2.0/TCP 
   ss1.atlanta.example.com:5060;branch=z9hG4bK2d4790.1 
      Via: SIP/2.0/TCP 
   client.atlanta.example.com:5060;branch=z9hG4bK74bf9 
       ;received=192.0.2.101 
      Max-Forwards: 69 
      Record-Route: <sip:ss1.atlanta.example.com;lr> 
      From: UA1 <sip:ua1@atlanta.example.com>;tag=9fxced76sl 
      To: UA2 <sip:ua2@biloxi.example.com> 
    
      (F6) INVITE Proxy 2 -> UA2 
    
      INVITE sip:ua2@client.biloxi.example.com SIP/2.0 
      Via: SIP/2.0/TCP ss2.biloxi.example.com:5060;branch=z9hG4bK721e4.1 
      Via: SIP/2.0/TCP 
   ss1.atlanta.example.com:5060;branch=z9hG4bK2d4790.1 
       ;received=192.0.2.111
       Via: SIP/2.0/TCP 
   client.atlanta.example.com:5060;branch=z9hG4bK74bf9 
       ;received=192.0.2.101 
      Max-Forwards: 68 
      Record-Route: <sip:ss2.biloxi.example.com;lr>, 
       <sip:ss1.atlanta.example.com;lr> 
      From: UA1 <sip:ua1@atlanta.example.com>;tag=9fxced76sl 
      To: UA2 <sip:ua2@biloxi.example.com>
     
     ]]></artwork>
        </figure>
      </section>

      <section title="Session Establishment Ratio (SER)">
        <t>This metric is used to detect the ability of a terminating UA or
        downstream proxy to successfully establish sessions per new session
        INVITE requests. SER is defined as the number of new session INVITE
        requests resulting in a 200 OK response, to the total number of
        attempted INVITE requests less INVITE requests resulting in a 3XX
        response. This metric is similar to Answer Seizure Ratio (ASR) <xref
        target="E.411"></xref> in telephony applications of SIP. It is
        measured at the UAC only. The output value of this metric is numerical
        and SHOULD be adjusted to indicate a percentage of successfully
        established sessions. The SER is calculated using the following
        formula:</t>

        <figure>
          <artwork><![CDATA[
     
                 # of INVITE Requests w/ associated 200 OK 
   SER = --------------------------------------------------------- x 100 
     (Total # of INVITE Requests)-(# of INVITE Requests w/ 3XX Response)
     
     ]]></artwork>
        </figure>

        <t>The following flow provides an example of identifiable events
        necessary for inputs in determining session establishment as described
        above:</t>

        <figure>
          <artwork><![CDATA[
     
                        UA1                 UA2 
                         |                   | 
                         |INVITE             | 
            +----------->|------------------>| 
            |            |                180| 
            |            |<------------------| 
   Session Established   |                   | 
            |            |                   | 
            |            |                200| 
            +----------->|<------------------| 
                         |                   |
     
     ]]></artwork>
        </figure>

        <section title="Instant Messaging">
          <t>This metric is also applicable to MESSAGE <xref
          target="RFC3428"></xref> requests. In the above metric, INVITE can
          be replaced with MESSAGE to provide SER for IM. The dialog will vary
          slightly as described in <xref target="RFC3428">RFC 3428</xref>.</t>

          <t>The following flow provides an example of identifiable events
          necessary for inputs in calculating SER for MESSAGE requests:</t>

          <figure>
            <artwork><![CDATA[
     
                        UA1                 UA2 
                         |                   | 
                         |MESSAGE            | 
            +----------->|------------------>| 
            |            |                   | 
   Session Established   |                   | 
            |            |                200| 
            +----------->|<------------------| 
                         |                   |
     
     ]]></artwork>
          </figure>
        </section>
      </section>

      <section title="Session Establishment Effectiveness Ratio (SEER)">
        <t>This metric is complimentary to SER, but is intended to exclude the
        potential effects of the terminating UAS from the metric. SEER is
        defined as the number of INVITE requests resulting in a 200 OK
        response and INVITE requests resulting in a 480, 486, or 600; to the
        total number of attempted INVITE requests less INVITE requests
        resulting in a 3XX, 401, 402, and 407 response. This metric is similar
        to Network Effectiveness Ratio (NER) <xref target="E.411"></xref> in
        telephony applications of SIP. It is measured at the UAC only. The
        output value of this metric is numerical and SHOULD be adjusted to
        indicate a percentage of successfully established sessions less common
        UAS failures.</t>

        <t>In order to simplify the formula, the following variable is used to
        summarize multiple SIP responses:</t>

        <t>a = 3XX, 401, 402, and 407</t>

        <t>The SEER is calculated using the following formula:</t>

        <figure>
          <artwork><![CDATA[
    
        # of INVITE Requests w/ associated 200 OK, 480, 486, or 600 
   SEER = -------------------------------------------------------- x 100 
     (Total # of INVITE Requests)-(# of INVITE Requests w/ 'a' Response)
    
    ]]></artwork>
        </figure>

        <t>Reference the example flow is Section 4.7.</t>
      </section>

      <section title="Session Defects Ratio (SDR)">
        <t>Session defects provide a subset of SIP failure responses, which
        consistently indicate a failure in dialog processing. Defects are
        necessary to provide input to calculations such as Defects per Million
        (DPM) or other similar metrics. These failure responses are in
        response to initial session setup requests, such as a new INVITE. The
        output value of this metric is numerical and SHOULD be adjusted to
        indicate a percentage of defective sessions. The following failure
        responses provide a guideline for defective criterion:</t>

        <t><list style="symbols">
            <t>500 Server Internal Error</t>

            <t>503 Service Unavailable</t>

            <t>504 Server Timeout</t>
          </list></t>

        <t>This set of failure responses was derived through correlating more
        granular ISUP failure responses as described in <xref
        target="RFC3398">RFC 3398</xref>. The SDR is calculated using the
        following formula:</t>

        <figure>
          <artwork><![CDATA[
      
          # of INVITE Requests w/ associated 500, 503, or 504 
   SDR = ----------------------------------------------------- x 100 
                      Total # of INVITE Requests
      
      ]]></artwork>
        </figure>
      </section>

      <section title="Ineffective Session Attempts (ISA)">
        <t>Ineffective session attempts occur when a proxy or agent internally
        releases a setup request with a failed or overloaded condition. This
        metric is similar to Ineffective Machine Attempts (IMA) in telephony
        applications of SIP, and was adopted from Telcordia GR-512-CORE <xref
        target="GR-512"></xref>. The output value of this metric is numerical
        and SHOULD be adjusted to indicate a percentage of ineffective session
        attempts. The following failure responses provide a guideline for this
        criterion:</t>

        <t><list style="symbols">
            <t>408 Request Timeout</t>

            <t>500 Server Internal Error</t>

            <t>503 Service Unavailable</t>

            <t>504 Server Timeout</t>
          </list></t>

        <t>This set was derived in a similar manner as described in Section
        4.9, in addition 408 failure responses is indicative a overloaded
        state with a downstream element.</t>

        <t>This metric is calculated as a percentage of total session setup
        requests. The ISA is calculated using the following formula:</t>

        <figure>
          <artwork><![CDATA[
      
                     # of ISA  
   ISA % = ----------------------------- x 100 
            Total # of Session Requests
      
      ]]></artwork>
        </figure>
      </section>

      <section title="Session Disconnect Failures (SDF)">
        <t>Session disconnect failures occur when an active session is
        terminated due to a failure condition that can be identified by a
        REASON header <xref target="RFC3326"></xref> in a BYE message. This
        occurs, for example, when a user agent (UA) is controlling an IP or
        TDM (Time Division Multiplexing) media gateway, and the media gateway
        notifies the UA of a failure condition causing the loss of media
        related to an established session. The UA will release the session
        with a BYE, but SHOULD include a REASON header indicating the session
        was disconnected abnormally. The REASON value is utilized to determine
        the disconnect was a failure. This metric is similar to Cutoff Calls
        (CC) in telephony applications of SIP, and was adopted from Telcordia
        GR-512-CORE <xref target="GR-512"></xref>. The input variables for
        this metric are captured from the originating UAC or proxy perspective
        as relative to the end- to-end network under measurement. The output
        value of this metric is numerical and SHOULD be adjusted to indicate a
        percentage of session disconnect failures.</t>

        <t>This metric is calculated as a percentage of total session
        completed successfully as defined in Section 3.5. The SDF is
        calculated using the following formula:</t>

        <figure>
          <artwork><![CDATA[
    
                      # of SDF's 
   SDF % = ------------------------------- x 100 
             Total # of Session Requests
    
    ]]></artwork>
        </figure>
      </section>

      <section title="Session Completion Ratio (SCR)">
        <t>A session completion is defined as a SIP dialog, which completes
        without failing due to a lack of response from an intended proxy or
        UA. This metric is only used when at least one proxy is involved in
        the dialog. This metric is similar to Call Completion Ratio (CCR) in
        telephony applications of SIP. The output value of this metric is
        numerical and SHOULD be adjusted to indicate a percentage of
        successfully completed sessions.</t>

        <t>This metric is calculated as a percentage of total sessions
        completed successfully. The SCR is calculated using the following
        formula:</t>

        <figure>
          <artwork><![CDATA[
    
             # of Successfully Completed Sessions  
   SCR % = --------------------------------------- x 100 
                  Total # of Session Requests
    
    ]]></artwork>
        </figure>

        <section title="Successful Session Completion">
          <t>A session completes successfully when it begins with a setup
          request and ends with a session completion message.</t>

          <t>The following dialog <xref target="RFC3665"></xref> provides an
          example describing the necessary events of a successful session
          completion:</t>

          <figure>
            <artwork><![CDATA[
    
       UA1           Proxy 1          Proxy 2             UA2 
        |                |                |                | 
        |INVITE          |                |                | 
        |--------------->|                |                | 
        |             407|                |                | 
        |<---------------|                |                | 
        |ACK             |                |                | 
        |--------------->|                |                | 
        |INVITE          |                |                | 
        |--------------->|INVITE          |                | 
        |             100|--------------->|INVITE          | 
        |<---------------|             100|--------------->| 
        |                |<---------------|                | 
        |                |                |             180| 
        |                |            180 |<---------------| 
        |             180|<---------------|                | 
        |<---------------|                |             200| 
        |                |             200|<---------------| 
        |             200|<---------------|                | 
        |<---------------|                |                | 
        |ACK             |                |                | 
        |--------------->|ACK             |                | 
        |                |--------------->|ACK             | 
        |                |                |--------------->| 
        |                Both Way RTP Media                | 
        |<================================================>| 
        |                |                |             BYE| 
        |                |             BYE|<---------------| 
        |             BYE|<---------------|                | 
        |<---------------|                |                | 
        |200             |                |                | 
        |--------------->|200             |                | 
        |                |--------------->|200             | 
        |                |                |--------------->| 
        |                |                |                |
    
    ]]></artwork>
          </figure>
        </section>

        <section title="Failed Session Completion">
          <t>Session completion fails when an INVITE is sent from a UAC, but
          there is no indication the INVITE reached the intended UAS. This can
          also occur if the intended UAS does not respond to the UAC or the
          response never reaches the UAC associated with the session.</t>

          <t>The following dialog provides an example describing the necessary
          events of an unsuccessful session completion:</t>

          <figure>
            <artwork><![CDATA[
    
       UA1           Proxy 1          Proxy 2             UA2 
        |                |                |                | 
        |INVITE          |                |                | 
        |--------------->|                |                | 
        |             407|                |                | 
        |<---------------|                |                | 
        |ACK             |                |                | 
        |--------------->|                |                | 
        |INVITE          |                |                | 
        |--------------->|INVITE          |                | 
        |             100|--------------->|INVITE          | 
        |<---------------|             100|--------------->| 
        |                |<---------------|                | 
        |                |                |INVITE          | 
        |                |                |--------------->| 
        |                |                |                | 
        |                |                |INVITE          | 
        |                |                |--------------->| 
        |                |                |                | 
        |                |             408|                | 
        |             408|<---------------|                | 
        |<---------------|ACK             |                | 
        |                |--------------->|                | 
        |ACK             |                |                | 
        |--------------->|                |                |
    
    ]]></artwork>
          </figure>
        </section>
      </section>

      <section title="Session Success Ratio (SSR)">
        <t>Session success ratio is defined as the percentage of successfully
        completed sessions compared to sessions, which fail due to ISA or SDF.
        This metric is also known as Call Success Ratio (CSR) in telephony
        applications of SIP. The output value of this metric is numerical and
        SHOULD be adjusted to indicate a percentage of successful sessions.
        The SSR is calculated using the following formula:</t>

        <t>SSR = 100% - (ISA% + SDF%)</t>
      </section>
    </section>

    <section title="Metric Correlations">
      <t>These metrics may be used to determine the performance of a domain
      and/or user. This would be to provide a metric relative to one or more
      dimensions. The following is a subset of dimensions for providing
      further granularity per metric:</t>

      <t><list style="symbols">
          <t>To "user"</t>

          <t>From "user"</t>

          <t>Bi-direction "user"</t>

          <t>To "domain"</t>

          <t>From "domain"</t>

          <t>Bi-direction "domain"</t>
        </list></t>
    </section>

    <section title="Additional Considerations">
      <section title="Back-to-back User Agent (B2BUA)">
        <t>A B2BUA may impact the ability to collect these metrics with an
        end- to-end perspective. It is necessary to realize a B2BUA may act as
        an originating UAC and terminating UAS or it may act as a proxy. In
        some cases, it may be necessary to consider information collected from
        both sides of the B2BUA in order to determine the end-to-end
        perspective. In other cases, the B2BUA may act simply as a proxy
        allowing data to be derived as necessary for the input into any of the
        listed calculations.</t>
      </section>

      <section title="Authorization and Authentication">
        <t>During the process of setting up a SIP dialog, various
        authentication methods may be utilized. These authentication methods
        will add to the duration as measured by the metrics, and the length of
        time will vary based on those methods. The failures of these
        authentication methods will also be captured by these metrics, since
        SIP is ultimately used to indicate the success or failure of the
        authorization and/or authentication attempt. The metrics in section 3
        are inclusive of the duration associated with this process, even if
        the method is external to the SIP protocol. This was included
        purposefully, due to its inherent impact on the protocol and the
        subsequent SIP dialogs.</t>
      </section>

      <section title="Forking">
        <t>Forking SHOULD be considered when determining the messages
        associated with the input values for the described metrics. If all of
        the forked dialogs were used in the metric calculations, the numbers
        would skew dramatically. There are two different points of forking,
        which MUST be considered. First, forking may occur at a proxy
        downstream from the UAC that is being used for metric input values.
        Since, the downstream proxy is responsible for forking a message and
        then only sending the accepted response to the UAC, the UAC will only
        see messages as indicated in the described metrics. Second, in the
        cases where the observed UAC or proxy is forking the messages, then it
        MUST utilize the first INVITE or set of INVITE messages sent and the
        first accepted 200 OK. A tag will identify this dialog as distinct
        from the other 200 OK responses, which are acknowledged and an
        immediate BYE is sent. The application responsible for capturing
        and/or understanding the input values MUST utilize this tag to
        distinguish between dialogs.</t>
      </section>

      <section title="Data Collection">
        <t>The input necessary for these calculations may be collected in a
        number of different manners. It may be collected or retrieved from
        call detail records (CDR) or raw signaling information generated by a
        proxy or UA. When using records, time synchronization MUST be
        considered between applicable elements.</t>

        <t>The information may also be transmitted through the use of network
        management protocols like Simple Network Management Protocol (SNMP)
        and via future extensions to the SIP Management Information Base (MIB)
        modules <xref target="RFC4780"></xref>, or through a potential
        undefined new performance metric event package <xref
        target="RFC3265"></xref> retrieved via SUBSCRIBE requests.</t>

        <t>Data may be collected for a sample of calls or all calls, and may
        also be derived from test call scenarios. These metrics are flexible
        based on the needs of the application.</t>
      </section>

      <section title="Testing Documentation">
        <t>In some cases, these metrics will be used to provide output values
        to signify the performance level of a specific SIP-based element. When
        using these metrics in a test environment, the environment MUST be
        accurately documented for the purposes of replicating any output
        values in future testing and/or validation.</t>
      </section>
    </section>

    <section title="Conclusions">
      <t>The proposed guideline provides a description of common performance
      metrics, and their defined use with SIP. The use of these metrics will
      provide a common viewpoint across all vendors, service providers, and
      users. These metrics will likely be utilized in production SIP
      environments for providing input regarding Key Performance Indicators
      (KPI) and Service Level Agreement (SLA) indications; however, they may
      also be used for testing end-to-end SIP-based service environments.</t>
    </section>

    <section anchor="IANA" title="IANA Considerations">
      <t>There are no IANA considerations at this time.</t>
    </section>

    <section anchor="Security" title="Security Considerations">
      <t>Security SHOULD be considered in the aspect of securing the relative
      data utilized in providing input to the above calculations. All other
      aspects of security SHOULD be considered as described in <xref
      target="RFC3261">RFC 3261</xref>.</t>
    </section>

    <section anchor="Contributors" title="Contributors">
      <t>The following people made substantial contributions to this work:</t>

      <figure>
        <artwork><![CDATA[
   
   Carol Davids         Illinois Institute of Technology 
   Marian Delkinov      Ericsson 
   Adam Uzelac          Global Crossing 
   Jean-Francois Mule   CableLabs 
   Rich Terpstra        Level 3 Communications
   
   ]]></artwork>
      </figure>
    </section>

    <section anchor="Acknowledgements" title="Acknowledgements">
      <t>We would like to thank John Hearty and Dean Bayless for their efforts
      in reviewing the draft and providing insight regarding clarification of
      certain aspects described throughout the draft. We also thank Dan
      Romascanu for his insightful comments and Vijay Gurbani for agreeing to
      perform the role of document shepherd.</t>
    </section>
  </middle>

  <back>
    <!-- References split into informative and normative -->

    <references title="Normative References">
      <!--?rfc include="http://xml.resource.org/public/rfc/bibxml/reference.RFC.2119.xml"?-->

      &RFC2119;

      &RFC3261;

      &RFC3265;

      &RFC3665;

      &RFC3326;

      &RFC3428;

      &RFC4780;

      <reference anchor="GR-512">
        <front>
          <title>LSSGR: Reliability, Section 12</title>

          <author>
            <organization>Telcordia</organization>
          </author>

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

        <seriesInfo name="GR-512-CORE" value="Issue 2" />
      </reference>

      <reference anchor="E.411">
        <front>
          <title>Series E: Overall Network Operation, Telephone Service,
          Service Operation and Human Factors</title>

          <author>
            <organization>ITU-T</organization>
          </author>

          <date month="March" year="2000" />
        </front>

        <seriesInfo name="E.411" value="" />
      </reference>

      <reference anchor="E.721">
        <front>
          <title>Series E: Overall Network Operation, Telephone Service,
          Service Operation and Human Factors</title>

          <author>
            <organization>ITU-T</organization>
          </author>

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

        <seriesInfo name="E.411" value="" />
      </reference>
    </references>

    <references title="Informative References">
      <!-- Here we use entities that we defined at the beginning. -->

      &RFC3398;

      &RFC2330;
    </references>
  </back>
</rfc>

PAFTECH AB 2003-20262026-04-24 03:16:23