Registry for Performance Metrics
draft-ietf-ippm-metric-registry-24

Network Working Group                                         M. Bagnulo
Internet-Draft                                                      UC3M
Intended status: Standards Track                               B. Claise
Expires: September 10, 2020                          Cisco Systems, Inc.
                                                              P. Eardley
                                                                      BT
                                                               A. Morton
                                                               AT&T Labs
                                                               A. Akhter
                                                              Consultant
                                                           March 9, 2020


                    Registry for Performance Metrics
                   draft-ietf-ippm-metric-registry-24

Abstract

   This document defines the format for the IANA Performance Metrics
   Registry.  This document also gives a set of guidelines for
   Registered Performance Metric requesters and reviewers.

Status of This Memo

   This Internet-Draft is submitted in full conformance with the
   provisions of BCP 78 and BCP 79.

   Internet-Drafts are working documents of the Internet Engineering
   Task Force (IETF).  Note that other groups may also distribute
   working documents as Internet-Drafts.  The list of current Internet-
   Drafts is at https://datatracker.ietf.org/drafts/current/.

   Internet-Drafts are draft documents valid for a maximum of six months
   and may be updated, replaced, or obsoleted by other documents at any
   time.  It is inappropriate to use Internet-Drafts as reference
   material or to cite them other than as "work in progress."

   This Internet-Draft will expire on September 10, 2020.

Copyright Notice

   Copyright (c) 2020 IETF Trust and the persons identified as the
   document authors.  All rights reserved.

   This document is subject to BCP 78 and the IETF Trust's Legal
   Provisions Relating to IETF Documents
   (https://trustee.ietf.org/license-info) in effect on the date of
   publication of this document.  Please review these documents



Bagnulo, et al.        Expires September 10, 2020               [Page 1]


Internet-Draft      Registry for Performance Metrics          March 2020


   carefully, as they describe your rights and restrictions with respect
   to this document.  Code Components extracted from this document must
   include Simplified BSD License text as described in Section 4.e of
   the Trust Legal Provisions and are provided without warranty as
   described in the Simplified BSD License.

Table of Contents

   1.  Introduction  . . . . . . . . . . . . . . . . . . . . . . . .   4
   2.  Terminology . . . . . . . . . . . . . . . . . . . . . . . . .   5
   3.  Scope . . . . . . . . . . . . . . . . . . . . . . . . . . . .   7
   4.  Motivation for a Performance Metrics Registry . . . . . . . .   8
     4.1.  Interoperability  . . . . . . . . . . . . . . . . . . . .   8
     4.2.  Single point of reference for Performance Metrics . . . .   9
     4.3.  Side benefits . . . . . . . . . . . . . . . . . . . . . .   9
   5.  Criteria for Performance Metrics Registration . . . . . . . .   9
   6.  Performance Metric Registry: Prior attempt  . . . . . . . . .  10
     6.1.  Why this Attempt Should Succeed . . . . . . . . . . . . .  11
   7.  Definition of the Performance Metric Registry . . . . . . . .  11
     7.1.  Summary Category  . . . . . . . . . . . . . . . . . . . .  13
       7.1.1.  Identifier  . . . . . . . . . . . . . . . . . . . . .  13
       7.1.2.  Name  . . . . . . . . . . . . . . . . . . . . . . . .  13
       7.1.3.  URI . . . . . . . . . . . . . . . . . . . . . . . . .  17
       7.1.4.  Description . . . . . . . . . . . . . . . . . . . . .  17
       7.1.5.  Reference . . . . . . . . . . . . . . . . . . . . . .  17
       7.1.6.  Change Controller . . . . . . . . . . . . . . . . . .  17
       7.1.7.  Version (of Registry Format)  . . . . . . . . . . . .  18
     7.2.  Metric Definition Category  . . . . . . . . . . . . . . .  18
       7.2.1.  Reference Definition  . . . . . . . . . . . . . . . .  18
       7.2.2.  Fixed Parameters  . . . . . . . . . . . . . . . . . .  18
     7.3.  Method of Measurement Category  . . . . . . . . . . . . .  19
       7.3.1.  Reference Method  . . . . . . . . . . . . . . . . . .  19
       7.3.2.  Packet Stream Generation  . . . . . . . . . . . . . .  19
       7.3.3.  Traffic Filter  . . . . . . . . . . . . . . . . . . .  20
       7.3.4.  Sampling Distribution . . . . . . . . . . . . . . . .  20
       7.3.5.  Run-time Parameters . . . . . . . . . . . . . . . . .  21
       7.3.6.  Role  . . . . . . . . . . . . . . . . . . . . . . . .  22
     7.4.  Output Category . . . . . . . . . . . . . . . . . . . . .  22
       7.4.1.  Type  . . . . . . . . . . . . . . . . . . . . . . . .  22
       7.4.2.  Reference Definition  . . . . . . . . . . . . . . . .  23
       7.4.3.  Metric Units  . . . . . . . . . . . . . . . . . . . .  23
       7.4.4.  Calibration . . . . . . . . . . . . . . . . . . . . .  23
     7.5.  Administrative information  . . . . . . . . . . . . . . .  24
       7.5.1.  Status  . . . . . . . . . . . . . . . . . . . . . . .  24
       7.5.2.  Requester . . . . . . . . . . . . . . . . . . . . . .  24
       7.5.3.  Revision  . . . . . . . . . . . . . . . . . . . . . .  24
       7.5.4.  Revision Date . . . . . . . . . . . . . . . . . . . .  24
     7.6.  Comments and Remarks  . . . . . . . . . . . . . . . . . .  24



Bagnulo, et al.        Expires September 10, 2020               [Page 2]


Internet-Draft      Registry for Performance Metrics          March 2020


   8.  Processes for Managing the Performance Metric Registry Group   24
     8.1.  Adding new Performance Metrics to the Performance Metrics
           Registry  . . . . . . . . . . . . . . . . . . . . . . . .  25
     8.2.  Revising Registered Performance Metrics . . . . . . . . .  26
     8.3.  Deprecating Registered Performance Metrics  . . . . . . .  28
   9.  Security considerations . . . . . . . . . . . . . . . . . . .  28
   10. IANA Considerations . . . . . . . . . . . . . . . . . . . . .  29
     10.1.  Registry Group . . . . . . . . . . . . . . . . . . . . .  29
     10.2.  Performance Metric Name Elements . . . . . . . . . . . .  29
     10.3.  New Performance Metrics Registry . . . . . . . . . . . .  30
   11. Blank Registry Template . . . . . . . . . . . . . . . . . . .  32
     11.1.  Summary  . . . . . . . . . . . . . . . . . . . . . . . .  32
       11.1.1.  ID (Identifier)  . . . . . . . . . . . . . . . . . .  32
       11.1.2.  Name . . . . . . . . . . . . . . . . . . . . . . . .  32
       11.1.3.  URI  . . . . . . . . . . . . . . . . . . . . . . . .  32
       11.1.4.  Description  . . . . . . . . . . . . . . . . . . . .  32
       11.1.5.  Change Controller  . . . . . . . . . . . . . . . . .  32
       11.1.6.  Version (of Registry Format) . . . . . . . . . . . .  32
     11.2.  Metric Definition  . . . . . . . . . . . . . . . . . . .  32
       11.2.1.  Reference Definition . . . . . . . . . . . . . . . .  32
       11.2.2.  Fixed Parameters . . . . . . . . . . . . . . . . . .  32
     11.3.  Method of Measurement  . . . . . . . . . . . . . . . . .  33
       11.3.1.  Reference Method . . . . . . . . . . . . . . . . . .  33
       11.3.2.  Packet Stream Generation . . . . . . . . . . . . . .  33
       11.3.3.  Traffic Filtering (observation) Details  . . . . . .  33
       11.3.4.  Sampling Distribution  . . . . . . . . . . . . . . .  33
       11.3.5.  Run-time Parameters and Data Format  . . . . . . . .  33
       11.3.6.  Roles  . . . . . . . . . . . . . . . . . . . . . . .  33
     11.4.  Output . . . . . . . . . . . . . . . . . . . . . . . . .  33
       11.4.1.  Type . . . . . . . . . . . . . . . . . . . . . . . .  34
       11.4.2.  Reference Definition . . . . . . . . . . . . . . . .  34
       11.4.3.  Metric Units . . . . . . . . . . . . . . . . . . . .  34
       11.4.4.  Calibration  . . . . . . . . . . . . . . . . . . . .  34
     11.5.  Administrative items . . . . . . . . . . . . . . . . . .  34
       11.5.1.  Status . . . . . . . . . . . . . . . . . . . . . . .  34
       11.5.2.  Requester  . . . . . . . . . . . . . . . . . . . . .  34
       11.5.3.  Revision . . . . . . . . . . . . . . . . . . . . . .  34
       11.5.4.  Revision Date  . . . . . . . . . . . . . . . . . . .  34
     11.6.  Comments and Remarks . . . . . . . . . . . . . . . . . .  34
   12. Acknowledgments . . . . . . . . . . . . . . . . . . . . . . .  34
   13. References  . . . . . . . . . . . . . . . . . . . . . . . . .  35
     13.1.  Normative References . . . . . . . . . . . . . . . . . .  35
     13.2.  Informative References . . . . . . . . . . . . . . . . .  36
   Authors' Addresses  . . . . . . . . . . . . . . . . . . . . . . .  37







Bagnulo, et al.        Expires September 10, 2020               [Page 3]


Internet-Draft      Registry for Performance Metrics          March 2020


1.  Introduction

   The IETF specifies and uses Performance Metrics of protocols and
   applications transported over its protocols.  Performance metrics are
   important part of network operations using IETF protocols, and
   [RFC6390] specifies guidelines for their development.

   The definition and use of Performance Metrics in the IETF has been
   fostered in various working groups (WG), most notably:

      The "IP Performance Metrics" (IPPM) WG is the WG primarily
      focusing on Performance Metrics definition at the IETF.

      The "Benchmarking Methodology" WG (BMWG) defines many Performance
      Metrics for use in laboratory benchmarking of inter-networking
      technologies.

      The "Metric Blocks for use with RTCP's Extended Report Framework"
      (XRBLOCK) WG (concluded) specified many Performance Metrics
      related to "RTP Control Protocol Extended Reports (RTCP XR)"
      [RFC3611], which establishes a framework to allow new information
      to be conveyed in RTCP, supplementing the original report blocks
      defined in "RTP: A Transport Protocol for Real-Time Applications",
      [RFC3550].

      The "IP Flow Information eXport" (IPFIX) concluded WG specified an
      IANA process for new Information Elements.  Some Performance
      Metrics related Information Elements are proposed on regular
      basis.

      The "Performance Metrics for Other Layers" (PMOL) a concluded WG
      defined some Performance Metrics related to Session Initiation
      Protocol (SIP) voice quality [RFC6035].

   It is expected that more Performance Metrics will be defined in the
   future, not only IP-based metrics, but also metrics which are
   protocol-specific and application-specific.

   Despite the importance of Performance Metrics, there are two related
   problems for the industry.  First, ensuring that when one party
   requests another party to measure (or report or in some way act on) a
   particular Performance Metric, then both parties have exactly the
   same understanding of what Performance Metric is being referred to.
   Second, discovering which Performance Metrics have been specified, to
   avoid developing a new Performance Metric that is very similar, but
   not quite inter-operable.  These problems can be addressed by
   creating a registry of performance metrics.  The usual way in which
   the IETF organizes registries is with Internet Assigned Numbers



Bagnulo, et al.        Expires September 10, 2020               [Page 4]


Internet-Draft      Registry for Performance Metrics          March 2020


   Authority (IANA), and there is currently no Performance Metrics
   Registry maintained by the IANA.

   This document requests that IANA create and maintain a Performance
   Metrics Registry, according to the maintenance procedures and the
   Performance Metrics Registry format defined in this memo.  The
   resulting Performance Metrics Registry is for use by the IETF and
   others.  Although the Registry formatting specifications herein are
   primarily for registry creation by IANA, any other organization that
   wishes to create a performance metrics registry may use the same
   formatting specifications for their purposes.  The authors make no
   guarantee of the registry format's applicability to any possible set
   of Performance Metrics envisaged by other organizations, but
   encourage others to apply it.  In the remainder of this document,
   unless we explicitly say otherwise, we will refer to the IANA-
   maintained Performance Metrics Registry as simply the Performance
   Metrics Registry.

2.  Terminology

   The key words "MUST", "MUST NOT", "REQUIRED", "SHALL", "SHALL NOT",
   "SHOULD", "SHOULD NOT", "RECOMMENDED", "NOT RECOMMENDED", "MAY", and
   "OPTIONAL" in this document are to be interpreted as described in BCP
   14 [RFC2119] [RFC8174] when, and only when, they appear in all
   capitals, as shown here.

   Performance Metric:  A Performance Metric is a quantitative measure
      of performance, targeted to an IETF-specified protocol or targeted
      to an application transported over an IETF-specified protocol.
      Examples of Performance Metrics are the FTP response time for a
      complete file download, the DNS response time to resolve the IP
      address(es), a database logging time, etc.  This definition is
      consistent with the definition of metric in [RFC2330] and broader
      than the definition of performance metric in [RFC6390].

   Registered Performance Metric:  A Registered Performance Metric is a
      Performance Metric expressed as an entry in the Performance
      Metrics Registry, administered by IANA.  Such a performance metric
      has met all the registry review criteria defined in this document
      in order to be included in the registry.

   Performance Metrics Registry:  The IANA registry containing
      Registered Performance Metrics.

   Proprietary Registry:  A set of metrics that are registered in a
      proprietary registry, as opposed to Performance Metrics Registry.





Bagnulo, et al.        Expires September 10, 2020               [Page 5]


Internet-Draft      Registry for Performance Metrics          March 2020


   Performance Metrics Experts:  The Performance Metrics Experts is a
      group of designated experts [RFC8126] selected by the IESG to
      validate the Performance Metrics before updating the Performance
      Metrics Registry.  The Performance Metrics Experts work closely
      with IANA.

   Parameter:  A Parameter is an input factor defined as a variable in
      the definition of a Performance Metric.  A Parameter is a
      numerical or other specified factor forming one of a set that
      defines a metric or sets the conditions of its operation.  All
      Parameters must be known in order to make a measurement using a
      metric and interpret the results.  There are two types of
      Parameters: Fixed and Run-time parameters.  For the Fixed
      Parameters, the value of the variable is specified in the
      Performance Metrics Registry entry and different Fixed Parameter
      values results in different Registered Performance Metrics.  For
      the Run-time Parameters, the value of the variable is defined when
      the metric measurement method is executed and a given Registered
      Performance Metric supports multiple values for the parameter.
      Although Run-time Parameters do not change the fundamental nature
      of the Performance Metric's definition, some have substantial
      influence on the network property being assessed and
      interpretation of the results.

         Note: Consider the case of packet loss in the following two
         Active Measurement Method cases.  The first case is packet loss
         as background loss where the Run-time Parameter set includes a
         very sparse Poisson stream, and only characterizes the times
         when packets were lost.  Actual user streams likely see much
         higher loss at these times, due to tail drop or radio errors.
         The second case is packet loss as inverse of throughput where
         the Run-time Parameter set includes a very dense, bursty
         stream, and characterizes the loss experienced by a stream that
         approximates a user stream.  These are both "loss metrics", but
         the difference in interpretation of the results is highly
         dependent on the Run-time Parameters (at least), to the extreme
         where we are actually using loss to infer its compliment:
         delivered throughput.

   Active Measurement Method:  Methods of Measurement conducted on
      traffic which serves only the purpose of measurement and is
      generated for that reason alone, and whose traffic characteristics
      are known a priori.  The complete definition of Active Methods is
      specified in section 3.4 of[RFC7799].  Examples of Active
      Measurement Methods are the measurement methods for the One way
      delay metric defined in [RFC7679] and the one for round trip delay
      defined in [RFC2681].




Bagnulo, et al.        Expires September 10, 2020               [Page 6]


Internet-Draft      Registry for Performance Metrics          March 2020


   Passive Measurement Method:  Methods of Measurement conducted on
      network traffic, generated either from the end users or from
      network elements that would exist regardless whether the
      measurement was being conducted or not.  The complete definition
      of Passive Methods is specified in section 3.6 of [RFC7799].  One
      characteristic of Passive Measurement Methods is that sensitive
      information may be observed, and as a consequence, stored in the
      measurement system.

   Hybrid Measurement Method:  Hybrid Methods are Methods of Measurement
      that use a combination of Active Methods and Passive Methods, to
      assess Active Metrics, Passive Metrics, or new metrics derived
      from the a priori knowledge and observations of the stream of
      interest.  The complete definition of Hybrid Methods is specified
      in section 3.8 of [RFC7799].

3.  Scope

   This document is intended for two different audiences:

   1.  For those defining new Registered Performance Metrics, it
       provides specifications and best practices to be used in deciding
       which Registered Performance Metrics are useful for a measurement
       study, instructions for writing the text for each column of the
       Registered Performance Metrics, and information on the supporting
       documentation required for the new Performance Metrics Registry
       entry (up to and including the publication of one or more
       immutable documents such as an RFC).

   2.  For the appointed Performance Metrics Experts and for IANA
       personnel administering the new IANA Performance Metrics
       Registry, it defines a set of acceptance criteria against which
       these proposed Registered Performance Metrics should be
       evaluated.

   In addition, this document may be useful for other organizations who
   are defining a Performance Metric registry of their own, and may re-
   use the features of the Performance Metrics Registry defined in this
   document.

   This Performance Metrics Registry is applicable to Performance
   Metrics issued from Active Measurement, Passive Measurement, and any
   other form of Performance Metric.  This registry is designed to
   encompass Performance Metrics developed throughout the IETF and
   especially for the technologies specified in the following working
   groups: IPPM, XRBLOCK, IPFIX, and BMWG.  This document analyzes a
   prior attempt to set up a Performance Metrics Registry, and the
   reasons why this design was inadequate [RFC6248].  Finally, this



Bagnulo, et al.        Expires September 10, 2020               [Page 7]


Internet-Draft      Registry for Performance Metrics          March 2020


   document gives a set of guidelines for requesters and expert
   reviewers of candidate Registered Performance Metrics.

   This document makes no attempt to populate the Performance Metrics
   Registry with initial entries; the related memo
   [I-D.ietf-ippm-initial-registry] proposes the initial set of regsitry
   entries.

4.  Motivation for a Performance Metrics Registry

   In this section, we detail several motivations for the Performance
   Metrics Registry.

4.1.  Interoperability

   As with any IETF registry, the primary intention is to manage
   registration of identifiers for use within one or more protocols.  In
   the particular case of the Performance Metrics Registry, there are
   two types of protocols that will use the Performance Metrics in the
   Performance Metrics Registry during their operation (by referring to
   the Index values):

   o  Control protocol: This type of protocol used to allow one entity
      to request another entity to perform a measurement using a
      specific metric defined by the Performance Metrics Registry.  One
      particular example is the LMAP framework [RFC7594].  Using the
      LMAP terminology, the Performance Metrics Registry is used in the
      LMAP Control protocol to allow a Controller to schedule a
      measurement task for one or more Measurement Agents.  In order to
      enable this use case, the entries of the Performance Metrics
      Registry must be sufficiently defined to allow a Measurement Agent
      implementation to trigger a specific measurement task upon the
      reception of a control protocol message.  This requirement heavily
      constrains the type of entries that are acceptable for the
      Performance Metrics Registry.

   o  Report protocol: This type of protocol is used to allow an entity
      to report measurement results to another entity.  By referencing
      to a specific Performance Metrics Registry, it is possible to
      properly characterize the measurement result data being reported.
      Using the LMAP terminology, the Performance Metrics Registry is
      used in the Report protocol to allow a Measurement Agent to report
      measurement results to a Collector.

   It should be noted that the LMAP framework explicitly allows for
   using not only the IANA-maintained Performance Metrics Registry but
   also other registries containing Performance Metrics, either defined
   by other organizations or private ones.  However, others who are



Bagnulo, et al.        Expires September 10, 2020               [Page 8]


Internet-Draft      Registry for Performance Metrics          March 2020


   creating Registries to be used in the context of an LMAP framework
   are encouraged to use the Registry format defined in this document,
   because this makes it easier for developers of LMAP Measurement
   Agents (MAs) to programmatically use information found in those other
   Registries' entries.

4.2.  Single point of reference for Performance Metrics

   A Performance Metrics Registry serves as a single point of reference
   for Performance Metrics defined in different working groups in the
   IETF.  As we mentioned earlier, there are several WGs that define
   Performance Metrics in the IETF and it is hard to keep track of all
   them.  This results in multiple definitions of similar Performance
   Metrics that attempt to measure the same phenomena but in slightly
   different (and incompatible) ways.  Having a registry would allow the
   IETF community and others to have a single list of relevant
   Performance Metrics defined by the IETF (and others, where
   appropriate).  The single list is also an essential aspect of
   communication about Performance Metrics, where different entities
   that request measurements, execute measurements, and report the
   results can benefit from a common understanding of the referenced
   Performance Metric.

4.3.  Side benefits

   There are a couple of side benefits of having such a registry.
   First, the Performance Metrics Registry could serve as an inventory
   of useful and used Performance Metrics, that are normally supported
   by different implementations of measurement agents.  Second, the
   results of measurements using the Performance Metrics should be
   comparable even if they are performed by different implementations
   and in different networks, as the Performance Metric is properly
   defined.  BCP 176 [RFC6576] examines whether the results produced by
   independent implementations are equivalent in the context of
   evaluating the completeness and clarity of metric specifications.
   This BCP defines the standards track advancement testing for (active)
   IPPM metrics, and the same process will likely suffice to determine
   whether Registered Performance Metrics are sufficiently well
   specified to result in comparable (or equivalent) results.
   Registered Performance Metrics which have undergone such testing
   SHOULD be noted, with a reference to the test results.

5.  Criteria for Performance Metrics Registration

   It is neither possible nor desirable to populate the Performance
   Metrics Registry with all combinations of Parameters of all
   Performance Metrics.  The Registered Performance Metrics SHOULD be:




Bagnulo, et al.        Expires September 10, 2020               [Page 9]


Internet-Draft      Registry for Performance Metrics          March 2020


   1.  interpretable by the user.

   2.  implementable by the software or hardware designer,

   3.  deployable by network operators,

   4.  accurate in terms of producing equivalent results, and for
       interoperability and deployment across vendors,

   5.  Operationally useful, so that it has significant industry
       interest and/or has seen deployment,

   6.  Sufficiently tightly defined, so that different values for the
       Run-time Parameters does not change the fundamental nature of the
       measurement, nor change the practicality of its implementation.

   In essence, there needs to be evidence that a candidate Registered
   Performance Metric has significant industry interest, or has seen
   deployment, and there is agreement that the candidate Registered
   Performance Metric serves its intended purpose.

6.  Performance Metric Registry: Prior attempt

   There was a previous attempt to define a metric registry RFC 4148
   [RFC4148].  However, it was obsoleted by RFC 6248 [RFC6248] because
   it was "found to be insufficiently detailed to uniquely identify IPPM
   metrics... [there was too much] variability possible when
   characterizing a metric exactly" which led to the RFC4148 registry
   having "very few users, if any".

   A couple of interesting additional quotes from RFC 6248 [RFC6248]
   might help to understand the issues related to that registry.

   1.  "It is not believed to be feasible or even useful to register
       every possible combination of Type P, metric parameters, and
       Stream parameters using the current structure of the IPPM Metrics
       Registry."

   2.  "The registry structure has been found to be insufficiently
       detailed to uniquely identify IPPM metrics."

   3.  "Despite apparent efforts to find current or even future users,
       no one responded to the call for interest in the RFC 4148
       registry during the second half of 2010."

   The current approach learns from this by tightly defining each
   Registered Performance Metric with only a few variable (Run-time)
   Parameters to be specified by the measurement designer, if any.  The



Bagnulo, et al.        Expires September 10, 2020              [Page 10]


Internet-Draft      Registry for Performance Metrics          March 2020


   idea is that entries in the Performance Metrics Registry stem from
   different measurement methods which require input (Run-time)
   parameters to set factors like source and destination addresses
   (which do not change the fundamental nature of the measurement).  The
   downside of this approach is that it could result in a large number
   of entries in the Performance Metrics Registry.  There is agreement
   that less is more in this context - it is better to have a reduced
   set of useful metrics rather than a large set of metrics, some with
   with questionable usefulness.

6.1.  Why this Attempt Should Succeed

   As mentioned in the previous section, one of the main issues with the
   previous registry was that the metrics contained in the registry were
   too generic to be useful.  This document specifies stricter criteria
   for performance metric registration (see section 5), and imposes a
   group of Performance Metrics Experts that will provide guidelines to
   assess if a Performance Metric is properly specified.

   Another key difference between this attempt and the previous one is
   that in this case there is at least one clear user for the
   Performance Metrics Registry: the LMAP framework and protocol.
   Because the LMAP protocol will use the Performance Metrics Registry
   values in its operation, this actually helps to determine if a metric
   is properly defined.  In particular, since we expect that the LMAP
   control protocol will enable a controller to request a measurement
   agent to perform a measurement using a given metric by embedding the
   Performance Metrics Registry identifier in the protocol.  Such a
   metric and method are properly specified if they are defined well-
   enough so that it is possible (and practical) to implement them in
   the measurement agent.  This was the failure of the previous attempt:
   a registry entry with an undefined Type-P (section 13 of RFC 2330
   [RFC2330]) allows implementation to be ambiguous.

7.  Definition of the Performance Metric Registry

   This Performance Metrics Registry is applicable to Performance
   Metrics used for Active Measurement, Passive Measurement, and any
   other form of Performance Measurement.  Each category of measurement
   has unique properties, so some of the columns defined below are not
   applicable for a given metric category.  In this case, the column(s)
   SHOULD be populated with the "NA" value (Non Applicable).  However,
   the "NA" value MUST NOT be used by any metric in the following
   columns: Identifier, Name, URI, Status, Requester, Revision, Revision
   Date, Description.  In the future, a new category of metrics could
   require additional columns, and adding new columns is a recognized
   form of registry extension.  The specification defining the new




Bagnulo, et al.        Expires September 10, 2020              [Page 11]


Internet-Draft      Registry for Performance Metrics          March 2020


   column(s) MUST give general guidelines for populating the new
   column(s) for existing entries.

   The columns of the Performance Metrics Registry are defined below.
   The columns are grouped into "Categories" to facilitate the use of
   the registry.  Categories are described at the 7.x heading level, and
   columns are at the 7.x.y heading level.  The Figure below illustrates
   this organization.  An entry (row) therefore gives a complete
   description of a Registered Performance Metric.

   Each column serves as a check-list item and helps to avoid omissions
   during registration and expert review.

=======================================================================
Legend:
    Registry Categories and Columns are shown below as:
    Category
    ------------------...
    Column |  Column |...
=======================================================================
Summary
------------------------------------------------------------------------
Identifier | Name | URI | Desc. | Reference | Change Controller | Ver |

Metric Definition
-----------------------------------------
Reference Definition | Fixed Parameters |

Method of Measurement
---------------------------------------------------------------------
Reference | Packet     | Traffic | Sampling     | Run-time   | Role |
Method    | Stream     | Filter  | Distribution | Parameters |      |
          | Generation |
Output
-----------------------------------------
Type | Reference  | Units | Calibration |
     | Definition |       |             |

Administrative Information
------------------------------------
Status |Requester | Rev | Rev.Date |

Comments and Remarks
--------------------


   There is a blank template of the Registry template provided in
   Section 11 of this memo.



Bagnulo, et al.        Expires September 10, 2020              [Page 12]


Internet-Draft      Registry for Performance Metrics          March 2020


7.1.  Summary Category

7.1.1.  Identifier

   A numeric identifier for the Registered Performance Metric.  This
   identifier MUST be unique within the Performance Metrics Registry.

   The Registered Performance Metric unique identifier is an unbounded
   integer (range 0 to infinity).

   The Identifier 0 should be Reserved.  The Identifier values from
   64512 to 65536 are reserved for private or experimental use, and the
   user may encounter overlapping uses.

   When adding newly Registered Performance Metrics to the Performance
   Metrics Registry, IANA SHOULD assign the lowest available identifier
   to the new Registered Performance Metric.

   If a Performance Metrics Expert providing review determines that
   there is a reason to assign a specific numeric identifier, possibly
   leaving a temporary gap in the numbering, then the Performance Expert
   SHALL inform IANA of this decision.

7.1.2.  Name

   As the name of a Registered Performance Metric is the first thing a
   potential human implementor will use when determining whether it is
   suitable for their measurement study, it is important to be as
   precise and descriptive as possible.  In future, users will review
   the names to determine if the metric they want to measure has already
   been registered, or if a similar entry is available as a basis for
   creating a new entry.

   Names are composed of the following elements, separated by an
   underscore character "_":

   MetricType_Method_SubTypeMethod_... Spec_Units_Output

   o  MetricType: a combination of the directional properties and the
      metric measured, such as and not limited to:

         RTDelay (Round Trip Delay)

         RTDNS (Response Time Domain Name Service)

         RLDNS (Response Loss Domain Name Service)

         OWDelay (One Way Delay)



Bagnulo, et al.        Expires September 10, 2020              [Page 13]


Internet-Draft      Registry for Performance Metrics          March 2020


         RTLoss (Round Trip Loss)

         OWLoss (One Way Loss)

         OWPDV (One Way Packet Delay Variation)

         OWIPDV (One Way Inter-Packet Delay Variation)

         OWReorder (One Way Packet Reordering)

         OWDuplic (One Way Packet Duplication)

         OWBTC (One Way Bulk Transport Capacity)

         OWMBM (One Way Model Based Metric)

         SPMonitor (Single Point Monitor)

         MPMonitor (Multi-Point Monitor)

   o  Method: One of the methods defined in [RFC7799], such as and not
      limited to:

         Active (depends on a dedicated measurement packet stream and
         observations of the stream)

         Passive (depends *solely* on observation of one or more
         existing packet streams)

         HybridType1 (observations on one stream that combine both
         active and passive methods)

         HybridType2 (observations on two or more streams that combine
         both active and passive methods)

         Spatial (Spatial Metric of RFC5644)

   o  SubTypeMethod: One or more sub-types to further describe the
      features of the entry, such as and not limited to:

         ICMP (Internet Control Message Protocol)

         IP (Internet Protocol)

         DSCPxx (where xx is replaced by a Diffserv code point)

         UDP (User Datagram Protocol)




Bagnulo, et al.        Expires September 10, 2020              [Page 14]


Internet-Draft      Registry for Performance Metrics          March 2020


         TCP (Transport Control Protocol)

         QUIC (QUIC transport protocol)

         HS (Hand-Shake, such as TCP's 3-way HS)

         Poisson (Packet generation using Poisson distribution)

         Periodic (Periodic packet generation)

         SendOnRcv (Sender keeps one packet in-transit by sending when
         previous packet arrives)

         PayloadxxxxB (where xxxx is replaced by an integer, the number
         of octets in the Payload))

         SustainedBurst (Capacity test, worst case)

         StandingQueue (test of bottleneck queue behavior)



      SubTypeMethod values are separated by a hyphen "-" character,
      which indicates that they belong to this element, and that their
      order is unimportant when considering name uniqueness.

   o  Spec: An immutable document identifier combined with a document
      section identifier.  For RFCs, this consists of the RFC number and
      major section number that specifies this Registry entry in the
      form RFCXXXXsecY, such as RFC7799sec3.  Note: the RFC number is
      not the Primary Reference specification for the metric definition,
      such as [RFC7679] for One-way Delay; it will contain the
      placeholder "RFCXXXXsecY" until the RFC number is assigned to the
      specifying document, and would remain blank in private registry
      entries without a corresponding RFC.  Anticipating the "RFC10K"
      problem, the number of the RFC continues to replace RFCXXXX
      regardless of the number of digits in the RFC number.
      Anticipating Registry Entries from other standards bodies, the
      form of this Name Element MUST be proposed and reviewed for
      consistency and uniqueness by the Expert Reviewer.

   o  Units: The units of measurement for the output, such as and not
      limited to:

         Seconds

         Ratio (unitless)




Bagnulo, et al.        Expires September 10, 2020              [Page 15]


Internet-Draft      Registry for Performance Metrics          March 2020


         Percent (value multiplied by 100%)

         Logical (1 or 0)

         Packets

         BPS (Bits per Second)

         PPS (Packets per Second)

         EventTotal (for unit-less counts)

         Multiple (more than one type of unit)

         Enumerated (a list of outcomes)

         Unitless

   o  Output: The type of output resulting from measurement, such as and
      not limited to:

         Singleton

         Raw (multiple Singletons)

         Count

         Minimum

         Maximum

         Median

         Mean

         95Percentile (95th Percentile)

         99Percentile (99th Percentile)

         StdDev (Standard Deviation)

         Variance

         PFI (Pass, Fail, Inconclusive)

         FlowRecords (descriptions of flows observed)

         LossRatio (lost packets to total packets, <=1)



Bagnulo, et al.        Expires September 10, 2020              [Page 16]


Internet-Draft      Registry for Performance Metrics          March 2020


   An example is:

   RTDelay_Active_IP-UDP-Periodic_RFCXXXXsecY_Seconds_95Percentile

   as described in section 4 of [I-D.ietf-ippm-initial-registry].

   Note that private registries following the format described here
   SHOULD use the prefix "Priv_" on any name to avoid unintended
   conflicts (further considerations are described in section 10).
   Private registry entries usually have no specifying RFC, thus the
   Spec: element has no clear interpretation.

7.1.3.  URI

   The URIs column MUST contain a URL [RFC3986] that uniquely identifies
   and locates the metric entry so it is accessible through the
   Internet.  The URL points to a file containing all the human-readable
   information for one registry entry.  The URL SHALL reference a target
   file that is preferably HTML-formatted and contains URLs to
   referenced sections of HTML-ized RFCs, or other reference
   specifications.  These target files for different entries can be more
   easily edited and re-used when preparing new entries.  The exact form
   of the URL for each target file, and the target file itself, will be
   determined by IANA and reside on "iana.org".  The major sections of
   [I-D.ietf-ippm-initial-registry] provide an example of a target file
   in HTML form (sections 4 and higher).

7.1.4.  Description

   A Registered Performance Metric description is a written
   representation of a particular Performance Metrics Registry entry.
   It supplements the Registered Performance Metric name to help
   Performance Metrics Registry users select relevant Registered
   Performance Metrics.

7.1.5.  Reference

   This entry gives the specification containing the candidate registry
   entry which was reviewed and agreed, if such an RFC or other
   specification exists.

7.1.6.  Change Controller

   This entry names the entity responsible for approving revisions to
   the registry entry, and SHALL provide contact information (for an
   individual, where appropriate).





Bagnulo, et al.        Expires September 10, 2020              [Page 17]


Internet-Draft      Registry for Performance Metrics          March 2020


7.1.7.  Version (of Registry Format)

   This entry gives the version number for the registry format used.
   Formats complying with this memo MUST use 1.0.  The version number
   SHALL NOT change unless a new RFC is published that changes the
   registry format.  The version number of registry entries SHALL NOT
   change unless the registry entry is updated (following procedures in
   section 8).

7.2.  Metric Definition Category

   This category includes columns to prompt all necessary details
   related to the metric definition, including the immutable document
   reference and values of input factors, called fixed parameters, which
   are left open in the immutable document, but have a particular value
   defined by the performance metric.

7.2.1.  Reference Definition

   This entry provides a reference (or references) to the relevant
   section(s) of the document(s) that define the metric, as well as any
   supplemental information needed to ensure an unambiguous definition
   for implementations.  The reference needs to be an immutable
   document, such as an RFC; for other standards bodies, it is likely to
   be necessary to reference a specific, dated version of a
   specification.

7.2.2.  Fixed Parameters

   Fixed Parameters are Parameters whose value must be specified in the
   Performance Metrics Registry.  The measurement system uses these
   values.

   Where referenced metrics supply a list of Parameters as part of their
   descriptive template, a sub-set of the Parameters will be designated
   as Fixed Parameters.  As an example for active metrics, Fixed
   Parameters determine most or all of the IPPM Framework convention
   "packets of Type-P" as described in [RFC2330], such as transport
   protocol, payload length, TTL, etc.  An example for passive metrics
   is for RTP packet loss calculation that relies on the validation of a
   packet as RTP which is a multi-packet validation controlled by
   MIN_SEQUENTIAL as defined by [RFC3550].  Varying MIN_SEQUENTIAL
   values can alter the loss report and this value could be set as a
   Fixed Parameter.

   Parameters MUST have well-defined names.  For human readers, the
   hanging indent style is preferred, and any Parameter names and




Bagnulo, et al.        Expires September 10, 2020              [Page 18]


Internet-Draft      Registry for Performance Metrics          March 2020


   definitions that do not appear in the Reference Method Specification
   MUST appear in this column (or Run-time Parameters column).

   Parameters MUST have a well-specified data format.

   A Parameter which is a Fixed Parameter for one Performance Metrics
   Registry entry may be designated as a Run-time Parameter for another
   Performance Metrics Registry entry.

7.3.  Method of Measurement Category

   This category includes columns for references to relevant sections of
   the immutable document(s) and any supplemental information needed to
   ensure an unambiguous method for implementations.

7.3.1.  Reference Method

   This entry provides references to relevant sections of immutable
   documents, such as RFC(s) (for other standards bodies, it is likely
   to be necessary to reference a specific, dated version of a
   specification) describing the method of measurement, as well as any
   supplemental information needed to ensure unambiguous interpretation
   for implementations referring to the immutable document text.

   Specifically, this section should include pointers to pseudocode or
   actual code that could be used for an unambiguous implementation.

7.3.2.  Packet Stream Generation

   This column applies to Performance Metrics that generate traffic as
   part of their Measurement Method, including but not necessarily
   limited to Active metrics.  The generated traffic is referred as a
   stream and this column describes its characteristics.

   Each entry for this column contains the following information:

   o  Value: The name of the packet stream scheduling discipline

   o  Reference: the specification where the parameters of the stream
      are defined

   The packet generation stream may require parameters such as the
   average packet rate and distribution truncation value for streams
   with Poisson-distributed inter-packet sending times.  In case such
   parameters are needed, they should be included either in the Fixed
   parameter column or in the run time parameter column, depending on
   whether they will be fixed or will be an input for the metric.




Bagnulo, et al.        Expires September 10, 2020              [Page 19]


Internet-Draft      Registry for Performance Metrics          March 2020


   The simplest example of stream specification is Singleton scheduling
   (see [RFC2330]), where a single atomic measurement is conducted.
   Each atomic measurement could consist of sending a single packet
   (such as a DNS request) or sending several packets (for example, to
   request a webpage).  Other streams support a series of atomic
   measurements in a "sample", with a schedule defining the timing
   between each transmitted packet and subsequent measurement.
   Principally, two different streams are used in IPPM metrics, Poisson
   distributed as described in [RFC2330] and Periodic as described in
   [RFC3432].  Both Poisson and Periodic have their own unique
   parameters, and the relevant set of parameters names and values
   should be included either in the Fixed Parameters column or in the
   Run-time parameter column.

7.3.3.  Traffic Filter

   This column applies to Performance Metrics that observe packets
   flowing through (the device with) the measurement agent i.e. that is
   not necessarily addressed to the measurement agent.  This includes
   but is not limited to Passive Metrics.  The filter specifies the
   traffic that is measured.  This includes protocol field values/
   ranges, such as address ranges, and flow or session identifiers.

   The traffic filter itself depends on needs of the metric itself and a
   balance of an operator's measurement needs and a user's need for
   privacy.  Mechanics for conveying the filter criteria might be the
   BPF (Berkley Packet Filter) or PSAMP [RFC5475] Property Match
   Filtering which reuses IPFIX [RFC7012].  An example BPF string for
   matching TCP/80 traffic to remote destination net 192.0.2.0/24 would
   be "dst net 192.0.2.0/24 and tcp dst port 80".  More complex filter
   engines might be supported by the implementation that might allow for
   matching using Deep Packet Inspection (DPI) technology.

   The traffic filter includes the following information:

      Type: the type of traffic filter used, e.g.  BPF, PSAMP, OpenFlow
      rule, etc. as defined by a normative reference

      Value: the actual set of rules expressed

7.3.4.  Sampling Distribution

   The sampling distribution defines out of all the packets that match
   the traffic filter, which one of those are actually used for the
   measurement.  One possibility is "all" which implies that all packets
   matching the Traffic filter are considered, but there may be other
   sampling strategies.  It includes the following information:




Bagnulo, et al.        Expires September 10, 2020              [Page 20]


Internet-Draft      Registry for Performance Metrics          March 2020


      Value: the name of the sampling distribution

      Reference definition: pointer to the specification where the
      sampling distribution is properly defined.

   The sampling distribution may require parameters.  In case such
   parameters are needed, they should be included either in the Fixed
   parameter column or in the run time parameter column, depending on
   whether they will be fixed or will be an input for the metric.

   Sampling and Filtering Techniques for IP Packet Selection are
   documented in the PSAMP (Packet Sampling) [RFC5475], while the
   Framework for Packet Selection and Reporting, [RFC5474] provides more
   background information.  The sampling distribution parameters might
   be expressed in terms of the Information Model for Packet Sampling
   Exports, [RFC5477], and the Flow Selection Techniques, [RFC7014].

7.3.5.  Run-time Parameters

   Run-Time Parameters are Parameters that must be determined,
   configured into the measurement system, and reported with the results
   for the context to be complete.  However, the values of these
   parameters is not specified in the Performance Metrics Registry (like
   the Fixed Parameters), rather these parameters are listed as an aid
   to the measurement system implementer or user (they must be left as
   variables, and supplied on execution).

   Where metrics supply a list of Parameters as part of their
   descriptive template, a sub-set of the Parameters will be designated
   as Run-Time Parameters.

   Parameters MUST have well defined names.  For human readers, the
   hanging indent style is preferred, and the names and definitions that
   do not appear in the Reference Method Specification MUST appear in
   this column.

   A Data Format for each Run-time Parameter MUST be specified in this
   column, to simplify the control and implementation of measurement
   devices.  For example, parameters that include an IPv4 address can be
   encoded as a 32 bit integer (i.e. binary base64 encoded value) or ip-
   address as defined in [RFC6991].  The actual encoding(s) used must be
   explicitly defined for each Run-time parameter.  IPv6 addresses and
   options MUST be accommodated, allowing Registered Metrics to be used
   in that address family.  Other address families are permissable.

   Examples of Run-time Parameters include IP addresses, measurement
   point designations, start times and end times for measurement, and
   other information essential to the method of measurement.



Bagnulo, et al.        Expires September 10, 2020              [Page 21]


Internet-Draft      Registry for Performance Metrics          March 2020


7.3.6.  Role

   In some methods of measurement, there may be several roles defined,
   e.g., for a one-way packet delay active measurement there is one
   measurement agent that generates the packets and another agent that
   receives the packets.  This column contains the name of the Role(s)
   for this particular entry.  In the one-way delay example above, there
   should be two entries in the Role registry column, one for each Role
   (Source and Destination).  When a measurement agent is instructed to
   perform the "Source" Role for one-way delay metric, the agent knows
   that it is required to generate packets.  The values for this field
   are defined in the reference method of measurement (and this
   frequently results in abbreviated role names such as "Src").

   When the Role column of a registry entry defines more than one Role,
   then the Role SHALL be treated as a Run-time Parameter and supplied
   for execution.  It should be noted that the LMAP framework [RFC7594]
   distinguishes the Role from other Run-time Parameters, and defines a
   special parameter "Roles" inside the registry-grouping function list
   in the LMAP YANG model[RFC8194].

7.4.  Output Category

   For entries which involve a stream and many singleton measurements, a
   statistic may be specified in this column to summarize the results to
   a single value.  If the complete set of measured singletons is
   output, this will be specified here.

   Some metrics embed one specific statistic in the reference metric
   definition, while others allow several output types or statistics.

7.4.1.  Type

   This column contains the name of the output type.  The output type
   defines a single type of result that the metric produces.  It can be
   the raw results (packet send times and singleton metrics), or it can
   be a summary statistic.  The specification of the output type MUST
   define the format of the output.  In some systems, format
   specifications will simplify both measurement implementation and
   collection/storage tasks.  Note that if two different statistics are
   required from a single measurement (for example, both "Xth percentile
   mean" and "Raw"), then a new output type must be defined ("Xth
   percentile mean AND Raw").  See the Naming section above for a list
   of Output Types.







Bagnulo, et al.        Expires September 10, 2020              [Page 22]


Internet-Draft      Registry for Performance Metrics          March 2020


7.4.2.  Reference Definition

   This column contains a pointer to the specification(s) where the
   output type and format are defined.

7.4.3.  Metric Units

   The measured results must be expressed using some standard dimension
   or units of measure.  This column provides the units.

   When a sample of singletons (see Section 11 of[RFC2330] for
   definitions of these terms) is collected, this entry will specify the
   units for each measured value.

7.4.4.  Calibration

   Some specifications for Methods of Measurement include the
   possibility to perform an error calibration.  Section 3.7.3 of
   [RFC7679] is one example.  In the registry entry, this field will
   identify a method of calibration for the metric, and when available,
   the measurement system SHOULD perform the calibration when requested
   and produce the output with an indication that it is the result of a
   calibration method.  In-situ calibration could be enabled with an
   internal loopback that includes as much of the measurement system as
   possible, performs address manipulation as needed, and provides some
   form of isolation (e.g., deterministic delay) to avoid send-receive
   interface contention.  Some portion of the random and systematic
   error can be characterized this way.

   For one-way delay measurements, the error calibration must include an
   assessment of the internal clock synchronization with its external
   reference (this internal clock is supplying timestamps for
   measurement).  In practice, the time offsets of clocks at both the
   source and destination are needed to estimate the systematic error
   due to imperfect clock synchronization (the time offsets are
   smoothed, thus the random variation is not usually represented in the
   results).

   Both internal loopback calibration and clock synchronization can be
   used to estimate the *available accuracy* of the Output Metric Units.
   For example, repeated loopback delay measurements will reveal the
   portion of the Output result resolution which is the result of system
   noise, and thus inaccurate.








Bagnulo, et al.        Expires September 10, 2020              [Page 23]


Internet-Draft      Registry for Performance Metrics          March 2020


7.5.  Administrative information

7.5.1.  Status

   The status of the specification of this Registered Performance
   Metric.  Allowed values are 'current' and 'deprecated'.  All newly
   defined Information Elements have 'current' status.

7.5.2.  Requester

   The requester for the Registered Performance Metric.  The requester
   MAY be a document, such as RFC, or person.

7.5.3.  Revision

   The revision number of a Registered Performance Metric, starting at 0
   for Registered Performance Metrics at time of definition and
   incremented by one for each revision.

7.5.4.  Revision Date

   The date of acceptance or the most recent revision for the Registered
   Performance Metric.  The date SHALL be determined by IANA and the
   reviewing Performance Metrics Expert.

7.6.  Comments and Remarks

   Besides providing additional details which do not appear in other
   categories, this open Category (single column) allows for unforeseen
   issues to be addressed by simply updating this informational entry.

8.  Processes for Managing the Performance Metric Registry Group

   Once a Performance Metric or set of Performance Metrics has been
   identified for a given application, candidate Performance Metrics
   Registry entry specifications prepared in accordance with Section 7
   should be submitted to IANA to follow the process for review by the
   Performance Metric Experts, as defined below.  This process is also
   used for other changes to the Performance Metrics Registry, such as
   deprecation or revision, as described later in this section.

   It is desirable that the author(s) of a candidate Performance Metrics
   Registry entry seek review in the relevant IETF working group, or
   offer the opportunity for review on the working group mailing list.







Bagnulo, et al.        Expires September 10, 2020              [Page 24]


Internet-Draft      Registry for Performance Metrics          March 2020


8.1.  Adding new Performance Metrics to the Performance Metrics Registry

   Requests to add Registered Performance Metrics in the Performance
   Metrics Registry SHALL be submitted to IANA, which forwards the
   request to a designated group of experts (Performance Metric Experts)
   appointed by the IESG; these are the reviewers called for by the
   Specification Required [RFC8126] policy defined for the Performance
   Metrics Registry.  The Performance Metric Experts review the request
   for such things as compliance with this document, compliance with
   other applicable Performance Metric-related RFCs, and consistency
   with the currently defined set of Registered Performance Metrics.
   The most efficient path for submission begins with preparation of an
   Internet Draft containing the proposed Performance Metrics Registry
   entry using the template in Section 11, so that the submission
   formatting will benefit from the normal IETF Internet Draft
   submission processing (including HTML-ization).

   Submission to IANA may be during IESG review (leading to IETF
   Standards Action), where an Internet Draft proposes one or more
   Registered Performance Metrics to be added to the Performance Metrics
   Registry, including the text of the proposed Registered Performance
   Metric(s).

   If an RFC-to-be includes a Performance Metric and a proposed
   Performance Metrics Registry entry, but the Performance Metric Expert
   review determines that one or more of the Section 5 criteria have not
   been met, then the proposed Performance Metrics Registry entry MUST
   be removed from the text.  Once evidence exists that the Performance
   Metric meets the criteria in section 5, the proposed Performance
   Metrics Registry entry SHOULD be submitted to IANA to be evaluated in
   consultation with the Performance Metric Experts for registration at
   that time.

   Authors of proposed Registered Performance Metrics SHOULD review
   compliance with the specifications in this document to check their
   submissions before sending them to IANA.

   At least one Performance Metric Expert should endeavor to complete
   referred reviews in a timely manner.  If the request is acceptable,
   the Performance Metric Experts signify their approval to IANA, and
   IANA updates the Performance Metrics Registry.  If the request is not
   acceptable, the Performance Metric Experts MAY coordinate with the
   requester to change the request to be compliant, otherwise IANA SHALL
   coordinate resolution of issues on behalf of the expert.  The
   Performance Metric Experts MAY choose to reject clearly frivolous or
   inappropriate change requests outright, but such exceptional
   circumstances should be rare.




Bagnulo, et al.        Expires September 10, 2020              [Page 25]


Internet-Draft      Registry for Performance Metrics          March 2020


   This process should not in any way be construed as allowing the
   Performance Metric Experts to overrule IETF consensus.  Specifically,
   any Registered Performance Metrics that were added to the Performance
   Metrics Registry with IETF consensus require IETF consensus for
   revision or deprecation.

   Decisions by the Performance Metric Experts may be appealed as in
   Section 7 of [RFC8126].

8.2.  Revising Registered Performance Metrics

   A request for Revision is only permitted when the requested changes
   maintain backward-compatibility with implementations of the prior
   Performance Metrics Registry entry describing a Registered
   Performance Metric (entries with lower revision numbers, but the same
   Identifier and Name).

   The purpose of the Status field in the Performance Metrics Registry
   is to indicate whether the entry for a Registered Performance Metric
   is 'current' or 'deprecated'.

   In addition, no policy is defined for revising the Performance Metric
   entries in the IANA Registry or addressing errors therein.  To be
   clear, changes and deprecations within the Performance Metrics
   Registry are not encouraged, and should be avoided to the extent
   possible.  However, in recognition that change is inevitable, the
   provisions of this section address the need for revisions.

   Revisions are initiated by sending a candidate Registered Performance
   Metric definition to IANA, as in Section 8.1, identifying the
   existing Performance Metrics Registry entry, and explaining how and
   why the existing entry should be revised.

   The primary requirement in the definition of procedures for managing
   changes to existing Registered Performance Metrics is avoidance of
   measurement interoperability problems; the Performance Metric Experts
   must work to maintain interoperability above all else.  Changes to
   Registered Performance Metrics may only be done in an interoperable
   way; necessary changes that cannot be done in a way to allow
   interoperability with unchanged implementations MUST result in the
   creation of a new Registered Performance Metric (with a new Name,
   replacing the RFCXXXXsecY portion of the name) and possibly the
   deprecation of the earlier metric.

   A change to a Registered Performance Metric SHALL be determined to be
   backward-compatible when:





Bagnulo, et al.        Expires September 10, 2020              [Page 26]


Internet-Draft      Registry for Performance Metrics          March 2020


   1.  it involves the correction of an error that is obviously only
       editorial; or

   2.  it corrects an ambiguity in the Registered Performance Metric's
       definition, which itself leads to issues severe enough to prevent
       the Registered Performance Metric's usage as originally defined;
       or

   3.  it corrects missing information in the metric definition without
       changing its meaning (e.g., the explicit definition of 'quantity'
       semantics for numeric fields without a Data Type Semantics
       value); or

   4.  it harmonizes with an external reference that was itself
       corrected.

   If a Performance Metric revision is deemed permissible and backward-
   compatible by the Performance Metric Experts, according to the rules
   in this document, IANA SHOULD execute the change(s) in the
   Performance Metrics Registry.  The requester of the change is
   appended to the original requester in the Performance Metrics
   Registry.  The Name of the revised Registered Performance Metric,
   including the RFCXXXXsecY portion of the name, SHALL remain unchanged
   (even when the change is the result of IETF Standards Action; the
   revised registry entry SHOULD reference the new immutable document,
   such as an RFC or for other standards bodies, it is likely to be
   necessary to reference a specific, dated version of a specification,
   in an appropriate category and column).

   Each Registered Performance Metric in the Performance Metrics
   Registry has a revision number, starting at zero.  Each change to a
   Registered Performance Metric following this process increments the
   revision number by one.

   When a revised Registered Performance Metric is accepted into the
   Performance Metrics Registry, the date of acceptance of the most
   recent revision is placed into the revision Date column of the
   registry for that Registered Performance Metric.

   Where applicable, additions to Registered Performance Metrics in the
   form of text Comments or Remarks should include the date, but such
   additions may not constitute a revision according to this process.

   Older version(s) of the updated metric entries are kept in the
   registry for archival purposes.  The older entries are kept with all
   fields unmodified (version, revision date) except for the status
   field that SHALL be changed to "Deprecated".




Bagnulo, et al.        Expires September 10, 2020              [Page 27]


Internet-Draft      Registry for Performance Metrics          March 2020


8.3.  Deprecating Registered Performance Metrics

   Changes that are not permissible by the above criteria for Registered
   Performance Metric's revision may only be handled by deprecation.  A
   Registered Performance Metric MAY be deprecated and replaced when:

   1.  the Registered Performance Metric definition has an error or
       shortcoming that cannot be permissibly changed as in Section 8.2
       Revising Registered Performance Metrics; or

   2.  the deprecation harmonizes with an external reference that was
       itself deprecated through that reference's accepted deprecation
       method.

   A request for deprecation is sent to IANA, which passes it to the
   Performance Metric Experts for review.  When deprecating an
   Performance Metric, the Performance Metric description in the
   Performance Metrics Registry must be updated to explain the
   deprecation, as well as to refer to any new Performance Metrics
   created to replace the deprecated Performance Metric.

   The revision number of a Registered Performance Metric is incremented
   upon deprecation, and the revision Date updated, as with any
   revision.

   The intentional use of deprecated Registered Performance Metrics
   should result in a log entry or human-readable warning by the
   respective application.

   Names and Metric IDs of deprecated Registered Performance Metrics
   must not be reused.

   The deprecated entries are kept with all fields unmodified, except
   the version, revision date, and the status field (changed to
   "Deprecated").

9.  Security considerations

   This draft defines a registry structure, and does not itself
   introduce any new security considerations for the Internet.  The
   definition of Performance Metrics for this registry may introduce
   some security concerns, but the mandatory references should have
   their own considerations for security, and such definitions should be
   reviewed with security in mind if the security considerations are not
   covered by one or more reference standards.

   The aggregated results of the performance metrics described in this
   registry might reveal network topology information that may be



Bagnulo, et al.        Expires September 10, 2020              [Page 28]


Internet-Draft      Registry for Performance Metrics          March 2020


   considered sensitive.  If such cases are found, then access control
   mechanisms should be applied.

10.  IANA Considerations

   With the background and processes described in earlier sections, this
   document requests the following IANA Actions.

   Editor's Note: Mock-ups of the implementation of this set of requests
   have been prepared with IANA's help during development of this memo,
   and have been captured in the Proceedings of IPPM working group
   sessions.  IANA is currently preparing a mock-up.  A recent version
   is available here: http://encrypted.net/IETFMetricsRegistry-106.html

10.1.  Registry Group

   The new registry group SHALL be named, "PERFORMANCE METRICS Group".

   Registration Procedure: Specification Required

   Reference: <This RFC>

   Experts: Performance Metrics Experts

   Note: TBD

10.2.  Performance Metric Name Elements

   This document specifies the procedure for Performance Metrics Name
   Element Registry setup.  IANA is requested to create a new set of
   registries for Performance Metric Name Elements called "Registered
   Performance Metric Name Elements".  Each Registry, whose names are
   listed below:

      MetricType:

      Method:

      SubTypeMethod:

      Spec:

      Units:

      Output:

   will contain the current set of possibilities for Performance Metrics
   Registry Entry Names.



Bagnulo, et al.        Expires September 10, 2020              [Page 29]


Internet-Draft      Registry for Performance Metrics          March 2020


   To populate the Registered Performance Metric Name Elements at
   creation, the IANA is asked to use the lists of values for each name
   element listed in Section 7.1.2.  The Name Elements in each registry
   are case-sensitive.

   When preparing a Metric entry for Registration, the developer SHOULD
   choose Name elements from among the registered elements.  However, if
   the proposed metric is unique in a significant way, it may be
   necessary to propose a new Name element to properly describe the
   metric, as described below.

   A candidate Metric Entry RFC or immutable document for IANA and
   Expert Review would propose one or more new element values required
   to describe the unique entry, and the new name element(s) would be
   reviewed along with the metric entry.  New assignments for Registered
   Performance Metric Name Elements will be administered by IANA through
   Specification Required policy (which includes Expert Review)
   [RFC8126], i.e., review by one of a group of experts, the Performance
   Metric Experts, who are appointed by the IESG upon recommendation of
   the Transport Area Directors.

10.3.  New Performance Metrics Registry

   This document specifies the procedure for Performance Metrics
   Registry setup.  IANA is requested to create a new registry for
   Performance Metrics called "Performance Metrics Registry".  This
   Registry will contain the following Summary columns:

      Identifier:

      Name:

      URI:

      Description:

      Reference:

      Change Controller:

      Version:

   Descriptions of these columns and additional information found in the
   template for registry entries (categories and columns) are further
   defined in section Section 7.

   The Identifier 0 should be Reserved.  The Registered Performance
   Metric unique identifier is an unbounded integer (range 0 to



Bagnulo, et al.        Expires September 10, 2020              [Page 30]


Internet-Draft      Registry for Performance Metrics          March 2020


   infinity).  The Identifier values from 64512 to 65536 are reserved
   for private or experimental use, and the user may encounter
   overlapping uses.  When adding newly Registered Performance Metrics
   to the Performance Metrics Registry, IANA SHOULD assign the lowest
   available identifier to the new Registered Performance Metric.  If a
   Performance Metrics Expert providing review determines that there is
   a reason to assign a specific numeric identifier, possibly leaving a
   temporary gap in the numbering, then the Performance Expert SHALL
   inform IANA of this decision.

   Names starting with the prefix Priv_ are reserved for private use,
   and are not considered for registration.  The "Name" column entries
   are further defined in section Section 7.

   The "URI" column will have a URL to the full template of each
   registry entry.  The Registry Entry text SHALL be HTML-ized to aid
   the reader, with links to reference RFCs (similar to the way that
   Internet Drafts are HTML-ized, the same tool can perform the
   function) or immutable document.

   The "Reference" column will include an RFC number, an approved
   specification designator from another standards body, or other
   immutable document.

   New assignments for Performance Metrics Registry will be administered
   by IANA through Specification Required policty (which includes Expert
   Review) [RFC8126], i.e., review by one of a group of experts, the
   Performance Metric Experts, who are appointed by the IESG upon
   recommendation of the Transport Area Directors, or by Standards
   Action.  The experts can be initially drawn from the Working Group
   Chairs, document editors, and members of the Performance Metrics
   Directorate, among other sources of experts.

   Extensions of the Performance Metrics Registry require IETF Standards
   Action.  Only one form of registry extension is envisaged:

   1.  Adding columns, or both categories and columns, to accommodate
       unanticipated aspects of new measurements and metric categories.

   If the Performance Metrics Registry is extended in this way, the
   Version number of future entries complying with the extension SHALL
   be incremented (either in the unit or tenths digit, depending on the
   degree of extension.








Bagnulo, et al.        Expires September 10, 2020              [Page 31]


Internet-Draft      Registry for Performance Metrics          March 2020


11.  Blank Registry Template

   This section provides a blank template to help IANA and registry
   entry writers.

11.1.  Summary

   This category includes multiple indexes to the registry entry: the
   element ID and metric name.

11.1.1.  ID (Identifier)

   <insert a numeric identifier, an integer, TBD>

11.1.2.  Name

   <insert name according to metric naming convention>

11.1.3.  URI

   URL: https://www.iana.org/ ... <name>

11.1.4.  Description

   <provide a description>

11.1.5.  Change Controller

11.1.6.  Version (of Registry Format)

11.2.  Metric Definition

   This category includes columns to prompt the entry of all necessary
   details related to the metric definition, including the immutable
   document reference and values of input factors, called fixed
   parameters.

11.2.1.  Reference Definition

   <Full bibliographic reference to an immutable doc.>

   <specific section reference and additional clarifications, if needed>

11.2.2.  Fixed Parameters

   <list and specify Fixed Parameters, input factors that must be
   determined and embedded in the measurement system for use when
   needed>



Bagnulo, et al.        Expires September 10, 2020              [Page 32]


Internet-Draft      Registry for Performance Metrics          March 2020


11.3.  Method of Measurement

   This category includes columns for references to relevant sections of
   the immutable documents(s) and any supplemental information needed to
   ensure an unambiguous methods for implementations.

11.3.1.  Reference Method

   <for metric, insert relevant section references and supplemental
   info>

11.3.2.  Packet Stream Generation

   <list of generation parameters and section/spec references if needed>

11.3.3.  Traffic Filtering (observation) Details

   The measured results based on a filtered version of the packets
   observed, and this section provides the filter details (when
   present).

   <section reference>.

11.3.4.  Sampling Distribution

   <insert time distribution details, or how this is diff from the
   filter>

11.3.5.  Run-time Parameters and Data Format

   Run-time Parameters are input factors that must be determined,
   configured into the measurement system, and reported with the results
   for the context to be complete.

   <list of run-time parameters, and their data formats>

11.3.6.  Roles

   <lists the names of the different roles from the measurement method>

11.4.  Output

   This category specifies all details of the Output of measurements
   using the metric.







Bagnulo, et al.        Expires September 10, 2020              [Page 33]


Internet-Draft      Registry for Performance Metrics          March 2020


11.4.1.  Type

   <insert name of the output type, raw or a selected summary statistic>

11.4.2.  Reference Definition

   <describe the reference data format for each type of result>

11.4.3.  Metric Units

   <insert units for the measured results, and the reference
   specification>.

11.4.4.  Calibration

   <insert information on calibration>

11.5.  Administrative items

11.5.1.  Status

   <current or deprecated>

11.5.2.  Requester

   <name or RFC, etc.>

11.5.3.  Revision

   <1.0>

11.5.4.  Revision Date

   <format YYYY-MM-DD>

11.6.  Comments and Remarks

   <Additional (Informational) details for this entry>

12.  Acknowledgments

   Thanks to Brian Trammell and Bill Cerveny, IPPM chairs, for leading
   some brainstorming sessions on this topic.  Thanks to Barbara Stark
   and Juergen Schoenwaelder for the detailed feedback and suggestions.
   Thanks to Andrew McGregor for suggestions on metric naming.  Thanks
   to Michelle Cotton for her early IANA review, and to Amanda Barber
   for answering questions related to the presentation of the registry
   and accessibility of the complete template via URL.  Thanks to Roni



Bagnulo, et al.        Expires September 10, 2020              [Page 34]


Internet-Draft      Registry for Performance Metrics          March 2020


   Even for his review and suggestions to generalize the procedures.
   Thanks to ~all the Area Directors for their reviews.

13.  References

13.1.  Normative References

   [RFC2026]  Bradner, S., "The Internet Standards Process -- Revision
              3", BCP 9, RFC 2026, DOI 10.17487/RFC2026, October 1996,
              <https://www.rfc-editor.org/info/rfc2026>.

   [RFC2119]  Bradner, S., "Key words for use in RFCs to Indicate
              Requirement Levels", BCP 14, RFC 2119,
              DOI 10.17487/RFC2119, March 1997,
              <https://www.rfc-editor.org/info/rfc2119>.

   [RFC2330]  Paxson, V., Almes, G., Mahdavi, J., and M. Mathis,
              "Framework for IP Performance Metrics", RFC 2330,
              DOI 10.17487/RFC2330, May 1998,
              <https://www.rfc-editor.org/info/rfc2330>.

   [RFC3986]  Berners-Lee, T., Fielding, R., and L. Masinter, "Uniform
              Resource Identifier (URI): Generic Syntax", STD 66,
              RFC 3986, DOI 10.17487/RFC3986, January 2005,
              <https://www.rfc-editor.org/info/rfc3986>.

   [RFC6390]  Clark, A. and B. Claise, "Guidelines for Considering New
              Performance Metric Development", BCP 170, RFC 6390,
              DOI 10.17487/RFC6390, October 2011,
              <https://www.rfc-editor.org/info/rfc6390>.

   [RFC6576]  Geib, R., Ed., Morton, A., Fardid, R., and A. Steinmitz,
              "IP Performance Metrics (IPPM) Standard Advancement
              Testing", BCP 176, RFC 6576, DOI 10.17487/RFC6576, March
              2012, <https://www.rfc-editor.org/info/rfc6576>.

   [RFC7799]  Morton, A., "Active and Passive Metrics and Methods (with
              Hybrid Types In-Between)", RFC 7799, DOI 10.17487/RFC7799,
              May 2016, <https://www.rfc-editor.org/info/rfc7799>.

   [RFC8126]  Cotton, M., Leiba, B., and T. Narten, "Guidelines for
              Writing an IANA Considerations Section in RFCs", BCP 26,
              RFC 8126, DOI 10.17487/RFC8126, June 2017,
              <https://www.rfc-editor.org/info/rfc8126>.

   [RFC8174]  Leiba, B., "Ambiguity of Uppercase vs Lowercase in RFC
              2119 Key Words", BCP 14, RFC 8174, DOI 10.17487/RFC8174,
              May 2017, <https://www.rfc-editor.org/info/rfc8174>.



Bagnulo, et al.        Expires September 10, 2020              [Page 35]


Internet-Draft      Registry for Performance Metrics          March 2020


13.2.  Informative References

   [I-D.ietf-ippm-initial-registry]
              Morton, A., Bagnulo, M., Eardley, P., and K. D'Souza,
              "Initial Performance Metrics Registry Entries", draft-
              ietf-ippm-initial-registry-15 (work in progress), December
              2019.

   [RFC2681]  Almes, G., Kalidindi, S., and M. Zekauskas, "A Round-trip
              Delay Metric for IPPM", RFC 2681, DOI 10.17487/RFC2681,
              September 1999, <https://www.rfc-editor.org/info/rfc2681>.

   [RFC3432]  Raisanen, V., Grotefeld, G., and A. Morton, "Network
              performance measurement with periodic streams", RFC 3432,
              DOI 10.17487/RFC3432, November 2002,
              <https://www.rfc-editor.org/info/rfc3432>.

   [RFC3550]  Schulzrinne, H., Casner, S., Frederick, R., and V.
              Jacobson, "RTP: A Transport Protocol for Real-Time
              Applications", STD 64, RFC 3550, DOI 10.17487/RFC3550,
              July 2003, <https://www.rfc-editor.org/info/rfc3550>.

   [RFC3611]  Friedman, T., Ed., Caceres, R., Ed., and A. Clark, Ed.,
              "RTP Control Protocol Extended Reports (RTCP XR)",
              RFC 3611, DOI 10.17487/RFC3611, November 2003,
              <https://www.rfc-editor.org/info/rfc3611>.

   [RFC4148]  Stephan, E., "IP Performance Metrics (IPPM) Metrics
              Registry", BCP 108, RFC 4148, DOI 10.17487/RFC4148, August
              2005, <https://www.rfc-editor.org/info/rfc4148>.

   [RFC5474]  Duffield, N., Ed., Chiou, D., Claise, B., Greenberg, A.,
              Grossglauser, M., and J. Rexford, "A Framework for Packet
              Selection and Reporting", RFC 5474, DOI 10.17487/RFC5474,
              March 2009, <https://www.rfc-editor.org/info/rfc5474>.

   [RFC5475]  Zseby, T., Molina, M., Duffield, N., Niccolini, S., and F.
              Raspall, "Sampling and Filtering Techniques for IP Packet
              Selection", RFC 5475, DOI 10.17487/RFC5475, March 2009,
              <https://www.rfc-editor.org/info/rfc5475>.

   [RFC5477]  Dietz, T., Claise, B., Aitken, P., Dressler, F., and G.
              Carle, "Information Model for Packet Sampling Exports",
              RFC 5477, DOI 10.17487/RFC5477, March 2009,
              <https://www.rfc-editor.org/info/rfc5477>.






Bagnulo, et al.        Expires September 10, 2020              [Page 36]


Internet-Draft      Registry for Performance Metrics          March 2020


   [RFC6035]  Pendleton, A., Clark, A., Johnston, A., and H. Sinnreich,
              "Session Initiation Protocol Event Package for Voice
              Quality Reporting", RFC 6035, DOI 10.17487/RFC6035,
              November 2010, <https://www.rfc-editor.org/info/rfc6035>.

   [RFC6248]  Morton, A., "RFC 4148 and the IP Performance Metrics
              (IPPM) Registry of Metrics Are Obsolete", RFC 6248,
              DOI 10.17487/RFC6248, April 2011,
              <https://www.rfc-editor.org/info/rfc6248>.

   [RFC6991]  Schoenwaelder, J., Ed., "Common YANG Data Types",
              RFC 6991, DOI 10.17487/RFC6991, July 2013,
              <https://www.rfc-editor.org/info/rfc6991>.

   [RFC7012]  Claise, B., Ed. and B. Trammell, Ed., "Information Model
              for IP Flow Information Export (IPFIX)", RFC 7012,
              DOI 10.17487/RFC7012, September 2013,
              <https://www.rfc-editor.org/info/rfc7012>.

   [RFC7014]  D'Antonio, S., Zseby, T., Henke, C., and L. Peluso, "Flow
              Selection Techniques", RFC 7014, DOI 10.17487/RFC7014,
              September 2013, <https://www.rfc-editor.org/info/rfc7014>.

   [RFC7594]  Eardley, P., Morton, A., Bagnulo, M., Burbridge, T.,
              Aitken, P., and A. Akhter, "A Framework for Large-Scale
              Measurement of Broadband Performance (LMAP)", RFC 7594,
              DOI 10.17487/RFC7594, September 2015,
              <https://www.rfc-editor.org/info/rfc7594>.

   [RFC7679]  Almes, G., Kalidindi, S., Zekauskas, M., and A. Morton,
              Ed., "A One-Way Delay Metric for IP Performance Metrics
              (IPPM)", STD 81, RFC 7679, DOI 10.17487/RFC7679, January
              2016, <https://www.rfc-editor.org/info/rfc7679>.

   [RFC8194]  Schoenwaelder, J. and V. Bajpai, "A YANG Data Model for
              LMAP Measurement Agents", RFC 8194, DOI 10.17487/RFC8194,
              August 2017, <https://www.rfc-editor.org/info/rfc8194>.

Authors' Addresses












Bagnulo, et al.        Expires September 10, 2020              [Page 37]


Internet-Draft      Registry for Performance Metrics          March 2020


   Marcelo Bagnulo
   Universidad Carlos III de Madrid
   Av. Universidad 30
   Leganes, Madrid  28911
   SPAIN

   Phone: 34 91 6249500
   Email: marcelo@it.uc3m.es
   URI:   http://www.it.uc3m.es


   Benoit Claise
   Cisco Systems, Inc.
   De Kleetlaan 6a b1
   1831 Diegem
   Belgium

   Email: bclaise@cisco.com


   Philip Eardley
   BT
   Adastral Park, Martlesham Heath
   Ipswich
   ENGLAND

   Email: philip.eardley@bt.com


   Al Morton
   AT&T Labs
   200 Laurel Avenue South
   Middletown, NJ
   USA

   Email: acmorton@att.com


   Aamer Akhter
   Consultant
   118 Timber Hitch
   Cary, NC
   USA

   Email: aakhter@gmail.com






Bagnulo, et al.        Expires September 10, 2020              [Page 38]