L3 VPN Working Group                                            Z. Zhang
Internet-Draft                                    Juniper Networks, Inc.
Intended status: Standards Track                          April 16,                            May 18, 2016
Expires: October 18, November 19, 2016

                         L2L3 VPN Multicast MIB
                 draft-ietf-bess-l2l3-vpn-mcast-mib-03
                 draft-ietf-bess-l2l3-vpn-mcast-mib-04

Abstract

   This memo defines a portion of the Management Information Base for
   use with network management protocols in the Internet community.  In
   particular, it describes common managed objects used to configure
   and/or monitor both L2 and L3 VPN Multicast.

Status of This Memo

   This Internet-Draft is submitted in full conformance with the
   provisions of BCP 78 and BCP 79.

   Internet-Drafts are working documents of the Internet Engineering
   Task Force (IETF).  Note that other groups may also distribute
   working documents as Internet-Drafts.  The list of current Internet-
   Drafts is at http://datatracker.ietf.org/drafts/current/.

   Internet-Drafts are draft documents valid for a maximum of six months
   and may be updated, replaced, or obsoleted by other documents at any
   time.  It is inappropriate to use Internet-Drafts as reference
   material or to cite them other than as "work in progress."

   This Internet-Draft will expire on October 18, November 19, 2016.

Copyright Notice

   Copyright (c) 2016 IETF Trust and the persons identified as the
   document authors.  All rights reserved.

   This document is subject to BCP 78 and the IETF Trust's Legal
   Provisions Relating to IETF Documents
   (http://trustee.ietf.org/license-info) in effect on the date of
   publication of this document.  Please review these documents
   carefully, as they describe your rights and restrictions with respect
   to this document.  Code Components extracted from this document must
   include Simplified BSD License text as described in Section 4.e of
   the Trust Legal Provisions and are provided without warranty as
   described in the Simplified BSD License.

Table of Contents

   1.  Introduction  . . . . . . . . . . . . . . . . . . . . . . . .   2
     1.1.  Terminology . . . . . . . . . . . . . . . . . . . . . . .   2
   2.  The Internet-Standard Management Framework  . . . . . . . . .   2
   3.  Summary of MIB Module . . . . . . . . . . . . . . . . . . . .   3
   4.  Definitions . . . . . . . . . . . . . . . . . . . . . . . . .   3
   5.  Security Considerations . . . . . . . . . . . . . . . . . . .   8   9
   6.  IANA Considerations . . . . . . . . . . . . . . . . . . . . .   8   9
   7.  References  . . . . . . . . . . . . . . . . . . . . . . . . .   8   9
     7.1.  Normative References  . . . . . . . . . . . . . . . . . .   8   9
     7.2.  Informative References  . . . . . . . . . . . . . . . . .   9  10
   Author's Address  . . . . . . . . . . . . . . . . . . . . . . . .   9  10

1.  Introduction

   Multicast in BGP/MPLS Layer 3 (L3) and Layer 2 (L2) VPN (referred to
   MVPN and L2 VPN Multicast respectively) can be achieved by using
   provider tunnels to deliver to all or a subset of Provider Edges
   (PEs).  An example of L2 VPN is Virtual Private LAN Service (VPLS).
   The signaling of provider tunnel choice is very similar for both
   cases, and this memo describes managed objects common to both VPLS
   Multicast [RFC7117] and MVPN [RFC6513, RFC6514]. [RFC6513] [RFC6514].

1.1.  Terminology

   This document adopts the definitions, acronyms and mechanisms
   described in [RFC6513, RFC6514, RFC7117] [RFC6513] [RFC6514] [RFC7117] and other documents that
   they refer to.  Familiarity with Multicast, MPLS, L3VPN, MVPN
   concepts and/or mechanisms is assumed.  Some of the terms are listed
   below.

   o  PMSI: P-Multicast Service Interface - a conceptual interface for a
      PE to send customer multicast traffic to all or some PEs in the
      same VPN.

   o  I-PMSI: Inclusive PMSI - to all PEs in the same VPN.

   o  S-PMSI: Selective PMSI - to some of the PEs in the same VPN.

2.  The Internet-Standard Management Framework

   For a detailed overview of the documents that describe the current
   Internet-Standard Management Framework, please refer to section 7 of
   RFC 3410 [RFC3410].

   Managed objects are accessed via a virtual information store, termed
   the Management Information Base or MIB.  MIB objects are generally
   accessed through the Simple Network Management Protocol (SNMP).
   Objects in the MIB are defined using the mechanisms defined in the
   Structure of Management Information (SMI).  This memo specifies a MIB
   module that is compliant to the SMIv2, which is described in STD 58,
   RFC 2578 [RFC2578], STD 58, RFC 2579 [RFC2579] and STD 58, RFC 2580
   [RFC2580].

3.  Summary of MIB Module

   L2L3-VPN-MCAST-MIB contains a Textual Convention
   L2L3VpnMcastProviderTunnelType, and a
   l2L3VpnMcastPmsiTunnelAttributeTable.  The table is for PMSI Tunnel
   Attributes (PTAs) advertised/received in I/S-PSMI Auto-Discovery
   routes.  Other MIB objects (e.g., mvpnMIB in [I-D.ietf-bess-mvpn-
   mib]) may use the L2L3VpnMcastProviderTunnelType and/or point to
   entries in the l2L3VpnMcastPmsiTunnelAttributeTable.

4.  Definitions

  L2L3-VPN-MCAST-MIB DEFINITIONS ::= BEGIN

  IMPORTS
    MODULE-IDENTITY, OBJECT-TYPE, experimental
       FROM SNMPv2-SMI                            -- [RFC2578]

    MODULE-COMPLIANCE, OBJECT-GROUP
       FROM SNMPv2-CONF                           -- [RFC2580]

    TEXTUAL-CONVENTION, RowPointer
       FROM SNMPv2-TC                             -- [RFC2579]

    MplsLabel
       FROM MPLS-TC-STD-MIB;                      -- [RFC3811]

  l2L3VpnMcastMIB MODULE-IDENTITY
    LAST-UPDATED "201310141200Z"  -- 14 October 14, 2013 12:00:00 GMT
    ORGANIZATION "IETF BESS Working Group."
    CONTACT-INFO
          "        Jeffrey (Zhaohui)        Zhaohui Zhang
                   Juniper Networks, Inc.
                   10 Technology Park Drive
                   Westford, MA 01886
                   USA
                   Email: zzhang@juniper.net

                   Comments and discussion to bess@ietf.org"

    DESCRIPTION
     "This MIB contains common managed object definitions for
      multicast in Layer 2 and Layer 3 VPNs, defined by
      [RFC7117] and [RFC6513, RFC6514]. [RFC6513] [RFC6514] respectively.
      Copyright (C) The Internet Society (2013)."

    -- Revision history.

    REVISION "201310141200Z"  -- 14 October 2013 12:00:00 GMT
    DESCRIPTION
           "Initial version, published as RFC yyyy."

    -- RFC Ed. replace yyyy with actual RFC number and remove this note

    ::= { experimental 99 999 }

    -- RFC Ed.: replace 999 with IANA-assigned number and
    -- replace experimental with the subtree under which the module
    -- will be registered.
    -- Please also remove the ", experimental" text from earlier
    -- IMPORTS section.

  -- Texual convention

  L2L3VpnMcastProviderTunnelType ::= TEXTUAL-CONVENTION
    STATUS       current
    DESCRIPTION
        "Types of provider tunnels used for multicast in
         BGP/MPLS L2 or L3 VPN, as defined in Section 5,
         [RFC6514]. VPN. Additional types may be defined
         in future RFCs, and those will be allowed as
         valid types for L2L3VpnMcastProviderTunnelType."
    REFERENCE
         "Section 5, [RFC6514]"
    SYNTAX       INTEGER { unconfigured noTunnelId (0),
                           rsvpP2mp (1),
                           ldpP2mp (2),
                           pimAsm (3),
                           pimSsm (4),
                           pimBidir (5),
                           ingressReplication (6),
                           ldpMp2mp (7)
                       }

  -- Top level components of this MIB.
  -- tables, scalars, conformance information

  l2L3VpnMcastObjects     OBJECT IDENTIFIER ::= { l2L3VpnMcastMIB 1 }
  l2L3VpnMcastConformance OBJECT IDENTIFIER ::= { l2L3VpnMcastMIB 2 }
  l2L3VpnMcastStates  OBJECT IDENTIFIER ::= { l2L3VpnMcastObjects 1 }

  -- Table of PMSI Tunnel Attributes

  l2L3VpnMcastPmsiTunnelAttributeTable OBJECT-TYPE
     SYNTAX        SEQUENCE OF L2L3VpnMcastPmsiTunnelAttributeEntry
     MAX-ACCESS    not-accessible
     STATUS        current
     DESCRIPTION
         "This table is for PMSI Tunnel Attributes (PTAs,
          Section 5, [RFC6514]) (PTAs)
          advertised/received in I/S-PSMI Auto-Discovery routes.
          The entries may be referred to by I-PMSI or S-PMSI table
          entries defined in other MIBs, e.g. mvpnMIB in
          [I-D.ietf-bess-mvpn-mib]."
    REFERENCE
         "Section 5, [RFC6514]"
     ::= {l2L3VpnMcastStates 1 }

  l2L3VpnMcastPmsiTunnelAttributeEntry OBJECT-TYPE
     SYNTAX        L2L3VpnMcastPmsiTunnelAttributeEntry
     MAX-ACCESS    not-accessible
     STATUS        current
     DESCRIPTION
         "An entry in this table corresponds to a PTA
          that is advertised/received on this router.
          For BGP-based signaling (for I-PMSI via auto-discovery
          procedure, or for S-PMSI via S-PMSI A-D routes),
          they are just as signaled by BGP ([RFC6514] section 5,
          'PMSI Tunnel Attribute'). BGP.
          For UDP-based S-PMSI signaling for PIM-MVPN,
          they're derived from the S-PMSI Join Message
          ([RFC6513] section 7.4.2, 'UDP-based Protocol'). Message.

          Note that BGP-based signaling may be used for
          PIM-MVPN as well."
    REFERENCE
         "Section 5, [RFC6514]; Section 7.4.2, [RFC6513]"
     INDEX {
             l2L3VpnMcastPmsiTunnelAttributeFlags,
             l2L3VpnMcastPmsiTunnelAttributeType,
             l2L3VpnMcastPmsiTunnelAttributeLabel,
             l2L3VpnMcastPmsiTunnelAttributeId
            }
     ::= { l2L3VpnMcastPmsiTunnelAttributeTable 1 }

  L2L3VpnMcastPmsiTunnelAttributeEntry ::= SEQUENCE {
     l2L3VpnMcastPmsiTunnelAttributeFlags OCTET STRING,
     l2L3VpnMcastPmsiTunnelAttributeType  L2L3VpnMcastProviderTunnelType,
     l2L3VpnMcastPmsiTunnelAttributeLabel MplsLabel,
     l2L3VpnMcastPmsiTunnelAttributeId    OCTET STRING,
     l2L3VpnMcastPmsiTunnelPointer        RowPointer,
     l2L3VpnMcastPmsiTunnelIf             RowPointer
     }

  l2L3VpnMcastPmsiTunnelAttributeFlags OBJECT-TYPE
     SYNTAX        OCTET STRING (SIZE (1))
     MAX-ACCESS    not-accessible
     STATUS        current
     DESCRIPTION
         "For UDP-based S-PMSI signaling for PIM-MVPN, this is 0.
          For BGP-based I/S-PMSI signaling, this is the Flags
          field in PMSI Tunnel Attribute of the corresponding
          I/S-PMSI A-D route, as route with the following format and
          one currently defined bit:

               0 1 2 3 4 5 6 7
              +-+-+-+-+-+-+-+-+
              |  reserved   |L|
              +-+-+-+-+-+-+-+-+

              L: Leaf Information Required

           More bits may be defined in Section the future and
           they will be registered in IANA Registry xxxx."
    REFERENCE
         "Section 5, [RFC6514]." [RFC6514];
          IANA Registry xxxx"

    -- RFC Ed. replace xxxx with the actual registry name
    -- that is being created via [I-D.ietf-bess-mvpn-mib]
    -- and remove this note.

     ::= { l2L3VpnMcastPmsiTunnelAttributeEntry 1 }

  l2L3VpnMcastPmsiTunnelAttributeType OBJECT-TYPE
     SYNTAX        L2L3VpnMcastProviderTunnelType
     MAX-ACCESS    not-accessible
     STATUS        current
     DESCRIPTION
         "As defined for L2L3VpnMcastProviderTunnelType.
          For UDP-based S-PMSI signaling for PIM-MVPN,
          this is pim-asm (3), pim-ssm (4), or pim-bidir (5).
          For BGP-based I/S-PMSI signaling, this is the Tunnel Type
          field in PMSI Tunnel Attribute of the corresponding
          I/S-PMSI A-D or Leaf A-D route, as defined in Section route."
    REFERENCE
         "Section 5,
          [RFC6514]." [RFC6514]"
     ::= { l2L3VpnMcastPmsiTunnelAttributeEntry 2 }

  l2L3VpnMcastPmsiTunnelAttributeLabel OBJECT-TYPE
     SYNTAX        MplsLabel
     MAX-ACCESS    not-accessible
     STATUS        current
     DESCRIPTION
         "For UDP-based I/S-PMSI signaling for PIM-MVPN, this is 0.
          For BGP-based I/S-PMSI signaling, this is the MPLS Label
          field in PMSI Tunnel Attribute of the corresponding
          I/S-PMSI A-D route, as defined in Section route."
    REFERENCE
         "Section 5, [RFC6514]." [RFC6514]"
     ::= { l2L3VpnMcastPmsiTunnelAttributeEntry 3 }

  l2L3VpnMcastPmsiTunnelAttributeId OBJECT-TYPE
     SYNTAX        OCTET STRING ( SIZE (0..50) (0|4|8|12|17|24|29) )
     MAX-ACCESS    not-accessible
     STATUS        current
     DESCRIPTION
         "Different tunnel types will have different sizes for
          this object. object, as listed below:

             IPv4/IPv6     l2L3VpnMcastPmsiTunnelAttributeType
             -------------------------------------------------
                0/0        noTunnelId
               12/24       rsvpP2mp
               17/29       ldpP2mp
                8/32       pimAsm
                8/32       pimSsm
                8/32       pimBidir
                4/16       ingressReplication
               17/29       ldpMp2mp

          For UDP-based S-PMSI signaling for PIM-MVPN, the first
          four
          8 or sixteen 32 octets of this attribute are filled with
          the provider tunnel group address (IPv4 or IPv6). (source, group) IPv4/IPv6 addresses.
          For BGP-based I/S-PMSI signaling, this is the Tunnel
          Identifier field in PMSI Tunnel Attribute of the
          corresponding I/S-PMSI A-D route, as defined in
          Section route."
    REFERENCE
         "Section 5, [RFC6514]." [RFC6514]"
     ::= { l2L3VpnMcastPmsiTunnelAttributeEntry 4 }

  l2L3VpnMcastPmsiTunnelPointer OBJECT-TYPE
     SYNTAX        RowPointer
     MAX-ACCESS    read-only
     STATUS        current
     DESCRIPTION
         "If the tunnel exists in some MIB table, e.g. mplsTunnelTable

          [RFC3812], this is the row pointer to it. Otherwise, the
          pointer is null."
     ::= { l2L3VpnMcastPmsiTunnelAttributeEntry 5 }

  l2L3VpnMcastPmsiTunnelIf OBJECT-TYPE
     SYNTAX        RowPointer
     MAX-ACCESS    read-only
     STATUS        current
     DESCRIPTION
         "If the tunnel has a corresponding interface, this is the
          row pointer to the ifName table. ifXTable. Otherwise, the pointer is null."
     ::= { l2L3VpnMcastPmsiTunnelAttributeEntry 6 }

  -- Conformance Information

  l2L3VpnMcastGroups      OBJECT IDENTIFIER
                          ::= {l2L3VpnMcastConformance 1}
  l2L3VpnMcastCompliances OBJECT IDENTIFIER
                          ::= {l2L3VpnMcastConformance 2}

  -- Compliance Statements

  l2L3VpnMcastCompliance MODULE-COMPLIANCE
      STATUS  current
      DESCRIPTION
         "The compliance statement: no mandatory groups "
      MODULE  -- this module

      GROUP l2L3VpnMcastOptionalGroup
           DESCRIPTION
               "This group is optional."
      ::= { l2L3VpnMcastCompliances 1 }

  -- units of conformance

  l2L3VpnMcastOptionalGroup    OBJECT-GROUP
      OBJECTS {
          l2L3VpnMcastPmsiTunnelPointer,
          l2L3VpnMcastPmsiTunnelIf
          }
      STATUS      current
      DESCRIPTION
          "Support of these object is not required."
      ::= { l2L3VpnMcastGroups 1 }

  END

5.  Security Considerations

   This MIB contains some read-only objects that may be deemed senstive
   by some though perhaps not all operators.  Appropriate security
   procedures related to SNMP in general but not specific to this MIB
   need to be implemented by concerned operators.

6.  IANA Considerations

   IANA is requested to root MIB objects in the MIB module contained in
   this document under the mib-2 subtree.

7.  References

7.1.  Normative References

   [RFC2578]  McCloghrie, K., Ed., Perkins, D., Ed., and J.
              Schoenwaelder, Ed., "Structure of Management Information
              Version 2 (SMIv2)", STD 58, RFC 2578,
              DOI 10.17487/RFC2578, April 1999,
              <http://www.rfc-editor.org/info/rfc2578>.

   [RFC2579]  McCloghrie, K., Ed., Perkins, D., Ed., and J.
              Schoenwaelder, Ed., "Textual Conventions for SMIv2",
              STD 58, RFC 2579, DOI 10.17487/RFC2579, April 1999,
              <http://www.rfc-editor.org/info/rfc2579>.

   [RFC2580]  McCloghrie, K., Ed., Perkins, D., Ed., and J.
              Schoenwaelder, Ed., "Conformance Statements for SMIv2",
              STD 58, RFC 2580, DOI 10.17487/RFC2580, April 1999,
              <http://www.rfc-editor.org/info/rfc2580>.

   [RFC3811]  Nadeau, T., Ed. and J. Cucchiara, Ed., "Definitions of
              Textual Conventions (TCs) for Multiprotocol Label
              Switching (MPLS) Management", RFC 3811,
              DOI 10.17487/RFC3811, June 2004,
              <http://www.rfc-editor.org/info/rfc3811>.

   [RFC3812]  Srinivasan, C., Viswanathan, A., and T. Nadeau,
              "Multiprotocol Label Switching (MPLS) Traffic Engineering
              (TE) Management Information Base (MIB)", RFC 3812,
              DOI 10.17487/RFC3812, June 2004,
              <http://www.rfc-editor.org/info/rfc3812>.

   [RFC6513]  Rosen, E., Ed. and R. Aggarwal, Ed., "Multicast in MPLS/
              BGP IP VPNs", RFC 6513, DOI 10.17487/RFC6513, February
              2012, <http://www.rfc-editor.org/info/rfc6513>.

   [RFC6514]  Aggarwal, R., Rosen, E., Morin, T., and Y. Rekhter, "BGP
              Encodings and Procedures for Multicast in MPLS/BGP IP
              VPNs", RFC 6514, DOI 10.17487/RFC6514, February 2012,
              <http://www.rfc-editor.org/info/rfc6514>.

   [RFC7117]  Aggarwal, R., Ed., Kamite, Y., Fang, L., Rekhter, Y., and
              C. Kodeboniya, "Multicast in Virtual Private LAN Service
              (VPLS)", RFC 7117, DOI 10.17487/RFC7117, February 2014,
              <http://www.rfc-editor.org/info/rfc7117>.

7.2.  Informative References

   [RFC3410]  Case, J., Mundy, R., Partain, D., and B. Stewart,
              "Introduction and Applicability Statements for Internet-
              Standard Management Framework", RFC 3410,
              DOI 10.17487/RFC3410, December 2002,
              <http://www.rfc-editor.org/info/rfc3410>.

   [I-D.ietf-bess-mvpn-mib]
              Zhang, J., Asif, S., Green, A., Gulrajani, S., and P.
              Jain, "MPLS/BGP Layer 3 VPN Multicast Management
              Information Base", draft-ietf-bess-mvpn-mib-02 (work in
              progress), March 2016.

Author's Address

   Zhaohui (Jeffrey) Zhang
   Juniper Networks, Inc.
   10 Technology Park Drive
   Westford, MA  01886
   USA

   EMail: zzhang@juniper.net