Re: [Last-Call] Yangdoctors last call review of draft-ietf-bfd-rfc9127-bis-01

Mahesh Jethanandani <mjethanandani@gmail.com> Wed, 09 February 2022 17:53 UTC

Return-Path: <mjethanandani@gmail.com>
X-Original-To: rtg-bfd@ietfa.amsl.com
Delivered-To: rtg-bfd@ietfa.amsl.com
Received: from localhost (localhost [127.0.0.1]) by ietfa.amsl.com (Postfix) with ESMTP id A46593A0AFF; Wed, 9 Feb 2022 09:53:22 -0800 (PST)
X-Virus-Scanned: amavisd-new at amsl.com
X-Spam-Flag: NO
X-Spam-Score: -2.097
X-Spam-Level:
X-Spam-Status: No, score=-2.097 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, FREEMAIL_FROM=0.001, HTML_MESSAGE=0.001, SPF_HELO_NONE=0.001, SPF_PASS=-0.001, URIBL_BLOCKED=0.001] autolearn=ham autolearn_force=no
Authentication-Results: ietfa.amsl.com (amavisd-new); dkim=pass (2048-bit key) header.d=gmail.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 sKyfB903GWks; Wed, 9 Feb 2022 09:53:18 -0800 (PST)
Received: from mail-oi1-x236.google.com (mail-oi1-x236.google.com [IPv6:2607:f8b0:4864:20::236]) (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 5A1BE3A0B21; Wed, 9 Feb 2022 09:53:14 -0800 (PST)
Received: by mail-oi1-x236.google.com with SMTP id y23so3224788oia.13; Wed, 09 Feb 2022 09:53:14 -0800 (PST)
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20210112; h=from:message-id:mime-version:subject:date:in-reply-to:cc:to :references; bh=DWiyR3TmTbmzhjoLUtisGFRhbJWEnveisfsIC3/Cbn8=; b=aBm63bxUWeZqrnv3H/N7/vG0eLaf2yD00WmnjSkJ5Ge9WlKxS6l6rfJf8l1S6E9lEp sfOklxGH8G7Y5ZWjvJouUY+5WfYm8g+dWp516+en2o84ZVAOxxw0l1txPBhovgYsg70z Ec6eP7Hfomr+GMZBnd6PKYYyLspHN1L63NOly6HqSr6WPZfgUNN8R7ZOOZHZwJrTXaLA Aap/REwl65hHvFWZbiZG4ozgNi0IVDcYLOqH6yzxIjmH7tuLMuG/wOeemVipBgICgLdl 9ySb7FWGlaOcNVLSFv2u6fhEU01yEaz+3Nsm8QZhKyyvvJvqa3CZr+Y+hRDiNTIdRqUY XeQA==
X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20210112; h=x-gm-message-state:from:message-id:mime-version:subject:date :in-reply-to:cc:to:references; bh=DWiyR3TmTbmzhjoLUtisGFRhbJWEnveisfsIC3/Cbn8=; b=SudNd6/ceZNrfZxC3arSKNw8r9g1WgbHrHXNFyTXkEdMPuvPiizfz2vBmK0U+ixpIm XzH8k9AZ1/4IqJ0Y8/d+fVNMpmOVNRedtYxxGl0vz8KQ3IAAlHR56S4e7pY8ne2evCYj AimM2H3oedbm/CJgL+MUjg6j9Zmxoi71ZG6erlP5aj1Hsq2QEJhBU75SErFuV6qvIiIv x5Sb6HBCYRW3U6p6PInm6Cdn2W407MZ3rz9nl3XU8Y6jKtCTyid9ErTe4Bu+l0X6klzg W28/8/bIffBy+7Iym7c7HwNJ0N5E45zQ1+Ow7fRM687lpst06Qkw8yPID5lntGDwJAi2 b4zw==
X-Gm-Message-State: AOAM5320WvxFCv5/FNjOrPctqrMcAywLP99MvowXGZY+nhDnEZvdiMOV w+ZoNnfjZ8Im0wA9gck2NAQ=
X-Google-Smtp-Source: ABdhPJzfjIQ2v2I1/1859Cd2Mdl3BRHcRKsUwhemvIO254PP2pcLmMnkXzPWIZySvuVMer/3n/6TOg==
X-Received: by 2002:a05:6808:bcd:: with SMTP id o13mr1741279oik.30.1644429192094; Wed, 09 Feb 2022 09:53:12 -0800 (PST)
Received: from smtpclient.apple (adsl-70-234-233-187.dsl.rcsntx.sbcglobal.net. [70.234.233.187]) by smtp.gmail.com with ESMTPSA id be19sm7415562oib.31.2022.02.09.09.53.10 (version=TLS1_2 cipher=ECDHE-ECDSA-AES128-GCM-SHA256 bits=128/128); Wed, 09 Feb 2022 09:53:11 -0800 (PST)
From: Mahesh Jethanandani <mjethanandani@gmail.com>
Message-Id: <9C7435A0-39F5-46CF-A17D-4329A1F240D6@gmail.com>
Content-Type: multipart/alternative; boundary="Apple-Mail=_5287ED8A-966A-4FF3-B26C-DFEFEC815624"
Mime-Version: 1.0 (Mac OS X Mail 14.0 \(3654.120.0.1.13\))
Subject: Re: [Last-Call] Yangdoctors last call review of draft-ietf-bfd-rfc9127-bis-01
Date: Wed, 09 Feb 2022 09:53:09 -0800
In-Reply-To: <11F2C8D5-3A28-4ACA-8E26-4CE7ABF1B8EE@cisco.com>
Cc: t petch <ietfa@btconnect.com>, Jeffrey Haas <jhaas@pfrc.org>, YANG Doctors <yang-doctors@ietf.org>, "rtg-bfd@ietf. org" <rtg-bfd@ietf.org>, "draft-ietf-bfd-rfc9127-bis.all@ietf.org" <draft-ietf-bfd-rfc9127-bis.all@ietf.org>, tom petch <daedulus@btconnect.com>, "last-call@ietf.org" <last-call@ietf.org>
To: Jan Lindblad <jlindbla@cisco.com>
References: <164388736861.32491.11649774516476095771@ietfa.amsl.com> <E68495BC-E0D3-4192-9C7F-C4E6F1EF8E9A@gmail.com> <61FCF2DA.7080706@btconnect.com> <22A163B4-F2B0-48EF-8334-AD234F886327@cisco.com> <6201581F.1010901@btconnect.com> <C5882481-1B62-44C8-889C-E64E611BE38F@pfrc.org> <6203F4C0.5050106@btconnect.com> <11F2C8D5-3A28-4ACA-8E26-4CE7ABF1B8EE@cisco.com>
X-Mailer: Apple Mail (2.3654.120.0.1.13)
Archived-At: <https://mailarchive.ietf.org/arch/msg/rtg-bfd/jFjETaxS5bGOX5y5cfWe9i54eHo>
X-BeenThere: rtg-bfd@ietf.org
X-Mailman-Version: 2.1.29
Precedence: list
List-Id: "RTG Area: Bidirectional Forwarding Detection DT" <rtg-bfd.ietf.org>
List-Unsubscribe: <https://www.ietf.org/mailman/options/rtg-bfd>, <mailto:rtg-bfd-request@ietf.org?subject=unsubscribe>
List-Archive: <https://mailarchive.ietf.org/arch/browse/rtg-bfd/>
List-Post: <mailto:rtg-bfd@ietf.org>
List-Help: <mailto:rtg-bfd-request@ietf.org?subject=help>
List-Subscribe: <https://www.ietf.org/mailman/listinfo/rtg-bfd>, <mailto:rtg-bfd-request@ietf.org?subject=subscribe>
X-List-Received-Date: Wed, 09 Feb 2022 17:53:23 -0000

I am ok with the draft announcing backward incompatibility and explaining the backward incompatibility with a combination of description statement and “What has changed since RFC 9127” section in the draft.

But I would defer to the netmod WG and/or YANG doctors to produce the guidelines. I do not think this draft is the right place to write the guidelines.

Thanks.

> On Feb 9, 2022, at 9:36 AM, Jan Lindblad (jlindbla) <jlindbla@cisco.com> wrote:
> 
> Tom, Jeff,
> 
>>> If an implementation, for whatever reason, couldn't support the items that were covered under the new if-feature, they would have already deviated them away.
>> 
>> I do not understand.  The case that concerns me is an implementation written to RFC9127 that knows the rules for backwards compatibility and so knows what it can rely on when a revised module of the same name is found.  Except, AFAICT, it cannot because we are breaking the rules and giving the user little or no help in this I-D to work out why their software no longer works.
> 
> I think what Jeff and the BFD team are saying is that there are no such implementations in the real world. As far as I can tell, that may well be true.
> 
>> As Jan said, we have not done this before and are in uncharted territory.  I think we should be more helpful.  And the NETMOD WG or the YANG doctors, or both, need to produce guidelines ready for the next time.
> 
> This is exactly my point. We're setting a precedence here. Let's do it right. There may be nobody that cares that it's not compatible, but I still prefer that we establish a good template for how to declare breakages of this kind, and then stick to it. At least until the YANG Rev DT publishes revised rules and official YANG statements.
> 
> Best Regards,
> /jan
> 
> 
>>> 
>>> An implementation now has the option to not advertise the feature for that case.  It may also perversely choose to continue to apply a deviation.
>>> 
>>> No new nodes have been added.  Implementations (however unlikely they were to have been done) for RFC 9127 for these nodes would have already had to have dealt with them.
>>> 
>>> -- Jeff
>>> 
>>> 
>>>> On Feb 7, 2022, at 12:34 PM, t petch <ietfa@btconnect.com> wrote:
>>>> 
>>>> On 07/02/2022 15:49, Jan Lindblad (jlindbla) wrote:
>>>>> Mahesh, all,
>>>>> 
>>>>> I tend to agree with Tom that the revision description you proposed was a bit terse. What I had in mind was perhaps more along these lines:
>>>>> 
>>>>>    description
>>>>>      "This revision is non-backwards-compatible with the previous revision.
>>>>> 
>>>>>       This revision adds an if-feature statement for the client configuration parameters.
>>>>>       If a client using the previous YANG revision of this module connects to a
>>>>>       server that implements the current YANG revision of this module, but does
>>>>>       not implement the feature, the client may not function properly.
>>>>> 
>>>>>       This change was introduced despite this incompatibility because ...
>>>>>       ...
>>>>>      ";
>>>>> 
>>>>> Don't take the text above literally, I only wrote that to give an idea what I had in mind. There isn't much precedence for how IETF documents NBC breakage in YANG modules, so we have to decide upon the right verbiage level here. In the drafts produced by the versioning design team, there will be an annotation to include in cases like this,   rev:non-backwards-compatible;   which will make this rather clear. While waiting for that to be implemented, I'd say we should err on the side of making it a little overly clear, rather than hiding the fact.
>>>> 
>>>> 
>>>> That is more what I would hope to see.  The key part for me is that fact that an if-feature has been added.  I would have added something like
>>>> 'Consequently, a client that does not support this feature may be unable to retrieve the objects it would expect to be able to.'
>>>> although that may be stating the obvious!
>>>> 
>>>> Tom Petch
>>>> 
>>>> 
>>>>> 
>>>>> Best Regards,
>>>>> /jan
>>>>> 
>>>>> 
>>>>> 
>>>>> Thanks first of all for the review.
>>>>> 
>>>>> On Feb 3, 2022, at 3:22 AM, Jan Lindblad via Datatracker <noreply@ietf.org<mailto:noreply@ietf.org>> wrote:
>>>>> 
>>>>> Reviewer: Jan Lindblad
>>>>> Review result: Ready with Issues
>>>>> 
>>>>> This is the last call YANG Doctor review of draft-ietf-bfd-rfc9127-bis.
>>>>> Browsing the mail archives, this has been a long story. Realizing that the
>>>>> context of the bis is to fix a particular issue, I have focused only on the
>>>>> diffs from RFC 9127. I feel any additional nitpicks I might find in a complete
>>>>> review would not be welcome at this stage.
>>>>> 
>>>>> I have reviewed the diffs, and find them fulfill the desired technical goals.
>>>>> Since this update breaks backwards compatibility as defined in RFC 6020 sec 10
>>>>> and RFC 7950 sec 11, the process for approving this change has been discussed
>>>>> at length. One argument that has been put forward for going ahead is that the
>>>>> previous version of this module was released only a short time ago, so there is
>>>>> no proliferation of impacted systems in the field.
>>>>> 
>>>>> Another argument has been that the YANG Versioning Design Team is working on
>>>>> updated backwards compatibility rules. The Ver-DT proposed updates to the
>>>>> compatibility rules would indeed allow a change of this kind under certain
>>>>> conditions. A key condition for allowing such a break with the backwards
>>>>> compatibility is that the module revision history announces this break clearly
>>>>> to all readers. This is not the case in the -01 version of the modules.
>>>>> 
>>>>>  revision 2022-01-04 {
>>>>>      description
>>>>>        "Updates to add client configuration parameters feature.";
>>>>> 
>>>>> In my YANG Doctor opinion, updating the revision statement to clearly state
>>>>> that this version is not backwards compatible with the previous version is an
>>>>> absolute requirement. I think it would also be fair to module readers to add a
>>>>> few sentences explaining what's going on here.
>>>>> 
>>>>> How does this sound?
>>>>> 
>>>>> OLD:
>>>>>      "Updates to add client configuration parameters feature.";
>>>>> 
>>>>> NEW:
>>>>>      "Updates to add client configuration parameters feature.
>>>>>       This update breaks backward compatability with earlier
>>>>>       version of the model. The new feature prevents up to
>>>>>       three client configuration parameters from being
>>>>>       included, where they were not needed.";
>>>>> 
>>>>> 
>>>>> I think that you need more than that (for the reader who does not follow the BFD WG).  I think that there needs to be a reference to where the compatability rules are - RFC7950 s.11 - and the nature of the breakage in the language of NETMOD so that readers can judge the impact thereof.
>>>>> 
>>>>> Tom Petch
>>>>> 
>>>>> 
>>>>> Thanks.
>>>>> 
>>>>> 
>>>>> Mahesh Jethanandani
>>>>> mjethanandani@gmail.com<mailto:mjethanandani@gmail.com>
>>>>> 
>>>>> 
>>>> 
>>>> --
>>>> last-call mailing list
>>>> last-call@ietf.org
>>>> https://www.ietf.org/mailman/listinfo/last-call
>>> 
>>> .
>>> 
> 


Mahesh Jethanandani
mjethanandani@gmail.com