Subject: Re: [MIB-DOCTORS] MIB doctor review for draft-ietf-bfd-tc-mib-07.txt

From: "Nobo Akiya (nobo)" <[email-masked]>
Date: Fri, 6 Jun 2014 13:01:30 +0000

Hi Benoit,

Please see in-line.

> >> 3.Same for:
> >>      BfdIntervalTC ::= TEXTUAL-CONVENTION
> >>      DISPLAY-HINT  "d"
> >>      STATUS        current
> >>      DESCRIPTION
> >>          "The BFD interval in microseconds."
> >>      SYNTAX Unsigned32 (0..4294967295)
> >>
> >>
> >>    If you see it used in, for example
> >>
> >>      bfdSessDesiredMinTxInterval OBJECT-TYPE
> >>          SYNTAX     BfdIntervalTC
> >>          MAX-ACCESS read-create
> >>          STATUS     current
> >>          DESCRIPTION
> >>              "This object specifies the minimum interval, in
> >>               microseconds, that the local system would like to use
> >>               when transmitting BFD Control packets. The value of
> >>               zero(0) is reserved in this case, and should not be
> >>               used."
> >>          REFERENCE
> >>              "Section 4.1 from Katz, D. and D. Ward, Bidirectional
> >>               Forwarding Detection (BFD), RFC 5880, June 2012."
> >>          ::= { bfdSessEntry 25 }
> >>
> >>     Then what value is added by using a TC. In fact you can even quetion if
> it
> >>     is not conflicting, because according to the TC description clause I
> would
> >>     expect zero to be a valid interval value, where as here it describes
> >>     that zero is a special value and should not be used. So it is only special
> >>     Since it should NOT BE used, or does zero mean something special?
> >>     Assuming zero SHOULD NOT be used. I personally would just do:
> >>
> >>      bfdSessDesiredMinTxInterval OBJECT-TYPE
> >>          SYNTAX Unsigned32 (1..4294967295)
> >>          MAX-ACCESS read-create
> >>          STATUS     current
> >>          UNITS      microseconds
> >>          DESCRIPTION
> >>              "This object specifies the minimum interval that the local
> >>               system would like to use when transmitting BFD Control packets.
> >>          REFERENCE
> >>              "Section 4.1 from Katz, D. and D. Ward, Bidirectional
> >>               Forwarding Detection (BFD), RFC 5880, June 2012."
> >>          ::= { bfdSessEntry 25 }
> >>
> >>    In case zero has special meaning I would do:
> >>      bfdSessDesiredMinTxInterval OBJECT-TYPE
> >>          SYNTAX Unsigned32 (0 | 1..4294967295)
> >>          MAX-ACCESS read-create
> >>          STATUS     current
> >>          UNITS      microseconds
> >>          DESCRIPTION
> >>              "This object specifies the minimum interval that the local
> >>               system would like to use when transmitting BFD Control packets.
> >>               The value zero has been reserved for a special maning:
> >>               <describe what zero means>
> >>          REFERENCE
> >>              "Section 4.1 from Katz, D. and D. Ward, Bidirectional
> >>               Forwarding Detection (BFD), RFC 5880, June 2012."
> >>          ::= { bfdSessEntry 25 }
> > The primary benefit of having it in the object is that we get to
> > specify units.  (I never understood why that was missing from TC.)
> > Beyond that, it's just a refactoring of constraints in case they're further
> refined.
> Fine with the units explanation. However, you don't answer the discrepancy
> of the value 0.
> I'll file this in my AD review.
> 
> Regards, Benoit

Regarding BfdIntervalTC, I'd like to make one additional response. This is a TC that is used by several objects in the base BFD MIB.

Zero(0) is valid in following objects:

        bfdSessReqMinRxInterval         BfdIntervalTC,
        bfdSessReqMinEchoRxInterval     BfdIntervalTC,
        bfdSessNegotiatedInterval       BfdIntervalTC,
        bfdSessNegotiatedEchoInterval   BfdIntervalTC,

Zero(0) is not valid in following object:

        bfdSessDesiredMinTxInterval     BfdIntervalTC,

All above objects describe "BFD interval". And rather than creating a separate TC or specifying different syntax just in bfdSessDesiredMinTxInterval, we decided to place more weight on the consistency/simplicity (and describe the zero(0) in the description of bfdSessDesiredMinTxInterval). Thus the way it is, and I believe this is reasonable.

Thanks!

-Nobo