Re: [netmod] WG Last Call: draft-ietf-netmod-acl-model-15

Alex Campbell <Alex.Campbell@Aviatnet.com> Mon, 22 January 2018 22:02 UTC

Return-Path: <Alex.Campbell@Aviatnet.com>
X-Original-To: netmod@ietfa.amsl.com
Delivered-To: netmod@ietfa.amsl.com
Received: from localhost (localhost [127.0.0.1]) by ietfa.amsl.com (Postfix) with ESMTP id C34EC12D7E9 for <netmod@ietfa.amsl.com>; Mon, 22 Jan 2018 14:02:10 -0800 (PST)
X-Virus-Scanned: amavisd-new at amsl.com
X-Spam-Flag: NO
X-Spam-Score: -1.91
X-Spam-Level:
X-Spam-Status: No, score=-1.91 tagged_above=-999 required=5 tests=[BAYES_00=-1.9, HTML_MESSAGE=0.001, RCVD_IN_DNSWL_NONE=-0.0001, SPF_PASS=-0.001, T_RP_MATCHES_RCVD=-0.01] 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 9y98l3GBnIzs for <netmod@ietfa.amsl.com>; Mon, 22 Jan 2018 14:02:08 -0800 (PST)
Received: from mail-send.aviatnet.com (mail-send.aviatnet.com [192.147.115.54]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-SHA384 (256/256 bits)) (No client certificate requested) by ietfa.amsl.com (Postfix) with ESMTPS id B7510124D6C for <netmod@ietf.org>; Mon, 22 Jan 2018 14:02:06 -0800 (PST)
From: Alex Campbell <Alex.Campbell@Aviatnet.com>
To: Eliot Lear <lear@cisco.com>, Kent Watsen <kwatsen@juniper.net>, "netmod@ietf.org" <netmod@ietf.org>
Thread-Topic: [netmod] WG Last Call: draft-ietf-netmod-acl-model-15
Thread-Index: AQHTj93UjCIcW+s9eES+j5KHC1NlIKOA0LyA//+d5sg=
Date: Mon, 22 Jan 2018 22:02:05 +0000
Message-ID: <1516658524969.70610@Aviatnet.com>
References: <8C19AD4C-0DCA-4D96-A070-0D76BE92BFA4@juniper.net>, <1e5da232-82cd-5a1a-930e-555796bd2ef7@cisco.com>
In-Reply-To: <1e5da232-82cd-5a1a-930e-555796bd2ef7@cisco.com>
Accept-Language: en-NZ, en-US
Content-Language: en-NZ
X-MS-Has-Attach:
X-MS-TNEF-Correlator:
x-ms-exchange-transport-fromentityheader: Hosted
x-originating-ip: [10.15.6.9]
Content-Type: multipart/alternative; boundary="_000_151665852496970610Aviatnetcom_"
MIME-Version: 1.0
Archived-At: <https://mailarchive.ietf.org/arch/msg/netmod/GyXk4RRK6T4fHdPcAm4zR76N3WI>
Subject: Re: [netmod] WG Last Call: draft-ietf-netmod-acl-model-15
X-BeenThere: netmod@ietf.org
X-Mailman-Version: 2.1.22
Precedence: list
List-Id: NETMOD WG list <netmod.ietf.org>
List-Unsubscribe: <https://www.ietf.org/mailman/options/netmod>, <mailto:netmod-request@ietf.org?subject=unsubscribe>
List-Archive: <https://mailarchive.ietf.org/arch/browse/netmod/>
List-Post: <mailto:netmod@ietf.org>
List-Help: <mailto:netmod-request@ietf.org?subject=help>
List-Subscribe: <https://www.ietf.org/mailman/listinfo/netmod>, <mailto:netmod-request@ietf.org?subject=subscribe>
X-List-Received-Date: Mon, 22 Jan 2018 22:02:11 -0000

Hi,


Good point - adding on to that, I'd like to point out that there are more protocols that use ports besides TCP and UDP, such as SCTP and DCCP.
If the port number was not protocol-specific then devices would also have to match SCTP ports, DCCP ports, and other protocol ports, even for protocols which haven't been invented yet. This is not possible to implement.

> Thus, if a very simple device can understand TCP and UDP ports but cannot understand more detailed information, that is supported.


I don't think YANG features can possibly envision or handle all the potential variations between devices, unless we give each criterion its own separate feature.

To my knowledge, the device I am currently working on doesn't support port range matching, or operators other than 'equals', and I see there is currently no YANG feature for that.

Do you think it would be better to let vendors use deviations to indicate which features aren't supported?



________________________________
From: netmod <netmod-bounces@ietf.org> on behalf of Eliot Lear <lear@cisco.com>
Sent: Tuesday, 23 January 2018 8:14 a.m.
To: Kent Watsen; netmod@ietf.org
Subject: Re: [netmod] WG Last Call: draft-ietf-netmod-acl-model-15


Hi Kent and Mahesh and Sonal,

Thanks very much for working on this draft.  I have noted one problem that I think needs correcting.  I come prepared with a diff.

The current model has {source,dest}-port-or-range hanging off ipv4 or ipv6.  This is a transport parameter and is not appropriate for protocols that do not use ports (ie, ICMP, ESP, etc).  A better locale would be to hang these components underneath l4 underneath their respective tcp and udp branches.

Because this is so basic a function, I propose that this not be included in match-on-tcp or match-on-udp.  Instead, the contents of both tcp and udp be moved to new containers "tcp-all" and "udp-all", respectively, and the ports hang as peers to that.  Thus, if a very simple device can understand TCP and UDP ports but cannot understand more detailed information, that is supported.

 And so from a tree perspective, it would look like this:


       |        |  +--rw (l4)?
       |        |  |  +--:(tcp)
       |        |  |  |  +--rw tcp
       |        |  |  |     +--rw source-port-range-or-operator
       |        |  |  |     |  +--rw (port-range-or-operator)?
       |        |  |  |     |     +--:(range)
       |        |  |  |     |     |  +--rw lower-port    inet:port-number
       |        |  |  |     |     |  +--rw upper-port    inet:port-number
       |        |  |  |     |     +--:(operator)
       |        |  |  |     |        +--rw operator?     operator
       |        |  |  |     |        +--rw port          inet:port-number
       |        |  |  |     +--rw destination-port-range-or-operator
       |        |  |  |     |  +--rw (port-range-or-operator)?
       |        |  |  |     |     +--:(range)
       |        |  |  |     |     |  +--rw lower-port    inet:port-number
       |        |  |  |     |     |  +--rw upper-port    inet:port-number
       |        |  |  |     |     +--:(operator)
       |        |  |  |     |        +--rw operator?     operator
       |        |  |  |     |        +--rw port          inet:port-number
       |        |  |  |     +--rw tcp-all {match-on-tcp}?
       |        |  |  |        +--rw sequence-number?          uint32
       |        |  |  |        +--rw acknowledgement-number?   uint32
       |        |  |  |        +--rw data-offset?              uint8
       |        |  |  |        +--rw reserved?                 uint8
       |        |  |  |        +--rw flags?                    bits
       |        |  |  |        +--rw window-size?              uint16
       |        |  |  |        +--rw urgent-pointer?           uint16
       |        |  |  |        +--rw options?                  uint32
       |        |  |  +--:(udp)
       |        |  |  |  +--rw udp
       |        |  |  |     +--rw source-port-range-or-operator
       |        |  |  |     |  +--rw (port-range-or-operator)?
       |        |  |  |     |     +--:(range)
       |        |  |  |     |     |  +--rw lower-port    inet:port-number
       |        |  |  |     |     |  +--rw upper-port    inet:port-number
       |        |  |  |     |     +--:(operator)
       |        |  |  |     |        +--rw operator?     operator
       |        |  |  |     |        +--rw port          inet:port-number
       |        |  |  |     +--rw destination-port-range-or-operator
       |        |  |  |     |  +--rw (port-range-or-operator)?
       |        |  |  |     |     +--:(range)
       |        |  |  |     |     |  +--rw lower-port    inet:port-number
       |        |  |  |     |     |  +--rw upper-port    inet:port-number
       |        |  |  |     |     +--:(operator)
       |        |  |  |     |        +--rw operator?     operator
       |        |  |  |     |        +--rw port          inet:port-number
       |        |  |  |     +--rw udp-all {match-on-udp}?
       |        |  |  |        +--rw length?   uint16


A diff ietf-packet-fields.yang and ietf-access-control-lists.yang is attached.

Eliot



On 17.01.18 22:55, Kent Watsen wrote:

All,

This starts a two-week working group last call on
draft-ietf-netmod-acl-model-15.

This working group last call ends on January 31st.
Please send your comments to the NETMOD mailing list.

Positive comments, e.g., "I've reviewed this document
and believe it is ready for publication", are welcome!
This is useful and important, even from authors.

Also, could the authors, explicitly CC-ed on this email,
please confirm at this time that they are unaware of
any IPR related to this draft.

Thank you,
NETMOD Chairs

_______________________________________________
netmod mailing list
netmod@ietf.org<mailto:netmod@ietf.org>
https://www.ietf.org/mailman/listinfo/netmod