Initial Performance Metrics Registry
EntriesAT&T Labs200 Laurel Avenue SouthMiddletown,NJ07748USA+1 732 420 1571+1 732 368 1192acmorton@att.comUniversidad Carlos III de
MadridAv. Universidad 30LeganesMadrid28911SPAIN34 91 6249500marcelo@it.uc3m.eshttp://www.it.uc3m.esBTAdastral Park, Martlesham HeathIpswichENGLANDphilip.eardley@bt.comAT&T Labs200 Laurel Avenue SouthMiddletown,NJ07748USA+1 732 420 xxxxkld@att.comThis memo defines the set of Initial Entries for the IANA Performance
Metrics Registry. The set includes, UDP Round-trip Latency and Loss,
Packet Delay Variation, DNS Response Latency and Loss, UDP Poisson
One-way Delay and Loss, UDP Periodic One-way Delay and Loss, ICMP
Round-trip Latency and Loss, and TCP round-trip Latency and Loss.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 when, and only when,
they appear in all capitals, as shown here.This memo proposes an initial set of entries for the Performance
Metrics Registry. It uses terms and definitions from the IPPM
literature, primarily .Although there are several standard templates for organizing
specifications of performance metrics (see for
an example of the traditional IPPM template, based to large extent on
the Benchmarking Methodology Working Group's traditional template in
, and see for a similar
template), none of these templates were intended to become the basis for
the columns of an IETF-wide registry of metrics. While examining aspects
of metric specifications which need to be registered, it became clear
that none of the existing metric templates fully satisfies the
particular needs of a registry.Therefore, defines the
overall format for a Performance Metrics Registry. Section 5 of also gives guidelines for those
requesting registration of a Metric, that is the creation of entry(s) in
the Performance Metrics Registry: "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." The process in
also requires that new entries are administered by IANA through Expert
Review or IETF Standards action, which will ensure that the metrics are
tightly defined.This document defines the initial set of Performance Metrics Registry
entries, for which IETF approval (following development in the IP
Performance Metrics (IPPM) Working Group) will satisfy the requirement
for Expert Review. Most are Active Performance Metrics, which are based
on RFCs prepared in the IPPM working group of the IETF, according to
their framework and its updates.This memo uses the terminology defined in .This section provides the categories and columns of the registry, for
easy reference. An entry (row) therefore gives a complete description of
a Registered Metric.This section specifies an initial registry entry for the UDP
Round-trip Latency, and another entry for UDP Round-trip Loss Ratio.Note: Each Registry entry only produces a "raw" output or a
statistical summary. To describe both "raw" and one or more statistics
efficiently, the Identifier, Name, and Output Categories can be split
and a single section can specify two or more closely-related metrics.
This section specifies two Registry entries with many common columns.
See Section 7 for an example specifying multiple Registry entries with
many common columns.All column entries beside the ID, Name, Description, and Output
Reference Method categories are the same, thus this section proposes two
closely-related registry entries. As a result, IANA is also asked to
assign a corresponding URL to each Named Metric.This category includes multiple indexes to the registry entry: the
element ID and metric name.IANA is asked to assign different numeric identifiers to each of
the two Named Metrics.RTDelay_Active_IP-UDP-Periodic_RFCXXXXsec4_Seconds_95PercentileRTLoss_Active_IP-UDP-Periodic_RFCXXXXsec4_Percent_LossRatioURL: http://<TBD by IANA>/<name>RTDelay: This metric assesses the delay of a stream of packets
exchanged between two hosts (which are the two measurement points),
and the Output is the Round-trip delay for all successfully
exchanged packets expressed as the 95th percentile of their
conditional delay distribution.RTLoss: This metric assesses the loss ratio of a stream of
packets exchanged between two hosts (which are the two measurement
points), and the Output is the Round-trip loss ratio for all
successfully exchanged packets expressed as a percentage.IETF1.0This category includes columns to prompt the entry of all necessary
details related to the metric definition, including the RFC reference
and values of input factors, called fixed parameters.Almes, G., Kalidindi, S., and M. Zekauskas, "A Round-trip Delay
Metric for IPPM", RFC 2681, September 1999.Section 2.4 of provides the reference
definition of the singleton (single value) Round-trip delay metric.
Section 3.4 of provides the reference
definition expanded to cover a multi-singleton sample. Note that
terms such as singleton and sample are defined in Section 11 of
.Note that although the definition of
"Round-trip-Delay between Src and Dst" is directionally ambiguous in
the text, this metric tightens the definition further to recognize
that the host in the "Src" role will send the first packet to "Dst",
and ultimately receive the corresponding return packet from "Dst"
(when neither are lost).Finally, note that the variable "dT" is used in to refer to the value of Round-trip delay in
metric definitions and methods. The variable "dT" has been re-used
in other IPPM literature to refer to different quantities, and
cannot be used as a global variable name.Morton, A., "Round-trip Packet Loss Metrics", RFC 6673, August
2012.Both delay and loss metrics employ a maximum waiting time for
received packets, so the count of lost packets to total packets sent
is the basis for the loss ratio calculation as per Section 6.1 of
.Type-P as defined in Section 13 of :
IPv4 header values: DSCP: set to 0TTL: set to 255Protocol: Set to 17 (UDP)IPv6 header values:DSCP: set to 0Hop Count: set to 255Protocol: Set to 17 (UDP)UDP header values: Checksum: the checksum MUST be calculated and included in
the headerUDP Payload total of 100 bytesOther measurement parameters:Tmax: a loss threshold waiting time3.0, expressed in units of seconds, as a positive value
of type decimal64 with fraction digits = 4 (see section 9.3
of ) and with resolution of 0.0001
seconds (0.1 ms), with lossless conversion to/from the
32-bit NTP timestamp as per section 6 of .This category includes columns for references to relevant sections
of the RFC(s) and any supplemental information needed to ensure an
unambiguous methods for implementations.The methodology for this metric is defined as
Type-P-Round-trip-Delay-Poisson-Stream in section 2.6 of RFC 2681 and section 3.6 of RFC 2681 using the Type-P and Tmax defined
under Fixed Parameters. However, the Periodic stream will be
generated according to .The reference method distinguishes between long-delayed packets
and lost packets by implementing a maximum waiting time for packet
arrival. Tmax is the waiting time used as the threshold to declare a
packet lost. Lost packets SHALL be designated as having undefined
delay, and counted for the RTLoss metric.The calculations on the delay (RTT) SHALL be performed on the
conditional distribution, conditioned on successful packet arrival
within Tmax. Also, when all packet delays are stored, the process
which calculates the RTT value MAY enforce the Tmax threshold on
stored values before calculations. See section 4.1 of for details on the conditional distribution to
exclude undefined values of delay, and Section 5 of for background on this analysis choice.The reference method requires some way to distinguish between
different packets in a stream to establish correspondence between
sending times and receiving times for each successfully-arriving
packet. Sequence numbers or other send-order identification MUST be
retained at the Src or included with each packet to disambiguate
packet reordering if it occurs.If a standard measurement protocol is employed, then the
measurement process will determine the sequence numbers or
timestamps applied to test packets after the Fixed and Runtime
parameters are passed to that process. The chosen measurement
protocol will dictate the format of sequence numbers and
time-stamps, if they are conveyed in the packet payload.Refer to Section 4.4 of for expanded
discussion of the instruction to "send a Type-P packet back to the
Src as quickly as possible" in Section 2.6 of RFC 2681. Section 8 of presents additional requirements which MUST be
included in the method of measurement for this metric.This section gives the details of the packet traffic which is the
basis for measurement. In IPPM metrics, this is called the Stream,
and can easily be described by providing the list of stream
parameters.Section 3 of prescribes the method for
generating Periodic streams using associated parameters.the nominal duration of inter-packet
interval, first bit to first bit, with value 0.0200, expressed
in units of seconds, as a positive value of type decimal64 with
fraction digits = 4 (see section 9.3 of ) and with resolution of 0.0001 seconds (0.1
ms).the duration of the interval for allowed sample
start times, with value 1.0, expressed in units of seconds, as a
positive value of type decimal64 with fraction digits = 4 (see
section 9.3 of ) and with resolution of
0.0001 seconds (0.1 ms).NOTE: an initiation process with a number of control
exchanges resulting in unpredictable start times (within a time
interval) may be sufficient to avoid synchronization of periodic
streams, and therefore a valid replacement for selecting a start
time at random from a fixed interval.The T0 parameter will be reported as a measured parameter.
Parameters incT and dT are Fixed Parameters.The measured results based on a filtered version of the packets
observed, and this section provides the filter details (when
present).NANARun-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.the IP address of the host in the Src Role
(format ipv4-address-no-zone value for IPv4, or
ipv6-address-no-zone value for IPv6, see Section 4 of )the IP address of the host in the Dst Role
(format ipv4-address-no-zone value for IPv4, or
ipv6-address-no-zone value for IPv6, see section 4 of )a time, the start of a measurement interval,
(format "date-and-time" as specified in Section 5.6 of , see also Section 3 of ). The UTC Time Zone is required by Section
6.1 of . When T0 is "all-zeros", a start
time is unspecified and Tf is to be interpreted as the Duration
of the measurement interval. The start time is controlled
through other means.a time, the end of a measurement interval,
(format "date-and-time" as specified in Section 5.6 of , see also Section 3 of ). The UTC Time Zone is required by Section
6.1 of . When T0 is "all-zeros", a end
time date is ignored and Tf is interpreted as the Duration of
the measurement interval.launches each packet and waits for return
transmissions from Dst.waits for each packet from Src and sends a
return packet to Src.This category specifies all details of the Output of measurements
using the metric.Percentile -- for the conditional distribution of all packets
with a valid value of Round-trip delay (undefined delays are
excluded), a single value corresponding to the 95th percentile, as
follows:See section 4.1 of for details on the
conditional distribution to exclude undefined values of delay, and
Section 5 of for background on this
analysis choice.The percentile = 95, meaning that the reported delay,
"95Percentile", is the smallest value of Round-trip delay for which
the Empirical Distribution Function (EDF), F(95Percentile) >= 95%
of the singleton Round-trip delay values in the conditional
distribution. See section 11.3 of for the
definition of the percentile statistic using the EDF.LossRatio -- the count of lost packets to total packets sent is
the basis for the loss ratio calculation as per Section 6.1 of .For all outputs ---the start of a measurement interval, (format
"date-and-time" as specified in Section 5.6 of , see also Section 3 of ). The UTC Time Zone is required by Section
6.1 of .the end of a measurement interval, (format
"date-and-time" as specified in Section 5.6 of , see also Section 3 of ). The UTC Time Zone is required by Section
6.1 of .the count of packets sent by the Src to
Dst during the measurement interval.ForRTDelay_Active_IP-UDP-Periodic_RFCXXXXsec4_Seconds_95Percentile:The time value of the result is
expressed in units of seconds, as a positive value of type
decimal64 with fraction digits = 9 (see section 9.3 of ) with resolution of 0.000000001 seconds (1.0
ns), and with lossless conversion to/from the 64-bit NTP
timestamp asForRTLoss_Active_IP-UDP-Periodic_RFCXXXXsec4_Percent_LossRatio:The numeric value of the result is
expressed in units of lost packets to total packets times 100%,
as a positive value of type decimal64 with fraction digits = 9
(see section 9.3 of ) with resolution of
0.0000000001.The 95th Percentile of Round-trip Delay is expressed in
seconds.The Round-trip Loss Ratio is expressed as a percentage of lost
packets to total packets sent.Section 3.7.3 of provides a means to
quantify the systematic and random errors of a time measurement.
In-situ calibration could be enabled with an internal loopback at
the Source host 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.When a measurement controller requests a calibration measurement,
the loopback is applied and the result is output in the same format
as a normal measurement with additional indication that it is a
calibration result.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.CurrentThis RFC numner1.0YYYY-MM-DDNone.This section gives an initial registry entry for a Packet Delay
Variation metric.This category includes multiple indexes to the registry entries,
the element ID and metric name.<insert numeric identifier, an integer>OWPDV_Active_IP-UDP-Periodic_RFCXXXXsec5_Seconds_95PercentileURL: http://<TBD by IANA>/<name>An assessment of packet delay variation with respect to the
minimum delay observed on the periodic stream, and the Output is
expressed as the 95th percentile of the packet delay variation
distribution.IETF1.0This category includes columns to prompt the entry of all necessary
details related to the metric definition, including the RFC reference
and values of input factors, called fixed parameters.Paxson, V., Almes, G., Mahdavi, J., and M. Mathis, "Framework for
IP Performance Metrics", RFC 2330, May 1998. Demichelis, C. and P. Chimento, "IP Packet Delay Variation Metric
for IP Performance Metrics (IPPM)", RFC 3393, November 2002. Morton, A. and B. Claise, "Packet Delay Variation Applicability
Statement", RFC 5481, March 2009. Mills, D., Martin, J., Burbank, J., and W. Kasch, "Network Time
Protocol Version 4: Protocol and Algorithms Specification", RFC
5905, June 2010.See sections 2.4 and 3.4 of . Singleton
delay differences measured are referred to by the variable name
"ddT" (applicable to all forms of delay variation). However, this
metric entry specifies the PDV form defined in section 4.2 of , where the singleton PDV for packet i is referred
to by the variable name "PDV(i)".IPv4 header values: DSCP: set to 0TTL: set to 255Protocol: Set to 17 (UDP)IPv6 header values:DSCP: set to 0Hop Count: set to 255Protocol: Set to 17 (UDP)UDP header values: Checksum: the checksum MUST be calculated and included in
the headerUDP Payload total of 200 bytesOther measurement parameters:a loss threshold waiting time with value
3.0, expressed in units of seconds, as a positive value of type
decimal64 with fraction digits = 4 (see section 9.3 of ) and with resolution of 0.0001 seconds (0.1
ms), with lossless conversion to/from the 32-bit NTP timestamp
as per section 6 of .a selection function unambiguously defining the
packets from the stream selected for the metric. See section 4.2
of for the PDV form.See the Packet Stream generation category for two
additional Fixed Parameters.This category includes columns for references to relevant sections
of the RFC(s) and any supplemental information needed to ensure an
unambiguous methods for implementations.See section 2.6 and 3.6 of for general
singleton element calculations. This metric entry requires
implementation of the PDV form defined in section 4.2 of . Also see measurement considerations in section 8
of .The reference method distinguishes between long-delayed packets
and lost packets by implementing a maximum waiting time for packet
arrival. Tmax is the waiting time used as the threshold to declare a
packet lost. Lost packets SHALL be designated as having undefined
delay.The calculations on the one-way delay SHALL be performed on the
conditional distribution, conditioned on successful packet arrival
within Tmax. Also, when all packet delays are stored, the process
which calculates the one-way delay value MAY enforce the Tmax
threshold on stored values before calculations. See section 4.1 of
for details on the conditional distribution
to exclude undefined values of delay, and Section 5 of for background on this analysis choice.The reference method requires some way to distinguish between
different packets in a stream to establish correspondence between
sending times and receiving times for each successfully-arriving
packet. Sequence numbers or other send-order identification MUST be
retained at the Src or included with each packet to disambiguate
packet reordering if it occurs.If a standard measurement protocol is employed, then the
measurement process will determine the sequence numbers or
timestamps applied to test packets after the Fixed and Runtime
parameters are passed to that process. The chosen measurement
protocol will dictate the format of sequence numbers and
time-stamps, if they are conveyed in the packet payload.This section gives the details of the packet traffic which is the
basis for measurement. In IPPM metrics, this is called the Stream,
and can easily be described by providing the list of stream
parameters.Section 3 of prescribes the method for
generating Periodic streams using associated parameters.the nominal duration of inter-packet
interval, first bit to first bit, with value 0.0200, expressed
in units of seconds, as a positive value of type decimal64 with
fraction digits = 4 (see section 9.3 of ) and with resolution of 0.0001 seconds (0.1
ms).the duration of the interval for allowed sample
start times, with value 1.0, expressed in units of seconds, as a
positive value of type decimal64 with fraction digits = 4 (see
section 9.3 of ) and with resolution of
0.0001 seconds (0.1 ms).NOTE: an initiation process with a number of control
exchanges resulting in unpredictable start times (within a time
interval) may be sufficient to avoid synchronization of periodic
streams, and therefore a valid replacement for selecting a start
time at random from a fixed interval.The T0 parameter will be reported as a measured parameter.
Parameters incT and dT are Fixed Parameters.NANAthe IP address of the host in the Src Role
(format ipv4-address-no-zone value for IPv4, or
ipv6-address-no-zone value for IPv6, see Section 4 of )the IP address of the host in the Dst Role
(format ipv4-address-no-zone value for IPv4, or
ipv6-address-no-zone value for IPv6, see section 4 of )a time, the start of a measurement interval,
(format "date-and-time" as specified in Section 5.6 of , see also Section 3 of ). The UTC Time Zone is required by Section
6.1 of . When T0 is "all-zeros", a start
time is unspecified and Tf is to be interpreted as the Duration
of the measurement interval. The start time is controlled
through other means.a time, the end of a measurement interval,
(format "date-and-time" as specified in Section 5.6 of , see also Section 3 of ). The UTC Time Zone is required by Section
6.1 of . When T0 is "all-zeros", a end
time date is ignored and Tf is interpreted as the Duration of
the measurement interval.launches each packet and waits for return
transmissions from Dst.waits for each packet from Src and sends a
return packet to Src.This category specifies all details of the Output of measurements
using the metric.Percentile -- for the conditional distribution of all packets
with a valid value of one-way delay (undefined delays are excluded),
a single value corresponding to the 95th percentile, as follows:See section 4.1 of for details on the
conditional distribution to exclude undefined values of delay, and
Section 5 of for background on this
analysis choice.The percentile = 95, meaning that the reported delay,
"95Percentile", is the smallest value of one-way PDV for which the
Empirical Distribution Function (EDF), F(95Percentile) >= 95% of
the singleton one-way PDV values in the conditional distribution.
See section 11.3 of for the definition of
the percentile statistic using the EDF.the start of a measurement interval, (format
"date-and-time" as specified in Section 5.6 of , see also Section 3 of ). The UTC Time Zone is required by Section
6.1 of .the end of a measurement interval, (format
"date-and-time" as specified in Section 5.6 of , see also Section 3 of ). The UTC Time Zone is required by Section
6.1 of .The time value of the result is
expressed in units of seconds, as a positive value of type
decimal64 with fraction digits = 9 (see section 9.3 of ) with resolution of 0.000000001 seconds (1.0
ns), and with lossless conversion to/from the 64-bit NTP
timestamp as per section 6 of RFCThe 95th Percentile of one-way PDV is expressed in seconds.Section 3.7.3 of provides a means to
quantify the systematic and random errors of a time measurement.
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).The time value of the result is
expressed in units of seconds, as a signed value of type
decimal64 with fraction digits = 9 (see section 9.3 of ) with resolution of 0.000000001 seconds (1.0
ns), and with lossless conversion to/from the 64-bit NTP
timestamp as per section 6 of RFCWhen a measurement controller requests a calibration measurement,
the loopback is applied and the result is output in the same format
as a normal measurement with additional indication that it is a
calibration result. In any measurement, the measurement function
SHOULD report its current estimate of time offset as an indicator of
the degree of synchronization.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.CurrentThis RFC number1.0YYYY-MM-DDLost packets represent a challenge for delay variation metrics. See
section 4.1 of and the delay variation
applicability statement for extensive analysis
and comparison of PDV and an alternate metric, IPDV.This section gives initial registry entries for DNS Response Latency
and Loss from a network user's perspective, for a specific named
resource. The metric can be measured repeatedly using different names.
RFC 2681 defines a Round-trip delay
metric. We build on that metric by specifying several of the input
parameters to precisely define two metrics for measuring DNS latency and
loss.Note to IANA: Each Registry "Name" below specifies a single registry
entry, whose output format varies in accordance with the name.All column entries beside the ID, Name, Description, and Output
Reference Method categories are the same, thus this section proposes two
closely-related registry entries. As a result, IANA is also asked to
assign corresponding URLs to each Named Metric.This category includes multiple indexes to the registry entries,
the element ID and metric name.<insert numeric identifier, an integer>IANA is asked to assign different numeric identifiers to each of
the two Named Metrics.RTDNS_Active_IP-UDP-Poisson_RFCXXXXsec6_Seconds_RawRLDNS_Active_IP-UDP-Poisson_RFCXXXXsec6_Logical_RawURL: http://<TBD by IANA>/<name>This is a metric for DNS Response performance from a network
user's perspective, for a specific named resource. The metric can be
measured repeatedly using different resource names.RTDNS: This metric assesses the response time, the interval from
the query transmission to the response.RLDNS: This metric indicates that the response was deemed lost.
In other words, the response time exceeded the maximum waiting
time.IETF1.0This category includes columns to prompt the entry of all necessary
details related to the metric definition, including the RFC reference
and values of input factors, called fixed parameters.Mockapetris, P., "Domain names - implementation and
specification", STD 13, RFC 1035, November 1987. (and updates)Almes, G., Kalidindi, S., and M. Zekauskas, "A Round-trip Delay
Metric for IPPM", RFC 2681, September 1999.Section 2.4 of provides the reference
definition of the singleton (single value) Round-trip delay metric.
Section 3.4 of provides the reference
definition expanded to cover a multi-singleton sample. Note that
terms such as singleton and sample are defined in Section 11 of
.For DNS Response Latency, the entities in must be mapped to . The
Local Host with its User Program and Resolver take the role of
"Src", and the Foreign Name Server takes the role of "Dst".Note that although the definition of
"Round-trip-Delay between Src and Dst at T" is directionally
ambiguous in the text, this metric tightens the definition further
to recognize that the host in the "Src" role will send the first
packet to "Dst", and ultimately receive the corresponding return
packet from "Dst" (when neither are lost).Morton, A., "Round-trip Packet Loss Metrics", RFC 6673, August
2012.Both response time and loss metrics employ a maximum waiting time
for received responses, so the count of lost packets to total
packets sent is the basis for the loss determination as per Section
4.3 of .Type-P as defined in Section 13 of :
IPv4 header values: DSCP: set to 0TTL set to 255Protocol: Set to 17 (UDP)IPv6 header values:DSCP: set to 0Hop Count: set to 255Protocol: Set to 17 (UDP)UDP header values: Source port: 53Destination port: 53Checksum: the checksum must be calculated and included in
the headerPayload: The payload contains a DNS message as defined in
RFC 1035 with the following
values: The DNS header section contains: Identification (see the Run-time column)QR: set to 0 (Query)OPCODE: set to 0 (standard query)AA: not setTC: not setRD: set to one (recursion desired)RA: not setRCODE: not setQDCOUNT: set to one (only one entry)ANCOUNT: not setNSCOUNT: not setARCOUNT: not setThe Question section contains: QNAME: the Fully Qualified Domain Name (FQDN)
provided as input for the test, see the Run-time
columnQTYPE: the query type provided as input for the test,
see the Run-time columnQCLASS: set to 1 for INThe other sections do not contain any Resource
Records.Other measurement parameters:Tmax: a loss threshold waiting time (and to help disambiguate
queries)5.0, expressed in units of seconds, as a positive value
of type decimal64 with fraction digits = 4 (see section 9.3
of ) and with resolution of 0.0001
seconds (0.1 ms), with lossless conversion to/from the
32-bit NTP timestamp as per section 6 of .Observation: reply packets will contain a DNS response and
may contain RRs.This category includes columns for references to relevant sections
of the RFC(s) and any supplemental information needed to ensure an
unambiguous methods for implementations.The methodology for this metric is defined as
Type-P-Round-trip-Delay-Poisson-Stream in section 2.6 of RFC 2681 and section 3.6 of RFC 2681 using the Type-P and Timeout
defined under Fixed Parameters.The reference method distinguishes between long-delayed packets
and lost packets by implementing a maximum waiting time for packet
arrival. Tmax is the waiting time used as the threshold to declare a
response packet lost. Lost packets SHALL be designated as having
undefined delay and counted for the RLDNS metric.The calculations on the delay (RTT) SHALL be performed on the
conditional distribution, conditioned on successful packet arrival
within Tmax. Also, when all packet delays are stored, the process
which calculates the RTT value MAY enforce the Tmax threshold on
stored values before calculations. See section 4.1 of for details on the conditional distribution to
exclude undefined values of delay, and Section 5 of for background on this analysis choice.The reference method requires some way to distinguish between
different packets in a stream to establish correspondence between
sending times and receiving times for each successfully-arriving
reply.DNS Messages bearing Queries provide for random ID Numbers in the
Identification header field, so more than one query may be launched
while a previous request is outstanding when the ID Number is used.
Therefore, the ID Number MUST be retained at the Src or included
with each response packet to disambiguate packet reordering if it
occurs.IF a DNS response does not arrive within Tmax, the response time
RTDNS is undefined, and RLDNS = 1. The Message ID SHALL be used to
disambiguate the successive queries that are otherwise
identical.Since the ID Number filed is only 16 bits in length, it places a
limit on the number of simultaneous outstanding DNS queries during a
stress test from a single Src address.Refer to Section 4.4 of for expanded
discussion of the instruction to "send a Type-P packet back to the
Src as quickly as possible" in Section 2.6 of RFC 2681. However, the DNS Server is
expected to perform all required functions to prepare and send a
response, so the response time will include processing time and
network delay. Section 8 of presents
additional requirements which SHALL be included in the method of
measurement for this metric.In addition to operations described in ,
the Src MUST parse the DNS headers of the reply and prepare the
information for subsequent reporting as a measured result, along
with the Round-Trip Delay.This section gives the details of the packet traffic which is the
basis for measurement. In IPPM metrics, this is called the Stream,
and can easily be described by providing the list of stream
parameters.Section 11.1.3 of RFC 2681 provides
three methods to generate Poisson sampling intervals. The reciprocal
of lambda is the average packet rate, thus the Run-time Parameter is
Reciprocal_lambda = 1/lambda, in seconds.Method 3 is used, where given a start time (Run-time Parameter),
the subsequent send times are all computed prior to measurement by
computing the pseudo-random distribution of inter-packet send times,
(truncating the distribution as specified in the Run-time
Parameters), and the Src sends each packet at the computed
times.Note that Trunc is the upper limit on inter-packet times in the
Poisson distribution. A random value greater than Trunc is set equal
to Trunc instead.The measured results based on a filtered version of the packets
observed, and this section provides the filter details (when
present).NANARun-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.the IP address of the host in the Src Role
(format ipv4-address-no-zone value for IPv4, or
ipv6-address-no-zone value for IPv6, see Section 4 of )the IP address of the host in the Dst Role
(format ipv4-address-no-zone value for IPv4, or
ipv6-address-no-zone value for IPv6, see section 4 of )a time, the start of a measurement interval,
(format "date-and-time" as specified in Section 5.6 of , see also Section 3 of ). The UTC Time Zone is required by Section
6.1 of . When T0 is "all-zeros", a start
time is unspecified and Tf is to be interpreted as the Duration
of the measurement interval. The start time is controlled
through other means.a time, the end of a measurement interval,
(format "date-and-time" as specified in Section 5.6 of , see also Section 3 of ). The UTC Time Zone is required by Section
6.1 of . When T0 is "all-zeros", a end
time date is ignored and Tf is interpreted as the Duration of
the measurement interval.average packet interval for
Poisson Streams expressed in units of seconds, as a positive
value of type decimal64 with fraction digits = 4 (see section
9.3 of ) with resolution of 0.0001
seconds (0.1 ms), and with lossless conversion to/from the
32-bit NTP timestamp as per section 6 of .Upper limit on Poisson distribution
expressed in units of seconds, as a positive value of type
decimal64 with fraction digits = 4 (see section 9.3 of ) with resolution of 0.0001 seconds (0.1 ms),
and with lossless conversion to/from the 32-bit NTP timestamp as
per section 6 of (values above this
limit will be clipped and set to the limit value). (if fixed,
Trunc = 30.0000 seconds.)The 16-bit identifier assigned by the program
that generates the query, and which must vary in successive
queries, see Section 4.1.1 of . This
identifier is copied into the corresponding reply and can be
used by the requester (Src) to match-up replies to outstanding
queries.The domain name of the Query, formatted as
specified in section 4 of .The Query Type, which will correspond to the
IP address family of the query (decimal 1 for IPv4 or 28 for
IPv6, formatted as a uint16, as per section 9.2 of .launches each packet and waits for return
transmissions from Dst.waits for each packet from Src and sends a
return packet to Src.This category specifies all details of the Output of measurements
using the metric.Raw -- for each DNS Query packet sent, sets of values as defined
in the next column, including the status of the response, only
assigning delay values to successful query-response pairs.For all outputs:the time the DNS Query was sent during the
measurement interval, (format "date-and-time" as specified in
Section 5.6 of , see also Section 3 of
). The UTC Time Zone is required by
Section 6.1 of .The time value of the round-trip delay to
receive the DNS response, expressed in units of seconds, as a
positive value of type decimal64 with fraction digits = 9 (see
section 9.3 of ) with resolution of
0.000000001 seconds (1.0 ns), and with lossless conversion
to/from the 64-bit NTP timestamp as per section 6 of RFC. This value is undefined when the
response packet is not received at Src within waiting time Tmax
seconds.The value of the Rcode field in the DNS
response header, expressed as a uint64 as specified in section
9.2 of . Non-zero values convey errors
in the response, and such replies must be analyzed separately
from successful requests.RTDNS: Round-trip Delay, dT, is expressed in seconds.RTLDNS: the Logical value, where 1 = Lost and 0 = Received.Section 3.7.3 of provides a means to
quantify the systematic and random errors of a time measurement.
In-situ calibration could be enabled with an internal loopback at
the Source host that includes as much of the measurement system as
possible, performs address and payload 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.When a measurement controller requests a calibration measurement,
the loopback is applied and the result is output in the same format
as a normal measurement with additional indication that it is a
calibration result.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.CurrentThis RFC number1.0YYYY-MM-DDNoneThis section specifies five initial registry entries for the UDP
Poisson One-way Delay, and one for UDP Poisson One-way Loss.IANA Note: Registry "Name" below specifies multiple registry entries,
whose output format varies according to the <statistic> element of
the name that specifies one form of statistical summary. There is an
additional metric name for the Loss metric.All column entries beside the ID, Name, Description, and Output
Reference Method categories are the same, thus this section proposes six
closely-related registry entries. As a result, IANA is also asked to
assign corresponding URLs to each Named Metric.This category includes multiple indexes to the registry entries,
the element ID and metric name.IANA is asked to assign different numeric identifiers to each of
the six Metrics.OWDelay_Active_IP-UDP-Poisson-Payload250B_RFCXXXXsec7_Seconds_<statistic>where <statistic> is one of:95PercentileMeanMinMaxStdDevOWLoss_Active_IP-UDP-Poisson-Payload250B_RFCXXXXsec7_Percent_LossRatioURL: https:\\www.iana.org\ ... <name>OWDelay: This metric assesses the delay of a stream of packets
exchanged between two hosts (or measurement points), and reports the
<statistic> One-way delay for all successfully exchanged
packets based on their conditional delay distribution.where <statistic> is one of:95PercentileMeanMinMaxStdDevOWLoss: This metric assesses the loss ratio of a stream of
packets exchanged between two hosts (which are the two measurement
points), and the Output is the One-way loss ratio for all
successfully received packets expressed as a percentage.This category includes columns to prompt the entry of all necessary
details related to the metric definition, including the RFC reference
and values of input factors, called fixed parameters.For Delay: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,
<http://www.rfc-editor.org/info/rfc7679>.Morton, A., and Stephan, E., "Spatial Composition of Metrics",
RFC 6049, January 2011.Section 3.4 of provides the reference
definition of the singleton (single value) One-way delay metric.
Section 4.4 of provides the reference
definition expanded to cover a multi-value sample. Note that terms
such as singleton and sample are defined in Section 11 of .Only successful packet transfers with finite delay are included
in the sample, as prescribed in section 4.1.2 of .For loss:Almes, G., Kalidini, S., Zekauskas, M., and A. Morton, Ed., "A
One-Way Loss Metric for IP Performance Metrics (IPPM)", RFC 7680,
DOI 10.17487/RFC7680, January 2016,
<http://www.rfc-editor.org/info/rfc7680>.Section 2.4 of provides the reference
definition of the singleton (single value) one-way loss metric.
Section 3.4 of provides the reference
definition expanded to cover a multi-singleton sample. Note that
terms such as singleton and sample are defined in Section 11 of
.Type-P:IPv4 header values: DSCP: set to 0TTL: set to 255Protocol: Set to 17 (UDP)IPv6 header values:DSCP: set to 0Hop Count: set to 255Protocol: Set to 17 (UDP)UDP header values: Checksum: the checksum MUST be calculated and included in
the headerUDP Payload: TWAMP Test Packet Formats, Section 4.1.2 of
Security features in use influence the number of Padding
octets.250 octets total, including the TWAMP formatOther measurement parameters:a loss threshold waiting time with value
3.0, expressed in units of seconds, as a positive value of type
decimal64 with fraction digits = 4 (see section 9.3 of ) and with resolution of 0.0001 seconds (0.1
ms), with lossless conversion to/from the 32-bit NTP timestamp
as per section 6 of .See the Packet Stream generation category for two additional
Fixed Parameters.This category includes columns for references to relevant sections
of the RFC(s) and any supplemental information needed to ensure an
unambiguous methods for implementations.The methodology for this metric is defined as
Type-P-One-way-Delay-Poisson-Stream in section 3.6 of and section 4.6 of using
the Type-P and Tmax defined under Fixed Parameters.The reference method distinguishes between long-delayed packets
and lost packets by implementing a maximum waiting time for packet
arrival. Tmax is the waiting time used as the threshold to declare a
packet lost. Lost packets SHALL be designated as having undefined
delay, and counted for the OWLoss metric.The calculations on the one-way delay SHALL be performed on the
conditional distribution, conditioned on successful packet arrival
within Tmax. Also, when all packet delays are stored, the process
which calculates the one-way delay value MAY enforce the Tmax
threshold on stored values before calculations. See section 4.1 of
for details on the conditional distribution
to exclude undefined values of delay, and Section 5 of for background on this analysis choice.The reference method requires some way to distinguish between
different packets in a stream to establish correspondence between
sending times and receiving times for each successfully-arriving
packet. Sequence numbers or other send-order identification MUST be
retained at the Src or included with each packet to disambiguate
packet reordering if it occurs.Since a standard measurement protocol is employed , then the measurement process will determine the
sequence numbers or timestamps applied to test packets after the
Fixed and Runtime parameters are passed to that process. The
measurement protocol dictates the format of sequence numbers and
time-stamps conveyed in the TWAMP-Test packet payload.This section gives the details of the packet traffic which is the
basis for measurement. In IPPM metrics, this is called the Stream,
and can easily be described by providing the list of stream
parameters.Section 11.1.3 of RFC 2681 provides
three methods to generate Poisson sampling intervals. The reciprocal
of lambda is the average packet spacing, thus the Run-time Parameter
is Reciprocal_lambda = 1/lambda, in seconds.Method 3 SHALL be used, where given a start time (Run-time
Parameter), the subsequent send times are all computed prior to
measurement by computing the pseudo-random distribution of
inter-packet send times, (truncating the distribution as specified
in the Parameter Trunc), and the Src sends each packet at the
computed times.Note that Trunc is the upper limit on inter-packet times in the
Poisson distribution. A random value greater than Trunc is set equal
to Trunc instead.average packet interval for
Poisson Streams expressed in units of seconds, as a positive
value of type decimal64 with fraction digits = 4 (see section
9.3 of ) with resolution of 0.0001
seconds (0.1 ms), and with lossless conversion to/from the
32-bit NTP timestamp as per section 6 of . Reciprocal_lambda = 1 packet per second.Upper limit on Poisson distribution
expressed in units of seconds, as a positive value of type
decimal64 with fraction digits = 4 (see section 9.3 of ) with resolution of 0.0001 seconds (0.1 ms),
and with lossless conversion to/from the 32-bit NTP timestamp as
per section 6 of (values above this
limit will be clipped and set to the limit value). Trunc =
30.0000 seconds.NANARun-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.the IP address of the host in the Src Role
(format ipv4-address-no-zone value for IPv4, or
ipv6-address-no-zone value for IPv6, see Section 4 of )the IP address of the host in the Dst Role
(format ipv4-address-no-zone value for IPv4, or
ipv6-address-no-zone value for IPv6, see section 4 of )a time, the start of a measurement interval,
(format "date-and-time" as specified in Section 5.6 of , see also Section 3 of ). The UTC Time Zone is required by Section
6.1 of . When T0 is "all-zeros", a start
time is unspecified and Tf is to be interpreted as the Duration
of the measurement interval. The start time is controlled
through other means.a time, the end of a measurement interval,
(format "date-and-time" as specified in Section 5.6 of , see also Section 3 of ). The UTC Time Zone is required by Section
6.1 of . When T0 is "all-zeros", a end
time date is ignored and Tf is interpreted as the Duration of
the measurement interval.launches each packet and waits for return
transmissions from Dst. This is the TWAMP Session-Sender.waits for each packet from Src and sends a
return packet to Src. This is the TWAMP Session-Reflector.This category specifies all details of the Output of measurements
using the metric.See subsection titles below for Types.For all output types ---the start of a measurement interval, (format
"date-and-time" as specified in Section 5.6 of , see also Section 3 of ). The UTC Time Zone is required by Section
6.1 of .the end of a measurement interval, (format
"date-and-time" as specified in Section 5.6 of , see also Section 3 of ). The UTC Time Zone is required by Section
6.1 of .For LossRatio -- the count of lost packets to total packets sent
is the basis for the loss ratio calculation as per Section 4.1 of
.For each <statistic>, one of the following sub-sections
apply:The 95th percentile SHALL be calculated using the conditional
distribution of all packets with a finite value of One-way delay
(undefined delays are excluded), a single value as follows:See section 4.1 of for details on the
conditional distribution to exclude undefined values of delay, and
Section 5 of for background on this
analysis choice.See section 4.3 of for details on the
percentile statistic (where Round-trip delay should be substituted
for "ipdv").The percentile = 95, meaning that the reported delay,
"95Percentile", is the smallest value of one-way delay for which
the Empirical Distribution Function (EDF), F(95Percentile) >=
95% of the singleton one-way delay values in the conditional
distribution. See section 11.3 of for the
definition of the percentile statistic using the EDF.The time value of the result is
expressed in units of seconds, as a positive value of type
decimal64 with fraction digits = 9 (see section 9.3 of ) with resolution of 0.000000001 seconds
(1.0 ns), and with lossless conversion to/from the 64-bit NTP
timestamp as per section 6 of RFCThe mean SHALL be calculated using the conditional distribution
of all packets with a finite value of One-way delay (undefined
delays are excluded), a single value as follows:See section 4.1 of for details on the
conditional distribution to exclude undefined values of delay, and
Section 5 of for background on this
analysis choice.See section 4.2.2 of for details on
calculating this statistic, and 4.2.3 of .The time value of the result is expressed
in units of seconds, as a positive value of type decimal64
with fraction digits = 9 (see section 9.3 of ) with resolution of 0.000000001 seconds
(1.0 ns), and with lossless conversion to/from the 64-bit NTP
timestamp as per section 6 of RFCThe minimum SHALL be calculated using the conditional
distribution of all packets with a finite value of One-way delay
(undefined delays are excluded), a single value as follows:See section 4.1 of for details on the
conditional distribution to exclude undefined values of delay, and
Section 5 of for background on this
analysis choice.See section 4.3.2 of for details on
calculating this statistic, and 4.3.3 of .The time value of the result is expressed in
units of seconds, as a positive value of type decimal64 with
fraction digits = 9 (see section 9.3 of ) with resolution of 0.000000001 seconds
(1.0 ns), and with lossless conversion to/from the 64-bit NTP
timestamp as per section 6 of RFCThe maximum SHALL be calculated using the conditional
distribution of all packets with a finite value of One-way delay
(undefined delays are excluded), a single value as follows:See section 4.1 of for details on the
conditional distribution to exclude undefined values of delay, and
Section 5 of for background on this
analysis choice.See section 4.3.2 of for a closely
related method for calculating this statistic, and 4.3.3 of . The formula is as follows:The time value of the result is expressed in
units of seconds, as a positive value of type decimal64 with
fraction digits = 9 (see section 9.3 of ) with resolution of 0.000000001 seconds
(1.0 ns), and with lossless conversion to/from the 64-bit NTP
timestamp as per section 6 of RFCThe Std_Dev SHALL be calculated using the conditional
distribution of all packets with a finite value of One-way delay
(undefined delays are excluded), a single value as follows:See section 4.1 of for details on the
conditional distribution to exclude undefined values of delay, and
Section 5 of for background on this
analysis choice.See section 4.3.2 of for a closely
related method for calculating this statistic, and 4.3.3 of . The formula is the classic calculation for
standard deviation of a population.The time value of the result is
expressed in units of seconds, as a positive value of type
decimal64 with fraction digits = 9 (see section 9.3 of ) with resolution of 0.000000001 seconds
(1.0 ns), and with lossless conversion to/from the 64-bit NTP
timestamp as per section 6 of RFCThe <statistic> of One-way Delay is expressed in
seconds.The One-way Loss Ratio is expressed as a percentage of lost
packets to total packets sent.Section 3.7.3 of provides a means to
quantify the systematic and random errors of a time measurement.
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).The time value of the result is
expressed in units of seconds, as a signed value of type
decimal64 with fraction digits = 9 (see section 9.3 of ) with resolution of 0.000000001 seconds (1.0
ns), and with lossless conversion to/from the 64-bit NTP
timestamp as per section 6 of RFCWhen a measurement controller requests a calibration measurement,
the loopback is applied and the result is output in the same format
as a normal measurement with additional indication that it is a
calibration result. In any measurement, the measurement function
SHOULD report its current estimate of time offset as an indicator of
the degree of synchronization.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.CurrentThis REFC number1.0YYYY-MM-DDNoneThis section specifies five initial registry entries for the UDP
Periodic One-way Delay, and one for UDP Periodic One-way Loss.IANA Note: Registry "Name" below specifies multiple registry entries,
whose output format varies according to the <statistic> element of
the name that specifies one form of statistical summary. There is an
additional metric name for the Loss metric.All column entries beside the ID, Name, Description, and Output
Reference Method categories are the same, thus this section proposes six
closely-related registry entries. As a result, IANA is also asked to
assign corresponding URLs to each Named Metric.This category includes multiple indexes to the registry entries,
the element ID and metric name.IANA is asked to assign a different numeric identifiers to each
of the six Metrics.OWDelay_Active_IP-UDP-Periodic20m-Payload142B_RFCXXXXsec8_Seconds_<statistic>where <statistic> is one of:95PercentileMeanMinMaxStdDevOWLoss_Active_IP-UDP-Periodic-Payload142B_RFCXXXXsec8_Percent_LossRatioURL: https:\\www.iana.org\ ... <name>OWDelay: This metric assesses the delay of a stream of packets
exchanged between two hosts (or measurement points), and reports the
<statistic> One-way delay for all successfully exchanged
packets based on their conditional delay distribution.where <statistic> is one of:95PercentileMeanMinMaxStdDevOWLoss: This metric assesses the loss ratio of a stream of
packets exchanged between two hosts (which are the two measurement
points), and the Output is the One-way loss ratio for all
successfully received packets expressed as a percentage.This category includes columns to prompt the entry of all necessary
details related to the metric definition, including the RFC reference
and values of input factors, called fixed parameters.For Delay: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,
<http://www.rfc-editor.org/info/rfc7679>.Morton, A., and Stephan, E., "Spatial Composition of Metrics",
RFC 6049, January 2011.Section 3.4 of provides the reference
definition of the singleton (single value) One-way delay metric.
Section 4.4 of provides the reference
definition expanded to cover a multi-value sample. Note that terms
such as singleton and sample are defined in Section 11 of .Only successful packet transfers with finite delay are included
in the sample, as prescribed in section 4.1.2 of .For loss:Almes, G., Kalidini, S., Zekauskas, M., and A. Morton, Ed., "A
One-Way Loss Metric for IP Performance Metrics (IPPM)", RFC 7680,
DOI 10.17487/RFC7680, January 2016,
<http://www.rfc-editor.org/info/rfc7680>.Section 2.4 of provides the reference
definition of the singleton (single value) one-way loss metric.
Section 3.4 of provides the reference
definition expanded to cover a multi-singleton sample. Note that
terms such as singleton and sample are defined in Section 11 of
.Type-P: IPv4 header values: DSCP: set to 0TTL: set to 255Protocol: Set to 17 (UDP)IPv6 header values:DSCP: set to 0Hop Count: set to 255Protocol: Set to 17 (UDP)UDP header values: Checksum: the checksum MUST be calculated and included in
the headerUDP Payload: TWAMP Test Packet Formats, Section 4.1.2 of
Security features in use influence the number of Padding
octets.142 octets total, including the TWAMP format (if
used)Other measurement parameters:a loss threshold waiting time with value
3.0, expressed in units of seconds, as a positive value of type
decimal64 with fraction digits = 4 (see section 9.3 of ) and with resolution of 0.0001 seconds (0.1
ms), with lossless conversion to/from the 32-bit NTP timestamp
as per section 6 of .See the Packet Stream generation category for two additional
Fixed Parameters.This category includes columns for references to relevant sections
of the RFC(s) and any supplemental information needed to ensure an
unambiguous methods for implementations.The methodology for this metric is defined as
Type-P-One-way-Delay-Poisson-Stream in section 3.6 of and section 4.6 of using
the Type-P and Tmax defined under Fixed Parameters. However, a
Periodic stream is used, as defined in .The reference method distinguishes between long-delayed packets
and lost packets by implementing a maximum waiting time for packet
arrival. Tmax is the waiting time used as the threshold to declare a
packet lost. Lost packets SHALL be designated as having undefined
delay, and counted for the OWLoss metric.The calculations on the one-way delay SHALL be performed on the
conditional distribution, conditioned on successful packet arrival
within Tmax. Also, when all packet delays are stored, the process
which calculates the one-way delay value MAY enforce the Tmax
threshold on stored values before calculations. See section 4.1 of
for details on the conditional distribution
to exclude undefined values of delay, and Section 5 of for background on this analysis choice.The reference method requires some way to distinguish between
different packets in a stream to establish correspondence between
sending times and receiving times for each successfully-arriving
packet. Sequence numbers or other send-order identification MUST be
retained at the Src or included with each packet to disambiguate
packet reordering if it occurs.Since a standard measurement protocol is employed , then the measurement process will determine the
sequence numbers or timestamps applied to test packets after the
Fixed and Runtime parameters are passed to that process. The
measurement protocol dictates the format of sequence numbers and
time-stamps conveyed in the TWAMP-Test packet payload.This section gives the details of the packet traffic which is the
basis for measurement. In IPPM metrics, this is called the Stream,
and can easily be described by providing the list of stream
parameters.Section 3 of prescribes the method for
generating Periodic streams using associated parameters.the nominal duration of inter-packet
interval, first bit to first bit, with value 0.0200 expressed in
units of seconds, as a positive value of type decimal64 with
fraction digits = 4 (see section 9.3 of ) and with resolution of 0.0001 seconds (0.1
ms), with lossless conversion to/from the 32-bit NTP timestamp
as per section 6 of .the duration of the interval for allowed sample
start times, with value 1.0000, expressed in units of seconds,
as a positive value of type decimal64 with fraction digits = 4
(see section 9.3 of ) and with
resolution of 0.0001 seconds (0.1 ms), with lossless conversion
to/from the 32-bit NTP timestamp as per section 6 of .the actual start time of the periodic stream,
determined from T0 and dT.NOTE: an initiation process with a number of control
exchanges resulting in unpredictable start times (within a time
interval) may be sufficient to avoid synchronization of periodic
streams, and therefore a valid replacement for selecting a start
time at random from a fixed interval.These stream parameters will be specified as Run-time
parameters.NANARun-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.the IP address of the host in the Src Role
(format ipv4-address-no-zone value for IPv4, or
ipv6-address-no-zone value for IPv6, see Section 4 of )the IP address of the host in the Dst Role
(format ipv4-address-no-zone value for IPv4, or
ipv6-address-no-zone value for IPv6, see section 4 of )a time, the start of a measurement interval,
(format "date-and-time" as specified in Section 5.6 of , see also Section 3 of ). The UTC Time Zone is required by Section
6.1 of . When T0 is "all-zeros", a start
time is unspecified and Tf is to be interpreted as the Duration
of the measurement interval. The start time is controlled
through other means.a time, the end of a measurement interval,
(format "date-and-time" as specified in Section 5.6 of , see also Section 3 of ). The UTC Time Zone is required by Section
6.1 of . When T0 is "all-zeros", a end
time date is ignored and Tf is interpreted as the Duration of
the measurement interval.launches each packet and waits for return
transmissions from Dst. This is the TWAMP Session-Sender.waits for each packet from Src and sends a
return packet to Src. This is the TWAMP Session-Reflector.This category specifies all details of the Output of measurements
using the metric.See subsection titles in Reference Definition for Latency
Types.For all output types ---the start of a measurement interval, (format
"date-and-time" as specified in Section 5.6 of , see also Section 3 of ). The UTC Time Zone is required by Section
6.1 of .the end of a measurement interval, (format
"date-and-time" as specified in Section 5.6 of , see also Section 3 of ). The UTC Time Zone is required by Section
6.1 of .For LossRatio -- the count of lost packets to total packets sent
is the basis for the loss ratio calculation as per Section 4.1 of
.For each <statistic>, one of the following sub-sections
apply:The 95th percentile SHALL be calculated using the conditional
distribution of all packets with a finite value of One-way delay
(undefined delays are excluded), a single value as follows:See section 4.1 of for details on the
conditional distribution to exclude undefined values of delay, and
Section 5 of for background on this
analysis choice.See section 4.3 of for details on the
percentile statistic (where Round-trip delay should be substituted
for "ipdv").The percentile = 95, meaning that the reported delay,
"95Percentile", is the smallest value of one-way delay for which
the Empirical Distribution Function (EDF), F(95Percentile) >=
95% of the singleton one-way delay values in the conditional
distribution. See section 11.3 of for the
definition of the percentile statistic using the EDF.The time value of the result is
expressed in units of seconds, as a positive value of type
decimal64 with fraction digits = 9 (see section 9.3 of ) with resolution of 0.000000001 seconds
(1.0 ns), and with lossless conversion to/from the 64-bit NTP
timestamp as per section 6 of RFCThe mean SHALL be calculated using the conditional distribution
of all packets with a finite value of One-way delay (undefined
delays are excluded), a single value as follows:See section 4.1 of for details on the
conditional distribution to exclude undefined values of delay, and
Section 5 of for background on this
analysis choice.See section 4.2.2 of for details on
calculating this statistic, and 4.2.3 of .The time value of the result is expressed
in units of seconds, as a positive value of type decimal64
with fraction digits = 9 (see section 9.3 of ) with resolution of 0.000000001 seconds
(1.0 ns), and with lossless conversion to/from the 64-bit NTP
timestamp as per section 6 of RFCThe minimum SHALL be calculated using the conditional
distribution of all packets with a finite value of One-way delay
(undefined delays are excluded), a single value as follows:See section 4.1 of for details on the
conditional distribution to exclude undefined values of delay, and
Section 5 of for background on this
analysis choice.See section 4.3.2 of for details on
calculating this statistic, and 4.3.3 of .The time value of the result is expressed in
units of seconds, as a positive value of type decimal64 with
fraction digits = 9 (see section 9.3 of ) with resolution of 0.000000001 seconds
(1.0 ns), and with lossless conversion to/from the 64-bit NTP
timestamp as per section 6 of RFCThe maximum SHALL be calculated using the conditional
distribution of all packets with a finite value of One-way delay
(undefined delays are excluded), a single value as follows:See section 4.1 of for details on the
conditional distribution to exclude undefined values of delay, and
Section 5 of for background on this
analysis choice.See section 4.3.2 of for a closely
related method for calculating this statistic, and 4.3.3 of . The formula is as follows:The time value of the result is expressed in
units of seconds, as a positive value of type decimal64 with
fraction digits = 9 (see section 9.3 of ) with resolution of 0.000000001 seconds
(1.0 ns), and with lossless conversion to/from the 64-bit NTP
timestamp as per section 6 of RFCThe Std_Dev SHALL be calculated using the conditional
distribution of all packets with a finite value of One-way delay
(undefined delays are excluded), a single value as follows:See section 4.1 of for details on the
conditional distribution to exclude undefined values of delay, and
Section 5 of for background on this
analysis choice.See section 4.3.2 of for a closely
related method for calculating this statistic, and 4.3.3 of . The formula is the classic calculation for
standard deviation of a population.The time value of the result is
expressed in units of seconds, as a positive value of type
decimal64 with fraction digits = 9 (see section 9.3 of ) with resolution of 0.000000001 seconds
(1.0 ns), and with lossless conversion to/from the 64-bit NTP
timestamp as per section 6 of RFCThe <statistic> of One-way Delay is expressed in seconds,
where <statistic> is one of:95PercentileMeanMinMaxStdDevThe One-way Loss Ratio is expressed as a percentage of lost
packets to total packets sent.Section 3.7.3 of provides a means to
quantify the systematic and random errors of a time measurement.
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).The time value of the result is
expressed in units of seconds, as a signed value of type
decimal64 with fraction digits = 9 (see section 9.3 of ) with resolution of 0.000000001 seconds (1.0
ns), and with lossless conversion to/from the 64-bit NTP
timestamp as per section 6 of RFCWhen a measurement controller requests a calibration measurement,
the loopback is applied and the result is output in the same format
as a normal measurement with additional indication that it is a
calibration result. In any measurement, the measurement function
SHOULD report its current estimate of time offset as an indicator of
the degree of synchronization.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.CurrentThis RFC number1.0YYYY-MM-DDNone.This section specifies three initial registry entries for the ICMP
Round-trip Latency, and another entry for ICMP Round-trip Loss
Ratio.IANA Note: Registry "Name" below specifies multiple registry entries,
whose output format varies according to the <statistic> element of
the name that specifies one form of statistical summary. There is an
additional metric name for the Loss metric.All column entries beside the ID, Name, Description, and Output
Reference Method categories are the same, thus this section proposes two
closely-related registry entries. As a result, IANA is also asked to
assign four corresponding URLs to each Named Metric.This category includes multiple indexes to the registry entry: the
element ID and metric name.IANA is asked to assign different numeric identifiers to each of
the four Named Metrics.RTDelay_Active_IP-ICMP-SendOnRcv_RFCXXXXsec9_Seconds_<statistic>where <statistic> is one of:MeanMinMaxRTLoss_Active_IP-ICMP-SendOnRcv_RFCXXXXsec9_Percent_LossRatioURL: http://<TBD by IANA>/<name>RTDelay: This metric assesses the delay of a stream of ICMP
packets exchanged between two hosts (which are the two measurement
points), and the Output is the Round-trip delay for all successfully
exchanged packets expressed as the <statistic> of their
conditional delay distribution, where <statistic> is one
of:MeanMinMaxRTLoss: This metric assesses the loss ratio of a stream of ICMP
packets exchanged between two hosts (which are the two measurement
points), and the Output is the Round-trip loss ratio for all
successfully exchanged packets expressed as a percentage.IETF1.0This category includes columns to prompt the entry of all necessary
details related to the metric definition, including the RFC reference
and values of input factors, called fixed parameters.Almes, G., Kalidindi, S., and M. Zekauskas, "A Round-trip Delay
Metric for IPPM", RFC 2681, September 1999.Section 2.4 of provides the reference
definition of the singleton (single value) Round-trip delay metric.
Section 3.4 of provides the reference
definition expanded to cover a multi-singleton sample. Note that
terms such as singleton and sample are defined in Section 11 of
.Note that although the definition of
"Round-trip-Delay between Src and Dst" is directionally ambiguous in
the text, this metric tightens the definition further to recognize
that the host in the "Src" role will send the first packet to "Dst",
and ultimately receive the corresponding return packet from "Dst"
(when neither are lost).Finally, note that the variable "dT" is used in to refer to the value of Round-trip delay in
metric definitions and methods. The variable "dT" has been re-used
in other IPPM literature to refer to different quantities, and
cannot be used as a global variable name.Morton, A., "Round-trip Packet Loss Metrics", RFC 6673, August
2012.Both delay and loss metrics employ a maximum waiting time for
received packets, so the count of lost packets to total packets sent
is the basis for the loss ratio calculation as per Section 6.1 of
.Type-P as defined in Section 13 of :
IPv4 header values: DSCP: set to 0TTL: set to 255Protocol: Set to 01 (ICMP)IPv6 header values:DSCP: set to 0Hop Limit: set to 255Protocol: Set to 01 (ICMP)ICMP header values: Type: 8 (Echo Request)Code: 0Checksum: the checksum MUST be calculated and included in
the header(Identifier and Sequence Number set at Run-Time)ICMP Payload total of 32 bytes of random infoOther measurement parameters:Tmax: a loss threshold waiting time3.0, expressed in units of seconds, as a positive value
of type decimal64 with fraction digits = 4 (see section 9.3
of ) and with resolution of 0.0001
seconds (0.1 ms), with lossless conversion to/from the
32-bit NTP timestamp as per section 6 of .This category includes columns for references to relevant sections
of the RFC(s) and any supplemental information needed to ensure an
unambiguous methods for implementations.The methodology for this metric is defined as
Type-P-Round-trip-Delay-Poisson-Stream in section 2.6 of RFC 2681 and section 3.6 of RFC 2681 using the Type-P and Tmax defined
under Fixed Parameters.The reference method distinguishes between long-delayed packets
and lost packets by implementing a maximum waiting time for packet
arrival. Tmax is the waiting time used as the threshold to declare a
packet lost. Lost packets SHALL be designated as having undefined
delay, and counted for the RTLoss metric.The calculations on the delay (RTD) SHALL be performed on the
conditional distribution, conditioned on successful packet arrival
within Tmax. Also, when all packet delays are stored, the process
which calculates the RTD value MAY enforce the Tmax threshold on
stored values before calculations. See section 4.1 of for details on the conditional distribution to
exclude undefined values of delay, and Section 5 of for background on this analysis choice.The reference method requires some way to distinguish between
different packets in a stream to establish correspondence between
sending times and receiving times for each successfully-arriving
packet. Sequence numbers or other send-order identification MUST be
retained at the Src or included with each packet to disambiguate
packet reordering if it occurs.The measurement process will determine the sequence numbers
applied to test packets after the Fixed and Runtime parameters are
passed to that process. The ICMP measurement process and protocol
will dictate the format of sequence numbers and other
identifiers.Refer to Section 4.4 of for expanded
discussion of the instruction to "send a Type-P packet back to the
Src as quickly as possible" in Section 2.6 of RFC 2681. Section 8 of presents additional requirements which MUST be
included in the method of measurement for this metric.This section gives the details of the packet traffic which is the
basis for measurement. In IPPM metrics, this is called the Stream,
and can easily be described by providing the list of stream
parameters.The ICMP metrics use a sending discipline called "SendOnRcv" or
Send On Receive. This is a modification of Section 3 of , which prescribes the method for generating
Periodic streams using associated parameters as defined below for
this description:the nominal duration of inter-packet
interval, first bit to first bitthe duration of the interval for allowed sample
start timesThe incT stream parameter will be specified as a Run-time
parameter, and dT is not used in SendOnRcv.A SendOnRcv sender behaves exactly like a Periodic stream
generator while all reply packets arrive with RTD < incT, and the
inter-packet interval will be constant.If a reply packet arrives with RTD >= incT, then the
inter-packet interval for the next sending time is nominally
RTD.If a reply packet fails to arrive within Tmax, then the
inter-packet interval for the next sending time is nominally
Tmax.If an immediate send on reply arrival is desired, then set
incT=0.The measured results based on a filtered version of the packets
observed, and this section provides the filter details (when
present).NANARun-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.the IP address of the host in the Src Role
(format ipv4-address-no-zone value for IPv4, or
ipv6-address-no-zone value for IPv6, see Section 4 of )the IP address of the host in the Dst Role
(format ipv4-address-no-zone value for IPv4, or
ipv6-address-no-zone value for IPv6, see section 4 of )the nominal duration of inter-packet
interval, first bit to first bit, expressed in units of seconds,
as a positive value of type decimal64 with fraction digits = 4
(see section 9.3 of ) and with
resolution of 0.0001 seconds (0.1 ms).a time, the start of a measurement interval,
(format "date-and-time" as specified in Section 5.6 of , see also Section 3 of ). The UTC Time Zone is required by Section
6.1 of . When T0 is "all-zeros", a start
time is unspecified and Tf is to be interpreted as the Duration
of the measurement interval. The start time is controlled
through other means.The total count of ICMP Echo Requests to
send, formatted as a uint16, as per section 9.2 of .(see the Packet Stream Generation section for additional Run-time
parameters)launches each packet and waits for return
transmissions from Dst.waits for each packet from Src and sends a
return packet to Src.This category specifies all details of the Output of measurements
using the metric.See subsection titles in Reference Definition for Latency
Types.LossRatio -- the count of lost packets to total packets sent is
the basis for the loss ratio calculation as per Section 6.1 of .For all output types ---the start of a measurement interval, (format
"date-and-time" as specified in Section 5.6 of , see also Section 3 of ). The UTC Time Zone is required by Section
6.1 of .the end of a measurement interval, (format
"date-and-time" as specified in Section 5.6 of , see also Section 3 of ). The UTC Time Zone is required by Section
6.1 of .the count of packets actually sent by
the Src to Dst during the measurement interval.For LossRatio -- the count of lost packets to total packets sent
is the basis for the loss ratio calculation as per Section 4.1 of
.For each <statistic>, one of the following sub-sections
apply:The mean SHALL be calculated using the conditional distribution
of all packets with a finite value of Round-trip delay (undefined
delays are excluded), a single value as follows:See section 4.1 of for details on the
conditional distribution to exclude undefined values of delay, and
Section 5 of for background on this
analysis choice.See section 4.2.2 of for details on
calculating this statistic, and 4.2.3 of .The time value of the result is expressed
in units of seconds, as a positive value of type decimal64
with fraction digits = 9 (see section 9.3 of ) with resolution of 0.000000001 seconds
(1.0 ns), and with lossless conversion to/from the 64-bit NTP
timestamp as per section 6 of RFCThe minimum SHALL be calculated using the conditional
distribution of all packets with a finite value of Round-trip
delay (undefined delays are excluded), a single value as
follows:See section 4.1 of for details on the
conditional distribution to exclude undefined values of delay, and
Section 5 of for background on this
analysis choice.See section 4.3.2 of for details on
calculating this statistic, and 4.3.3 of .The time value of the result is expressed in
units of seconds, as a positive value of type decimal64 with
fraction digits = 9 (see section 9.3 of ) with resolution of 0.000000001 seconds
(1.0 ns), and with lossless conversion to/from the 64-bit NTP
timestamp as per section 6 of RFCThe maximum SHALL be calculated using the conditional
distribution of all packets with a finite value of Round-trip
delay (undefined delays are excluded), a single value as
follows:See section 4.1 of for details on the
conditional distribution to exclude undefined values of delay, and
Section 5 of for background on this
analysis choice.See section 4.3.2 of for a closely
related method for calculating this statistic, and 4.3.3 of . The formula is as follows:The time value of the result is expressed in
units of seconds, as a positive value of type decimal64 with
fraction digits = 9 (see section 9.3 of ) with resolution of 0.000000001 seconds
(1.0 ns), and with lossless conversion to/from the 64-bit NTP
timestamp as per section 6 of RFCThe <statistic> of Round-trip Delay is expressed in
seconds, where <statistic> is one of:MeanMinMaxThe Round-trip Loss Ratio is expressed as a percentage of lost
packets to total packets sent.Section 3.7.3 of provides a means to
quantify the systematic and random errors of a time measurement.
In-situ calibration could be enabled with an internal loopback at
the Source host 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.When a measurement controller requests a calibration measurement,
the loopback is applied and the result is output in the same format
as a normal measurement with additional indication that it is a
calibration result.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.CurrentThis RFC number1.0YYYY-MM-DDNoneThis section specifies three initial registry entries for the Passive
assessment of TCP Round-Trip Delay (RTD) and another entry for TCP
Round-trip Loss Count.IANA Note: Registry "Name" below specifies multiple registry entries,
whose output format varies according to the <statistic> element of
the name that specifies one form of statistical summary. There are two
additional metric names for Singleton RT Delay and Packet Count
metrics.All column entries beside the ID, Name, Description, and Output
Reference Method categories are the same, thus this section proposes
four closely-related registry entries. As a result, IANA is also asked
to assign four corresponding URLs to each Named Metric.This category includes multiple indexes to the registry entry: the
element ID and metric name.IANA is asked to assign different numeric identifiers to each of
the four Named Metrics.RTDelay_Passive_IP-TCP_RFCXXXXsec10_Seconds_<statistic>where <statistic> is one of:MeanMinMaxRTDelay_Passive_IP-TCP-HS_RFCXXXXsec10_Seconds_SingletonNote that a mid-point observer only has the opportuinty to
compose a single RTDelay on the TCP Hand Shake.RTLoss_Passive_IP-TCP_RFCXXXXsec10_Packet_CountURL: https://<TBD by IANA>/<name>RTDelay: This metric assesses the round-trip delay of TCP packets
constituting a single connection, exchanged between two hosts. We
consider the measurement of round-trip delay based on a single
Observation Point somewhere in the network.
The Output is the Round-trip delay for all successfully exchanged
packets expressed as the <statistic> of their conditional
delay distribution, where <statistic> is one of:MeanMinMaxRTLoss: This metric assesses the estimated loss count for TCP
packets constituting a single connection, exchanged between two
hosts. We consider the measurement of round-trip delay based on a
single Observation Point somewhere in the
network. The Output is the estimated Loss Count for the measurement
interval.IETF1.0This category includes columns to prompt the entry of all necessary
details related to the metric definition, including the RFC reference
and values of input factors, called fixed parameters.Although there is no RFC that describes passive measurement of
Round-Trip Delay, the parallel definition for Active measurement
is:Almes, G., Kalidindi, S., and M. Zekauskas, "A Round-trip Delay
Metric for IPPM", RFC 2681, September 1999.This metric definition uses the terms singleton and sample as
defined in Section 11 of . (Section 2.4 of
provides the reference definition of the
singleton (single value) Round-trip delay metric. Section 3.4 of
provides the reference definition expanded
to cover a multi-singleton sample.)With the Observation Point (OP)
typically located between the hosts participating in the TCP
connection, the Round-trip Delay metric requires two individual
measurements between the OP and each host, such that the Spatial
Composition of the measurements yields a
Round-trip Delay singleton (we are extending the composition of
one-way subpath delays to subpath round-trip delay).Using the direction of TCP SYN transmission to anchor the
nomenclature, host A sends the SYN and host B replies with SYN-ACK
during connection establishment. The direction of SYN transfer is
considered the Forward direction of transmission, from A through OP
to B (Reverse is B through OP to A).Traffic filters reduce the packet stream at the OP to a Qualified
bidirectional flow packets.In the definitions below, Corresponding Packets are transferred
in different directions and convey a common value in a TCP header
field that establishes correspondence (to the extent possible).
Examples may be found in the TCP timestamp fields.For a real number, RTD_fwd, >> the Round-trip Delay in the
Forward direction from OP to host B at time T' is RTD_fwd <<
REQUIRES that OP observed a Qualified Packet to host B at wire-time
T', that host B received that packet and sent a Corresponding Packet
back to host A, and OP observed the Corresponding Packet at
wire-time T' + RTD_fwd.For a real number, RTD_rev, >> the Round-trip Delay in the
Reverse direction from OP to host A at time T'' is RTD_rev <<
REQUIRES that OP observed a Qualified Packet to host A at wire-time
T'', that host A received that packet and sent a Corresponding
Packet back to host B, and that OP observed the Corresponding Packet
at wire-time T'' + RTD_rev.Ideally, the packet sent from host B to host A in both
definitions above SHOULD be the same packet (or, when measuring
RTD_rev first, the packet from host A to host B in both definitions
should be the same).The REQUIRED Composition Function for a singleton of Round-trip
Delay at time T (where T is the earliest of T' and T'' above)
is:RTDelay = RTD_fwd + RTD_revNote that when OP is located at host A or host B, one of the
terms composing RTDelay will be zero or negligible.When the Qualified and Corresponding Packets are a TCP-SYN and a
TCP-SYN-ACK, then RTD_fwd == RTD_HS_fwd.When the Qualified and Corresponding Packets are a TCP-SYN-ACK
and a TCP-ACK, then RTD_rev == RTD_HS_rev.The REQUIRED Composition Function for a singleton of Round-trip
Delay for the connection Hand Shake:RTDelay_HS = RTD_HS_fwd + RTD_HS_revThe definition of Round-trip Loss Count uses the nomenclature
developed above, based on observation of the TCP header sequence
numbers and storing the sequence number gaps observed. Packet Losses
can be inferred from:Out-of-order segments: TCP segments are transmitted with
monotonically increasing sequence numbers, but these segments
may be received out of order. Section 3 of describes the notion of "next expected"
sequence numbers which can be adapted to TCP segments (for the
purpose of detecting reordered packets). Observation of
out-of-order segments indicates loss on the path prior to the
OP, and creates a gap.Duplicate segments: Section 2 of
defines identical packets and is suitable for evaluation of TCP
packets to detect duplication. Observation of duplicate segments
*without a corresponding gap* indicates loss on the path
following the OP (because they overlap part of the delivered
sequence numbers already observed at OP).Each observation of an out-of-order or duplicate infers a
singleton of loss, but composition of Round-trip Loss Counts will be
conducted over a measurement interval which is synonymous with a
single TCP connection.With the above observations in the Forward direction over a
measurement interval, the count of out-of-order and duplicate
segments is defined as RTL_fwd. Comparable observations in the
Reverse direction are defined as RTL_rev.For a measurement interval (corresponding to a single TCP
connection), T0 to Tf, the REQUIRED Composition Function for a the
two single-direction counts of inferred loss is:RTLoss = RTL_fwd + RTL_revTraffic Filters: IPv4 header values: DSCP: set to 0Protocol: Set to 06 (TCP)IPv6 header values:DSCP: set to 0Protocol: Set to 06 (TCP)TCP header values: Flags: ACK, SYN, FIN, set as requiredTimestamp Option (TSopt): Set Section 3.2 of This category includes columns for references to relevant sections
of the RFC(s) and any supplemental information needed to ensure an
unambiguous methods for implementations.The foundation methodology for this metric is defined in Section
4 of using the Timestamp Option with
modifications that allow application at a mid-path Observation Point
(OP) . Further details and applicable
heuristics were derived from and .The Traffic Filter at the OP is configured to observe a single
TCP connection. When the SYN, SYN-ACK, ACK handshake occurs, it
offers the first opportunity to measure both RTD_fwd (on the SYN to
SYN-ACK pair) and RTD_rev (on the SYN-ACK to ACK pair). Label this
singleton of RTDelay as RTDelay_HS (composed using the forward and
reverse measurement pair). RTDelay_HS SHALL be treated separately
from other RTDelays on data-bearing packets and their ACKs. The
RTDelay_HS value MAY be used as a sanity check on other Composed
values of RTDelay.For payload bearing packets, the OP measures the time interval
between observation of a packet with Sequence Number s, and the
corresponding ACK with same Sequence number. When the payload is
transferred from host A to host B, the observed interval is
RTD_fwd.Because many data transfers are unidirectional (say, in the
Forward direction from host A to host B), it is necessary to use
pure ACK packets with Timestamp (TSval) and their Timestamp value
echo to perform a RTD_rev measurement. The time interval between
observation of the ACK from B to A, and the corresponding packet
with Timestamp echo (TSecr) is the RTD_rev.Delay Measurement Filtering Heuristics:If Data payloads were transferred in both Forward and Reverse
directions, then the Round-Trip Time Measurement Rule in Section 4.1
of could be applied. This rule essentially
excludes any measurement using a packet unless it makes progress in
the transfer (advances the left edge of the send window, consistent
with).A different heuristic from is to
exclude any RTD_rev that is larger than previously observed values.
This would tend to exclude Reverse measurements taken when the
Application has no data ready to send, because considerable time
could be added to RTD_rev from this source of error.Note that the above Heuristic assumes that host A is sending
data. Host A expecting a download would mean that this heuristic
should be applied to RTD_fwd.The statistic calculations to summarize the delay (RTDelay) SHALL
be performed on the conditional distribution, conditioned on
successful Forward and Reverse measurements which follow the
Heuristics.Method for Inferring Loss:The OP tracks sequence numbers and stores gaps for each direction
of transmission, as well as the next-expected sequence number as in
and . Loss is
inferred from Out-of-order segments and Duplicate segments.Loss Measurement Filtering Heuristics: adds a window of evaluation based on
the RTDelay.Distinguish Re-ordered from OOO due to loss, because sequence
number gap is filled during the same RTDelay window. Segments
detected as re-ordered according to MUST
reduce the Loss Count inferred from Out-of-order segments.Spurious (unneeded) retransmissions (observed as duplicates) can
also be reduced this way, as described in .Sources of Error:The principal source of RTDelay error is the host processing time
to return a packet that defines the termination of a time interval.
The heuristics above intend to mitigate these errors by excluding
measurements where host processing time is a significant part of
RTD_fwd or RTD_rev.A key source of RTLoss error is observation loss, described in
section 3 of .This section gives the details of the packet traffic which is the
basis for measurement. In IPPM metrics, this is called the Stream,
and can easily be described by providing the list of stream
parameters.NAThe measured results based on a filtered version of the packets
observed, and this section provides the filter details (when
present).The Fixed Parameters above give a portion of the Traffic Filter.
Other aspects will be supplied as Run-time Parameters (below).This metric requires a complete sample of all packets that
qualify according to the Traffic Filter criteria.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.the IP address of the host in the host A Role
(format ipv4-address-no-zone value for IPv4, or
ipv6-address-no-zone value for IPv6, see Section 4 of )the IP address of the host in the host B
(format ipv4-address-no-zone value for IPv4, or
ipv6-address-no-zone value for IPv6, see section 4 of )a time, the start of a measurement interval,
(format "date-and-time" as specified in Section 5.6 of , see also Section 3 of ). The UTC Time Zone is required by Section
6.1 of . When T0 is "all-zeros", a start
time is unspecified and Td is to be interpreted as the Duration
of the measurement interval. The start time is controlled
through other means.Optionally, the end of a measurement interval,
(format "date-and-time" as specified in Section 5.6 of , see also Section 3 of ), or the duration (see T0). The UTC Time Zone
is required by Section 6.1 of .
Alternatively, the end of the measurement interval MAY be
controlled by the measured connection, where the second pair of
FIN and ACK packets exchanged between host A and B effectively
ends the interval.Set at desired value.launches the SYN packet to open the
connection, and synonymous with an IP address.replies with the SYN-ACK packet to open the
connection, and synonymous with an IP address.This category specifies all details of the Output of measurements
using the metric.See subsection titles in Reference Definition for RTDelay
Types.For RTLoss -- the count of lost packets.For all output types ---the start of a measurement interval, (format
"date-and-time" as specified in Section 5.6 of , see also Section 3 of ). The UTC Time Zone is required by Section
6.1 of .the end of a measurement interval, (format
"date-and-time" as specified in Section 5.6 of , see also Section 3 of ). The UTC Time Zone is required by Section
6.1 of . The end of the measurement
interval MAY be controlled by the measured connection, where the
second pair of FIN and ACK packets exchanged between host A and
B effectively ends the interval....For RTDelay_HS -- the Round trip delay of the Handshake.For RTLoss -- the count of lost packets.For each <statistic>, one of the following sub-sections
apply:The mean SHALL be calculated using the conditional distribution
of all packets with a finite value of Round-trip delay (undefined
delays are excluded), a single value as follows:See section 4.1 of for details on the
conditional distribution to exclude undefined values of delay, and
Section 5 of for background on this
analysis choice.See section 4.2.2 of for details on
calculating this statistic, and 4.2.3 of .The time value of the result is expressed
in units of seconds, as a positive value of type decimal64
with fraction digits = 9 (see section 9.3 of ) with resolution of 0.000000001 seconds
(1.0 ns), and with lossless conversion to/from the 64-bit NTP
timestamp as per section 6 of RFCThe minimum SHALL be calculated using the conditional
distribution of all packets with a finite value of Round-trip
delay (undefined delays are excluded), a single value as
follows:See section 4.1 of for details on the
conditional distribution to exclude undefined values of delay, and
Section 5 of for background on this
analysis choice.See section 4.3.2 of for details on
calculating this statistic, and 4.3.3 of .The time value of the result is expressed in
units of seconds, as a positive value of type decimal64 with
fraction digits = 9 (see section 9.3 of ) with resolution of 0.000000001 seconds
(1.0 ns), and with lossless conversion to/from the 64-bit NTP
timestamp as per section 6 of RFCThe maximum SHALL be calculated using the conditional
distribution of all packets with a finite value of Round-trip
delay (undefined delays are excluded), a single value as
follows:See section 4.1 of for details on the
conditional distribution to exclude undefined values of delay, and
Section 5 of for background on this
analysis choice.See section 4.3.2 of for a closely
related method for calculating this statistic, and 4.3.3 of . The formula is as follows:The time value of the result is expressed in
units of seconds, as a positive value of type decimal64 with
fraction digits = 9 (see section 9.3 of ) with resolution of 0.000000001 seconds
(1.0 ns), and with lossless conversion to/from the 64-bit NTP
timestamp as per section 6 of RFCThe <statistic> of Round-trip Delay is expressed in
seconds, where <statistic> is one of:MeanMinMaxThe Round-trip Delay of the Hand Shake is expressed in
seconds.The Round-trip Loss Count is expressed as a number of
packets.Passive measurements at an OP could be calibrated against an
active measurement (with loss emulation) at host A or B, where the
active measurement represents the ground-truth.CurrentThis RFC1.0YYYY-MM-DDNone.These registry entries represent no known implications for Internet
Security. Each referenced Metric contains a Security Considerations
section.IANA is requested to populate The Performance Metrics Registry
defined in with the
values defined in sections 4 through 10.See the IANA Considerations section of for additional requests and
considerations.The authors thank Brian Trammell for suggesting the term "Run-time
Parameters", which led to the distinction between run-time and fixed
parameters implemented in this memo, for identifying the IPFIX metric
with Flow Key as an example, for suggesting the Passive TCP RTD metric
and supporting references, and for many other productive suggestions.
Thanks to Peter Koch, who provided several useful suggestions for
disambiguating successive DNS Queries in the DNS Response time
metric.The authors also acknowledge the constructive reviews and helpful
suggestions from Barbara Stark, Juergen Schoenwaelder, Tim Carey, Yaakov
Stein, and participants in the LMAP working group. Thanks to Michelle
Cotton for her early IANA reviews, and to Amanda Barber for answering
questions related to the presentation of the registry and accessibility
of the complete template via URL.Registry for Performance MetricsPassively Measuring TCP Round Trip Times, Communications of
the ACM, Vol. 56 No. 10, Pages 57-64Communications of the ACM, Vol. 56 No. 10, Pages
57-64.Inline Data Integrity Signals for Passive Measurement, In:
Dainotti A., Mahanti A., Uhlig S. (eds) Traffic Monitoring and
Analysis. TMA 2014. Lecture Notes in Computer Science, vol 8406.
Springer, Berlin, Heidelberg
https://link.springer.com/chapter/10.1007/978-3-642-54999-1_2TMA 2014 In: Dainotti A., Mahanti A., Uhlig S. (eds)
Traffic Monitoring and Analysis. TMA 2014. Lecture Notes in
Computer Science, vol 8406. Springer, Berlin,
Heidelberg