- Remove PVC volume mount from k8s/deployment.yaml - Delete k8s/mib-pvc.yaml (no longer needed) - Update .gitignore to commit MIB files to git - Add mix import_mibs task to copy MIBs from LibreNMS - Add all MIB files from priv/mibs/ to git This fixes the multi-attach volume error in Kubernetes where new pods couldn't start because the RWO (ReadWriteOnce) PVC was attached to the old pod. MIBs are now part of the Docker image and can be used by all pods simultaneously.
1031 lines
36 KiB
Text
1031 lines
36 KiB
Text
-- ==============================
|
|
-- jnxMVPN-MIB: JUNIPER MVPN-MIB
|
|
--
|
|
-- ==============================
|
|
|
|
-- Note: This MIB is based on draft-zzhang-mvpn-mib-02 and is temporary & experimental.
|
|
-- This may be replaced in future with a standard MVPN MIB from IETF.
|
|
|
|
|
|
MCAST-VPN-MIB DEFINITIONS ::= BEGIN
|
|
|
|
IMPORTS
|
|
MODULE-IDENTITY, OBJECT-TYPE, NOTIFICATION-TYPE,
|
|
Unsigned32
|
|
FROM SNMPv2-SMI
|
|
|
|
MODULE-COMPLIANCE, OBJECT-GROUP, NOTIFICATION-GROUP
|
|
FROM SNMPv2-CONF
|
|
|
|
TruthValue, RowPointer, RowStatus, TimeStamp, TimeInterval
|
|
FROM SNMPv2-TC
|
|
|
|
SnmpAdminString
|
|
FROM SNMP-FRAMEWORK-MIB
|
|
|
|
InetAddress, InetAddressType
|
|
FROM INET-ADDRESS-MIB
|
|
|
|
MplsLabel
|
|
FROM MPLS-TC-STD-MIB
|
|
|
|
mplsVpnVrfName, MplsVpnRouteDistinguisher
|
|
FROM MPLS-VPN-MIB
|
|
|
|
ipMRouteEntry
|
|
FROM IPMROUTE-STD-MIB
|
|
|
|
-- Juniper specific
|
|
|
|
jnxMibs
|
|
FROM JUNIPER-SMI
|
|
|
|
jnxMvpnExperiment -- *** JNX ***
|
|
FROM JUNIPER-EXPERIMENT-MIB
|
|
|
|
JnxL2L3VpnMcastProviderTunnelType
|
|
FROM L2L3-VPN-MCAST-MIB
|
|
;
|
|
|
|
jnxMvpnMIB MODULE-IDENTITY
|
|
LAST-UPDATED "201307121200Z" -- 12 July 2013 12:00:00 GMT
|
|
ORGANIZATION "IETF Layer-3 Virtual Private
|
|
Networks Working Group."
|
|
CONTACT-INFO
|
|
" Jeffrey (Zhaohui) Zhang
|
|
zzhang@juniper.net
|
|
|
|
Comments and discussion to l3vpn@ietf.org"
|
|
|
|
DESCRIPTION
|
|
"This MIB contains managed object definitions for
|
|
multicast in BGP/MPLS IP VPNs defined by [MVPN].
|
|
Copyright (C) The Internet Society (2012)."
|
|
|
|
-- Revision history.
|
|
REVISION "201301071200Z" -- 07 January 2013 12:00:00 GMT
|
|
DESCRIPTION
|
|
"Initial version of the draft."
|
|
::= { jnxMvpnExperiment 1 } -- number to be assigned
|
|
|
|
-- Top level components of this MIB.
|
|
jnxMvpnNotifications OBJECT IDENTIFIER ::= { jnxMvpnMIB 0 }
|
|
|
|
-- tables, scalars
|
|
jnxMvpnObjects OBJECT IDENTIFIER ::= { jnxMvpnMIB 1 }
|
|
-- conformance
|
|
-- jnxMvpnConformance OBJECT IDENTIFIER ::= { jnxMvpnMIB 2 }
|
|
|
|
jnxMvpnScalars OBJECT IDENTIFIER ::= { jnxMvpnObjects 1 }
|
|
jnxMvpnGeneral OBJECT IDENTIFIER ::= { jnxMvpnObjects 2 }
|
|
jnxMvpnConfig OBJECT IDENTIFIER ::= { jnxMvpnObjects 3 }
|
|
jnxMvpnStates OBJECT IDENTIFIER ::= { jnxMvpnObjects 4 }
|
|
|
|
-- Scalar Objects
|
|
|
|
jnxMvpnMvrfNumber OBJECT-TYPE
|
|
SYNTAX Unsigned32
|
|
MAX-ACCESS read-only
|
|
STATUS current
|
|
DESCRIPTION
|
|
"The number of MVRFs for IPv4 or IPv6 or mLDP C-Multicast
|
|
that are present in this device."
|
|
::= { jnxMvpnScalars 1 }
|
|
|
|
jnxMvpnMvrfNumberV4 OBJECT-TYPE
|
|
SYNTAX Unsigned32
|
|
MAX-ACCESS read-only
|
|
STATUS current
|
|
DESCRIPTION
|
|
"The number of MVRFs for IPv4 C-Multicast that are present
|
|
in this device."
|
|
::= { jnxMvpnScalars 2 }
|
|
|
|
jnxMvpnMvrfNumberV6 OBJECT-TYPE
|
|
SYNTAX Unsigned32
|
|
MAX-ACCESS read-only
|
|
STATUS current
|
|
DESCRIPTION
|
|
"The number of MVRFs for IPv6 C-Multicast that are present
|
|
in this device."
|
|
::= { jnxMvpnScalars 3 }
|
|
|
|
jnxMvpnMvrfNumberPimV4 OBJECT-TYPE
|
|
SYNTAX Unsigned32
|
|
MAX-ACCESS read-only
|
|
STATUS current
|
|
DESCRIPTION
|
|
"The number of PIM-MVPN MVRFs for IPv4 C-Multicast that are present
|
|
in this device."
|
|
::= { jnxMvpnScalars 4 }
|
|
|
|
jnxMvpnMvrfNumberPimV6 OBJECT-TYPE
|
|
SYNTAX Unsigned32
|
|
MAX-ACCESS read-only
|
|
STATUS current
|
|
DESCRIPTION
|
|
"The number of PIM-MVPN MVRFs for IPv6 C-Multicast that are present
|
|
in this device."
|
|
::= { jnxMvpnScalars 5 }
|
|
|
|
jnxMvpnMvrfNumberBgpV4 OBJECT-TYPE
|
|
SYNTAX Unsigned32
|
|
MAX-ACCESS read-only
|
|
STATUS current
|
|
DESCRIPTION
|
|
"The number of BGP-MVPN MVRFs for IPv4 C-Multicast that are present
|
|
in this device."
|
|
::= { jnxMvpnScalars 6 }
|
|
|
|
jnxMvpnMvrfNumberBgpV6 OBJECT-TYPE
|
|
SYNTAX Unsigned32
|
|
MAX-ACCESS read-only
|
|
STATUS current
|
|
DESCRIPTION
|
|
"The number of BGP-MVPN MVRFs for IPv6 C-Multicast that are present
|
|
in this device."
|
|
::= { jnxMvpnScalars 7 }
|
|
|
|
jnxMvpnMvrfNumberMldp OBJECT-TYPE
|
|
SYNTAX Unsigned32
|
|
MAX-ACCESS read-only
|
|
STATUS current
|
|
DESCRIPTION
|
|
"The number of BGP-MVPN MVRFs for mLDP C-Multicast that are present
|
|
in this device."
|
|
::= { jnxMvpnScalars 8 }
|
|
|
|
jnxMvpnNotificationEnable OBJECT-TYPE
|
|
SYNTAX TruthValue
|
|
MAX-ACCESS read-only
|
|
STATUS current
|
|
DESCRIPTION
|
|
"If this object is TRUE, then the generation of all
|
|
notifications defined in this MIB is enabled."
|
|
DEFVAL { false }
|
|
::= { jnxMvpnScalars 9 }
|
|
|
|
-- General MVRF Information Table
|
|
|
|
jnxMvpnGeneralTable OBJECT-TYPE
|
|
SYNTAX SEQUENCE OF JnxMvpnGeneralEntry
|
|
MAX-ACCESS not-accessible
|
|
STATUS current
|
|
DESCRIPTION
|
|
"This table specifies the general information about the MVRFs
|
|
present in this device."
|
|
::= { jnxMvpnGeneral 1 }
|
|
|
|
jnxMvpnGeneralEntry OBJECT-TYPE
|
|
SYNTAX JnxMvpnGeneralEntry
|
|
MAX-ACCESS not-accessible
|
|
STATUS current
|
|
DESCRIPTION
|
|
"An entry in this table is created for every MVRF in the
|
|
device."
|
|
INDEX { mplsVpnVrfName }
|
|
::= { jnxMvpnGeneralTable 1 }
|
|
|
|
JnxMvpnGeneralEntry ::= SEQUENCE {
|
|
jnxMvpnGenOperStatusChange INTEGER,
|
|
jnxMvpnGenOperChangeTime TimeStamp,
|
|
jnxMvpnGenCmcastRouteProtocolV4 INTEGER,
|
|
jnxMvpnGenCmcastRouteProtocolV6 INTEGER,
|
|
jnxMvpnGenIpmsiConfigV4 RowPointer,
|
|
jnxMvpnGenIpmsiConfigV6 RowPointer,
|
|
jnxMvpnGenInterAsPmsiConfigV4 RowPointer,
|
|
jnxMvpnGenInterAsPmsiConfigV6 RowPointer,
|
|
jnxMvpnGenRowStatus RowStatus
|
|
}
|
|
|
|
jnxMvpnGenOperStatusChange OBJECT-TYPE
|
|
SYNTAX INTEGER { createdMvrf(1),
|
|
deletedMvrf(2),
|
|
modifiedMvrfIpmsiConfig(3),
|
|
modifiedMvrfSpmsiConfig(4)
|
|
}
|
|
MAX-ACCESS read-only
|
|
STATUS current
|
|
DESCRIPTION
|
|
"This object describes the last operational change that
|
|
happened for the given MVRF.
|
|
|
|
createdMvrf - indicates that the MVRF was created in the
|
|
device.
|
|
|
|
deletedMvrf - indicates that the MVRF was deleted from the
|
|
device. A row in this table will never have
|
|
mvpnGenOperStatusChange equal to deletedMvrf(2),
|
|
because in that case the row itself will be deleted from the
|
|
table. This value for mvpnGenOperStatusChange is defined
|
|
mainly for use in mvpnMvrfChange notification.
|
|
|
|
modifiedMvrfIpmsiConfig - indicates that the I-PMSI
|
|
for the MVRF was configured, deleted or changed.
|
|
|
|
modifiedMvrfSpmsiConfig - indicates that the S-PMSI
|
|
for the MVRF was configured, deleted or changed."
|
|
DEFVAL { createdMvrf }
|
|
::= { jnxMvpnGeneralEntry 1 }
|
|
|
|
jnxMvpnGenOperChangeTime OBJECT-TYPE
|
|
SYNTAX TimeStamp
|
|
MAX-ACCESS read-only
|
|
STATUS current
|
|
DESCRIPTION
|
|
"The time at which the last operational change for the MVRF in
|
|
question took place. The last operational change is specified
|
|
by mvpnGenOperStatusChange."
|
|
::= { jnxMvpnGeneralEntry 2 }
|
|
|
|
jnxMvpnGenCmcastRouteProtocolV4 OBJECT-TYPE
|
|
SYNTAX INTEGER { pim (1),
|
|
bgp (2)
|
|
}
|
|
MAX-ACCESS read-only
|
|
STATUS current
|
|
DESCRIPTION
|
|
"Protocol used to signal IPv4 C-multicast states across the
|
|
provider core.
|
|
pim(1): PIM (PIM-MVPN).
|
|
bgp(2): BGP (BGP-MVPN)."
|
|
::= { jnxMvpnGeneralEntry 3 }
|
|
|
|
jnxMvpnGenCmcastRouteProtocolV6 OBJECT-TYPE
|
|
SYNTAX INTEGER { pim (1),
|
|
bgp (2)
|
|
}
|
|
MAX-ACCESS read-only
|
|
STATUS current
|
|
DESCRIPTION
|
|
"Protocol used to signal IPv6 C-multicast states across the
|
|
provider core.
|
|
pim(1): PIM (PIM-MVPN).
|
|
bgp(2): BGP (BGP-MVPN)."
|
|
::= { jnxMvpnGeneralEntry 4 }
|
|
|
|
jnxMvpnGenIpmsiConfigV4 OBJECT-TYPE
|
|
SYNTAX RowPointer
|
|
MAX-ACCESS read-only
|
|
STATUS current
|
|
DESCRIPTION
|
|
" This points to a row in MvpnPmsiConfigTable,
|
|
for I-PMSI configuration for IPv4."
|
|
|
|
::= { jnxMvpnGeneralEntry 5 }
|
|
|
|
jnxMvpnGenIpmsiConfigV6 OBJECT-TYPE
|
|
SYNTAX RowPointer
|
|
MAX-ACCESS read-only
|
|
STATUS current
|
|
DESCRIPTION
|
|
" This points to a row in MvpnPmsiConfigTable,
|
|
for I-PMSI configuration for IPv6."
|
|
|
|
::= { jnxMvpnGeneralEntry 6 }
|
|
|
|
jnxMvpnGenInterAsPmsiConfigV4 OBJECT-TYPE
|
|
SYNTAX RowPointer
|
|
MAX-ACCESS read-only
|
|
STATUS current
|
|
DESCRIPTION
|
|
" This points to a row in MvpnPmsiConfigTable,
|
|
for inter-as I-PMSI configuration for IPv4, in case of segmented
|
|
inter-as provider tunnels."
|
|
|
|
::= { jnxMvpnGeneralEntry 7 }
|
|
|
|
jnxMvpnGenInterAsPmsiConfigV6 OBJECT-TYPE
|
|
SYNTAX RowPointer
|
|
MAX-ACCESS read-only
|
|
STATUS current
|
|
DESCRIPTION
|
|
"This points to a row in MvpnPmsiConfigTable,
|
|
for inter-as I-PMSI configuration for IPv6, in case of segmented
|
|
inter-as provider tunnels."
|
|
|
|
::= { jnxMvpnGeneralEntry 8 }
|
|
|
|
jnxMvpnGenRowStatus OBJECT-TYPE
|
|
SYNTAX RowStatus
|
|
MAX-ACCESS read-only
|
|
STATUS current
|
|
DESCRIPTION
|
|
"This is used to create or delete a row in this table."
|
|
::= { jnxMvpnGeneralEntry 9 }
|
|
|
|
-- General BGP-MVPN table
|
|
|
|
jnxMvpnBgpGeneralTable OBJECT-TYPE
|
|
SYNTAX SEQUENCE OF JnxMvpnBgpGeneralEntry
|
|
MAX-ACCESS not-accessible
|
|
STATUS current
|
|
DESCRIPTION
|
|
"This table augments the mvpnGeneralTable and is for BGP-MVPN
|
|
specific information."
|
|
::= { jnxMvpnGeneral 2 }
|
|
|
|
jnxMvpnBgpGeneralEntry OBJECT-TYPE
|
|
SYNTAX JnxMvpnBgpGeneralEntry
|
|
MAX-ACCESS not-accessible
|
|
STATUS current
|
|
DESCRIPTION
|
|
"The mvpnBgpGeneralEntry matches and augments an mvpnGeneralEntry
|
|
for a BGP-MVPN instance, with BGP-MVPN specific informatoin."
|
|
AUGMENTS { jnxMvpnGeneralEntry }
|
|
::= { jnxMvpnBgpGeneralTable 1 }
|
|
|
|
JnxMvpnBgpGeneralEntry ::= SEQUENCE {
|
|
jnxMvpnBgpGenMode INTEGER,
|
|
jnxMvpnBgpGenUmhSelection INTEGER,
|
|
jnxMvpnBgpGenSiteType INTEGER,
|
|
jnxMvpnBgpGenCmcastImportRt MplsVpnRouteDistinguisher,
|
|
jnxMvpnBgpGenSrcAs Unsigned32,
|
|
jnxMvpnBgpGenSptnlLimit Unsigned32
|
|
}
|
|
|
|
jnxMvpnBgpGenMode OBJECT-TYPE
|
|
SYNTAX INTEGER {
|
|
rpt-spt (1),
|
|
spt-only (2)
|
|
}
|
|
MAX-ACCESS read-only
|
|
STATUS current
|
|
DESCRIPTION
|
|
"For two different BGP-MVPN modes:
|
|
rpt-spt(1): intersite-site shared tree mode
|
|
spt-only(2): inter-site source-only tree mode."
|
|
::= { jnxMvpnBgpGeneralEntry 1}
|
|
|
|
jnxMvpnBgpGenUmhSelection OBJECT-TYPE
|
|
SYNTAX INTEGER {
|
|
highest-pe-address (1),
|
|
c-root-group-hashing (2),
|
|
ucast-umh-route (3)
|
|
}
|
|
MAX-ACCESS read-only
|
|
STATUS current
|
|
DESCRIPTION
|
|
"The UMH selection method for this mvpn, as specified in section
|
|
5.1.3 of [MVPN]:
|
|
highest-pe-address (1): PE with the highest address
|
|
c-root-group-hashing (2): hashing based on (c-root, c-group)
|
|
uncast-umh-route (3): per ucast route towards c-root"
|
|
|
|
::= { jnxMvpnBgpGeneralEntry 2}
|
|
|
|
jnxMvpnBgpGenSiteType OBJECT-TYPE
|
|
SYNTAX INTEGER {
|
|
sender-receiver (1),
|
|
receiver-only (2),
|
|
sender-only (3)
|
|
}
|
|
MAX-ACCESS read-only
|
|
STATUS current
|
|
DESCRIPTION
|
|
"Whether this site is a receiver-only site or not.
|
|
sender-receiver (1): both sender and receiver site.
|
|
receiver-only (2): receiver-only site.
|
|
sender-only (3): sender-only site."
|
|
::= { jnxMvpnBgpGeneralEntry 3}
|
|
|
|
jnxMvpnBgpGenCmcastImportRt OBJECT-TYPE
|
|
SYNTAX MplsVpnRouteDistinguisher
|
|
MAX-ACCESS read-only
|
|
STATUS current
|
|
DESCRIPTION
|
|
"The C-multicast Import RT that this device adds to
|
|
unicast vpn routes that it advertises for this mvpn."
|
|
::= { jnxMvpnBgpGeneralEntry 4}
|
|
|
|
jnxMvpnBgpGenSrcAs OBJECT-TYPE
|
|
SYNTAX Unsigned32
|
|
MAX-ACCESS read-only
|
|
STATUS current
|
|
DESCRIPTION
|
|
"The Source AS number in Source AS Extended Community that this device
|
|
adds to the unicast vpn routes that it advertises for this mvpn."
|
|
::= { jnxMvpnBgpGeneralEntry 5}
|
|
|
|
jnxMvpnBgpGenSptnlLimit OBJECT-TYPE
|
|
SYNTAX Unsigned32
|
|
MAX-ACCESS read-only
|
|
STATUS current
|
|
DESCRIPTION
|
|
"The max number of selective provider tunnels this device allows
|
|
for this mvpn."
|
|
::= { jnxMvpnBgpGeneralEntry 6}
|
|
|
|
-- PMSI Configuration Table
|
|
|
|
jnxMvpnPmsiConfigTable OBJECT-TYPE
|
|
SYNTAX SEQUENCE OF JnxMvpnPmsiConfigEntry
|
|
MAX-ACCESS not-accessible
|
|
STATUS current
|
|
DESCRIPTION
|
|
"This table specifies the configured PMSIs."
|
|
::= { jnxMvpnConfig 1 }
|
|
|
|
jnxMvpnPmsiConfigEntry OBJECT-TYPE
|
|
SYNTAX JnxMvpnPmsiConfigEntry
|
|
MAX-ACCESS not-accessible
|
|
STATUS current
|
|
DESCRIPTION
|
|
"An entry in this table is created for each PMSI configured
|
|
on this router. It can be referred to by either I-PMSI
|
|
configuration (in mvpnGeneralEntry) or S-PMSI configuration
|
|
(in mvpnSpmsiConfigEntry)"
|
|
INDEX { jnxMvpnPmsiConfigTunnelType,
|
|
jnxMvpnPmsiConfigTunnelAuxInfo,
|
|
jnxMvpnPmsiConfigTunnelPimGroupAddressType,
|
|
jnxMvpnPmsiConfigTunnelPimGroupAddress,
|
|
jnxMvpnPmsiConfigTunnelOrTemplateName }
|
|
::= { jnxMvpnPmsiConfigTable 1 }
|
|
|
|
JnxMvpnPmsiConfigEntry ::= SEQUENCE {
|
|
jnxMvpnPmsiConfigTunnelType JnxL2L3VpnMcastProviderTunnelType,
|
|
jnxMvpnPmsiConfigTunnelAuxInfo Unsigned32,
|
|
jnxMvpnPmsiConfigTunnelPimGroupAddressType InetAddressType,
|
|
jnxMvpnPmsiConfigTunnelPimGroupAddress InetAddress,
|
|
jnxMvpnPmsiConfigTunnelOrTemplateName SnmpAdminString,
|
|
jnxMvpnPmsiConfigEncapsType INTEGER,
|
|
jnxMvpnPmsiConfigRowStatus RowStatus
|
|
}
|
|
|
|
jnxMvpnPmsiConfigTunnelType OBJECT-TYPE
|
|
SYNTAX JnxL2L3VpnMcastProviderTunnelType
|
|
MAX-ACCESS not-accessible
|
|
STATUS current
|
|
DESCRIPTION
|
|
"Type of tunnel used to instantiate the PMSI."
|
|
::= { jnxMvpnPmsiConfigEntry 1 }
|
|
|
|
jnxMvpnPmsiConfigTunnelAuxInfo OBJECT-TYPE
|
|
SYNTAX Unsigned32
|
|
MAX-ACCESS not-accessible
|
|
STATUS current
|
|
DESCRIPTION
|
|
"Additional tunnel information depending on the type.
|
|
pim: In case of S-PMSI, number of groups starting at
|
|
mvpnPmsiConfigTunnelPimGroupAddress.
|
|
This allows a range of PIM provider tunnel
|
|
group addresses to be specified in S-PMSI case.
|
|
In I-PMSI case, it must be 1.
|
|
rsvp-p2mp: 1 for statically specified rsvp-p2mp tunnel
|
|
2 for dynamically created rsvp-p2mp tunnel
|
|
ingress-replication:
|
|
1 for using any existing p2p/mp2p lsp
|
|
2 for dynamically creating new p2p lsp"
|
|
::= { jnxMvpnPmsiConfigEntry 2 }
|
|
|
|
jnxMvpnPmsiConfigTunnelPimGroupAddressType OBJECT-TYPE
|
|
SYNTAX InetAddressType
|
|
MAX-ACCESS not-accessible
|
|
STATUS current
|
|
DESCRIPTION
|
|
"In case of PIM provider tunnel, the type of tunnel address."
|
|
::= { jnxMvpnPmsiConfigEntry 3 }
|
|
|
|
jnxMvpnPmsiConfigTunnelPimGroupAddress OBJECT-TYPE
|
|
SYNTAX InetAddress
|
|
MAX-ACCESS not-accessible
|
|
STATUS current
|
|
DESCRIPTION
|
|
"In case of PIM provider tunnel, the provider tunnel address."
|
|
::= { jnxMvpnPmsiConfigEntry 4 }
|
|
|
|
jnxMvpnPmsiConfigTunnelOrTemplateName OBJECT-TYPE
|
|
SYNTAX SnmpAdminString
|
|
MAX-ACCESS not-accessible
|
|
STATUS current
|
|
DESCRIPTION
|
|
"The tunnel name or template name used to create tunnels.
|
|
Depending on mvpnPmsiConfigTunnelType and
|
|
mvpnPmsiConfigTunnelAuxInfo:
|
|
|
|
dynamically created rsvp-p2mp tunnel: template name
|
|
statically specified rsvp-p2mp tunnel: tunnel name
|
|
ingress-replication using
|
|
dynamically created lsps: template name
|
|
other: null"
|
|
::= { jnxMvpnPmsiConfigEntry 5 }
|
|
|
|
jnxMvpnPmsiConfigEncapsType OBJECT-TYPE
|
|
SYNTAX INTEGER { greIp (1),
|
|
ipIp (2),
|
|
mpls (3)
|
|
}
|
|
MAX-ACCESS read-only
|
|
STATUS current
|
|
DESCRIPTION
|
|
"The encapsulation type to be used, in case of PIM tunnel or
|
|
ingress-replication."
|
|
::= { jnxMvpnPmsiConfigEntry 6 }
|
|
|
|
jnxMvpnPmsiConfigRowStatus OBJECT-TYPE
|
|
SYNTAX RowStatus
|
|
MAX-ACCESS read-only
|
|
STATUS current
|
|
DESCRIPTION
|
|
"Used to create/modify/delete a row in this table."
|
|
::= { jnxMvpnPmsiConfigEntry 7 }
|
|
|
|
-- S-PMSI configuration table
|
|
|
|
jnxMvpnSpmsiConfigTable OBJECT-TYPE
|
|
SYNTAX SEQUENCE OF JnxMvpnSpmsiConfigEntry
|
|
MAX-ACCESS not-accessible
|
|
STATUS current
|
|
DESCRIPTION
|
|
"This table specifies S-PMSI configuration."
|
|
::= { jnxMvpnConfig 2 }
|
|
|
|
jnxMvpnSpmsiConfigEntry OBJECT-TYPE
|
|
SYNTAX JnxMvpnSpmsiConfigEntry
|
|
MAX-ACCESS not-accessible
|
|
STATUS current
|
|
DESCRIPTION
|
|
"An entry is created for each S-PMSI configuration."
|
|
INDEX { mplsVpnVrfName,
|
|
jnxMvpnSpmsiConfigCmcastAddressType,
|
|
jnxMvpnSpmsiConfigCmcastGroupAddress,
|
|
jnxMvpnSpmsiConfigCmcastGroupPrefixLen,
|
|
jnxMvpnSpmsiConfigCmcastSourceAddress,
|
|
jnxMvpnSpmsiConfigCmcastSourcePrefixLen }
|
|
::= { jnxMvpnSpmsiConfigTable 1 }
|
|
|
|
JnxMvpnSpmsiConfigEntry ::= SEQUENCE {
|
|
jnxMvpnSpmsiConfigCmcastAddressType InetAddressType,
|
|
jnxMvpnSpmsiConfigCmcastGroupAddress InetAddress,
|
|
jnxMvpnSpmsiConfigCmcastGroupPrefixLen Unsigned32,
|
|
jnxMvpnSpmsiConfigCmcastSourceAddress InetAddress,
|
|
jnxMvpnSpmsiConfigCmcastSourcePrefixLen Unsigned32,
|
|
jnxMvpnSpmsiConfigThreshold Unsigned32,
|
|
jnxMvpnSpmsiConfigPmsiPointer RowPointer,
|
|
jnxMvpnSpmsiConfigRowStatus RowStatus
|
|
}
|
|
|
|
jnxMvpnSpmsiConfigCmcastAddressType OBJECT-TYPE
|
|
SYNTAX InetAddressType
|
|
MAX-ACCESS not-accessible
|
|
STATUS current
|
|
DESCRIPTION
|
|
"Type of C-multicast address"
|
|
::= { jnxMvpnSpmsiConfigEntry 1 }
|
|
|
|
jnxMvpnSpmsiConfigCmcastGroupAddress OBJECT-TYPE
|
|
SYNTAX InetAddress
|
|
MAX-ACCESS not-accessible
|
|
STATUS current
|
|
DESCRIPTION
|
|
"C-multicast group address"
|
|
::= { jnxMvpnSpmsiConfigEntry 2 }
|
|
|
|
jnxMvpnSpmsiConfigCmcastGroupPrefixLen OBJECT-TYPE
|
|
SYNTAX Unsigned32
|
|
MAX-ACCESS not-accessible
|
|
STATUS current
|
|
DESCRIPTION
|
|
"C-multicast group address prefix length.
|
|
A group 0 (or ::0) with prefix length 32 (or 128)
|
|
indicates wildcard group, while a group 0 (or ::0)
|
|
with prefix length 0 indicates any group."
|
|
::= { jnxMvpnSpmsiConfigEntry 3 }
|
|
|
|
jnxMvpnSpmsiConfigCmcastSourceAddress OBJECT-TYPE
|
|
SYNTAX InetAddress
|
|
MAX-ACCESS not-accessible
|
|
STATUS current
|
|
DESCRIPTION
|
|
"C-multicast source address"
|
|
::= { jnxMvpnSpmsiConfigEntry 4 }
|
|
|
|
jnxMvpnSpmsiConfigCmcastSourcePrefixLen OBJECT-TYPE
|
|
SYNTAX Unsigned32
|
|
MAX-ACCESS read-only
|
|
STATUS current
|
|
DESCRIPTION
|
|
"C-multicast source address prefix length.
|
|
A source 0 (or ::0) with prefix length 32 (or 128)
|
|
indicates a wildcard source, while a source 0 (or ::0)
|
|
with prefix length 0 indicates any source."
|
|
::= { jnxMvpnSpmsiConfigEntry 5 }
|
|
|
|
jnxMvpnSpmsiConfigThreshold OBJECT-TYPE
|
|
SYNTAX Unsigned32 (0..4294967295)
|
|
UNITS "kilobits per second"
|
|
MAX-ACCESS read-only
|
|
STATUS current
|
|
DESCRIPTION
|
|
"The bandwidth threshold value which when exceeded for a
|
|
multicast routing entry in the given MVRF, triggers usage
|
|
of S-PMSI."
|
|
::= { jnxMvpnSpmsiConfigEntry 6 }
|
|
|
|
jnxMvpnSpmsiConfigPmsiPointer OBJECT-TYPE
|
|
SYNTAX RowPointer
|
|
MAX-ACCESS read-only
|
|
STATUS current
|
|
DESCRIPTION
|
|
"This points to a row in MvpnPmsiConfigTable,
|
|
to specify tunnel attributes."
|
|
::= { jnxMvpnSpmsiConfigEntry 7 }
|
|
|
|
jnxMvpnSpmsiConfigRowStatus OBJECT-TYPE
|
|
SYNTAX RowStatus
|
|
MAX-ACCESS read-only
|
|
STATUS current
|
|
DESCRIPTION
|
|
"Used to create/modify/delete a row in this table."
|
|
::= { jnxMvpnSpmsiConfigEntry 8 }
|
|
|
|
-- Table of intra-as I-PMSIs advertised/received
|
|
|
|
jnxMvpnIpmsiTable OBJECT-TYPE
|
|
SYNTAX SEQUENCE OF JnxMvpnIpmsiEntry
|
|
MAX-ACCESS not-accessible
|
|
STATUS current
|
|
DESCRIPTION
|
|
"This table is for all advertised/received I-PMSI
|
|
advertisements."
|
|
::= { jnxMvpnStates 1 }
|
|
|
|
jnxMvpnIpmsiEntry OBJECT-TYPE
|
|
SYNTAX JnxMvpnIpmsiEntry
|
|
MAX-ACCESS not-accessible
|
|
STATUS current
|
|
DESCRIPTION
|
|
"An entry in this table corresponds to an I-PMSI
|
|
advertisement that is advertised/received on this router.
|
|
This represents all the sender PEs in the MVPN,
|
|
with the provider tunnel they use to send traffic."
|
|
INDEX { mplsVpnVrfName,
|
|
jnxMvpnIpmsiAfi,
|
|
jnxMvpnIpmsiRD,
|
|
jnxMvpnIpmsiOrigAddrType,
|
|
jnxMvpnIpmsiOrigAddress }
|
|
::= { jnxMvpnIpmsiTable 1 }
|
|
|
|
JnxMvpnIpmsiEntry ::= SEQUENCE {
|
|
jnxMvpnIpmsiAfi Unsigned32,
|
|
jnxMvpnIpmsiRD MplsVpnRouteDistinguisher,
|
|
jnxMvpnIpmsiOrigAddrType InetAddressType,
|
|
jnxMvpnIpmsiOrigAddress InetAddress,
|
|
jnxMvpnIpmsiUpTime TimeInterval,
|
|
jnxMvpnIpmsiAttribute RowPointer
|
|
}
|
|
|
|
jnxMvpnIpmsiAfi OBJECT-TYPE
|
|
SYNTAX Unsigned32 (1|2)
|
|
MAX-ACCESS not-accessible
|
|
STATUS current
|
|
DESCRIPTION
|
|
"The address family this I-PMSI is for.
|
|
1 - IPv4
|
|
2 - IPv6"
|
|
::= { jnxMvpnIpmsiEntry 1 }
|
|
|
|
jnxMvpnIpmsiRD OBJECT-TYPE
|
|
SYNTAX MplsVpnRouteDistinguisher
|
|
MAX-ACCESS not-accessible
|
|
STATUS current
|
|
DESCRIPTION
|
|
"The Route Distinguisher in this I-PMSI."
|
|
::= { jnxMvpnIpmsiEntry 2 }
|
|
|
|
jnxMvpnIpmsiOrigAddrType OBJECT-TYPE
|
|
SYNTAX InetAddressType
|
|
MAX-ACCESS not-accessible
|
|
STATUS current
|
|
DESCRIPTION
|
|
"The Internet address type of mvpnIpmsiOrigAddress."
|
|
::= { jnxMvpnIpmsiEntry 3 }
|
|
|
|
jnxMvpnIpmsiOrigAddress OBJECT-TYPE
|
|
SYNTAX InetAddress
|
|
MAX-ACCESS not-accessible
|
|
STATUS current
|
|
DESCRIPTION
|
|
"The BGP address of the device that originated the I-PMSI."
|
|
::= { jnxMvpnIpmsiEntry 4 }
|
|
|
|
jnxMvpnIpmsiUpTime OBJECT-TYPE
|
|
SYNTAX TimeInterval
|
|
MAX-ACCESS read-only
|
|
STATUS current
|
|
DESCRIPTION
|
|
"The time since this I-PMSI was first
|
|
advertised/received by the device."
|
|
::= { jnxMvpnIpmsiEntry 5 }
|
|
|
|
jnxMvpnIpmsiAttribute OBJECT-TYPE
|
|
SYNTAX RowPointer
|
|
MAX-ACCESS read-only
|
|
STATUS current
|
|
DESCRIPTION
|
|
"Points to a row in the mvpnPmsiTunnelAttributeTable."
|
|
::= { jnxMvpnIpmsiEntry 6 }
|
|
|
|
-- Table of inter-as I-PMSIs advertised/received
|
|
|
|
jnxMvpnInterasIpmsiTable OBJECT-TYPE
|
|
SYNTAX SEQUENCE OF JnxMvpnInterasIpmsiEntry
|
|
MAX-ACCESS not-accessible
|
|
STATUS current
|
|
DESCRIPTION
|
|
"This table is for all advertised/received inter-as I-PMSI
|
|
advertisements."
|
|
::= { jnxMvpnStates 2 }
|
|
|
|
jnxMvpnInterasIpmsiEntry OBJECT-TYPE
|
|
SYNTAX JnxMvpnInterasIpmsiEntry
|
|
MAX-ACCESS not-accessible
|
|
STATUS current
|
|
DESCRIPTION
|
|
"An entry in this table corresponds to an inter-as I-PMSI
|
|
advertisement that is advertised/received on this router.
|
|
This represents all the ASes in the MVPN,
|
|
with the provider tunnel used to send traffic to."
|
|
INDEX { mplsVpnVrfName,
|
|
jnxMvpnInterasIpmsiAfi,
|
|
jnxMvpnInterasIpmsiRD,
|
|
jnxMvpnInterasIpmsiSrcAs }
|
|
::= { jnxMvpnInterasIpmsiTable 1 }
|
|
|
|
JnxMvpnInterasIpmsiEntry ::= SEQUENCE {
|
|
jnxMvpnInterasIpmsiAfi Unsigned32,
|
|
jnxMvpnInterasIpmsiRD MplsVpnRouteDistinguisher,
|
|
jnxMvpnInterasIpmsiSrcAs Unsigned32,
|
|
jnxMvpnInterasIpmsiAttribute RowPointer
|
|
}
|
|
|
|
jnxMvpnInterasIpmsiAfi OBJECT-TYPE
|
|
SYNTAX Unsigned32 (1|2)
|
|
MAX-ACCESS not-accessible
|
|
STATUS current
|
|
DESCRIPTION
|
|
"The address family this I-PMSI is for.
|
|
1 - IPv4
|
|
2 - IPv6"
|
|
::= { jnxMvpnInterasIpmsiEntry 1 }
|
|
|
|
jnxMvpnInterasIpmsiRD OBJECT-TYPE
|
|
SYNTAX MplsVpnRouteDistinguisher
|
|
MAX-ACCESS not-accessible
|
|
STATUS current
|
|
DESCRIPTION
|
|
"The Route Distinguisher in this inter-as I-PMSI."
|
|
::= { jnxMvpnInterasIpmsiEntry 2 }
|
|
|
|
jnxMvpnInterasIpmsiSrcAs OBJECT-TYPE
|
|
SYNTAX Unsigned32
|
|
MAX-ACCESS not-accessible
|
|
STATUS current
|
|
DESCRIPTION
|
|
"The source-as in this inter-as I-PMSI."
|
|
::= { jnxMvpnInterasIpmsiEntry 3 }
|
|
|
|
jnxMvpnInterasIpmsiAttribute OBJECT-TYPE
|
|
SYNTAX RowPointer
|
|
MAX-ACCESS read-only
|
|
STATUS current
|
|
DESCRIPTION
|
|
"Points to a row in the mvpnPmsiTunnelAttributeTable."
|
|
::= { jnxMvpnInterasIpmsiEntry 4 }
|
|
|
|
-- Table of S-PMSIs advertised/received
|
|
|
|
jnxMvpnSpmsiTable OBJECT-TYPE
|
|
SYNTAX SEQUENCE OF JnxMvpnSpmsiEntry
|
|
MAX-ACCESS not-accessible
|
|
STATUS current
|
|
DESCRIPTION
|
|
"This table has information about the S-PMSIs sent/received
|
|
by a device."
|
|
::= { jnxMvpnStates 3 }
|
|
|
|
jnxMvpnSpmsiEntry OBJECT-TYPE
|
|
SYNTAX JnxMvpnSpmsiEntry
|
|
MAX-ACCESS not-accessible
|
|
STATUS current
|
|
DESCRIPTION
|
|
"An entry in this table is created or updated for every S-PMSI
|
|
advertised/received in a particular MVRF."
|
|
INDEX { mplsVpnVrfName,
|
|
jnxMvpnSpmsiOrigAddrType,
|
|
jnxMvpnSpmsiOrigAddress,
|
|
jnxMvpnSpmsiCmcastAddrType,
|
|
jnxMvpnSpmsiCmcastGroup,
|
|
jnxMvpnSpmsiCmcastGroupPrefixLen,
|
|
jnxMvpnSpmsiCmcastSource,
|
|
jnxMvpnSpmsiCmcastSourcePrefixLen}
|
|
::= { jnxMvpnSpmsiTable 1 }
|
|
|
|
JnxMvpnSpmsiEntry ::= SEQUENCE {
|
|
jnxMvpnSpmsiOrigAddrType InetAddressType,
|
|
jnxMvpnSpmsiOrigAddress InetAddress,
|
|
jnxMvpnSpmsiCmcastAddrType InetAddressType,
|
|
jnxMvpnSpmsiCmcastGroup InetAddress,
|
|
jnxMvpnSpmsiCmcastGroupPrefixLen Unsigned32,
|
|
jnxMvpnSpmsiCmcastSource InetAddress,
|
|
jnxMvpnSpmsiCmcastSourcePrefixLen Unsigned32,
|
|
jnxMvpnSpmsiTunnelAttribute RowPointer,
|
|
jnxMvpnSpmsiUpTime TimeInterval,
|
|
jnxMvpnSpmsiExpTime TimeInterval,
|
|
jnxMvpnSpmsiRefCnt Unsigned32
|
|
}
|
|
|
|
jnxMvpnSpmsiOrigAddrType OBJECT-TYPE
|
|
SYNTAX InetAddressType
|
|
MAX-ACCESS not-accessible
|
|
STATUS current
|
|
DESCRIPTION
|
|
"The Internet address type of mvpnSpmsiOrigAddress."
|
|
::= { jnxMvpnSpmsiEntry 1 }
|
|
|
|
jnxMvpnSpmsiOrigAddress OBJECT-TYPE
|
|
SYNTAX InetAddress
|
|
MAX-ACCESS not-accessible
|
|
STATUS current
|
|
DESCRIPTION
|
|
"The BGP address of the device that originated the S-PMSI."
|
|
::= { jnxMvpnSpmsiEntry 2 }
|
|
|
|
jnxMvpnSpmsiCmcastAddrType OBJECT-TYPE
|
|
SYNTAX InetAddressType
|
|
MAX-ACCESS not-accessible
|
|
STATUS current
|
|
DESCRIPTION
|
|
"The Internet address type of mvpnSpmsiCmcastGroup/Source."
|
|
::= { jnxMvpnSpmsiEntry 3 }
|
|
|
|
jnxMvpnSpmsiCmcastGroup OBJECT-TYPE
|
|
SYNTAX InetAddress
|
|
MAX-ACCESS not-accessible
|
|
STATUS current
|
|
DESCRIPTION
|
|
"S-PMSI C-multicast group address.
|
|
If it is 0 (or ::0), this is a wildcard group,
|
|
and mvpnSpmsiCmcastGroupPrefixLen must be 32 (or 128)."
|
|
::= { jnxMvpnSpmsiEntry 4 }
|
|
|
|
jnxMvpnSpmsiCmcastGroupPrefixLen OBJECT-TYPE
|
|
SYNTAX Unsigned32
|
|
MAX-ACCESS not-accessible
|
|
STATUS current
|
|
DESCRIPTION
|
|
"S-PMSI C-multicast group address prefix length."
|
|
::= { jnxMvpnSpmsiEntry 5 }
|
|
|
|
jnxMvpnSpmsiCmcastSource OBJECT-TYPE
|
|
SYNTAX InetAddress
|
|
MAX-ACCESS not-accessible
|
|
STATUS current
|
|
DESCRIPTION
|
|
"S-PMSI C-multicast source address
|
|
If it is 0 (or ::0), this is a wildcard source,
|
|
and mvpnSpmsiCmcastSourcePrefixLen must be 32 (or 128)."
|
|
::= { jnxMvpnSpmsiEntry 6 }
|
|
|
|
jnxMvpnSpmsiCmcastSourcePrefixLen OBJECT-TYPE
|
|
SYNTAX Unsigned32
|
|
MAX-ACCESS not-accessible
|
|
STATUS current
|
|
DESCRIPTION
|
|
"S-PMSI C-multicast source address prefix length."
|
|
::= { jnxMvpnSpmsiEntry 7 }
|
|
|
|
jnxMvpnSpmsiTunnelAttribute OBJECT-TYPE
|
|
SYNTAX RowPointer
|
|
MAX-ACCESS read-only
|
|
STATUS current
|
|
DESCRIPTION
|
|
"A row pointer to the mvpnPmsiTunnelAttributeTable"
|
|
::= { jnxMvpnSpmsiEntry 8 }
|
|
|
|
jnxMvpnSpmsiUpTime OBJECT-TYPE
|
|
SYNTAX TimeInterval
|
|
MAX-ACCESS read-only
|
|
STATUS current
|
|
DESCRIPTION
|
|
"The time since this S-PMSI
|
|
was first advertised/received by the device."
|
|
::= { jnxMvpnSpmsiEntry 9 }
|
|
|
|
jnxMvpnSpmsiExpTime OBJECT-TYPE
|
|
SYNTAX TimeInterval
|
|
MAX-ACCESS read-only
|
|
STATUS current
|
|
DESCRIPTION
|
|
"For UDP-based S-PMSI signaling for PIM-MVPN,
|
|
the amount of time remaining before this
|
|
received S-PMSI Join Message expires,
|
|
or the next S-PMSI Join Message refresh is to be
|
|
advertised again from the device.
|
|
Otherwise, it is zero."
|
|
::= { jnxMvpnSpmsiEntry 10 }
|
|
|
|
jnxMvpnSpmsiRefCnt OBJECT-TYPE
|
|
SYNTAX Unsigned32
|
|
MAX-ACCESS read-only
|
|
STATUS current
|
|
DESCRIPTION
|
|
"The number of c-multicast routes that are mapped to
|
|
this S-PMSI."
|
|
::= { jnxMvpnSpmsiEntry 11 }
|
|
|
|
-- Table of multicast routes in an MVPN
|
|
|
|
jnxMvpnMrouteTable OBJECT-TYPE
|
|
SYNTAX SEQUENCE OF JnxMvpnMrouteEntry
|
|
MAX-ACCESS not-accessible
|
|
STATUS current
|
|
DESCRIPTION
|
|
"This table augments ipMcastRouteTable, to provide some MVPN
|
|
specific information."
|
|
::= { jnxMvpnStates 4 }
|
|
|
|
jnxMvpnMrouteEntry OBJECT-TYPE
|
|
SYNTAX JnxMvpnMrouteEntry
|
|
MAX-ACCESS not-accessible
|
|
STATUS current
|
|
DESCRIPTION
|
|
"The mvpnMrouteEntry matches and augments an ipMcastRouteTable,
|
|
with MVPN specific information, such as PMSI used."
|
|
AUGMENTS { ipMRouteEntry }
|
|
::= { jnxMvpnMrouteTable 1 }
|
|
|
|
JnxMvpnMrouteEntry ::= SEQUENCE {
|
|
jnxMvpnMroutePmsiPointer RowPointer,
|
|
jnxMvpnMrouteNumberOfLocalReplication Unsigned32,
|
|
jnxMvpnMrouteNumberOfRemoteReplication Unsigned32,
|
|
jnxMvpnMrouteDataRate Unsigned32
|
|
}
|
|
|
|
jnxMvpnMroutePmsiPointer OBJECT-TYPE
|
|
SYNTAX RowPointer
|
|
MAX-ACCESS read-only
|
|
STATUS current
|
|
DESCRIPTION
|
|
"The I-PMSI or S-PMSI this C-multicast route is using.
|
|
This is important because an implementation may not have an
|
|
interface corresponding to a provider tunnel,
|
|
that can be used in ipMcastRouteNextHopEntry."
|
|
::= { jnxMvpnMrouteEntry 1 }
|
|
|
|
jnxMvpnMrouteNumberOfLocalReplication OBJECT-TYPE
|
|
SYNTAX Unsigned32
|
|
MAX-ACCESS read-only
|
|
STATUS current
|
|
DESCRIPTION
|
|
"Number of replications to local receivers."
|
|
::= { jnxMvpnMrouteEntry 2 }
|
|
|
|
jnxMvpnMrouteNumberOfRemoteReplication OBJECT-TYPE
|
|
SYNTAX Unsigned32
|
|
MAX-ACCESS read-only
|
|
STATUS current
|
|
DESCRIPTION
|
|
"Number of (local) replications to remote receivers."
|
|
::= { jnxMvpnMrouteEntry 3 }
|
|
|
|
jnxMvpnMrouteDataRate OBJECT-TYPE
|
|
SYNTAX Unsigned32 (0..4294967295)
|
|
UNITS "kilobits per second"
|
|
MAX-ACCESS read-only
|
|
STATUS current
|
|
DESCRIPTION
|
|
"The data rate for traffic following this route."
|
|
::= { jnxMvpnMrouteEntry 4 }
|
|
|
|
-- MVPN Notifications
|
|
|
|
jnxMvpnMvrfChange NOTIFICATION-TYPE
|
|
OBJECTS {
|
|
jnxMvpnGenOperStatusChange
|
|
}
|
|
STATUS current
|
|
DESCRIPTION
|
|
"A mvpnMvrfChange notification signifies a change about
|
|
a MVRF in the device. The change event can be creation of
|
|
the MVRF, deletion of the MVRF or an update on the I-PMSI
|
|
or S-PMSI configuration of the MVRF. The change event
|
|
is indicated by mvpnGenOperStatusChange embedded in
|
|
the notification. The user can then query
|
|
mvpnGeneralTable, and/or mvpnSpmsiConfigTable to
|
|
get the details of the change as necessary.
|
|
|
|
Note: Since the creation of a MVRF is often followed by
|
|
configuration of I-PMSI and/or S-PMSIs for the MVRF,
|
|
more than one (three at most) notifications for a MVRF may
|
|
be generated serially, and it is really not necessary to
|
|
generate all three of them. An agent may choose to generate a
|
|
notification for the last event only, that is for S-PMSI
|
|
configuration.
|
|
|
|
Similarly, deletion of I-PMSI and S-PMSI configuration on a
|
|
MVRF happens before a MVRF is deleted and it is recommended
|
|
that the agent send the notification for MVRF deletion
|
|
event only."
|
|
::= { jnxMvpnNotifications 2 }
|
|
END
|