Re: [netmod] 答复: FW: a question about ietf-hardware yang module

Martin Bjorklund <mbj@tail-f.com> Fri, 28 June 2019 08:14 UTC

Return-Path: <mbj@tail-f.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 35267120041 for <netmod@ietfa.amsl.com>; Fri, 28 Jun 2019 01:14:28 -0700 (PDT)
X-Virus-Scanned: amavisd-new at amsl.com
X-Spam-Flag: NO
X-Spam-Score: -1.899
X-Spam-Level:
X-Spam-Status: No, score=-1.899 tagged_above=-999 required=5 tests=[BAYES_00=-1.9, SPF_HELO_NONE=0.001, SPF_PASS=-0.001, URIBL_BLOCKED=0.001] autolearn=ham autolearn_force=no
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 8bFpBGReRPqB for <netmod@ietfa.amsl.com>; Fri, 28 Jun 2019 01:14:26 -0700 (PDT)
Received: from mail.tail-f.com (mail.tail-f.com [46.21.102.45]) by ietfa.amsl.com (Postfix) with ESMTP id 8F8AD12012E for <netmod@ietf.org>; Fri, 28 Jun 2019 01:14:26 -0700 (PDT)
Received: from localhost (unknown [173.38.220.61]) by mail.tail-f.com (Postfix) with ESMTPSA id 20CF61AE0351; Fri, 28 Jun 2019 10:14:25 +0200 (CEST)
Date: Fri, 28 Jun 2019 10:14:28 +0200
Message-Id: <20190628.101428.1052788302967086668.mbj@tail-f.com>
To: j.schoenwaelder@jacobs-university.de
Cc: frank.fengchong@huawei.com, andy@yumaworks.com, netmod@ietf.org
From: Martin Bjorklund <mbj@tail-f.com>
In-Reply-To: <20190628080713.ccrcxwnddubpwnsy@anna.jacobs.jacobs-university.de>
References: <20190627201328.3gp7a6vgxzhxxwek@anna.jacobs.jacobs-university.de> <20190628.095220.132556743471062206.mbj@tail-f.com> <20190628080713.ccrcxwnddubpwnsy@anna.jacobs.jacobs-university.de>
X-Mailer: Mew version 6.7 on Emacs 25.2 / Mule 6.0 (HANACHIRUSATO)
Mime-Version: 1.0
Content-Type: Text/Plain; charset="us-ascii"
Content-Transfer-Encoding: 7bit
Archived-At: <https://mailarchive.ietf.org/arch/msg/netmod/ky7wSkeiV4blBciRSjfcObQUYUc>
Subject: Re: [netmod] 答复: FW: a question about ietf-hardware yang module
X-BeenThere: netmod@ietf.org
X-Mailman-Version: 2.1.29
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: Fri, 28 Jun 2019 08:14:28 -0000

Juergen Schoenwaelder <j.schoenwaelder@jacobs-university.de> wrote:
> On Fri, Jun 28, 2019 at 09:52:20AM +0200, Martin Bjorklund wrote:
> > Juergen Schoenwaelder <j.schoenwaelder@jacobs-university.de> wrote:
> > > On Thu, Jun 27, 2019 at 10:04:50PM +0200, Martin Bjorklund wrote:
> > > > Juergen Schoenwaelder <j.schoenwaelder@jacobs-university.de> wrote:
> > > > > On Thu, Jun 27, 2019 at 09:52:56PM +0200, Martin Bjorklund wrote:
> > > > > > > Yes, good point, I think the phrase "by a different hardware
> > > > > > > component" should be removed. It seems last-change should change when
> > > > > > > I unplug a component and I plug it back shortly after, i.e., a
> > > > > > > component is replaced by itself. So we have:
> > > > > > > 
> > > > > > >         "The last time a new hardware component has been added to the
> > > > > > >          '/hardware/component' list, or a hardware component has been
> > > > > > >          removed from the '/hardware/component' list, or a hardware
> > > > > > >          component in the '/hardware/component' list has been
> > > > > > >          replaced."
> > > > > > 
> > > > > > I think that this is still not clear what it means that a component
> > > > > > has been replaced.  Do you mean "replaced by a different hardware
> > > > > > component"?
> > > > > > 
> > > > > > Otherwise (unplug then plug in the same component), the system either
> > > > > > detects the removal and thus updates last-change, or it doesn't detect
> > > > > > the quick removal/insertion, and then it can't do anything.  Thus, I
> > > > > > don't think this case needs special treatment, and the text could be
> > > > > > just:
> > > > > > 
> > > > > >          "The last time a new hardware component has been added to the
> > > > > >           '/hardware/component' list, or a hardware component has been
> > > > > >           removed from the '/hardware/component' list."
> > > > > >
> > > > > 
> > > > > The question is whether every implementor will figure out that if the
> > > > > component found in some slot x-y-z is different from what is expected
> > > > > to be in slot x-y-z, this must be seen as a remove + add combination.
> > > > > If we include 'replace', then it may be clearer that even in the case
> > > > > where what is in slot x-y-z has changed, the last-change must be
> > > > > updated. (That is, the list element with the same name still exists
> > > > > but it is different from what was there before with the same name.)
> > > > 
> > > > But then we're back to where we started - what exactly does "different
> > > > from what was there before" mean?  Presumably that some leaf's value
> > > > is different...?
> > > >
> > > 
> > > Go back some emails, I have removed the 'different' phrase.
> > 
> > Perhaps we can say:
> > 
> >        [...] or a hardware
> >        component in the '/hardware/component' list has been
> >        replaced with a new hardware component with the same
> >        name.
> >
> 
> Do we want last-change to be updated when a component gets unplugged
> and put back, i.e., a component got replaced with itself?
> 
> Can last-change be used to detect that something messed around with
> the components (or a component is connected via a bad line)? Or is
> last-change more strictly for the set of components has changed?
> 
> If I remove a component and I put it back slowly enough, I might get
> two last-change updates (the removal and the addition). If a client
> polls even more slowly, it will see that last-change has changed but
> it will find the same components. Hence, it seems reasonable to not
> exclude a replacement or a component with itself since it is a matter
> of the time resolution with which changes are detected and reported
> via the operational datastore.

Agreed.


/martin