Re: [netconf] draft-ietf-netconf-udp-notif-10

Jürgen Schönwälder <jschoenwaelder@constructor.university> Mon, 07 August 2023 08:18 UTC

Return-Path: <jschoenwaelder@constructor.university>
X-Original-To: netconf@ietfa.amsl.com
Delivered-To: netconf@ietfa.amsl.com
Received: from localhost (localhost [127.0.0.1]) by ietfa.amsl.com (Postfix) with ESMTP id 9C36EC14CE5E for <netconf@ietfa.amsl.com>; Mon, 7 Aug 2023 01:18:08 -0700 (PDT)
X-Virus-Scanned: amavisd-new at amsl.com
X-Spam-Flag: NO
X-Spam-Score: -2.607
X-Spam-Level:
X-Spam-Status: No, score=-2.607 tagged_above=-999 required=5 tests=[BAYES_00=-1.9, RCVD_IN_DNSWL_LOW=-0.7, RCVD_IN_ZEN_BLOCKED_OPENDNS=0.001, SPF_HELO_NONE=0.001, SPF_PASS=-0.001, T_SCC_BODY_TEXT_LINE=-0.01, URIBL_DBL_BLOCKED_OPENDNS=0.001, URIBL_ZEN_BLOCKED_OPENDNS=0.001] autolearn=unavailable autolearn_force=no
Received: from mail.ietf.org ([50.223.129.194]) by localhost (ietfa.amsl.com [127.0.0.1]) (amavisd-new, port 10024) with ESMTP id 8B3_uOZkiogi for <netconf@ietfa.amsl.com>; Mon, 7 Aug 2023 01:18:04 -0700 (PDT)
Received: from atlas3.jacobs-university.de (atlas3.jacobs-university.de [212.201.44.18]) (using TLSv1.2 with cipher ADH-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by ietfa.amsl.com (Postfix) with ESMTPS id 769AFC14CE27 for <netconf@ietf.org>; Mon, 7 Aug 2023 01:18:03 -0700 (PDT)
Received: from localhost (demetrius5.irc-it.jacobs-university.de [10.70.0.222]) by atlas3.jacobs-university.de (Postfix) with ESMTP id A72C03ED3; Mon, 7 Aug 2023 10:18:01 +0200 (CEST)
X-Virus-Scanned: amavisd-new at jacobs-university.de
Received: from atlas3.jacobs-university.de ([10.70.0.220]) by localhost (demetrius5.jacobs-university.de [10.70.0.222]) (amavisd-new, port 10030) with ESMTP id CCLkTLzj4mxO; Mon, 7 Aug 2023 10:18:01 +0200 (CEST)
Received: from hermes.jacobs-university.de (hermes.jacobs-university.de [212.201.44.23]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (Client CN "hermes.jacobs-university.de", Issuer "DFN-Verein Global Issuing CA" (not verified)) by atlas3.jacobs-university.de (Postfix) with ESMTPS; Mon, 7 Aug 2023 10:18:01 +0200 (CEST)
Received: from localhost (demetrius5.irc-it.jacobs-university.de [10.70.0.222]) by hermes.jacobs-university.de (Postfix) with ESMTP id 45EAA20150; Mon, 7 Aug 2023 10:18:01 +0200 (CEST)
X-Virus-Scanned: amavisd-new at jacobs-university.de
Received: from hermes.jacobs-university.de ([212.201.44.23]) by localhost (demetrius5.jacobs-university.de [10.70.0.222]) (amavisd-new, port 10028) with ESMTP id O-4SGzlyvt46; Mon, 7 Aug 2023 10:18:00 +0200 (CEST)
Received: from localhost (alice.jacobs.jacobs-university.de [10.50.244.51]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (Client did not present a certificate) by hermes.jacobs-university.de (Postfix) with ESMTPS id 562B620095; Mon, 7 Aug 2023 10:17:59 +0200 (CEST)
Date: Mon, 07 Aug 2023 10:17:58 +0200
From: Jürgen Schönwälder <jschoenwaelder@constructor.university>
To: Benoit Claise <benoit.claise=40huawei.com@dmarc.ietf.org>
Cc: Andy Bierman <andy@yumaworks.com>, Tianran Zhou <zhoutianran@huawei.com>, netconf <netconf@ietf.org>
Message-ID: <qfzqwyye4d5mpui5rllbzswgoladki6fb3ouwx65l2ovdh2e65@nuoaeliy5es2>
Reply-To: Jürgen Schönwälder <jschoenwaelder@constructor.university>
Mail-Followup-To: Benoit Claise <benoit.claise=40huawei.com@dmarc.ietf.org>, Andy Bierman <andy@yumaworks.com>, Tianran Zhou <zhoutianran@huawei.com>, netconf <netconf@ietf.org>
References: <8f78607ffe354a09b5bd5c84d4bcd95d@huawei.com> <akrn4urqwqhv4gtyvi26mqoi4qidhzwhss6y5cgcrdhi5bwk65@4my3rjryaazu> <16c3471f7a5c409cbd6ca60ed252609d@huawei.com> <xx32p3wmcfnc5jhyzccieskuirnnnrqjm4lczudcddsssyr2wl@boucgytivgpb> <CABCOCHRw1m2ASyPoEQZp-mxtTmG_pThQc7qvXqkYhqyhLwcUsQ@mail.gmail.com> <tbvxe7kuwh2wevudssdiikeptiny6jl573zah2i73zk2p2lmpm@oq2n4nvvt5mz> <58bc1d6d-31a2-5b9d-15fb-8e6f8120babd@huawei.com>
MIME-Version: 1.0
Content-Type: text/plain; charset="utf-8"
Content-Disposition: inline
In-Reply-To: <58bc1d6d-31a2-5b9d-15fb-8e6f8120babd@huawei.com>
X-Clacks-Overhead: GNU Terry Pratchett
Content-Transfer-Encoding: quoted-printable
Archived-At: <https://mailarchive.ietf.org/arch/msg/netconf/S9QVU4iY3mLqQaWN9oB4-JqTBhk>
Subject: Re: [netconf] draft-ietf-netconf-udp-notif-10
X-BeenThere: netconf@ietf.org
X-Mailman-Version: 2.1.39
Precedence: list
List-Id: NETCONF WG list <netconf.ietf.org>
List-Unsubscribe: <https://www.ietf.org/mailman/options/netconf>, <mailto:netconf-request@ietf.org?subject=unsubscribe>
List-Archive: <https://mailarchive.ietf.org/arch/browse/netconf/>
List-Post: <mailto:netconf@ietf.org>
List-Help: <mailto:netconf-request@ietf.org?subject=help>
List-Subscribe: <https://www.ietf.org/mailman/listinfo/netconf>, <mailto:netconf-request@ietf.org?subject=subscribe>
X-List-Received-Date: Mon, 07 Aug 2023 08:18:08 -0000

On Mon, Aug 07, 2023 at 09:13:14AM +0200, Benoit Claise wrote:
> 
> 
> On 8/7/2023 8:50 AM, Jürgen Schönwälder wrote:
> > On Sat, Aug 05, 2023 at 08:44:16AM -0700, Andy Bierman wrote:
> > > Perhaps the scope of the draft should be narrowed so it is only intended to
> > > YANG Push or server events that do not need reliable delivery.
> > > 
> > So there needs to be at least a very tight applicability statement.
> Well, isn't obvious from the title and abstract? "UDP-based protocol for
> YANG notifications to collect data from networking devices"
> Is there really a need to say "the target of this draft is unreliable
> delivery of YANG Push b/c UDP is unreliable"

The discussion was about the question whether the 'segmentation
option' is necessary and whether the design will work in practice if
large messages (whatever large is) are necessary to support. And
part of the problem is likely that the Message Length field is a bit
unclear when it comes to segmentation.

   *  Message Length is the total length of the message within one UDP
      datagram, measured in octets, including the message header.

It is a bit unclear what an implementation is supposed to do if the
Message Length does not align with the UDP datagram length. I also
wonder how robust the protocol is against UDP injection attacks, if
it is used without DTLS (which seems to be an optional feature).

I personally also wonder why we need a private encoding option
consisting of a type field, a length field, and a variable length
field carrying an opaque encoding description). Why not have an
encoding field big enough to indicate the encoding used. Is the design
of the private encoding option is over engineered (a type, a length,
and a variable length opaque enc. description)?

I am also a bit puzzled by the 3-bit Ver field, for which I read:

   *  Ver represents the PDU (Protocol Data Unit) encoding version.  The
      current version value is 1.

Not sure what 'encoding version' means. Later on, I find an IANA
registry for "UDP-notif header version".

   These are the initial registrations for "UDP-notif header version":

     Value: 0
     Description: UDP based Publication Channel for Streaming Telemetry
     Reference: draft-ietf-netconf-udp-pub-channel-05

     Value: 1
     Description: UDP-based Transport for Configured Subscriptions.
     Reference: RFC-to-be

The term header version does not seem to appear elsewhere. So what is
this registry for? If it relates to the Ver field, the Ver field seems
to be carrying message type information, not an 'encoding version'
(and then 3 bits may be small if two code points are already
allocated, and you likely want a reserved one for extensions.

The more I read, the more questions I seem to have. The fundamental
question, however, is related to the message size reality that this
mechanism aims to support.

/js

-- 
Jürgen Schönwälder              Constructor University Bremen gGmbH
Phone: +49 421 200 3587         Campus Ring 1 | 28759 Bremen | Germany
Fax:   +49 421 200 3103         <https://constructor.university/>