Hi Bert,

Please see my reply inline. 

I have cc the email to the softwire WG so that the WG could see the MIB 
Doctor's comments.

>> In the MIB module itself:
>>
>>   mapRuleID OBJECT-TYPE
>>           SYNTAX Integer32 (1..2147483647)
>>           MAX-ACCESS not-accessible
>>           STATUS current
>>           DESCRIPTION
>>              "An identifier used to distinguish the multiple
>>mapping
>>               rule which is unique with each CE in the same BR."
>>           ::= { mapRuleEntry 1 }
>>
>>   Since this is an index object, it be better defined as unsigned 32.
>>   See RFC4181, section 4.6.1.1. Specifically page 15, which states
>>      - Unsigned32 with a range that excludes zero is
>>RECOMMENDED for
>>        most index objects.  It is acceptable to include zero in the
>>        range when it is semantically significant or when it is used as
>>        the index value for a unique row with special properties.
>>Such
>>        usage SHOULD be clearly documented in the DESCRIPTION
>>clause.
>>
>> [fuyu]:  I will change it into unsigned 32.
>>
>Pls also think about the question if the value can ever be zero for a good
>reason.
>Normally INDEX object do not have a value of zero.

[fuyu] Yes, since it is an index object and the value range is not include 
zero. I think unsigned 32 is better.

>>
>>
>>    mapRuleIPv6PrefixType OBJECT-TYPE
>>           SYNTAX     InetAddressType
>>           MAX-ACCESS read-only
>>           STATUS     current
>>           DESCRIPTION
>>               "This object MUST be set to the value of ipv6(2) to
>>                present the IPv6 address.It describes the
>>                address type of the mapRuleIPv6Prefix and
>>                mapRuleBRIPv6Address."
>>
>>    Such MUST language is not recommended. The way to specify
>>such
>> mandatory
>>    value you best use the MODULE COMPLIANCE statement. Such is
>> RECOMMENDED
>>    as per RFC4181, page 26
>>
>> [fuyu]: I will delete the MUST in the updated version.
>>
>But if you change to InetAddressIPv6 and InetAddressIPv4 (as you state
>below), then there is no need for an InetAddressType.


[fuyu] :Yes, I will delete the object of mapRuleIPv6PrefixType and 
mapRuleIPv4PrefixType too. Thank you for your remind.

>>
>>
>>    mapRuleIPv6Prefix OBJECT-TYPE
>>           SYNTAX     InetAddress(SIZE (0..16))
>>           MAX-ACCESS read-only
>>           STATUS     current
>>           DESCRIPTION
>>              "The IPv6 prefix defined in mapping rule which will be
>>               assigned to CE. The address type is given by
>>               mapRuleIPv6PrefixType."
>>           ::= { mapRuleEntry 3 }
>>
>>    mmmmm, when the InetAddressType is ipv6(2), then my
>>understanding
>> of RFC4001
>>    is that the SIZE for the InetAddress MUST be 16. Maybe Juergen
>> can chime in here?
>>
>>    And if it is ALWAYS an IPv6 address, then maybe it is even better
>> to use
>>    InetAddressIPv6 as the OBJECT-TYPE.
>>
>>    I see the same set of 2 objects for IPv4.
>>
>>    In my view, the idea of InetAddressType and InetAddress
>>were/are
>> to allow yopu to specify
>>    one or a single pair that can hold each of the 2 (or even more if
>> needed) AddressTypes.
>>
>>    So why are there separate objects for IPv4 and IPv6 ???
>>
>> [fuyu]:OK, I will change it into
>>
>>      mapRuleIPv6Prefix OBJECT-TYPE
>>            SYNTAX     InetAddressIPv6
>>            MAX-ACCESS read-only
>>            STATUS     current
>>            DESCRIPTION
>>               "The IPv6 prefix defined in mapping rule which will be
>>                assigned to CE. The address type is given by
>>                mapRuleIPv6PrefixType."
>>            ::= { mapRuleEntry 3 }
>>
>>      mapRuleIPv4Prefix OBJECT-TYPE
>>           SYNTAX     InetAddressIPv4
>>           MAX-ACCESS read-only
>>           STATUS     current
>>           DESCRIPTION
>>              " The IPv4 prefix defined in mapping rule which will be
>>                assigned to CE. The address type is given by
>>                mapRuleIPv4PrefixType."
>>           ::= { mapRuleEntry 6 }
>>
>> Do you think it OK?
>>
>Yes. And you then do not need the InetAddressType object.

[fuyu] : Yes, I will delete the objects of mapRuleIPv6PrefixType and 
mapRuleIPv4PrefixType too. Thank you for your remind.

>>
>>
>>    mapRulePSID  OBJECT-TYPE
>>           SYNTAX     Integer32
>>           MAX-ACCESS read-only
>>           STATUS     current
>>           DESCRIPTION
>>              "The PSID value algorithmically identifies a set of
>>               ports assigned to a CE."
>>           REFERENCE
>>                "PSID: section 3 of RFC 7597."
>>           ::= { mapRuleEntry 9 }
>>
>>     Mmmm... section 3 of RFC7597 only defines the term. The
>> algorithm is in section 5.1
>>     Maybe that is a better place to point to.
>>     Reading that section 5.1 in RFC7597, I wonder if "Integer32" is
>> the best representation.
>>     In section 5.1, I see a PSID that is 6 bits (figure 2 on page
>> 10). But there is also
>>     text about a PSID of 0x00 and 0xFF, which does not fit in 6 bits.
>>     I am not an expert (basically have no knowledge about) on
>>RFC7597.
>> But sofar I cannot
>>     determine what the value range might be and how Integer32 is a
>> good representation for
>>     the PSID. Please explain (not just to me, but adding text to the
>> internet drafts
>>     and the DESCRIPTION clause of this object)
>>
>> [fuyu]:Different PSID values guarantee non-overlapping port sets.
>>      The length of PSID is k bits, and the default value of PSID offset is 6
>>bits.
>>      So the bit length of PSID is variable. Thank you for your question.
>>      I have reconsidered the SYNTAS of the PSID. It can never be a
>>negative value.
>>      I think Unsigned32 will be better.
>>
>So do you just map the 4 octets of the PSID into this object?
>Is it not better to then use OCTET-STRING with a SIZE(4) ??
>Maybe with a DISPLY-HINT added as well
>
>Do you normally display the value as an (unsigned) integer?
>Or do you normally display it as 0Xxxxxxxxx ??
>Or maybe as bits?

[fuyu] We always describe a Basic mapping rule as below:

  A MAP node (CE or BR) can, via the BMR or equivalent FMR,
   determine the IPv4 address and port set as shown below:

   EA bits offset:       40
   IPv4 suffix bits (p)  Length of IPv4 address (32) -
                         IPv4 prefix length (24) = 8
   IPv4 address:         192.0.2.18 (0xc0000212)
   PSID start:           40 + p = 40 + 8 = 48
   PSID length:          o - p = (56 - 40) - 8 = 8
   PSID:                 0x34 (1232)

So I think display the values as (unsigned) integer or display it as 0Xxxxxxxxx 
both will be OK.
Do you have the surggstions?

>>
>>
>>     mapRulePSIDLen  OBJECT-TYPE
>>           SYNTAX     Integer32
>>
>>     My understanding sofar is that this object can never take a
>> negative value,
>>     so Unsigned32 would be better I think.
>>
>> [fuyu]: I will change it into Unsigned32 in the updated version.
>>
>Does it also make sense to add a range? (what are the possible values?) ??

[fuyu]  The value range of mapRulePSIDLen is greater than or equal to 0 and no 
more than 16, so do you think define as below
     
      mapRulePSIDLen  OBJECT-TYPE
           SYNTAX     Unsigned32(0..16)
    
  Will it make sense?


>>  - Section 7. Security considerations:
>>
>>     These are the objects and their sensitivity/vulnerability:
>>
>>       mapRuleIPv6PrefixType
>>
>>       mapRuleIPv6Prefix
>>
>>       ... etc (quite a list of objects).
>>
>>     But nowhere do I see text about "their
>>sensitivity/vulnerability". ??
>>     Still to be added?
>>
>> [fuyu]: Some of the readable objects in this MIB module may be
>>considered sensitive or
>>    vulnerable in some network environments. These objects are
>>readable,
>>    so maybe they are considered sensitive or vulnerable in some use
>>case.
>>    We have a description why they are sensitive or vulnerable above the
>>list of objects.
>>
>Mmmm... can you point me to that text? I do not see that you describe the
>vulnerability at any place. You do describe what the objects are for, but
>that does not clearly explain what the security risks are if some
>unauthorize person would see them.
>
>If you describe that at some other place in the document, then at least I
>would suggest to add a pointer to that text in the Security COnsiderations
>Secion.

[fuyu]: Sorry. I should point it more clearly. It is in the paragraph 2 of the 
section 7.
     From the first sentence that "Some of the readable objects in this MIB 
module may be
   considered sensitive or vulnerable..."
>
>Bert

Thanks a lot

Yu


_______________________________________________
Softwires mailing list
[email protected]
https://www.ietf.org/mailman/listinfo/softwires

Reply via email to