[i2rs] Yangdoctors early review of draft-ietf-i2rs-yang-l3-topology-10

Ladislav Lhotka <lhotka@nic.cz> Wed, 26 July 2017 08:45 UTC

Return-Path: <lhotka@nic.cz>
X-Original-To: i2rs@ietf.org
Delivered-To: i2rs@ietfa.amsl.com
Received: from ietfa.amsl.com (localhost [IPv6:::1]) by ietfa.amsl.com (Postfix) with ESMTP id 28182131FD6; Wed, 26 Jul 2017 01:45:48 -0700 (PDT)
MIME-Version: 1.0
Content-Type: text/plain; charset="utf-8"
Content-Transfer-Encoding: 7bit
From: Ladislav Lhotka <lhotka@nic.cz>
To: yang-doctors@ietf.org
Cc: i2rs@ietf.org, ietf@ietf.org, draft-ietf-i2rs-yang-l3-topology.all@ietf.org
X-Test-IDTracker: no
X-IETF-IDTracker: 6.57.0
Auto-Submitted: auto-generated
Precedence: bulk
Message-ID: <150105874813.26401.2245891817517041568@ietfa.amsl.com>
Date: Wed, 26 Jul 2017 01:45:48 -0700
Archived-At: <https://mailarchive.ietf.org/arch/msg/i2rs/7J4oyhJqIjhdW4Tz5C7sbrw-8VI>
Subject: [i2rs] Yangdoctors early review of draft-ietf-i2rs-yang-l3-topology-10
X-BeenThere: i2rs@ietf.org
X-Mailman-Version: 2.1.22
List-Id: "Interface to The Internet Routing System \(IRS\)" <i2rs.ietf.org>
List-Unsubscribe: <https://www.ietf.org/mailman/options/i2rs>, <mailto:i2rs-request@ietf.org?subject=unsubscribe>
List-Archive: <https://mailarchive.ietf.org/arch/browse/i2rs/>
List-Post: <mailto:i2rs@ietf.org>
List-Help: <mailto:i2rs-request@ietf.org?subject=help>
List-Subscribe: <https://www.ietf.org/mailman/listinfo/i2rs>, <mailto:i2rs-request@ietf.org?subject=subscribe>
X-List-Received-Date: Wed, 26 Jul 2017 08:45:48 -0000

Reviewer: Ladislav Lhotka
Review result: Ready with Issues

This YANG module and I-D belong to an extensible suite of data models
addressing multi-layered network topology. It is an interesting, even
if somewhat atypical, application of YANG.

The entire network topology suite seems well thought out, and it is
apparent that the document has already undergone several rounds of
discussions and iterations. It is also positive that the document
deals with possible overlaps with other YANG modules such as
ietf-interfaces or ietf-hardware. Of course, an ultimate acid test of
the network topology suite will come with applications to real-life
network.

My review below raises several issues that need to be addressed
(especially #1). Some of them are related to design decisions
described in draft-ietf-i2rs-yang-network-topo. Apart from that, I
believe the document is ready to be published.

*** Comments to draft-ietf-i2rs-yang-network-topo-14:

1. With YANG 1.1, the network type information looks like a perfect
   candidate for identities (with multiple inheritance). Instead, it
   is modelled with presence containers, which is cumbersome and
   redundant. I don't see any reasons for doing so, if there are any,
   then they should be explained in sec. 4.4.8.

2. The document defines "supporting network" and then says "A
   supporting network is in effect an underlay network." In the
   subsequent text "underlay network" is used almost exclusively. So
   perhaps the term "supporting network" should be dropped altogether?

3. The text should be better aligned with the terminology of
   draft-ietf-netmod-revised-datastores. In particular,
   "system-controlled" should be used instead of "server-provided".

4. Is it necessary to use URIs for identifying all objects in the
   data model. URIs are difficult to use, so applications are likely
   to introduce some abbreviations and keep an internal mapping, which
   could cause problems, e.g. when matching objects in notifications
   with a GUI representation. In my view, it should be sufficient to
   use URIs for network-id and plain strings for other IDs, because
   all other objects are encapsulated inside a network, so their name
   conflicts shouldn't matter.

*** Comments to draft-ietf-i2rs-yang-l3-topology-10

5. The type of "router-id" should be "yang:dotted-quad" and not
   "inet:ip-address" because the latter means both IPv4 and IPv6
   address, possibly also with a zone index.

6. Both prefix and link attributes include the "metric" parameter. It
   should be explained what they mean. In the context of ietf-routing
   the option of including "metric" as a general route parameter was
   discussed and finally rejected because different routing protocol use
   metrics with different semantics and properties. I wonder if it is
   the same case here. 

*** Formal issues and typos

7. Both documents should refer to draft-ietf-netmod-yang-tree-diagrams
   rather than describe the notation of tree diagrams in the text.

8. Sec. 7 in draft-ietf-i2rs-yang-l3-topology-10: s/moodel/model/