Internet-Draft | New TCP and IPv6 EH IPFIX IEs | June 2023 |
Boucadair & Claise | Expires 23 December 2023 | [Page] |
This document specifies new IPFIX Information Elements (IEs) to solve some issues with existing ipv6ExtensionHeaders and tcpOptions IPFIX IEs, especially the ability to export any observed IPv6 Extension Headers or TCP options.¶
This note is to be removed before publishing as an RFC.¶
Discussion of this document takes place on the Operations and Management Area Working Group Working Group mailing list (opsawg@ietf.org), which is archived at https://mailarchive.ietf.org/arch/browse/opsawg/.¶
Source for this draft and an issue tracker can be found at https://github.com/boucadair/ipfix-tcpoptions-and-v6eh.¶
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 23 December 2023.¶
Copyright (c) 2023 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.¶
This document specifies new IPFIX Information Elements (IEs) to solve a set of issues encountered with the current specifications of ipv6ExtensionHeaders (for IPv6 Extension Headers (EHs)) and tcpOptions (to export TCP options). More details about these issues are provided in the following sub-sections.¶
The specification of ipv6ExtensionHeaders IPFIX IE does not:¶
Only TCP options having a kind =< 63 can be included in a tcpOptions IPFIX IE. The specification of the tcpOptions IPFIX IE does not describe how any observed TCP option in a packet can be exported using IPFIX. Also, there is no way to report the observed Experimental Identifiers (ExIDs) that are carried in shared TCP options (kind=253 or 254) [RFC6994].¶
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.¶
This document uses the IPFIX-specific terminology (Information Element, Template, Collector, Data Record, Flow Record, Exporting Process, Collecting Process, etc.) defined in Section 2 of [RFC7011]. As in [RFC7011], these IPFIX-specific terms have the first letter of a word capitalized.¶
ipv6ExtensionHeadersFull¶
TBD1¶
IPv6 extension headers observed in packets of this Flow. The information is encoded in a set of bit fields. For each IPv6 option header, there is a bit in this set. The bit is set to 1 if any observed packet of this Flow contains the corresponding IPv6 extension header. Otherwise, if no observed packet of this Flow contained the respective IPv6 extension header, the value of the corresponding bit is 0. The IPv6 EH associated with each bit is provided in [NEW_IPFIX_IPv6EH_SUBREGISTRY].¶
The value should be encoded in fewer octets as per the guidelines in Section 6.2 of [RFC7011].¶
unsigned¶
flags¶
See the assigned bits to each IPv6 extension header type in [NEW_IPFIX_IPv6EH_SUBREGISTRY].¶
See [RFC8200] for the general definition of IPv6 extension headers and [IPv6-EH] for assigned extension header types.¶
This-Document¶
ipv6ExtensionHeaderCount¶
TBD2¶
As per [RFC8200], IPv6 nodes must accept and attempt to process extension headers in occurring any number of times in the same packet. This Information Element echoes the number of occurences of the same EH instance in an IPv6 packet.¶
IPFIX reduced-size encoding as per Section 6.2 of [RFC7011] is used as required.¶
0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 ... +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | EH Type#1 | Count |...| EH Type#n | Count | +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+¶
This section specifies a new Information Element to cover the full TCP options range.¶
tcpOptionsFull¶
TBD3¶
TCP options in packets of this Flow. The information is encoded in a set of bit fields. For each TCP option, there is a bit in this set. The bit is set to 1 if any observed packet of this Flow contains the corresponding TCP option. Otherwise, if no observed packet of this Flow contained the respective TCP option, the value of the corresponding bit is 0.¶
Options are mapped to bits according to their option numbers. Option number X is mapped to bit X. TCP option numbers are maintained by IANA.¶
The value should be encoded in fewer octets as per the guidelines in Section 6.2 of [RFC7011].¶
unsigned¶
flags¶
This-Document¶
IPFIX security considerations are discussed in Section 8 of [RFC7012].¶
This document requests IANA to add the following new IPFIX IEs to the IANA IPFIX registry [IANA-IPFIX]:¶
Value | Name | Reference |
---|---|---|
TBD1 | ipv6ExtensionHeadersFull | Section 3.1 of This-Document |
TBD2 | ipv6ExtensionHeaderCount | Section 3.2 of This-Document |
TBD3 | tcpOptionsFull | Section 4.1 of This-Document |
TBD4 | tcpSharedOptionExID16 | Section 4.2.1 of This-Document |
TBD5 | tcpSharedOptionExID32 | Section 4.2.2 of This-Document |
Thanks to Paul Aitken for the review.¶