Re: [netmod] [Lsr] I-D Action: draft-ietf-lsr-ospfv3-extended-lsa-yang-10.txt

Martin Björklund <mbj+ietf@4668.se> Thu, 07 April 2022 17:01 UTC

Return-Path: <mbj+ietf@4668.se>
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 58E783A10B2; Thu, 7 Apr 2022 10:01:13 -0700 (PDT)
X-Virus-Scanned: amavisd-new at amsl.com
X-Spam-Flag: NO
X-Spam-Score: -2.11
X-Spam-Level:
X-Spam-Status: No, score=-2.11 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, SPF_PASS=-0.001, T_SCC_BODY_TEXT_LINE=-0.01, URIBL_BLOCKED=0.001] autolearn=ham autolearn_force=no
Authentication-Results: ietfa.amsl.com (amavisd-new); dkim=pass (2048-bit key) header.d=4668.se header.b=OoWV4DcW; dkim=pass (2048-bit key) header.d=messagingengine.com header.b=d5q5dZ3W
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 L8mEyPLRhXMm; Thu, 7 Apr 2022 10:01:07 -0700 (PDT)
Received: from out3-smtp.messagingengine.com (out3-smtp.messagingengine.com [66.111.4.27]) (using TLSv1.2 with cipher ADH-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by ietfa.amsl.com (Postfix) with ESMTPS id 95E613A109C; Thu, 7 Apr 2022 10:01:07 -0700 (PDT)
Received: from compute3.internal (compute3.nyi.internal [10.202.2.43]) by mailout.nyi.internal (Postfix) with ESMTP id 611495C016A; Thu, 7 Apr 2022 13:01:06 -0400 (EDT)
Received: from mailfrontend2 ([10.202.2.163]) by compute3.internal (MEProxy); Thu, 07 Apr 2022 13:01:06 -0400
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=4668.se; h=cc:cc :content-transfer-encoding:content-type:date:date:from:from :in-reply-to:in-reply-to:message-id:mime-version:references :reply-to:sender:subject:subject:to:to; s=fm2; bh=e7Wtx4zk5fPYED dNYqSArvjokz6w/rixmskplG0TT+o=; b=OoWV4DcWXW1okkwABg1jSQb4H2Vjuh E9dG8BPurCwiGfmnX0qmLyYQ9vsLHQkKzXRLYX5t2Wwd6nZ1AFNik6zzleeWoJYm G2BRWy3OnDjnpM6bUuyc5SP0fuN6epklYrG5mi6fgpLfk97uTl5Nq/LPhHNlTLH3 ohzWHQMHMlp02iVPYJxqYkU9nBVvsXrxvw626uYuK+9FrYw3g+UIuxO8YihjtVxQ X9WdgYzbeItSd/PzWAPpWhmCSwjMS8kJmg6os5jhcn4hQopBfoDuB50D5Bb/YePE 4ym9Mzu5ZftwL00s5Z6RXteig1VGkx1NS355Ag0peCuHbYhLvGJEByTg==
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d= messagingengine.com; h=cc:cc:content-transfer-encoding :content-type:date:date:from:from:in-reply-to:in-reply-to :message-id:mime-version:references:reply-to:sender:subject :subject:to:to:x-me-proxy:x-me-proxy:x-me-sender:x-me-sender :x-sasl-enc; s=fm3; bh=e7Wtx4zk5fPYEDdNYqSArvjokz6w/rixmskplG0TT +o=; b=d5q5dZ3WtPr4GTwiiqcZ7qWdFEJG0UelkCHdEA3IGsoW+pgpeA5SxnXxH u2ty908VdFyoijk1ir0ebZWJhv/mYvpS+B3bAMt7Su178kHPVfqsHn3kZ8YcdSkb 6n/1MO0dRjJAgw2SCXIVNMM0rcnuRSVJKXIuqiO9dk9pYm+uZ3tp8gE/Qe7iuC2e BNmJw/33lwXejAaDh+RIMN4tfG7jCJZvDRZaYXFqicKjnO63gMPouQE1d0lGh+ln lSQ8Yz6iYSXGVA73+wZrrDkC9mc+5FjiXJzaGRPl05Akcwj8tLFcGZvoWrUupRqD sjzENwW1JKvSLGbmVqsexkBcCT8sg==
X-ME-Sender: <xms:0RhPYsPuopOV9FucOaQrW8_Xd9Jf-hjCJRGyet3t0nTphj77CyGEWg> <xme:0RhPYi_3nLyuqVdOW_zuy62mLvIdsAFjxJWklLM7bjGRnKiSxLTVH6IRaXArA7tmE Ld_yK1BH3NV2IlVZsg>
X-ME-Received: <xmr:0RhPYjTRne119YQEriOLs0cSHGZBOBm9-DWWeG61xaMWWyRRqDXq4yJFk0JdMWZ-3RWOqlcZaQKxKybjfPsiXBryFffOUVQrkg>
X-ME-Proxy-Cause: gggruggvucftvghtrhhoucdtuddrgedvvddrudejkedguddtlecutefuodetggdotefrod ftvfcurfhrohhfihhlvgemucfhrghsthforghilhdpqfgfvfdpuffrtefokffrpgfnqfgh necuuegrihhlohhuthemuceftddtnecunecujfgurhepfffkvffuhfgjfhfogggtgfesth gsredtredtjeenucfhrhhomhepofgrrhhtihhnuceujhpnrhhklhhunhguuceomhgsjhdo ihgvthhfseegieeikedrshgvqeenucggtffrrghtthgvrhhnpeehteegtdffgfegffekvd ejkeevleetuedutddtfffhlefgtedvveehvdeguedtudenucevlhhushhtvghrufhiiigv pedtnecurfgrrhgrmhepmhgrihhlfhhrohhmpehmsghjodhivghtfhesgeeiieekrdhsvg
X-ME-Proxy: <xmx:0RhPYks3-i5PxOQrCgwxvhSTWzQ3mowuu5MDsIZSBKRCj9xt4oH21Q> <xmx:0RhPYkexng3QoviXYoJZqt57i3pEQCnD_NMnRclI7RIsfj7o86Jesg> <xmx:0RhPYo3hMeDnFOge6ZIZGNBeL4TpoOl4wSkGfteu2SgBoKg3fYBmlQ> <xmx:0hhPYs4LjvN2eoR3scRBetPhJNx1pq83o_9avmWRIRBrJyPqQDmd7w>
Received: by mail.messagingengine.com (Postfix) with ESMTPA; Thu, 7 Apr 2022 13:01:04 -0400 (EDT)
Date: Thu, 07 Apr 2022 19:01:02 +0200
Message-Id: <20220407.190102.216707636489534894.id@4668.se>
To: andy@yumaworks.com
Cc: ietfc@btconnect.com, lsr@ietf.org, netmod@ietf.org, rwilton=40cisco.com@dmarc.ietf.org
From: Martin Björklund <mbj+ietf@4668.se>
In-Reply-To: <CABCOCHS59ZxUYLhJsSCWE_TNcTHtjzYzh-2KpUyswrk_1TQjuQ@mail.gmail.com>
References: <BY5PR11MB419642B5948BC3E96366465FB5E69@BY5PR11MB4196.namprd11.prod.outlook.com> <AM7PR07MB624847EE93F8A9405F2C6965A0E69@AM7PR07MB6248.eurprd07.prod.outlook.com> <CABCOCHS59ZxUYLhJsSCWE_TNcTHtjzYzh-2KpUyswrk_1TQjuQ@mail.gmail.com>
X-Mailer: Mew version 6.8 on Emacs 26.3
Mime-Version: 1.0
Content-Type: Text/Plain; charset="utf-8"
Content-Transfer-Encoding: base64
Archived-At: <https://mailarchive.ietf.org/arch/msg/netmod/KAZdMedFkTBW9o0xyVAsdldHBi8>
Subject: Re: [netmod] [Lsr] I-D Action: draft-ietf-lsr-ospfv3-extended-lsa-yang-10.txt
X-BeenThere: netmod@ietf.org
X-Mailman-Version: 2.1.29
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: Thu, 07 Apr 2022 17:01:14 -0000

Andy Bierman <andy@yumaworks.com> wrote:
> On Thu, Apr 7, 2022 at 9:11 AM tom petch <ietfc@btconnect.com> wrote:
> 
> > From: Lsr <lsr-bounces@ietf.org> on behalf of Rob Wilton (rwilton)
> > <rwilton=40cisco.com@dmarc.ietf.org>
> > Sent: 07 April 2022 10:25
> >
> > I basically agree with Acee, and I think that we should do (b):
> >
> >         b) Change the types as suggested and accept that doing so breaks
> >         modules where zone indexes are meaningful.
> >
> > <tp>
> >
> > I am concerned that such behaviour will damage the standing of the IETF at
> > large.
> >
> >
> MAY for the client means MUST for the server.

I'm not sure what you mean here.

But I'm also not sure I understand what the real problem is.  Just b/c
the type allows a zone doesn't mean that all leafs that use this type
MUST support a zone.  Compare with the value "0.0.0.0".  It is a legal
value according to the pattern, but it will not be valid in all places
where this type is used.  And even when an implementation supports
zones, it will not accept all legal (according to the pattern) values
for the zone index.  Perhaps the solution is to explain this
better in the description?


> But if no servers actually support it, because the YANG does not match
> the operational requirements, then is it really a MUST requirement?
> 
> This seems like a bugfix, and the worst thing the IETF could do wrt/
> standing
> is to force the world to change every module that imports the typedef.
> Since many people were not aware of the full syntax, it is not clear that
> the WG intent was to include a zone.

It is pretty clear IMO that this was not a mistake.  The text
explicitly says:

          The IPv4 address may include a zone
          index, separated by a % sign.

> 
> Seems like a bugfix to a pattern, like we have done several times already.

I don't think this is a bugfix.


/martin


> 
> Andy
> 
> 
> 
> > We clearly laid down rules as to what updates were regarded as compatible
> > so that authors of software could be confident that their work was robust
> > and future-proof.  We did it with SNMP, inter alia, and we have carried
> > that forward with YANG.  To tear up that understanding , creating who knows
> > how much disruption, can only harm the standing of IETF.
> >
> > Much has been said about how implementations have assumed that the address
> > types do not include a zone but no evidence has been put forward for that
> > assertion.
> >
> > I have always assumed that software uses libraries and that the libraries
> > have been written with an understanding of the specifications such that if
> > a zone is received over the wire in conformance with the specification but
> > where the display, field or such like does not allow for a zone, then,
> > tolerant of what to accept, the zone is silently discarded and the address
> > is used without the zone.  But, like the assertion that keeping the zone
> > will cause who knows what damage, I have not done the research to
> > substantiate that assumption.
> >
> > Tom Petch
> >
> > I appreciate that this is an NBC change, but I believe that this is the
> > most intuitive definition and is the best choice longer term.  I also note
> > that the base ipv4-address/ipv6-address types in OpenConfig (where they use
> > the OC copy/version of inet-types and not ietf-inet-types) don't allow a
> > zone to be specified and assumes the default zone.  They have separate
> > types in cases where a zone is allowed to be specified, i.e., aligned to
> > what (b) proposes.
> >
> > For modules that are using/wanting zones (if any), then they can migrate
> > to the new explicit zone type.   draft-ietf-netmod-yang-module-versioning,
> > if it keeps its import "revision-or-derived" extension, would also allow
> > such modules to indicate the dependency on the updated revision/definition
> > of ietf-inet-types.yang.
> >
> > Of course, the description associated with the updated
> > ietf-inet-types.yang revision should clearly highly the
> > non-backwards-compatible change to the types.
> >
> > Rob
> >
> >
> > -----Original Message-----
> > From: iesg <iesg-bounces@ietf.org> On Behalf Of Jürgen Schönwälder
> > Sent: 07 April 2022 08:35
> > To: Acee Lindem (acee) <acee@cisco.com>
> > Cc: lsr@ietf.org; The IESG <iesg@ietf.org>; netmod@ietf.org
> > Subject: Re: [netmod] [Lsr] I-D Action:
> > draft-ietf-lsr-ospfv3-extended-lsa-yang-10.txt
> >
> > Here is roughly what happened:
> >
> > - RFC 6020 (published ~12 years ago) introduced the ip-address
> >   type. It included an optional zone index part since zone indexes
> >   are necessary in certain situations (e.g., configuring services
> >   listening on link-local addresses or clients connecting to services
> >   listening on link-local addresses).
> >
> > - RFC 6991 (published ~9 years ago) added the ip-address-no-zone types
> >   since people felt that it is useful to also an ip address type
> >   without the optional zone part for situations where a zone is not
> >   applicable. The name 'ip-address-no-zone' was picked since the name
> >   ip-address was already taken.
> >
> > I understand that the names resulting from this evolution of the YANG
> > module confuse people not looking up the type definitions. Let me note
> > that using a type allowing for an optional zone for a leaf that never
> > needs a zone is not a fatal error (its like using an int where a short
> > is sufficient) while using a type not allowing for a zone for a leaf
> > that may need zones is a fatal error (using a short where an int is
> > required) requiring an update of the definition of the leaf to fix.
> >
> > What are our options?
> >
> > a) Do nothing and accept that types are called as they are.
> > b) Change the types as suggested and accept that doing so breaks
> >    modules where zone indexes are meaningful.
> > c) Deprecate the types and create a new module defining new types
> >    so that modules can opt-in to use better names.
> > d) Deprecate the -no-zone types and move back to have a single
> >    type for IP addresses.
> >
> > Any other options?
> >
> > How are we going to pick between them?
> >
> > /js
> >
> > On Wed, Apr 06, 2022 at 09:02:23PM +0000, Acee Lindem (acee) wrote:
> > > Jürgen and netmod WG,  +IESG,
> > >
> > > It is not just the IETF models that are using the inet:ip-address for
> > the standard IPv4/IPv6 addresses without zones. Every vendor’s native
> > models and the OpenConfig models use the base types and expect the standard
> > IP address notation. If we don’t fix this, it is something that people can
> > point to as another example of the IETF being out of touch with reality.
> > >
> > > I thought about more, and it might make the backward compatibility
> > easier if we just leave the existing ip-address-no-zone,
> > ipv4-address-no-zone, and ipv6-address-no-zone types and add *-zone types
> > for the remote possibility that someone actually wants to include the
> > zone.  In the existing RFC 6991 BIS document, we could merely remove the
> > zone from the ip-address, ipv4-address, and ipv6-address types and classify
> > this as we would any other bug fix. While including the zone was the
> > original intent of the base types, this is what those of us who work on
> > software products would classify as a requirements bug.
> > >
> > > Thanks,
> > > Acee
> > >
> > > From: Andy Bierman <andy@yumaworks.com>
> > > Date: Tuesday, April 5, 2022 at 3:21 PM
> > > To: Juergen Schoenwaelder <j.schoenwaelder@jacobs-university.de>, Andy
> > Bierman <andy@yumaworks.com>, Acee Lindem <acee@cisco.com>, "lsr@ietf.org"
> > <lsr@ietf.org>, "netmod@ietf.org" <netmod@ietf.org>
> > > Subject: Re: [netmod] [Lsr] I-D Action:
> > draft-ietf-lsr-ospfv3-extended-lsa-yang-10.txt
> > >
> > >
> > >
> > > On Tue, Apr 5, 2022 at 12:02 PM Jürgen Schönwälder <
> > j.schoenwaelder@jacobs-university.de<mailto:
> > j.schoenwaelder@jacobs-university.de>> wrote:
> > > On Tue, Apr 05, 2022 at 10:03:25AM -0700, Andy Bierman wrote:
> > > > >
> > > > > The best outcome would be to fix ip-address to not include the zone,
> > > > > introduce ip-address-zone, and deprecate ip-address-no-zone. My take
> > all
> > > > > the is that all the existing usages do not require zone and this
> > would be a
> > > > > fix as opposed to a change.
> > > > >
> > > > >
> > > > I don't think this will harm our implementations.
> > > > The type is still string. The pattern will change but that is handled
> > by a
> > > > library.
> > > > Whatever pattern is used will get handled the same way.
> > >
> > > Either a zone is allowed to be present or it is not, this does make a
> > > difference, its not a cosmetic change.
> > >
> > >
> > > True. The code will probably accept the pattern then fail trying to use
> > the string.
> > > If the client sends the form with a zone.
> > >
> > >
> > >
> > >
> > > > The same problem exists for 'date' and 'date-no-zone' types,
> > > > but they are not used very much.
> > >
> > > Perhaps we should call types a, b, c, and so on - this may force
> > > people to read the descriptions. ;-)
> > >
> > > For some reason, the smarter the person, the less likely they are to
> > > read any of the documentation before using some software.
> > > I call it the "it should work the way I would design it" phenomenon :-)
> > >
> > > You have to admit that Acee's suggestion is more intuitive than the
> > current
> > > definitions.
> > >
> > > Clearly an NBC change.
> > > IMO it is more useful to put some YANG extension magic in these specific
> > typedefs
> > > than just bumping a major revision number. This is a great use-case for
> > the version DT.
> > >
> > > There probably is no solution path where nobody has to change any YANG
> > or any code
> > > and everything still works.
> > >
> > >
> > >
> > > /js
> > >
> > > Andy
> > >
> > > --
> > > Jürgen Schönwälder              Jacobs University Bremen gGmbH
> > > Phone: +49 421 200 3587         Campus Ring 1 | 28759 Bremen | Germany
> > > Fax:   +49 421 200 3103         <https://www.jacobs-university.de/>
> >
> > --
> > Jürgen Schönwälder              Jacobs University Bremen gGmbH
> > Phone: +49 421 200 3587         Campus Ring 1 | 28759 Bremen | Germany
> > Fax:   +49 421 200 3103         <https://www.jacobs-university.de/>
> >
> > _______________________________________________
> > Lsr mailing list
> > Lsr@ietf.org
> > https://www.ietf.org/mailman/listinfo/lsr
> >
> > _______________________________________________
> > netmod mailing list
> > netmod@ietf.org
> > https://www.ietf.org/mailman/listinfo/netmod
> >