FIN Mail Archive: FIN> FW: review of finisher mib

FIN> FW: review of finisher mib

From: Bergman, Ron (Ron.Bergman@Hitachi-hkis.com)
Date: Mon Jun 11 2001 - 18:58:58 EDT

  • Next message: Bergman, Ron: "FIN> Issue #13"

    If anyone is still interested in the Finisher MIB, here are some comments
    received from the IESG. I will put together a response and then update the
    document. Any volunteers to review my comments and updated draft before
    they are returned to the IETF?

            Ron

    -----Original Message-----
    From: Bergman, Ron
    Sent: Monday, June 11, 2001 3:56 PM
    To: 'David Harrington'; Wijnen, Bert; Bergman, Ron; harryl@us.ibm.com
    Subject: RE: review of finisher mib

    David,

    Thank you for your comments. The working group will review these and
    return a response ASAP.

            Ron Bergman
            Hitachi Koki Imaging Solutions

    -----Original Message-----
    From: David Harrington [mailto:dharrington@mediaone.net]
    Sent: Monday, June 11, 2001 2:23 PM
    To: Wijnen, Bert; rbergma@hitachi-hkis.com; harryl@us.ibm.com
    Subject: review of finisher mib

    Hi,

    I have reviewed the Finisher MIB, based on
    draft-ietf-printmib-finisher-10.txt, at Bert's request and had these
    comments.

    There ar eplaces where SHALL is not used according to the definitions of
    RFC2119. I haven't checkes for all the may, should, etc. usages.

    This sentence has too many 'to's
    "Defined by DPA as the axis to which some finishing processes are
    applied to or referenced from by the Head Mechanism." You shoul dbe able
    to just change "to which" to "which"

    Comb Binding - I think you're missing an "of"

    "The agent is free to materialize an attribute..." - the verb
    materialize is not how most people would phrase this. Most would say
    create.

    Section 5.2 is non-standard SNMP. "SNMP requires that if an object
    cannot be implemented because its values cannot be accessed, then a
    compliant agent SHALL return an SNMP error in SNMPv1 or an exception
    value in SNMPv2." I believe this is not quite accurate. It woul dbe more
    accurate to say that "SNMP requires that if an abject cannot be
    accessed, then..." It is possible that the specfic objects are not
    accessible in the administratively assigned view for a user for security
    reasons. So, there are times when one of the "not accessible" error
    codes/exceptions would be appropriate, despite your attempt to design
    the mib to not have those circumstances.

    I found it difficult to review this mib, and I expect implemnters will
    find it difficult as well, because the textual conventions are defined
    else where in the doccument. In some cases I think there was only one
    use of the TC.

    In the security Considerations, it says "...that vendors are free to
    implement these objects as READ-ONLY." I suggest changing "these" to
    "certain" to reduce ambiguity.

    The Copyright statement appears to have suffered a cut&paste error.

    Now the MIB:
    The LAST-UPDATED field apperas to be very out of date.
    MODULE-IDENTITY has no REVISION clauses.
    The RFC editor apparently missed your note about the OID assignment. I
    believe the correct approach if that you should contact the RFC editor,
    get the assignment, and do the update yourself.

    mib-2 is imported but not used.
    A number of TCs are defined but not used: FinEdgeTC, FinStitchingTypeTC,
    StitchingDirTypeTC, StitchingAngleTypeTC, FinFoldingTypeTC,
    FinBindingTypeTC, FinPunchHoleTypeTC, FinPunchPatternTypeTC,
    FinSlittingTypeTC, FinWrappingTypeTC, FinStackOutputTypeTC.

    There is a typo where finDevice is defined. lines 1640-1647 are
    duplicated.

    finDeviceEntry is defined as "... an entry for ... each ... process"
    Whay not call it finProcessTable rather than finDeviceTable?

    finDeviceIndex, and other indexes, are meant to be persistent across
    reboots ... usually. Is there any object that an NMS can query to
    determine that the data was not persist on the last reboot? That would
    be much easier than having to compare all the data in the tables over
    and over looking for a possible discontinuity. Can the agent help with
    some sort of discontinuity marker, such as a simple object that provides
    a persistent count of the objects in a table based on the previous
    reboot.

    You have tables that can be created by manager applications. You do not
    use any of the normal best current practices for this, such as RowStatus
    or TestAndIncrement from rfc2579.

    In the development of SNMPv2, we discovered that using integer indexes
    made it difficult for users to comprehend the information inherent in
    those indexes.

    A number of objects use the <value=known><-2=unknown><-1=other>.
    First, known/unknown is a binary state indicator; under what
    circumstances does "other" make sense? "I don't know if I don't know"?
    "I know but I'm not telling"?

    Some objects are read-only if they know the answer; read-write if they
    don't. How does an NMS know which it is? Try to change it?

    If a value is non-negative, that implies the agent can sense the value.
    What if a manager reads <unknown> and then sets a value. What does a
    second application conclude?

    If an agent cannot sense the value, the value is unknown. Must the agent
    implement this as read-write?

    xxxCurrentCapacity et al - "(-1) means other and specifically indicates
    that the device places no restrictions on this parameter" What is an NMS
    supposed to do with this? The parameter has a value of (-1); isn't that
    a restriction on that parameter? Can I change this parameter to a value,
    with no restrictions on the value I choose? How does an NMS know that is
    used to be a (-1) but now it's been chnaged to an unrestricted parameter
    value, as compared to having simply been set to a value in the first
    place?

    MediaPaths and AssociatedOutputs - Here is a place where a TC is called
    for and not used.

    There are a number of places where an OCTET STRING is used, with the
    "localization specified by XXX" - UTF8 is the preferred mechanism for
    localization of strings in mibs, usually using an SnmpAdminString.. Is
    there a reason why these objects don't use these?

    xxxCurrentLevel - (-3) means there is some supply or remaining space.
    What is an NMS supposed to do with this? It assume the reason why this
    object exists is becuase an application shouldn't send a job that it
    knows would consume 10 units if there are less than 10 units available.
    There is a way to specify <unknown>, so why do we need another value
    that says "there's some, but I don't know how much"? Why not just use
    <unknown>? How is (-3) useful?

    ColorName, MediaType - why not use an enumeration rather than using an
    octet string with a description that enumerates the possible values?

    InstanceIndex describes the value if only one is present, but it doesn't
    describe subsequent values for this object. Must the numbers be assigned
    sequentially? Is it expected that the InstanceIndexes be contiguous? or
    can they be assigned randomly? Attributes can be created dynamically;
    Can they also be deleted dynamically? If so, how will that impact the
    contiguity of the InstanceIndexes?

    The GROUP description for finSupplyMediaInputGroup could be more
    concise. "This group is mandatory if a finisher device ..."

    Hope this helps,
    dbh

    ---
    David Harrington                   Nework Management Standards Architect
    

    dbh@enterasys.com Office of the CTO Enterasys Networks



    This archive was generated by hypermail 2b29 : Mon Jun 11 2001 - 18:53:47 EDT