MPLS-VPN-MIB

This MIB contains managed object definitions for the Multiprotocol Label Switching (MPLS)/Border Gateway Protocol (BGP) Virtua...

  • Version: 2001-10-15

    MPLS-VPN-MIB@2001-10-15


    
      module MPLS-VPN-MIB {
    
        yang-version 1;
    
        namespace
          "urn:ietf:params:xml:ns:yang:smiv2:MPLS-VPN-MIB";
    
        prefix MPLS-VPN-MIB;
    
        import IF-MIB {
          prefix if-mib;
        }
        import INET-ADDRESS-MIB {
          prefix inet-address;
        }
        import SNMP-FRAMEWORK-MIB {
          prefix snmp-framework;
        }
        import SNMPv2-TC {
          prefix snmpv2-tc;
        }
        import ietf-yang-smiv2 {
          prefix smiv2;
        }
        import ietf-yang-types {
          prefix yang;
        }
    
        organization
          "Provider Provisioned Virtual Private
        Networks Working Group.";
    
        contact
          "        Thomas D. Nadeau
        tnadeau@cisco.com
        
        Luyuan Fang
        luyuanfang@att.com
        
        Stephen Brannon
        
        Fabio M. Chiussi
        fabio@bell-labs.com
        
        Joseph Dube
        jdube@avici.com
        
        Martin Tatham
        martin.tatham@bt.com
        
        Harmen van der Linde
        hvdl@att.com
        
        Comments and discussion to ppvpn@ietf.org";
    
        description
          "This MIB contains managed object definitions for the
        Multiprotocol Label Switching (MPLS)/Border Gateway
        
        
        Protocol (BGP) Virtual Private Networks (VPNs) as
        defined in : Rosen, E., Viswanathan, A., and R.
        Callon, Multiprotocol Label Switching Architecture,
        RFC3031, January 2001.";
    
        revision "2001-10-15" {
          description
            "Fixed compilation errors from last version. 
          
          Changed mplsVpnInterfaceVpnRouteDistProtocol to be a BITS
          structure to allow more than one to be selected.
          
          Changed mplsIfDown -> mplsVrfIfDown
          Changed mplsIfUp -> mplsVrfIfUp";
        }
    
        revision "2001-10-05" {
          description
            "Added integer index and removed route distinguisher index 
          from mplsVpnVrfRouteTargetTable.
          
          Removed mplsVpn ifType; simply use mpls(166) ifType for
          MPLS VPN-enabled interfaces instead.
          
          Removed interface and protocol-related objects from
          mplsVpnVrfTable.
          
          Moved mplsVpnVrfConfMaxPossibleRoutes from 
          mplsVpnVrfTable to scalar object.
          
          Removed mplsVpnActiveVrfInterfaces scalar object.
          Removed mplsVpnVrfUpTime object from mplsVpnVrfTable.
          
          Added MplsVpnVrfBgpNbrPrefixTable providing a linkage with
          the bgp4PathAttrTable of the BGPv4 MIB.";
        }
    
        revision "2001-07-17" {
          description
            "Removed mplsVpnVrfRouteTargetImport/Export from route target
          table, and modified indexing to better reflect N <> R
          distribution policy. Also added new object called
          mplsVpnVrfRouteTargetType which denotes import/export
          policy for the specified route target. 
          
          Added mplsVpnInterfaceConfRowStatus which allows for
          an interface to be associated with a VPN through SNMP
          configuration.
          
          
          Added VrfName to index of VrfInterfaceConfEntry which allows
          interfaces to be associated with the appropriate VRF.
          
          Modified description of mplsVpnVrfConfMaxPossibleRoutes and
          mplsVpnVrfConfMaxRoutes to allow for undetermined value.
          
          Removed 'both' enumerated value in mplsVpnVrfBgpNbrRole.
          
          Updated example to reflect these changes.";
        }
    
        revision "2001-07-10" {
          description
            "Renamed mplsNumVrfSecViolationThreshExceeded to 
          mplsNumVrfSecIllegalLabelThreshExceeded, and removed
          mplsVpnInterfaceConfIndex from varbind.
          
          Changed MplsVpnId TC from SnmpAdminString to OCTET STRING.
          
          Added mplsVpnVrfSecIllegalLabelRcvThresh to 
          mplsVpnVrfSecEntry.
          
          Changed duplicate mplsVpnVrfRouteTargetImport in 
          mplsVpnVrfRouteTargetEntry INDEX to 
          mplsVpnVrfRouteTargetExport.";
        }
    
        revision "2001-06-19" {
          description
            "Fixed several compile errors.";
        }
    
        revision "2001-05-30" {
          description
            "Updated most of document and MIB to reflect comments from WG.";
        }
    
        revision "2000-09-30" {
          description "Initial draft version.";
        }
    
        smiv2:alias "mplsVpnVrfSecTable" {
          description "This table specifies per MPLS/BGP VPN VRF Table security
    features.";
          smiv2:oid "1.3.6.1.3.118.1.2.6";
        }
        smiv2:alias "mplsVpnVrfSecEntry" {
          description "An entry in this table is created by an LSR for
    every VRF capable of supporting MPLS/BGP VPN. Each
    entry in this table is used to indicate security-related
    information for each VRF entry.";
          smiv2:oid "1.3.6.1.3.118.1.2.6.1";
        }
        smiv2:alias "mplsVpnVrfPerfTable" {
          description "This table specifies per MPLS/BGP VPN VRF Table performance
    information.";
          smiv2:oid "1.3.6.1.3.118.1.3.1";
        }
        smiv2:alias "mplsVpnVrfPerfEntry" {
          description "An entry in this table is created by an LSR for
    every VRF capable of supporting MPLS/BGP VPN.";
          smiv2:oid "1.3.6.1.3.118.1.3.1.1";
        }
        smiv2:alias "mplsVpnMIB" {
          smiv2:oid "1.3.6.1.3.118";
        }
        smiv2:alias "mplsVpnNotifications" {
          smiv2:oid "1.3.6.1.3.118.0";
        }
        smiv2:alias "mplsVpnObjects" {
          smiv2:oid "1.3.6.1.3.118.1";
        }
        smiv2:alias "mplsVpnScalars" {
          smiv2:oid "1.3.6.1.3.118.1.1";
        }
        smiv2:alias "mplsVpnConf" {
          smiv2:oid "1.3.6.1.3.118.1.2";
        }
        smiv2:alias "mplsVpnPerf" {
          smiv2:oid "1.3.6.1.3.118.1.3";
        }
        smiv2:alias "mplsVpnRoute" {
          smiv2:oid "1.3.6.1.3.118.1.4";
        }
        smiv2:alias "mplsVpnConformance" {
          smiv2:oid "1.3.6.1.3.118.3";
        }
        smiv2:alias "mplsVpnGroups" {
          smiv2:oid "1.3.6.1.3.118.3.1";
        }
        smiv2:alias "mplsVpnCompliances" {
          smiv2:oid "1.3.6.1.3.118.3.2";
        }
    
        typedef MplsVpnId {
          type binary {
            length "0..31";
          }
          description
            "An identifier that is assigned to each MPLS/BGP VPN and
          is used to uniquely identify it. This is assigned by the
          system operator or NMS and SHOULD be unique throughout
          
          
          the MPLS domain. If this is the case, then this identifier
          can then be used at any LSR within a specific MPLS domain
          to identify this MPLS/BGP VPN. It may also be possible to
          preserve the uniqueness of this identifier across MPLS
          domain boundaries, in which case this identifier can then
          be used to uniquely identify MPLS/BGP VPNs on a more global
          basis.";
          reference
            "RFC 2685 [VPN-RFC2685] Fox B., et al, 'Virtual Private
            Networks Identifier', September 1999.";
    
        }
    
        typedef MplsVpnRouteDistinguisher {
          type binary {
            length "0..256";
          }
          description
            "Syntax for a route distinguisher and route target.";
        }
    
        container MPLS-VPN-MIB {
          config false;
          container mplsVpnScalars {
            smiv2:oid "1.3.6.1.3.118.1.1";
            leaf mplsVpnConfiguredVrfs {
              smiv2:max-access "read-only";
              smiv2:oid "1.3.6.1.3.118.1.1.1";
              type uint32;
              description
                "The number of VRFs which are configured on this node.";
            }
    
            leaf mplsVpnActiveVrfs {
              smiv2:max-access "read-only";
              smiv2:oid "1.3.6.1.3.118.1.1.2";
              type uint32;
              description
                "The number of VRFs which are active on this node.
              That is, those VRFs whose corresponding mplsVpnVrfOperStatus 
              object value is equal to operational (1).";
            }
    
            leaf mplsVpnConnectedInterfaces {
              smiv2:max-access "read-only";
              smiv2:oid "1.3.6.1.3.118.1.1.3";
              type uint32;
              description
                "Total number of interfaces connected to a VRF.";
            }
    
            leaf mplsVpnNotificationEnable {
              smiv2:defval "false";
              smiv2:max-access "read-write";
              smiv2:oid "1.3.6.1.3.118.1.1.4";
              type boolean;
              description
                "If this object is true, then it enables the
              generation of all notifications defined in 
              this MIB.";
            }
    
            leaf mplsVpnVrfConfMaxPossibleRoutes {
              smiv2:max-access "read-only";
              smiv2:oid "1.3.6.1.3.118.1.1.5";
              type uint32;
              description
                "Denotes maximum number of routes which the device
              will allow all VRFs jointly to hold. If this value is
              set to 0, this indicates that the device is 
              unable to determine the absolute maximum. In this
              case, the configured maximum MAY not actually
              be allowed by the device.";
            }
          }  // container mplsVpnScalars
    
          container mplsVpnInterfaceConfTable {
            smiv2:oid "1.3.6.1.3.118.1.2.1";
            description
              "This table specifies per-interface MPLS capability
            and associated information.";
            list mplsVpnInterfaceConfEntry {
              smiv2:oid "1.3.6.1.3.118.1.2.1.1";
              key "mplsVpnVrfName mplsVpnInterfaceConfIndex";
              description
                "An entry in this table is created by an LSR for
              every interface capable of supporting MPLS/BGP VPN.
              
              
              Each entry in this table is meant to correspond to
              an entry in the Interfaces Table.";
              leaf mplsVpnVrfName {
                type leafref {
                  path "/MPLS-VPN-MIB:MPLS-VPN-MIB/MPLS-VPN-MIB:mplsVpnVrfTable/MPLS-VPN-MIB:mplsVpnVrfEntry/MPLS-VPN-MIB:mplsVpnVrfName";
                }
              }
    
              leaf mplsVpnInterfaceConfIndex {
                smiv2:max-access "not-accessible";
                smiv2:oid "1.3.6.1.3.118.1.2.1.1.1";
                type if-mib:InterfaceIndex;
                description
                  "This is a unique index for an entry in the
                MplsVPNInterfaceConfTable. A non-zero index for an
                entry indicates the ifIndex for the corresponding
                interface entry in the MPLS-VPN-layer in the ifTable.
                Note that this table does not necessarily correspond
                one-to-one with all entries in the Interface MIB
                having an ifType of MPLS-layer; rather, only those
                which are enabled for MPLS/BGP VPN functionality.";
                reference
                  "RFC 2233 - The Interfaces Group MIB using SMIv2,
                  McCloghrie, K., and F. Kastenholtz, Nov. 1997";
    
              }
    
              leaf mplsVpnInterfaceLabelEdgeType {
                smiv2:max-access "read-only";
                smiv2:oid "1.3.6.1.3.118.1.2.1.1.2";
                type enumeration {
                  enum "providerEdge" {
                    value 1;
                  }
                  enum "customerEdge" {
                    value 2;
                  }
                }
                description
                  "Either the providerEdge(0) (PE) or customerEdge(1)
                (CE) bit MUST be set.";
              }
    
              leaf mplsVpnInterfaceVpnClassification {
                smiv2:max-access "read-write";
                smiv2:oid "1.3.6.1.3.118.1.2.1.1.3";
                type enumeration {
                  enum "carrierOfCarrier" {
                    value 1;
                  }
                  enum "enterprise" {
                    value 2;
                  }
                  enum "interProvider" {
                    value 3;
                  }
                }
                description
                  "Denotes whether this link participates in a
                carrier-of-carrier's, enterprise, or inter-provider
                scenario.";
              }
    
              leaf mplsVpnInterfaceVpnRouteDistProtocol {
                smiv2:max-access "read-write";
                smiv2:oid "1.3.6.1.3.118.1.2.1.1.4";
                type bits {
                  bit dummy {
                    position 0;
                  }
                  bit none {
                    position 1;
                  }
                  bit bgp {
                    position 2;
                  }
                  bit ospf {
                    position 3;
                  }
                  bit rip {
                    position 4;
                  }
                  bit isis {
                    position 5;
                  }
                  bit other {
                    position 6;
                  }
                }
                description
                  "Denotes the route distribution protocol across the
                PE-CE link. Note that more than one routing protocol
                may be enabled at the same time.";
              }
    
              leaf mplsVpnInterfaceConfStorageType {
                smiv2:max-access "read-write";
                smiv2:oid "1.3.6.1.3.118.1.2.1.1.5";
                type snmpv2-tc:StorageType;
                description
                  "The storage type for this entry.";
              }
    
              leaf mplsVpnInterfaceConfRowStatus {
                smiv2:max-access "read-write";
                smiv2:oid "1.3.6.1.3.118.1.2.1.1.6";
                type snmpv2-tc:RowStatus;
                description
                  "The row status for this entry. This value is
                used to create a row in this table, signifying
                that the specified interface is to be associated
                with the specified interface. If this operation
                succeeds, the interface will have been associated,
                otherwise the agent would not allow the association. 
                If the agent only allows read-only operations on
                this table, it will create entries in this table
                as they are created.";
              }
            }  // list mplsVpnInterfaceConfEntry
          }  // container mplsVpnInterfaceConfTable
    
          container mplsVpnVrfTable {
            smiv2:oid "1.3.6.1.3.118.1.2.2";
            description
              "This table specifies per-interface MPLS/BGP VPN
            VRF Table capability and associated information.
            Entries in this table define VRF routing instances
            associated with MPLS/VPN interfaces. Note that
            multiple interfaces can belong to the same VRF
            instance. The collection of all VRF instances
            comprises an actual VPN.";
            list mplsVpnVrfEntry {
              smiv2:oid "1.3.6.1.3.118.1.2.2.1";
              key "mplsVpnVrfName";
              description
                "An entry in this table is created by an LSR for
              every VRF capable of supporting MPLS/BGP VPN. The
              indexing provides an ordering of VRFs per-VPN
              interface.";
              leaf mplsVpnVrfName {
                smiv2:max-access "not-accessible";
                smiv2:oid "1.3.6.1.3.118.1.2.2.1.1";
                type MplsVpnId;
                description
                  "The human-readable name of this VPN. This MAY
                be equivalent to the RFC2685 VPN-ID.";
                reference
                  "RFC 2685 [VPN-RFC2685] Fox B., et al, `Virtual
                  
                  
                  Private Networks Identifier`, September 1999.";
    
              }
    
              leaf mplsVpnVrfDescription {
                smiv2:max-access "read-write";
                smiv2:oid "1.3.6.1.3.118.1.2.2.1.2";
                type snmp-framework:SnmpAdminString;
                description
                  "The human-readable description of this VRF.";
              }
    
              leaf mplsVpnVrfRouteDistinguisher {
                smiv2:max-access "read-write";
                smiv2:oid "1.3.6.1.3.118.1.2.2.1.3";
                type MplsVpnRouteDistinguisher;
                description
                  "The route distinguisher for this VRF.";
              }
    
              leaf mplsVpnVrfCreationTime {
                smiv2:max-access "read-only";
                smiv2:oid "1.3.6.1.3.118.1.2.2.1.4";
                type yang:timestamp;
                description
                  "The time at which this VRF entry was created.";
              }
    
              leaf mplsVpnVrfOperStatus {
                smiv2:max-access "read-only";
                smiv2:oid "1.3.6.1.3.118.1.2.2.1.5";
                type enumeration {
                  enum "up" {
                    value 1;
                  }
                  enum "down" {
                    value 2;
                  }
                }
                description
                  "Denotes whether a VRF is operational or not. A VRF is 
                up(1) when at least one interface associated with the
                VRF, which ifOperStatus is up(1). A VRF is down(2) when:
                
                a. There does not exist at least one interface whose
                   ifOperStatus is up(1).
                
                b. There are no interfaces associated with the VRF.";
              }
    
              leaf mplsVpnVrfActiveInterfaces {
                smiv2:max-access "read-only";
                smiv2:oid "1.3.6.1.3.118.1.2.2.1.6";
                type uint32;
                description
                  "Total number of interfaces connected to this VRF with 
                
                
                ifOperStatus = up(1). 
                
                This counter should be incremented when:
                
                a. When the ifOperStatus of one of the connected interfaces 
                   changes from down(2) to up(1).
                
                b. When an interface with ifOperStatus = up(1) is connected
                   to this VRF.
                
                This counter should be decremented when:
                
                a. When the ifOperStatus of one of the connected interfaces 
                   changes from up(1) to down(2).
                
                b. When one of the connected interfaces with 
                   ifOperStatus = up(1) gets disconnected from this VRF.";
              }
    
              leaf mplsVpnVrfAssociatedInterfaces {
                smiv2:max-access "read-only";
                smiv2:oid "1.3.6.1.3.118.1.2.2.1.7";
                type uint32;
                description
                  "Total number of interfaces connected to this VRF 
                (independent of ifOperStatus type).";
              }
    
              leaf mplsVpnVrfConfMidRouteThreshold {
                smiv2:max-access "read-write";
                smiv2:oid "1.3.6.1.3.118.1.2.2.1.8";
                type uint32;
                description
                  "Denotes mid-level water marker for the number
                of routes which  this VRF may hold.";
              }
    
              leaf mplsVpnVrfConfHighRouteThreshold {
                smiv2:max-access "read-write";
                smiv2:oid "1.3.6.1.3.118.1.2.2.1.9";
                type uint32;
                description
                  "Denotes high-level water marker for the number of
                routes which  this VRF may hold.";
              }
    
              leaf mplsVpnVrfConfMaxRoutes {
                smiv2:max-access "read-write";
                smiv2:oid "1.3.6.1.3.118.1.2.2.1.10";
                type uint32;
                description
                  "Denotes maximum number of routes which this VRF is
                configured to hold. This value MUST be less than or
                equal to mplsVrfMaxPossibleRoutes unless it is set
                to 0.";
              }
    
              leaf mplsVpnVrfConfLastChanged {
                smiv2:max-access "read-only";
                smiv2:oid "1.3.6.1.3.118.1.2.2.1.11";
                type yang:timestamp;
                description
                  "The value of sysUpTime at the time of the last
                change of this table entry, which includes changes of
                VRF parameters defined in this table or addition or
                deletion of interfaces associated with this VRF.";
              }
    
              leaf mplsVpnVrfConfRowStatus {
                smiv2:max-access "read-write";
                smiv2:oid "1.3.6.1.3.118.1.2.2.1.12";
                type snmpv2-tc:RowStatus;
                description
                  "This variable is used to create, modify, and/or
                delete a row in this table.";
              }
    
              leaf mplsVpnVrfConfStorageType {
                smiv2:max-access "read-write";
                smiv2:oid "1.3.6.1.3.118.1.2.2.1.13";
                type snmpv2-tc:StorageType;
                description
                  "The storage type for this entry.";
              }
            }  // list mplsVpnVrfEntry
          }  // container mplsVpnVrfTable
    
          container mplsVpnVrfRouteTargetTable {
            smiv2:oid "1.3.6.1.3.118.1.2.3";
            description
              "This table specifies per-VRF route target association.
            Each entry identifies a connectivity policy supported
            as part of a VPN.";
            list mplsVpnVrfRouteTargetEntry {
              smiv2:oid "1.3.6.1.3.118.1.2.3.1";
              key "mplsVpnVrfName mplsVpnVrfRouteTargetIndex mplsVpnVrfRouteTargetType";
              description
                " An entry in this table is created by an LSR for
              each route target configured for a VRF supporting
              a MPLS/BGP VPN instance. The indexing provides an
              ordering per-VRF instance.";
              leaf mplsVpnVrfName {
                type leafref {
                  path "/MPLS-VPN-MIB:MPLS-VPN-MIB/MPLS-VPN-MIB:mplsVpnVrfTable/MPLS-VPN-MIB:mplsVpnVrfEntry/MPLS-VPN-MIB:mplsVpnVrfName";
                }
              }
    
              leaf mplsVpnVrfRouteTargetIndex {
                smiv2:max-access "not-accessible";
                smiv2:oid "1.3.6.1.3.118.1.2.3.1.2";
                type uint32;
                description
                  "Auxiliary index for route-targets configured for a 
                particular VRF.";
              }
    
              leaf mplsVpnVrfRouteTargetType {
                smiv2:max-access "not-accessible";
                smiv2:oid "1.3.6.1.3.118.1.2.3.1.3";
                type enumeration {
                  enum "import" {
                    value 1;
                  }
                  enum "export" {
                    value 2;
                  }
                  enum "both" {
                    value 3;
                  }
                }
                description
                  "The route target export distribution type.";
              }
    
              leaf mplsVpnVrfRouteTarget {
                smiv2:max-access "read-write";
                smiv2:oid "1.3.6.1.3.118.1.2.3.1.4";
                type MplsVpnRouteDistinguisher;
                description
                  "The route target distribution policy.";
              }
    
              leaf mplsVpnVrfRouteTargetDescr {
                smiv2:max-access "read-write";
                smiv2:oid "1.3.6.1.3.118.1.2.3.1.5";
                type snmpv2-tc:DisplayString;
                description
                  "Description of the route target.";
              }
    
              leaf mplsVpnVrfRouteTargetRowStatus {
                smiv2:max-access "read-write";
                smiv2:oid "1.3.6.1.3.118.1.2.3.1.6";
                type snmpv2-tc:RowStatus;
                description
                  "Row status for this entry.";
              }
            }  // list mplsVpnVrfRouteTargetEntry
          }  // container mplsVpnVrfRouteTargetTable
    
          container mplsVpnVrfBgpNbrAddrTable {
            smiv2:oid "1.3.6.1.3.118.1.2.4";
            description
              "Each entry in this table specifies a per-interface 
            MPLS/EBGP neighbor.";
            list mplsVpnVrfBgpNbrAddrEntry {
              smiv2:oid "1.3.6.1.3.118.1.2.4.1";
              key "mplsVpnVrfName mplsVpnInterfaceConfIndex mplsVpnVrfBgpNbrIndex";
              description
                "An entry in this table is created by an LSR for
              every VRF capable of supporting MPLS/BGP VPN. The
              indexing provides an ordering of VRFs per-VPN
              interface.";
              leaf mplsVpnVrfName {
                type leafref {
                  path "/MPLS-VPN-MIB:MPLS-VPN-MIB/MPLS-VPN-MIB:mplsVpnVrfTable/MPLS-VPN-MIB:mplsVpnVrfEntry/MPLS-VPN-MIB:mplsVpnVrfName";
                }
              }
    
              leaf mplsVpnInterfaceConfIndex {
                type leafref {
                  path "/MPLS-VPN-MIB:MPLS-VPN-MIB/MPLS-VPN-MIB:mplsVpnInterfaceConfTable/MPLS-VPN-MIB:mplsVpnInterfaceConfEntry/MPLS-VPN-MIB:mplsVpnInterfaceConfIndex";
                }
              }
    
              leaf mplsVpnVrfBgpNbrIndex {
                smiv2:max-access "not-accessible";
                smiv2:oid "1.3.6.1.3.118.1.2.4.1.1";
                type uint32;
                description
                  "This is a unique tertiary index for an entry in the
                MplsVpnVrfBgpNbrAddrEntry Table.";
              }
    
              leaf mplsVpnVrfBgpNbrRole {
                smiv2:max-access "read-write";
                smiv2:oid "1.3.6.1.3.118.1.2.4.1.2";
                type enumeration {
                  enum "ce" {
                    value 1;
                  }
                  enum "pe" {
                    value 2;
                  }
                }
                description
                  "Denotes the role played by this EBGP neighbor
                with respect to this VRF.";
              }
    
              leaf mplsVpnVrfBgpNbrType {
                smiv2:max-access "read-write";
                smiv2:oid "1.3.6.1.3.118.1.2.4.1.3";
                type inet-address:InetAddressType;
                description
                  "Denotes the address family of the PE address.";
              }
    
              leaf mplsVpnVrfBgpNbrAddr {
                smiv2:max-access "read-write";
                smiv2:oid "1.3.6.1.3.118.1.2.4.1.4";
                type inet-address:InetAddress;
                description
                  "Denotes the EBGP neighbor address.";
              }
    
              leaf mplsVpnVrfBgpNbrRowStatus {
                smiv2:max-access "read-write";
                smiv2:oid "1.3.6.1.3.118.1.2.4.1.5";
                type snmpv2-tc:RowStatus;
                description
                  "This variable is used to create, modify, and/or
                delete a row in this table.";
              }
    
              leaf mplsVpnVrfBgpNbrStorageType {
                smiv2:max-access "read-write";
                smiv2:oid "1.3.6.1.3.118.1.2.4.1.6";
                type snmpv2-tc:StorageType;
                description
                  "The storage type for this entry.";
              }
            }  // list mplsVpnVrfBgpNbrAddrEntry
          }  // container mplsVpnVrfBgpNbrAddrTable
    
          container mplsVpnVrfBgpNbrPrefixTable {
            smiv2:oid "1.3.6.1.3.118.1.2.5";
            description
              "This table specifies per-VRF vpnv4 multi-protocol
            prefixes supported by BGP.";
            list mplsVpnVrfBgpNbrPrefixEntry {
              smiv2:oid "1.3.6.1.3.118.1.2.5.1";
              key "mplsVpnVrfName mplsVpnVrfBgpPathAttrIpAddrPrefix mplsVpnVrfBgpPathAttrIpAddrPrefixLen mplsVpnVrfBgpPathAttrPeer";
              description
                "An entry in this table is created by an LSR for
              every BGP prefix associated with a VRF supporting a 
              MPLS/BGP VPN. The indexing provides an ordering of 
              BGP prefixes per VRF.";
              leaf mplsVpnVrfName {
                type leafref {
                  path "/MPLS-VPN-MIB:MPLS-VPN-MIB/MPLS-VPN-MIB:mplsVpnVrfTable/MPLS-VPN-MIB:mplsVpnVrfEntry/MPLS-VPN-MIB:mplsVpnVrfName";
                }
              }
    
              leaf mplsVpnVrfBgpPathAttrPeer {
                smiv2:max-access "not-accessible";
                smiv2:oid "1.3.6.1.3.118.1.2.5.1.1";
                type inet-address:InetAddress;
                description
                  "The IP address of the peer where the path
                information was learned.";
              }
    
              leaf mplsVpnVrfBgpPathAttrIpAddrPrefixLen {
                smiv2:max-access "not-accessible";
                smiv2:oid "1.3.6.1.3.118.1.2.5.1.2";
                type int32 {
                  range "0..32";
                }
                description
                  "Length in bits of the IP address prefix
                in the Network Layer Reachability
                Information field.";
              }
    
              leaf mplsVpnVrfBgpPathAttrIpAddrPrefix {
                smiv2:max-access "not-accessible";
                smiv2:oid "1.3.6.1.3.118.1.2.5.1.3";
                type inet-address:InetAddress;
                description
                  "An IP address prefix in the Network Layer
                Reachability Information field.  This object
                is an IP address containing the prefix with
                length specified by mplsVpnVrfBgpPathAttrIpAddrPrefixLen.
                Any bits beyond the length specified by
                mplsVpnVrfBgpPathAttrIpAddrPrefixLen are zeroed.";
              }
    
              leaf mplsVpnVrfBgpPathAttrOrigin {
                smiv2:max-access "read-only";
                smiv2:oid "1.3.6.1.3.118.1.2.5.1.4";
                type enumeration {
                  enum "igp" {
                    value 1;
                  }
                  enum "egp" {
                    value 2;
                  }
                  enum "incomplete" {
                    value 3;
                  }
                }
                description
                  "The ultimate origin of the path
                information.";
              }
    
              leaf mplsVpnVrfBgpPathAttrASPathSegment {
                smiv2:max-access "read-only";
                smiv2:oid "1.3.6.1.3.118.1.2.5.1.5";
                type binary {
                  length "2..255";
                }
                description
                  "The sequence of AS path segments.  Each AS
                path segment is represented by a triple
                <type, length, value>.
                
                 The type is a 1-octet field which has two
                 possible values:
                     1      AS_SET: unordered set of ASs a
                            route in the UPDATE
                            message has traversed
                     2      AS_SEQUENCE: ordered set of ASs
                            a route in the UPDATE
                            message has traversed.
                            The length is a 1-octet field containing the
                
                
                            number of ASs in the value field.
                
                            The value field contains one or more AS
                            numbers, each AS is represented in the octet
                            string as a pair of octets according to the
                            following algorithm:
                
                            first-byte-of-pair = ASNumber / 256;
                            second-byte-of-pair = ASNumber & 255;";
              }
    
              leaf mplsVpnVrfBgpPathAttrNextHop {
                smiv2:max-access "read-only";
                smiv2:oid "1.3.6.1.3.118.1.2.5.1.6";
                type inet-address:InetAddress;
                description
                  "The address of the border router that
                should be used for the destination
                network.";
              }
    
              leaf mplsVpnVrfBgpPathAttrMultiExitDisc {
                smiv2:max-access "read-only";
                smiv2:oid "1.3.6.1.3.118.1.2.5.1.7";
                type int32 {
                  range "-1..2147483647";
                }
                description
                  "This metric is used to discriminate
                between multiple exit points to an
                adjacent autonomous system.  A value of -1
                indicates the absence of this attribute.";
              }
    
              leaf mplsVpnVrfBgpPathAttrLocalPref {
                smiv2:max-access "read-only";
                smiv2:oid "1.3.6.1.3.118.1.2.5.1.8";
                type int32 {
                  range "-1..2147483647";
                }
                description
                  "The originating BGP4 speaker's degree of
                preference for an advertised route.  A
                value of -1 indicates the absence of this
                attribute.";
              }
    
              leaf mplsVpnVrfBgpPathAttrAtomicAggregate {
                smiv2:max-access "read-only";
                smiv2:oid "1.3.6.1.3.118.1.2.5.1.9";
                type enumeration {
                  enum
                    "lessSpecificRrouteNotSelected" {
                    value 1;
                  }
                  enum
                    "lessSpecificRouteSelected" {
                    value 2;
                  }
                }
                description
                  "Whether or not the local system has
                selected a less specific route without
                selecting a more specific route.";
              }
    
              leaf mplsVpnVrfBgpPathAttrAggregatorAS {
                smiv2:max-access "read-only";
                smiv2:oid "1.3.6.1.3.118.1.2.5.1.10";
                type int32 {
                  range "0..65535";
                }
                description
                  "The AS number of the last BGP4 speaker that
                performed route aggregation.  A value of
                zero (0) indicates the absence of this
                attribute.";
              }
    
              leaf mplsVpnVrfBgpPathAttrAggregatorAddr {
                smiv2:max-access "read-only";
                smiv2:oid "1.3.6.1.3.118.1.2.5.1.11";
                type inet-address:InetAddress;
                description
                  "The IP address of the last BGP4 speaker
                that performed route aggregation.  A value
                of 0.0.0.0 indicates the absence of this
                attribute.";
              }
    
              leaf mplsVpnVrfBgpPathAttrCalcLocalPref {
                smiv2:max-access "read-only";
                smiv2:oid "1.3.6.1.3.118.1.2.5.1.12";
                type int32 {
                  range "-1..2147483647";
                }
                description
                  "The degree of preference calculated by the
                receiving BGP4 speaker for an advertised
                route.  A value of -1 indicates the
                absence of this attribute.";
              }
    
              leaf mplsVpnVrfBgpPathAttrBest {
                smiv2:max-access "read-only";
                smiv2:oid "1.3.6.1.3.118.1.2.5.1.13";
                type enumeration {
                  enum "false" {
                    value 1;
                  }
                  enum "true" {
                    value 2;
                  }
                }
                description
                  "An indication of whether or not this route
                was chosen as the best BGP4 route.";
              }
    
              leaf mplsVpnVrfBgpPathAttrUnknown {
                smiv2:max-access "read-only";
                smiv2:oid "1.3.6.1.3.118.1.2.5.1.14";
                type binary {
                  length "0..255";
                }
                description
                  "One or more path attributes not understood
                by this BGP4 speaker.  Size zero (0)
                indicates the absence of such
                attribute(s).  Octets beyond the maximum
                size, if any, are not recorded by this
                object.";
              }
            }  // list mplsVpnVrfBgpNbrPrefixEntry
          }  // container mplsVpnVrfBgpNbrPrefixTable
    
          container mplsVpnVrfRouteTable {
            smiv2:oid "1.3.6.1.3.118.1.4.1";
            description
              "This table specifies per-interface MPLS/BGP VPN VRF Table
            routing information. Entries in this table define VRF routing
            entries associated with the specified MPLS/VPN interfaces. Note
            that this table contains both BGP and IGP routes, as both may
            appear in the same VRF.";
            reference
              "1.  RFC 1213 Section 6.6, The IP Group.
              2.  RFC 2096 ";
    
            list mplsVpnVrfRouteEntry {
              smiv2:oid "1.3.6.1.3.118.1.4.1.1";
              key "mplsVpnVrfName mplsVpnVrfRouteDest mplsVpnVrfRouteMask mplsVpnVrfRouteTos mplsVpnVrfRouteNextHop";
              description
                "An entry in this table is created by an LSR for every route
              present configured (either dynamically or statically) within
              the context of a specific VRF capable of supporting MPLS/BGP
              VPN. The indexing provides an ordering of VRFs per-VPN
              interface.";
              leaf mplsVpnVrfName {
                type leafref {
                  path "/MPLS-VPN-MIB:MPLS-VPN-MIB/MPLS-VPN-MIB:mplsVpnVrfTable/MPLS-VPN-MIB:mplsVpnVrfEntry/MPLS-VPN-MIB:mplsVpnVrfName";
                }
              }
    
              leaf mplsVpnVrfRouteDest {
                smiv2:max-access "not-accessible";
                smiv2:oid "1.3.6.1.3.118.1.4.1.1.1";
                type inet-address:InetAddress;
                description
                  "The destination IP address of this route.
                This object may not take a Multicast (Class D)
                address value.
                
                Any assignment (implicit or otherwise) of an
                instance of this object to a value x must be
                rejected if the bit-wise logical-AND of x with
                the value of the corresponding instance of the
                mplsVpnVrfRouteMask object is not equal to x.";
              }
    
              leaf mplsVpnVrfRouteDestAddrType {
                smiv2:max-access "read-write";
                smiv2:oid "1.3.6.1.3.118.1.4.1.1.2";
                type inet-address:InetAddressType;
                description
                  "The address type of the mplsVpnVrfRouteDest
                entry.";
              }
    
              leaf mplsVpnVrfRouteMask {
                smiv2:max-access "not-accessible";
                smiv2:oid "1.3.6.1.3.118.1.4.1.1.3";
                type inet-address:InetAddress;
                description
                  "Indicate the mask to be logical-ANDed with the
                destination  address  before  being compared to
                the value  in  the  mplsVpnVrfRouteDest field.
                For those  systems  that  do  not support
                arbitrary subnet masks, an agent constructs the
                value of the mplsVpnVrfRouteMask by reference
                
                
                to the IP Address Class.
                
                Any assignment (implicit or otherwise) of an
                instance of this object to a value x must be
                rejected if the bit-wise logical-AND of x with
                the value of the corresponding instance of the
                mplsVpnVrfRouteDest object is not equal to
                mplsVpnVrfRouteDest.";
              }
    
              leaf mplsVpnVrfRouteMaskAddrType {
                smiv2:max-access "read-write";
                smiv2:oid "1.3.6.1.3.118.1.4.1.1.4";
                type inet-address:InetAddressType;
                description
                  "The address type of mplsVpnVrfRouteMask.";
              }
    
              leaf mplsVpnVrfRouteTos {
                smiv2:max-access "not-accessible";
                smiv2:oid "1.3.6.1.3.118.1.4.1.1.5";
                type uint32;
                description
                  "The IP TOS Field is used to specify the policy to
                be applied to this route.  The encoding of IP TOS
                is as specified  by  the  following convention.
                Zero indicates the default path if no more
                specific policy applies.
                
                +-----+-----+-----+-----+-----+-----+-----+-----+
                |                 |                       |     |
                |   PRECEDENCE    |    TYPE OF SERVICE    |  0  |
                |                 |                       |     |
                +-----+-----+-----+-----+-----+-----+-----+-----+
                
                           IP TOS                IP TOS
                      Field     Policy      Field     Policy
                      Contents    Code      Contents    Code
                      0 0 0 0  ==>   0      0 0 0 1  ==>   2
                      0 0 1 0  ==>   4      0 0 1 1  ==>   6
                      0 1 0 0  ==>   8      0 1 0 1  ==>  10
                      0 1 1 0  ==>  12      0 1 1 1  ==>  14
                      1 0 0 0  ==>  16      1 0 0 1  ==>  18
                      1 0 1 0  ==>  20      1 0 1 1  ==>  22
                      1 1 0 0  ==>  24      1 1 0 1  ==>  26
                      1 1 1 0  ==>  28      1 1 1 1  ==>  30.";
              }
    
              leaf mplsVpnVrfRouteNextHop {
                smiv2:max-access "not-accessible";
                smiv2:oid "1.3.6.1.3.118.1.4.1.1.6";
                type inet-address:InetAddress;
                description
                  "On remote routes, the address of the next
                system en route; Otherwise, 0.0.0.0. .";
              }
    
              leaf mplsVpnVrfRouteNextHopAddrType {
                smiv2:max-access "read-write";
                smiv2:oid "1.3.6.1.3.118.1.4.1.1.7";
                type inet-address:InetAddressType;
                description
                  "The address type of the mplsVpnVrfRouteNextHopAddrType
                object.";
              }
    
              leaf mplsVpnVrfRouteIfIndex {
                smiv2:max-access "read-write";
                smiv2:oid "1.3.6.1.3.118.1.4.1.1.8";
                type if-mib:InterfaceIndexOrZero;
                description
                  "The ifIndex value that identifies the local
                interface  through  which  the next hop of this
                route should be reached.";
              }
    
              leaf mplsVpnVrfRouteType {
                smiv2:max-access "read-write";
                smiv2:oid "1.3.6.1.3.118.1.4.1.1.9";
                type enumeration {
                  enum "other" {
                    value 1;
                  }
                  enum "reject" {
                    value 2;
                  }
                  enum "local" {
                    value 3;
                  }
                  enum "remote" {
                    value 4;
                  }
                }
                description
                  "The type of route.  Note that local(3)  refers
                to a route for which the next hop is the final
                destination; remote(4) refers to a route for
                that the next  hop is not the final destination.
                Routes which do not result in traffic forwarding or
                rejection should not be displayed even if the
                implementation keeps them stored internally.
                
                reject (2) refers to a route which, if matched,
                discards the message as unreachable. This is used
                in some protocols as a means of correctly aggregating
                routes.";
              }
    
              leaf mplsVpnVrfRouteProto {
                smiv2:max-access "read-write";
                smiv2:oid "1.3.6.1.3.118.1.4.1.1.10";
                type enumeration {
                  enum "other" {
                    value 1;
                  }
                  enum "local" {
                    value 2;
                  }
                  enum "netmgmt" {
                    value 3;
                  }
                  enum "icmp" {
                    value 4;
                  }
                  enum "egp" {
                    value 5;
                  }
                  enum "ggp" {
                    value 6;
                  }
                  enum "hello" {
                    value 7;
                  }
                  enum "rip" {
                    value 8;
                  }
                  enum "isIs" {
                    value 9;
                  }
                  enum "esIs" {
                    value 10;
                  }
                  enum "ciscoIgrp" {
                    value 11;
                  }
                  enum "bbnSpfIgp" {
                    value 12;
                  }
                  enum "ospf" {
                    value 13;
                  }
                  enum "bgp" {
                    value 14;
                  }
                  enum "idpr" {
                    value 15;
                  }
                  enum "ciscoEigrp" {
                    value 16;
                  }
                }
                description
                  "The routing mechanism via which this route was
                learned.  Inclusion of values for gateway rout-
                ing protocols is not  intended  to  imply  that
                hosts should support those protocols.";
              }
    
              leaf mplsVpnVrfRouteAge {
                smiv2:max-access "read-only";
                smiv2:oid "1.3.6.1.3.118.1.4.1.1.11";
                type uint32;
                description
                  "The number of seconds since this route was
                last updated or otherwise determined to be
                correct. Note that no semantics of `too old'
                can be implied except through knowledge of the
                routing protocol by which the route was
                learned.";
              }
    
              leaf mplsVpnVrfRouteInfo {
                smiv2:max-access "read-write";
                smiv2:oid "1.3.6.1.3.118.1.4.1.1.12";
                type yang:object-identifier-128;
                description
                  "A reference to MIB definitions specific to the
                particular routing protocol which is responsi-
                
                
                ble for this route, as determined by the  value
                specified  in the route's mplsVpnVrfRouteProto
                value. If this information is not present, its
                value SHOULD be set to the OBJECT IDENTIFIER
                { 0 0 }, which is a syntactically valid object
                identif-ier, and any implementation conforming
                to ASN.1 and the Basic Encoding Rules must be
                able to generate and recognize this value.";
              }
    
              leaf mplsVpnVrfRouteNextHopAS {
                smiv2:max-access "read-write";
                smiv2:oid "1.3.6.1.3.118.1.4.1.1.13";
                type uint32;
                description
                  "The Autonomous System Number of the Next Hop.
                The semantics of this object are determined by
                the routing-protocol specified in the route's
                mplsVpnVrfRouteProto value. When this object is
                unknown or not relevant its value should be set
                to zero.";
              }
    
              leaf mplsVpnVrfRouteMetric1 {
                smiv2:max-access "read-write";
                smiv2:oid "1.3.6.1.3.118.1.4.1.1.14";
                type int32;
                description
                  "The primary routing metric for this route.
                The semantics of this metric are determined by
                the routing-protocol specified in  the  route's
                mplsVpnVrfRouteProto value. If this metric is not
                used, its value should be set to -1.";
              }
    
              leaf mplsVpnVrfRouteMetric2 {
                smiv2:max-access "read-write";
                smiv2:oid "1.3.6.1.3.118.1.4.1.1.15";
                type int32;
                description
                  "An alternate routing metric for this route.
                The semantics of this metric are determined by
                the routing-protocol specified in  the  route's
                mplsVpnVrfRouteProto value. If this metric is not
                used, its value should be set to -1.";
              }
    
              leaf mplsVpnVrfRouteMetric3 {
                smiv2:max-access "read-write";
                smiv2:oid "1.3.6.1.3.118.1.4.1.1.16";
                type int32;
                description
                  "An alternate routing metric for this route.
                The semantics of this metric are determined by
                the routing-protocol specified in  the  route's
                mplsVpnVrfRouteProto value. If this metric is not
                used, its value should be set to -1.";
              }
    
              leaf mplsVpnVrfRouteMetric4 {
                smiv2:max-access "read-write";
                smiv2:oid "1.3.6.1.3.118.1.4.1.1.17";
                type int32;
                description
                  "An alternate routing metric for this route.
                The semantics of this metric are determined by
                the routing-protocol specified in  the  route's
                mplsVpnVrfRouteProto value. If this metric is not
                used, its value should be set to -1.";
              }
    
              leaf mplsVpnVrfRouteMetric5 {
                smiv2:max-access "read-write";
                smiv2:oid "1.3.6.1.3.118.1.4.1.1.18";
                type int32;
                description
                  "An alternate routing metric for this route.
                The semantics of this metric are determined by
                the routing-protocol specified in  the  route's
                mplsVpnVrfRouteProto value. If this metric is not
                used, its value should be set to -1.";
              }
    
              leaf mplsVpnVrfRouteRowStatus {
                smiv2:max-access "read-write";
                smiv2:oid "1.3.6.1.3.118.1.4.1.1.19";
                type snmpv2-tc:RowStatus;
                description
                  "Row status for this table. It is used according
                to row installation and removal conventions.";
              }
    
              leaf mplsVpnVrfRouteStorageType {
                smiv2:max-access "read-write";
                smiv2:oid "1.3.6.1.3.118.1.4.1.1.20";
                type snmpv2-tc:StorageType;
                description
                  "Storage type value.";
              }
            }  // list mplsVpnVrfRouteEntry
          }  // container mplsVpnVrfRouteTable
        }  // container MPLS-VPN-MIB
    
        augment /MPLS-VPN-MIB:MPLS-VPN-MIB/MPLS-VPN-MIB:mplsVpnVrfTable/MPLS-VPN-MIB:mplsVpnVrfEntry {
          smiv2:oid "1.3.6.1.3.118.1.2.6.1";
          description
            "An entry in this table is created by an LSR for
          every VRF capable of supporting MPLS/BGP VPN. Each
          entry in this table is used to indicate security-related
          information for each VRF entry.";
          leaf mplsVpnVrfSecIllegalLabelViolations {
            smiv2:max-access "read-only";
            smiv2:oid "1.3.6.1.3.118.1.2.6.1.1";
            type yang:counter32;
            description
              "Indicates the number of illegally received labels on this VPN/VRF.";
          }
    
          leaf mplsVpnVrfSecIllegalLabelRcvThresh {
            smiv2:max-access "read-write";
            smiv2:oid "1.3.6.1.3.118.1.2.6.1.2";
            type uint32;
            description
              "The number of illegally received labels above which this 
            notification is issued.";
          }
        }
    
        augment /MPLS-VPN-MIB:MPLS-VPN-MIB/MPLS-VPN-MIB:mplsVpnVrfTable/MPLS-VPN-MIB:mplsVpnVrfEntry {
          smiv2:oid "1.3.6.1.3.118.1.3.1.1";
          description
            "An entry in this table is created by an LSR for
          every VRF capable of supporting MPLS/BGP VPN.";
          leaf mplsVpnVrfPerfRoutesAdded {
            smiv2:max-access "read-only";
            smiv2:oid "1.3.6.1.3.118.1.3.1.1.1";
            type yang:counter32;
            description
              "Indicates the number of routes added to this VPN/VRF over the
            coarse of its lifetime.";
          }
    
          leaf mplsVpnVrfPerfRoutesDeleted {
            smiv2:max-access "read-only";
            smiv2:oid "1.3.6.1.3.118.1.3.1.1.2";
            type yang:counter32;
            description
              "Indicates the number of routes removed from this VPN/VRF.";
          }
    
          leaf mplsVpnVrfPerfCurrNumRoutes {
            smiv2:max-access "read-only";
            smiv2:oid "1.3.6.1.3.118.1.3.1.1.3";
            type uint32;
            description
              "Indicates the number of routes currently used by this VRF.";
          }
        }
    
        notification mplsVrfIfUp {
          smiv2:oid "1.3.6.1.3.118.0.1";
          description
            "This notification is generated when:
          a. The ifOperStatus of an interface associated with a VRF 
             changes to the up(1) state.
          b. When an interface with ifOperStatus = up(1) is 
             associated with a VRF.";
        }  // notification mplsVrfIfUp
    
        notification mplsVrfIfDown {
          smiv2:oid "1.3.6.1.3.118.0.2";
          description
            "This notification is generated when:
          a. The ifOperStatus of an interface associated with a VRF 
             changes to the down(1) state.
          b. When an interface with ifOperStatus = up(1) state is 
             disassociated with a VRF.";
        }  // notification mplsVrfIfDown
    
        notification mplsNumVrfRouteMidThreshExceeded {
          smiv2:oid "1.3.6.1.3.118.0.3";
          description
            "This notification is generated when the number of routes
          contained by the specified VRF exceeds the value indicated by
          mplsVrfMidRouteThreshold.";
        }  // notification mplsNumVrfRouteMidThreshExceeded
    
        notification mplsNumVrfRouteMaxThreshExceeded {
          smiv2:oid "1.3.6.1.3.118.0.4";
          description
            "This notification is generated when the number of routes
          contained by the specified VRF reaches or attempts to exceed
          the maximum allowed value as indicated by
          mplsVrfMaxRouteThreshold.";
        }  // notification mplsNumVrfRouteMaxThreshExceeded
    
        notification mplsNumVrfSecIllegalLabelThreshExceeded {
          smiv2:oid "1.3.6.1.3.118.0.5";
          description
            "This notification is generated when the number of illegal
          label violations on a VRF as indicated by 
          mplsVpnVrfSecIllegalLabelViolations has exceeded 
          mplsVpnVrfSecIllegalLabelRcvThresh. The threshold is not 
          included in the varbind here because the value of 
          mplsVpnVrfSecIllegalLabelViolations should be one greater than 
          the threshold at the time this notification is issued.";
        }  // notification mplsNumVrfSecIllegalLabelThreshExceeded
      }  // module MPLS-VPN-MIB
    

© 2023 YumaWorks, Inc. All rights reserved.