Re: [mpls] Robert Wilton's Discuss on draft-ietf-mpls-base-yang-15: (with DISCUSS and COMMENT)
Tarek Saad <tsaad.net@gmail.com> Tue, 20 October 2020 14:57 UTC
Return-Path: <tsaad.net@gmail.com>
X-Original-To: mpls@ietfa.amsl.com
Delivered-To: mpls@ietfa.amsl.com
Received: from localhost (localhost [127.0.0.1]) by ietfa.amsl.com (Postfix) with ESMTP id 26A5E3A1096; Tue, 20 Oct 2020 07:57:27 -0700 (PDT)
X-Virus-Scanned: amavisd-new at amsl.com
X-Spam-Flag: NO
X-Spam-Score: -2.098
X-Spam-Level:
X-Spam-Status: No, score=-2.098 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, 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 X6nir9_4H7MJ; Tue, 20 Oct 2020 07:57:25 -0700 (PDT)
Received: from mail-io1-xd2f.google.com (mail-io1-xd2f.google.com [IPv6:2607:f8b0:4864:20::d2f]) (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 19FB23A0FFB; Tue, 20 Oct 2020 07:57:24 -0700 (PDT)
Received: by mail-io1-xd2f.google.com with SMTP id p15so3810689ioh.0; Tue, 20 Oct 2020 07:57:24 -0700 (PDT)
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20161025; h=from:to:cc:subject:thread-topic:thread-index:date:message-id :references:accept-language:content-language :content-transfer-encoding:mime-version; bh=qGSPFPuqhCW0iOkjwGvC0ppV9+8CwupBXuwhvpWY3vw=; b=BbPt0rNRO2K7knkYjj7u1PepfOTH0bNeoBsFTouj8OJC98cKA1fDzmUUMlWVk0sypO /3CgC+Y8LmyGda3HezzK7qKlITPqg8Hrv/PvqtsG5BZpg6/nQ5GQPLtCl0Zt3YzJ6fY3 KL9RsZIN3pfjXcCrg9K4oWLwTgL0wcaiW3JiBOdM832pb+87UydYD42HqCE/gCQAZcHK ue9YuykPyDg44TdZx7JMR8kPTVh/ztD8HkHXhTWYDB0lzjqaO5zu8o12JkOuJmOGC4dm ABFifE+euPzEmBJ/0nYH2MmiZ2Pww43Mpar993nyTSyozEOizOM63LX/KaghJXXk6L+S RuwQ==
X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20161025; h=x-gm-message-state:from:to:cc:subject:thread-topic:thread-index :date:message-id:references:accept-language:content-language :content-transfer-encoding:mime-version; bh=qGSPFPuqhCW0iOkjwGvC0ppV9+8CwupBXuwhvpWY3vw=; b=FB6tZh3C9w8HomvyoDwa6G0DCCJJRDFNPBqnj8zbsJVJvH23tQ1mpbNWvaFQT0L04T 3vPx+XWEuMXpjmwOOJjTJDkxnZLMKYoPw0qjCC4B66XB84A/8fLzoX0nGYdnVP4ypS8s l0WxQYsCVPd/GX0J5/wYvcviZFYlKkRP85hHLXyHF8wXqZQqT2NYsqM3Z3igQGw8tvlM CsyQ0JDDfTYSJW+pD2GC6CRJeZ4E6x6zP80AISxDYKbDs4QvN/dRTSWK8RP1RqasXx2W gc+Cr1DrkYCJueEoKyCyXW6lPSHjUJ1XYdpZHRAkJgOOFHt652vGIgx4/xpEUpAS2ezy MdaA==
X-Gm-Message-State: AOAM532GTYFNBtV3OTENVAMtYaKRV65CE7SnVKFnifSrkEyANFfN1nJO m3KVMo9QVzBDUtHDb6cvL0M=
X-Google-Smtp-Source: ABdhPJzq+az0XHkfhwEKNXDkMWyF3puXPc/AP9nAC+kxmRtiovIY2CU0Ycd90jfBRaiZY98k5pNOCg==
X-Received: by 2002:a6b:93d6:: with SMTP id v205mr2435741iod.188.1603205843211; Tue, 20 Oct 2020 07:57:23 -0700 (PDT)
Received: from DM5PR1901MB2150.namprd19.prod.outlook.com ([2603:1036:4:9e::5]) by smtp.gmail.com with ESMTPSA id r3sm1852059iog.55.2020.10.20.07.57.21 (version=TLS1_2 cipher=ECDHE-ECDSA-AES128-GCM-SHA256 bits=128/128); Tue, 20 Oct 2020 07:57:22 -0700 (PDT)
From: Tarek Saad <tsaad.net@gmail.com>
To: Robert Wilton <rwilton@cisco.com>, The IESG <iesg@ietf.org>
CC: "draft-ietf-mpls-base-yang@ietf.org" <draft-ietf-mpls-base-yang@ietf.org>, "mpls-chairs@ietf.org" <mpls-chairs@ietf.org>, "mpls@ietf.org" <mpls@ietf.org>, Loa Andersson <loa@pi.nu>
Thread-Topic: Robert Wilton's Discuss on draft-ietf-mpls-base-yang-15: (with DISCUSS and COMMENT)
Thread-Index: ATE2MTQyPDeUIQ36u5VjMYNhXZofQw==
X-MS-Exchange-MessageSentRepresentingType: 1
Date: Tue, 20 Oct 2020 14:57:21 +0000
Message-ID: <DM5PR1901MB215086DD4CC5D76F939D6CBFFC1F0@DM5PR1901MB2150.namprd19.prod.outlook.com>
References: <159973789624.25904.12671134973766580701@ietfa.amsl.com>
Accept-Language: en-US
Content-Language: en-US
X-MS-Has-Attach:
X-MS-Exchange-Organization-SCL: -1
X-MS-TNEF-Correlator:
X-MS-Exchange-Organization-RecordReviewCfmType: 0
Content-Type: text/plain; charset="utf-8"
Content-Transfer-Encoding: base64
MIME-Version: 1.0
Archived-At: <https://mailarchive.ietf.org/arch/msg/mpls/LtOv0O_2lc_Gt4dVfrkvTWFLzWY>
Subject: Re: [mpls] Robert Wilton's Discuss on draft-ietf-mpls-base-yang-15: (with DISCUSS and COMMENT)
X-BeenThere: mpls@ietf.org
X-Mailman-Version: 2.1.29
Precedence: list
List-Id: Multi-Protocol Label Switching WG <mpls.ietf.org>
List-Unsubscribe: <https://www.ietf.org/mailman/options/mpls>, <mailto:mpls-request@ietf.org?subject=unsubscribe>
List-Archive: <https://mailarchive.ietf.org/arch/browse/mpls/>
List-Post: <mailto:mpls@ietf.org>
List-Help: <mailto:mpls-request@ietf.org?subject=help>
List-Subscribe: <https://www.ietf.org/mailman/listinfo/mpls>, <mailto:mpls-request@ietf.org?subject=subscribe>
X-List-Received-Date: Tue, 20 Oct 2020 14:57:31 -0000
Hi Rob, Thanks for your thorough review and comments. We have posted rev -16 (https://tools.ietf.org/html/draft-ietf-mpls-base-yang-16) of the document and have addressed all your comments. Please see inline for responses… [TS] Regards, Tarek On 9/10/20, 7:38 AM, "Robert Wilton via Datatracker" <noreply@ietf.org> wrote: Robert Wilton has entered the following ballot position for draft-ietf-mpls-base-yang-15: Discuss When responding, please keep the subject line intact and reply to all email addresses included in the To and CC lines. (Feel free to cut this introductory paragraph, however.) Please refer to https://www.ietf.org/iesg/statement/discuss-criteria.html for more information about IESG DISCUSS and COMMENT positions. The document, along with other ballot positions, can be found here: https://datatracker.ietf.org/doc/draft-ietf-mpls-base-yang/ ---------------------------------------------------------------------- DISCUSS: ---------------------------------------------------------------------- Hi, Thank for you this YANG module. It is great to see IETF progressing publishing more YANG configuration/management models, to thank you for the time and effort that you have put into this. I support Roman's discuss regarding the security considerations, but would also like to add one of my own: In my experience, having some instance data examples (e.g., see Appendix D of RFC 8022) greatly helps readers understand the structure of the YANG module and [TS]:XXX get a good feel for how the YANG model is used. Was adding instance data examples considered for this document? Do the authors that think it would be possible to add some examples? I've also added some comments on the YANG model below that probably need to be addressed but I didn't want to overload the main discuss point. Regards, Rob ---------------------------------------------------------------------- COMMENT: ---------------------------------------------------------------------- I also have some comments on the YANG module itself: feature mpls { description "Indicates support for MPLS switching."; reference "RFC3031"; } Is the MPLS feature really required? I.e. is it plausible that a device would implement this YANG module without supporting MPLS switching? If not, then just implementing the module should probably be sufficient without a separate feature. [TS]: agreed and removed feature. Alternatively, it might be worth looking at the ISIS YANG module that define a feature to control with ISIS can be administratively controlled. E.g. draft-ietf-isis-yang-isis-cfg-42, feature admin-control. On a related point: augment /rt:routing: +--rw mpls {mpls}? ... +--rw interface* [name] +--rw name if:interface-ref +--rw enabled? boolean +--rw maximum-labeled-packet? uint32 Is the "enabled" leaf definitely required here? Isn't having the interface under the MPLS list sufficient to indicate that MPLS is enabled? If you really want this leaf then I would change its name to "enable" rather than "enabled", change it's default to true, and consider putting it under a feature like admin-control from the ISIS YANG module. [TS]: leave it - consistent with other modules. augment /rt:routing/rt:ribs/rt:rib/rt:routes/rt:route: +--ro mpls-enabled? boolean {mpls}? +--ro local-label? rt-types:mpls-label {mpls}? +--ro destination-prefix? -> ../local-label {mpls}? +--ro route-context? string {mpls}? Is "local-label" clearly enough associated with MPLS in the IP RIB? E.g. should this be mpls-local-label, or under an mpls container? Presumably the mpls-enabled leaf shouldn't appear under the MPLS RIB? It might be cleaner to split this into two augments, one for the MPLS RIB, and one for other RIBS. [TS]: module-name will be always used as distinguisher - mpls:local-label (destination-prefix does not include ip-xx) The mpls-operations-type is defined, but not actually used by this module. I wanted to check that this is expected. I also note that the operations-type doesn't include a "no-operation" case statement which I thought might potentially be useful (but I'm not an MPLS expert). Regarding grouping label-blocks: Ben's comment is right that the must statements associated with the start-label/end-label have the wrong sense. There should also only be one of them (since they would always fail/pass in unison), and I would recommend just keeping the end-label must statement. [TS]: we corrected the check. I wasn't sure whether the unique statement is really helpful. Am I right in assuming that the blocks should be disjoint and non overlapping? If so, the unique statement doesn't achieve this, and although it could probably be done in a must statement, it would be tricky to express and get right. However, if this is a constraint then it would certainly be helpful for the description of label-block to mention this. Regarding grouping rib-active-route-mpls-input: I know that this has been discussed with yang-doctors and the authors of the base RIB YANG module that is being extended but seeing the YANG I'm not quite sure we have the best outcome, since users of the RPC would be required to specify both destination-address and local-label as input parameters. Possibly a better choice would to make this a choice so that a client could query either using a destination-address or a local-label (with both using the same type definition)? [TS]: since mandatory is not set on it, I presume the user of RPC is ok to specify one. Regards, Tarek
- [mpls] Robert Wilton's Discuss on draft-ietf-mpls… Robert Wilton via Datatracker
- Re: [mpls] Robert Wilton's Discuss on draft-ietf-… Tarek Saad