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

Andy Bierman <andy@yumaworks.com> Sat, 05 August 2023 15:44 UTC

Return-Path: <andy@yumaworks.com>
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 A3536C151070 for <netconf@ietfa.amsl.com>; Sat, 5 Aug 2023 08:44:34 -0700 (PDT)
X-Virus-Scanned: amavisd-new at amsl.com
X-Spam-Flag: NO
X-Spam-Score: -2.105
X-Spam-Level:
X-Spam-Status: No, score=-2.105 tagged_above=-999 required=5 tests=[BAYES_00=-1.9, DKIM_SIGNED=0.1, DKIM_VALID=-0.1, DKIM_VALID_AU=-0.1, DKIM_VALID_EF=-0.1, HTML_MESSAGE=0.001, RCVD_IN_ZEN_BLOCKED_OPENDNS=0.001, SPF_HELO_NONE=0.001, SPF_PASS=-0.001, T_SCC_BODY_TEXT_LINE=-0.01, URIBL_BLOCKED=0.001, URIBL_DBL_BLOCKED_OPENDNS=0.001, URIBL_ZEN_BLOCKED_OPENDNS=0.001] autolearn=ham autolearn_force=no
Authentication-Results: ietfa.amsl.com (amavisd-new); dkim=pass (2048-bit key) header.d=yumaworks.com
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 qSoAkpIgs05V for <netconf@ietfa.amsl.com>; Sat, 5 Aug 2023 08:44:30 -0700 (PDT)
Received: from mail-lf1-x12d.google.com (mail-lf1-x12d.google.com [IPv6:2a00:1450:4864:20::12d]) (using TLSv1.3 with cipher TLS_AES_128_GCM_SHA256 (128/128 bits) key-exchange X25519 server-signature RSA-PSS (2048 bits) server-digest SHA256) (No client certificate requested) by ietfa.amsl.com (Postfix) with ESMTPS id 1F2D9C151069 for <netconf@ietf.org>; Sat, 5 Aug 2023 08:44:29 -0700 (PDT)
Received: by mail-lf1-x12d.google.com with SMTP id 2adb3069b0e04-4fe48a2801bso5240135e87.1 for <netconf@ietf.org>; Sat, 05 Aug 2023 08:44:29 -0700 (PDT)
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=yumaworks.com; s=google; t=1691250268; x=1691855068; h=to:subject:message-id:date:from:in-reply-to:references:mime-version :from:to:cc:subject:date:message-id:reply-to; bh=Dz854kZwpLzXLgzZosXbia96QV+wrbbEpYJ+FJ4ErKg=; b=VsfEv0JOtWDFLtXL+pY/nm3twNad+wbIzj3RUW1WOlQyQx3EpcG3lJucNpDXRxVrj/ 3qZWanGHAdCYqARV1E9ZyoC7+TFv15H0g1moRG/HVpNGNGlLyYFtSZRcsqoxLlzGUAst efMpt4L5R1wSNAAu6LTvI7+s+fKEUaElP2KgtRmYNyf0/3uV0XnnJZCCDtVF3rmYltRa 3udAcupkVul9/iuRAZQ5G8pDnWk7bQHkzB2yz5in3Id8jncPY1ab0cA49TL5kB7VpAdE wwN0rocT5Jh3eRAcixqfnqhUhJOzLbQGp6eK+Az1g7HFgUBokrvnFX59ILI8h6XD21JR KnMA==
X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20221208; t=1691250268; x=1691855068; h=to:subject:message-id:date:from:in-reply-to:references:mime-version :x-gm-message-state:from:to:cc:subject:date:message-id:reply-to; bh=Dz854kZwpLzXLgzZosXbia96QV+wrbbEpYJ+FJ4ErKg=; b=We4nrM06FSSzSXABCHGNh8GO4UzZp6sjmzoL2+iJyQ5z602UnsOKZ5OJl0vNCE1py3 EQiMtrE+ko0p49x6G3utEZ3wUE6XQhJXOKECrT/1etdgwc7/TQOPt6d4WEr4NJXEgZ8r dSTt2IonX/hXKlQrn4TGF9a4OmpozTlk/BRMuAelq+JPkHpneTJxMoIIXZOr7Oyz1PLT ppYpcRhsIDUCFaalSXjRJPum6/pxFybZ5PQbPyJCl0XXLBF3/1sRVn2S+kxAuH2QXHN3 48A30PqSu61qlr0Cx+TO2ckRNHRIXpFq6J/OACQHZBtA2zjhk6WMjM2UJwDUIMQpHlOA S/Mw==
X-Gm-Message-State: AOJu0YxnuwCky24Ql2aWlnaLe/vFbNNBxMxCOgrB65pIUOPXETJAyktB A9VcyuUxCqIa9UQGIEhmDplX8Dtb4KshTTLGPvkJR77GkWF0CokqFG8=
X-Google-Smtp-Source: AGHT+IHQ1t08rPnN2tqG9nfk+gLttPj+k0FxSWpq6h9LIcCMwcEcSLIjjHe6HIVMWuOE8mAms92qvy10x6XpGNoCSzA=
X-Received: by 2002:a05:6512:324e:b0:4fb:8435:3efc with SMTP id c14-20020a056512324e00b004fb84353efcmr2949027lfr.16.1691250267390; Sat, 05 Aug 2023 08:44:27 -0700 (PDT)
MIME-Version: 1.0
References: <8f78607ffe354a09b5bd5c84d4bcd95d@huawei.com> <akrn4urqwqhv4gtyvi26mqoi4qidhzwhss6y5cgcrdhi5bwk65@4my3rjryaazu> <16c3471f7a5c409cbd6ca60ed252609d@huawei.com> <xx32p3wmcfnc5jhyzccieskuirnnnrqjm4lczudcddsssyr2wl@boucgytivgpb>
In-Reply-To: <xx32p3wmcfnc5jhyzccieskuirnnnrqjm4lczudcddsssyr2wl@boucgytivgpb>
From: Andy Bierman <andy@yumaworks.com>
Date: Sat, 05 Aug 2023 08:44:16 -0700
Message-ID: <CABCOCHRw1m2ASyPoEQZp-mxtTmG_pThQc7qvXqkYhqyhLwcUsQ@mail.gmail.com>
To: Jürgen Schönwälder <jschoenwaelder@constructor.university>, Tianran Zhou <zhoutianran@huawei.com>, netconf <netconf@ietf.org>
Content-Type: multipart/alternative; boundary="0000000000006a1b5906022ee3b5"
Archived-At: <https://mailarchive.ietf.org/arch/msg/netconf/Di980EevDhyltCiXYUjq1uOMtKQ>
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: Sat, 05 Aug 2023 15:44:34 -0000

On Sat, Aug 5, 2023 at 2:49 AM Jürgen Schönwälder
<jschoenwaelder@constructor.university> wrote:

> The abstract says:
>
>    The objective is to provide a lightweight approach to enable higher
>    frequency and less performance impact on publisher and receiver
>    processes compared to already established notification mechanisms.
>
> It is not clear what 'performance impact' means here. Anyway, is there
> a proof that this design accomplishes the objective and how much is
> the gain over a transport that does segmentation properly, e.g., TCP?
> If you worry about CPU efficiency, the first things to consider is
> likely using a binary encoding. Or is the argument that linecards
> still can't do TCP in 2023 and 'performce' means code size on
> linecards, saving TCP but instead implementing ad-hoc fragmentations
> in application-layer transports?
>

The big question: Is it OK to accept non-reliability for the notifications?
It depends on the notification content.

Configured subscriptions using UDP allow "SNMP style" collectors:
- This is a very real advantage over dynamic subscriptions.
- This is easier to implement with UDP than TCP.
- This avoids CallHome issues since no need for the collector to connect to
the publisher at all

IMO the old SNMP design of needing to know the MTU and needing to
hand-craft TRAPs
that fit within the MTU is truly awful, and now that we have streaming
servers that rely
on chunking in the application protocol, we should not go backwards.

The UDP draft design supports a streaming server (the 'L' bit in sec. 4.1).
It is easy to identify the last buffer being sent.

The number of segments is likely to be 1 - 5 for a given push update report.
There are times when a full report is sent and this could be a lot of
segments.
These are also the exact updates that the application cannot really ignore
if lost.

The UDP draft is designed for hand-crafted, small 'push updates'.
However the scope is for all notifications, not just push updates.
In general, notification events are the least likely to be OK to ignore if
lost.

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.






> UDP works great for small self-contained messages (and with small I
> mean something up to the size of a typical MTU). For everything
> requiring larger messages, you will have to invent a fragmentation and
> reassembly logic that may at the end be in the same ballpark as a
> light-weight TCP implementation.
>
> Has this work ever been received review by transport area people?
>
> To answer your question, there likely should be a 'do not use this'
> recommendation unless you have full control of all components involved
> (i.e., inside a box where the frontend NC/RC agent can ensure that
> requests from the outside are mapped to internal communication flows
> that stay within the operational limits of this transport).
>
> /js
>
>

Andy


> On Sat, Aug 05, 2023 at 09:21:45AM +0000, Tianran Zhou wrote:
> > Hi Juergen,
> >
> > What’s your suggestion here?
> > How about describing this as operational considerations?
> >
> > Cheers,
> > Tianran
> >
> >
> >
> > ________________________________
> >
> > Sent from WeLink
> > 发件人: Jürgen Schönwälder<jschoenwaelder@constructor.university<mailto:
> jschoenwaelder@constructor.university>>
> > 收件人: Tianran Zhou<zhoutianran@huawei.com<mailto:zhoutianran@huawei.com>>
> > 抄送: Tschofenig, Hannes<hannes.tschofenig@siemens.com<mailto:
> hannes.tschofenig@siemens.com>>;netconf<netconf@ietf.org<mailto:
> netconf@ietf.org>>
> > 主题: Re: [netconf] draft-ietf-netconf-udp-notif-10
> > 时间: 2023-08-05 14:49:42
> >
> > On Sat, Aug 05, 2023 at 06:26:50AM +0000, Tianran Zhou wrote:
> > >
> > > Of course, with so many fragments the probability of discarding the
> entire message due to the lost of one or more UDP packets is large even if
> the probability of loss of an individual datagram is very small. I hope you
> are not going to need so many fragments in a practical application.
> > >
> > > ZTR> I understand your point. I agree in a practical application, too
> large msg should not be encouraged. But the size of the message is
> requested by the users. Fragmentation will not introduce more loss itself.
> It just provide the possibility that user can request larger message.
> > >
> >
> > If the probability of loosing a UDP datagram is 0.1% and you need
> > 100 UDP datagrams to send a larger NETCONF message, then the loss
> > probability for the NETCONF message is close to 10%. Yes, your
> > fragmentation scheme does not change the loss probability of UDP
> > datagrams but the fact that all datagrams need to arrive correctly
> > in order to deliver the NETCONF message causes the loss probability
> > of NETCONF messages to go up quickly as the number of fragments
> > increases. The question is whether 'the requesting users' (who is
> > that?) can be assumed to understand the details and that there is
> > somewhere (internal?) a UDP transport involved that has possible
> > message size sclability problems.
> >
> > /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/>
> >
>
> --
> 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/>
>
> _______________________________________________
> netconf mailing list
> netconf@ietf.org
> https://www.ietf.org/mailman/listinfo/netconf
>