Re: [storm] MIB Dr. review of draft-ietf-storm-ifcpmib-05

"Joan Cucchiara" <> Tue, 19 October 2010 19:31 UTC

Return-Path: <>
Received: from localhost (localhost []) by (Postfix) with ESMTP id 4E4EA3A6905; Tue, 19 Oct 2010 12:31:58 -0700 (PDT)
X-Virus-Scanned: amavisd-new at
X-Spam-Flag: NO
X-Spam-Score: -1.235
X-Spam-Status: No, score=-1.235 tagged_above=-999 required=5 tests=[AWL=1.363, BAYES_00=-2.599, STOX_REPLY_TYPE=0.001]
Received: from ([]) by localhost ( []) (amavisd-new, port 10024) with ESMTP id VPwkzcuiJP99; Tue, 19 Oct 2010 12:31:56 -0700 (PDT)
Received: from ( []) by (Postfix) with ESMTP id D28783A6929; Tue, 19 Oct 2010 12:31:55 -0700 (PDT)
DomainKey-Signature: a=rsa-sha1; q=dns; c=nofws; s=dk20050327;; b=RwtVkNDKv1957+PX20r1ypP3eTTzpahVtt6FOYExjVYjAGiQj2vytyRtTf8xw798; h=Received:Message-ID:From:To:Cc:References:Subject:Date:MIME-Version:Content-Type:Content-Transfer-Encoding:X-Priority:X-MSMail-Priority:X-Mailer:X-MimeOLE:X-ELNK-Trace:X-Originating-IP;
Received: from [] (helo=JoanPC) by with esmtpa (Exim 4.67) (envelope-from <>) id 1P8Hw6-0004Sb-42; Tue, 19 Oct 2010 15:33:26 -0400
Message-ID: <003c01cb6fc4$3644e8f0$6501a8c0@JoanPC>
From: "Joan Cucchiara" <>
To: "David Harrington" <>, <>, <>
References: <002401cb6e6c$6def3e30$6501a8c0@JoanPC> <CB6D85622CB6470FB3BC2D1C9BCA1BE5@23FX1C1>
Date: Tue, 19 Oct 2010 15:31:21 -0400
MIME-Version: 1.0
Content-Type: text/plain; format=flowed; charset="iso-8859-1"; reply-type=original
Content-Transfer-Encoding: 7bit
X-Priority: 3
X-MSMail-Priority: Normal
X-Mailer: Microsoft Outlook Express 6.00.2900.2180
X-MimeOLE: Produced By Microsoft MimeOLE V6.00.2900.2180
X-ELNK-Trace: 4d68bbe9cb71969ea344cf2d1a8e60840a9da525759e26549348dd5b491b937b5746220f8a2b40b0b5548f7b21afc86f350badd9bab72f9c350badd9bab72f9c
Cc: "'Romascanu, Dan \(Dan\)'" <>,
Subject: Re: [storm] MIB Dr. review of draft-ietf-storm-ifcpmib-05
X-Mailman-Version: 2.1.9
Precedence: list
List-Id: Storage Maintenance WG <>
List-Unsubscribe: <>, <>
List-Archive: <>
List-Post: <>
List-Help: <>
List-Subscribe: <>, <>
X-List-Received-Date: Tue, 19 Oct 2010 19:31:58 -0000

----- Original Message ----- 
From: "David Harrington" <>
To: "'Joan Cucchiara'" <>om>; <>rg>; 
Cc: "'Romascanu, Dan (Dan)'" <>om>; <>
Sent: Tuesday, October 19, 2010 11:07 AM
Subject: RE: MIB Dr. review of draft-ietf-storm-ifcpmib-05

> Hi Joan,
> I think you might have misread the intention of the changes here.
> In IfcpAddressMode TEXTUAL-CONVENTION, we are only deprecating one
> enumeration value, not the whole TEXTUAL-CONVENTION. We are only
> deprecating the addressTranslation(2) value; the addressTransparent(1)
> value is still current, and the IfcpAddressMode TEXTUAL-CONVENTION is
> still current.
> Comments inline.
>> ---------
>> GENERAL Comment:  When an object, or Conformance Group
>> is deprecated, the DESCRIPTION clause needs to be updated
>> to state this and the reason for the deprecation.
>> Almost all the DESCRIPTION clauses do mention the deprecation but
>> this is at the very end of the DESCRIPTION clause,  Please
>> start the DESCRIPTION clause with this information, such as:
>> "This object is deprecated.  It has been deprecated because ...
>> Then include the original description.
>> Specific examples are included in the comments below.
>> 1)  NIT:  Please put a UNITS clause on the objects
>> that use these TCs:
>> IfcpIpTOVorZero  UNITS: seconds
>> IfcpLTIorZero    UNITS: seconds
> OK.
>> 2)  * IfcpAddressMode TEXTUAL-CONVENTION
>> Why was the STATUS not changed to "deprecated"?
>> Please do so.
>> Also, as discussed above, please change the DESCRIPTION to
>> state that the
>> TC is deprecated and why as the first statement(s) of the
>> DESCRIPTION clause.
> The TC is not deprecated; its syntax is refined in a manner permitted
> by RFC2578.
> No change needed.


I struggled with this, but suggested what I did because of 4 reasons:

a) When a TC has enums and one of them is "deprecated", then my opinion is 
the TC should be
changed to have the STATUS clause of "deprecated"  because this change seems 
like a semantic change.
 (Thus, my suggestion of changing the STATUS to "deprecated".)
rfc2578 and rfc2579 do discuss updating DESCRIPTION clauses
but updating cannot change the semantics object/TC.

b) tools - marking the TC and associated object as deprecated will result in
tools (hopefully) generating code that is #ifdef'd appropriately, such that
a developer can continue to support translation mode or not by changing a 
#define or #ifdef.
(Still work involved, but code-wise, tools should generate something 
reasonable (hopefully).)

c) (related to tools) propagation of this TC - currently this TC is only 
used in this one MIB and
only by one object in this MIB.  So in my opinion, changing the STATUS might 
have an advantage
over adding to the DESCRIPTION clause.  Granted, this may be a moot point, 
depending on the
future of this TC, but the unknown is if Enterprize MIBs will IMPORT the TC.

d) (related to tools) migrating to STATUS of "obsolete" - if tools generate 
the code based on the
STATUS, then the migration from deprecated to obsolete should be minimal 
Changes going from "deprecated" to "obsolete" should also be less impactful 
Granted, this may also be a moot point.

So, that is where I'm coming from.   I did have a couple of additional 

*) Do you have an opinion as to whether or not the
address translation mode will migrate to "obsolete" in the future?

*) What is the error code the ifcpLclGtwyInstAddrTransMode object will 
return if it is
set to addressTranslation(2) when it is not supported?  (inconsistentValue?)

As you pointed out, most of the points raised  are related to changing the
TC's status to deprecated, although,  I did comment below on (the name 
change) #7,
so please review that.

>> 3) ifcpLclGtwyInstAddrTransMode     IfcpAddressMode,
>> The ifcpLclGtwyInstAddrTransMode object is the only
>> object which uses the (deprecated) IfcpAddressMode TC.
>> This object should also be deprecated.
> We are only deprecating one enumeration value for this object, not the
> whole object.
> No change needed.
>> A new read-only object could be added if this is thought to be
>> beneficial..
> not needed.
>> 4)  ifcpLclGtwyInstStorageType should be deprecated also.
>>    ifcpLclGtwyInstStorageType OBJECT-TYPE
>>        SYNTAX            StorageType
>>        MAX-ACCESS        read-only
>>        STATUS            current
>>    "The storage type for this row.  Parameter values defined
>>     for a gateway are usually non-volatile, but may be volatile
>>     or permanent in some configurations.  If permanent, then
>>     the following parameters must have read-write access:
>>     ifcpLclGtwyInstAddrTransMode, ifcpLclGtwyInstDefaultIpTOV,
>>     and ifcpLclGtwyInstDefaultLTInterval."
>>        DEFVAL            { nonVolatile }
>>        ::= {ifcpLclGtwyInstEntry      11}
>> The DESCRIPTION clause specifies ifcpLclGtwyInstAddrTransMode
>> as one of
>> the values to provide read-write access for when the value of
>> this object
>> is permanent, as such this object should be deprecated.
> ifcpLclGtwyInstAddrTransMode is not deprecated, so the storagetype
> doesn't need deprecation.
>> A new StorageType object which excludes the
>> ifcpLclGtwyInstAddrTransMode
>> should also probably be added.
> not needed.
>> A related question on this object, why was
>> ifcpLclGtwyInstFcBrdcstSupport
>> not included in this list of read-write objects?
> This object has a DEFVAL, so an NMS does not need to specify a value
> to instantiate a row.
> no change needed.
>> 5) ifcpLclGatewayGroup may need to be deprecated and replaced
>> by another
>> group after 1-4  is done.
> the list of objects is not changed,
> no change to the group is needed
>> 6)  According to rfc2580, Section 7.1
>> If changing a STATUS to "deprecated"
>> the DESCRIPTION clause should be updated
>> to explain.
>> *ifcpLclGatewaySessionGroup STATUS was
>> changed to "deprecated" but the DESCRIPTION
>> has not been changed.   Again, please state
>> that the group has been deprecated and why as the
>> first sentence of the DESCRIPTION clause.
> OK.
>> 7). Naming of the new Compliance Group
>> ifcpLclGatewaySessionGroupNoTrans
>> (original name:  ifcpLlGatewaySessionGroup)
>> The "NoTrans" suffix is not specific enough  because this
>> could stand for No Translation Mode  or No Transparent Mode,
>> in other words, please replace the "NoTrans" with
>> something definitive such as:
>> NoTranslationMode or NoTranslation
> I recommend modifying the way the names are constructed, to keep Group
> and Compliance as the suffixes.
> if "Support is only required for address Transparent mode", I
> recommend using Transparent rather than NoTranslation in the group and
> Compliance names.
> change ifcpLclGatewaySessionGroupNoTrans to
> ifcpLclGatewaySessionTransparentGroup or
> ifcpLclGatewayTransparentSessionGroup
> change ifcpGatewayComplianceNoTrans to
> ifcpGatewayTransparentCompliance

Sorry, I think I was not very clear.  I did actually like the suffix of 
"NoTrans", but wanted to see
this expanded because the beginnings of both:

NoTranslation  and

Both words start with "NoTrans", so to clarify, was suggesting:

ifcpLclGatewaySessionGroupNoTranslation  or 

as a name.


>> 8) Security Considerations
>> This section needs to be updated to reflect the deprecation of
>> the Translation Mode.  For example, the ifcpLclGtwyInstAddrTransMode
>> is mentioned and this is now deprecated.
> ifcpLclGtwyInstAddrTransMode is not deprecated.
> I think the security consideration is still valid as written.
> If a future modification adds an enumeration value, then changing the
> value could disrupt traffic.
> The enumeration value is deprecated, and an implementation can still
> choose to support the value.
> Changing the value from (1) to (2) could still disrupt storage
> traffic.
> no change needed.
>> --End of comments--