Re: [netmod] AD review of draft-ietf-netmod-entity-06
Benoit Claise <bclaise@cisco.com> Mon, 22 January 2018 16:37 UTC
Return-Path: <bclaise@cisco.com>
X-Original-To: netmod@ietfa.amsl.com
Delivered-To: netmod@ietfa.amsl.com
Received: from localhost (localhost [127.0.0.1]) by ietfa.amsl.com (Postfix) with ESMTP id 077E2126E64 for <netmod@ietfa.amsl.com>; Mon, 22 Jan 2018 08:37:50 -0800 (PST)
X-Virus-Scanned: amavisd-new at amsl.com
X-Spam-Flag: NO
X-Spam-Score: -14.511
X-Spam-Level:
X-Spam-Status: No, score=-14.511 tagged_above=-999 required=5 tests=[BAYES_00=-1.9, DKIM_SIGNED=0.1, DKIM_VALID=-0.1, DKIM_VALID_AU=-0.1, RCVD_IN_DNSWL_HI=-5, SPF_PASS=-0.001, T_RP_MATCHES_RCVD=-0.01, 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 vFmR8hdATKwt for <netmod@ietfa.amsl.com>; Mon, 22 Jan 2018 08:37:47 -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 046A8124207 for <netmod@ietf.org>; Mon, 22 Jan 2018 08:37:46 -0800 (PST)
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=cisco.com; i=@cisco.com; l=16728; q=dns/txt; s=iport; t=1516639067; x=1517848667; h=subject:to:cc:references:from:message-id:date: mime-version:in-reply-to:content-transfer-encoding; bh=BojCRg2NIi5yY5S0ddOo3YQNLMrhLnXGMKfPOUKPFWc=; b=O1wL8NXwJ+HKNogd7UpUCV1sB7qdCTagYoDDPhmSghHK4kPN8DLyWuMg qhjr78aSlQS3s/5aaMBHpHW4xUMH+6Ua0IDFwtzVkznoiaRg5v/l8Ccms 47ChGPTDjeYiT7A7sfrovQo0O6BRklls0sUyAOfRRx/emJtSHh7XNMb1e E=;
X-IronPort-Anti-Spam-Filtered: true
X-IronPort-Anti-Spam-Result: A0B0AQB4EmZa/xbLJq1eGQEBAQEBAQEBAQEBAQcBAQEBAYQodCeDXYsYj3N8lleCAgoYC4FegmtPAoUzFAEBAQEBAQEBAWsohSMBAQEEAQEhDwEFNgsMBAsRBAEBAQICIwMCAicfCQgGAQwGAgEBFooZELUYgieKLwEBAQEBAQEBAQEBAQEBAQEBAQEBARgFgQ+DOoNsgWgpDIFrWDaDLwEBAgGBNhgBAQiDLYJlBYpph0iRSYgTjUiCG4Yfg3Emh06KdYJcgWaIEIE8NiKBUDIaCBsVPYIqhFhAN4gugjwBAQE
X-IronPort-AV: E=Sophos;i="5.46,397,1511827200"; d="scan'208";a="1537199"
Received: from aer-iport-nat.cisco.com (HELO aer-core-3.cisco.com) ([173.38.203.22]) by aer-iport-4.cisco.com with ESMTP/TLS/DHE-RSA-AES256-GCM-SHA384; 22 Jan 2018 16:37:44 +0000
Received: from [10.55.221.36] (ams-bclaise-nitro3.cisco.com [10.55.221.36]) by aer-core-3.cisco.com (8.14.5/8.14.5) with ESMTP id w0MGbi0L006086; Mon, 22 Jan 2018 16:37:44 GMT
To: "Bogaert, Bart (Nokia - BE/Antwerp)" <bart.bogaert@nokia.com>, Martin Bjorklund <mbj@tail-f.com>
Cc: "netmod@ietf.org" <netmod@ietf.org>
References: <20180109.163933.49682684192910889.mbj@tail-f.com> <AM4PR07MB1716D69A0AF0BBCD3BAF71D094110@AM4PR07MB1716.eurprd07.prod.outlook.com> <20180110.144453.957272588242505523.mbj@tail-f.com> <20180111.144705.493071366326080006.mbj@tail-f.com> <AM4PR07MB171685685B9EA721342BA8F094170@AM4PR07MB1716.eurprd07.prod.outlook.com>
From: Benoit Claise <bclaise@cisco.com>
Message-ID: <a894e179-7a8d-4769-b96d-f482e1336873@cisco.com>
Date: Mon, 22 Jan 2018 17:37:44 +0100
User-Agent: Mozilla/5.0 (Windows NT 10.0; WOW64; rv:52.0) Gecko/20100101 Thunderbird/52.5.2
MIME-Version: 1.0
In-Reply-To: <AM4PR07MB171685685B9EA721342BA8F094170@AM4PR07MB1716.eurprd07.prod.outlook.com>
Content-Type: text/plain; charset="utf-8"; format="flowed"
Content-Transfer-Encoding: 8bit
Content-Language: en-US
Archived-At: <https://mailarchive.ietf.org/arch/msg/netmod/Ai69hepU8RFO9NwjdNnuSkdDB2I>
Subject: Re: [netmod] AD review of draft-ietf-netmod-entity-06
X-BeenThere: netmod@ietf.org
X-Mailman-Version: 2.1.22
Precedence: list
List-Id: NETMOD WG list <netmod.ietf.org>
List-Unsubscribe: <https://www.ietf.org/mailman/options/netmod>, <mailto:netmod-request@ietf.org?subject=unsubscribe>
List-Archive: <https://mailarchive.ietf.org/arch/browse/netmod/>
List-Post: <mailto:netmod@ietf.org>
List-Help: <mailto:netmod-request@ietf.org?subject=help>
List-Subscribe: <https://www.ietf.org/mailman/listinfo/netmod>, <mailto:netmod-request@ietf.org?subject=subscribe>
X-List-Received-Date: Mon, 22 Jan 2018 16:37:50 -0000
Dear all, Since almost everyone who spoke up in the WG preferred option 2, let's go with that one. Martin, can you please post a new draft version. This document is on the IESG telechat this Thursday. Regards, Benoit > Hi Martin, > > We agree with option 2. > > Regards, Bart > > -----Original Message----- > From: Martin Bjorklund [mailto:mbj@tail-f.com] > Sent: Thursday, January 11, 2018 2:47 PM > To: Bogaert, Bart (Nokia - BE/Antwerp) <bart.bogaert@nokia.com> > Cc: netmod@ietf.org > Subject: Re: [netmod] AD review of draft-ietf-netmod-entity-06 > > Hi, > > To summarize this, I think we have three options for the three nodes 'model-name', 'mfg-name', and 'serial-num': > > 1. Do nothing (keep the nodes as config true). > > 2. Make these three nodes config false (fairly simple change). > (vendors can augment w/ their own config true nodes). > > 3. Add three new nodes for the configured values. > > > After thinking about this some more, and discussing with Benoit, I think the best path forward is to do 2, i.e., mark the nodes 'model-name', 'mfg-name', and 'serial-num' as "config false". As such they would not be configurable, and thus contain the detected values. > If no value is detected, the node is not present. > > Note that 1 or 3 can be done in a future update to this module (or by a vendor). > > > /martin > > > Martin Bjorklund <mbj@tail-f.com> wrote: >> Hi, >> >> "Bogaert, Bart (Nokia - BE/Antwerp)" <bart.bogaert@nokia.com> wrote: >>> Hi, >>> >>> --- snip --- >>> >>>> state.”, so the above sentence only applies for the second case below. >>> Ok. >>> >>>> 2. The second case is that something is detected but it can’t be read. >>>> We do not see a reason to use the value configured for the leafs >>>> ‘serial-num’, ‘mfg-name’ and ‘model-name’ of a matching entry in >>>> the configuration data. These leafs are defined as optional so >>>> why would we report something entered by an operator in the >>>> operational datastore that intends to report on what is detected? >>>> Is it not better to not report them at all? In an NMDA context it >>>> would be possible to have a different value (or no value at all) >>>> for certain leafs while there is something in the running/intended datastore. >>> The normal NMDA procedure for a configuration leaf is to repeat it >>> in operational state. This is then the "applied configuration". >>> I don't think we should have a special rule for these leafs. >>> >>> This also means that a client that just wants to read all the serial >>> numbers can do so from one place, the operational state, regardless >>> of how they came into existance. >>> >>> [Bogaert, Bart ] >>> >>> We do understand that a target of NMDA is to read out the actually >>> applied data in one request. But the result should not be >>> confusion. A key word is “applied”. >>> >>> Section 5.3 of draft-ietf-netmod-revised-datastores-09 also contains >>> (I put a part of the section between ***): >>> The datastore schema for <operational> MUST be a superset of the >>> combined datastore schema used in all configuration datastores >>> except that configuration data nodes supported in a configuration >>> datastore ***MAY be omitted from <operational> if a server is not >>> able to accurately report them ***. >> Note that this text talks about the *schema*. It is intended for >> servers to migrate to NMDA without having to instrument all config >> nodes in <operational> immediately. If you apply this to >> ietf-hardware, it could be a server that implements the node >> "serial-num" in config, but not in <operational> (which would be >> weird). >> >>> For example, it is expected that the value of multiple leafs need to >>> be a consistent set, e.g. the mfg-name, the model-name, and the >>> serial-num. >>> Suppose we have a use case in which a hardware component is >>> planned/configured (e.g. a board supporting DSL interfaces) but a >>> different one is plugged (e.g. a board supporting ethernet >>> interfaces). >>> Suppose it is possible to read some fields on the detected component >>> but due to an issue not to read other fields. >>> If in that case the operational datastore will be completed with the >>> data taken from the running datastore, then the presented view might >>> be inconsistent. >> This is true for other similar nodes as well - "asset-id" and "uri". >> >>> The question is also: what data is applied? Our assumption: if there >>> is a mismatch between detected versus configured hardware, then the >>> interface/service related data that is configured consistently with >>> the planned hardware is not applied on the mismatching hardware. >>> I.e. the detected hardware is not brought in service so not >>> ‘applied’, the operational datastore only (accurately) reports on >>> what is detected. >> If there is a mismatch and the server doesn't apply the configured >> values, then obviously the configured 'mfg-name' etc are not copied to >> <operational>. >> >>> We do not see this as a special rule for this data but rather would >>> apply a general rule: >>> - if there is a ‘missing resource’, then the data is not reported in the >>> operational datastore. >>> - If the server is not able to report accurately, then the data is >>> omitted from the operational >> I think that if you want complete separation between the values of >> 'mfg-name', 'model-name', and 'serial-num' in configuration and >> operational state, then these should be modelled as separate leafs. >> We should have a config false leaf 'serial-num' that only contains the >> detected value (if found), and a config true leaf 'config-serial-num' >> or something, that contains the configured serial number. >> >> But if this is the case, I wonder if it wouldn't be better to leave >> such additional config objects to vendors, and simply make these three >> nodes config false in ietf-hardware. >> >> >> /martin >> >>> Regards, Bart >>> >>> /martin >>> >>> >>>> Best regards, Bart >>>> >>>> -----Original Message----- >>>> From: netmod [mailto:netmod-bounces@ietf.org] On Behalf Of Robert >>>> Wilton >>>> Sent: Thursday, December 21, 2017 4:14 PM >>>> To: Martin Bjorklund <mbj@tail-f.com>; netmod@ietf.org >>>> Subject: Re: [netmod] AD review of draft-ietf-netmod-entity-06 >>>> >>>> Hi Martin, >>>> >>>> >>>> On 21/12/2017 11:37, Martin Bjorklund wrote: >>>>> Hi, >>>>> >>>>> I need WG input on this issue. The question is how to handle >>>>> 'serial-num', 'mfg-name', and 'model-name'. I think they should >>>>> all be treated the same. Based on previous WG discussion (see >>>>> e.g. the mail thread "draft-ietf-netmod-entity issue #13"), I >>>>> think they should all be configurable, but the configured value >>>>> is only used in operational state if the system cannot read it from the hardware. >>>> I think that this approach is probably OK: >>>> - The client can always see the real value if it is available. >>>> - If it is not available then they can assign a value via >>>> configuration. >>>> >>>> I was also considering an alternative approach of having a >>>> separate set of config false leaves for the "burnt in values". >>>> And then having the configurable leaves always override the >>>> default operational values. E.g. similar to how an interface MAC >>>> address would expect to be handled. >>>> >>>> But one set of leaves is probably sufficient. >>>> >>>> Thanks, >>>> Rob >>>> >>>> >>>>> So I suggest the following changes: >>>>> >>>>> OLD: >>>>> >>>>> leaf serial-num { >>>>> type string; >>>>> config false; >>>>> description >>>>> "The vendor-specific serial number string for the >>>>> component. The preferred value is the serial number >>>>> string actually printed on the component itself (if >>>>> present)."; >>>>> reference "RFC 6933: entPhysicalSerialNum"; >>>>> } >>>>> >>>>> NEW: >>>>> >>>>> leaf serial-num { >>>>> type string; >>>>> description >>>>> "The vendor-specific serial number string for the >>>>> component. The preferred value is the serial number >>>>> string actually printed on the component itself (if >>>>> present). >>>>> >>>>> This leaf can be configured. There are two use cases for >>>>> this; as a 'post-it' note if the server cannot determine >>>>> this value from the component, or when pre-provisioning a >>>>> component. >>>>> >>>>> If the server can determine the serial number from the >>>>> component, then that value is always used in operational >>>>> state, even if another value has been configured."; >>>>> reference "RFC 6933: entPhysicalSerialNum"; >>>>> } >>>>> >>>>> And corresponding text for 'mfg-name' and 'model-name'. >>>>> >>>>> And also: >>>>> >>>>> OLD: >>>>> >>>>> When the server detects a new hardware component, it >>>>> initializes a list entry in the operational state. >>>>> >>>>> If the server does not support configuration of hardware >>>>> components, list entries in the operational state are >>>>> initialized with values for all nodes as detected by the >>>>> implementation. >>>>> >>>>> Otherwise, the following procedure is followed: >>>>> >>>>> 1. If there is an entry in the /hardware/component list in >>>>> the intended configuration with values for the nodes >>>>> 'class', 'parent', 'parent-rel-pos' that are equal to >>>>> the detected values, then: >>>>> >>>>> 1a. If the configured entry has a value for 'mfg-name' >>>>> that is equal to the detected value, or if the >>>>> 'mfg-name' value cannot be detected, then the list >>>>> entry in the operational state is initialized with the >>>>> configured values for all configured nodes, including >>>>> the 'name'. >>>>> >>>>> Otherwise, the list entry in the operational state is >>>>> initialized with values for all nodes as detected by >>>>> the implementation. The implementation may raise an >>>>> alarm that informs about the 'mfg-name' mismatch >>>>> condition. How this is done is outside the scope of >>>>> this document. >>>>> >>>>> 1b. Otherwise (i.e., there is no matching configuration >>>>> entry), the list entry in the operational state is >>>>> initialized with values for all nodes as detected by >>>>> the implementation. >>>>> >>>>> If the /hardware/component list in the intended >>>>> configuration is modified, then the system MUST behave as if >>>>> it re-initializes itself, and follow the procedure in >>>>> (1)."; >>>>> >>>>> NEW: >>>>> >>>>> When the server detects a new hardware component, it >>>>> initializes a list entry in the operational state. >>>>> >>>>> If the server does not support configuration of hardware >>>>> components, list entries in the operational state are >>>>> initialized with values for all nodes as detected by the >>>>> implementation. >>>>> >>>>> Otherwise, the following procedure is followed: >>>>> >>>>> 1. If there is an entry in the /hardware/component list in >>>>> the intended configuration with values for the nodes >>>>> 'class', 'parent', 'parent-rel-pos' that are equal to >>>>> the detected values, then the list entry in operational >>>>> state is initialized with the configured values, >>>>> including the 'name'. The leafs 'serial-num', >>>>> 'mfg-name', and 'model-name' are treated specially; see >>>>> their descriptions for details. >>>>> >>>>> 2. Otherwise (i.e., there is no matching configuration >>>>> entry), the list entry in the operational state is >>>>> initialized with values for all nodes as detected by >>>>> the implementation. >>>>> >>>>> If the /hardware/component list in the intended >>>>> configuration is modified, then the system MUST behave as if >>>>> it re-initializes itself, and follow the procedure in >>>>> (1)."; >>>>> >>>>> >>>>> >>>>> /martin >>>>> >>>>> >>>>> >>>>> >>>>> Benoit Claise <bclaise@cisco.com> wrote: >>>>>> On 12/20/2017 4:00 PM, Martin Bjorklund wrote: >>>>>>> Benoit Claise <bclaise@cisco.com> wrote: >>>>>>>> Hi Martin, >>>>>>>> >>>>>>>> Thanks. >>>>>>>> Only kept the relevant excerpts. >>>>>>>>>> - Some objects are read-write in RFC6933: >>>>>>>>>> entPhysicalSerialNum >>>>>>>>>> entPhysicalAlias >>>>>>>>>> entPhysicalAssetID >>>>>>>>>> entPhysicalUris >>>>>>>>>> >>>>>>>>>> For example, entPhysicalSerialNum being read-write always >>>>>>>>>> bothered me. >>>>>>>>>> serial-num is now "config false", which is a good news IMO. >>>>>>>>> Actually, this was not the intention. In >>>>>>>>> draft-ietf-netmod-entity-03 this is configurable. I missed >>>>>>>>> this in the conversion to NMDA. >>>>>>>> Ah. So no good news in this case... >>>>>>>>>> In the reverse direction, entPhysicalMfgName is read-only >>>>>>>>>> in RFC6933, while it's "config true" in >>>>>>>>>> draft-ietf-netmod-entity >>>>>>>>> Yes, this was added per request from the WG. See e.g. the >>>>>>>>> thread "draft-ietf-netmod-entity issue #13". >>>>>>>> Sure. It was mainly an observation. >>>>>>>>> However, I think that what we have now is probably not correct. >>>>>>>>> I think that all nodes 'serial-num', 'mfg-name', and 'model-name' >>>>>>>>> should be config true, and the description of list 'component' >>>>>>>>> updated to reflect that all these tree leafs are handled the same way. >>>>>>>>> >>>>>>>>> I would like to know what the WG thinks about this. >>>>>>>> Talking as a contributor this time. >>>>>>>> It seems that inventory management is kind of broken when >>>>>>>> someone can change 'serial-num', 'mfg-name', and 'model-name. >>>>>>> They can't really change them. The configured values are only >>>>>>> used (i.e. visible in the operational state) if the device >>>>>>> cannot detect them automatically. I.e., they work as "post-it" notes only. >>>>>> If I look at, for example, the mfg-name, description, this is >>>>>> not what it says. >>>>>> >>>>>> leaf mfg-name { >>>>>> type string; >>>>>> description >>>>>> "The name of the manufacturer of this physical component. >>>>>> The preferred value is the manufacturer name string >>>>>> actually printed on the component itself (if present). >>>>>> >>>>>> Note that comparisons between instances of the model-name, >>>>>> firmware-rev, software-rev, and the serial-num nodes are >>>>>> only meaningful amongst component with the same value of >>>>>> mfg-name. >>>>>> >>>>>> If the manufacturer name string associated with the >>>>>> physical component is unknown to the server, then this >>>>>> node is not instantiated."; >>>>>> reference "RFC 6933 <https://tools.ietf.org/html/rfc6933>: >>>>>> entPhysicalMfgName"; >>>>>> >>>>>> Regards, Benoit >>>>>> >>>>>>> /martin >>>>>>> . >>>>>>> >>>>> _______________________________________________ >>>>> netmod mailing list >>>>> netmod@ietf.org >>>>> https://www.ietf.org/mailman/listinfo/netmod >>>>> . >>>>> >>>> _______________________________________________ >>>> netmod mailing list >>>> netmod@ietf.org >>>> https://www.ietf.org/mailman/listinfo/netmod >> _______________________________________________ >> netmod mailing list >> netmod@ietf.org >> https://www.ietf.org/mailman/listinfo/netmod > _______________________________________________ > netmod mailing list > netmod@ietf.org > https://www.ietf.org/mailman/listinfo/netmod
- Re: [netmod] AD review of draft-ietf-netmod-entit… Martin Bjorklund
- Re: [netmod] AD review of draft-ietf-netmod-entit… Juergen Schoenwaelder
- [netmod] AD review of draft-ietf-netmod-entity-06 Benoit Claise
- Re: [netmod] AD review of draft-ietf-netmod-entit… Martin Bjorklund
- Re: [netmod] AD review of draft-ietf-netmod-entit… Benoit Claise
- Re: [netmod] AD review of draft-ietf-netmod-entit… Martin Bjorklund
- Re: [netmod] AD review of draft-ietf-netmod-entit… Benoit Claise
- Re: [netmod] AD review of draft-ietf-netmod-entit… Benoit Claise
- Re: [netmod] AD review of draft-ietf-netmod-entit… Martin Bjorklund
- Re: [netmod] AD review of draft-ietf-netmod-entit… Juergen Schoenwaelder
- Re: [netmod] AD review of draft-ietf-netmod-entit… Benoit Claise
- Re: [netmod] AD review of draft-ietf-netmod-entit… Robert Wilton
- Re: [netmod] AD review of draft-ietf-netmod-entit… Bogaert, Bart (Nokia - BE/Antwerp)
- Re: [netmod] AD review of draft-ietf-netmod-entit… Martin Bjorklund
- Re: [netmod] AD review of draft-ietf-netmod-entit… Bogaert, Bart (Nokia - BE/Antwerp)
- Re: [netmod] AD review of draft-ietf-netmod-entit… Martin Bjorklund
- Re: [netmod] AD review of draft-ietf-netmod-entit… Robert Wilton
- Re: [netmod] AD review of draft-ietf-netmod-entit… Martin Bjorklund
- Re: [netmod] AD review of draft-ietf-netmod-entit… Benoit Claise
- Re: [netmod] AD review of draft-ietf-netmod-entit… Dan Romascanu
- Re: [netmod] AD review of draft-ietf-netmod-entit… Robert Wilton
- Re: [netmod] AD review of draft-ietf-netmod-entit… Bogaert, Bart (Nokia - BE/Antwerp)
- Re: [netmod] AD review of draft-ietf-netmod-entit… Einar Nilsen-Nygaard (einarnn)
- Re: [netmod] AD review of draft-ietf-netmod-entit… Joe Clarke
- Re: [netmod] AD review of draft-ietf-netmod-entit… Benoit Claise
- Re: [netmod] AD review of draft-ietf-netmod-entit… Benoit Claise