IGP Extensions for In-situ Flow Information Telemetry (IFIT) Capability AdvertisementHuawei156 Beiqing Rd., Haidian DistrictBeijingChinawangyali11@huawei.comHuawei156 Beiqing Rd., Haidian DistrictBeijingChinazhoutianran@huawei.comHuawei156 Beiqing Rd., Haidian DistrictBeijingChinalucy.liumin@huawei.comChina Telecom109 West Zhongshan Ave.Guangzhou, GuangdongChinachenhuan6@chinatelecom.cnChina Unicom9 Shouti South Rd., Haidian DistrictBeijingChinapangran@chinaunicom.cnLink State Routing Working GroupThis document extends Node and Link Attribute TLVs to Interior Gateway Protocols (IGP) to advertise supported In-situ Flow Information Telemetry (IFIT) capabilities at node and/or link granularity. An ingress router cannot insert IFIT-Data-Fields for packets going into a path unless an egress router has indicated via signaling that it has the capability to process IFIT-Data-Fields. In addition, such advertisements would be useful for ingress routers to gather each router's IFIT capability for achieving the computation of Traffic Engineering (TE) paths or loose TE paths that be able to fulfill the visibility of on-path OAM data.The key words "MUST", "MUST NOT", "REQUIRED", "SHALL", "SHALL NOT", "SHOULD", "SHOULD NOT", "RECOMMENDED", "MAY", and "OPTIONAL" in this document are to be interpreted as described in RFC 2119.IFIT provides a high-level framework and a reflection-loop solution for on-path telemetry . At present, there is a family of emerging on-path telemetry techniques, including In-situ OAM (IOAM) , IOAM Direct Export (DEX) , Enhanced Alternate Marking (EAM) , etc.IFIT is a solution focusing on network domains. The "network domain" consists of a set of network devices or entities within a single Autonomous System (AS). The part of the network which employs IFIT is referred to as the IFIT domain. One network domain may consist of multiple IFIT domains. An IFIT domain may cross multiple network domains. The family of emerging on-path telemetry techniques may be partially enabled in different vendors' devices as an emerging feature for various use cases of application-aware network operations. So that in order to dynamically enable IFIT functionality in a network domain, it is necessary to advertise the information of IFIT option types supported in each device.An ingress router cannot insert IFIT-Data-Fields for packets going into a path unless an egress router has indicated via signaling that it has the capability to process IFIT-Data-Fields. In addition, such advertisements would be useful for ingress routers to gather each router's IFIT capability for achieving the computation of TE paths or loose TE paths that be able to fulfill the visibility of on-path OAM data.BGP-LS defines a way to advertise topology and associated attributes and capabilities of the nodes in that topology to a centralized controller . Typically, BGP-LS is configured on a small number of nodes that do not necessarily act as head-ends. In order for BGP-LS to signal IFIT node capabilities for all the devices in the network, IFIT node capabilities SHOULD be advertised by every IGP router in the network.This document defines a mechanism to signal the supported IFIT capabilities at node and/or link granularity using IS-IS, OSPFv2 and OSPFv3.Following are abbreviations used in this document:BGP-LS: Border Gateway Protocol - Link StateIS-IS: Intermediate System to Intermediate SystemOSPF: Open Shortest Path FirstIFIT: In-situ Flow Information TelemetryTE: Traffic EngineeringIOAM: In-situ OAMPBT: Postcard-Based TelemetryDEX: IOAM Direct ExportEAM: Enhanced Alternate MarkingIGP: Interior Gateway ProtocolsAS: Autonomous SystemE2E: Edge-to-EdgeNLRI: Network Layer Reachability InformationEach IFIT-capable node is configured with a node-id which uniquely identifies a node within the associated IFIT domain. To accommodate the different use cases or requirements of in-situ flow information telemetry, IFIT data fields updated by network nodes fall into different categories which are referred as different IFIT option types, including IOAM Trace Option-Types , IOAM Edge-to-Edge (E2E) Option-Type , IOAM DEX Option-Type and EAM Option-Type . A subset or all the IFIT-Option-Types and their corresponding IFIT-Data-Fields can be associated to an IFIT-Namespace. Namespace identifiers allow a device which is IFIT-capable to determine whether IFIT-Option-Types need to be processed. So that IFIT-Option-Types and Namespace-IDs SHOULD be included in IFIT capability information.This document defines the IFIT Capability information formed of one or more pairs of a 2-octet Namespace-ID and 16-bit Option-Type Flag.Where:Namespace-ID: A 2-octet identifier, which must be present and populated in all IFIT-Option-Types. The definition is the same as described in .Option-Type Flag: A 16-bit bitmap, which is defined as:Where:p-Flag: IOAM Pre-allocated Trace Option Type flag. When set, this indicates that the router is capable of IOAM Pre-allocated Trace .i-Flag: IOAM Incremental Trace Option Type flag. When set, this indicates that the router is capable of IOAM Incremental Tracing .d-Flag: IOAM DEX Option Type flag. When set, this indicates that the router is capable of IOAM DEX .e-Flag: IOAM E2E Option Type flag. When set, this indicates that the router is capable of IOAM E2E processing .m-Flag: EAM flag. When set, this indicates that the router is capable of processing Enhanced Alternative Marking packets .Reserved: Must be set to zero upon transmission and ignored upon receipt.An IFIT node MAY be capable of more than one IFIT option types. In this case, Option-Type Flag can has more than one bit being set.In this document, Link IFIT Capability is defined as the supported IFIT-Option-Types of the interface associated with the link. When all interfaces associated with links support the same IFIT-Option-Type, the Node IFIT Capability SHOULD represent the Link IFIT Capability. Both of Node and Link IFIT Capability information are formed of one or more pairs of Namespace-ID and Option-Type Flag.When both of Node and Link IFIT Capability are advertised, the Link IFIT Capability information MUST take precedence over the Node IFIT Capability. Besides, when a Link IFIT Capability is not signaled, then the Node IFIT Capability SHOULD be considered to be the IFIT Capability for this link.The IS-IS Extensions for advertising Router Information TLV named IS-IS Router CAPABILITY TLV , which allows a router to announce its capabilities within an IS-IS level or the entire routing domain. And describes extensions to IS-IS to support Traffic Engineering.According to the format of IS-IS Router CAPABILITY TLV , the Node IFIT sub-TLV within the body of the IS-IS router CAPABILITY TLV is composed of three fields, a one-octet Type field, a one-octet Length field, and a multiple of 4-octet Value field. The following format is used:Where:Type: To be assigned by IANALength: A one-octet field that indicates the length of the value portion in octets. Node-IFIT-Capability: A multiple of 4-octet field, which is same as defined in Section 3.The Link IFIT sub-TLV is defined to carry the IFIT-Capability information of the interface associated with the link, which is formed of three fields, a one-octet Type field, a one-octet Length field, and a multiple of 4-octet Value field. The following format is used:Where:Type: To be assigned by IANALength: A one-octet field that indicates the length of the value portion in octets. Link-IFIT-Capability: A multiple of 4-octet field, which is same as defined in Section 3.Given that OSPF uses the options field in LSAs and hello packets to advertise optional router capabilities , this document defines a new IFIT Node TLV within the body of the OSPF RI Opaque LSA to carry the IFIT Capabilities of the router originating the RI LSA. This document defines the Link IFIT sub-TLV to carry the IFIT-Capability information of the interface associated with the link. For OSPFv2, the link-level IFIT capability information is advertised as a sub-TLV of the OSPFv2 Extended Link TLV as defined in . For OSPFv3, the link-level IFIT capability information is advertised a sub-TLV of the E-Router-LSA TLV as defined in .The Node IFIT TLV is composed of three fields, a 2-octet Type field, a 2-octet Length field, and a multiple of 4-octet Value field. The following format is used:Where:Type: To be assigned by IANALength: A 2-octet field that indicates the length of the value field. Node-IFIT-Capability: A multiple of 4-octet field, which is as defined in Section 3.The Link IFIT sub-TLV encoded in the OSPFv2 Extended Link TLV is constructed of three fields, a 2-octet Type field, a 2-octet Length field, and a multiple of 4-octet Value field. The following format is used:Where:Type: To be assigned by IANALength: A 2-octet field that indicates the length of the value field. Link-IFIT-Capability: A multiple of 4-octet field, which is as defined in Section 3.The Link IFIT sub-TLV encoded in the OSPFv3 E-Router-LSA TLV is constructed of three fields, a 2-octet Type field, a 2-octet Length field, and a multiple of 4-octet Value field. The following format is used:Where:Type: To be assigned by IANALength: A 2-octet field that indicates the length of the value field. Link-IFIT-Capability: A multiple of 4-octet field, which is as defined in Section 3.As any packet with IFIT-Data-Fields must not leak out from the IFIT domain, the IFIT decapsulating node must be able to capture packets with IFIT-specific header and metadata and recover their format before forwarding them out of the IFIT domain. Thus, an ingress router cannot insert IFIT-Data-Fields for packets going into a path unless an egress router has indicated via signaling that it has the capability to process IFIT-Data-Fields. In this case, such advertisements are helpful for avoiding the leak of IFIT-specific header and metadata.In addition, such advertisements would be useful for ingress routers to gather each router's IFIT capability for achieving the computation of TE paths or loose TE paths that be able to fulfill the visibility of on-path OAM data. For example, for achieving the computation of low-latency SR-TE path, latency is expected to be collected at every node that a packet traverses to ensure performance visibility into the entire path. IOAM Trace Option-Types is a desired option to have a hop-by-hop latency measurement. If not all nodes on this path are IOAM Trace Option-Type capable, an incomplete measurement can have negative impacts on SR-TE path computation and adjustment for low-latency assurance.IANA is requested to allocate values for the following new TLV and sub-TLVs.TypeDescriptionTBDIS-IS Node IFIT Sub-TLVTBDIS-IS Link IFIT Sub-TLVTypeDescriptionTBDOSPF Node IFIT Capability TLVTBDOSPFv2 Link IFIT Capability sub-TLVTBDOSPFv3 Link IFIT Capability sub-TLVThis document introduces new IGP Node and Link Attribute TLVs and sub-TLVs for the IFIT Capability advertisements at node and/or link granularity. It does not introduce any new security risks to IS-IS, OSPFv2 and OSPFv3.The authors would like to thank Acee Lindem, Christian Hopps, Robert Raszuk, Les Ginsberg, Jeff Tantsura, Rakesh Gandhi and Greg Mirsky for the comments and advices.Extensions to OSPF for Advertising Optional Router CapabilitiesOSPFv2 Prefix/Link Attribute AdvertisementOSPFv3 Link State Advertisement (LSA) ExtensibilityIS-IS Extensions for Advertising Router InformationIS-IS Extensions for Traffic EngineeringNorth-Bound Distribution of Link-State and Traffic Engineering (TE) Information Using BGPIn-situ Flow Information Telemetry FrameworkData Fields for In-situ OAMIn-situ OAM Direct ExportingIPv6 Application of the Alternate Marking Method