Hi Tsuno,
   Thanks for waiting. I have done one pass of the draft.
The comments are attached.
Please note that we probably need to do some more design
considerations on the MIB - there are some issues that
need to be addressed before we can arrive at a reasonably
stable version of the MIB itself.

Glenn

On 2017/06/12 21:47, Glenn Mansfield Keeni wrote:
Hi Tsuno,
    Got this. I will be working on this. It is massive-
40 pages. I hope to get back to you on this by the end
of next week.

Cheers,

Glenn
On 2017/06/07 1:22, Hiroshi Tsunoda wrote:
Hi Glenn,

I posted a new revision (-04) of MVPN-MIB document.
In this revision, "Summary of MIB Module" has been rewritten.
I hope this change improves the readability.

URL: https://www.ietf.org/internet-drafts/draft-ietf-bess-mvpn-mib-04.txt
Htmlized: https://tools.ietf.org/html/draft-ietf-bess-mvpn-mib-04
Htmlized: https://datatracker.ietf.org/doc/html/draft-ietf-bess-mvpn-mib-04 Diff: https://www.ietf.org/rfcdiff?url2=draft-ietf-bess-mvpn-mib-04

Please see notes below for other changes.

2017-03-01 16:00 GMT+01:00 Hiroshi Tsunoda <[email protected]>:
1.  Abstract:
1.2 "In particular, it describes managed objects to configure and/or
     monitor Multicast in MPLS/BGP IP VPNs (MVPN) on a router."
    Is this for any router or, a "Provider Edge" router ?
    Please fix accordingly.

This point will be fixed in the next revision.

Fixed. "Provide Edge" router is correct.

2.  Introduction
    Are the objects "generic" to PIM-MVPN and BGP-MVPN or "common"
    to  PIM-MVPN and BGP-MVPN ? Please change accordingly.

This point will be fixed in the next revision.

Fixed. "common" is correct.

2.5 The terminology section is a bit terse. Explaining the terms
    that are used, with reference to the protocol documents will
    improve readability.
    e.g.
     - MVPN, PE, PMSI/tunnels,
     - C-multicast routing exchange protocol (PIM or BGP),
       C-multicast states
     - I-PMSI, S-PMSI, provider tunnels

Partially fixed. I will give more detailed explanation in the next revision.

I have added some more explanation in this revision.

3.  MVPN MIB.
    This gives the overview of the MVPN MIB.
    The MIB module aims to provide "configuring and/or monitoring"
3.1 In
     "This MIB enables configuring and/or monitoring of MVPNs on PE
     devices: the whole multicast VPN machinery....."
    "the whole multicast VPN machinery" is very difficult to define.
    Please use precisely defined terms.
3.2 In "To represent them,...."
    "them" seems ambiguous, please clarify.
3.3 The diagram needs some explanation.
    What do the boxes represent? Tables ? The labels are meant to be
    table names ? The table names do not match the labels.
    What do the arrows signify? Please explain.
3.4 The short explanation of the tables could be augmented with some
    information on what they represent and an idea of how they will
    be used. ( RFC 4382 provides a good example).

I have rewritten "Sec.3.1 Summary of MIB Module".
Eight tables can be categorized into two groups: tables for configuration and
tables for monitoring.
In this revision, the diagram representing the relationship among tables is
divided to two separated diagrams based on the roles of tables.

MIB definitions:
7. Wherever possible, please provide references for objects used in the
    MIB. The references will point to specific sections/sub-sections of
    RFCs defining the protocol for which the MIB is being designed.

This will be addressed in the next revision.

I have added some references but more are required.
I will keep working on this.

8. MOs.
8.2 mvpnMvrfNumber OBJECT-TYPE
       SYNTAX         Unsigned32
       DESCRIPTION
           "The total number of MVRFs that are present on this device,
            whether for IPv4, IPv6, or mLDP C-Multicast."
    o Please make the description precise. E.g. if it is the sum of
      IPv4 MVRFs, IPv6 MVRFs and mLDP C-Multicast MVRFs state it
      explicitly.
    o The expression "present on this device" is used.
      Does "present" imply "configured" MVRFs or "active" MVRFs.
      If it is number of active MVRFs then one would expect that
      the number will vary (increase or decrease). If that is the
      case:
      replace
       SYNTAX        Unsigned32
      by
       SYNTAX        Gauge32

I will try to update description in the next revision.

8.5 mvpnGenOperStatusChange OBJECT-TYPE
        SYNTAX      INTEGER { createdMvrf(1),
                              deletedMvrf(2),
                              modifiedMvrfIpmsiConfig(3),
                             modifiedMvrfSpmsiConfig(4)
                            }
       DESCRIPTION
           "This object describes the last operational change that
    o The name does not look right. From the SYNTAX and the DESCRIPTION
      it appears that this is about config or MVRF change rather than
      "OperStatus" change. Please check and fix.
o Please confirm that the values in the row itself will not be changed
      after creation. ( you do not have a 'modifiedMvrfConfig')

The name has been changed into mvpnGenMvrfStatusChange.
The name of the related object (mvpnGenOperStatusChangeTime) has
also been changed into mvpnGenMvrfStatusChangeTime.

8.6 mvpnGenCmcastRouteProtocol OBJECT-TYPE
       MAX-ACCESS    read-write
       ::= { mvpnGeneralEntry 4 }
    o You cannot have MAX-ACCESS    read-write for a row that may be
      dynamically created.
      Replace
       MAX-ACCESS    read-write
      by
       MAX-ACCESS    read-create
      if you want to dynamically change that value, otherwise,
       MAX-ACCESS    read-only
      will suffice.

Fixed. Now, "MAX-ACCESS    read-create" is used.

8.8 mvpnGenIpmsiConfig OBJECT-TYPE
        DESCRIPTION
           "This points to a row in mvpnPmsiConfigTable,
            for I-PMSI configuration."
    o Please specify the expected behaviour when it is not an I-PMSI
8.9 mvpnGenInterAsPmsiConfig
    o same comment as above

These will be addressed in the next revision.

8.10 mvpnGenRowStatus
    mvpnGenRowStatus OBJECT-TYPE
       SYNTAX        RowStatus
       DESCRIPTION
           "This is used to create or delete a row in this table."
    o The description is inadequate for an implementor (and
      others too).
    o You must have a mvpnGenRowStorageType or the DESCRIPTION of
      mvpnGenRowStatus must indicate what will happen to the row
      after an agent restart

I will try to address this comment in the next revision.

9. Similar comments (8.1 ~ 8.10) for the remaining tables in the MIB
    Particularly 8.10 for the RowStatus type objects
                         mvpnGenRowStatus
                        mvpnPmsiConfigRowStatus
                        mvpnSpmsiConfigRowStatus.
   Please check and fix.

I will try to address this comment in the next revision.

10. mvpnMvrfChange NOTIFICATION-TYPE
        OBJECTS     {
                     mvpnGenOperStatusChange
                   }
       ::= { mvpnNotifications 2 }

    o should be  { mvpnNotifications 1 }
    o Include the MOs that the administrator/manager may want to
      see in OBJECTS.

The first comment is addressed, the second one is TBD.

11. The Security Considerations section does not follow the Security
     Guidelines for IETF MIB Modules
     http://trac.tools.ietf.org/area/ops/trac/wiki/mib-security.

I rewrite this part according to the guideline described in RFC4181 Sec.3.4. However, there are some TBDs in this part that should be updated according
to the update in the main body of MIB module.

12.  COMPLIANCE.
12.1 You seem to mandate MAX-ACCESS read-write/read-create for
      compliance. Is this intended? Configuration capability MUST be
      supported?  Please note that sec 2.  MVPN MIB says
      "This MIB enables configuring and/or monitoring of MVPNs ..."
     The current compliance requirement contradicts the above claim.
     Please check and fix.

     It is general and sound practice to allow for MAX-ACCESS
     read-only compliance. Some implementations may support
     monitoring but not configuration.
     Please check and fix.

In this revision, I have added additional ReadOnly compliance
Now, there are following two MODULE-COMPLIANCE statements
are defined in this module.
  - mvpnModuleFullCompliance
  - mvpnModuleReadOnlyCompliance

Best regards,

-- tsuno

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


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

A. MIB design related
---------------------
1. smilint -s -e -l 5 mibs/MCAST-VPN-MIB 
   gives some valid warnings:
   mibs/MCAST-VPN-MIB:485: [5] {index-exceeds-too-large} 
        warning: index of row `mvpnPmsiConfigEntry' can exceed OID size 
        limit by 399 subidentifier(s)
   mibs/MCAST-VPN-MIB:627: [5] {index-exceeds-too-large} 
        warning: index of row `mvpnSpmsiConfigEntry' can exceed OID size 
        limit by 431 subidentifier(s)
   mibs/MCAST-VPN-MIB:749: [5] {index-exceeds-too-large} 
        warning: index of row `mvpnIpmsiEntry' can exceed OID size 
        limit by 431 subidentifier(s)
   mibs/MCAST-VPN-MIB:846: [5] {index-exceeds-too-large} 
        warning: index of row `mvpnInterAsIpmsiEntry' can exceed OID size 
        limit by 175 subidentifier(s)
   mibs/MCAST-VPN-MIB:923: [5] {index-exceeds-too-large} 
        warning: index of row `mvpnSpmsiEntry' can exceed OID size 
        limit by 688 subidentifier(s)
   Each of the warnings are examined below.

1.1 mvpnPmsiConfigEntry: index items are 
         mvpnPmsiConfigTunnelType,                   
         mvpnPmsiConfigTunnelAuxInfo,               
         mvpnPmsiConfigTunnelPimGroupAddressType,  
         mvpnPmsiConfigTunnelPimGroupAddress,       
         mvpnPmsiConfigTunnelOrTemplateName        
      without any restrictions on the size of 
      mvpnPmsiConfigTunnelOrTemplateName (type SnmpAdminString; max size 
      255 octets) the index will indeed be too large. 
      the max size of the index is 128 octets. 
      Question: Do you really need mvpnPmsiConfigTunnelOrTemplateName in 
                the index?

1.2 mvpnSpmsiConfigEntry: problem similar to 1.1
1.3 mvpnIpmsiEntry: warning can be ignored. It will have to taken care of 
      by explicitly describing the restriction of the elements in each item.
1.4 mvpnInterAsIpmsiEntry the index items are
         mplsL3VpnVrfName,
         mvpnInterAsIpmsiAfi,
         mvpnInterAsIpmsiRD,
         mvpnInterAsIpmsiSrcAs
      without any restrictions on the size of mvpnInterAsIpmsiRD (max size 
      is 266 octets) the index will be indeed be too large. 
1.5 mvpnSpmsiEntry: the warning can be ignored. It will have to taken
      care of by explicitly describing the restriction of the elements in
      each item. 
 

2. Page:4
     The configuration and states specific to an MVPN include the
     following information elements:
   What are the "states" referred to above? 

3. Page:4
     The following four tables are designed for configuring MVPNs on PEs. 
   There is a mvpnModuleReadOnlyCompliance which will allow read only 
   access to these tables. So, there may be an compliant implementation 
   that does not allow configuration but allows monitoring. We should 
   probably say
     The following four tables represent the MVPN configurations on PEs. 
    
4. Page:6 
     The following four tables are designed for monitoring MVPNs on PEs.   
   It may be better to be more specific about the "monitoring MVPNs on 
   PEs" is. It appears that
         mvpnIpmsiTable
         mvpnInterAsIpmsiTable
         mvpnSpmsiTable
   contain only the MVPN Advertisements  and,
         mvpnMrouteTable
   extends ipMcastRouteTable with some VPN specific information.
   
B. Coverage and applicability.
-----------------------------
1. It will be immensely helpful if a use case scenario of the MIB is 
   given. I am yet to figure out a use case scenario of the MIB. That 
   is more likely due to lack of understanding of the operational and 
   management issues of MCAST-VPN. Please help me understand. 
   

2. RFC6514: Page13 Sec5
      An implementation MUST provide debugging facilities to permit issues
      caused by a malformed PMSI Tunnel attribute to be diagnosed.  At a
      minimum, such facilities MUST include logging an error when such an
      attribute is detected.
   RFC6514: Page16 Sec8.
      An implementation MUST provide debugging facilities to permit issues
      caused by malformed PE Distinguisher Label attribute to be diagnosed.
      At a minimum, such facilities MUST include logging an error when such
      an attribute is detected.

   Looks like there should be a counter for such malformed atributes received.
   Then a monitor/NMS could periodically check for the presence of malformed 
   attributes..

3. RFC6514: Page54 Sec16.1.1
   A PE/ASBR/route reflector can OPTIONALLY delay the advertisement of
   withdrawals of C-multicast routes.  An implementation SHOULD provide
   the ability to control the delay via a configurable timer, possibly
   with some backoff algorithm to adapt the delay to multicast routing
   activity.

   Looks like there should be an object which implements "configurable timer"

4. RFC6514: Page55 Sec17
   Security considerations:
   When C-multicast routing information is exchanged among PEs using
   BGP, an implementation SHOULD provide the ability to rate limit BGP
   messages used for this exchange.  This SHOULD be provided on a per-
   PE, per-MVPN granularity.

   An implementation SHOULD provide capabilities to impose an upper
   bound on the number of S-PMSI A-D routes, as well as on how
   frequently they may be originated.  This SHOULD be provided on a per-
   PE, per-MVPN granularity.

   In conjunction with the procedures specified in Section 14, an
   implementation SHOULD provide capabilities to impose an upper bound
   on the number of Source Active A-D routes, as well as on how
   frequently they may be originated.  This SHOULD be provided on a per-
   PE, per-MVPN granularity.
   
   Looks like the above mechanisms should be provisioned for in the MIB. 

5. There are no counters/gauges in the MIB. Are counter object like  
          Number of MVPN advertisements received
          Number of MVPN advertisements rejected
   etc.  of no interest?


C. Editorial Nits.
-----------------
1. Page:3  This document borrowed....
   I suggest this sentence be moved to the Acknowledgment section.

2. Page:3 s/A PE uses to send/A PE sends/ 

3. Page:3,4 
     Interchangeably, the term Multicast Virtual Routing and Forwarding
     table (MVRF) and MVPN are used to refer to a particular Multicast VPN
     instantiation on a particular PE.
 
     As described in [RFC4382], each PE router maintains one default
     forwarding table and "VPN Routing and Forwarding tables", or "VRFs".
     Throughout this document, we will use the term "multicast VRF (MVRF)"
     to refer a VRF that is configured to contain the multicast routing
     information.
   Looks like the order of these 2 paragraphs should be interchanged.

4. A thorough editorial check for syntax and semantics is required. 
_______________________________________________
BESS mailing list
[email protected]
https://www.ietf.org/mailman/listinfo/bess

Reply via email to