Re: [YANG] mandatory & default
"tom.petch" <cfinss@dial.pipex.com> Mon, 28 January 2008 16:18 UTC
Return-path: <yang-bounces@ietf.org>
Received: from [127.0.0.1] (helo=stiedprmman1.va.neustar.com)
by megatron.ietf.org with esmtp (Exim 4.43)
id 1JJWgv-0007Bo-Up; Mon, 28 Jan 2008 11:18:37 -0500
Received: from yang by megatron.ietf.org with local (Exim 4.43)
id 1JJWgu-0007BX-U1
for yang-confirm+ok@megatron.ietf.org; Mon, 28 Jan 2008 11:18:36 -0500
Received: from [10.91.34.44] (helo=ietf-mx.ietf.org)
by megatron.ietf.org with esmtp (Exim 4.43) id 1JJWgu-0007At-IX
for yang@ietf.org; Mon, 28 Jan 2008 11:18:36 -0500
Received: from mk-outboundfilter-1.mail.uk.tiscali.com ([212.74.114.37])
by ietf-mx.ietf.org with esmtp (Exim 4.43) id 1JJWgt-0003Xo-En
for yang@ietf.org; Mon, 28 Jan 2008 11:18:36 -0500
X-Trace: 28391295/mk-outboundfilter-1.mail.uk.tiscali.com/PIPEX/$MX-ACCEPTED/pipex-infrastructure/62.241.162.31
X-SBRS: None
X-RemoteIP: 62.241.162.31
X-IP-MAIL-FROM: cfinss@dial.pipex.com
X-IP-BHB: Once
X-IronPort-Anti-Spam-Filtered: true
X-IronPort-Anti-Spam-Result: Ao8CAI2OnUc+8aIf/2dsb2JhbACKUaED
X-IP-Direction: IN
Received: from galaxy.systems.pipex.net ([62.241.162.31])
by smtp.pipex.tiscali.co.uk with ESMTP; 28 Jan 2008 16:18:32 +0000
Received: from pc6 (1Cust155.tnt7.lnd4.gbr.da.uu.net [62.188.136.155])
by galaxy.systems.pipex.net (Postfix) with SMTP id D385DE0000B0;
Mon, 28 Jan 2008 16:18:27 +0000 (GMT)
Message-ID: <040d01c861c0$c7d06e80$0601a8c0@pc6>
From: "tom.petch" <cfinss@dial.pipex.com>
To: "Andy Bierman" <ietf@andybierman.com>,
"Phil Shafer" <phil@juniper.net>
References: <200801280322.m0S3Mqhi051945@idle.juniper.net>
<479D55B9.8010300@andybierman.com>
Subject: Re: [YANG] mandatory & default
Date: Mon, 28 Jan 2008 16:16:26 +0100
MIME-Version: 1.0
Content-Type: text/plain;
charset="iso-8859-1"
Content-Transfer-Encoding: 7bit
X-Priority: 3
X-MSMail-Priority: Normal
X-Mailer: Microsoft Outlook Express 6.00.2800.1106
X-MimeOLE: Produced By Microsoft MimeOLE V6.00.2800.1106
X-Spam-Score: -100.0 (---------------------------------------------------)
X-Scan-Signature: 3fbd9b434023f8abfcb1532abaec7a21
Cc: yang@ietf.org
X-BeenThere: yang@ietf.org
X-Mailman-Version: 2.1.5
Precedence: list
Reply-To: "tom.petch" <cfinss@dial.pipex.com>
List-Id: YANG modeling Language for NETCONF <yang.ietf.org>
List-Unsubscribe: <https://www1.ietf.org/mailman/listinfo/yang>,
<mailto:yang-request@ietf.org?subject=unsubscribe>
List-Archive: <http://www1.ietf.org/pipermail/yang>
List-Post: <mailto:yang@ietf.org>
List-Help: <mailto:yang-request@ietf.org?subject=help>
List-Subscribe: <https://www1.ietf.org/mailman/listinfo/yang>,
<mailto:yang-request@ietf.org?subject=subscribe>
Errors-To: yang-bounces@ietf.org
----- Original Message ----- From: "Andy Bierman" <ietf@andybierman.com> To: "Phil Shafer" <phil@juniper.net> Cc: <yang@ietf.org> Sent: Monday, January 28, 2008 5:10 AM Subject: Re: [YANG] mandatory & default > Phil Shafer wrote: > > [replying to multiple Andy-grams] > > > > We strongly disagree on the interpretation of RFC 4741 > and whether a node with a default value really exists or not. > > It is very fragile SW design to assume the agent is using the exact default > that was tracked down in the documentation. > > It is up to the operator whether knowing that a node > is actually supported, and knowing the exact value set by the agent, > is a waste of space or important debugging information. > I am very much with Andy (and Randy) on this one. Knowing all the parameters that affect how a box functions is vital; it may be the only way to work out why it is not working as the operator thinks it should be. I would say that having access to both the full and the specified configuration is a MUST. If forced to choose which had to be implemented, I would go for the full configuration every time. Computers can simply and reliably remove the extra information, they cannot (as) reliably insert the supposed defaults as known on the device. Tom Petch > > Andy > > > > Andy Bierman writes: > >> Whether the manager or the agent sets the leaf to the default, > >> it is there from a NETCONF protocol PoV. > > > > NETCONF leaves all this to the data model, so there's no single > > NETCONF POV on this issue. This is designed to support existing > > views of configuration issues, including defaults. > > > >> It is an implementation-specific matter as to how > >> an agent generates a reply to a <get-config> request. > >> The defaults do not have to be stored -- they can > >> be generated on the fly. > > > > If I'm using NETCONF to archive configurations, I don't > > want them littered with defaults. Similar for if I'm > > viewing them in the equivalent of a mib browser. I want > > to see the statements that someone has explicitly configured, > > not volumes of uninteresting defaults. > > > > Part of putting these values into YANG modules is to allow > > interested parties (applications, developers) to know these values > > as they are helping the user create new instances. To my mind, the > > "with-defaults" is useless for this scenario, since I want to know > > the defaults _before_ I make the config, not after. > > > > The KISS view of config is used for CLIs because is keeps the > > noise to a minimum. This need doesn't disappear when the > > config moves into the application/automation world. > > > > > >> Message-ID: <479A799D.1060003@andybierman.com> > >> Date: Fri, 25 Jan 2008 16:06:53 -0800 > >> From: Andy Bierman <ietf@andybierman.com> > >> > >> After a system reboot, does the agent 'remember' that mtu > >> was set to 1500 by the manager, so the initial <running/> > >> config from NV-storage after the next reboot has an mtu leaf > >> for eth1? > > > > No, the system records as the configuration only those fields which > > are interesting. For example in JUNOS, we define "interesting" as > > anything the user told us to do. In IOS, they define "interesting" > > as any non-default values. IMHO, you're trying to define interesting > > to include some very boring defaults. > > > > > >> Message-ID: <479B4B65.90104@andybierman.com> > >> Date: Sat, 26 Jan 2008 07:01:57 -0800 > >> From: Andy Bierman <ietf@andybierman.com> > >> > >> But here is where this CLI-based design is broken. > >> If a manager sends jumbo packets on eth1, they will not be accepted. > >> There is a maximum transmission unit size in effect on eth1, > >> but the manager is told there is none in the <get-config>. > > > > The application can find all the information about "mtu", including > > its default value, in the metadata. The application can show this > > default value to the user as they create a new interface, and the > > application can know that if there's an <mtu> in the interface, its > > there because someone wanted it, and that's it's not noise. > > > >> The response "oh no, there is an MTU value in effect, just not in the config" > >> is really broken. It's not state data, and it's not config data, but if > >> the manager does not know the value, it cannot reliably configure other > >> devices that send packets to 'eth1' on this agent. > > > > Nope, it's not config data. It's a default value. The device > > doesn't need it to perform the job of configuration, which is > > defined in the NETCONF spec as: > > > > Configuration data is the set of writable data that is required to > > transform a system from its initial default state into its current > > state. > > > > Default values aren't required in config data. Or wanted. > > > > If I've got 64,000 interfaces, I don't need to see this default > > value for each interface, let alone the hundred other knobs for > > each interface that have perfect reasonable and completely > > uninteresting default values. > > > >> IMO, the mtu is clearly config data, and clearly in effect at > >> all times eth1 is accepting packets. The config returned > >> in NETCONF PDUs should match. Filtering out these defaults > >> is a separate issue from whether they exist or not. > > > > The issue isn't filtering them out. The issue is are defaults part > > of the configuration? I understand the need for a mechanism for > > discovering them, both inline and in metadata, but I don't see any > > win in considering such noise as part of the configuration of a > > device. > > > > We are working hard to make devices _more_ managable. Adding a > > couple of orders of magnitude of noise into the configuration > > means: > > - performance issues (as my 1m config turns into 100m) > > - upgrade/downgrade issues (as defaults for unused features break > > on software that doesn't support them, even if they are completely > > unimportant) > > - readability issues (as adding noise makes the config less readable > > and the purpose of using xml was human readability for debugging > > and monitoring) > > > > Inline defaults is broken, to lift your words, since it takes a > > complex problem and makes it more complex. We should be simplifying, > > reducing, and giving better visibility into the important parts of > > configuration, not polluting them with noise. > > > > Thanks, > > Phil > > > > > > > > _______________________________________________ > YANG mailing list > YANG@ietf.org > https://www1.ietf.org/mailman/listinfo/yang _______________________________________________ YANG mailing list YANG@ietf.org https://www1.ietf.org/mailman/listinfo/yang
- [YANG] mandatory & default Andy Bierman
- Re: [YANG] mandatory & default Balazs Lengyel
- Re: [YANG] mandatory & default Andy Bierman
- Re: [YANG] mandatory & default Ladislav Lhotka
- Re: [YANG] mandatory & default Martin Bjorklund
- Re: [YANG] mandatory & default Andy Bierman
- Re: [YANG] mandatory & default Martin Bjorklund
- Re: [YANG] mandatory & default Andy Bierman
- Re: [YANG] mandatory & default Martin Bjorklund
- Re: [YANG] mandatory & default Andy Bierman
- Re: [YANG] mandatory & default Phil Shafer
- Re: [YANG] mandatory & default Andy Bierman
- Re: [YANG] mandatory & default Randy Presuhn
- Re: [YANG] mandatory & default Phil Shafer
- Re: [YANG] mandatory & default Phil Shafer
- Re: [YANG] mandatory & default Ladislav Lhotka
- Re: [YANG] mandatory & default Balazs Lengyel
- Re: [YANG] mandatory & default Juergen Schoenwaelder
- Re: [YANG] mandatory & default Ladislav Lhotka
- Re: [YANG] mandatory & default Juergen Schoenwaelder
- Re: [YANG] mandatory & default Ladislav Lhotka
- Re: [YANG] mandatory & default Juergen Schoenwaelder
- Re: [YANG] mandatory & default Balazs Lengyel
- Re: [YANG] mandatory & default Andy Bierman
- Re: [YANG] mandatory & default Ladislav Lhotka
- Re: [YANG] mandatory & default tom.petch
- Re: [YANG] mandatory & default Andy Bierman