Internet-Draft | IPFIX Segment Routing IPv6 Information | January 2022 |
Graf | Expires 19 July 2022 | [Page] |
This document introduces new IP Flow Information Export (IPFIX) code points to identify which traffic is being forwarded with which Segemnt Routing Header dimensions based on which SRv6 control plane protocol.¶
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 19 July 2022.¶
Copyright (c) 2022 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.¶
A new type of Routing Extension Header called Segment Routing Header (SRH) is defined by [RFC8754] which is used for applying Segment Routing (SR) on the IPv6 data plane.¶
Three routing protocol extensions, OSPFv3 Extensions [I-D.li-lsr-ospfv3-srv6-extensions], IS-IS Extensions [I-D.ietf-lsr-isis-srv6-extensions], BGP Prefix Segment Identifiers (Prefix-SIDs) [I-D.ietf-bess-srv6-services] and one Path Computation Element Communication Protocol (PCEP) Extension [I-D.ietf-pce-segment-routing-ipv6] have been defined to be able to propagate Segment Identifiers (SIDs) for the IPv6 data plane.¶
This document defines five new IPFIX Information Elements (IEs) and two new subregistries within the "IPFIX Information Elements" registry [RFC7012] for the new SRH dimensions and routing protocol and PCEP extensions.¶
This section defines and describes the new IPFIX IEs.¶
By using ipv6SRHSegmentList(TBD5), ipv6SRHSegment1Type(TBD6) and forwardingStatus(89) it is possible to identify¶
This document requests IANA to create new IEs and two new subregistry called ""IPFIX IPv6 SRH Flags (TBD1)" and IPFIX IPv6 SRH Segment type (TBD5)" under the "IPFIX Information Elements" registry [RFC7012] available at [IANA-IPFIX] and assign the following code points.¶
+--------+-------------------+------------+-----------+-------------+ | Element| Name | Abstract | Data Type | Reference | | ID | | Data Type | Semantics | | +--------+-------------------+------------+-------------------------+ | TBD1 | ipv6SRHFlag | unsigned8 | flags | [RFC-to-be],| | | | | | RFC8754 | +--------+-------------------+------------+-------------------------+ | TBD2 | ipv6SRHTag | unsigned16 | identifier| [RFC-to-be],| | | | | | RFC8754 | +--------+-------------------+------------+-------------------------+ | TBD3 | ipv6SRHSegment | ipv6address| default | [RFC-to-be],| | | | | | RFC8754 | +--------+-------------------+------------+-------------------------+ | TBD4 | ipv6SRHSegmentList| basiclist | list | [RFC-to-be],| | | | | | RFC8754 | +--------+-------------------+------------+-------------------------+ | TBD5 | ipv6SRHSegmentType| unsigned8 | identifier| [RFC-to-be] | +--------+-------------------+------------+-------------------------+ Table 1: Creates IEs in the "IPFIX Information Elements" registry¶
+--------+-------------------+--------------------------------------+ | Value | Description | Reference | +--------+-------------------+--------------------------------------+ | 0-7 | Unassigned | | +--------+-------------------+--------------------------------------+ Table 2: Creates "IPFIX IPv6 SRH Flags (TBD1)" subregistry¶
+-------+--------------------+--------------------------------------+ | Value | Description | Reference | +-------+--------------------+--------------------------------------+ | TBD6 | Unknown | [RFC-to-be] | | | | | +-------+--------------------+--------------------------------------+ | TBD7 | Path Computation | [RFC-to-be], | | | Element | draft-ietf-pce-segment-routing-ipv6 | +-------+--------------------+--------------------------------------+ | TBD8 | OSPFv3 | [RFC-to-be], | | | Segment Routing | draft-li-ospf-ospfv3-srv6-extensions | +-------+--------------------+--------------------------------------+ | TBD9 | IS-IS | [RFC-to-be] | | | Segment Routing | draft-ietf-lsr-isis-srv6-extensions | +-------+--------------------+--------------------------------------+ | TBD10 | BGP Segment | [RFC-to-be], | | | Routing Prefix-SID | draft-ietf-bess-srv6-services | +-------+--------------------+--------------------------------------+ Table 3: Creates "IPFIX IPv6 SRH Segment type (TBD5)" subregistry¶
Note to the RFC-Editor:¶
There exists no significant extra security considerations regarding the allocation of these new IPFIX IEs compared to [RFC7012].¶
TBD¶
In this section an example is provided to show the encoding format for the newly introduced IEs.¶
+-----+------+-----+--------+---------------------------------------| | SRH | SRH | SRH | Segment| Segment List | | Nr | Flags| Tag | Type | | +-----+------+-----+--------+---------------------------------------+ | 1 | 0 | 123 | IS-IS | 2001:db8::1, 2001:db8::2, 2001:db8::3 | +-----+------+-----+--------+---------------------------------------+ | 2 | 0 | 456 | IS-IS | 2001:db8::4, 2001:db8::5 | +-----+------+-----+--------+---------------------------------------+ | 3 | 0 | 789 | IS-IS | 2001:db8::6 | +-----+------+-----+--------+---------------------------------------+ Table 4: 3 observed SRH headers and their routing protocol¶
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 +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | SET ID = 2 | Length = 41 | +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | Template ID = 256 | Field Count = 4 | +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ |0| ipv6SRHFlags = TBD2 | Field Length = 1 | +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ |0| ipv6SRHTag = TBD3 | Field Length = 2 | +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ |0| ipv6SRHSegmentType = TBD6 | Field Length = 1 | +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ |0| ipv6SRHSegment = TBD4 | Field Length = 16 | +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ |0| ipv6SRHSegmentList = TBD5 | Field Length = 0xFFFF | +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ Table 4: Template Record Encoding Format¶
In this example, the Template ID is 256, which will be used in the Data Record. The field length for ipv6SRHSegmentList is 0xFFFF, which means the length of this IE is variable, and the actual length of this IE is indicated by the List Length field in the basicList format as per [RFC6313].¶
The data set is represented as follows:¶
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 +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | SET ID = 256 | Length = 136 | +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | ipv6SRHFlags | ipv6SRHTag = 123 | ipv6SRHSegment| | = 0 | | Type = TBD9 | +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | 255 | List Length = 53 |semantic= | | | |ordered | +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | ipv6SRHSegment = TBD4 | Field Length = 16 | +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | Segment List[0] = 2001:db8::1 (16 bytes) | +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | Segment List[1] = 2001:db8::2 (16 bytes) | +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | Segment List[2] = 2001:db8::3 (16 bytes) | +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | ipv6SRHFlags | ipv6SRHTag = 456 | ipv6SRHSegment| | = 0 | | Type = TBD9 | +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | 255 | List Length = 37 |semantic= | | | |ordered | +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | ipv6SRHSegment = TBD4 | Field Length = 16 | +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | Segment List[0] = 2001:db8::4 (16 bytes) | +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | Segment List[1] = 2001:db8::5 (16 bytes) | +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | ipv6SRHFlags | ipv6SRHTag = 789 | ipv6SRHSegment| | = 0 | | Type = TBD9 | +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | 255 | List Length = 21 |semantic= | | | |ordered | +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | ipv6SRHSegment = TBD4 | Field Length = 16 | +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | Segment List[0] = 2001:db8::6 (16 bytes) | +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ Table 5: Data Set Encoding Format¶