Re: [IPFIX] RFC 6728 IETF IPFIX Yang Discussion

Gerhard Muenz <muenz@net.in.tum.de> Sat, 13 January 2018 09:43 UTC

Return-Path: <muenz@net.in.tum.de>
X-Original-To: ipfix@ietfa.amsl.com
Delivered-To: ipfix@ietfa.amsl.com
Received: from localhost (localhost [127.0.0.1]) by ietfa.amsl.com (Postfix) with ESMTP id 4A2FD126D74 for <ipfix@ietfa.amsl.com>; Sat, 13 Jan 2018 01:43:46 -0800 (PST)
X-Virus-Scanned: amavisd-new at amsl.com
X-Spam-Flag: NO
X-Spam-Score: -2.199
X-Spam-Level:
X-Spam-Status: No, score=-2.199 tagged_above=-999 required=5 tests=[BAYES_00=-1.9, HTML_MESSAGE=0.001, HTTPS_HTTP_MISMATCH=1.989, RCVD_IN_DNSWL_MED=-2.3, T_KAM_HTML_FONT_INVALID=0.01, URIBL_BLOCKED=0.001] autolearn=ham autolearn_force=no
Received: from mail.ietf.org ([4.31.198.44]) by localhost (ietfa.amsl.com [127.0.0.1]) (amavisd-new, port 10024) with ESMTP id eJ-uPVqyv9Nb for <ipfix@ietfa.amsl.com>; Sat, 13 Jan 2018 01:43:42 -0800 (PST)
Received: from mail-out1.informatik.tu-muenchen.de (mail-out1.informatik.tu-muenchen.de [131.159.0.8]) (using TLSv1.2 with cipher AECDH-AES256-SHA (256/256 bits)) (No client certificate requested) by ietfa.amsl.com (Postfix) with ESMTPS id 3BD301200C1 for <ipfix@ietf.org>; Sat, 13 Jan 2018 01:43:42 -0800 (PST)
Received: from [127.0.0.1] (localhost [127.0.0.1]) by mail.net.in.tum.de (Postfix) with ESMTPSA id 173CB28; Sat, 13 Jan 2018 10:43:34 +0100 (CET)
To: Benoit Claise <bclaise@cisco.com>, "Aitken, Paul" <paul.aitken@intl.att.com>, 'Marta Seda' <Marta.Seda@calix.com>
Cc: "'ipfix@ietf.org'" <ipfix@ietf.org>
References: <085c30b9-5797-863e-a63d-a027396f224f@gmail.com> <a3fc69e8-5773-5785-09ca-409c6a07db57@gmail.com> <A3625616CA873B4DAA779ABEFA624F1C8BE3CA@gbcdcmbx03.intl.att.com> <c20055e4-d9a1-0652-8221-ce54387dedea@cisco.com>
From: Gerhard Muenz <muenz@net.in.tum.de>
Message-ID: <167798e2-f7a7-6946-8f3c-6bf996514bec@net.in.tum.de>
Date: Sat, 13 Jan 2018 10:43:32 +0100
User-Agent: Mozilla/5.0 (Windows NT 6.1; WOW64; rv:52.0) Gecko/20100101 Thunderbird/52.5.2
MIME-Version: 1.0
In-Reply-To: <c20055e4-d9a1-0652-8221-ce54387dedea@cisco.com>
Content-Type: multipart/alternative; boundary="------------184F48FA7CC1D6397CB01FC2"
Content-Language: en-US
Archived-At: <https://mailarchive.ietf.org/arch/msg/ipfix/fPsT9hT6WUtWIdOVO6c13U0XBxk>
Subject: Re: [IPFIX] RFC 6728 IETF IPFIX Yang Discussion
X-BeenThere: ipfix@ietf.org
X-Mailman-Version: 2.1.22
Precedence: list
List-Id: IPFIX WG discussion list <ipfix.ietf.org>
List-Unsubscribe: <https://www.ietf.org/mailman/options/ipfix>, <mailto:ipfix-request@ietf.org?subject=unsubscribe>
List-Archive: <https://mailarchive.ietf.org/arch/browse/ipfix/>
List-Post: <mailto:ipfix@ietf.org>
List-Help: <mailto:ipfix-request@ietf.org?subject=help>
List-Subscribe: <https://www.ietf.org/mailman/listinfo/ipfix>, <mailto:ipfix-request@ietf.org?subject=subscribe>
X-List-Received-Date: Sat, 13 Jan 2018 09:43:46 -0000

Marta, all,

A few additional thoughts regarding your questions:

1) I would not expect that not following current naming convention 
hinders implementation of RFC 6728. On the other hand, if we change just 
the names of the identifiers, we lose interoperability with older 
implementations that may exist.

2) I think that it is reasonable that destinationIPAddress is mandatory 
because network management systems should be able to query the IP 
address to which an Exporting Process sends data. As Paul stated, RFC 
6728 does not say how the destination IP address is set.

3) SCTP is still a mandatory transport for a compliant implementation of 
an IPFIX device, not a feature. See: 
https://tools.ietf.org/html/rfc7011#section-10.1

Best regards,
Gerhard



On 10.01.2018 08:33, Benoit Claise wrote:
> Hi,
>>
>> Marta, Benoit,
>>
>>
>> 1. Are there efforts to update other RFCs to meet the latest YANG 
>> best practices?
>>
> Yes. Ex: https://datatracker.ietf.org/doc/draft-ietf-netmod-rfc7223bis/
> The goal is to specify NMDA-compliant 
> (draft-ietf-netmod-revised-datastores-09 
> <https://datatracker.ietf.org/doc/draft-ietf-netmod-revised-datastores/>) 
> YANG modules
>>
>>
>> 2. Since the IPFIX WG closed, there has been little ongoing IPFIX 
>> work in the IETF. Is there a specific need to update RFC 6728 rather 
>> than just recognising it as a product of it's time?
>>
> This type of feedback should come from implementation experience.
>
> Regards, Benoit
>>
>> Note that it's > 5 years old.
>>
>>
>> Also see @PJ inline:
>>
>>
>> On 09/01/2018 16:01, Benoit Claise wrote:
>>
>>     Hi Marta,
>>
>>         Hello,
>>
>>         I am reaching out to the IETF IPFIX mailing list  on some
>>         issues I have run into with respect to RFC 6728
>>         “Configuration Data Model for the IP Flow Information Export
>>         (IPFIX)  and Packet Sampling (PSAMP) Protocols”
>>
>>          1. RFC 6728 doesn’t meet the latest Yang Best Practices
>>             (https://tools.ietf.org/html/draft-ietf-netmod-rfc6087bis-15#section-4.3.1
>>             <https://urldefense.proofpoint.com/v2/url?u=https-3A__tools.ietf.org_html_draft-2Dietf-2Dnetmod-2Drfc6087bis-2D15-23section-2D4.3.1&d=DwMD-g&c=LFYZ-o9_HUMeMTSQicvjIg&r=f8F8yzrqBTw6EPtR1rbibO_VFIc-cdnjIJ9he_qu7xs&m=0c5ATjuT0-4IlDzLYM9h_RbPjCBQUv_6aExRL_fl-5M&s=Hhi7V6njCFNBbSsjC6sPgNfVu5DA8iQzdzsnA_iQBzQ&e=>).
>>             Leaf identifiers are camel case (e.g., destinationAddress
>>             instead of destination-address). Are there any ongoing
>>             efforts to update RFC 6728 to meet the latest best practices?
>>
>>     Not as far as I know.
>>
>>     Regards, Benoit
>>
>>         2.
>>
>>            Identifiers SHOULD follow a consistent naming pattern
>>         throughout the
>>
>>            module.  Only lower-case letters, numbers, and dashes
>>         SHOULD be used
>>
>>            in identifier names.  Upper-case characters and the underscore
>>
>>            character MAY be used if the identifier represents a
>>         well-known value
>>
>>            that uses these characters.
>>
>>            Identifiers SHOULD include complete words and/or
>>         well-known acronyms
>>
>>            or abbreviations. Child nodes within a container or list
>>         SHOULD NOT
>>
>>            replicate the parent identifier.  YANG identifiers are
>>         hierarchical
>>
>>            and are only meant to be unique within the the set of
>>         sibling nodes
>>
>>            defined in the same module namespace.
>>
>>            It is permissible to use common identifiers such as "name"
>>         or "id" in
>>
>>            data definition statements, especially if these data nodes
>>         share a
>>
>>            common data type.
>>
>>            Identifiers SHOULD NOT carry any special semantics that
>>         identify data
>>
>>            modelling properties.  Only YANG statements and YANG extension
>>
>>            statements are designed to convey machine readable data
>>         modelling
>>
>>            properties.  For example, naming an object "config" or
>>         "state" does
>>
>>            not change whether it is configuration data or state
>>         data.  Only
>>
>>            defined YANG statements or YANG extension statements can
>>         be used to
>>
>>            assign semantics in a machine readable format in YANG.
>>
>>          3. I generated the RFC 6728 yang tree (see attached). The
>>             tcp and udp exporting processes support a
>>             destinationIPAddress (line 400, 455) which is mandatory. 
>>             The type is inet:ip-address.
>>
>>              1. A collector may be doing load balancing.  Rather than
>>                 managing ip-addresses, the collector may be using DNS
>>                 (an exporter could resolve from the domain name where
>>                 the collector is located).
>>
>>
>> @PJ: Load balancing and DNS are independent. Load balancing IPFIX is 
>> probably a bad idea since templates need to be available on all 
>> collectors, and out of step sequence numbers in the data records 
>> would cause spurious reports of lost data. If DNS is used to obtain 
>> the collector's address, arguably it should be a one-time lookup 
>> rather than incurring a DNS lookup per export packet.
>>
>>
>>         4.
>>
>>             1.
>>              2. The collector address may be learnt via other methods
>>                 (e.g., through DHCP options)
>>              3. A choice statement to select what method to use seems
>>                 more appropriate than what is presently in RFC 6728. 
>>                 For example (use some shorthand)
>>
>>         choice destination-method{
>>
>>         case destination-address{
>>
>>         leaf destination-address// rw with type inet:host
>>
>>         }
>>
>>         case dhcp-acquired-address{
>>
>>         container dcp-acquired-address{
>>
>>         leaf destination-ip-address inet-address //ro
>>
>>         }
>>
>>         }
>>
>>         However I can’t augment to ietf-ipfix because
>>         destinationIPAddress is mandatory.  Can the group suggest
>>         methods to (a) change the destinationIPAddress type and (b)
>>         allow a choice?
>>
>>
>> @PJ: The selection could also be done out of band so the exporter 
>> need not know how the address is determined. eg a configuration 
>> system could determine the address by any of these methods or 
>> otherwise, and impose that address using the current model.
>>
>>          5. RFC 6728 mandates SCTP transport.  I understand the logic
>>             behind this (IETF prefers use of SCTP).  There are
>>             situations where sctp is unnecessary and not supported
>>             (e.g., point to point connection).  During netconf
>>             negotiations you can announce your feature set (currently
>>             sctptransport is not a feature).  Is there ongoing work
>>             in updating RFC 6728 to include sctptransport as a
>>             feature (so that the device can announce whether or not
>>             it supports sctptransport)?
>>
>>
>> @PJ Same answer as point (2) above, ie is this necessary and useful?
>>
>> P.
>>
>
>
>
> _______________________________________________
> IPFIX mailing list
> IPFIX@ietf.org
> https://www.ietf.org/mailman/listinfo/ipfix