Re: [Rtg-yang-coord] Operational State Modeling

Juergen Schoenwaelder <j.schoenwaelder@jacobs-university.de> Tue, 12 May 2015 21:23 UTC

Return-Path: <j.schoenwaelder@jacobs-university.de>
X-Original-To: rtg-yang-coord@ietfa.amsl.com
Delivered-To: rtg-yang-coord@ietfa.amsl.com
Received: from localhost (ietfa.amsl.com [127.0.0.1]) by ietfa.amsl.com (Postfix) with ESMTP id C26941AD1D5 for <rtg-yang-coord@ietfa.amsl.com>; Tue, 12 May 2015 14:23:50 -0700 (PDT)
X-Virus-Scanned: amavisd-new at amsl.com
X-Spam-Flag: NO
X-Spam-Score: -3.86
X-Spam-Level:
X-Spam-Status: No, score=-3.86 tagged_above=-999 required=5 tests=[BAYES_00=-1.9, HELO_EQ_DE=0.35, RCVD_IN_DNSWL_MED=-2.3, T_RP_MATCHES_RCVD=-0.01] autolearn=ham
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 BRx1C5rcqjep for <rtg-yang-coord@ietfa.amsl.com>; Tue, 12 May 2015 14:23:48 -0700 (PDT)
Received: from atlas3.jacobs-university.de (atlas3.jacobs-university.de [212.201.44.18]) (using TLSv1.2 with cipher AECDH-AES256-SHA (256/256 bits)) (No client certificate requested) by ietfa.amsl.com (Postfix) with ESMTPS id 1E6BA1AD1C3 for <Rtg-yang-coord@ietf.org>; Tue, 12 May 2015 14:23:48 -0700 (PDT)
Received: from localhost (demetrius5.irc-it.jacobs-university.de [10.70.0.222]) by atlas3.jacobs-university.de (Postfix) with ESMTP id E299B763; Tue, 12 May 2015 23:23:46 +0200 (CEST)
X-Virus-Scanned: amavisd-new at jacobs-university.de
Received: from atlas3.jacobs-university.de ([10.70.0.220]) by localhost (demetrius5.jacobs-university.de [10.70.0.222]) (amavisd-new, port 10030) with ESMTP id ybMGiVCGhy7i; Tue, 12 May 2015 23:23:41 +0200 (CEST)
Received: from hermes.jacobs-university.de (hermes.jacobs-university.de [212.201.44.23]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (Client CN "hermes.jacobs-university.de", Issuer "Jacobs University CA - G01" (verified OK)) by atlas3.jacobs-university.de (Postfix) with ESMTPS; Tue, 12 May 2015 23:23:46 +0200 (CEST)
Received: from localhost (demetrius2.jacobs-university.de [212.201.44.47]) by hermes.jacobs-university.de (Postfix) with ESMTP id E79B020035; Tue, 12 May 2015 23:23:45 +0200 (CEST)
X-Virus-Scanned: amavisd-new at jacobs-university.de
Received: from hermes.jacobs-university.de ([212.201.44.23]) by localhost (demetrius2.jacobs-university.de [212.201.44.32]) (amavisd-new, port 10024) with ESMTP id Uk0ZTkr3Ad2Y; Tue, 12 May 2015 23:23:45 +0200 (CEST)
Received: from elstar.local (elstar.jacobs.jacobs-university.de [10.50.231.133]) by hermes.jacobs-university.de (Postfix) with ESMTP id D842020036; Tue, 12 May 2015 23:23:44 +0200 (CEST)
Received: by elstar.local (Postfix, from userid 501) id D7A623332061; Tue, 12 May 2015 23:23:42 +0200 (CEST)
Date: Tue, 12 May 2015 23:23:42 +0200
From: Juergen Schoenwaelder <j.schoenwaelder@jacobs-university.de>
To: Xufeng Liu <xufeng.liu@ericsson.com>
Message-ID: <20150512212342.GA58293@elstar.local>
Mail-Followup-To: Xufeng Liu <xufeng.liu@ericsson.com>, "Rtg-yang-coord@ietf.org" <Rtg-yang-coord@ietf.org>
References: <AAB1CC9C17CBA440BDFA169056B93B9EBE8260@eusaamb107.ericsson.se>
Mime-Version: 1.0
Content-Type: text/plain; charset=us-ascii
Content-Disposition: inline
In-Reply-To: <AAB1CC9C17CBA440BDFA169056B93B9EBE8260@eusaamb107.ericsson.se>
User-Agent: Mutt/1.4.2.3i
Archived-At: <http://mailarchive.ietf.org/arch/msg/rtg-yang-coord/yGRMCENs-741wgITQIht2Cxp1to>
Cc: "Rtg-yang-coord@ietf.org" <Rtg-yang-coord@ietf.org>
Subject: Re: [Rtg-yang-coord] Operational State Modeling
X-BeenThere: rtg-yang-coord@ietf.org
X-Mailman-Version: 2.1.15
Precedence: list
Reply-To: Juergen Schoenwaelder <j.schoenwaelder@jacobs-university.de>
List-Id: "\"List to discuss coordination between the Routing related YANG models\"" <rtg-yang-coord.ietf.org>
List-Unsubscribe: <https://www.ietf.org/mailman/options/rtg-yang-coord>, <mailto:rtg-yang-coord-request@ietf.org?subject=unsubscribe>
List-Archive: <http://www.ietf.org/mail-archive/web/rtg-yang-coord/>
List-Post: <mailto:rtg-yang-coord@ietf.org>
List-Help: <mailto:rtg-yang-coord-request@ietf.org?subject=help>
List-Subscribe: <https://www.ietf.org/mailman/listinfo/rtg-yang-coord>, <mailto:rtg-yang-coord-request@ietf.org?subject=subscribe>
X-List-Received-Date: Tue, 12 May 2015 21:23:50 -0000

On Tue, May 12, 2015 at 08:56:04PM +0000, Xufeng Liu wrote:
 
> *            The state branch is an exact mirror of the configuration branch, so the schema locations are consistent.

There are sometimes slight differences in the value sets of objects
and in the constraints that apply. A valid configuration may have to
follow certain constraints but the operational state must report the
truth (and that might include violations of constraints).
 
> *            In this aspect, all three options satisfy the requirements. For option 1, to check the state value for a specific configuration attribute, the client software can simply add the "state" to the end of the schema node path. For option 2, to check the state value for a specific configuration attribute, the client software can simply add the "-state" suffix to the name of the top container. Option 1 seems to be easiest in this regard, but others are acceptable?

Several of data models published in RFCs use the

/foo
/foo-state

approach and unless someone finds a serious flaw or limitation, I
suggest to stick with this approach. I do not think it helps operators
if data models developed in different parts of the IETF use different
approaches unless there is a strong reason to do so.

> 1.4.Other Requirements
> 
> *             Model system created read-only objects (e.g. TE tunnels). When state data and config data share the same parent, they share the same key for the parent list. Even though that the state branch is read-only, its parent is not and the key of the parent is not. Therefore, we will have difficulty to achieve this in Option 1.

Yes, branching in the middle is a bad idea. People seem to rediscover
this. ;-)

> *             Compatible with the existing models. The related models include RFC7223, RFC7277 and draft-ietf-netmod-routing-cfg-18. In this aspect, Option 2 seems to do better.

Yep. It is as simple as 'follow the existing pattern'. ;-)

/js

-- 
Juergen Schoenwaelder           Jacobs University Bremen gGmbH
Phone: +49 421 200 3587         Campus Ring 1 | 28759 Bremen | Germany
Fax:   +49 421 200 3103         <http://www.jacobs-university.de/>