Hi Amanda, IPFIX IE doctors,

See inline.

On 9/30/2022 4:58 AM, Amanda Baber via RT wrote:
Hi Benoit, all,

Dear IPFIX doctors, (IANA),

We would like to get your feedback regarding the IANA section in
draft-ietf-opsawg-ipfix-srv6-srh-01.
Especially, the two following information elements:
srhFlagsIPv6:
https://datatracker.ietf.org/doc/html/draft-ietf-opsawg-ipfix-srv6-
srh-01#section-5.1
srhSegmentEndpointBehavior:
https://datatracker.ietf.org/doc/html/draft-ietf-opsawg-ipfix-srv6-
srh-01#section-5.11
We can keep separate registries in sync (although we don't currently have 
automation to ensure this), but is the intention for the IPFIX IPv6 SRH Flags 
and IPFIX SRV6 Endpoint Behavior registries to be contained within each IPFIX 
IE registration's Description field?

In 2020, with IE Doctor approval, all IPFIX IE Description field tables that constituted 
sub-registries were replaced with links to separate sub-registries located outside of the 
IPFIX Information Elements registry. You can see the list of sub-registries under the 
heading "Registries included below":

https://www.iana.org/assignments/ipfix
I went to the IANA table in Philly and we discussed those. Hence I
copied IANA here.
In the currentdraft-ietf-opsawg-ipfix-srv6-srh-01
<https://datatracker.ietf.org/doc/html/draft-ietf-opsawg-ipfix-srv6- srh-01>
version, we created two IPFIX subregistries, which mimic existing
Segment Routing registries.
The main reason is that we are in favor of having a self contained
IPFIX
IANA registry, which we can download as a cron job in the collector.
We
discussed such a project with Michelle Cotton in the past (I know that
Michelle moved on).
I'm afraid we don't have any of Michelle's notes on this topic. What will you 
need IANA to do? We may need to put you in touch with IANA's technical 
director. In the future, the registries will be moved from an XML-based to a 
database-based registry system.
Regarding the argument of "having a self having a self contained IPFIX IANA registry, which we can download as a cron job in the collector", what we need is the ability to retrieve either the entire registry in one go, or have pointers to other (registries) the IPFIX collector has to take into account ... in an automatic manner The former, with subregistries duplication (and synchronization) might be beyond repair at this point in time (at least, I don't have the courage to engage), on top of pushing much administration to IANA for the synchronization/maintenance

Looking closer at the IFPIX registry, let me provide a logic that might work, without too much changes IMO.

Let's say I take care of a IPFIX collector, which I need to update on regular basis, there are different cases:
1. A new IPFIX IE is added in the registry
    Ex: Let's say I specify in IANA the IPFIX IE 492 = "my-new-field"
    I download the entire registry as a cronjob, install it in my collector, and I can now understand all flow records that contain the new IPFIX IE 492
2. A new value is added for one of the IPFIX sub-registries
    Ex: Let's say I add value 25 = "my-new-classification-engine-id" at https://www.iana.org/assignments/ipfix/ipfix.xhtml#classification-engine-ids
    What is the logic?
    I download the entire registry as a cronjob, parse the file, when I arrive at IPFIX field 101 (classificationEngineId) => I do a lookup on *[https://www.iana.org/assignments/ipfix/ipfix.xhtml#classification-engine-ids] in the Description field* , read the new value 25, install it in my collector, and I can now understand all flow records that contain a classificationEngineId value 25.
3. A new value is added for in the external (non-IPFIX) registry
    Ex: a new port is added to https://www.iana.org/assignments/service-names-port-numbers].     The following IPFIX IEs refer to this registry: sourceTransportPort, destinationTransportPort, udpSourcePort, udpDestinationPort, udpDestinationPort, etc.
    What is the logic?
    I download the entire registry as a cronjob, parse the file, when I arrive at any of those IPFIX IEs => I do a lookup**on https://www.iana.org/assignments/service-names-port-numbers*in the Addition Information field*, read the new port value, install it in my collector, and I can now understand all flow records that contain the new port value

At least the logic could work (even if looking up two fields is not ideal from a logic point of view)
I checked all http links in the IPFIX registry and found 3 "exceptions"
- [http://standards.ieee.org/regauth/ethertype/eth.txt], will not work, but we might consider this one as an exception. - portRangeStart and portRangeEnd point to https://www.iana.org/assignments/service-names-port-numbers. Not to sure how to treat this one in an automatic way - [https://www.iana.org/assignments/ianaiftype-mib] should be treated differently, but that's fine.

One conclusion is that there are different treatments whether the links are in the *Description field* or the *Additional Information* field. Interestingly, RFC 7102 doesn't mention this *Additional Information* field :-) And this is precisely this one that I would like to use below, since we speak about non-IPFIX registries in draft-ietf-opsawg-ipfix-srv6-srh. If we don't pay attention to that detail, here is a proposal (combining Med proposal with the logic above)

5.1
<https://datatracker.ietf.org/doc/html/draft-ietf-opsawg-ipfix-srv6- srh-01#section-5.1>.
srhFlagsIPv6

Name:  srhFlagsIPv6

ElementID:  TBD1

Description:  This IE identifies the 8-bit flags defined in the SRH.
      Assigned flags and their meanings are provided in the "Segment
Routing Header Flags" registry.

Abstract Data Type:  unsigned8

Data Type Semantics:  flags

Reference:  [RFC-to-be],RFC8754
<https://datatracker.ietf.org/doc/html/rfc8754>

*Additional reference: 
****https://www.iana.org/assignments/ipv6-parameters/ipv6-parameters.xhtml#segment-routing-header-flags*


Note: and similarly for5.9 <https://datatracker.ietf.org/doc/html/draft-ietf-opsawg-ipfix-srv6-srh-01#section-5.9>. srhActiveSegmentIPv6Type Note: as you can see, I have a different opinion that Med on this one => we need to point to the specific registry within the group, for automatic treatment

Would that work, or IANA/IPFIX doctors will frown upon because the*"additional 
information"*  field is not mentioned in RFC7102?

Regards, Benoit


On top of that, it might be beneficial for the
IPFIX
experts to review any changes coming from a registry we mimic, just to
see if there are no new inconsistencies from an IPFIX point of view.

However, Med, in cc., has a valid point that the current IPFIX IANA
entries are inconsistencies already.
Ex: destinationTransportPort points to a different registry
Ex: tcpControlBit. See
https://datatracker.ietf.org/doc/draft-boucadair-opsawg-rfc7125-
update/
So he advocated that we don't duplicate, with an IPFIX subregistry,
information stemming from a different source. Pointing to the existing
registry (ex: "Segment Routing Header Flags") + a RFC reference is
sufficient for him. Solving the self-contained IPFIX registry issue
would be a (too) huge job at this point in time.

This is what we currently have in the draft:

5.1
<https://datatracker.ietf.org/doc/html/draft-ietf-opsawg-ipfix-srv6- srh-01#section-5.1>.
srhFlagsIPv6

Name:  srhFlagsIPv6

ElementID:  TBD1

Description:  This Information Element identifies the 8-bit flags
    defined in the SRH.  Values for this Information Element are
    listed in the "IPFIX IPv6 SRH Flags" registry, see [IANA-IPFIX
<https://datatracker.ietf.org/doc/html/draft-ietf-opsawg-ipfix-srv6- srh-01#ref-IANA-IPFIX>].
    srhFlagsIPv6 values must not be directly added to this "IPFIX IPv6
    SRH Flags" registry.  They must instead be added to the "Segment
    Routing Header Flags" registry.  Both the "IPFIX IPv6 SRH Flags"
    and the "Segment Routing Header Flags" registries must be kept in
    synch.  Initial values in the registry are defined by the table
    below.

+--------+-------------------+--------------------------------------+
| Value  |    Description    |              Reference               |
+--------+-------------------+--------------------------------------+
| 0-1    | Unassigned        |                                      |
+--------+-------------------+--------------------------------------+
| 2      | O-flag            |  [RFC-ietf-6man-spring-srv6-oam-13]  |
+--------+-------------------+--------------------------------------+
| 3-7    | Unassigned        |                                      |
+--------+-------------------+--------------------------------------+

Table 2: "IPFIX IPv6 SRH Flags" registry


Note to IANA:  Add a note to the "IPFIX SRV6 Endpoint Behavior"
    registry so that new values are echoed in the new "IPFIX SRv6
    EndPoint Behavior

Abstract Data Type:  unsigned8

Data Type Semantics:  flags

Reference:  [RFC-to-be],RFC8754
<https://datatracker.ietf.org/doc/html/rfc8754>

This is what Med proposes:

5.1
<https://datatracker.ietf.org/doc/html/draft-ietf-opsawg-ipfix-srv6- srh-01#section-5.1>.
srhFlagsIPv6

Name:  srhFlagsIPv6

ElementID:  TBD1

Description:  This IE identifies the 8-bit flags defined in the SRH.
       Assigned flags and their meanings are provided in the "Segment
Routing
       Header Flags" registry.

Abstract Data Type:  unsigned8

Data Type Semantics:  flags

Reference:  [RFC-to-be],RFC8754
<https://datatracker.ietf.org/doc/html/rfc8754>
When IANA links to this registry, will the link have to point to, 
e.g.,https://www.iana.org/assignments/segment-routing/segment-routing#the-specific-registry,
 or would it be sufficient to point 
tohttps://www.iana.org/assignments/segment-routing  (the registry group, rather 
than the specific registry within it)?

We basically agree that a registry lookup is required for the IPFIX
Collector.
An IPFIX Exporter will export what he sees, regardless of the semantic
or an IANA registry. The IPFIX Collector will report a potential
problem
if the observed value is not in the IANA registry (bug, IANA entry
hijacked, another convention => if value not observed, I'll send an
error code instead, etc)

Bottom line: we have two different ways to model the srhFlagsIPv6 and
srhSegmentEndpointBehavior in IANA, with or without an IPFIX
subregistry.
Can you share your views on the best way to register those IEs.

Thanks and regards, Benoit
thanks,

Amanda Baber
IANA Operations Manager


_______________________________________________
OPSAWG mailing list
OPSAWG@ietf.org
https://www.ietf.org/mailman/listinfo/opsawg

Reply via email to