RE: [imss] Rereview of: draft-ietf-imss-fc-fcs-mib-01.txt

"Wijnen, Bert \(Bert\)" <bwijnen@alcatel-lucent.com> Sun, 31 December 2006 19:09 UTC

Received: from [127.0.0.1] (helo=stiedprmman1.va.neustar.com) by megatron.ietf.org with esmtp (Exim 4.43) id 1H163k-0001C4-Eh; Sun, 31 Dec 2006 14:09:28 -0500
Received: from [10.91.34.44] (helo=ietf-mx.ietf.org) by megatron.ietf.org with esmtp (Exim 4.43) id 1H163j-0001Bz-Dl for imss@ietf.org; Sun, 31 Dec 2006 14:09:27 -0500
Received: from ihemail2.lucent.com ([135.245.0.35]) by ietf-mx.ietf.org with esmtp (Exim 4.43) id 1H163e-0000bd-1i for imss@ietf.org; Sun, 31 Dec 2006 14:09:27 -0500
Received: from ilexp02.ndc.lucent.com (h135-3-39-2.lucent.com [135.3.39.2]) by ihemail2.lucent.com (8.13.8/IER-o) with ESMTP id kBVJ96uL000976; Sun, 31 Dec 2006 13:09:06 -0600 (CST)
Received: from DEEXP02.DE.lucent.com ([135.248.187.66]) by ilexp02.ndc.lucent.com with Microsoft SMTPSVC(6.0.3790.1830); Sun, 31 Dec 2006 13:09:05 -0600
Received: from DEEXC1U02.de.lucent.com ([135.248.187.27]) by DEEXP02.DE.lucent.com with Microsoft SMTPSVC(6.0.3790.1830); Sun, 31 Dec 2006 20:09:04 +0100
X-MimeOLE: Produced By Microsoft Exchange V6.5
Content-class: urn:content-classes:message
MIME-Version: 1.0
Content-Type: text/plain; charset="US-ASCII"
Content-Transfer-Encoding: quoted-printable
Subject: RE: [imss] Rereview of: draft-ietf-imss-fc-fcs-mib-01.txt
Date: Sun, 31 Dec 2006 20:04:26 +0100
Message-ID: <D4D321F6118846429CD792F0B5AF471F08C5EC@DEEXC1U02.de.lucent.com>
In-Reply-To: <6002A63FDB393D4F9ADB36DE70C4847501B26E03@hq-exch-1.corp.brocade.com>
X-MS-Has-Attach:
X-MS-TNEF-Correlator:
Thread-Topic: [imss] Rereview of: draft-ietf-imss-fc-fcs-mib-01.txt
Thread-Index: Accs657cJYdN157+Svig6VjGJD2xNgAFccMgAAM7agA=
From: "Wijnen, Bert (Bert)" <bwijnen@alcatel-lucent.com>
To: Robert Snively <rsnively@Brocade.COM>, Keith McCloghrie <kzm@cisco.com>
X-OriginalArrivalTime: 31 Dec 2006 19:09:04.0269 (UTC) FILETIME=[2342D3D0:01C72D0F]
X-Scanned-By: MIMEDefang 2.57 on 135.245.2.35
X-Spam-Score: 0.0 (/)
X-Scan-Signature: fb4923faae7d2b1be4e504c39e80ae8d
Cc: imss@ietf.org, dromasca@avaya.com
X-BeenThere: imss@ietf.org
X-Mailman-Version: 2.1.5
Precedence: list
List-Id: Internet and Management Support for Storage Working Group <imss.ietf.org>
List-Unsubscribe: <https://www1.ietf.org/mailman/listinfo/imss>, <mailto:imss-request@ietf.org?subject=unsubscribe>
List-Post: <mailto:imss@ietf.org>
List-Help: <mailto:imss-request@ietf.org?subject=help>
List-Subscribe: <https://www1.ietf.org/mailman/listinfo/imss>, <mailto:imss-request@ietf.org?subject=subscribe>
Errors-To: imss-bounces@ietf.org

I won't loose sleep over it.
But it is quite common that "IETF WG xxx" is mentioned in the
organization clause, and also in the acknowledgemens section.

But I leave that to authors/editors, WG chair and AD.

Bert
Happy new year

> -----Original Message-----
> From: Robert Snively [mailto:rsnively@Brocade.COM] 
> Sent: zondag 31 december 2006 18:42
> To: Keith McCloghrie; Wijnen, Bert (Bert)
> Cc: imss@ietf.org; dromasca@avaya.com
> Subject: RE: [imss] Rereview of: draft-ietf-imss-fc-fcs-mib-01.txt
> 
> As I understand it (RFC2418, clause 2), IETF working groups 
> exist for a relatively short time and for a determined and 
> focused purpose.  They do not have an identifiable or 
> recorded membership and after 6 months all their documents 
> that have not become RFCs are deleted from the IETF files.  
> In addition, recognition for the effort of developing an RFC 
> is not granted to the imss working group, but rather to the 
> author.  As a result, it does not seem to me particularly 
> useful to mention IMSS as an organization in this context.  
> If any organization beyond T11 were relevant, it would 
> probably be the IETF or at the lowest granularity, the 
> hosting area, the Operations and Management Area.
> 
> I would recommend NOT mentioning IMSS in the ORGANIZATION clause.
> 
> Bob
> 
> -----Original Message-----
> From: Keith McCloghrie [mailto:kzm@cisco.com]
> Sent: Sunday, December 31, 2006 6:53 AM
> To: bwijnen@alcatel-lucent.com
> Cc: imss@ietf.org; dromasca@avaya.com
> Subject: Re: [imss] Rereview of: draft-ietf-imss-fc-fcs-mib-01.txt
> 
> Thanks, Bert.  I agree that it would be good to mention IMSS 
> (as well as T11) in the ORGANIZATION clause of the 
> MODULE-IDENTITY, and since that will require a new version of 
> the I-D, I can add a WRITE-SYNTAX clause (for 
> t11FcsDiscoveryStatus) as you suggest at the same time.
> 
> So, a question for David (after he returns from his vacation 
> two weeks from now) and/or Dan: shall I submit an updated I-D 
> with the these two changes ?
> 
> Keith.
>  
> > I have re-reviewed this MIB document.
> > My first review was the revision zero version.
> > My comments to that one and the answer provided by Keith 
> are attached 
> > below. I am happy with the new revision and/or the answers 
> that were 
> > given by Keith.
> > 
> > No major issues anymore, So I think this doc is ready.
> > 
> > You may want to consider this:
> > 
> > - I wonder if the IETF IMSS WG should also be mentioned in
> >   the ORGANIZATION clause of the MODULE-IDENTITY
> > 
> > - For object t11FcsDiscoveryStatus I read in the DESCRIPTION
> >   clause that one can only SET it to localOnly via SNMP.
> >   I suggest to also express this in the MODULE-COMPLIANCE
> >   by changing:
> > 
> >     OBJECT   t11FcsDiscoveryStatus
> >     MIN-ACCESS   read-only
> >     DESCRIPTION
> >             "Write access is not required."
> > 
> >   into something like:
> > 
> >     OBJECT   t11FcsDiscoveryStatus
> >     WRITE-SYNTAX INTEGER { localOnly(3) }
> >     MIN-ACCESS   read-only
> >     DESCRIPTION
> >             "Write access is not required.
> >              However, if write access is supported, then 
> one can only
> >              write (SET) the value to 'localOnly'.
> >             "
> > 
> >   It was discussed in the below inetraction between Keith 
> and myself.
> >   I can live if you do not change the MODULE-COMPLIANCE.
> > 
> > Bert
> > 
> > -----Original Message-----
> > From: Keith McCloghrie [mailto:kzm@cisco.com]
> > Sent: woensdag 6 september 2006 0:04
> > To: bwijnen@lucent.com
> > Cc: imss@ietf.org
> > Subject: Re: [imss] WG Last Call: draft-ietf-imss-fc-fcs-mib-00.txt
> > 
> > Bert,
> > 
> > Thanks for the comments.  My responses are below.
> > 
> > Keith.
> > -----------------
> > 
> > > - In the MODULE-IDENTITY, I see:
> > > 
> > >     REVISION  "200608140000Z"
> > >     DESCRIPTION
> > >             "Initial version of this MIB module."
> > >     ::= { mib-2 nnn }                     -- to be 
> determined later
> > >   
> > >   I think I would make that:
> > > 
> > >     REVISION  "200608140000Z"
> > >     DESCRIPTION
> > >             "Initial version of this MIB module, published as RFC
> > yyyy."
> > >     -- RFC-Editor, replace yyyy with actual RFC number & 
> remove this
> > note
> > >     ::= { mib-2 nnn }  -- to be assigned by IANA.
> > >     -- RFC Editor: replace nnn with IANA-assigned number & remove
> this
> > 
> > > note
> > > 
> > > - To avoid later comments, I would also add this to the 
> DESCRIPTION
> > >   clause of the MODULE-IDENTITY itself:
> > > 
> > >            Copyright (C) The Internet Society (2006).  
> This version
> of
> > >            this MIB module is part of RFC yyyy;  see the 
> RFC itself
> > for
> > >            full legal notices."
> > > 
> > >    -- RFC Editor: replace yyyy with actual RFC number & 
> remove this 
> > > note
> >  
> > Oops.  All of this WG's other recent drafts have the required 
> > boilerplate; I'm not sure how this one slipped through without it.
> > 
> > > - I wonder if we would not better rename these TCs (for naming
> > consistency):
> > > 
> > >      FcIeType, FcPortState, FcPortTxType
> > >  
> > >   and name them instead as follows:
> > > 
> > >      T11FcIeType, T11FcPortState, T11FcPortTxType
> > > 
> > >   Or are these 3 TCs extending the set of FcXxxx TCs in RFC4044?
> > >   If so, the I'd suggest to add at least a small SMI comment to
> state
> > that,
> > >   so that it is clear why the names are as chosen.
> >  
> > I named them to be consistent with FcPortType, and, *if* we were 
> > updating
> > RFC4044, then I'd put them in there, but we're not.   So, 
> rather than
> > add a "small SMI comment", I'd prefer to change their names.
> > 
> > > - For consistency, but also for betetr info in the DESCRIPTION
> clause,
> > >   I would consider to change:
> > > 
> > >   FcPortTxType ::= TEXTUAL-CONVENTION
> > >     STATUS  current
> > >     DESCRIPTION
> > >             "The technology of the port transceiver:
> > > 
> > >                 unknown        - unknown (includes the 
> 'null' type)
> > >                 other          - some other technology
> > >                 shortwave850nm - Short wave laser - SN (850 nm)
> > >                 longwave1550nm - Long wave laser - LL (1550 nm)
> > >                 longwave1310nm - Long wave laser cost
> > >                                  reduced - LC (1310 nm)
> > >                 electrical     - Electrical - EL."
> > > 
> > >   into:
> > > 
> > >   FcPortTxType ::= TEXTUAL-CONVENTION
> > >     STATUS  current
> > >     DESCRIPTION
> > >             "The technology of the port transceiver:
> > > 
> > >                 unknown(1)        - unknown (includes the 'null'
> type)
> > >                 other(2)          - some other technology
> > >                 shortwave850nm(3) - Short wave laser - SN (850 nm)
> > >                 longwave1550nm(4) - Long wave laser - LL (1550 nm)
> > >                 longwave1310nm(5) - Long wave laser cost
> > >                                     reduced - LC (1310 nm)
> > >                 electrical(6)     - Electrical - EL."
> >  
> > OK.
> > 
> > > - I am a bit surprised by:
> > > 
> > >   T11ListIndexPointer ::= TEXTUAL-CONVENTION
> > >     STATUS  current
> > >     DESCRIPTION
> > >             "Objects with this syntax point to a list of elements
> > >             contained in a table, by holding the same value as the
> > >             object with syntax T11ListIndex defined in the table's
> > >             INDEX clause, or, zero to indicate an empty list.
> > >             The definition of an object with this syntax must
> > >             identify the table(s) into which it points."
> > >     SYNTAX  Unsigned32 -- the default range of (0..4294967295)
> > > 
> > >   First, I would make it:  SYNTAX Unsigned32 (0..4294967295)
> > >   instead of putting that in a SMI comment field.
> >  
> > The reason I added the ASN.1 comment was to dispel all ambiguity,
> i.e.,
> > to make it clear that the definition intentionally uses the default 
> > range.  Thus, there is no reason to include the default range
> explicitly
> > in the syntax.  Why do we have a default range if we're not 
> allowed to 
> > use it ??
> > 
> > >   Second, I think we normally would use a name of
> > > 
> > >     T11ListIndexOrZero ::= TEXTUAL-CONVENTION
> > > 
> > >   To complement the T11ListIndex TC, which does not include the
> zaero.
> > > 
> > >   Third, we also normally do not prescribe what a value of zero
> means,
> > >   but we normally say something aka (this is from
> > InetrfaceIndexOrZero):
> > > 
> > >             "This textual convention is an extension of the
> > >             InterfaceIndex convention.  The latter 
> defines a greater
> > >             than zero value used to identify an interface or
> interface
> > >             sub-layer in the managed system.  This 
> extension permits
> > the
> > >             additional value of zero.  the value zero is
> > object-specific
> > >             and must therefore be defined as part of the 
> description
> > of
> > >             any object which uses this syntax.  Examples of the
> usage
> > of
> > >             zero might include situations where interface was
> unknown,
> > >             or when none or all interfaces need to be referenced."
> > > 
> > >   We in fact have quite a few of these XxxSomeIndex and
> > XxxSomeIndexOrZero
> > >   TCs, which all (i believe) follow/use that same concept. I would
> > strongly
> > >   suggest that we do so here as well.
> > > 
> > >   Mmmm... I see that for some other TCs in the 
> FC/IMSS/IPS space you
> > do
> > >   not follow the InterfaceIndex/InetrfaceInexOrZero so closely
> either.
> > >   Oh well... Up to you and the WG. I personally like the
> > InterfaceIndeOrZero
> > >   approach better. 
> >  
> > OK, I'll rename the TC to T11ListIndexPointerOrZero.
> > 
> > > - I see REFERENCE clauses aka:
> > > 
> > >     REFERENCE
> > >             "ANSI INCITS xxx-200x, Fibre Channel - 
> Generic Services
> 5,
> > >             FC-GS-5 T11/Project 1677-D/Rev 8, Table 124."
> > > 
> > >   which relates to this reference (I guess):
> > > 
> > >    [FC-GS-5]
> > >      "Fibre Channel - Generic Services - 5 (FC-GS-5)", ANSI INCITS
> > >      xxx-200x, T11/Project 1677-D/Rev 8.00
> > >      http://www.t11.org/t11/stat.nsf/upnum/1677-d, September 2004.
> > > 
> > >   Do we know when we will get a stable reference?
> > >   It is normative, so we may have to say something about that.
> > > 
> > >   I guess Keith already stated that David or Claudio should answer
> > this
> > >   question.
> >  
> > Claudio said this morning that revision 8.5 is the final one.
> > So, I need to go ahead and update the MIB based on Rev 8.5, 
> including 
> > adding any new enumerations which have been defined since Rev 8.0.
> > 
> > > - For t11FcsFabricDiscoveryRangeLow and
> > t11FcsFabricDiscoveryRangeHigh,
> > >   is the value in these objects included in teh range? My 
> read would
> > >   say they are. But we may want to make that clear by stating it?
> >  
> > OK, I'll change:
> > 
> >             "The discovery by a particular switch operates
> >             within all existing Fabrics that have a fabric
> >             index within a specific range.  ...
> > to:
> >             "The discovery by a particular switch operates
> >             within all existing Fabrics that have a fabric
> >             index within a specific inclusive range.  ...
> > 
> > > - For t11FcsFabricDiscoveryStart, how long does discovery take?
> > >   The reason I ask, is that if it may take a while, that we might
> > >   want to consider a value like "discoveryInProgress(3) ??
> > >   Just thinking aloud, I can also live with what we have in there
> now.
> >  
> > I think this is already available since 'inProgress' is one of the 
> > defined values for t11FcsDiscoveryStatus.
> > 
> > > - t11FcsFabricDiscoveryTable
> > >   I guess that this table gets created/instantiated by the agent
> > everytime
> > >   it starts. There are no default values for the two objects 
> > >   t11FcsFabricDiscoveryRangeLow and 
> t11FcsFabricDiscoveryRangeHigh.
> > >   So how is the behavioud if I issue a DiscoveryStart when these
> > objects
> > >   have not been SET yet? Should we define DEFVALs?
> > 
> > Just adding DEFVALs would be a temptation to write sloppy
> applications,
> > because an NMS can not be sure whether a particular entry has been
> used
> > or not since the last reboot.  Thus, invoking 
> DiscoveryStart without 
> > checking the values of RangeLow and RangeHigh, would be very sloppy.
> > Given that an application needs to check, then it also has to change
> the
> > values if they're wrong.  Thus, the simplest way to write such an 
> > application is to always specify the range explicitly (i.e., write 
> > RangeLow and RangeHigh) at the same time as invoking DiscoveryStart.
> > 
> > So, I propose to add a recommendation to the DESCRIPTION like this:
> > 
> >   t11FcsFabricDiscoveryStart  OBJECT-TYPE
> >       SYNTAX       INTEGER {
> >                        start(1),
> >                        noOp(2)
> >                    }
> >       MAX-ACCESS   read-write
> >       STATUS       current
> >       DESCRIPTION
> >               "This object provides the capability to trigger the
> start
> >               of a discovery by a Fabric Configuration Server.  If
> this
> >               object is set to 'start', then the discovery 
> is started
> on
> >               those fabrics which have their fabric index 
> value in the
> >               range specified by t11FcsFabricDiscoveryRangeLow and
> >               t11FcsFabricDiscoveryRangeHigh.  It is 
> recommended that
> >               whenever an instance of this object is set to 'start',
> >               that the desired range be concurrently specified by
> >               setting the corresponding instances of
> >               t11FcsFabricDiscoveryRangeLow and
> >               t11FcsFabricDiscoveryRangeHigh.
> > 
> > > - Given the DESCRIPTION clause of t11FcsFabricDiscoveryStart, I 
> > >   suggest to add  DEFVAL { noOp }
> > 
> > Since the value when read is always 'noOp', to specify a 
> DEFVAL would 
> > either be redundant, or worse, it would weaken the 
> definition because
> a
> > DEFVAL is only advisory, whereas the statement:  "the value 
> when read
> is
> > always 'noOp'" is mandatory.
> > 
> > > - I suppose that SETTING t11FcsDiscoveryStatus to one of
> > >                      inProgress(1),
> > >                      completed(2),
> > >   would have no effect? I.e. it would be ignored?
> > >   Whatever the intended behaviour is to be, we probably do best to
> > >   be specific as to what we want an agent to do.
> > > 
> > >   I personally kind of like to add something to the
> MODULE-COMPLIANCE<
> > >   which states that the WRITE-SYNTAX is  localOnly(3) and that
> > >   the SYNTAX is all 3 values. I think that expresses that only the
> > >   one value that makes sense can be SET/written.
> > > 
> > >   I personally might do a similar thing for
> > t11FcsFabricDiscoveryStart,
> > >   but that one at least explains what to do if I set the value to
> > >   something that does not trigger an action.
> >  
> > I prefer to add a sentence to the DESCRIPTION of
> t11FcsDiscoveryStatus,
> > like this:
> > 
> >             It is an error for a manager to set the value of this
> >             object to anything other than 'localOnly'."
> > 
> > > - t11FcsDiscoveryStatus has no persistency (or so is my reading of
> > >   the DESCRIPTION clause) and will be set to localOnly upon a
> restart?
> > >   If so, it might be usefull to add a sentence about that, just to
> be
> > >   explicit and clear.
> >  
> > It already has this sentence:
> > 
> >             Initially when the switch comes up, all 
> instances of this
> >             object have the value: 'localOnly'
> > 
> > Do you want me to change "switch comes up" to "agent restarts" ??
> > 
> > > - For objects t11FcsIeName and t11FcsIeDomainId, I wonder 
> if a zero
> > >   (i.e. zero length OCTET STRING) are really valid. If 
> not, then we
> > >   should add a SIZE and RANGE restriction.
> >  
> > FC-GS-5 says:
> > 
> >   6.2.3.2.1 Interconnect Element Name
> > 
> >   The format of the Interconnect Element Name attribute, as used by
> the
> >   Fabric Configuration Server, shall be identical to the
> Name_Identifier
> >   format defined in FC-FS. If the Interconnect Element is a Switch
> (see
> >   FC-SW), the Interconnect Element Name attribute shall be the
> >   Switch_Name of the Switch.
> > 
> >   This standard does not define how this attribute is 
> registered with 
> > the
> >   Fabric Configuration Server.  The null value for the Interconnect
> >   Element Name attribute is 00 00 00 00 00 00 00 00h.
> > 
> > and
> > 
> >   6.2.3.2.3 Interconnect Element Domain Identifier
> > 
> >   The format of the Interconnect Element Domain Identifier 
> attribute,
> as
> >   used by the Fabric Configuration Server, shall be identical to the
> >   Domain Identifier format defined in FC-SW-3.
> > 
> >   This standard does not define how this attribute is 
> registered with 
> > the
> >   Fabric Configuration Server.  The null value for the Interconnect
> >   Element Domain Identifier attribute is 00h.
> > 
> > Since t11FcsIeDomainId can have a value of zero, FcDomainIdOrZero
> (which
> > is defined as "SYNTAX  Integer32 (0..239)")  should not be 
> restricted.
> > 
> > For t11FcsIeName, the "null" value is specified as all 
> zeros, rather 
> > than the zero-length value.  So, yes, I'll add a restricted range:
> > 
> >   t11FcsIeName  OBJECT-TYPE
> >       SYNTAX       FcNameIdOrZero (SIZE(8 | 16))
> > 
> > > - This definition seems strange:
> > > 
> > >   t11FcsIeFabricName  OBJECT-TYPE
> > >     SYNTAX       FcNameIdOrZero
> > >     MAX-ACCESS   read-only
> > >     STATUS       current
> > >     DESCRIPTION
> > >             "The Fabric_Name (WWN) of this Interconnect Element.
> > >             When the Fabric_Name is unknown, this object contains
> > >             the all-zeros value: x'00 00 00 00 00 00 00 00'."
> > >     REFERENCE
> > >             "ANSI INCITS xxx-200x, Fibre Channel - 
> Generic Services
> 5,
> > >             FC-GS-5 T11/Project 1677-D/Rev 8, section 6.2.3.2.5."
> > >     DEFVAL { '0000000000000000'h }
> > >     ::= { t11FcsIeEntry 5 }
> > 
> > I'll add a restricted range here too.
> > 
> >   t11FcsIeFabricName  OBJECT-TYPE
> >       SYNTAX       FcNameIdOrZero (SIZE(8 | 16))
> > 
> > > - I see this:
> > > 
> > >   t11FcsIeMgmtAddrListIndex  OBJECT-TYPE
> > >     SYNTAX       T11ListIndexPointer
> > >     MAX-ACCESS   read-only
> > >     STATUS       current
> > >     DESCRIPTION
> > >             "The management address list for this Interconnect
> > Element.
> > >             This object points to an entry in the
> > >             t11FcsMgmtAddrListTable."
> > > 
> > >   Reading the DESCRIPTIOn clause, I wonder why one would 
> not use a 
> > >   RowPointer. The fact is that the pointer does not point to "an
> > entry"
> > >   in the t11FcsMgmtAddrListTable, but to a SET of such entries.
> > >   So I guess the DESCRIPTION clause could be clarified.
> > 
> > It is sufficient (and simpler) for this TC to be an Unsigned32,
> whereas
> > RowPointer is an OID.
> >  
> > As a clarification, I've added this sentence to 
> > T11ListIndexPointerOrZero's
> > DESCRIPTION:
> > 
> >               Note that such a table could have one row per list, or
> >               it could have one row per element of a list.
> >  
> > > - I see:
> > >  
> > >   t11FcsIeInfoList  OBJECT-TYPE
> > >     SYNTAX       OCTET STRING (SIZE (0..252))
> > >     MAX-ACCESS   read-only
> > >     STATUS       current
> > >     DESCRIPTION
> > >             "The information list for this Interconnect Element.
> > >             This object contains the following substrings 
> in order:
> > >             vendor name, model name/number and release code/level,
> > >             followed by zero or more substrings of vendor-specific
> > >             information. Each substring is terminated with a byte
> > >             containing a null value (x'00')."
> > > 
> > >   And that reads as if it is ASCII information to be 
> (potentially) 
> > >   consumed by human beings.  So in that case, the IETF wants it to
> > >   be an internationalized string.  Comment?
> >  
> > FC-GS-5 requires the individual values to be ASCII strings 
> (terminated 
> > by nulls).  I'll edit the DESCRIPTION to be:
> > 
> >             The value of this object is formatted as specified in
> >             FC-GS-5, i.e., it contains the following substrings in
> >             order:  vendor name, model name/number and release
> >             code/level, followed by zero or more substrings of
> >             vendor-specific information. Each substring is 
> terminated
> >             with a byte containing a null value (x'00')."
> > 
> > > - I see:
> > > 
> > >   t11FcsMgmtAddr  OBJECT-TYPE
> > >     SYNTAX       SnmpAdminString
> > >     MAX-ACCESS   read-only
> > >     STATUS       current
> > >     DESCRIPTION
> > >             "The management address of this entry.
> > >             The format of this object may be based on the
> > >             format of the Uniform Resource Locator (URL).
> > >             For example, for SNMP, see RFC 4088."
> > > 
> > >   So it syas "the format MAY be based on..." (my emphasis on MAY).
> > >   So, does that mean it may also be based on something else?
> > >   How do I determine what the actual format is?
> >  
> > On re-reading FC-GS-5, I see that it's required to be a 
> URL, and it's 
> > the use of 4088 which is not required.  So, I'll change it to:
> > 
> >             The format of this object is a Uniform Resource Locator
> >             (URL), e.g., for SNMP, see RFC 4088."
> > 
> > > - SMICng gave a warning about the indexing of
> > > 
> > >   t11FcsPortListEntry  OBJECT-TYPE
> > >     SYNTAX       T11FcsPortListEntry
> > >     MAX-ACCESS   not-accessible
> > >     STATUS       current
> > >     DESCRIPTION
> > >             "An entry which identifies that the port which has the
> > >             port name, t11FcsPortName, is in a particular list of
> > >             ports, which is known to a switch (identified by
> > >             fcmInstanceIndex and fcmSwitchIndex)."
> > >     INDEX   { fcmInstanceIndex,  fcmSwitchIndex,
> > >               t11FcsPortListIndex, t11FcsPortName }
> > >     ::= { t11FcsPortListTable 1 }
> > > 
> > >   I read Keiths explanation, which seemed fine. But now that I am
> > >   reviewing the MIB module in details and try to 
> understand things,
> > >   now I am no so sure this is goodness.
> > > 
> > >   So, that t11FcsPortname is a value (embedded in the index) that
> > >   should help me find more detailed info, right?
> > >   So how do I find that info? I think I need to go to the
> > >   t11FcsPortTable, which is indexed by:
> > > 
> > >     INDEX   { fcmInstanceIndex, fcmSwitchIndex,
> > >               t11FcsFabricIndex, t11FcsPortName }
> > > 
> > >   So assuming that the index values for fcmInstanceIndex,
> > fcmSwitchIndex,
> > >   are the same in both tables, I can see that I can pick 
> up 3 index
> > >   values from the list of t11FcsPortsList in the
> t11FcsPortsListTable.
> > >   But I am missing the 3rd index of the 
> t11FcsPortnameTable, namely
> > >   t11FcsFabricIndex. So how am I going to wuickly pick that up?
> > >   Or how exactly are the tables connected/linked?
> > > 
> > >   Maybe I need to study it deeper... but I'd prefer an explanation
> of
> > >   the people who created these tables with the current indexing
> > schemes.
> >  
> > To generate an answer to your question, I needed to re-review the 
> > structure of the tables, and in doing so, I now think that 
> the current 
> > structure is more open-ended/flexible than it needs to be 
> -- having a 
> > less open-ended structure would make the MIB simpler.  Specifically,
> the
> > MIB currently has a table whose only purpose is to identify 
> a list of 
> > (not necessarily related) ports.  However,
> > 
> > - each IE is either a virtual IE attached to one virtual Fabric, or
> >   (if virtual Fabrics are not in use) it's a physical IE.
> > - each port is either a virtual port attached to one virtual Fabric,
> or
> >   (if virtual Fabrics are not in use) it's a physical port.
> > - GS-5 mentions that an IE has a "port list" and has a dotted line
> from
> > the
> >   "Interconnect Element Object" to the "Port Object" in its 
> "Figure 7
> --
> >   Interconnect Element and Port attributes".
> > - However, all ports in an IE's port list will be attached 
> to the same
> >   Fabric as that IE is attached to.  In other words, the 
> relationship
> >   between IEs and ports is hierarchical.
> > - Thus, it would be simpler to:
> > 
> >   - delete the t11FcsPortListTable,
> >   - delete the t11FcsIePortListIndex object, and
> >   - insert t11FcsIeName into the INDEX of the t11FcsPortTable, i.e.,
> >     change the INDEX-ing of the t11FcsPortTable to be:
> > 
> >       INDEX   { fcmInstanceIndex, fcmSwitchIndex, t11FcsFabricIndex,
> >                 t11FcsIeName, t11FcsPortName }
> > 
> > Increasing the INDEX clause from four to five objects makes it a
> little
> > more cumbersome, but the length is still far short of the maximum 
> > length.
> > 
> > With these changes, while there will no longer be any 
> explicit mention 
> > of a "port list" in the MIB, the list of ports on an IE will be all
> the
> > rows in t11FcsPortTable which have the same values for the 
> first four 
> > index objects, i.e., the value of t11FcsPortName will be the only
> index
> > value for which they differ.  So, a "port list" is 
> (implicitly) a set
> of
> > adjacent rows in the t11FcsPortTable.
> > 
> > David, since this is a MIB design change, may I suggest you 
> ask the WG 
> > for approval of this as a separate/individual question.
> > 
> > > - for
> > >  
> > >   t11FcsPortName  OBJECT-TYPE
> > >     SYNTAX       FcNameIdOrZero
> > >     MAX-ACCESS   not-accessible
> > >     STATUS       current
> > >     DESCRIPTION
> > >             "The Port_Name (WWN) of the port for which this row
> > >             contains information."
> > > 
> > >   I wonder if a zero value (zero length OCTET STRING) is really
> valid?
> > >   If not, then we may need to limit it with a SIZE paramter aka
> > >     SYNTAX       FcNameIdOrZero SIZE (8 | 16)
> > > 
> > >   But,  I do see that in sect "6.2.3.3.1 Port Name" of document
> > >   http://www.t11.org/ftp/t11/pub/fc/gs-5/06-192v2.pdf, it says:
> > > 
> > >       The null value for the Port Name attribute is
> > >       00 00 00 00 00 00 00 00h.
> > > 
> > >   So... is the SYNTAX of FcNameIdOrZero appropriate here? 
> > >   In any event, the name SIZE seems to be fixed at 8 
> octets for the
> > >   PortName, so at least one would then define the syntax as:
> > > 
> > >     SYNTAX       FcNameIdOrZero (SIZE (8))
> >  
> > A length of 16 is still a possibility -- section 6.2.3.3.1 
> refers to 
> > FC-FS, in which section 15 (table 66) includes one format 
> which has a 
> > length of 128 (bits).
> > 
> > So, I'll chaneg it to:
> >  
> >       SYNTAX       FcNameIdOrZero (SIZE(8 | 16))
> > 
> > > - For:
> > > 
> > >   t11FcsPortModuleType  OBJECT-TYPE
> > >     SYNTAX       Unsigned32 (0..255)
> > >     MAX-ACCESS   read-only
> > >     STATUS       current
> > >     DESCRIPTION
> > >             "The port module type of this port."
> > >     REFERENCE
> > >             "ANSI INCITS xxx-200x, Fibre Channel - 
> Generic Services
> 5,
> > >             FC-GS-5 T11/Project 1677-D/Rev 8, section 6.2.3.3.4."
> > > 
> > >   It seems better to create a TC that ENUMerates the valid values?
> > 
> > The choice between using either an enumerated value, or, a numeric
> value
> > to be looked up in another specification, is a trade-off of
> convenience
> > versus maintenance.  For something which changes frequently, it's
> better
> > that the MIB *not* contain a list which is frequently 
> out-of-date; for 
> > something which changes infrequently, it's better to have the 
> > convenience of enumeration.
> >  
> > Specifically, for those objects defined in this MIB as 
> enumerations, 
> > when a new value is defined in T11, the new value cannot be used in
> the
> > MIB until the MIB is updated.  When the MIB syntax is 
> Unsigned32, new 
> > values can be used in the MIB as soon as they are defined by T11.
> > 
> > So, we intentionally chose to specify some objects in this MIB as 
> > enumerations, and others as binary values, based on the 
> frequency at 
> > which new values can be expected to be defined and used -- 
> not just in 
> > the now completed GS-5, but also in GS-6 and its successors.
> > 
> > > - For:
> > > 
> > >   t11FcsPortSpeedCapab  OBJECT-TYPE
> > >     SYNTAX       OCTET STRING (SIZE (2))
> > > 
> > >   It seems that the references document and section say 
> that it is a
> > BITS
> > >   construct ??
> > > 
> > > - Same for t11FcsPortOperSpeed
> >  
> > While the Capability could be a BITS, OperSpeed would only ever have
> one
> > bit set, i.e., not a BITS.  However, both of these are further
> examples
> > of the enumerated versus numeric trade-off mentioned above. 
>  That is, 
> > port speed is another area where new enumerations can be 
> expected and 
> > will need to be used.
> > 
> > > - For:
> > > 
> > >   t11FcsPlatformName  OBJECT-TYPE
> > >     SYNTAX       OCTET STRING (SIZE (0..255))
> > > 
> > >   It seems to me that the SYNTAX better be:
> > > 
> > >     SYNTAX       OCTET STRING (SIZE (0 | 3..256))
> > > 
> > >   because http://www.t11.org/ftp/t11/pub/fc/gs-5/06-192v2.pdf
> > >   section 6.2.3.4.2 tells me:
> > > 
> > >     The Platform Name attribute may be registered using the
> > >     protocol described in 6.2.2.3. The null value for the
> > >     Platform Name attribute is a zero-length Platform Name.
> > > 
> > >   So maybe that is how we can get a length of zero. But I am
> > >   not even sure about that. It is also possible that the
> > >   first byte would be valued at zero. Is the format octet 
> > >   included in this case? Not clear from the PDF file for me.
> > > 
> > >   If I understand the PDF file correctly, then (it speaks about
> > >   reserved to be of length 254-m) then there are 2 octets (1 for
> > >   length, one for format) plus 254 for the actual name. So that
> > >   would be a max size of 256 in my view.
> >  
> > Many of the format specifications in the GS-5 spec. are like this:
> > 
> >               Logical Name length (m)     1
> >               Logical Name                m
> >               Reserved                  255-m
> > 
> > where the aggregate length (of the three sub-fields) is 256 bytes.
> > 
> > So, the way that I interpret the Platform Name field:
> > 
> >               Platform Name length (m)     1
> >               Platform Name                m
> >               Platform Name Format         1
> >               Reserved                   254-m
> > 
> > is similarly, to have an aggregate length is 256 bytes.  Therefore,
> the
> > correct MIB syntax is:
> > 
> >      SYNTAX       OCTET STRING (SIZE (0..254))
> > 
> > where the range is the value of m.
> > 
> > > - Several objects in the t11FcsPlatformTable
> > >   (like t11FcsPlatformVendorId, t11FcsPlatformProductId , etc)
> > >   suggest (based on the SYNTAX of SnmpAdminString) that the value
> > >   can be an internationalized human readable string.
> > >   But the table 121 in the PDF file, section 6.2.3.4.5 seems to
> > >   tell me that they are all ASCII. So what is it?
> > 
> > It's the format as specified in section 6.2.3.4.5, which is a subset
> of
> > SnmpAdminString, which I believe means that using SnmpAdminString as
> the
> > syntax is fine.
> > 
> > >   I know that IETF is not happy with using DisplayString, but if
> > >   that is what the underlying technology (outside IETF) uses, then
> > >   we should at least not suggest that it is different.
> > >   I could accept that we say "we want to be prepared for UTF-8 
> > >   strings, but for now it is ASCII as per DC-GS-5)". But it 
> > >   might be good to then explicitly state so in the DESCRIPTION
> > >   clauses of these objects.
> > > 
> > >   At the other hand, the objects are all read-only, and so even
> > >   if they only present ASCII data (in UTF-8 that is exactly the
> > >   same), then it would still be fine.
> > 
> > How about I leave it as SnmpAdminString, and point to GS-5 for the 
> > definition of which characters are valid:
> > 
> >             "The identifier of the vendor of this platform, in
> >             the format specified by FC-GS-5."
> > 
> > >   I also wonder if the length for t11FcsPlatformVendorId,
> > >   t11FcsPlatformProductId can actually be zero, because table
> > >   121 says that these are REQUIRED fields.
> > 
> > The table gives their minimum length when they are present, *but* a 
> > "Platform Attribute Block" doesn't necessarily contain them all.
> >  
> > > - For:
> > > 
> > >   t11FcsPlatformFC4Types  OBJECT-TYPE
> > >     SYNTAX       OCTET STRING (SIZE (0 | 32))
> > > 
> > >   should be 
> > >     SYNTAX       OCTET STRING (SIZE (0 | 20))
> > > 
> > >   that is what I read in table 121 of
> > >   http://www.t11.org/ftp/t11/pub/fc/gs-5/06-192v2.pdf
> > 
> > The text which follows the table says:
> > 
> >    Supported FC-4 Types: This is an 8 word (256 bit) bit mask that
> >    indicates what FC-4 types are supported on this platform (see 
> > 5.2.3.8).
> >    FCP-2 (FC-4 type 08h) is represented by bit 8 of word 0. 
> The Fabric
> >    Configuration Server shall not attempt validation of the 
> FC-4 Types
> >    attribute, and any value shall be accepted for this attribute.
> > 
> > I think the table has a typo.
> > 
> > > - Object t11FcsNodeName. Is it supposed to represent this:
> > > 
> > >   6.2.3.4.6 Platform Node Name
> > >      The format of the Platform Node Name attribute, as used by
> > >      the Fabric Configuration Server, shall be identical to the
> > >      Name_Identifier format defined in FC-FS. Zero or more
> > >      Platform Node Name attributes may be associated with a 
> > >      Platform object. Node Names are registered to associate
> > >      a Platform with the Nodes.
> > >      This attribute may be registered using the protocol described
> > >      in 6.2.2.3. The null value for the platform Node Name
> > >      attribute is 00 00 00 00 00 00 00 00h
> > > 
> > >   That last description of 8 hex zeroes for a null value seems
> > >   to conflict with the underlying
> > > 
> > >     SYNTAX       FcNameIdOrZero
> > > 
> > >   that you are using in the MIB.
> >  
> > Ok, I'll change it to:
> >  
> >       SYNTAX       FcNameIdOrZero (SIZE(8 | 16))
> > 
> > > - W.r.t.
> > >  
> > >   t11FcsNotifyControlTable OBJECT-TYPE
> > >     SYNTAX       SEQUENCE OF T11FcsNotifyControlEntry
> > >     MAX-ACCESS   not-accessible
> > >     STATUS       current
> > >     DESCRIPTION
> > >             "A table of control information for notifications
> > >             generated due to Fabric Configuration Server events.
> > > 
> > >             Values written to objects in this table should be
> > >             persistent/retained over agent reboots."
> > > 
> > >   I have the same questions/concerns about the "should be
> persistent"
> > >   as I had for the RSCN MIB module. 
> > >   So we can probably resolve this one in the same way (or leave it
> > >   if everyone thinks that I worry too much).
> >  
> > OK.
> > 
> > > - It might be good to rename the notifications (for example)
> > > 
> > >     t11FcsReqRejectNotify NOTIFICATION-TYPE
> > > 
> > >   from xxxxNotify to xxxxNotification.
> > 
> > I chose to use t11FcsReqRejectNotify because
> t11FcsReqRejectNotification
> > is 33 characters long, and I think using t11FcsReqRejectNotify is a 
> > clearer abbreviation than t11FcsReqRejNotification.
> > I guess I could go for:
> > 
> >      t11FcsRqRejectNotification NOTIFICATION-TYPE
> > 
> > if you prefer.
> > 
> > >   But I agree that this is really nitpicking. 
> > >   For consistency with (most) other MOB modules and notifications
> > >   I think my argument makes sense though.
> > > 
> > > - For the notifications (and the control there-of), it again seems
> > >   that the Transport Area may want us to say somehting about the
> > >   max number of nitifications to be expected per second/minute/xxx
> > >   or to provide a control varianle that a NMS can SET.
> >  
> > Their motivation is good, and is applicable to data-plane 
> events, but 
> > asking for a max number per unit time for every type of notification
> is
> > too simplistic.  E.g., it's unreasonable to ask how many 
> > t11FcsDiscoveryCompleteNotify notifications can be generated in a 
> > second/minute/xxx -- how big is the network, how many 
> virtual fabrics 
> > need to be discovered, how quickly can the operator ask for another 
> > discovery after the last one completes ??
> > 
> > If a max rate is specified by an NMS, such that 
> notifications can be 
> > suppressed due to their volume, then there needs to be some 
> mechanism 
> > for the NMS to know that suppression(s) have happened/are 
> happening, 
> > which means more notification-types and objects need to be defined.
> > That is, it increases the complexity, which is not warranted unless 
> > there can really be a "flood" of notifications.
> > 
> > For notifications, like all the ones in this MIB, which are 
> generated 
> > due to control plane events (and providing that none of 
> them are able
> to
> > start a chain-reaction), the extra complexity is not warranted.
> > 
> > _______________________________________________
> > imss mailing list
> > imss@ietf.org
> > https://www1.ietf.org/mailman/listinfo/imss
> > 
> 
> _______________________________________________
> imss mailing list
> imss@ietf.org
> https://www1.ietf.org/mailman/listinfo/imss
> 
> _______________________________________________
> imss mailing list
> imss@ietf.org
> https://www1.ietf.org/mailman/listinfo/imss
> 

_______________________________________________
imss mailing list
imss@ietf.org
https://www1.ietf.org/mailman/listinfo/imss