Subject: [netmod] rfc7223bis (interfaces) enabled leaf vs SNMP admin-state

From: "Sterne, Jason (Nokia - CA/Ottawa)" <[email-masked]>
Date: Thu, 26 Oct 2017 17:04:30 +0000

Hi all,

The issue I'm raising isn't new to the 'bis' version of RFC7223, but I'm questioning whether we should consider changing something about it while we're in there.

The 'enabled' leaf has this in the description:

             Changes in this leaf in the intended configuration are
             reflected in ifAdminStatus, but if ifAdminStatus is
             changed over SNMP, this leaf is not affected.

As an example of "working code", Nokia's SR OS has supported full router configuration via SNMP for many years.  When someone enables an interface via CLI, that is reflected in ifAdminStatus and vice-versa.   i.e. configuration via two different interfaces (SNMP & CLI) that use different data models, map rw leafs from the two interfaces/models to the same underlying internal object.

In general, many SNMP rw objects will map to the same underlying internal rw object as the equivalent rw leaf in a YANG model (for products that actually support config management via SNMP as well as NETCONF).  Changing the leaf/object via SNMP affects the equivalent leaf/object in NETCONF.  Why make this one a special case ?

I'd propose that we remove that sentence.

Rgds,
Jason

> -----Original Message-----
> From: netmod [mailto:[email-masked]] On Behalf Of internet-
> [email-masked]
> Sent: Monday, October 16, 2017 9:25
> To: [email-masked]
> Cc: [email-masked]
> Subject: [netmod] I-D Action: draft-ietf-netmod-rfc7223bis-00.txt
> 
> 
> A New Internet-Draft is available from the on-line Internet-Drafts directories.
> This draft is a work item of the Network Modeling WG of the IETF.
> 
>         Title           : A YANG Data Model for Interface Management
>         Author          : Martin Bjorklund
> 	Filename        : draft-ietf-netmod-rfc7223bis-00.txt
> 	Pages           : 47
> 	Date            : 2017-10-15
> 
> Abstract:
>    This document defines a YANG data model for the management of network
>    interfaces.  It is expected that interface-type-specific data models
>    augment the generic interfaces data model defined in this document.
>    The data model includes definitions for configuration and system
>    state (status information and counters for the collection of
>    statistics).  This document obsoletes RFC 7223.
> 
> 
> The IETF datatracker status page for this draft is:
> https://datatracker.ietf.org/doc/draft-ietf-netmod-rfc7223bis/
> 
> There are also htmlized versions available at:
> https://tools.ietf.org/html/draft-ietf-netmod-rfc7223bis-00
> https://datatracker.ietf.org/doc/html/draft-ietf-netmod-rfc7223bis-00
> 
> 
> Please note that it may take a couple of minutes from the time of submission
> until the htmlized version and diff are available at tools.ietf.org.
> 
> Internet-Drafts are also available by anonymous FTP at:
> ftp://ftp.ietf.org/internet-drafts/
> 
> _______________________________________________
> netmod mailing list
> [email-masked]
> https://www.ietf.org/mailman/listinfo/netmod

---

From: Martin Bjorklund <[email-masked]>
Date: Thu, 26 Oct 2017 20:50:53 +0200 (CEST)

"Sterne, Jason (Nokia - CA/Ottawa)" <[email-masked]> wrote:
> Hi all,
> 
> The issue I'm raising isn't new to the 'bis' version of RFC7223, but
> I'm questioning whether we should consider changing something about it
> while we're in there.
> 
> As an example of "working code", Nokia's SR OS has supported full
> router configuration via SNMP for many years.  When someone enables an
> interface via CLI, that is reflected in ifAdminStatus and vice-versa.
> i.e. configuration via two different interfaces (SNMP & CLI) that use
> different data models, map rw leafs from the two interfaces/models to
> the same underlying internal object.
> 
> In general, many SNMP rw objects will map to the same underlying
> internal rw object as the equivalent rw leaf in a YANG model (for
> products that actually support config management via SNMP as well as
> NETCONF).  Changing the leaf/object via SNMP affects the equivalent
> leaf/object in NETCONF.  Why make this one a special case ?

Note how ifAdminStatus is defined:

            "The desired state of the interface.  The testing(3) state
            indicates that no operational packets can be passed.  When a
            managed system initializes, all interfaces start with
            ifAdminStatus in the down(2) state.  As a result of either
            explicit management action or per configuration information
            retained by the managed system, ifAdminStatus is then
            changed to either the up(1) or testing(3) states (or remains
            in the down(2) state)."

Note the *per configuration information*.  It is clear that
ifAdminStatus is not the same as the "per configuration information".
The config object can affect ifAdminStatus.  "enabled" in the YANG
model is supposed to be that config object that can affect
ifAdminStatus.

/martin

---

From: "Sterne, Jason (Nokia - CA/Ottawa)" <[email-masked]>
Date: Thu, 26 Oct 2017 19:11:18 +0000

Hi Martin,

I'm OK with that direction ('enabled' affects ifAdminStatus).  I'm questioning the other direction.  I think a change in ifAdminStatus should be reflected in 'enabled'.

Rgds,
Jason

> From: Martin Bjorklund [mailto:[email-masked]]
> Sent: Thursday, October 26, 2017 14:51
> To: Sterne, Jason (Nokia - CA/Ottawa) <[email-masked]>
> Cc: [email-masked]
> Subject: Re: [netmod] rfc7223bis (interfaces) enabled leaf vs SNMP admin-
> state
> 
> Note the *per configuration information*.  It is clear that ifAdminStatus is not
> the same as the "per configuration information".
> The config object can affect ifAdminStatus.  "enabled" in the YANG model is
> supposed to be that config object that can affect ifAdminStatus.
> 
> 
> 
> /martin
> 
> 
> >
> > > Please note that it may take a couple of minutes from the time of
> > > submission until the htmlized version and diff are available at
> > > tools.ietf.org.
> > >

---

From: Martin Bjorklund <[email-masked]>
Date: Fri, 27 Oct 2017 09:50:15 +0200 (CEST)

> I'm OK with that direction ('enabled' affects ifAdminStatus).  I'm questioning the other direction.  I think a change in ifAdminStatus should be reflected in 'enabled'.

How about simply:

              Changes in this leaf in the intended configuration are
              reflected in ifAdminStatus.

This would allow implementations that separate the two to not update
"enabled" when ifAdminStatus is updated, and allow your implemenation
to do the update (how do you handle 'testing' btw?).

/martin

---

From: "Sterne, Jason (Nokia - CA/Ottawa)" <[email-masked]>
Date: Fri, 27 Oct 2017 12:17:17 +0000

Yes - that seems OK to me.  Although how about we remove the word 'intended' to avoid confusion with the NMDA stuff ?

               Changes in this leaf in the configuration are reflected in ifAdminStatus.

I'm not sure about 'testing' but I suspect we don't support it (i.e. return an error if an SNMP client tries to set that value).  Or perhaps we map it.

Jason

> Sent: Friday, October 27, 2017 3:50
> > I'm OK with that direction ('enabled' affects ifAdminStatus).  I'm
> questioning the other direction.  I think a change in ifAdminStatus should be
> reflected in 'enabled'.
> 
> How about simply:
> 
> "enabled" when ifAdminStatus is updated, and allow your implemenation to
> do the update (how do you handle 'testing' btw?).
> 
> 
> /martin
> 
> 
> >
> > Rgds,
> > Jason
> >
> > > Subject: Re: [netmod] rfc7223bis (interfaces) enabled leaf vs SNMP
> > > admin- state
> > >
> > > > The issue I'm raising isn't new to the 'bis' version of RFC7223,
> > > > but I'm questioning whether we should consider changing something
> > > > about it while we're in there.
> > > >
> > > > router configuration via SNMP for many years.  When someone
> > > > enables an interface via CLI, that is reflected in ifAdminStatus and vice-
> versa.
> > > > i.e. configuration via two different interfaces (SNMP & CLI) that
> > > > use different data models, map rw leafs from the two
> > > > interfaces/models to the same underlying internal object.
> > > >
> > > > products that actually support config management via SNMP as well
> > > > as NETCONF).  Changing the leaf/object via SNMP affects the
> > > > equivalent leaf/object in NETCONF.  Why make this one a special case ?
> > >
> > > model is supposed to be that config object that can affect ifAdminStatus.
> > >
> > >
> > >
> > > /martin
> > >
> > >
> > > >
> > > > > From: netmod [mailto:[email-masked]] On Behalf Of
> > > > > internet- [email-masked]
> > > > > https://datatracker.ietf.org/doc/html/draft-ietf-netmod-rfc7223b
> > > > > is-0
> > > > > 0
> > > > >
> > > > >
> > > > > Please note that it may take a couple of minutes from the time
> > > > > of submission until the htmlized version and diff are available
> > > > > at tools.ietf.org.
> > > > >