::= { mplsLsrObjects 10 }
mplsXCEntry OBJECT-TYPE
SYNTAX MplsXCEntry
MAX-ACCESS not-accessible
STATUS current
DESCRIPTION
"A row in this table represents one cross-connect
entry. It is indexed by the following objects:
- cross-connect index mplsXCIndex that uniquely
identifies a group of cross-connect entries
- in-segment index, mplsXCInSegmentIndex
- out-segment index, mplsXCOutSegmentIndex
LSPs originating at this LSR:
These are represented by using the special
of value of mplsXCInSegmentIndex set to the
string containing a single octet 0x00. In
this case the mplsXCOutSegmentIndex
MUST not be the string containing a single
octet 0x00.
LSPs terminating at this LSR:
These are represented by using the special value
mplsXCOutSegmentIndex set to the string containing
a single octet 0x00.
Special labels:
Entries indexed by the strings containing the
reserved MPLS label values as a single octet 0x00
through 0x0f (inclusive) imply LSPs terminating at
this LSR. Note that situations where LSPs are
terminated with incoming label equal to the string
containing a single octet 0x00 can be distinguished
from LSPs originating at this LSR because the
mplsXCOutSegmentIndex equals the string containing the
single octet 0x00.
An entry can be created by a network administrator
or by an SNMP agent as instructed by an MPLS
signaling protocol."
INDEX { mplsXCIndex, mplsXCInSegmentIndex,
mplsXCOutSegmentIndex }
::= { mplsXCTable 1 }
MplsXCEntry ::= SEQUENCE {
mplsXCIndex MplsIndexType,
mplsXCInSegmentIndex MplsIndexType,
mplsXCOutSegmentIndex MplsIndexType,
mplsXCLspId MplsLSPID,
mplsXCLabelStackIndex MplsIndexType,
mplsXCOwner MplsOwner ,
mplsXCRowStatus RowStatus,
mplsXCStorageType StorageType,
mplsXCAdminStatus INTEGER,
mplsXCOperStatus INTEGER
}
mplsXCIndex OBJECT-TYPE
SYNTAX MplsIndexType
MAX-ACCESS not-accessible
STATUS current
DESCRIPTION
"Primary index for the conceptual row identifying a
group of cross-connect segments. The string
containing a single octet 0x00 is an invalid index."
::= { mplsXCEntry 1 }
mplsXCInSegmentIndex OBJECT-TYPE
SYNTAX MplsIndexType
MAX-ACCESS not-accessible
STATUS current
DESCRIPTION
"Incoming label index.
If this object is set to the string containing
a single octet 0x00, this indicates a special
case outlined in the table’s description above.
In this case no corresponding mplsInSegmentEntry
shall exist."
::= { mplsXCEntry 2 }
mplsXCOutSegmentIndex OBJECT-TYPE
SYNTAX MplsIndexType
MAX-ACCESS not-accessible
STATUS current
DESCRIPTION
"Index of out-segment for LSPs not terminating on
this LSR if not set to the string containing the
single octet 0x00. If the segment identified by this
entry is terminating, then this object MUST be set to
the string containing a single octet 0x00 to indicate
that no corresponding mplsOutSegmentEntry shall
exist."
::= { mplsXCEntry 3 }
mplsXCLspId OBJECT-TYPE
SYNTAX MplsLSPID
MAX-ACCESS read-create
STATUS current
DESCRIPTION
"This value identifies the label switched path that
this cross-connect entry belongs to. This object
cannot be modified if mplsXCRowStatus is active(1)
except for this object."
::= { mplsXCEntry 4 }
mplsXCLabelStackIndex OBJECT-TYPE
SYNTAX MplsIndexType
MAX-ACCESS read-create
STATUS current
DESCRIPTION
"Primary index into mplsLabelStackTable identifying a
stack of labels to be pushed beneath the top label.
Note that the top label identified by the out-
segment ensures that all the components of a
multipoint-to-point connection have the same
outgoing label. A value of the string containing the
single octet 0x00 indicates that no labels are to
be stacked beneath the top label.
This object cannot be modified if mplsXCRowStatus is
active(1)."
::= { mplsXCEntry 5 }
mplsXCOwner OBJECT-TYPE
SYNTAX MplsOwner
MAX-ACCESS read-only
STATUS current
DESCRIPTION
"Denotes the entity that created and is responsible
for managing this cross-connect."
::= { mplsXCEntry 6 }
mplsXCRowStatus OBJECT-TYPE
SYNTAX RowStatus
MAX-ACCESS read-create
STATUS current
DESCRIPTION
"For creating, modifying, and deleting this row.
When a row in this table has a row in the active(1)
state, no objects in this row except this object
and the mplsXCStorageType can be modified. "
::= { mplsXCEntry 7 }
mplsXCStorageType OBJECT-TYPE
SYNTAX StorageType
MAX-ACCESS read-create
STATUS current
DESCRIPTION
"This variable indicates the storage type for this
object. The agent MUST ensure that the associated in
and out segments also have the same StorageType value
and are restored consistently upon system restart.
This value SHOULD be set to permanent(4) if created
as a result of a static LSP configuration.
Conceptual rows having the value ’permanent’
need not allow write-access to any columnar
objects in the row."
DEFVAL { volatile }
::= { mplsXCEntry 8 }
mplsXCAdminStatus OBJECT-TYPE
SYNTAX INTEGER {
up(1), -- ready to pass packets
down(2),
testing(3) -- in some test mode
}
MAX-ACCESS read-create
STATUS current
DESCRIPTION
"The desired operational status of this segment."
DEFVAL { up }
::= { mplsXCEntry 9 }
mplsXCOperStatus OBJECT-TYPE
SYNTAX INTEGER {
up(1), -- ready to pass packets
down(2),
testing(3), -- in some test mode
unknown(4), -- status cannot be determined
-- for some reason.
dormant(5),
notPresent(6), -- some component is missing
lowerLayerDown(7) -- down due to the state of
-- lower layer interfaces
}
MAX-ACCESS read-only
STATUS current
DESCRIPTION
"The actual operational status of this cross-
connect."
::= { mplsXCEntry 10 }
-- End of mplsXCTable
-- Label stack table.
mplsMaxLabelStackDepth OBJECT-TYPE
SYNTAX Unsigned32 (1..2147483647)
MAX-ACCESS read-only
STATUS current
DESCRIPTION
"The maximum stack depth supported by this LSR."
::= { mplsLsrObjects 11 }
mplsLabelStackIndexNext OBJECT-TYPE
SYNTAX MplsIndexNextType
MAX-ACCESS read-only
STATUS current
DESCRIPTION
"This object contains the next available value to
be used for mplsLabelStackIndex when creating entries
in the mplsLabelStackTable. The special string
containing the single octet 0x00
indicates that no more new entries can be created
in the relevant table. Agents not allowing managers
to create entries in this table MUST set this value
to the string containing the single octet 0x00."
::= { mplsLsrObjects 12 }
mplsLabelStackTable OBJECT-TYPE
SYNTAX SEQUENCE OF MplsLabelStackEntry
MAX-ACCESS not-accessible
STATUS current
DESCRIPTION
"This table specifies the label stack to be pushed
onto a packet, beneath the top label. Entries into
this table are referred to from mplsXCTable."
::= { mplsLsrObjects 13 }
mplsLabelStackEntry OBJECT-TYPE
SYNTAX MplsLabelStackEntry
MAX-ACCESS not-accessible
STATUS current
DESCRIPTION
"An entry in this table represents one label which is
to be pushed onto an outgoing packet, beneath the
top label. An entry can be created by a network
administrator or by an SNMP agent as instructed by
an MPLS signaling protocol."
INDEX { mplsLabelStackIndex, mplsLabelStackLabelIndex }
::= { mplsLabelStackTable 1 }
MplsLabelStackEntry ::= SEQUENCE {
mplsLabelStackIndex MplsIndexType,
mplsLabelStackLabelIndex Unsigned32,
mplsLabelStackLabel MplsLabel,
mplsLabelStackLabelPtr RowPointer,
mplsLabelStackRowStatus RowStatus,
mplsLabelStackStorageType StorageType
}
mplsLabelStackIndex OBJECT-TYPE
SYNTAX MplsIndexType
MAX-ACCESS not-accessible
STATUS current
DESCRIPTION
"Primary index for this row identifying a stack of
labels to be pushed on an outgoing packet, beneath
the top label. An index containing the string with
a single octet 0x00 MUST not be used."
::= { mplsLabelStackEntry 1 }
mplsLabelStackLabelIndex OBJECT-TYPE
SYNTAX Unsigned32 (1..2147483647)
MAX-ACCESS not-accessible
STATUS current
DESCRIPTION
"Secondary index for this row identifying one label
of the stack. Note that an entry with a smaller
mplsLabelStackLabelIndex would refer to a label
higher up the label stack and would be popped at a
downstream LSR before a label represented by a
higher mplsLabelStackLabelIndex at a downstream
LSR."
::= { mplsLabelStackEntry 2 }
mplsLabelStackLabel OBJECT-TYPE
SYNTAX MplsLabel
MAX-ACCESS read-create
STATUS current
DESCRIPTION
"The label to pushed."
::= { mplsLabelStackEntry 3 }
mplsLabelStackLabelPtr OBJECT-TYPE
SYNTAX RowPointer
MAX-ACCESS read-create
STATUS current
DESCRIPTION
"If the label for this segment cannot be represented
fully within the mplsLabelStackLabel object,
this object MUST point to the first accessible
column of a conceptual row in an external table containing
the label. In this case, the mplsLabelStackLabel
object SHOULD be set to 0 and ignored. This object
MUST be set to zeroDotZero otherwise."
DEFVAL { zeroDotZero }
::= { mplsLabelStackEntry 4 }
mplsLabelStackRowStatus OBJECT-TYPE
SYNTAX RowStatus
MAX-ACCESS read-create
STATUS current
DESCRIPTION
"For creating, modifying, and deleting this row.
When a row in this table has a row in the active(1)
state, no objects in this row except this object
and the mplsLabelStackStorageType can be modified."
::= { mplsLabelStackEntry 5 }
mplsLabelStackStorageType OBJECT-TYPE
SYNTAX StorageType
MAX-ACCESS read-create
STATUS current
DESCRIPTION
"This variable indicates the storage type for this
object. This object cannot be modified if
mplsLabelStackRowStatus is active(1).
No objects are required to be writable for
rows in this table with this object set to
permanent(4).
The agent MUST ensure that all related entries
in this table retain the same value for this
object. Agents MUST ensure that the storage type
for all entries related to a particular mplsXCEntry
retain the same value for this object as the
mplsXCEntry’s StorageType."
DEFVAL { volatile }
::= { mplsLabelStackEntry 6 }
-- End of mplsLabelStackTable
-- Begin mplsInSegmentMapTable
mplsInSegmentMapTable OBJECT-TYPE
SYNTAX SEQUENCE OF MplsInSegmentMapEntry
MAX-ACCESS not-accessible
STATUS current
DESCRIPTION
"This table specifies the mapping from the
mplsInSegmentIndex to the corresponding
mplsInSegmentInterface and mplsInSegmentLabel
objects. The purpose of this table is to
provide the manager with an alternative
means by which to locate in-segments."
::= { mplsLsrObjects 14 }
mplsInSegmentMapEntry OBJECT-TYPE
SYNTAX MplsInSegmentMapEntry
MAX-ACCESS not-accessible
STATUS current
DESCRIPTION
"An entry in this table represents one interface
and incoming label pair.
In cases where the label cannot fit into the
mplsInSegmentLabel object, the mplsInSegmentLabelPtr
will indicate this by being set to the first accessible
column in the appropriate extension table’s row,
and the mplsInSegmentLabel SHOULD be set to 0.
In all other cases when the label is
represented within the mplsInSegmentLabel object, the
mplsInSegmentLabelPtr MUST be 0.0.
Implementors need to be aware that if the value of
the mplsInSegmentMapLabelPtrIndex (an OID) has more
that 111 sub-identifiers, then OIDs of column
instances in this table will have more than 128
sub-identifiers and cannot be accessed using SNMPv1,
SNMPv2c, or SNMPv3."
INDEX { mplsInSegmentMapInterface,
mplsInSegmentMapLabel,
mplsInSegmentMapLabelPtrIndex }
::= { mplsInSegmentMapTable 1 }
MplsInSegmentMapEntry ::= SEQUENCE {
mplsInSegmentMapInterface InterfaceIndexOrZero,
mplsInSegmentMapLabel MplsLabel,
mplsInSegmentMapLabelPtrIndex RowPointer,
mplsInSegmentMapIndex MplsIndexType
}
mplsInSegmentMapInterface OBJECT-TYPE
SYNTAX InterfaceIndexOrZero
MAX-ACCESS not-accessible
STATUS current
DESCRIPTION
"This index contains the same value as the
mplsInSegmentIndex in the mplsInSegmentTable."
::= { mplsInSegmentMapEntry 1 }
mplsInSegmentMapLabel OBJECT-TYPE
SYNTAX MplsLabel
MAX-ACCESS not-accessible
STATUS current
DESCRIPTION
"This index contains the same value as the
mplsInSegmentLabel in the mplsInSegmentTable."
::= { mplsInSegmentMapEntry 2 }
mplsInSegmentMapLabelPtrIndex OBJECT-TYPE
SYNTAX RowPointer
MAX-ACCESS not-accessible
STATUS current
DESCRIPTION
"This index contains the same value as the
mplsInSegmentLabelPtr.
If the label for the InSegment cannot be represented
fully within the mplsInSegmentLabel object,
this index MUST point to the first accessible
column of a conceptual row in an external table containing
the label. In this case, the mplsInSegmentTopLabel
object SHOULD be set to 0 and ignored. This object MUST
be set to zeroDotZero otherwise."
::= { mplsInSegmentMapEntry 3 }
mplsInSegmentMapIndex OBJECT-TYPE
SYNTAX MplsIndexType
MAX-ACCESS read-only
STATUS current
DESCRIPTION
"The mplsInSegmentIndex that corresponds
to the mplsInSegmentInterface and
mplsInSegmentLabel, or the mplsInSegmentInterface
and mplsInSegmentLabelPtr, if applicable.
The string containing the single octet 0x00
MUST not be returned."
::= { mplsInSegmentMapEntry 4 }
-- End mplsInSegmentMapTable
-- Notification Configuration
mplsXCNotificationsEnable OBJECT-TYPE
SYNTAX TruthValue
MAX-ACCESS read-write
STATUS current
DESCRIPTION
"If this object is set to true(1), then it enables
the emission of mplsXCUp and mplsXCDown
notifications; otherwise these notifications are not
emitted."
REFERENCE
"See also RFC3413 for explanation that
notifications are under the ultimate control of the
MIB module in this document."
DEFVAL { false }
::= { mplsLsrObjects 15 }
-- Cross-connect.
mplsXCUp NOTIFICATION-TYPE
OBJECTS { mplsXCOperStatus, -- start of range
mplsXCOperStatus -- end of range
}
STATUS current
DESCRIPTION
"This notification is generated when the
mplsXCOperStatus object for one or more contiguous
entries in mplsXCTable are about to enter the up(1)
state from some other state. The included values of
mplsXCOperStatus MUST both be set equal to this
new state (i.e: up(1)). The two instances of
mplsXCOperStatus in this notification indicate the range
of indexes that are affected. Note that all the indexes
of the two ends of the range can be derived from the
instance identifiers of these two objects. For
cases where a contiguous range of cross-connects
have transitioned into the up(1) state at roughly
the same time, the device SHOULD issue a single
notification for each range of contiguous indexes in
an effort to minimize the emission of a large number
of notifications. If a notification has to be
issued for just a single cross-connect entry, then
the instance identifier (and values) of the two
mplsXCOperStatus objects MUST be the identical."
::= { mplsLsrNotifications 1 }
mplsXCDown NOTIFICATION-TYPE
OBJECTS {
mplsXCOperStatus, -- start of range
mplsXCOperStatus -- end of range
}
STATUS current
DESCRIPTION
"This notification is generated when the
mplsXCOperStatus object for one or more contiguous
entries in mplsXCTable are about to enter the
down(2) state from some other state. The included values
of mplsXCOperStatus MUST both be set equal to this
down(2) state. The two instances of mplsXCOperStatus
in this notification indicate the range of indexes
that are affected. Note that all the indexes of the
two ends of the range can be derived from the
instance identifiers of these two objects. For
cases where a contiguous range of cross-connects
have transitioned into the down(2) state at roughly
the same time, the device SHOULD issue a single
notification for each range of contiguous indexes in
an effort to minimize the emission of a large number
of notifications. If a notification has to be
issued for just a single cross-connect entry, then
the instance identifier (and values) of the two
mplsXCOperStatus objects MUST be identical."
::= { mplsLsrNotifications 2 }
-- End of notifications.
-- Module compliance.
mplsLsrGroups
OBJECT IDENTIFIER ::= { mplsLsrConformance 1 }
mplsLsrCompliances
OBJECT IDENTIFIER ::= { mplsLsrConformance 2 }
-- Compliance requirement for fully compliant implementations.
mplsLsrModuleFullCompliance MODULE-COMPLIANCE
STATUS current
DESCRIPTION "Compliance statement for agents that provide full
support for MPLS-LSR-STD-MIB. Such devices can
then be monitored and also be configured using
this MIB module."
MODULE IF-MIB -- The Interfaces Group MIB, RFC 2863.
MANDATORY-GROUPS {
ifGeneralInformationGroup,
ifCounterDiscontinuityGroup
}
MODULE -- This module.
MANDATORY-GROUPS {
mplsInterfaceGroup,
mplsInSegmentGroup,
mplsOutSegmentGroup,
mplsXCGroup,
mplsPerfGroup
}
GROUP mplsLabelStackGroup
DESCRIPTION "This group is only mandatory for LSRs that wish to
support the modification of LSP label stacks.
"
GROUP mplsHCInSegmentPerfGroup
DESCRIPTION "This group is mandatory for those in-segment entries
for which the object mplsInSegmentOutOctets wraps
around too quickly based on the criteria specified in
RFC 2863 for high-capacity counters.
"
GROUP mplsHCOutSegmentPerfGroup
DESCRIPTION "This group is mandatory for those out-segment entries
for which the object mplsOutSegmentPerfOctets wraps
around too quickly based on the criteria specified in
RFC 2863 for high-capacity counters.
"
GROUP mplsLsrNotificationGroup
DESCRIPTION "This group is only mandatory for those implementations
which can efficiently implement the notifications
contained in this group."
OBJECT mplsInSegmentRowStatus
SYNTAX RowStatus { active(1), notInService(2) }
WRITE-SYNTAX RowStatus { active(1), notInService(2),
createAndGo(4), destroy(6)
}
DESCRIPTION "Support for createAndWait and notReady is