Re: [netmod] interface-cfg issues
Juergen Schoenwaelder <j.schoenwaelder@jacobs-university.de> Tue, 30 April 2013 08:42 UTC
Return-Path: <j.schoenwaelder@jacobs-university.de>
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 1F1AB21F9AE0 for <netmod@ietfa.amsl.com>; Tue, 30 Apr 2013 01:42:13 -0700 (PDT)
X-Virus-Scanned: amavisd-new at amsl.com
X-Spam-Flag: NO
X-Spam-Score: -103.249
X-Spam-Level:
X-Spam-Status: No, score=-103.249 tagged_above=-999 required=5 tests=[BAYES_00=-2.599, HELO_EQ_DE=0.35, RCVD_IN_DNSWL_LOW=-1, USER_IN_WHITELIST=-100]
Received: from mail.ietf.org ([12.22.58.30]) by localhost (ietfa.amsl.com [127.0.0.1]) (amavisd-new, port 10024) with ESMTP id ZoFJ0d2g9EMk for <netmod@ietfa.amsl.com>; Tue, 30 Apr 2013 01:42:08 -0700 (PDT)
Received: from hermes.jacobs-university.de (hermes.jacobs-university.de [212.201.44.23]) by ietfa.amsl.com (Postfix) with ESMTP id 5FD3121F98CA for <netmod@ietf.org>; Tue, 30 Apr 2013 01:42:08 -0700 (PDT)
Received: from localhost (demetrius2.jacobs-university.de [212.201.44.47]) by hermes.jacobs-university.de (Postfix) with ESMTP id C305220BD6; Tue, 30 Apr 2013 10:42:07 +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 J_L5RYlLoKK9; Tue, 30 Apr 2013 10:42:07 +0200 (CEST)
Received: from elstar.local (elstar.jacobs.jacobs-university.de [10.50.231.133]) by hermes.jacobs-university.de (Postfix) with ESMTP id 3F8F020A13; Tue, 30 Apr 2013 10:42:07 +0200 (CEST)
Received: by elstar.local (Postfix, from userid 501) id 20B1025E9DFB; Tue, 30 Apr 2013 10:42:07 +0200 (CEST)
Date: Tue, 30 Apr 2013 10:42:07 +0200
From: Juergen Schoenwaelder <j.schoenwaelder@jacobs-university.de>
To: Martin Bjorklund <mbj@tail-f.com>
Message-ID: <20130430084207.GB47140@elstar.local>
Mail-Followup-To: Martin Bjorklund <mbj@tail-f.com>, netmod@ietf.org
References: <20130430.092945.981969607302073955.mbj@tail-f.com> <20130430074930.GA46852@elstar.local> <20130430.101213.940183903512995864.mbj@tail-f.com>
MIME-Version: 1.0
Content-Type: text/plain; charset="utf-8"
Content-Disposition: inline
Content-Transfer-Encoding: 8bit
In-Reply-To: <20130430.101213.940183903512995864.mbj@tail-f.com>
User-Agent: Mutt/1.5.21 (2010-09-15)
Cc: netmod@ietf.org
Subject: Re: [netmod] interface-cfg issues
X-BeenThere: netmod@ietf.org
X-Mailman-Version: 2.1.12
Precedence: list
Reply-To: Juergen Schoenwaelder <j.schoenwaelder@jacobs-university.de>
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: <http://www.ietf.org/mail-archive/web/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: Tue, 30 Apr 2013 08:42:13 -0000
On Tue, Apr 30, 2013 at 10:12:13AM +0200, Martin Bjorklund wrote: > Juergen Schoenwaelder <j.schoenwaelder@jacobs-university.de> wrote: > > On Tue, Apr 30, 2013 at 09:29:45AM +0200, Martin Bjorklund wrote: > > > Hi, > > > > > > The Routing Directorate review of > > > draft-ietf-netmod-interfaces-cfg-10.txt > > > brought up a couple of issues that I think the WG needs to dicsuss. > > > > > > (The original mail is not in the list archive, but my reply is found > > > here: > > > http://www.ietf.org/mail-archive/web/netmod/current/msg08031.html) > > > > > > > > > 1) The name "location" > > > > > > > > >> 3. Interfaces Data Model > > > > > >> … > > > > > >> +--rw location? string > > > > > >> ... > > > > > >> 3.1. The interface List > > > > > >> … > > > > > >> The "location" leaf is a string. It is optional in the data model, > > > > > >> but if the type represents a physical interface, it is mandatory. > > > > > >> The format of this string is device- and type-dependent. The device > > > > > >> uses the location string to identify the physical or logical entity > > > > > >> that the configuration applies to. For example, if a device has a > > > > > >> single array of 8 ethernet ports, the location can be one of the > > > > > >> strings "1" to "8". As another example, if a device has N cards of M > > > > > >> ports, the location can be on the form "n/m", such as "1/0". > > > > > >> > > > > > >> I think that "location" is a poorly chosen label, a misnomer. This > > > > > >> seems to be > > > > > >> closer to an identifier than a locator. For example, some devices > > > > > >> number slots > > > > > >> left to right, and some number slots right to left :-) > > > > > > > > > > > > Correct, and we do not try to get into this at all. Some > > > > > > devices has 2 ports called A and B, and some have chassis of cards > > > > > > with rows of ports... > > > > > > > > > > > >> This does not answer > > > > > >> "where" something is; I do not mean geo-location, but I strongly > > > > > >> suggest > > > > > >> getting more precision on how this leaf is called. For example, > > > > > >> interface > > > > > >> numbering, instance id, type identifier, etc. > > > > > > > > > > > > The intention is really to be "where" the port is. It is not intended > > > > > > to be a virtual id. If the operator plugs in a cable in a certain > > > > > > port, he has to know how to configure this port so there must be > > > > > > something in the config that connects to the physical port. We use > > > > > > the name "location" for this purpose. > > > > > > > > > > Thanks for the explanation. While I appreciate (and I agree) that you > > > > > do not get into interpreting or parsing the syntax of the field, I > > > > > still think it is not a "location". > > > > > > > > > > I believe there is still an underlying assumption that the language is > > > > > defined for the physical world. If you have an Ethernet1/0, versus an > > > > > Ethernet1/2, that identifies (not locates) which interface. Yes, you > > > > > can use that to physically find them. But what if you have a > > > > > "loopback123" vs "loopback112358 or a "Serial1/4:5.123"? I do not > > > > > think we can "locate" the loopback, or the subinterface. > > > > > > > > > > If the operator creates a "loopback", "Tunnel", or virtual interface, > > > > > he or she does not need to physically locate it. > > > > > > > > > > I believe that labeling the leaf as "location" can be harmful as it > > > > > implies a specific meaning and shows assumptions. > > > > > > > > Ok I think I understand your concern. Personally, I think "location" > > > > works also in this case, but we should pick a name that is as useful > > > > as possible. Let me bring this issue back to the WG. > > > > > > > > > Any comments on this? > > > > > > > My understanding is that location is primarily for physical network > > interfaces. For logical interfaces, the location may not be defined. > > This covers loopback, tunnel, and virtual interfaces. Perhaps all that > > needs to be done is to state that for interfaces that do not have a > > location like loopback interfaces, the location leaf will not exist. > > So we should probably say that it is used *only* for physical > interfaces, not "primarily" - or is there a situation where it could > be used also for logical/virtual interfaces? For example, for > loopbacks, you could theoretically use a plain number as the > location. If we limit location to physical interfaces, you would have > to define a "number" leaf for loopbacks (in some other module). But > it might be ok, I fail to see why I now suddenly need a number for the location of my loopback interface. It simply does not have a location, no? A VLAN interface on top of an Ethernet trunk does not need a physical location since the lower layer interface has one but I also do not mind to have an implementation support a location in that case. Perhaps I do not see the problem yet. > > > 2) phys-address > > > > > > >> leaf phys-address { > > > >> type yang:phys-address; > > > >> config false; > > > >> description > > > >> "The interface's address at its protocol sub-layer. For > > > >> example, for an 802.x interface, this object normally > > > >> contains a MAC address. The interface's media-specific > > > >> modules must define the bit and byte ordering and the > > > >> format of the value of this object. For interfaces that do > > > >> not have such an address (e.g., a serial line), this node > > > >> is not present."; > > > >> reference > > > >> "RFC 2863: The Interfaces Group MIB - ifPhysAddress"; > > > >> } > > > >> > > > >> Just by reading the description of this leaf, shouldn't this be > > > >> part of an augmentation type-specific module? For example, for an > > > >> Ethernet interface module, instead of the main YANG interface > > > >> management top-level. Meaning: this specific leaf, by definition, > > > >> cannot be generically specified to what it means for each type of > > > >> interfaces. All the others can… if this cannot be specified outside > > > >> a media-specific module, why define it here? > > > > > > So the proposal from him is to remove this leaf. I think it could > > > stay, but we would probably not have added it if it wasn't part of > > > ifTable... Comments? > > > > There are interfaces that do not have a physical address, e.g. the > > loopback interface. For such interfaces, phys-address would not exist. > > Are there interfaces that have a physical address that this object > > can't represent properly? Sure, this object could be moved to > > interface type specific data models. This provides the benefit of > > coming up with more specific address types and representations at the > > expense that there is no generic way to retrieve the physical address > > of an arbitrary interface. Do we have any concrete experience that > > ifPhysAddress does not work in the IF-MIB? > > I don't think this was his concern. I think the concern was that this > leaf sticks out - why do we have an object that doesn't apply to all > interface types in this module? Maybe there are other such objects > that we should include... We went through discussions like this and the WG finally agreed on what we have in the I-D. I personally do not like to restart this discussion. We need to ship things, additional leafs can always be added later in revisions. So I only see the option we ship what we have agreed to before or we take out phys-address and we are willing to wait for interface type specific data models to provide something similar. Unless ifPhysAddress has proven broken, I prefer to keep what we have on the table right now. /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/>
- [netmod] interface-cfg issues Martin Bjorklund
- Re: [netmod] interface-cfg issues Juergen Schoenwaelder
- Re: [netmod] interface-cfg issues Martin Bjorklund
- Re: [netmod] interface-cfg issues Martin Bjorklund
- Re: [netmod] interface-cfg issues Juergen Schoenwaelder
- Re: [netmod] interface-cfg issues Ladislav Lhotka