Re: [yang-doctors] [I2nsf] Yangdoctors early review of draft-ietf-i2nsf-nsf-monitoring-data-model-04

Andy Bierman <andy@yumaworks.com> Tue, 06 October 2020 04:51 UTC

Return-Path: <andy@yumaworks.com>
X-Original-To: yang-doctors@ietfa.amsl.com
Delivered-To: yang-doctors@ietfa.amsl.com
Received: from localhost (localhost [127.0.0.1]) by ietfa.amsl.com (Postfix) with ESMTP id 446CD3A10FB for <yang-doctors@ietfa.amsl.com>; Mon, 5 Oct 2020 21:51:11 -0700 (PDT)
X-Virus-Scanned: amavisd-new at amsl.com
X-Spam-Flag: NO
X-Spam-Score: -1.886
X-Spam-Level:
X-Spam-Status: No, score=-1.886 tagged_above=-999 required=5 tests=[BAYES_00=-1.9, DKIM_SIGNED=0.1, DKIM_VALID=-0.1, HTML_MESSAGE=0.001, SPF_HELO_NONE=0.001, T_SPF_PERMERROR=0.01, URIBL_BLOCKED=0.001, URI_DOTEDU=0.001] autolearn=unavailable autolearn_force=no
Authentication-Results: ietfa.amsl.com (amavisd-new); dkim=pass (2048-bit key) header.d=yumaworks-com.20150623.gappssmtp.com
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 7JYn5e8CjHZ4 for <yang-doctors@ietfa.amsl.com>; Mon, 5 Oct 2020 21:51:09 -0700 (PDT)
Received: from mail-lf1-x129.google.com (mail-lf1-x129.google.com [IPv6:2a00:1450:4864:20::129]) (using TLSv1.2 with cipher ECDHE-RSA-AES128-GCM-SHA256 (128/128 bits)) (No client certificate requested) by ietfa.amsl.com (Postfix) with ESMTPS id D1FB53A10FC for <yang-doctors@ietf.org>; Mon, 5 Oct 2020 21:51:08 -0700 (PDT)
Received: by mail-lf1-x129.google.com with SMTP id w11so13552720lfn.2 for <yang-doctors@ietf.org>; Mon, 05 Oct 2020 21:51:08 -0700 (PDT)
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=yumaworks-com.20150623.gappssmtp.com; s=20150623; h=mime-version:references:in-reply-to:from:date:message-id:subject:to :cc; bh=nvikrnGk24AxQgPbLNqqFhZXnoIfj/BQ/SZLieKWo24=; b=uLPSWtNN4CymsSF96GE7X9AEZSUYLsru4NK2/bX807GZGWkdZ96fGEx0NlQSNxaSQ1 18Fwbh6HvjO/avhx3Qo+OHsTKpBzw7rQWZemPPC7lglG++5LAFQFuqhBCAY/07p9PdVx KkxBge/4dECgu2tabja/yhm4Qb/S51b1fN54ujCT7AusvJCrbmvkzySWDYV2Y9EhuY9B n1/zgU3mpEAGSXERAxirqw3Vd4p6HrSHYGeiGt70lnc8XzT9Je2bYMWmnKi2NQLUrUlS 486ZnPMJWCOp0i28Lva38Pe7BD/bJc4w3XYS5ekidihmKma3p7xk32XkqgMUDfkjLx/m n4Gg==
X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20161025; h=x-gm-message-state:mime-version:references:in-reply-to:from:date :message-id:subject:to:cc; bh=nvikrnGk24AxQgPbLNqqFhZXnoIfj/BQ/SZLieKWo24=; b=Za03VIDkXVsw67liX5P3ooPMcC/aywIFHmVUJd8AmTGI6/8fUhv/rUkC9o3SBLU+Vq Ao1uacPovqsZnb/A0/MAPoQHcXMtVZKedtVYLI8yw1hgioRQzncO6aXwdQocMJEDFn1d oOHuU8y6f4U/MhOj9rumS+10lRkWZSIcSEV6qWO2nv5DTfpo2uGDmVGybHNrNGs8cZRM tyv6nnd9YIQZjxlFVaZm1fntXgWIYEwVNa4tkn3x/JMKVYWhASVEm/Y7UsskS7Xz8dpp BL+2rOO4+qlYvLy9zbbQcrLUdx0aKXjI+woe9Ve+dyyydUdI6IK0EDGl9nX99IRolUnV p4+A==
X-Gm-Message-State: AOAM532VxNddwEfBI19DJ2aIbx3/z6qF7E41FATuurnuDncsCfClV0dh 80vJ227PmYRrYIDcQ2g1EAvZCeNyroN+hiwSS2DAhg==
X-Google-Smtp-Source: ABdhPJzEYEeJSIECNZBiic7C7pQ/le8rqlQYgG9UqweRX6GVxlt+IFLNirBCOsCM8/q0bN6BkNhqFjOz9I1Qsp4KHzE=
X-Received: by 2002:a19:e54:: with SMTP id 81mr944135lfo.178.1601959866692; Mon, 05 Oct 2020 21:51:06 -0700 (PDT)
MIME-Version: 1.0
References: <160192102291.6633.15935674903085952087@ietfa.amsl.com> <CAPK2DewOF7QcTD8UdFYdoGUvnJz_fxb53OOn-KmYQgNA38xLoA@mail.gmail.com> <CABCOCHQsxFVNdBgL9fyZHV+Bevs1D8d5B=+KJAgoVBVekz+VtQ@mail.gmail.com> <CAPK2DewNDq2_DtZhtxitTsavHczwiSKur9+yQPLR+18UbV-QHg@mail.gmail.com>
In-Reply-To: <CAPK2DewNDq2_DtZhtxitTsavHczwiSKur9+yQPLR+18UbV-QHg@mail.gmail.com>
From: Andy Bierman <andy@yumaworks.com>
Date: Mon, 05 Oct 2020 21:50:55 -0700
Message-ID: <CABCOCHT-0mKbYBDtZHnANRLqMtSsT1ijhoe1znoS2_pDHn4WNA@mail.gmail.com>
To: "Mr. Jaehoon Paul Jeong" <jaehoon.paul@gmail.com>
Cc: YANG Doctors <yang-doctors@ietf.org>, "i2nsf@ietf.org" <i2nsf@ietf.org>, draft-ietf-i2nsf-nsf-monitoring-data-model.all@ietf.org, Patrick Lingga <patricklink888@gmail.com>
Content-Type: multipart/alternative; boundary="000000000000cc91a905b0f9580d"
Archived-At: <https://mailarchive.ietf.org/arch/msg/yang-doctors/tlrl_UvxusTn1a_siCOVq6H2KzU>
Subject: Re: [yang-doctors] [I2nsf] Yangdoctors early review of draft-ietf-i2nsf-nsf-monitoring-data-model-04
X-BeenThere: yang-doctors@ietf.org
X-Mailman-Version: 2.1.29
Precedence: list
List-Id: Email list of the yang-doctors directorate <yang-doctors.ietf.org>
List-Unsubscribe: <https://www.ietf.org/mailman/options/yang-doctors>, <mailto:yang-doctors-request@ietf.org?subject=unsubscribe>
List-Archive: <https://mailarchive.ietf.org/arch/browse/yang-doctors/>
List-Post: <mailto:yang-doctors@ietf.org>
List-Help: <mailto:yang-doctors-request@ietf.org?subject=help>
List-Subscribe: <https://www.ietf.org/mailman/listinfo/yang-doctors>, <mailto:yang-doctors-request@ietf.org?subject=subscribe>
X-List-Received-Date: Tue, 06 Oct 2020 04:51:11 -0000

On Mon, Oct 5, 2020 at 9:05 PM Mr. Jaehoon Paul Jeong <
jaehoon.paul@gmail.com> wrote:

> Andy,
> What do you mean by the event stream?
>
>
https://tools.ietf.org/html/rfc8639#section-2.1



> Actually, I am thinking that the NETCONF can deliver the monitoring data
> of a system or an NSF in an XML file.
>
> Do you think that we need another way to convey the monitoring data?
>
> Thanks.
>
> Best Regards,
> Paul
>
> On Tue, Oct 6, 2020 at 12:30 PM Andy Bierman <andy@yumaworks.com> wrote:
>
>>
>>
>> On Mon, Oct 5, 2020 at 7:30 PM Mr. Jaehoon Paul Jeong <
>> jaehoon.paul@gmail.com> wrote:
>>
>>> Hi Andy,
>>> Thanks for your valuable comments on our NSF Monitoring YANG Data Model
>>> Draft.
>>> We authors will reflect your comments on the revision and come back to
>>> you with
>>> the revised draft and revision letter.
>>>
>>>
>> I forgot 1 comment:
>>
>>  - the draft is not that explicit about the event stream to use for these
>> notifications
>>    Perhaps a new standard event stream (I2NSF) would be better than the
>> standard (NETCONF)
>>    The draft should be more clear wrt/ the NETCONF stream.
>>
>>
>> Andy
>>
>>
>>
>>> Thanks.
>>>
>>> Best Regards,
>>> Paul
>>>
>>>
>>> On Tue, Oct 6, 2020 at 3:03 AM Andy Bierman via Datatracker <
>>> noreply@ietf.org> wrote:
>>>
>>>> Reviewer: Andy Bierman
>>>> Review result: Almost Ready
>>>>
>>>>
>>>>
>>>> Major Issues:
>>>>
>>>>  - None
>>>>
>>>> Moderate Issues:
>>>>
>>>>  - top-level 'counters' container does not follow naming conventions.
>>>>    Should start with 'i2nsf', probably 'i2nsf-state'
>>>>
>>>>  - There do not seem to be any writable objects in the /counters
>>>>    subtree so this container should have a 'config false' statement
>>>>
>>>>  - top-level typedef and grouping description-stmts are self-referential
>>>>    and not useful. Need to rewrite description-stmts and/or add
>>>>    reference-stmts as needed.
>>>>
>>>>  - grouping common-monitoring-data/time-stamp
>>>>    Is this a different time stamp than the one in the NETCONF
>>>> notification?
>>>>    The 'message generation time' sounds like the standard timestamp.
>>>>    Does this object represent the event detection time?
>>>>
>>>>  - grouping i2nsf-system-alarm-type-content/usage
>>>>  - grouping i2nsf-system-alarm-type-content/threshold
>>>>    These are uint8 leafs with unclear descriptions.
>>>>    Not sure why uint8 is the appropriate type.
>>>>    Needs 1 or more of (reference, units, better description)
>>>>
>>>>  - grouping traffic-rates
>>>>    Add a units statement to each leaf. Not sure what units to use
>>>>    but it should be consistent. (e.g, pps, bps used in descriptions
>>>>    should also be in a units-stmt)
>>>>
>>>>  - grouping i2nsf-system-counter-type-content
>>>>    These counters should use the yang:counter32 type instead of uint32
>>>>
>>>>  - container counters/system-interface
>>>>  - container counters/nsf-firewall
>>>>  - container counters/nsf-policy-hits
>>>>   The descriptions are too terse and confusing, and need a rewrite.
>>>>
>>>>  -  container counters/nsf-firewall
>>>>  -  container counters/nsf-policy-hits
>>>>     - uses i2nsf-nsf-counters-type-content;
>>>>     Many of the fields expanded from this grouping all say
>>>>     they refer to 'the packet'. Why are they in this global
>>>>     container of counters? E.g. (src-ip, dst-ip, src-port, dst-port)
>>>>     Not clear at all how the server is supposed to apply this
>>>>     grouping to these containers.
>>>>
>>>>  - many leafs use "uint32" type for a rate.
>>>>    Should add a units-stmt
>>>>
>>>>  - leaf counters/nsf-policy-hits/hit-times
>>>>    The purpose and type are confusing and generic.
>>>>    If this is a counter then use counter32
>>>>
>>>>  - cut-and-paste for notification-stmt content should be replaced
>>>>    with grouping/uses instead. Applies to the nsf-detection-*
>>>>    and the various logging notifications. Even a grouping that
>>>>    has 1 object in it is better than cut-and-paste 5+ times
>>>>
>>>> Minor Issues:
>>>>
>>>>  - top-level identifiers are too generic
>>>>    should have 'i2nsf-' prefix to be more reusable outside this module
>>>>
>>>>  - quite a lot of identities that an implementation is required to
>>>> support.
>>>>    If this set of identities might change a lot faster than the
>>>>    notifications and counter objects, then consider putting them
>>>>    in a separate module
>>>>
>>>>  - leaf with same type named differently; both intrusion-attack-type
>>>>    - nsf-detection-intrusion/sub-attack-type
>>>>    - nsf-log-intrusion/attack-type
>>>>
>>>>  - quite a lot of notification event types for a server to implement
>>>>    and a user to manage. All are mandatory (no if-feature statements).
>>>>    Some such as nsf-detection-* subset are very similar.
>>>>    A section or table would be useful that showed the YANG notification
>>>>    names and their purpose -- maybe a reference to another RFC
>>>>    with more details
>>>>
>>>>  - there seems to be notifications for intrusion events and then
>>>>    again for the logging of those events.  This seems excessive
>>>>    but
>>>>
>>>>
>>>>  - grouping common-monitoring-data/time-stamp
>>>>    Is this a different time stamp than the one in the NETCONF
>>>> notification?
>>>>    The 'message generation time' sounds like the standard timestamp.
>>>>    Is this event detection time?
>>>>
>>>>  - grouping common-monitoring-data/module-name
>>>>    Is this a YANG module or some other type of module?
>>>>
>>>>  - there is no way to configure which notifications should be generated
>>>>    or maybe how often.  YANG Push has its own dampening-period.
>>>>    Since these are event stream subscriptions, not datastore
>>>> subscriptions,
>>>>    YANG-Push does not apply to this document at all.
>>>>
>>>>    If there are a lot of notifications then a server implementation
>>>>    might drop some
>>>>
>>>>  - grouping i2nsf-nsf-event-type-content-extend/src-zone
>>>>  - grouping i2nsf-nsf-event-type-content-extend/src-zone
>>>>    These use type 'string'. Consider using a typedef that constrains
>>>>    the string.  General comment where unconstrained string is used:
>>>>    The corner-case values such as empty string are often not allowed
>>>>    in implementations.
>>>>
>>>>
>>>>  - grouping i2nsf-nsf-event-type-content-extend/rule-id
>>>>  - grouping i2nsf-nsf-event-type-content-extend/rule-name
>>>>  - grouping i2nsf-nsf-event-type-content-extend/profile
>>>>    These objects seem to reference objects in another YANG module.
>>>>    If so, then leafref types might be more appropriate.
>>>>
>>>>  - grouping i2nsf-nsf-event-type-content/rule-id
>>>>  - grouping i2nsf-nsf-event-type-content/rule-name
>>>>  - grouping i2nsf-nsf-event-type-content/profile
>>>>  - grouping i2nsf-nsf-event-type-content/raw-info
>>>>    These objects are cut-and-paste duplicates from
>>>>    grouping i2nsf-nsf-event-type-content. They should
>>>>    be in a separate grouping used by both. Also applies
>>>>    to some other sets of objects
>>>>
>>>>  - limits issues (e.g. current-session, maximum-session
>>>>    The type is uint8. This is only OK it is impossible for any
>>>>    implementation to ever have or want more than 255 of them.
>>>>    If some other RFC really does limit the values where uint8
>>>>    is used, then that is OK. If so, a reference-stmt would help.
>>>>
>>>>
>>>>
>>>> _______________________________________________
>>>> I2nsf mailing list
>>>> I2nsf@ietf.org
>>>> https://www.ietf.org/mailman/listinfo/i2nsf
>>>>
>>>
>>>
>>> --
>>> ===========================
>>> Mr. Jaehoon (Paul) Jeong, Ph.D.
>>> Associate Professor
>>> Department of Computer Science and Engineering
>>> Sungkyunkwan University
>>> Office: +82-31-299-4957
>>> Email: jaehoon.paul@gmail.com, pauljeong@skku.edu
>>> Personal Homepage: http://iotlab.skku.edu/people-jaehoon-jeong.php
>>> <http://cpslab.skku.edu/people-jaehoon-jeong.php>
>>>
>>
>
> --
> ===========================
> Mr. Jaehoon (Paul) Jeong, Ph.D.
> Associate Professor
> Department of Computer Science and Engineering
> Sungkyunkwan University
> Office: +82-31-299-4957
> Email: jaehoon.paul@gmail.com, pauljeong@skku.edu
> Personal Homepage: http://iotlab.skku.edu/people-jaehoon-jeong.php
> <http://cpslab.skku.edu/people-jaehoon-jeong.php>
>