Initial Performance Metrics Registry Entries
Extracted elements (26)
An initiation process with control exchanges resulting in unpredictable start times (within a time interval) is explicitly noted as a valid replacement for selecting a random start time from a fixed interval for periodic streams. This design avoids periodic stream synchronization artifacts without requiring a true random number generator.
Delay statistics (all percentile, mean, min, max, StdDev outputs) are computed on the conditional distribution, excluding packets with undefined delay (i.e., those arriving after Tmax). This approach, backed by RFC 6703 Section 5, avoids conflating loss with delay and provides interpretable statistics over only successfully delivered packets.
The existing IPPM metric templates (RFC 7679, RFC 6390, RFC 1242) were not designed to serve as the basis for registry columns; while examining what needs to be registered, it became clear none fully satisfied registry needs. RFC 8911 therefore defines a new registry format specifically optimized for the IANA Performance Metrics Registry.
For DNS Response Latency metrics, the RFC 1035 entities must be mapped to RFC 2681 roles: the Local Host with its User Program and Resolver takes the Src role, and the Foreign Name Server takes the Dst role. The DNS server is expected to perform all required functions before responding, so response time includes processing time and network delay.
The 16-bit DNS Identification field in DNS queries limits the number of simultaneous outstanding DNS queries to 65,535 from a single Src address during stress testing, which implementors must account for when designing concurrent measurement campaigns.
For DNS and UDP Poisson metrics, Poisson Method 3 SHALL be used: given a start time, all subsequent send times are pre-computed from a pseudorandom distribution of inter-packet send times (truncating at Trunc), and the Src sends each packet at the computed times.
For DNS metrics, the DNS Message ID Number MUST be retained at the Src and included with each response packet to disambiguate packet reordering. If a DNS Response does not arrive within Tmax, RTDNS is undefined and RLDNS=1; the Message ID SHALL be used to disambiguate successive identical queries.
Lost packets SHALL be designated as having undefined delay and counted for the loss metric (RTLoss, OWLoss, or RLDNS). Packets not arriving within the Tmax waiting time are declared lost.
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. This applies to all stream-based metrics in this document.
The Src MUST parse the DNS headers of the reply and prepare the query response information for subsequent reporting as a measured result, along with the round-trip delay.
The UDP checksum MUST be calculated and the non-zero checksum included in the header for all UDP-based metrics defined in this document.
When all packet delays are stored, the process that calculates delay values MUST enforce the Tmax threshold on stored values before calculations. Calculations on delay SHALL be performed on the conditional distribution, conditioned on successful packet arrival within Tmax.
All delay output values are expressed in units of seconds as a positive decimal64 with fraction digits=9 (1.0 ns resolution), with lossless conversion to/from the 64-bit NTP timestamp per RFC 5905. Loss ratio is expressed as decimal64 with fraction digits=9 in units of lost-to-total packets times 100%.
DNS output fields include: T (query send time), dT (round-trip delay in seconds as decimal64 with 9 fraction digits), RCODE (DNS response code as uint64; non-zero values must be analyzed separately), and Logical (uint8 where 1=Lost and 0=Received; for lost queries dT and RCODE are set to their respective maximums).
DNS Response Latency (ID 4: RTDNS) and Loss (ID 5: RLDNS) metrics use UDP port 53 with a fully specified DNS query payload: QR=0, OPCODE=0, RD=1, QDCOUNT=1, with QNAME/QTYPE provided as runtime parameters. The Local Host/Resolver maps to the Src role and the Foreign Name Server maps to the Dst role.
Each Registry Entry is organized into five categories of columns: Summary (ID, Name, URI, Description, Change Controller, Version), Metric Definition (Reference Definition, Fixed Parameters), Method of Measurement (Reference Method, Packet Stream Generation, Traffic Filtering, Sampling Distribution, Runtime Parameters, Roles), Output (Type, Reference Definition, Units, Calibration), and Administrative Items (Status, Requester, Revision, Revision Date).
Fixed Parameters for all UDP-based metrics specify Type-P as: IPv4/IPv6 DSCP=0, TTL/Hop Count=255, Protocol/Next Header=17 (UDP), Flow Label=0, no Extension Headers. The UDP checksum must be calculated and a non-zero checksum included. Payload sizes vary by metric (100 bytes for UDP RTDelay, 200 bytes for PDV, 250 bytes for UDP Poisson OWDelay, 142 bytes for UDP Periodic OWDelay).
For Periodic stream generation, the Fixed Parameters are incT=0.0200 seconds (inter-packet interval, first bit to first bit) and dT=1.0 second (interval for allowed sample start times). These values apply to the UDP Round-Trip, PDV, and UDP Periodic One-Way metrics.
Packet Delay Variation (PDV) metric (ID 3: OWPDV_Active_IP-UDP-Periodic_RFC8912sec5_Seconds_95Percentile) uses the PDV form from RFC 5481 Section 4.2, where singleton PDV for packet i is referenced as PDV(i) and measured against the minimum delay observed on the periodic stream. Output is the 95th percentile of the one-way PDV distribution.
Runtime Parameters common to all metrics include: Src (IP address of source host, IPv4 or IPv6 format per RFC 6991), Dst (IP address of destination host), T0 (measurement interval start time in RFC 3339 date-time UTC format; when all-zeros, Tf is interpreted as duration), and Tf (measurement interval end time in RFC 3339 date-time UTC format).
Tmax is a loss threshold waiting time used to distinguish long-delayed packets from lost packets. Its value is 3.0 seconds for UDP/PDV/ICMP/TCP metrics and 5.0 seconds for DNS metrics, expressed as decimal64 with fraction digits=4 (0.1 ms resolution), with lossless conversion to/from the 32-bit NTP timestamp.
UDP Periodic One-Way metrics (IDs 12–17) use TWAMP-Test packet format with 142 bytes total payload, periodic stream with incT=0.0200s and dT=1.0000s. TWAMP Session-Sender and Session-Reflector serve as the reference implementation examples for Src and Dst roles respectively.
UDP Poisson One-Way metrics (IDs 6–11) use TWAMP-Test packet format (RFC 5357 Section 4.1.2) with 250 bytes total payload. Poisson stream parameters are Reciprocal_lambda=1 second (average packet interval) and Trunc=30.0000 seconds (upper limit on inter-packet times). Five delay statistics (95Percentile, Mean, Min, Max, StdDev) plus LossRatio are defined as separate registry entries.
UDP Round-Trip Latency output is the 95th percentile of the conditional distribution of round-trip delay (Registry Entry ID 1: RTDelay_Active_IP-UDP-Periodic_RFC8912sec4_Seconds_95Percentile). The 95th percentile is defined as the smallest delay value for which the EDF is >= 95% of the singleton values per RFC 2330 Section 11.3.
This memo populates the IANA Registry of Performance Metrics with 17 initial entries (IDs 1–17) covering UDP Round-Trip Latency/Loss (IDs 1–2), Packet Delay Variation (ID 3), DNS Response Latency/Loss (IDs 4–5), UDP Poisson One-Way Delay/Loss (IDs 6–11), and UDP Periodic One-Way Delay/Loss (IDs 12–17), plus additional entries in Sections 9–10 for ICMP and TCP. Each entry is administered by IANA under the Specification Required policy per RFC 8911.
Active measurement metrics defined in this document send test packets into the network, which can constitute an unintended load or be misused to generate traffic toward a target. Implementors must ensure measurement sessions are authorized and that the measurement rate does not constitute a denial-of-service risk.