Summary

  • draft-ietf-opsawg-ipfix-ecn-00 proposes eleven useful IPFIX fields for observed ECN states, but a CE value does not retain the ECT(0) or ECT(1) value it replaced.
  • A defensible L4S marking ratio therefore needs an explicit attribution join, Observation Point and interval identity, sampling evidence and readback; a counter alone is not a performance or causality receipt.

The proposed draft solves a real vocabulary problem. Operators can already export the whole IPv4 Type of Service or IPv6 Traffic Class byte, but separating flows across DSCP variants can exhaust a collector’s key budget. A dedicated ipEcn Information Element would expose only the two ECN bits. Companion fields would count Not-ECT, ECT(0), ECT(1) and CE packets as deltas or totals. MPLS gets two paths: a domain-mapped mplsEcn view of the outermost label and a dedicated MNA form.

That is a useful common layer. It is not a completed measurement claim.

Consider what happens at an active marking point. An ECT(1) packet and an ECT(0) packet may both leave with the same two-bit value: CE. The final header says congestion was signalled. It does not preserve the predecessor codepoint. If an exporter only sees the packet after marking, its CE counter cannot sort those packets back into the scalable and classic populations. The draft notices the issue: derived L4S ratios should attribute CE packets to their original ECT codepoint rather than aggregate them indiscriminately.

But it deliberately leaves the calculation strategy outside scope, and none of the eleven proposed fields is an original-codepoint field.

This is not an objection to the draft. It is the boundary that makes the draft safe to use. The shared registry can name an observation. The operator must disclose the extra evidence that converts it into a service claim. That evidence might be a paired pre-mark and post-mark Observation Point, exporter-local queue metadata tied to the same packet population, or a trustworthy classification join. Whatever the mechanism, it must survive loss, sampling, aggregation and restart. “The collector calculated it” is not the missing edge.

Placement comes next. IPFIX defines an Observation Point, and the draft permits ECN extraction at different nodes along the path. A counter before an AQM, one after it and one at an egress can all be internally correct and mutually different. A CE increase between two points may support a bounded statement about that segment only if the flow definition, direction, packet population and time window are comparable. It does not identify a queue merely because the later exporter saw more CE.

Counter semantics add another clock. A delta is the count since the previous report. Missing, duplicated or reordered reports change what can be joined. A total begins at Metering Process initialization or reinitialization for that Observation Point. A restart can make the number fall without congestion improving. A new template, a changed aggregation key or a shortened active timeout can change the population without any network behavior changing. The record needs exporter, Observation Point, template, flow key, interval and reset identity before two numbers become a trend.

Sampling is not a footnote. The draft anticipates packet or flow sampling and recommends representative methods that reduce bias. A sampled CE count becomes a population estimate only with the selection method and probability. Sampling flows rather than packets can overweight long or short conversations depending on implementation. Adaptive sampling during load can correlate missing observations with the very congestion under study. Two percentages with the same label are not comparable when one denominator came from full packet counting and the other from an undisclosed selection process.

MPLS makes the need for context visible. RFC 5129 does not prescribe a universal EXP-to-ECN mapping. The proposed mplsEcn field depends on domain policy and extracts only from the outermost label. Uniform, Pipe and Short Pipe behavior can change which state is visible. A collector that imports a value without the domain mapping may turn a locally correct identifier into a globally wrong meaning. mplsMnaEcn narrows that problem, but it points to another work in progress and future opcode allocation. A registry entry is not deployment proof.

Secure export closes a different gap. RFC 7011’s TLS or DTLS protections and mutual authentication can establish which Exporting Process sent the record and protect it in transit. They do not prove the sensor observed the intended interface, the flow key was correct, the sample was representative or the domain mapping was current. Authentic data can still carry an incomplete inference.

The privacy trade-off belongs in the same ledger. ECT(1) distributions can reveal application classes, and long-lived per-flow histories can support activity correlation. Aggregation and anonymization reduce exposure but also remove joining precision. An operator cannot claim both fine-grained attribution and privacy-preserving coarsening without recording where analytical resolution was surrendered.

The disciplined statement is therefore modest: this exporter observed these final ECN states for this defined packet population, at this Observation Point, over this interval, under this selection and mapping policy. Every stronger claim—L4S marking ratio, queue cause, application behavior, remediation success or customer outcome—needs another receipt.

Sources