-- extracted from draft-ietf-ccamp-gmpls-te-mib-02.txt -- at Fri Oct 24 06:15:27 2003 GMPLS-TE-STD-MIB DEFINITIONS ::= BEGIN IMPORTS MODULE-IDENTITY, OBJECT-TYPE, NOTIFICATION-TYPE, experimental, Integer32, Unsigned32, Counter32, Counter64, TimeTicks FROM SNMPv2-SMI MODULE-COMPLIANCE, OBJECT-GROUP, NOTIFICATION-GROUP FROM SNMPv2-CONF TEXTUAL-CONVENTION, TruthValue, TimeStamp FROM SNMPv2-TC InetAddressIPv4, InetAddressIPv6 FROM INET-ADDRESS-MIB ; gmplsTeStdMIB MODULE-IDENTITY LAST-UPDATED "200308190900Z " -- 19 August 2003 9:00:00 GMT" ORGANIZATION "Common Control And Management Protocols (CCAMP) Working Group" CONTACT-INFO " Thomas D. Nadeau Cisco Systems, Inc. Email: tnadeau@cisco.com Cheenu Srinivasan Bloomberg L.P. Email: cheenu@bloomberg.net Adrian Farrel Old Dog Consulting Email: adrian@olddog.co.uk Ed Harrison Data Connection Ltd. Email: ed.harrison@dataconnection.com Tim Hall Data Connection Ltd. Email: timhall@dataconnection.com Comments about this document should be emailed direct to the CCAMP working group mailing list at ccamp@ops.ietf.org" DESCRIPTION "This MIB module contains managed object definitions for GMPLS Traffic Engineering (TE). Copyright (C) The Internet Society (2003). This version of this MIB module is part of RFCXXX; see the RFC itself for full legal notices." -- Revision history. REVISION "200308190900Z" -- 19 August 2003 09:00:00 GMT DESCRIPTION "Initial revision, published as part of RFC XXXX." ::= { gmplsStdMIB xx } -- Top level components of this MIB. -- Notifications -- no notifications are currently defined. gmplsTeNotifications OBJECT IDENTIFIER ::= { gmplsTeStdMIB 0 } -- tables, scalars gmplsTeScalars OBJECT IDENTIFIER ::= { gmplsTeMIB 1 } gmplsTeObjects OBJECT IDENTIFIER ::= { gmplsTeMIB 2 } -- conformance gmplsTeConformance OBJECT IDENTIFIER ::= { gmplsTeMIB 3 } -- GMPLS Tunnel scalars. gmplsTunnelsConfigured OBJECT-TYPE SYNTAX Unsigned32 MAX-ACCESS read-only STATUS current DESCRIPTION "The number of GMPLS tunnels configured on this device. A GMPLS tunnel is considered configured if an entry for the tunnel exists in the gmplsTunnelTable and the associated mplsTunnelRowStatusis active(1)." ::= { gmplsTeScalars 1 } gmplsTunnelActive OBJECT-TYPE SYNTAX Unsigned32 MAX-ACCESS read-only STATUS current DESCRIPTION "The number of GMPLS tunnels active on this device. A GMPLS tunnel is considered active if there is an entry in the gmplsTunnelTable and the associated mplsTunnelOperStatus for the tunnel is up(1)." ::= { gmplsTeScalars 2 } -- End of GMPLS Tunnel scalars. -- GMPLS tunnel table. gmplsTunnelTable OBJECT-TYPE SYNTAX SEQUENCE OF GmplsTunnelEntry MAX-ACCESS not-accessible STATUS current DESCRIPTION "The gmplsTunnelTable 'extends' the mplsTunnelTable. It allows GMPLS tunnels to be created between an LSR and a remote endpoint, and existing tunnels to be reconfigured or removed. Note that only point-to-point tunnel segments are supported, although multi-point-to-point and point- to-multi-point connections are supported by an LSR acting as a cross-connect. Each tunnel can thus have one out-segment originating at this LSR and/or one in-segment terminating at this LSR." ::= { gmplsTeObjects 1 } gmplsTunnelEntry OBJECT-TYPE SYNTAX GmplsTunnelEntry MAX-ACCESS not-accessible STATUS current DESCRIPTION "An entry in this table in association with the corresponding entry in the mplsTunnelTable represents a GMPLS tunnel. An entry can be created by a network administrator or by an SNMP agent as instructed by a signaling protocol." INDEX { mplsTunnelIndex, mplsTunnelInstance, mplsTunnelIngressLSRId, mplsTunnelEgressLSRId } ::= { gmplsTunnelTable 1 } GmplsTunnelEntry ::= SEQUENCE { gmplsTunnelUnnumIf TruthValue, gmplsTunnelAttributes BITS, gmplsTunnelLSPEncoding INTEGER, gmplsTunnelSwitchingType INTEGER, gmplsTunnelLinkProtection BITS, gmplsTunnelGPid Unsigned32, gmplsTunnelSecondary TruthValue, gmplsTunnelDirection INTEGER, gmplsTunnelPathComp INTEGER } gmplsTunnelUnnumIf OBJECT-TYPE SYNTAX TruthValue MAX-ACCESS read-create STATUS current DESCRIPTION "Denotes whether or not this tunnel corresponds to an unnumbered interface represented in the interfaces group table. This object is only used if mplsTunnelIsIf is set to 'true'. If both this object and the mplsTunnelIsIf object are set to 'true', the originating LSR adds an LSP_TUNNEL_INTERFACE_ID object to the outgoing Path message. This object contains information that is only used by the terminating LSR." REFERENCE "1. draft-ietf-mpls-crldp-unnum-06.txt - Signalling Unnumbered Links in CR-LDP, Kompella, K., Rekhter, Y. and Kullberg, A., June 2002. 2. Signalling Unnumbered Links in RSVP-TE, Kompella, K. and Rekhter, Y., RFC 3477, January 2003." DEFVAL { false } ::= { gmplsTunnelEntry 1 } gmplsTunnelAttributes OBJECT-TYPE SYNTAX BITS { labelRecordingDesired (0) } MAX-ACCESS read-create STATUS current DESCRIPTION "This bitmask indicates optional parameters for this tunnel. These bits should be taken in addition to those defined in mplsTunnelSessionAttributes in order to determine the full set of options to be signaled (for example SESSION_ATTRIBUTES flags in RSVP-TE). The following describes these bitfields: labelRecordingDesired This flag indicates that label information should be included when doing a route record. This bit is not valid unless the recordRoute bit is set." REFERENCE "1. RSVP-TE: Extensions to RSVP for LSP Tunnels, Awduche et al, RFC 3209, December 2001." DEFVAL { 0 } ::= { gmplsTunnelEntry 2 } gmplsTunnelLSPEncoding OBJECT-TYPE SYNTAX INTEGER (0..255) MAX-ACCESS read-create STATUS current DESCRIPTION "This object indicates the encoding of the LSP being requested. A value of zero indicates that GMPLS signaling is not in use. Some objects in this MIB module may be of use for MPLS signaling extensions that do not use GMPLS signaling. By setting this object to zero, an application may indicate that only those objects meaningful in MPLS should be examined. The values to use are currently defined in Generalized Multi-Protocol Label Switching (GMPLS) Signaling Functional Description, RFC 3471. Further values may be defined in future RFCs. tunnelLspPacket (1), tunnelLspEthernet (2), tunnelLspAnsiEtsiPdh (3), -- the value 4 is deprecated tunnelLspSdhSonet (5), -- the value 6 is deprecated tunnelLspDigitalWrapper (7), tunnelLspLambda (8), tunnelLspFiber (9), -- the value 10 is deprecated tunnelLspFiberChannel (11)" REFERENCE "1. Berger, L., et al., Generalized Multi-Protocol Label Switching (GMPLS) Signaling Functional Description, RFC 3471, January 2003." DEFVAL { 0 } ::= { gmplsTunnelEntry 3 } gmplsTunnelSwitchingType OBJECT-TYPE SYNTAX INTEGER (0..255) MAX-ACCESS read-create STATUS current DESCRIPTION "Indicates the type of switching that should be performed on a particular link. This field is needed for links that advertise more than one type of switching capability. Values of this object are as the Switching Capability field defined in Internet Draft OSPF Extensions in Support of Generalized MPLS. Further values may be defined in future RFCs. unknown (0), psc1 (1), psc2 (2), psc3 (3), psc4 (4), l2sc (51), tdm (100), lsc (150), fsc (200) This object is only meaningful if gmplsTunnelLSPEncoding is not set to 0." REFERENCE "1. Kompella, K., et al., OSPF Extensions in Support of Generalized MPLS, draft-ietf-ccamp-ospf-gmpls- extensions-07.txt, May 2002, work in progress. 2. Berger, L., et al., Generalized Multi-Protocol Label Switching (GMPLS) Signaling Functional Description, RFC 3471, January 2003." DEFVAL { unknown } ::= { gmplsTunnelEntry 4 } gmplsTunnelLinkProtection OBJECT-TYPE SYNTAX BITS { extraTraffic(1), unprotected(2), shared (3), dedicatedOneToOne (4), dedicatedOnePlusOne(5), enhanced(6) } MAX-ACCESS read-create STATUS current DESCRIPTION "This bitmask indicates the level of link protection required. A value of zero (no bits set) indicates that any protection may be used. The following describes these bitfields: extraTraffic Indicates that the LSP should use links that are protecting other (primary) traffic. Such LSPs may be preempted when the links carrying the (primary) traffic being protected fail. unprotected Indicates that the LSP should not use any link layer protection. shared Indicates that a shared link layer protection scheme, such as 1:N protection, should be used to support the LSP. dedicatedOneToOne Indicates that a dedicated link layer protection scheme, i.e., 1:1 protection, should be used to support the LSP. dedicatedOnePlusOne Indicates that a dedicated link layer protection scheme, i.e., 1+1 protection, should be used to support the LSP. enhanced Indicates that a protection scheme that is more reliable than Dedicated 1+1 should be used, e.g., 4 fiber BLSR/MS-SPRING. This object is only meaningful if gmplsTunnelLSPEncoding is not set to 0." DEFVAL { 0 } ::= { gmplsTunnelEntry 5 } gmplsTunnelGPid OBJECT-TYPE SYNTAX INTEGER (0..65535) MAX-ACCESS read-create STATUS current DESCRIPTION "This object indicates the payload carried by the LSP. It is only required when GMPLS will be used for this LSP. The values to use are currently defined in Generalized Multi-Protocol Label Switching (GMPLS) Signaling Functional Description, RFC 3471. Further values may be defined in future RFCs. unknown(0), asynchE4(5), asynchDS3T3(6), asynchE3(7), bitsynchE3(8), bytesynchE3(9), asynchDS2T2(10), bitsynchDS2T2(11), asynchE1(13), bytesynchE1(14), bytesynch31ByDS0(15), asynchDS1T1(16), bitsynchDS1T1(17), bytesynchDS1T1(18), VC11VC12(19), ds1SFAsynch(22), ds1ESFAsynch(23), ds3M23Asynch(24), ds3CBitParityAsynch(25), vtLovc(26), stsSpeHovc(27), posNoScramble16BitCrc(28), posNoScramble32BitCrc(29), posScramble16BitCrc(30), posScramble32BitCrc(31), atm(32) ethernet(33), sdhSonet(34), digitalwrapper(36), lambda(37), ansiEtsiPdh (38), lapsSdh (40), fddi (41), dqdb (42), fiberChannel3 (43), hdlc (44), ethernetV2DixOnly (45), ethernet802dot3Only (46) This object is only meaningful if gmplsTunnelLSPEncoding is not set to 0." REFERENCE "1. Berger, L., et al., Generalized Multi-Protocol Label Switching (GMPLS) Signaling Functional Description, RFC 3471, January 2003." DEFVAL { unknown } ::= { gmplsTunnelEntry 6 } gmplsTunnelSecondary OBJECT-TYPE SYNTAX TruthValue MAX-ACCESS read-create STATUS current DESCRIPTION "Indicates that the requested LSP is a secondary LSP. This object is only meaningful if gmplsTunnelLSPEncoding is not set to 0." DEFVAL { false } ::= { gmplsTunnelEntry 7 } gmplsTunnelDirection OBJECT-TYPE SYNTAX INTEGER { forward (0), bidirectional (1) } MAX-ACCESS read-create STATUS current DESCRIPTION "Whether this tunnel carries forward data (is unidirectional) or is bidirectional. Values of this object other than 'forward' are meaningful only if gmplsTunnelLSPEncoding is not set to 0." DEFVAL { forward } ::= { gmplsTunnelEntry 8 } gmplsTunnelPathComp OBJECT-TYPE SYNTAX INTEGER { dynamicFull(1),-- CSPF fully computed explicit(2),-- fully specified path dynamicPartial(3) -- CSPF partially computed } MAX-ACCESS read-create STATUS current DESCRIPTION "This value instructs the source node on how to perform path computation on the explicit route specified by the associated entries in the gmplsTunnelHopTable. dynamicFull The user specifies at least the source and destination of the path and expects that the CSPF will calculate the remainder of the path. explicit The user specifies the entire path for the tunnel to take. This path may contain strict or loose hops. Evaluation of the explicit route will be performed hop by hop through the network. dynamicPartial The user specifies at least the source and destination of the path and expects that the CSPF will calculate the remainder of the path. The path computed by CSPF is allowed to be only partially computed allowing the remainder of the path to be filled in across the network. This object deprecates gmplsTunnelHopEntryPathComp." DEFVAL { dynamicFull } ::= { gmplsTunnelEntry 9 } -- End of gmplsTunnelTable -- Begin gmplsTunnelHopTable gmplsTunnelHopTable OBJECT-TYPE SYNTAX SEQUENCE OF GmplsTunnelHopEntry MAX-ACCESS not-accessible STATUS current DESCRIPTION "The gmplsTunnelHopTable 'extends' the mplsTunnelHopTable. It is used to indicate the explicit labels to be used in an explicit path for a GMPLS tunnel defined in mplsTunnelTable and gmplsTunnelTable, when it is established using signaling. It does not insert new hops, but does define new values for hops defined in mplsTunnelHopTable. Each row in this table is indexed by the same indexes as mplsTunnelHopTable. It is acceptable for some rows in mplsTunnelHopTable to have corresponding entries in this table and some to have no corresponding entry in this table. The storage type for an entry in this table is inherited from mplsTunnelHopStorageType in the corresponding entry in mplsTunnelHopTable. The row status of an entry in this table is controlled by mplsTunnelHopRowStatus in the corresponding entry in mplsTunnelHopTable. That is, it is not permitted to create a row in this table, nor to modify an existing row, when the corresponding mplsTunnelHopRowStatus has value active(1)." ::= { gmplsTeObjects 2 } gmplsTunnelHopEntry OBJECT-TYPE SYNTAX GmplsTunnelHopEntry MAX-ACCESS not-accessible STATUS current DESCRIPTION "An entry in this table represents additions to a tunnel hop defined in mplsTunnelHopEntry. At an ingress to a tunnel an entry in this table is created by a network administrator for an ERLSP to be set up by a signaling protocol. At transit and egress nodes an entry in this table may be used to represent the explicit path instructions received using the signaling protocol." INDEX { mplsTunnelHopListIndex, mplsTunnelHopPathOptionIndex, mplsTunnelHopIndex } ::= { gmplsTunnelHopTable 1 } GmplsTunnelHopEntry ::= SEQUENCE { gmplsTunnelHopLabelStatuses BITS, gmplsTunnelHopExplicitLabel Unsigned32, gmplsTunnelHopExplicitReverseLabel Unsigned32, } gmplsTunnelHopLabelStatuses OBJECT-TYPE SYNTAX BITS { forwardPresent (0), reversePresent (1) } MAX-ACCESS read-only STATUS current DESCRIPTION "This bitmask indicates the presence of labels indicated by the gmplsTunnelHopExplicitLabel and gmplsTunnelHopExplicitReverseLabel objects. For the Present bits, a set bit indicates that a label is present for this hop in the route. This allows zero to be a valid label value." ::= { gmplsTunnelHopEntry 1 } gmplsTunnelHopExplicitLabel OBJECT-TYPE SYNTAX Unsigned32 MAX-ACCESS read-create STATUS current DESCRIPTION "Indicates the row entry in the gmplsLabelTable that defines the explicit label to use in the explicit route as the forward path label at this point. This value only has meaning if the forwardPresent bit of gmplsTunnelHopLabelStatuses is set. Note that the other indexes in the gmplsLabelTable should be interpreted as follows: - The gmplsLabelInterface should be zero because this label is not tied to any specific interface on this LSR - The gmplsLabelSubindex is used to represent label concatenations. The first (or only) component label SHOULD have gmplsLabelSubindex set to zero. This variable is only valid for settings of mplsTunnelHopAddrType which may be associated with a forward path label. Note that in implementations where the label may be encoded within a 32 bit integer and where gmplsLabelTable is not implemented, this object may directly contain the label value to use." ::= { gmplsTunnelHopEntry 2 } gmplsTunnelHopExplicitReverseLabel OBJECT-TYPE SYNTAX Unsigned32 MAX-ACCESS read-create STATUS current DESCRIPTION "Indicates the row entry in the gmplsLabelTable that defines the explicit label to use in the explicit route as the reverse path label at this point. This value only has meaning if the reversePresent bit of gmplsTunnelHopLabelStatuses is set. The same rules and notes apply as set out for gmplsTunnelHopExplicitLabel." ::= { gmplsTunnelHopEntry 3 } -- End of gmplsTunnelHopTable -- Tunnel Actual Route Hop table. gmplsTunnelARHopTable OBJECT-TYPE SYNTAX SEQUENCE OF GmplsTunnelARHopEntry MAX-ACCESS not-accessible STATUS current DESCRIPTION "The gmplsTunnelARHopTable 'extends' the mplsTunnelARHopTable. It is used to indicate the labels currently in use for a GMPLS tunnel defined in mplsTunnelTable and gmplsTunnelTable, as reported by the signaling protocol. It does not insert new hops, but does define new values for hops defined in mplsTunnelARHopTable. Each row in this table is indexed by the same indexes as mplsTunnelARHopTable. It is acceptable for some rows in mplsTunnelARHopTable to have corresponding entries in this table and some to have no corresponding entry in this table. Note that since the information necessary to build entries within this table is not provided by some signaling protocols and might not be returned in all cases of other signaling protocols, implementation of this table and mplsTunnelARHopTable is optional. Furthermore, since the information in this table is actually provided by the signaling protocol after the path has been set-up, the entries in this table are provided only for observation, and hence, all variables in this table are accessible exclusively as read-only." ::= { gmplsTeObjects 3 } gmplsTunnelARHopEntry OBJECT-TYPE SYNTAX MplsTunnelARHopEntry MAX-ACCESS not-accessible STATUS current DESCRIPTION "An entry in this table represents additions to a tunnel hop visible in mplsTunnelARHopEntry. An entry is created by the signaling protocol for a signaled ERLSP set up by the signaling protocol. At any node on the LSP (ingress, transit or egress) Thus at this table and mplsTunnelARHopTable (if the tables are supported and if the signaling protocol is recording actual route information) contains the actual route of the whole tunnel. If the signaling protocol is not recording the actual route, this table MAY report the information from the gmplsTunnelHopTable or the gmplsTunnelCHopTable. Note that the recording of actual labels is distinct from the recording of the actual route in some signaling protocols. This feature is enabled using the gmplsTunnelAttributes object." INDEX { mplsTunnelARHopListIndex, mplsTunnelARHopIndex } ::= { gmplsTunnelARHopTable 1 } GmplsTunnelARHopEntry ::= SEQUENCE { gmplsTunnelARHopLabelStatuses BITS, gmplsTunnelARHopExplicitLabel Unsigned32, gmplsTunnelARHopExplicitReverseLabel Unsigned32, gmplsTunnelARHopProtection BITS } gmplsTunnelARHopLabelStatuses OBJECT-TYPE SYNTAX BITS { forwardPresent (0), reversePresent (1), forwardGlobal (2), reverseGlobal (3) } MAX-ACCESS read-only STATUS current DESCRIPTION "This bitmask indicates the presence and status of labels indicated by the gmplsTunnelARHopExplicitLabel and gmplsTunnelARHopExplicitReverseLabel objects. For the Present bits, a set bit indicates that a label is present for this hop in the route. For the Global bits, a set bit indicates that the label comes from the Global Label Space. A clear bit indicates that this is a Per-Interface label. A Global bit only has meaning if the corresponding Present bit is set." ::= { gmplsTunnelARHopEntry 1 } gmplsTunnelARHopExplicitLabel OBJECT-TYPE SYNTAX Unsigned32 MAX-ACCESS read-only STATUS current DESCRIPTION "Indicates the row entry in the gmplsLabelTable that defines the label in use as the forward path label on the path at this point. This value only has meaning if the forwardPresent bit of gmplsTunnelARHopLabelStatuses is set. Note that the other indexes in the gmplsLabelTable should be interpreted as follows: - The gmplsLabelInterface should be zero because this label is not tied to any specific interface on this LSR - The gmplsLabelSubindex is used to represent label concatenations. The first (or only) component label SHOULD have gmplsLabelSubindex set to zero. This variable is only valid for settings of mplsTunnelARHopAddrType which may be associated with a forward path label. Note that in implementations where the label may be encoded within a 32 bit integer and where gmplsLabelTable is not implemented, this object may directly contain the label value to use." ::= { gmplsTunnelARHopEntry 2 } gmplsTunnelARHopExplicitReverseLabel OBJECT-TYPE SYNTAX Unsigned32 MAX-ACCESS read-only STATUS current DESCRIPTION "Indicates the row entry in the gmplsLabelTable that defines the label used in the path as reverse path at this point. This value only has meaning if the reversePresent bit of gmplsTunnelARHopLabelStatuses is set. The same rules and notes apply as set out for gmplsTunnelARHopExplicitLabel." ::= { gmplsTunnelARHopEntry 3 } gmplsTunnelARHopProtection OBJECT-TYPE SYNTAX BITS { localAvailable (0), localInUse (1) } MAX-ACCESS read-only STATUS current DESCRIPTION "Availability and usage of protection on the reported link. localAvailable Indicates that the link downstream of this node is protected via a local repair mechanism. localInUse Indicates that a local repair mechanism is in use to maintain this tunnel (usually in the face of an outage of the link it was previously routed over)." ::= { gmplsTunnelARHopEntry 4 } -- End of mplsTunnelARHopTable -- Tunnel Computed Hop table. gmplsTunnelCHopTable OBJECT-TYPE SYNTAX SEQUENCE OF GmplsTunnelCHopEntry MAX-ACCESS not-accessible STATUS current DESCRIPTION "The gmplsTunnelCHopTable 'extends' the mplsTunnelCHopTable. It is used to indicate additional information about the hops of a GMPLS tunnel defined in mplsTunnelTable and gmplsTunnelTable, as computed by a constraint-based routing protocol, based on the mplsTunnelHopTable and the gmplsTunnelHopTable. Each row in this table is indexed by the same indexes as mplsTunnelCHopTable. It is acceptable for some rows in mplsTunnelCHopTable to have corresponding entries in this table and some to have no corresponding entry in this table. Please note that since the information necessary to build entries within this table may not be supported by some LSRs, implementation of this table is optional. Furthermore, since the information in this table is actually provided by a path computation component after the path has been computed, the entries in this table are provided only for observation, and hence, all objects in this table are accessible exclusively as read-only." ::= { gmplsTeObjects 4 } gmplsTunnelCHopEntry OBJECT-TYPE SYNTAX GmplsTunnelCHopEntry MAX-ACCESS not-accessible STATUS current DESCRIPTION "An entry in this table represents additions to a computed tunnel hop visible in mplsTunnelCHopEntry. An entry is created by a path computation component based on the hops specified in the corresponding mplsTunnelHopTable and gmplsTunnelHopTable. At a transit LSR this table (if the table is supported) MAY contain the path computed by path computation engine on (or on behalf of) the transit LSR." INDEX { mplsTunnelCHopListIndex, mplsTunnelCHopIndex } ::= { gmplsTunnelCHopTable 1 } GmplsTunnelCHopEntry ::= SEQUENCE { gmplsTunnelCHopLabelStatuses BITS, gmplsTunnelCHopExplicitLabel Unsigned32, gmplsTunnelCHopExplicitReverseLabel Unsigned32, } gmplsTunnelCHopLabelStatuses OBJECT-TYPE SYNTAX BITS { forwardPresent (0), reversePresent (1) } MAX-ACCESS read-only STATUS current DESCRIPTION "This bitmask indicates the presence indicated by the gmplsTunnelCHopExplicitLabel and gmplsTunnelCHopExplicitReverseLabel objects. A set bit indicates that a label is present for this hop in the route thus allowing zero to be a valid label value." ::= { gmplsTunnelCHopEntry 1 } gmplsTunnelCHopExplicitLabel OBJECT-TYPE SYNTAX Unsigned32 MAX-ACCESS read-only STATUS current DESCRIPTION "Indicates the row entry in the gmplsLabelTable that defines the label to use as the forward path label on the path at this point. This value only has meaning if the forwardPresent bit of gmplsTunnelCHopLabelStatuses is set. Note that the other indexes in the gmplsLabelTable should be interpreted as follows: - The gmplsLabelInterface should be zero because this label is not tied to any specific interface on this LSR - The gmplsLabelSubindex is used to represent label concatenations. The first (or only) component label SHOULD have gmplsLabelSubindex set to zero. This variable is only valid for settings of mplsTunnelCHopAddrType which may be associated with a forward path label. Note that in implementations where the label may be encoded within a 32 bit integer and where gmplsLabelTable is not implemented, this object may directly contain the label value to use." ::= { gmplsTunnelCHopEntry 2 } gmplsTunnelCHopExplicitReverseLabel OBJECT-TYPE SYNTAX Unsigned32 MAX-ACCESS read-only STATUS current DESCRIPTION "Indicates the row entry in the gmplsLabelTable that defines the label to use in the path as reverse path at this point. This value only has meaning if the reversePresent bit of gmplsTunnelCHopLabelStatuses is set. The same rules and notes apply as set out for gmplsTunnelCHopExplicitLabel." ::= { gmplsTunnelCHopEntry 3 } -- End of gmplsTunnelCHopTable -- GMPLS Tunnel Reverse Direction Performance Table. gmplsTunnelReversePerfTable OBJECT-TYPE SYNTAX SEQUENCE OF GmplsTunnelReversePerfEntry MAX-ACCESS not-accessible STATUS current DESCRIPTION "This table 'augments' the gmplsTunnelTable to provides per-tunnel packet performance information for the reverse direction of a bidirectional tunnel. It can be seen as supplementing the mplsTunnelPerfTable which augments the mplsTunnelTable." ::= { gmplsTeObjects 5 } gmplsTunnelReversePerfEntry OBJECT-TYPE SYNTAX GmplsTunnelReversePerfEntry MAX-ACCESS not-accessible STATUS current DESCRIPTION "An entry in this table is created by the LSR for every bidirectional GMPLS tunnel where packets are visible to the LSR." AUGMENTS { gmplsTunnelEntry } ::= { gmplsTunnelReversePerfTable 1 } GmplsTunnelReversePerfEntry ::= SEQUENCE { gmplsTunnelReversePerfPackets Counter32, gmplsTunnelReversePerfHCPackets Counter64, gmplsTunnelReversePerfErrors Counter32, gmplsTunnelReversePerfBytes Counter32, gmplsTunnelReversePerfHCBytes Counter64 } gmplsTunnelReversePerfPackets OBJECT-TYPE SYNTAX Counter32 MAX-ACCESS read-only STATUS current DESCRIPTION "Number of packets forwarded on the tunnel in the reverse direction if it is bidirectional." ::= { gmplsTunnelReversePerfEntry 1 } gmplsTunnelReversePerfHCPackets OBJECT-TYPE SYNTAX Counter64 MAX-ACCESS read-only STATUS current DESCRIPTION "High capacity counter for number of packets forwarded on the tunnel in the reverse direction if it is bidirectional." ::= { gmplsTunnelReversePerfEntry 2 } gmplsTunnelReversePerfErrors OBJECT-TYPE SYNTAX Counter32 MAX-ACCESS read-only STATUS current DESCRIPTION "Number of errored packets received on the tunnel in the reverse direction if it is bidirectional." ::= { gmplsTunnelReversePerfEntry 3 } gmplsTunnelReversePerfBytes OBJECT-TYPE SYNTAX Counter32 MAX-ACCESS read-only STATUS current DESCRIPTION "Number of bytes forwarded on the tunnel in the reverse direction if it is bidirectional." ::= { gmplsTunnelReversePerfEntry 4 } gmplsTunnelReversePerfHCBytes OBJECT-TYPE SYNTAX Counter64 MAX-ACCESS read-only STATUS current DESCRIPTION "High capacity counter for number of bytes forwarded on the tunnel in the reverse direction if it is bidirectional." ::= { gmplsTunnelReversePerfEntry 5 } -- End of gmplsTunnelReversePerfTable -- GMPLS Tunnel Error Table. gmplsTunnelErrorTable OBJECT-TYPE SYNTAX SEQUENCE OF GmplsTunnelErrorEntry MAX-ACCESS not-accessible STATUS current DESCRIPTION "This table 'augments' the mplsTunnelTable This table provides per-tunnel information about errors. Errors may be detected locally or reported through the signaling protocol. Error reporting is not exclusive to GMPLS and this table may be applied in MPLS systems." ::= { gmplsTeObjects 6 } gmplsTunnelErrorEntry OBJECT-TYPE SYNTAX GmplsTunnelErrorEntry MAX-ACCESS not-accessible STATUS current DESCRIPTION "An entry in this table is created by the LSR for every tunnel where error information is visible to the LSR." AUGMENTS { mplsTunnelEntry } ::= { gmplsTunnelErrorTable 1 } GmplsTunnelErrorEntry ::= SEQUENCE { gmplsTunnelErrorLastErrorType INTEGER, gmplsTunnelErrorLastTime TimeStamp, gmplsTunnelErrorReporterType INTEGER, gmplsTunnelErrorReporterIpv4Addr InetAddressIPv4, gmplsTunnelErrorReporterIpv6Addr InetAddressIPv6, gmplsTunnelErrorCode Unsigned32, gmplsTunnelErrorSubcode Unsigned32, gmplsTunnelErrorHelpString DisplayString } gmplsTunnelErrorLastErrorType OBJECT-TYPE SYNTAX INTEGER { noError (0), unknown (1), localProtocol (2), remoteProtocol (3), configuration (4), pathComputation (5), localResources (6) } MAX-ACCESS read-only STATUS current DESCRIPTION "The nature of the last error. Provides interpretation context for gmplsTunnelErrorProtocolCode and gmplsTunnelErrorProtocolSubcode. A value of noError (0) shows that there is no error associated with this tunnel and means that the other objects in this entry have no meaning." ::= { gmplsTunnelErrorEntry 1 } gmplsTunnelErrorLastTime OBJECT-TYPE SYNTAX TimeStamp MAX-ACCESS read-only STATUS current DESCRIPTION "The time at which the last error occurred. This is presented as the value of SysUpTime when the error occurred or was reported to this node. If gmplsTunnelErrorLastErrorType has the value noError (0), then this object is ignored." ::= { gmplsTunnelErrorEntry 2 } gmplsTunnelErrorReporterType OBJECT-TYPE SYNTAX INTEGER { unknown (0), localNode (1), localIpV4 (2), remoteIpV4 (3), localIpV6 (4), remoteIpV6 (5) } MAX-ACCESS read-only STATUS current DESCRIPTION "The reporter of the last error recorded. This object is used principally to aid in interpretation of gmplsTunnelErrorReporterIpv4Addr and gmplsTunnelErrorReporterIpv6Addr. Where the error has been locally generated and there is no requirement to associate the error with any specific local address (such as an interface), the value localNode (2) may be used. If gmplsTunnelErrorLastError has the value noError (0), then this object is ignored." ::= { gmplsTunnelErrorEntry 3 } gmplsTunnelErrorReporterIpv4Addr OBJECT-TYPE SYNTAX InetAddressIPv4 MAX-ACCESS read-only STATUS current DESCRIPTION "The address of the node reporting the last error, or the address of the resource (such as an interface) associated with the error. If gmplsTunnelErrorLastErrorType has the value noError (0), then this object is ignored. This object only has meaning if the object gmplsTunnelErrorReporterType has value localIpV4 (2) or remoteIpV4 (3). Otherwise the object should contain the value zero and should be ignored." ::= { gmplsTunnelErrorEntry 4 } gmplsTunnelErrorReporterIpv6Addr OBJECT-TYPE SYNTAX InetAddressIPv6, MAX-ACCESS read-only STATUS current DESCRIPTION "The address of the node reporting the last error, or the address of the resource (such as an interface) associated with the error. If gmplsTunnelErrorLastErrorType has the value noError (0), then this object is ignored. This object only has meaning if the object gmplsTunnelErrorReporterType has value localIpV6 (4) or remoteIpV4 (5). Otherwise the object should contain the value zero and should be ignored." ::= { gmplsTunnelErrorEntry 5 } gmplsTunnelErrorCode OBJECT-TYPE SYNTAX Unsigned32 MAX-ACCESS read-only STATUS current DESCRIPTION "The primary error code associated with the last error. The interpretation of this error code depends on the value of gmplsTunnelErrorLastErrorType. If the value of gmplsTunnelErrorLastErrorType is noError (0) the value of this object should be 0 and should be ignored. If the value of gmplsTunnelErrorLastErrorType is localProtocol (2) or remoteProtocol (3) the error should be interpreted in the context of the signling protocol identified by the mplsTunnelSignallingProto object. Values in excess 32767 of are not used by signaling protocols and may safely be used as implementation- specific error codes. " ::= { gmplsTunnelErrorEntry 6 } gmplsTunnelErrorSubcode OBJECT-TYPE SYNTAX Unsigned32 MAX-ACCESS read-only STATUS current DESCRIPTION "The secondary error code associated with the last error and the protocol used to signal this tunnel. This value is interprettd in the context of the value of gmplsTunnelErrorCode. If the value of gmplsTunnelErrorLastErrorType is noError (0) the value of this object should be 0 and should be ignored." ::= { gmplsTunnelErrorEntry 7 } gmplsTunnelErrorHelpString OBJECT-TYPE SYNTAX DisplayString MAX-ACCESS read-only STATUS current DESCRIPTION "A textual string containing information about the last error, recovery actions and support advice. If there is no help string this object contains a zero length string. If the value of gmplsTunnelErrorLastErrorType is noError (0) this object should contain a zero length string, but may contain a help string indicating that there is no error." ::= { gmplsTunnelErrorEntry 8 } -- Module compliance. gmplsTeGroups OBJECT IDENTIFIER ::= { gmplsTeConformance 1 } gmplsTeCompliances OBJECT IDENTIFIER ::= { gmplsTeConformance 2 } gmplsTeModuleCompliance MODULE-COMPLIANCE STATUS current DESCRIPTION "Compliance statement for agents that support the GMPLS TE MIB." MODULE -- this module -- The mandatory group has to be implemented by all -- LSRs that originate/terminate ESLSPs/tunnels. -- In addition, depending on the type of tunnels -- supported, other groups become mandatory as -- explained below. MANDATORY-GROUPS { gmplsTunnelGroup, gmplsTunnelScalarGroup } GROUP gmplsTunnelManualGroup DESCRIPTION "This group is mandatory for devices which support manual configuration of tunnels, in addition to gmplsTunnelGroup. The following constraints apply: gmplsTunnelSignallingProto should be at least read- only with a value of none(1)." GROUP gmplsTunnelSignaledGroup DESCRIPTION "This group is mandatory for devices which support signaled tunnel set up, in addition to gmplsTunnelGroup. The following constraints apply: gmplsTunnelSignallingProto should be at least read- only returning a value of ldp(2), or rsvp(3)." GROUP gmplsTunnelIsNotIntfcGroup DESCRIPTION "This group is mandatory for devices which support tunnels that are not interfaces, in addition to gmplsTunnelGroup. The following constraints apply: gmplsTunnelIsIf must at least be read-only returning no(0)." GROUP gmplsTunnelIsIntfcGroup DESCRIPTION "This group is mandatory for devices which support tunnels that are interfaces, in addition to gmplsTunnelGroup. The following constraints apply: gmplsTunnelIsUnnum must at least be read-only returning false." GROUP gmplsTunnelOptionalGroup DESCRIPTION "Objects in this group are optional." -- GMPLS Tunnel scalars. OBJECT gmplsTunnelsConfigured MIN-ACCESS read-only DESCRIPTION "Write access is not required." OBJECT gmplsTunnelActive MIN-ACCESS read-only DESCRIPTION "Write access is not required." -- gmplsTunnelTable OBJECT gmplsTunnelIsUnnum MIN-ACCESS read-only DESCRIPTION "Write access is not required." OBJECT gmplsTunnelAttributes MIN-ACCESS read-only DESCRIPTION "Write access is not required." OBJECT gmplsTunnelLSPEncoding SYNTAX INTEGER { tunnelLspNotGmpls (0), tunnelLspPacket (1), tunnelLspEthernetV2Dix (2), tunnelLspAnsiPdh (3), tunnelLspEtsiPdh (4), tunnelLspSdhItutG7071996 (5), tunnelLspSonetAnsiT11051995 (6), tunnelLspDigitalWrapper (7), tunnelLspLambda (8), tunnelLspFiber (9), tunnelLspEthernet8023 (10), tunnelLspSdhItutG7072000 (11), tunnelLspSonetAnsiT11052000 (12) } MIN-ACCESS read-only DESCRIPTION "Only tunnelLspNotGmpls (0) is required." OBJECT gmplsTunnelLinkProtection MIN-ACCESS read-only DESCRIPTION "Read-only support is required." OBJECT gmplsTunnelGPid MIN-ACCESS read-only DESCRIPTION "Read-only support is required." OBJECT gmplsTunnelSecondary SYNTAX TruthValue MIN-ACCESS read-only DESCRIPTION "Only false is required." OBJECT gmplsTunnelBiDirectional SYNTAX TruthValue MIN-ACCESS read-only DESCRIPTION "Only false is required." OBJECT gmplsTunnelPathComp SYNTAX INTEGER { dynamicFull(1), -- CSPF fully computed explicit(2), -- fully dynamicPartial(3) -- CSPF partially computed } MIN-ACCESS read-only DESCRIPTION "Only explicit (2) is required." -- gmplsTunnelHopTable OBJECT gmplsTunnelHopUnnumAddrType MIN-ACCESS read-only DESCRIPTION "Write access is not required." OBJECT gmplsTunnelHopLabelStatuses MIN-ACCESS read-only DESCRIPTION "Write access is not required." OBJECT gmplsTunnelHopExplicitLabel MIN-ACCESS read-only DESCRIPTION "Write access is not required." OBJECT gmplsTunnelHopExplicitReverseLabel MIN-ACCESS read-only DESCRIPTION "Write access is not required." OBJECT gmplsTunnelHopUnnumberedInterface MIN-ACCESS read-only DESCRIPTION "Write access is not required." -- gmplsTunnelARHopTable OBJECT gmplsTunnelARHopUnnumAddrType MIN-ACCESS read-only DESCRIPTION "Write access is not required." OBJECT gmplsTunnelARHopLabelStatuses MIN-ACCESS read-only DESCRIPTION "Write access is not required." OBJECT gmplsTunnelARHopExplicitLabel MIN-ACCESS read-only DESCRIPTION "Write access is not required." OBJECT gmplsTunnelARHopExplicitReverseLabel MIN-ACCESS read-only DESCRIPTION "Write access is not required." -- glmpsTunnelCHopTable OBJECT gmplsTunnelCHopUnnumAddrType MIN-ACCESS read-only DESCRIPTION "Write access is not required." OBJECT gmplsTunnelCHopLabelStatuses MIN-ACCESS read-only DESCRIPTION "Write access is not required." OBJECT gmplsTunnelCHopExplicitLabel MIN-ACCESS read-only DESCRIPTION "Write access is not required." OBJECT gmplsTunnelCHopExplicitReverseLabel MIN-ACCESS read-only DESCRIPTION "Write access is not required." OBJECT gmplsTunnelCHopUnnumberedInterface MIN-ACCESS read-only DESCRIPTION "Write access is not required." -- gmplsTunnelPerfTable OBJECT gmplsTunnelPacketPerfRvsPackets MIN-ACCESS read-only DESCRIPTION "Write access is not required." OBJECT gmplsTunnelPacketPerfRvsHCPackets MIN-ACCESS read-only DESCRIPTION "Write access is not required." OBJECT gmplsTunnelPacketPerfRvsErrors MIN-ACCESS read-only DESCRIPTION "Write access is not required." OBJECT gmplsTunnelPacketPerfRvsBytes MIN-ACCESS read-only DESCRIPTION "Write access is not required." OBJECT gmplsTunnelPacketPerfRvsHCBytes MIN-ACCESS read-only DESCRIPTION "Write access is not required." OBJECT gmplsTunnelErrorLastError MIN-ACCESS read-only DESCRIPTION "Write access is not required." OBJECT gmplsTunnelErrorLastTime MIN-ACCESS read-only DESCRIPTION "Write access is not required." OBJECT gmplsTunnelErrorReporterType MIN-ACCESS read-only DESCRIPTION "Write access is not required." OBJECT gmplsTunnelErrorReporterIpv4Addr MIN-ACCESS read-only DESCRIPTION "Write access is not required." OBJECT gmplsTunnelErrorReporterIpv6Addr MIN-ACCESS read-only DESCRIPTION "Write access is not required." OBJECT gmplsTunnelErrorProtocolCode MIN-ACCESS read-only DESCRIPTION "Write access is not required." OBJECT gmplsTunnelErrorProtocolSubcode MIN-ACCESS read-only DESCRIPTION "Write access is not required." OBJECT gmplsTunnelErrorHelpString MIN-ACCESS read-only DESCRIPTION "Write access is not required." ::= { gmplsTeCompliances 1 } -- Units of conformance. gmplsTunnelGroup OBJECT-GROUP OBJECTS { gmplsTunnelDirection, gmplsTunnelPacketPerfRvsPackets, gmplsTunnelPacketPerfRvsHCPackets, gmplsTunnelPacketPerfRvsErrors, gmplsTunnelPacketPerfRvsBytes, gmplsTunnelPacketPerfRvsHCBytes, gmplsTunnelErrorLastError, gmplsTunnelErrorLastTime, gmplsTunnelErrorReporterType, gmplsTunnelErrorReporterIpv4Addr, gmplsTunnelErrorReporterIpv6Addr, gmplsTunnelErrorProtocolCode, gmplsTunnelErrorProtocolSubcode, gmplsTunnelErrorHelpString } STATUS current DESCRIPTION "Necessary, but not sufficient, set of objects to implement tunnels. In addition, depending on the type of the tunnels supported (for example, manually configured or signaled, persistent or non- persistent, etc.), the following other groups defined below are mandatory: gmplsTunnelManualGroup and/or gmplsTunnelSignaledGroup, gmplsTunnelIsNotIntfcGroup and/or gmplsTunnelIsIntfcGroup." ::= { gmplsTeGroups 1 } gmplsTunnelManualGroup OBJECT-GROUP OBJECTS { gmplsTunnelSignallingProto } STATUS current DESCRIPTION "Object(s) needed to implement manually configured tunnels." ::= { gmplsTeGroups 2 } gmplsTunnelSignaledGroup OBJECT-GROUP OBJECTS { gmplsTunnelLSPEncoding, gmplsTunnelLinkProtection, gmplsTunnelGPid, gmplsTunnelSecondary, gmplsTunnelHopUnnumAddrType, gmplsTunnelHopLabelStatuses, gmplsTunnelHopExplicitLabel, gmplsTunnelHopExplicitReverseLabel, gmplsTunnelHopUnnumberedInterface } STATUS current DESCRIPTION "Objects needed to implement signaled tunnels." ::= { gmplsTeGroups 3 } gmplsTunnelScalarGroup OBJECT-GROUP OBJECTS { gmplsTunnelsConfigured, gmplsTunnelActive } STATUS current DESCRIPTION "Scalar objects needed to implement MPLS tunnels." ::= { gmplsTeGroups 4 } gmplsTunnelIsIntfcGroup OBJECT-GROUP OBJECTS { gmplsTunnelIsUnnum } STATUS current DESCRIPTION "Objects needed to implement tunnels that are interfaces." ::= { gmplsTeGroups 5 } gmplsTunnelIsNotIntfcGroup OBJECT-GROUP OBJECTS { gmplsTunnelIsUnnum } STATUS current DESCRIPTION "Objects needed to implement tunnels that are not interfaces." ::= { gmplsTeGroups 6 } gmplsTunnelOptionalGroup OBJECT-GROUP OBJECTS { gmplsTunnelARHopUnnumAddrType, gmplsTunnelARHopLabelStatuses, gmplsTunnelARHopExplicitLabel, gmplsTunnelARHopExplicitReverseLabel, gmplsTunnelCHopUnnumAddrType, gmplsTunnelCHopLabelStatuses, gmplsTunnelCHopExplicitLabel, gmplsTunnelCHopExplicitReverseLabel, gmplsTunnelCHopUnnumberedInterface } STATUS current DESCRIPTION "The objects in this group are optional." ::= { gmplsTeGroups 7 } END -- -- Copyright (C) The Internet Society (2003). All Rights Reserved. -- This document and translations of it may be copied and furnished to -- others, and derivative works that comment on or otherwise explain it -- or assist in its implementation may be prepared, copied, published -- and distributed, in whole or in part, without restriction of any -- kind, provided that the above copyright notice and this paragraph are -- included on all such copies and derivative works. However, this -- document itself may not be modified in any way, such as by removing -- the copyright notice or references to the Internet Society or other -- Internet organizations, except as needed for the purpose of -- developing Internet standards in which case the procedures for -- copyrights defined in the Internet Standards process must be -- followed, or as required to translate it into languages other than -- English. -- -- The limited permissions granted above are perpetual and will not be -- revoked by the Internet Society or its successors or assigns. This -- document and the information contained herein is provided on an "AS -- IS" basis and THE INTERNET SOCIETY AND THE INTERNET ENGINEERING TASK -- FORCE DISCLAIMS 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.