| Internet-Draft | ISFT | July 2026 |
| Zhang, et al. | Expires 20 January 2027 | [Page] |
Space networks, including satellite networks, often operate with constrained bandwidth, processing capacity, storage, and energy, while also experiencing dynamic topology and frequent link changes. Existing in-situ Operations, Administration, and Maintenance (IOAM) mechanisms provide useful per-packet telemetry, but the packet overhead and field selection flexibility can be costly in such environments.¶
This document specifies In-situ Space Flow Telemetry (ISFT), a compact telemetry profile for IPv6 limited domains. ISFT defines an 8-octet telemetry option header, a small set of telemetry templates for delay, loss, and congestion information, and processing behavior for encapsulating, transit, and decapsulating nodes. ISFT is intended for controlled domains such as space-network segments and MUST NOT be exposed as an Internet-wide protocol behavior.¶
This Internet-Draft is submitted in full conformance with the provisions of BCP 78 and BCP 79.¶
Internet-Drafts are working documents of the Internet Engineering Task Force (IETF). Note that other groups may also distribute working documents as Internet-Drafts. The list of current Internet-Drafts is at https://datatracker.ietf.org/drafts/current/.¶
Internet-Drafts are draft documents valid for a maximum of six months and may be updated, replaced, or obsoleted by other documents at any time. It is inappropriate to use Internet-Drafts as reference material or to cite them other than as "work in progress."¶
This Internet-Draft will expire on 20 January 2027.¶
Copyright (c) 2026 IETF Trust and the persons identified as the document authors. All rights reserved.¶
This document is subject to BCP 78 and the IETF Trust's Legal Provisions Relating to IETF Documents (https://trustee.ietf.org/license-info) in effect on the date of publication of this document. Please review these documents carefully, as they describe your rights and restrictions with respect to this document. Code Components extracted from this document must include Revised BSD License text as described in Section 4.e of the Trust Legal Provisions and are provided without warranty as described in the Revised BSD License.¶
IOAM records operational and telemetry information while a packet traverses a network path [RFC9197]. IOAM is most useful when measurement packets need to follow the same forwarding treatment as user packets, or when active probe packets cannot reveal the same path and performance properties.¶
Space networks have operating constraints that differ from many terrestrial deployments. Satellite nodes can have limited processing resources, limited storage, constrained energy budgets, narrow or intermittent links, and scheduled or mobility-driven topology changes. The resulting telemetry system needs to minimize per-packet overhead and simplify per-node processing while still preserving the measurements needed for delay, packet-loss, and congestion analysis.¶
ISFT is specified for IPv6 packets [RFC8200] in a limited domain. It intentionally avoids defining a new IPv6 extension header. In particular, this document does not place ISFT in IPv6 Hop-by-Hop Options; deployments that use Hop-by-Hop Options need to follow the processing model and operational guidance in [RFC9673].¶
ISFT adapts the IOAM model to this environment by using:¶
ISFT is not a replacement for RFC 9197 IOAM. It is a constrained profile and option-header format for deployments that value compact field encoding and simple template-based data selection over arbitrary per-field trace selection.¶
The key words "MUST", "MUST NOT", "REQUIRED", "SHALL", "SHALL NOT", "SHOULD", "SHOULD NOT", "RECOMMENDED", "NOT RECOMMENDED", "MAY", and "OPTIONAL" in this document are to be interpreted as described in BCP 14 [RFC2119] [RFC8174] when, and only when, they appear in all capitals, as shown here.¶
ISFT is applicable only in limited domains whose membership, boundary nodes, node identifiers, Flow Label behavior, and telemetry collectors are under common administrative control. ISFT packets MUST NOT be forwarded outside the ISFT Domain with an ISFT Option Header still present.¶
ISFT can be deployed on native packets originated by ISFT-aware endpoints or on packets carried by a tunnel or adaptation layer whose ingress and egress are the ISFT domain edges. An ISFT encapsulating node MUST NOT insert an ISFT Option Header into the payload of an arbitrary end-to-end UDP or TCP packet unless the upper-layer endpoints or the tunnel endpoints have explicitly negotiated or been configured for ISFT. This requirement preserves transport and application semantics.¶
If the IPv6 Flow Label is used as an ISFT flow marker, the ISFT encapsulating node MUST be the source of the IPv6 header whose Flow Label it sets. A node MUST NOT rewrite the Flow Label of an end-to-end IPv6 packet while leaving the original IPv6 source address unchanged. These restrictions are intended to align deployment with the IPv6 Flow Label specification [RFC6437].¶
ISFT processing has three stages:¶
The ISFT Option Header is 8 octets long. Its field layout follows the compact option-header format derived from the ISFT source material: a 7-bit Namespace-ID, a 2-bit ISFT Option Type, a 3-bit Template, a 20-bit Flow-ID, and a 32-bit Sequence Number.¶
0 1 2 3 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1 +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | Namespace-ID | O | T | Flow-ID | +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | Sequence Number | +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
The Template field selects one of eight fixed telemetry combinations. The fixed combinations avoid per-field bit scanning in constrained data planes. Every ISFT metadata record includes the base node-information block defined in Section 8. The table lists the measurement information selected by each Template in addition to that base block. Loss-related templates use the Sequence Number carried in the ISFT Option Header.¶
| Value | Name | Selected measurement information |
|---|---|---|
| 000 | Node | Base node-information block only |
| 001 | Delay | In Timestamp, Out Timestamp, Transit Delay |
| 010 | Loss | ISFT Sequence Number from the ISFT Option Header |
| 011 | Delay and Loss | Delay fields and the ISFT Sequence Number from the ISFT Option Header |
| 100 | Congestion | Queue Depth, Buffer Occupancy |
| 101 | Delay and Congestion | Delay fields, Queue Depth, Buffer Occupancy |
| 110 | Loss and Congestion | ISFT Sequence Number from the ISFT Option Header, Queue Depth, Buffer Occupancy |
| 111 | Delay, Loss, and Congestion | Delay fields, the ISFT Sequence Number from the ISFT Option Header, Queue Depth, Buffer Occupancy |
ISFT metadata is encoded in network byte order. Each telemetry record contains a base node-information block, followed by the fields required by the selected Template.¶
0 1 2 3 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1 +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | Node-ID | in| eg| tc | re | +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | In Timestamp | +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | Out Timestamp | +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | Transit Delay | +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | Queue Depth | Buffer Occupancy | +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | Checksum Complement | +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
The figure shows the maximal ISFT metadata record layout. The first 32 bits form the base node-information block and are present in every metadata record. The remaining fields are included when required by the selected Template and local collection mode. Template-specific records omit fields that are not selected by T. The Transit Delay field is optional and is present only when the reporting node supports explicit forwarding-delay reporting.¶
Timestamp format and units for Queue Depth and Buffer Occupancy are namespace-specific operational parameters. A deployment MUST configure these parameters consistently for all nodes that process the same Namespace-ID. Packet loss and reordering analysis uses the Sequence Number carried in the ISFT Option Header together with the Flow-ID.¶
| Value | Mode | Behavior |
|---|---|---|
| 00 | Pre-allocated Trace-Option | The encapsulating node pre-allocates space for telemetry records after the ISFT Option Header. Participating nodes write their selected metadata into the pre-allocated data area according to a slot map configured for the Namespace-ID, selected Template, and ISFT Option Type. |
| 01 | Incremental Trace | Each participating node appends its metadata record after the ISFT Option Header, subject to MTU and local policy. The decapsulating node exports the collected trace and removes ISFT data. |
| 10 | Edge-to-Edge | Only the encapsulating and decapsulating nodes collect metadata. Transit nodes forward the packet without adding metadata. |
| 11 | Direct Export | Each participating node exports a telemetry report to one or more configured collectors. The data packet normally carries only the 8-octet ISFT Option Header. |
In Pre-allocated Trace-Option mode, the amount of pre-allocated data area and the slot offset assigned to each participating node are namespace-local operational parameters. A node MUST write only to the slot assigned to its Node-ID for the packet's Namespace-ID and Template. A node that has no configured slot for the packet, or that determines that the packet does not contain the expected pre-allocated data area, MUST NOT write metadata to the packet and SHOULD report the condition according to local operational policy. This mode does not require an append operation at transit nodes.¶
Within an ISFT Domain, operators MAY configure a subset of the IPv6 Flow Label space to identify ISFT-selected flows. This allows transit nodes to recognize selected packets using fixed-position IPv6 header fields, avoiding repeated parsing of transport headers. The Flow Label value maps to the ISFT Flow-ID by local configuration or by copying the 20-bit Flow-ID value into the Flow Label of the ISFT-domain IPv6 header.¶
A Flow Label value alone is not sufficient authorization to process ISFT. A node MUST process ISFT only when the packet is received on an interface and within a Namespace-ID configured for the ISFT Domain. A boundary node MUST clear or rewrite any ISFT-domain Flow Label semantics before forwarding the packet outside the ISFT Domain.¶
The ISFT Option Header is carried at the start of an ISFT-aware upper-layer payload or tunnel payload. For UDP, an ISFT-aware encapsulation can place the ISFT Option Header after the UDP header and before the tunnel or application data identified by the UDP destination port. For TCP, ISFT MUST be used only when the TCP application framing explicitly supports ISFT, or when TCP is used by a domain-local tunnel/adaptation function that removes ISFT before delivering data to a non-ISFT application.¶
The encapsulating node is responsible for ensuring that the resulting packet fits the Path MTU of the ISFT Domain or for applying a domain policy that prevents fragmentation-related loss. A transit node in Incremental Trace mode MUST NOT append metadata if doing so would exceed the configured maximum ISFT packet size.¶
This document does not request a new IPv6 extension header or a new UDP port. A future document can define an explicit UDP encapsulation and request any necessary IANA allocations.¶
An encapsulating node that selects a packet for ISFT processing MUST:¶
A transit node that receives an ISFT packet for a configured Namespace-ID MUST parse the ISFT Option Header. If the ISFT Option Type is unsupported, the node MUST ignore ISFT processing and forward or drop the packet according to local policy. If the Template is recognized and the selected mode requires transit processing, the node collects the indicated metadata and exports or appends it according to the selected mode.¶
A decapsulating node MUST remove the ISFT Option Header and any appended ISFT metadata before forwarding the packet outside the ISFT Domain. The node SHOULD export the final telemetry report before removal. If the node cannot remove ISFT information safely, it MUST NOT forward the packet outside the ISFT Domain unless local policy explicitly permits dropping the telemetry information by other means.¶
Direct Export mode follows the same architectural idea as IOAM Direct Export [RFC9326]: the in-flight packet triggers local telemetry collection and export, while the export packet format and collector protocol are deployment choices. This document does not define a collector transport or report envelope.¶
Deployments SHOULD protect telemetry export traffic against spoofing, replay, and disclosure. Export reports SHOULD include at least the Namespace-ID, Flow-ID, node identity, Template, collection timestamp, and collected metadata.¶
Operators need to configure ISFT Domain boundaries, Namespace-ID membership, Flow Label ranges, flow-selection rules, node identifiers, timestamp units, queue and buffer units, collector addresses, and MTU limits. In dynamic space networks, these parameters can be tied to scheduled topology epochs so that a collector can interpret telemetry records in the context of link availability and routing state.¶
ISFT reduces the number of telemetry field combinations to eight fixed templates. This simplification improves implementation predictability but reduces flexibility compared to the IOAM Trace-Type bitmap defined by RFC 9197. Operators that need arbitrary field combinations SHOULD use standard IOAM data fields instead of ISFT templates.¶
This document makes no IANA requests.¶
If future revisions define a UDP encapsulation, a new IP protocol number, or a registry for ISFT option types or templates, those revisions will update this section with the required IANA actions.¶
ISFT exposes topology, timing, queue, buffer, and loss information. This information can reveal operational state and traffic patterns. ISFT therefore MUST be confined to a limited domain, and boundary nodes MUST prevent ISFT Option Headers and ISFT-domain Flow Label semantics from leaking outside that domain.¶
Attackers that can inject ISFT packets could trigger unwanted telemetry export, consume processing resources, or poison measurements. Nodes MUST process ISFT only on configured domain interfaces and for configured Namespace-IDs. Telemetry export traffic SHOULD be authenticated and integrity protected. Confidentiality protection is RECOMMENDED when telemetry reports can reveal sensitive operational information.¶
Using the IPv6 Flow Label as a domain-local telemetry marker creates a covert-channel and policy-bypass risk if the domain boundary is not enforced. Boundary filtering and explicit domain membership checks are REQUIRED.¶
This document is derived from an in-situ space flow telemetry method proposed for space-network measurement and monitoring. The authors thank the contributors and reviewers of the IOAM specifications whose work provides the basis for this profile.¶