Fwd: [yang-doctors] YANG doctor review of draft-ietf-rtgwg-yang-rip-02
Benoit Claise <bclaise@cisco.com> Tue, 20 December 2016 17:20 UTC
Return-Path: <bclaise@cisco.com>
X-Original-To: rtgwg@ietfa.amsl.com
Delivered-To: rtgwg@ietfa.amsl.com
Received: from localhost (localhost [127.0.0.1]) by ietfa.amsl.com (Postfix) with ESMTP id 94FE1129B67 for <rtgwg@ietfa.amsl.com>; Tue, 20 Dec 2016 09:20:00 -0800 (PST)
X-Virus-Scanned: amavisd-new at amsl.com
X-Spam-Flag: NO
X-Spam-Score: -17.621
X-Spam-Level:
X-Spam-Status: No, score=-17.621 tagged_above=-999 required=5 tests=[BAYES_00=-1.9, DKIM_SIGNED=0.1, DKIM_VALID=-0.1, DKIM_VALID_AU=-0.1, HTML_MESSAGE=0.001, RCVD_IN_DNSWL_HI=-5, RCVD_IN_MSPIKE_H3=-0.01, RCVD_IN_MSPIKE_WL=-0.01, RP_MATCHES_RCVD=-3.1, SPF_HELO_PASS=-0.001, SPF_PASS=-0.001, USER_IN_DEF_DKIM_WL=-7.5] autolearn=ham autolearn_force=no
Authentication-Results: ietfa.amsl.com (amavisd-new); dkim=pass (1024-bit key) header.d=cisco.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 c6g_BE8p3GWb for <rtgwg@ietfa.amsl.com>; Tue, 20 Dec 2016 09:19:58 -0800 (PST)
Received: from aer-iport-4.cisco.com (aer-iport-4.cisco.com [173.38.203.54]) (using TLSv1.2 with cipher DHE-RSA-SEED-SHA (128/128 bits)) (No client certificate requested) by ietfa.amsl.com (Postfix) with ESMTPS id C73AF129BC6 for <rtgwg@ietf.org>; Tue, 20 Dec 2016 09:19:57 -0800 (PST)
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=cisco.com; i=@cisco.com; l=9446; q=dns/txt; s=iport; t=1482254397; x=1483463997; h=subject:references:to:from:message-id:date:mime-version: in-reply-to; bh=EFwPnCsU1ioTSTQYICLxT08T+AgYStOw6DqG1At6sis=; b=HdHpEXvcGyCesbgAXeGlLxlFQdyKcdQtNJldk/UanM4BAF+/gHrHZhLs PFRlUyVF1Ro2LmopIk+aMC3Mp40Q65wIE4V3DYWuXkYOGyBdcWqsgPPyW ltDCYYhHZq2cOneXs8O/izUsUz+2GSS08ilh0N/jHvLksYYkQinQx8euj g=;
X-IronPort-Anti-Spam-Filtered: true
X-IronPort-Anti-Spam-Result: A0DBAgA/Z1lY/xbLJq1dGQEBAQEBAQEBAQEBBwEBAQEBgzcBAQEBAXkuWI1Qc5Vnj2mFJYIKHwEKhXgCgiMUAQIBAQEBAQEBYh0LhGgBAgQBARARSAMbHAMBAisCAicmAggGDQYCAQEeiEkOmwkBjXaCKC+KWAEBAQEBAQEBAQEBAQEBAQEBAQEaBYY2gX2CXIRggmSCPx4FjwGGAoVthlKKYooehi+FOoR7g2WEDx83MVIVDiyFWz00AYhxAQEB
X-IronPort-AV: E=Sophos;i="5.33,379,1477958400"; d="scan'208,217";a="650881819"
Received: from aer-iport-nat.cisco.com (HELO aer-core-2.cisco.com) ([173.38.203.22]) by aer-iport-4.cisco.com with ESMTP/TLS/DHE-RSA-AES256-GCM-SHA384; 20 Dec 2016 17:19:53 +0000
Received: from [10.60.67.91] (ams-bclaise-89110.cisco.com [10.60.67.91]) by aer-core-2.cisco.com (8.14.5/8.14.5) with ESMTP id uBKHJqJs019766 for <rtgwg@ietf.org>; Tue, 20 Dec 2016 17:19:52 GMT
Subject: Fwd: [yang-doctors] YANG doctor review of draft-ietf-rtgwg-yang-rip-02
References: <m2d1h3wwxc.fsf@birdie.labs.nic.cz>
To: "rtgwg@ietf.org" <rtgwg@ietf.org>
From: Benoit Claise <bclaise@cisco.com>
X-Forwarded-Message-Id: <m2d1h3wwxc.fsf@birdie.labs.nic.cz>
Message-ID: <68df2479-fe6d-b6bb-6a1b-98dc5342b884@cisco.com>
Date: Tue, 20 Dec 2016 18:19:54 +0100
User-Agent: Mozilla/5.0 (Windows NT 6.1; WOW64; rv:45.0) Gecko/20100101 Thunderbird/45.5.1
MIME-Version: 1.0
In-Reply-To: <m2d1h3wwxc.fsf@birdie.labs.nic.cz>
Content-Type: multipart/alternative; boundary="------------7C2AFB77B977A8D987E72B85"
Archived-At: <https://mailarchive.ietf.org/arch/msg/rtgwg/ZR9dFspW-gpzYK8pVQifFRUWZN4>
X-BeenThere: rtgwg@ietf.org
X-Mailman-Version: 2.1.17
Precedence: list
List-Id: Routing Area Working Group <rtgwg.ietf.org>
List-Unsubscribe: <https://www.ietf.org/mailman/options/rtgwg>, <mailto:rtgwg-request@ietf.org?subject=unsubscribe>
List-Archive: <https://mailarchive.ietf.org/arch/browse/rtgwg/>
List-Post: <mailto:rtgwg@ietf.org>
List-Help: <mailto:rtgwg-request@ietf.org?subject=help>
List-Subscribe: <https://www.ietf.org/mailman/listinfo/rtgwg>, <mailto:rtgwg-request@ietf.org?subject=subscribe>
X-List-Received-Date: Tue, 20 Dec 2016 17:20:00 -0000
FYI. Regards, B. -------- Forwarded Message -------- Subject: [yang-doctors] YANG doctor review of draft-ietf-rtgwg-yang-rip-02 Date: Wed, 07 Dec 2016 17:01:19 +0100 From: Ladislav Lhotka <lhotka@nic.cz> To: draft-ietf-rtgwg-yang-rip.all@ietf.org CC: yang-doctors@ietf.org Hi, I was assigned to be the YANG doctor for this document. Here is my review: **** General comments Overall, the module is in a good shape and integrates nicely with the core routing data model [RFC 8022]. The I-D text is rather scarce, apart from the module it essentially contains only boilerplate stuff. Some information about the context in which this module is supposed to be used, design decisions etc. would be certainly useful. A non-normative appendix with a configuration example (instance data) would also help people that are not fluent in YANG to understand what data are included in this model. Some parts of the model ā "distribute-list", "redistribute", "bfd", "authentication" on interfaces (or at least the "key" list) ā are probably not specific to RIP and could be used by other protocols as well. If it is so, it would be better to model them separately as general mechanisms. Documents containing YANG modules that are imported by ietf-rip should appear among normative references. One way to achieve this (which is also useful by itself) is to include a table of namespace prefixes, see e.g. https://tools.ietf.org/html/rfc8022#section-2.3 **** Specific comments - Matching identities is done in the old YANG 1.0 way, for example: when "rt:type = 'rip:ripv2' or rt:type = 'rip:ripng'" This is fragile because the identities are matched based on string equality, so the result depends on the choice of the namespace prefix. Unless there is a strong reason not to use YANG 1.1, this is much simpler and more rubust when "derived-from(rt:type, 'rip:rip')" - In "redistribution", the must expressions are outright broken, e.g. for IS-IS: must "../../../../../rt:control-plane-protocol" + "[rt:name = current()]/type = 'isis'" { ... } First, the ietf-rip module also needs to import ietf-isis, and then the must statement can be rewritten like so: must "derived-from-or-self(" + "../../../../../rt:control-plane-protocol" + "[rt:name = current()]/type, 'isis:isis')" - Some descriptions could mention that the parameter (feature etc.) only applies to RIP. For example, in feature interface-statistics { description "This feature indicates that the system supports collecting per-interface statistic data."; } I would add "... related to RIP." at the end. - Maybe it's absolutely clear to experts but the name and description of the "neighbor-configuration" feature look like the feature can make neighbors remotely configurable. I had to look up where it is used to find out what's the real meaning. Perhaps something like "explicit-neighbors" might be easier to understand? - The name of "no-supply" leaf looks strange. I checked a couple of CLIs and they use "passive", "passive-interface" or "send-options" for preventing RIP updates from being sent. - In "split-horizon" leaf, I would use "poison-reverse" enum rather than "poison". Lada -- Ladislav Lhotka, CZ.NIC Labs PGP Key ID: E74E8C0C _______________________________________________ yang-doctors mailing list yang-doctors@ietf.org https://www.ietf.org/mailman/listinfo/yang-doctors
- Fwd: [yang-doctors] YANG doctor review of draft-iā¦ Benoit Claise