-- extracted from draft-farrel-mpls-p2mp-te-mib-00.txt -- at Thu Jun 1 06:06:23 2006 MPLS-TE-P2MP-STD-MIB DEFINITIONS ::= BEGIN IMPORTS MODULE-IDENTITY, OBJECT-TYPE, NOTIFICATION-TYPE, Unsigned32, Counter32, Counter64, TimeTicks FROM SNMPv2-SMI -- RFC2578 MODULE-COMPLIANCE, OBJECT-GROUP, NOTIFICATION-GROUP FROM SNMPv2-CONF -- RFC2580 TruthValue, RowStatus, StorageType, TimeStamp FROM SNMPv2-TC -- RFC2579 mplsStdMIB, MplsPathIndexOrZero FROM MPLS-TC-STD-MIB -- RFC3811 MplsIndexType FROM MPLS-LSR-STD-MIB -- RFC3813 mplsTunnelIndex, mplsTunnelInstance, mplsTunnelIngressLSRId, mplsTunnelEgressLSRId FROM MPLS-TE-STD-MIB -- RFC3812 IndexIntegerNextFree FROM DIFFSERV-MIB -- RFC3289 InetAddress, InetAddressType FROM INET-ADDRESS-MIB -- RFC3291 ; mplsTeP2mpStdMIB MODULE-IDENTITY LAST-UPDATED "200605240000Z" -- May 24, 2006 ORGANIZATION "Multiprotocol Label Switching (MPLS) Working Group" CONTACT-INFO " Adrian Farrel Old Dog Consulting Email: adrian@olddog.co.uk Seisho Yasukawa NTT Corporation Email: yasukawa.seisho@lab.ntt.co.jp Thomas D. Nadeau Cisco Systems, Inc. Email: tnadeau@cisco.com Comments about this document should be emailed directly to the MPLS working group mailing list at mpls@lists.ietf.org" DESCRIPTION "Copyright (C) The Internet Society (2006). The initial version of this MIB module was published in RFC XXXX. For full legal notices see the RFC itself or see: http://www.ietf.org/copyrights/ianamib.html -- RFC Editor. Please replace XXXX with the RFC number for this -- document and remove this note. This MIB module contains managed object definitions for Point-to-Multipoint (P2MP) MPLS Traffic Engineering (TE) defined in: 1. Signaling Requirements for Point-to-Multipoint Traffic-Engineered MPLS Label Switched Paths (LSPs), S. Yasukawa, RFC 4461, April 2006. 2. Extensions to RSVP-TE for Point to Multipoint TE LSPs, R. Aggarwal, S. Yasukawa, and D. Papadimitriou, work in progress." -- Revision history. REVISION "200605240000Z" -- May 24, 2006 DESCRIPTION "Initial version issued as part of RFC XXXX." -- RFC Editor. Please replace XXXX with the RFC number for this -- document and remove this note. ::= { mplsStdMIB YYY } -- RFC Editor. Please replace YYY with the codepoint issued by IANA -- and remove this note. -- Top level components of this MIB module. -- notifications mplsTeP2mpNotifications OBJECT IDENTIFIER ::= { mplsTeP2mpStdMIB 0 } -- tables, scalars mplsTeP2mpScalars OBJECT IDENTIFIER ::= { mplsTeP2mpStdMIB 1 } mplsTeP2mpObjects OBJECT IDENTIFIER ::= { mplsTeP2mpStdMIB 2 } -- conformance mplsTeP2mpConformance OBJECT IDENTIFIER ::= { mplsTeP2mpStdMIB 3 } -- MPLS P2MP Tunnel scalars. mplsP2mpTunnelConfigured OBJECT-TYPE SYNTAX Unsigned32 MAX-ACCESS read-only STATUS current DESCRIPTION "The number of P2MP tunnels configured on this device. A tunnel is considered configured if the mplsTunnelRowStatus in MPLS-TE-STD-MIB is active(1)." REFERENCE "RFC 3812 - Multiprotocol Label Switching (MPLS) Traffic Engineering (TE) Management Information Base (MIB), Srinivasan, C., Viswanathan, A., and T. Nadeau, June 2004." ::= { mplsTeP2mpScalars 1 } mplsP2mpTunnelActive OBJECT-TYPE SYNTAX Unsigned32 MAX-ACCESS read-only STATUS current DESCRIPTION "The number of P2MP tunnels active on this device. A tunnel is considered active if the mplsTunnelOperStatus in MPLS-TE-STD-MIB is up(1)." REFERENCE "RFC 3812 - Multiprotocol Label Switching (MPLS) Traffic Engineering (TE) Management Information Base (MIB), Srinivasan, C., Viswanathan, A., and T. Nadeau, June 2004." ::= { mplsTeP2mpScalars 2 } mplsP2mpTunnelTotalMaxHops OBJECT-TYPE SYNTAX Unsigned32 MAX-ACCESS read-only STATUS current DESCRIPTION "The maximum number of hops that can be specified for an entire P2MP tunnel on this device. This object should be used in conjunction with mplsTunnelMaxHops in MPLS-TE-STD-MIB that is used in the context of P2MP tunnels to express the maximum number of hops to any individual destination of a P2MP tunnel that can be configured on this device." REFERENCE "RFC 3812 - Multiprotocol Label Switching (MPLS) Traffic Engineering (TE) Management Information Base (MIB), Srinivasan, C., Viswanathan, A., and T. Nadeau, June 2004." ::= { mplsTeP2mpScalars 3 } -- End of MPLS Tunnel scalars. -- MPLS P2MP tunnel table. mplsP2mpTunnelTable OBJECT-TYPE SYNTAX SEQUENCE OF MplsP2mpTunnelEntry MAX-ACCESS not-accessible STATUS current DESCRIPTION "The mplsP2mpTunnelTable allows new P2MP MPLS tunnels to be created between an LSR and one or more remote end-points, and existing P2MP tunnels to be reconfigured or removed. This table sparse augments mplsTunnelTable in MPLS-TE-STD-MIB such that entries in that table can be flagged as point-to-multipoint, and can be configured and monitored appropriately." REFERENCE "RFC 3812 - Multiprotocol Label Switching (MPLS) Traffic Engineering (TE) Management Information Base (MIB), Srinivasan, C., Viswanathan, A., and T. Nadeau, June 2004." ::= { mplsTeP2mpObjects 1 } mplsP2mpTunnelEntry OBJECT-TYPE SYNTAX MplsP2mpTunnelEntry MAX-ACCESS not-accessible STATUS current DESCRIPTION "An entry in this table represents a P2MP MPLS tunnel. An entry can be created by a network administrator or by an SNMP agent as instructed by an MPLS signaling protocol. An entry in this table MUST correspond to an entry in the mplsTunnelTable in MPLS-TE-STD-MIB. This table shares index objects with that table and sparse augments that table. Thus, an entry in this table can only be created at the same time as or after a corresponding entry in mplsTunnelTable, and an entry in mplsTunnelTable cannot be deleted while a corresponding entry exists in this table. This table entry includes a row status object, but administrative and operational statuses should be taken from mplsTunnelAdminStatus and mplsTunnelOperStatus in the corresponding entry in mplsTunnelTable." REFERENCE "RFC 3812 - Multiprotocol Label Switching (MPLS) Traffic Engineering (TE) Management Information Base (MIB), Srinivasan, C., Viswanathan, A., and T. Nadeau, June 2004." INDEX { mplsTunnelIndex, mplsTunnelInstance, mplsTunnelIngressLSRId, mplsTunnelEgressLSRId } ::= { mplsP2mpTunnelTable 1 } MplsP2mpTunnelEntry ::= SEQUENCE { mplsP2mpTunnelIsP2MP TruthValue, mplsP2mpTunnelP2mpIntegrity TruthValue, mplsP2mpTunnelBranchRole INTEGER, mplsP2mpTunnelRowStatus RowStatus, mplsP2mpTunnelStorageType StorageType } mplsP2mpTunnelIsP2MP OBJECT-TYPE SYNTAX TruthValue MAX-ACCESS read-create STATUS current DESCRIPTION "Denotes whether or not this tunnel is a point-to-multipoint tunnel. If this object is not present or is present and set to false(2), this tunnel is not a point-to-multipoint tunnel and all other objects in this table entry are not valid." DEFVAL { true } ::= { mplsP2mpTunnelEntry 1 } mplsP2mpTunnelP2mpIntegrity OBJECT-TYPE SYNTAX TruthValue MAX-ACCESS read-create STATUS current DESCRIPTION "Denotes whether or not P2MP Integrity is required for this tunnel. If P2MP integrity is operational on a P2MP tunnel then the failure of the path to any of the tunnel destinations should cause the teardown of the entire P2MP tunnel." REFERENCE "Extensions to RSVP-TE for Point to Multipoint TE LSPs, R. Aggarwal, S. Yasukawa, and D. Papadimitriou, work in progress." DEFVAL { false } ::= { mplsP2mpTunnelEntry 2 } mplsP2mpTunnelBranchRole OBJECT-TYPE SYNTAX INTEGER { notBranch(1), branch(2), bud(3) } MAX-ACCESS read-create STATUS current DESCRIPTION "This value supplements the value in the object mplsTunnelRole in MPLS-TE-STD-MIB that indicates the role of this LSR in the tunnel represented by this entry in mplsP2mpTunnelTable. mplsTunnelRole may take any of the values: head(1), transit(2), tail(3), headTail(4) If this LSR is an ingress and there is exactly one out-segment, mplsTunnelRole should contain the value head(1), and mplsP2mpTunnelBranchRole should have the value notBranch(1). If this LSR is an ingress with more than one out segment, mplsTunnelRole should contain the value head(1), and mplsP2mpTunnelBranchRole should have the value branch(2). If this LSR is an ingress, an egress, and there is one or more out-segments, mplsTunnelRole should contain the value headTail(4), and mplsP2mpTunnelBranchRole should have the value bud(3). If this LSR is a transit with exactly one out-segment, mplsTunnelRole should contain the value transit(2), and mplsP2mpTunnelBranchRole should have the value notBranch(1). If this LSR is a transit with more than one out-segment, mplsTunnelRole should contain the value transit(2), and mplsP2mpTunnelBranchRole should have the value branch(2). If this LSR is a transit with one or more out-segments and is also an egress, mplsTunnelRole should contain the value transit(2), and mplsP2mpTunnelBranchRole should have the value bud(3). If this LSR is an egress with no out-segment and is not the ingress, mplsTunnelRole should contain the value tail(3), and mplsP2mpTunnelBranchRole should have the value notBranch(1). If this LSR is an egress and has one or more out-segments, mplsTunnelRole should contain the value transit(1), and mplsP2mpTunnelBranchRole should have the value bud(3)." REFERENCE "RFC 3812 - Multiprotocol Label Switching (MPLS) Traffic Engineering (TE) Management Information Base (MIB), Srinivasan, C., Viswanathan, A., and T. Nadeau, June 2004." DEFVAL { notBranch } ::= { mplsP2mpTunnelEntry 3 } mplsP2mpTunnelRowStatus OBJECT-TYPE SYNTAX RowStatus MAX-ACCESS read-create STATUS current DESCRIPTION "This variable is used to create, modify, and/or delete a row in this table. When a row in this table is in active(1) state, no objects in that row can be modified by the agent except mplsP2mpTunnelRowStatus and mplsP2mpTunnelStorageType. This object and mplsTunnelRowStatus in the corresponding entry in mplsTunnelTable in MPLS-TE-STD-MIB should be managed together. No objects in a row in this table can be modified when the mplsTunnelRowStatus object in the corresponding row in mplsTunnelTable has value active(1). Note that no admin or oper status objects are provided in this table. The administrative and operational status of P2MP tunnels is taken from the values of mplsTunnelAdminStatus and mplsTunnelOperStatus in the corresponding row mplsTunneltable." REFERENCE "RFC 3812 - Multiprotocol Label Switching (MPLS) Traffic Engineering (TE) Management Information Base (MIB), Srinivasan, C., Viswanathan, A., and T. Nadeau, June 2004." ::= { mplsP2mpTunnelEntry 4 } mplsP2mpTunnelStorageType OBJECT-TYPE SYNTAX StorageType MAX-ACCESS read-create STATUS current DESCRIPTION "The storage type for this tunnel entry. Conceptual rows having the value 'permanent' need not allow write-access to any columnar objects in the row." DEFVAL { volatile } ::= { mplsP2mpTunnelEntry 5 } -- End of mplsP2mpTunnelTable -- MPLS P2MP tunnel destination table. mplsP2mpTunnelSubGroupIDNext OBJECT-TYPE SYNTAX IndexIntegerNextFree (0..65535) MAX-ACCESS read-only STATUS current DESCRIPTION "This object contains an unused value for mplsP2mpTunnelSubGroupID, or a zero to indicate that none exists. Negative values are not allowed, as they do not correspond to valid values of mplsP2mpTunnelSubGroupID. Note that this object offers an unused value for an mplsP2mpTunnelSubGroupID value at the local LSR when it is a sub-group originator. In other cases, the value of mplsP2mpTunnelSubGroupID SHOULD be taken from the value signaled by the MPLS signaling protocol." ::= { mplsTeP2mpObjects 2 } mplsP2mpTunnelDestTable OBJECT-TYPE SYNTAX SEQUENCE OF MplsP2mpTunnelDestEntry MAX-ACCESS not-accessible STATUS current DESCRIPTION "The mplsP2mpTunnelDestTable allows new destinations of P2MP MPLS tunnels to be added to and removed from P2MP tunnels. Entries in this table share some index fields with the mplsP2mpTunnelTable and the mplsTunnelTable in MPLS-TE-STD-MIB. Entries in this table have no meaning unless there is a corresponding entry in mplsP2mpTunnelTable (which, itself, depends on a corresponding entry in mplsTunnelTable) and that entry has mpl2P2mpTunnelIsP2mp set to true(1)." REFERENCE "RFC 3812 - Multiprotocol Label Switching (MPLS) Traffic Engineering (TE) Management Information Base (MIB), Srinivasan, C., Viswanathan, A., and T. Nadeau, June 2004." ::= { mplsTeP2mpObjects 3 } mplsP2mpTunnelDestEntry OBJECT-TYPE SYNTAX MplsP2mpTunnelDestEntry MAX-ACCESS not-accessible STATUS current DESCRIPTION "An entry in this table represents a destination of a P2MP MPLS tunnel. An entry can be created by a network administrator or by an SNMP agent as instructed by an MPLS signaling protocol. Entries in this table share some index fields with the mplsP2mpTunnelTable and the mplsTunnelTable in MPLS-TE-STD-MIB. Entries in this table have no meaning unless there is a corresponding entry in mplsP2mpTunnelTable (which, itself, depends on a corresponding entry in mplsTunnelTable) and that entry has mpl2P2mpTunnelIsP2mp set to true(1). Note that the same destination may be present more than once if it is in more than one sub-group as reflected by the mplsP2mpTunnelSubGroupOriginType, mplsP2mpTunnelSubGroupOrigin, and mplsP2mpTunnelSubGroupID, index objects. Entries in this table may be created at any time. If created before an entry in the mplsP2mpTunnelTable the entries have no meaning, but may be kept ready for the creation of the P2MP tunnel. If created after the entry in mplsP2mpTunnelTable, entries in table may reflect the addition of destinations to active P2MP tunnels. For this reason, entries in this table are equipped with row, admin, and oper status objects. " REFERENCE "RFC 3812 - Multiprotocol Label Switching (MPLS) Traffic Engineering (TE) Management Information Base (MIB), Srinivasan, C., Viswanathan, A., and T. Nadeau, June 2004." INDEX { mplsTunnelIndex, mplsTunnelInstance, mplsTunnelIngressLSRId, mplsTunnelEgressLSRId, mplsP2mpTunnelSubGroupOriginType, mplsP2mpTunnelSubGroupOrigin, mplsP2mpTunnelSubGroupID, mplsP2mpTunnelDestinationType, mplsP2mpTunnelDestination } ::= { mplsP2mpTunnelDestTable 1 } MplsP2mpTunnelDestEntry ::= SEQUENCE { mplsP2mpTunnelSubGroupOriginType InetAddressType, mplsP2mpTunnelSubGroupOrigin InetAddress, mplsP2mpTunnelSubGroupID Unsigned32, mplsP2mpTunnelDestinationType InetAddressType, mplsP2mpTunnelDestination InetAddress, mplsP2mpTunnelBranchOutSegment MplsIndexType, mplsP2mpTunnelDestHopTableIndex MplsPathIndexOrZero, mplsP2mpTunnelDestPathInUse MplsPathIndexOrZero, mplsP2mpTunnelDestCHopTableIndex MplsPathIndexOrZero, mplsP2mpTunnelDestARHopTableIndex MplsPathIndexOrZero, mplsP2mpTunnelDestTotalUpTime TimeTicks, mplsP2mpTunnelDestInstanceUpTime TimeTicks, mplsP2mpTunnelDestPathChanges Counter32, mplsP2mpTunnelDestLastPathChange TimeTicks, mplsP2mpTunnelDestCreationTime TimeStamp, mplsP2mpTunnelDestStateTransitions Counter32, mplsP2mpTunnelDestAdminStatus INTEGER, mplsP2mpTunnelDestOperStatus INTEGER, mplsP2mpTunnelDestRowStatus RowStatus, mplsP2mpTunnelDestStorageType StorageType } mplsP2mpTunnelSubGroupOriginType OBJECT-TYPE SYNTAX InetAddressType MAX-ACCESS not-accessible STATUS current DESCRIPTION "This object identifies the type of address carried in mplsP2mpTunnelSubGroupOrigin. This object forms part of the index of this table and can, therefore, not return the value unknown(0). Similarly, since the object mplsP2mpTunnelSubGroupOrigin must conform to the protocol specification, this object must return either ipv4(1) or ipv6(2)." ::= { mplsP2mpTunnelDestEntry 1 } mplsP2mpTunnelSubGroupOrigin OBJECT-TYPE SYNTAX InetAddress MAX-ACCESS not-accessible STATUS current DESCRIPTION "The TE Router ID (reachable and stable IP address) of the originator of the P2MP sub-group. In many cases, this will be the ingress LSR of the P2MP tunnel. When a signaling protocol is used, this object corresponds to the Sub-Group Originator field in the SENDER_TEMPLATE object. This object is interpreted in the context of mplsP2mpTunnelSubGroupOriginType." REFERENCE "Extensions to RSVP-TE for Point to Multipoint TE LSPs, R. Aggarwal, S. Yasukawa, and D. Papadimitriou, work in progress." ::= { mplsP2mpTunnelDestEntry 2 } mplsP2mpTunnelSubGroupID OBJECT-TYPE SYNTAX Unsigned32 (1..4294967295) MAX-ACCESS not-accessible STATUS current DESCRIPTION "The unique identifier assigned by the sub-group originator for this sub-group of this P2MP tunnel. An appropriate value for this object during row creation when the sub-group origin in mplsP2mpTunnelSubGroupOrigin is the local LSR can be obtained by reading mplsP2mpTunnelSubGroupIDNext." REFERENCE "Extensions to RSVP-TE for Point to Multipoint TE LSPs, R. Aggarwal, S. Yasukawa, and D. Papadimitriou, work in progress." ::= { mplsP2mpTunnelDestEntry 3 } mplsP2mpTunnelDestinationType OBJECT-TYPE SYNTAX InetAddressType MAX-ACCESS not-accessible STATUS current DESCRIPTION "This object identifies the type of address carried in mplsP2mpTunnelDestination. This object forms part of the index of this table and can, therefore, not return the value unknown(0). Similarly, since the object mplsP2mpTunnelDestination must conform to the protocol specification, this object must return either ipv4(1) or ipv6(2)." ::= { mplsP2mpTunnelDestEntry 4 } mplsP2mpTunnelDestination OBJECT-TYPE SYNTAX InetAddress MAX-ACCESS not-accessible STATUS current DESCRIPTION "A single destination of this P2MP tunnel. That is, a routable TE address of a leaf. This will often be the TE Router ID of the leaf, but can be any interface address. When a signaling protocol is used, this object corresponds to the S2L Sub-LSP destination address field in the S2L_SUB_LSP object. This object is interpreted in the context of mplsP2mpTunnelDestinationType." REFERENCE "Extensions to RSVP-TE for Point to Multipoint TE LSPs, R. Aggarwal, S. Yasukawa, and D. Papadimitriou, work in progress." ::= { mplsP2mpTunnelDestEntry 5 } mplsP2mpTunnelBranchOutSegment OBJECT-TYPE SYNTAX MplsIndexType MAX-ACCESS read-only STATUS current DESCRIPTION "This object identifies the outgoing branch from this LSR towards the destination represented by this table entry. It is an index into mplsOutSegmentTable in MPLS-LSR-STD-MIB and should contain the value zero if that MIB module is inaccessible or not implemented." ::= { mplsP2mpTunnelDestEntry 6 } mplsP2mpTunnelDestHopTableIndex OBJECT-TYPE SYNTAX MplsPathIndexOrZero MAX-ACCESS read-create STATUS current DESCRIPTION "Index into the mplsTunnelHopTable entry that specifies the explicit route hops for this destination of the P2MP tunnel. This object represents the configured route for the branch of the P2MP tree to this destination and is meaningful only at the head-end (ingress or root) of the P2MP tunnel. Note that many such paths may be configured within the mplsTunnelHopTable for each destination, and that the object mplsP2mpTunnelDestPathInUse identifies which path has been selected for use." DEFVAL { 0 } ::= { mplsP2mpTunnelDestEntry 7 } mplsP2mpTunnelDestPathInUse OBJECT-TYPE SYNTAX MplsPathIndexOrZero MAX-ACCESS read-create STATUS current DESCRIPTION "This value denotes the configured path that was chosen as the explicit path to this destination of this P2MP tunnel. This value reflects the secondary index into mplsTunnelHopTable where the primary index comes from mplsP2mpTunnelDestHopTableIndex. The path indicated by this object might not exactly match the one signaled and recorded in mplsTunnelCHopTable as specific details of the path might be computed locally. Similarly, the path might not match the actual path in use as recorded in mplsTunnelARHopTable due to the fact that some details of the path may have been resolved within the network. A value of zero denotes that no path is currently in use or available." DEFVAL { 0 } ::= { mplsP2mpTunnelDestEntry 8 } mplsP2mpTunnelDestCHopTableIndex OBJECT-TYPE SYNTAX MplsPathIndexOrZero MAX-ACCESS read-only STATUS current DESCRIPTION "Index into the mplsTunnelCHopTable that identifies the explicit path for this destination of the P2MP tunnel. This path is based on the chosen configured path identified by mplsP2mpTunnelDestHopTableIndex and mplsP2mpTunnelDestPathInUse, but may have been modified and automatically updated by the agent when computed hops become available or when computed hops get modified. If this destination is the destination of the 'first S2L sub-LSP' then this path will be signaled in the Explicit Route Object. If this destination is the destination of a 'subsequent S2L sub-LSP' then this path will be signaled in a Secondary Explicit Route Object." REFERENCE "Extensions to RSVP-TE for Point to Multipoint TE LSPs, R. Aggarwal, S. Yasukawa, and D. Papadimitriou, work in progress." ::= { mplsP2mpTunnelDestEntry 9 } mplsP2mpTunnelDestARHopTableIndex OBJECT-TYPE SYNTAX MplsPathIndexOrZero MAX-ACCESS read-only STATUS current DESCRIPTION "Index into the mplsTunnelARHopTable that identifies the actual hops traversed to this destination of the P2MP tunnel. This is automatically updated by the agent when the actual hops becomes available. If this destination is the destination of the 'first S2L sub-LSP' then this path will be signaled in the Recorded Route Object. If this destination is the destination of a 'subsequent S2L sub-LSP' then this path will be signaled in a Secondary Recorded Route Object." REFERENCE "Extensions to RSVP-TE for Point to Multipoint TE LSPs, R. Aggarwal, S. Yasukawa, and D. Papadimitriou, work in progress." ::= { mplsP2mpTunnelDestEntry 10 } mplsP2mpTunnelDestTotalUpTime OBJECT-TYPE SYNTAX TimeTicks MAX-ACCESS read-only STATUS current DESCRIPTION "This value represents the aggregate up time for all instances of this tunnel to this destination, if this information is available. If this information is not available, this object MUST return a value of 0." ::= { mplsP2mpTunnelDestEntry 11 } mplsP2mpTunnelDestInstanceUpTime OBJECT-TYPE SYNTAX TimeTicks MAX-ACCESS read-only STATUS current DESCRIPTION "This value identifies the total time that the currently active tunnel instance to this destination has had its operational status (mplsP2mpTunnelDestOperStatus) set to up(1) since it was last previously not up(1)." ::= { mplsP2mpTunnelDestEntry 12 } mplsP2mpTunnelDestPathChanges OBJECT-TYPE SYNTAX Counter32 MAX-ACCESS read-only STATUS current DESCRIPTION "Specifies the number of times the actual path for this destination of this P2MP tunnel instance has changed." ::= { mplsP2mpTunnelDestEntry 13 } mplsP2mpTunnelDestLastPathChange OBJECT-TYPE SYNTAX TimeTicks MAX-ACCESS read-only STATUS current DESCRIPTION "Specifies the time since the last change to the actual path for this destination of this P2MP tunnel instance." ::= { mplsP2mpTunnelDestEntry 14 } mplsP2mpTunnelDestCreationTime OBJECT-TYPE SYNTAX TimeStamp MAX-ACCESS read-only STATUS current DESCRIPTION "Specifies the value of SysUpTime when the first instance of this tunnel came into existence for this destination. That is, when the value of mplsP2mpTunnelDestOperStatus was first set to up(1)." ::= { mplsP2mpTunnelDestEntry 15 } mplsP2mpTunnelDestStateTransitions OBJECT-TYPE SYNTAX Counter32 MAX-ACCESS read-only STATUS current DESCRIPTION "Specifies the number of times the status (mplsP2mPTunnelDestOperStatus) of this tunnel instance to this destination has changed." ::= { mplsP2mpTunnelDestEntry 16 } mplsP2mpTunnelDestAdminStatus OBJECT-TYPE SYNTAX INTEGER { up(1), -- ready to pass data down(2), -- out of service testing(3) -- in some test mode } MAX-ACCESS read-create STATUS current DESCRIPTION "Indicates the desired operational status of this destination of this P2MP tunnel." DEFVAL { up } ::= { mplsP2mpTunnelDestEntry 17 } mplsP2mpTunnelDestOperStatus OBJECT-TYPE SYNTAX INTEGER { up(1), -- ready to pass data down(2), -- out of service testing(3), -- in some test mode unknown(4), -- status cannot be determined lowerLayerDown(7) -- down due to the state of -- lower layer interfaces } MAX-ACCESS read-only STATUS current DESCRIPTION "Indicates the actual operational status of this destination of this P2MP tunnel." ::= { mplsP2mpTunnelDestEntry 18 } mplsP2mpTunnelDestRowStatus OBJECT-TYPE SYNTAX RowStatus MAX-ACCESS read-create STATUS current DESCRIPTION "This object is used to create, modify, and/or delete a row in this table. When a row in this table is in active(1) state, no objects in that row can be modified by SET operations except mplsP2mpTunnelDestAdminStatus and mplsP2mpTunnelDestStorageType." ::= { mplsP2mpTunnelDestEntry 19 } mplsP2mpTunnelDestStorageType OBJECT-TYPE SYNTAX StorageType MAX-ACCESS read-create STATUS current DESCRIPTION "The storage type for this table entry. Conceptual rows having the value 'permanent' need not allow write-access to any columnar objects in the row." DEFVAL { volatile } ::= { mplsP2mpTunnelDestEntry 20 } -- End of mplsP2mpTunnelDestTable -- MPLS Tunnel Branch Performance Table. mplsP2mpTunnelBranchPerfTable OBJECT-TYPE SYNTAX SEQUENCE OF MplsP2mpTunnelBranchPerfEntry MAX-ACCESS not-accessible STATUS current DESCRIPTION "This table provides per-tunnel branch MPLS performance information. This table is not valid for switching types other than packet." ::= { mplsTeP2mpObjects 4 } mplsP2mpTunnelBranchPerfEntry OBJECT-TYPE SYNTAX MplsP2mpTunnelBranchPerfEntry MAX-ACCESS not-accessible STATUS current DESCRIPTION "An entry in this table is created by the LSR for downstream branch (out-segment) from this LSR for this P2MP tunnel. More than one destination as represented by an entry in the mplsP2mpTunnelDestTable may be reached through a single out-segment. More than one out-segment may belong to a single P2MP tunnel represented by an entry in mplsP2mpTunnelTable." INDEX { mplsTunnelIndex, mplsTunnelInstance, mplsTunnelIngressLSRId, mplsTunnelEgressLSRId } ::= { mplsP2mpTunnelBranchPerfTable 1 } MplsP2mpTunnelBranchPerfEntry ::= SEQUENCE { mplsP2mpTunnelBranchPerfPackets Counter32, mplsP2mpTunnelBranchPerfHCPackets Counter64, mplsP2mpTunnelBranchPerfErrors Counter32, mplsP2mpTunnelBranchPerfBytes Counter32, mplsP2mpTunnelBranchPerfHCBytes Counter64 } mplsP2mpTunnelBranchPerfPackets OBJECT-TYPE SYNTAX Counter32 MAX-ACCESS read-only STATUS current DESCRIPTION "Number of packets forwarded by the tunnel onto this branch. This object should represents the 32-bit value of the least significant part of the 64-bit value if both mplsP2mpTunnelBranchPerfHCPackets is returned." ::= { mplsP2mpTunnelBranchPerfEntry 1 } mplsP2mpTunnelBranchPerfHCPackets OBJECT-TYPE SYNTAX Counter64 MAX-ACCESS read-only STATUS current DESCRIPTION "High capacity counter for number of packets forwarded by the tunnel onto this branch." ::= { mplsP2mpTunnelBranchPerfEntry 2 } mplsP2mpTunnelBranchPerfErrors OBJECT-TYPE SYNTAX Counter32 MAX-ACCESS read-only STATUS current DESCRIPTION "Number of packets dropped because of errors or for other reasons, that were supposed to be forwarded onto this branch for this tunnel." ::= { mplsP2mpTunnelBranchPerfEntry 3 } mplsP2mpTunnelBranchPerfBytes OBJECT-TYPE SYNTAX Counter32 MAX-ACCESS read-only STATUS current DESCRIPTION "Number of bytes forwarded by the tunnel onto this branch. This object should represents the 32-bit value of the least significant part of the 64-bit value if both mplsP2mpTunnelBranchPerfHCBytes is returned." ::= { mplsP2mpTunnelBranchPerfEntry 4 } mplsP2mpTunnelBranchPerfHCBytes OBJECT-TYPE SYNTAX Counter64 MAX-ACCESS read-only STATUS current DESCRIPTION "High capacity counter for number of bytes forwarded by the tunnel onto this branch." ::= { mplsP2mpTunnelBranchPerfEntry 5 } -- End of mplsP2mpTunnelBranchPerfTable -- Notifications. mplsP2mpTunnelNotificationEnable OBJECT-TYPE SYNTAX TruthValue MAX-ACCESS read-write STATUS current DESCRIPTION "If this object is true(1), then it enables the generation of mplsP2mpTunnelDestUp and mplsP2mpTunnelDestDown notifications. Otherwise these notifications are not emitted." DEFVAL { false } ::= { mplsTeP2mpObjects 5 } mplsP2mpTunnelDestUp NOTIFICATION-TYPE OBJECTS { mplsP2mpTunnelDestAdminStatus, mplsP2mpTunnelDestOperStatus } STATUS current DESCRIPTION "This notification is generated when a mplsP2mpTunnelDestOperStatus object for one of the destinations of one of the configured tunnels is about to leave the down(2) state and transition into some other state. This other state is indicated by the included value of mplsP2mpTunneldestOperStatus." ::= { mplsTeP2mpNotifications 1 } mplsP2mpTunnelDestDown NOTIFICATION-TYPE OBJECTS { mplsP2mpTunnelDestAdminStatus, mplsP2mpTunnelDestOperStatus } STATUS current DESCRIPTION "This notification is generated when a mplsP2mpTunnelDestOperStatus object for one of the destinations of one of the configured tunnels is about to enter the down(2) state from some other state. This other state is indicated by the included value of mplsP2mpTunnelDestOperStatus." ::= { mplsTeP2mpNotifications 2 } -- End of notifications. -- Module compliance. mplsMP2pGroups OBJECT IDENTIFIER ::= { mplsTeP2mpConformance 1 } mplsTeP2mpCompliances OBJECT IDENTIFIER ::= { mplsTeP2mpConformance 2 } -- Compliance requirement for fully compliant implementations. mplsTeP2mpModuleFullCompliance MODULE-COMPLIANCE STATUS current DESCRIPTION "Compliance statement for agents that provide full support for MPLS-TE-P2MP-STD-MIB. Such devices can be monitored and also be configured using this MIB module." MODULE -- This module. MANDATORY-GROUPS { mplsP2mpGroup, mplsP2mpNotifGroup } ::= { mplsTeP2mpCompliances 1 } -- Units of conformance. mplsP2mpGroup OBJECT-GROUP OBJECTS { mplsP2mpTunnelConfigured, mplsP2mpTunnelActive, mplsP2mpTunnelTotalMaxHops, mplsP2mpTunnelIsP2MP, mplsP2mpTunnelP2mpIntegrity, mplsP2mpTunnelBranchRole, mplsP2mpTunnelRowStatus, mplsP2mpTunnelStorageType, mplsP2mpTunnelSubGroupIDNext, mplsP2mpTunnelBranchOutSegment, mplsP2mpTunnelDestHopTableIndex, mplsP2mpTunnelDestPathInUse, mplsP2mpTunnelDestCHopTableIndex, mplsP2mpTunnelDestARHopTableIndex, mplsP2mpTunnelDestTotalUpTime, mplsP2mpTunnelDestInstanceUpTime, mplsP2mpTunnelDestPathChanges, mplsP2mpTunnelDestLastPathChange, mplsP2mpTunnelDestCreationTime, mplsP2mpTunnelDestStateTransitions, mplsP2mpTunnelDestAdminStatus, mplsP2mpTunnelDestOperStatus, mplsP2mpTunnelDestRowStatus, mplsP2mpTunnelDestStorageType, mplsP2mpTunnelBranchPerfPackets, mplsP2mpTunnelBranchPerfHCPackets, mplsP2mpTunnelBranchPerfErrors, mplsP2mpTunnelBranchPerfBytes, mplsP2mpTunnelBranchPerfHCBytes, mplsP2mpTunnelNotificationEnable } STATUS current DESCRIPTION "Collection of objects needed for MPLS P2MP." ::= { mplsMP2pGroups 1 } mplsP2mpNotifGroup NOTIFICATION-GROUP NOTIFICATIONS { mplsP2mpTunnelDestUp, mplsP2mpTunnelDestDown } STATUS current DESCRIPTION "Notifications implemented in this module." ::= { mplsMP2pGroups 2 } END -- -- Copyright (C) The Internet Society (2006). This document is subject -- to the rights, licenses and restrictions contained in BCP 78, and -- except as set forth therein, the authors retain all their rights. -- This document and the information contained herein are provided on an -- "AS IS" basis and THE CONTRIBUTOR, THE ORGANIZATION HE/SHE REPRESENTS -- OR IS SPONSORED BY (IF ANY), THE INTERNET SOCIETY AND THE INTERNET -- ENGINEERING TASK FORCE DISCLAIM ALL WARRANTIES, EXPRESS OR IMPLIED, -- INCLUDING BUT NOT LIMITED TO ANY WARRANTY THAT THE USE OF THE -- INFORMATION HEREIN WILL NOT INFRINGE ANY RIGHTS OR ANY IMPLIED -- WARRANTIES OF MERCHANTABILITY OR FITNESS FOR A PARTICULAR PURPOSE.