9. Example of MPLS-TP Tunnel Setup
In this section, we provide an example of configuring MPLS-TP bidirectional tunnels with IP tunnel identifiers. This example provides the usage of the MPLS-TP Tunnel MIB along with the extended MIB modules introduced in this document.
Do note that a MPLS-TP Tunnel could be set up statically as well as signaled via the control plane. This example considers accessing MIB objects on a head-end for static and signaled MPLS-TP Tunnels. This section shows the configuration of the forward- and reverse-direction MPLS-TP LSPs that run between East and West, and vice versa. Only objects relevant to MPLS-TP Tunnels are illustrated here. In mplsTunnelExtNodeConfigTable: { -- Non-IP Ingress LSR_ID (Index to the table) mplsTunnelExtNodeConfigLocalId = 1, mplsTunnelExtNodeConfigGlobalId = 1234, mplsTunnelExtNodeConfigNodeId = 10, -- Mandatory parameters needed to activate the row go here mplsTunnelExtNodeConfigRowStatus = createAndGo (4) -- Non-IP Egress LSR ID (Index to the table) mplsTunnelExtNodeConfigLocalId = 2, mplsTunnelExtNodeConfigGlobalId = 1234, mplsTunnelExtNodeConfigNodeId = 20, -- Mandatory parameters needed to activate the row go here mplsTunnelExtNodeConfigRowStatus = createAndGo (4) } This will create an entry in the mplsTunnelExtNodeConfigTable for a Global_ID::Node_ID. The Ingress and Egress LSR are represented by separate entries. The following read-only mplsTunnelExtNodeIpMapTable table is populated automatically upon creating an entry in mplsTunnelExtNodeConfigTable, and this table is used to retrieve the local identifier for the given Global_ID::Node_ID. In mplsTunnelExtNodeIpMapTable: { -- Global_ID (Index to the table) mplsTunnelExtNodeIpMapGlobalId = 1234, -- Node Identifier (Index to the table) mplsTunnelExtNodeIpMapNodeId = 10, mplsTunnelExtNodeIpMapLocalId = 1 -- Global_ID (Index to the table) mplsTunnelExtNodeIpMapGlobalId = 1234,
-- Node Identifier (Index to the table) mplsTunnelExtNodeIpMapNodeId = 20, mplsTunnelExtNodeIpMapLocalId = 2 }9.1. Example of MPLS-TP Static Co-routed Bidirectional Tunnel Setup
The following denotes the co-routed bidirectional tunnel "head" entry.9.1.1. mplsTunnelEntry
In mplsTunnelTable: { mplsTunnelIndex = 1, mplsTunnelInstance = 1, -- Local map number created in mplsTunnelExtNodeConfigTable for -- Ingress LSR ID mplsTunnelIngressLSRId = 1, -- Local map number created in mplsTunnelExtNodeConfigTable for -- Egress LSR ID mplsTunnelEgressLSRId = 2, mplsTunnelName = "TP co-routed bidirectional LSP", mplsTunnelDescr = "East to West", mplsTunnelIsIf = true (1), -- RowPointer MUST point to the first accessible column mplsTunnelXCPointer = mplsXCLspId.4.0.0.0.1.1.0.4.0.0.0.1, mplsTunnelSignallingProto = none (1), mplsTunnelSetupPrio = 0, mplsTunnelHoldingPrio = 0, mplsTunnelSessionAttributes = 0, mplsTunnelLocalProtectInUse = false (0), -- RowPointer MUST point to the first accessible column mplsTunnelResourcePointer = mplsTunnelResourceMaxRate.5, mplsTunnelInstancePriority = 1, mplsTunnelHopTableIndex = 1, mplsTunnelIncludeAnyAffinity = 0, mplsTunnelIncludeAllAffinity = 0, mplsTunnelExcludeAnyAffinity = 0, mplsTunnelRole = head (1), -- Mandatory parameters needed to activate the row go here mplsTunnelRowStatus = createAndGo (4) }
9.1.2. mplsTunnelExtEntry
-- An MPLS extension table In mplsTunnelExtTable: { -- This opposite-direction tunnel pointer may point to 0.0 -- if co-routed bidirectional tunnel is managed by single tunnel -- entry mplsTunnelExtOppositeDirTnlPtr = 0.0 -- Set both the Ingress and Egress LocalId objects to TRUE, as -- this tunnel entry uses the local identifiers. mplsTunnelExtIngressLSRLocalIdValid = true, mplsTunnelExtEgressLSRLocalIdValid = true } Next, we must create the appropriate in-segment and out-segment entries. These are done in [RFC3813] using the mplsInSegmentTable and mplsOutSegmentTable.9.1.3. Forward-Direction mplsOutSegmentEntry
For the forward direction: In mplsOutSegmentTable: { mplsOutSegmentIndex = 0x0000001, mplsOutSegmentInterface = 13, -- outgoing interface mplsOutSegmentPushTopLabel = true(1), mplsOutSegmentTopLabel = 22, -- outgoing label -- RowPointer MUST point to the first accessible column. mplsOutSegmentTrafficParamPtr = 0.0, mplsOutSegmentRowStatus = createAndGo (4) }9.1.4. Reverse-Direction mplsInSegmentEntry
For the reverse direction: In mplsInSegmentTable: { mplsInSegmentIndex = 0x0000001 mplsInSegmentLabel = 21, -- incoming label mplsInSegmentNPop = 1, mplsInSegmentInterface = 13, -- incoming interface
-- RowPointer MUST point to the first accessible column. mplsInSegmentTrafficParamPtr = 0.0, mplsInSegmentRowStatus = createAndGo (4) } Next, two cross-connect entries are created in the mplsXCTable of the MPLS-LSR-STD-MIB [RFC3813], thereby associating the newly created segments together.9.1.5. Forward-Direction mplsXCEntry
In mplsXCTable: { mplsXCIndex = 0x01, mplsXCInSegmentIndex = 0x00000000, mplsXCOutSegmentIndex = 0x00000001, mplsXCLspId = 0x0102 -- unique ID -- only a single outgoing label mplsXCLabelStackIndex = 0x00, mplsXCRowStatus = createAndGo(4) }9.1.6. Reverse-Direction mplsXCEntry
In mplsXCTable: { mplsXCIndex = 0x01, mplsXCInSegmentIndex = 0x00000001, mplsXCOutSegmentIndex = 0x00000000, mplsXCLspId = 0x0102 -- unique ID -- only a single outgoing label mplsXCLabelStackIndex = 0x00, mplsXCRowStatus = createAndGo(4) } This table entry is extended by an entry in the mplsXCExtTable. Note that the nature of the 'extends' relationship is a sparse augmentation so that the entry in the mplsXCExtTable has the same index values as the entry in the mplsXCTable.
9.1.7. Forward-Direction mplsXCExtEntry
In mplsXCExtTable (0x01, 0x00000000, 0x00000001) { -- Back pointer from XC table to Tunnel table mplsXCExtTunnelPointer = mplsTunnelName.1.1.1.2 mplsXCExtOppositeDirXCPtr = mplsXCLspId.4.0.0.0.1.4.0.0.0.1.1.0 }9.1.8. Reverse-Direction mplsXCExtEntry
Next, for the reverse direction: In mplsXCExtTable (0x01, 0x00000001, 0x00000000) { -- Back pointer from XC table to Tunnel table mplsXCExtTunnelPointer = mplsTunnelName.1.1.1.2 mplsXCExtOppositeDirXCPtr = mplsXCLspId.4.0.0.0.1.1.0.4.0.0.0.1 }9.2. Example of MPLS-TP Static Associated Bidirectional Tunnel Setup
The MPLS-TP associated bidirectional tunnel is implemented by two different unidirectional tunnels (Forward and Reverse LSPs), and these are associated together using mplsTunnelExtTable. Two different tunnel entries to provide the forward and reverse directions MAY be used for co-routed bidirectional tunnels as well. The following denotes the associated bidirectional forward tunnel "head" entry:9.2.1. Forward-Direction mplsTunnelEntry
In mplsTunnelTable: { mplsTunnelIndex = 1, mplsTunnelInstance = 1, -- Local map number created in mplsTunnelExtNodeConfigTable for -- Ingress LSR ID mplsTunnelIngressLSRId = 1,
-- Local map number created in mplsTunnelExtNodeConfigTable for -- Egress LSR ID mplsTunnelEgressLSRId = 2, mplsTunnelName = "TP associated bidirectional forward LSP", mplsTunnelDescr = "East to West", mplsTunnelIsIf = true (1), -- RowPointer MUST point to the first accessible column mplsTunnelXCPointer = mplsXCLspId.4.0.0.0.1.1.0.4.0.0.0.1, mplsTunnelSignallingProto = none (1), mplsTunnelSetupPrio = 0, mplsTunnelHoldingPrio = 0, mplsTunnelSessionAttributes = 0, mplsTunnelLocalProtectInUse = false (0), -- RowPointer MUST point to the first accessible column mplsTunnelResourcePointer = mplsTunnelResourceMaxRate.5, mplsTunnelInstancePriority = 1, mplsTunnelHopTableIndex = 1, mplsTunnelIncludeAnyAffinity = 0, mplsTunnelIncludeAllAffinity = 0, mplsTunnelExcludeAnyAffinity = 0, mplsTunnelRole = head (1), -- Mandatory parameters needed to activate the row go here mplsTunnelRowStatus = createAndGo (4) }9.2.2. Forward-Direction mplsTunnelExtEntry
For the associated bidirectional forward LSP, in mplsTunnelExtTable: { mplsTunnelExtOppositeDirPtr = mplsTunnelName.2.1.2.1 -- Set both the Ingress and Egress LocalId objects to TRUE, as -- this tunnel entry uses the local identifiers. mplsTunnelExtIngressLSRLocalIdValid = true, mplsTunnelExtEgressLSRLocalIdValid = true }
9.2.3. Forward-Direction mplsOutSegmentTable
For the forward direction: In mplsOutSegmentTable: { mplsOutSegmentIndex = 0x0000001, mplsOutSegmentInterface = 13, -- outgoing interface mplsOutSegmentPushTopLabel = true(1), mplsOutSegmentTopLabel = 22, -- outgoing label -- RowPointer MUST point to the first accessible column. mplsOutSegmentTrafficParamPtr = 0.0, mplsOutSegmentRowStatus = createAndGo (4) }9.2.4. Forward-Direction mplsXCEntry
In mplsXCTable: { mplsXCIndex = 0x01, mplsXCInSegmentIndex = 0x00000000, mplsXCOutSegmentIndex = 0x00000001, mplsXCLspId = 0x0102 -- unique ID -- only a single outgoing label mplsXCLabelStackIndex = 0x00, mplsXCRowStatus = createAndGo(4) }9.2.5. Forward-Direction mplsXCExtEntry
In mplsXCExtTable (0x01, 0x00000000, 0x00000001) { -- Back pointer from XC table to Tunnel table mplsXCExtTunnelPointer = mplsTunnelName.1.1.1.2 mplsXCExtOppositeDirXCPtr = mplsXCLspId.4.0.0.0.1.4.0.0.0.1.1.0 }
9.2.6. Reverse-Direction mplsTunnelEntry
The following denotes the configured associated bidirectional reverse tunnel "tail" entry: In mplsTunnelTable: { mplsTunnelIndex = 2, mplsTunnelInstance = 1, -- Local map number created in mplsTunnelExtNodeConfigTable for -- Ingress LSR ID mplsTunnelIngressLSRId = 2, -- Local map number created in mplsTunnelExtNodeConfigTable for -- Egress LSR ID mplsTunnelEgressLSRId = 1, mplsTunnelName = "TP associated bidirectional reverse LSP", mplsTunnelDescr = "West to East", mplsTunnelIsIf = true (1), -- RowPointer MUST point to the first accessible column mplsTunnelXCPointer = mplsXCLspId.4.0.0.0.1.4.0.0.0.1.1.0, mplsTunnelSignallingProto = none (1), mplsTunnelSetupPrio = 0, mplsTunnelHoldingPrio = 0, mplsTunnelSessionAttributes = 0, mplsTunnelLocalProtectInUse = false (0), -- RowPointer MUST point to the first accessible column mplsTunnelResourcePointer = mplsTunnelResourceMaxRate.5, mplsTunnelInstancePriority = 1, mplsTunnelHopTableIndex = 1, mplsTunnelIncludeAnyAffinity = 0, mplsTunnelIncludeAllAffinity = 0, mplsTunnelExcludeAnyAffinity = 0, mplsTunnelRole = head (1), -- Mandatory parameters needed to activate the row go here mplsTunnelRowStatus = createAndGo (4) }
9.2.7. Reverse-Direction mplsTunnelExtEntry
For the associated bidirectional reverse LSP, in mplsTunnelExtTable: { mplsTunnelExtOppositeDirPtr = mplsTunnelName.1.1.1.2 -- Set both the Ingress and Egress LocalId objects to TRUE, as -- this tunnel entry uses the local identifiers. mplsTunnelExtIngressLSRLocalIdValid = true, mplsTunnelExtEgressLSRLocalIdValid = true }9.2.8. Reverse-Direction mplsInSegmentEntry
Next, we must create the appropriate in-segment and out-segment entries. These are done in [RFC3813] using the mplsInSegmentTable and mplsOutSegmentTable. In mplsInSegmentTable: { mplsInSegmentIndex = 0x0000001 mplsInSegmentLabel = 21, -- incoming label mplsInSegmentNPop = 1, mplsInSegmentInterface = 13, -- incoming interface -- RowPointer MUST point to the first accessible column. mplsInSegmentTrafficParamPtr = 0.0, mplsInSegmentRowStatus = createAndGo (4) } Next, two cross-connect entries are created in the mplsXCTable of the MPLS-LSR-STD-MIB [RFC3813], thereby associating the newly created segments together.9.2.9. Reverse-Direction mplsXCEntry
In mplsXCTable: { mplsXCIndex = 0x01, mplsXCInSegmentIndex = 0x00000001, mplsXCOutSegmentIndex = 0x00000000, mplsXCLspId = 0x0102 -- unique ID -- only a single outgoing label mplsXCLabelStackIndex = 0x00, mplsXCRowStatus = createAndGo(4) }
This table entry is extended by an entry in the mplsXCExtTable. Note that the nature of the 'extends' relationship is a sparse augmentation so that the entry in the mplsXCExtTable has the same index values as the entry in the mplsXCTable.9.2.10. Reverse-Direction mplsXCExtEntry
Next, for the reverse direction: In mplsXCExtTable (0x01, 0x00000001, 0x00000000) { -- Back pointer from XC table to Tunnel table mplsXCExtTunnelPointer = mplsTunnelName.2.1.2.1 mplsXCExtOppositeDirXCPtr = mplsXCLspId.4.0.0.0.1.1.0.4.0.0.0.1 }9.3. Example of MPLS-TP Signaled Co-routed Bidirectional Tunnel Setup
The following denotes the co-routed bidirectional tunnel "head" entry. In intermediate and tail-end nodes, the tunnel table and its associated tables are created by the local management subsystem (e.g., agent) when the MPLS-TP Tunnel is signaled successfully. Refer to [RFC3812] and [RFC4802] for examples of signaled tunnel table configuration.9.3.1. mplsTunnelEntry
In mplsTunnelTable: { mplsTunnelIndex = 1, mplsTunnelInstance = 0, -- Local map number created in mplsTunnelExtNodeConfigTable for -- Ingress LSR-Id. For the intermediate and tail-end nodes, -- the local management entity is expected to pick the first -- available local identifier that is not used in mplsTunnelTable. mplsTunnelIngressLSRId = 1, -- Local map number created in mplsTunnelExtNodeConfigTable for -- Egress LSR ID mplsTunnelEgressLSRId = 2, mplsTunnelName = "TP co-routed bidirectional LSP", mplsTunnelDescr = "East to West", mplsTunnelIsIf = true (1),
-- RowPointer MUST point to the first accessible column mplsTunnelXCPointer = mplsXCLspId.4.0.0.0.1.1.0.4.0.0.0.1, mplsTunnelSignallingProto = none (1), mplsTunnelSetupPrio = 0, mplsTunnelHoldingPrio = 0, mplsTunnelSessionAttributes = 0, mplsTunnelLocalProtectInUse = false (0), -- RowPointer MUST point to the first accessible column mplsTunnelResourcePointer = mplsTunnelResourceMaxRate.5, mplsTunnelInstancePriority = 1, mplsTunnelHopTableIndex = 1, mplsTunnelIncludeAnyAffinity = 0, mplsTunnelIncludeAllAffinity = 0, mplsTunnelExcludeAnyAffinity = 0, mplsTunnelRole = head (1), -- Mandatory parameters needed to activate the row go here mplsTunnelRowStatus = createAndGo (4) }9.3.2. mplsTunnelExtEntry
-- An MPLS extension table In mplsTunnelExtTable: { -- This opposite-direction tunnel pointer may point to 0.0 -- if co-routed bidirectional tunnel is managed by a single -- tunnel entry mplsTunnelExtOppositeDirTnlPtr = 0.0 -- Set both the Ingress and Egress LocalId objects to TRUE, as -- this tunnel entry uses the local identifiers. mplsTunnelExtIngressLSRLocalIdValid = true, mplsTunnelExtEgressLSRLocalIdValid = true } Next, we must create the appropriate in-segment and out-segment entries. These are done in [RFC3813] using the mplsInSegmentTable and mplsOutSegmentTable.9.3.3. Forward-Direction mplsOutSegmentEntry
The forward-direction mplsOutSegmentTable will be populated automatically based on the information received from the signaling protocol.
9.3.4. Reverse-Direction mplsInSegmentEntry
The reverse-direction mplsOutSegmentTable will be populated automatically based on the information received from the signaling protocol. Next, two cross-connect entries are created in the mplsXCTable of the MPLS-LSR-STD-MIB [RFC3813], thereby associating the newly created segments together.9.3.5. Forward-Direction mplsXCEntry
The forward-direction mplsXCEntry will be populated as soon as the forward-path label information is available.9.3.6. Reverse-Direction mplsXCEntry
The reverse-direction mplsXCEntry will be populated as soon as the reverse-path label information is available. This table entry is extended by an entry in the mplsXCExtTable. Note that the nature of the 'extends' relationship is a sparse augmentation so that the entry in the mplsXCExtTable has the same index values as the entry in the mplsXCTable.9.3.7. Forward-Direction mplsXCExtEntry
Once the forward path information is negotiated using the signaling protocol, the forward-direction mplsXCExtEntry will be created for associating the opposite-direction XC entry and tunnel table entry.9.3.8. Reverse-Direction mplsXCExtEntry
Once the reverse path information is negotiated using the signaling protocol, the reverse-direction mplsXCExtEntry will be created for associating the opposite-direction XC entry and tunnel table entry.
10. MPLS Textual Convention Extension MIB Definitions
MPLS-TC-EXT-STD-MIB DEFINITIONS ::= BEGIN IMPORTS MODULE-IDENTITY, Unsigned32 FROM SNMPv2-SMI -- RFC 2578 TEXTUAL-CONVENTION FROM SNMPv2-TC -- RFC 2579 mplsStdMIB FROM MPLS-TC-STD-MIB -- RFC 3811 ; mplsTcExtStdMIB MODULE-IDENTITY LAST-UPDATED "201502020000Z" -- February 2, 2015 ORGANIZATION "Multiprotocol Label Switching (MPLS) Working Group" CONTACT-INFO " Venkatesan Mahalingam Dell Inc, 5450 Great America Parkway, Santa Clara, CA 95054, USA Email: venkat.mahalingams@gmail.com Kannan KV Sampath Redeem, India Email: kannankvs@gmail.com Sam Aldrin Huawei Technologies 2330 Central Express Way, Santa Clara, CA 95051, USA Email: aldrin.ietf@gmail.com Thomas D. Nadeau Email: tnadeau@lucidvision.com " DESCRIPTION "This MIB module contains Textual Conventions for LSPs of MPLS- based transport networks.
Copyright (c) 2015 IETF Trust and the persons identified as authors of the code. All rights reserved. Redistribution and use in source and binary forms, with or without modification, is permitted pursuant to, and subject to the license terms contained in, the Simplified BSD License set forth in Section 4.c of the IETF Trust's Legal Provisions Relating to IETF Documents (http://trustee.ietf.org/license-info)." -- Revision history. REVISION "201502020000Z" -- February 2, 2015 DESCRIPTION "MPLS Textual Convention Extensions" ::= { mplsStdMIB 17 } MplsGlobalId ::= TEXTUAL-CONVENTION STATUS current DESCRIPTION "This object contains the Textual Convention for an IP-based operator-unique identifier (Global_ID). The Global_ID can contain the 2-octet or 4-octet value of the operator's Autonomous System Number (ASN). When the Global_ID is derived from a 2-octet ASN, the two high-order octets of this 4-octet identifier MUST be set to zero (0x00). Further, ASN 0 is reserved. The size of the Global_ID string MUST be zero if the Global_ID is invalid. Note that a Global_ID of zero is limited to entities contained within a single operator and MUST NOT be used across a Network-to-Network Interface (NNI). A non-zero Global_ID MUST be derived from an ASN owned by the operator." REFERENCE "MPLS Transport Profile (MPLS-TP) Identifiers, RFC 6370, Section 3" SYNTAX OCTET STRING (SIZE (4)) MplsCcId ::= TEXTUAL-CONVENTION STATUS current DESCRIPTION "The CC (Country Code) is a string of two characters, each being an uppercase Basic Latin alphabetic (i.e., A-Z).
The characters are encoded using ITU-T Recommendation T.50. The size of the CC string MUST be zero if the CC identifier is invalid." REFERENCE "MPLS-TP Identifiers Following ITU-T Conventions, RFC 6923, Section 3. International Reference Alphabet (IRA) (Formerly International Alphabet No. 5 or IA5) - Information technology - 7-bit coded character set for information exchange, ITU-T Recommendation T.50, September 1992." SYNTAX OCTET STRING (SIZE (0|2)) MplsIccId ::= TEXTUAL-CONVENTION STATUS current DESCRIPTION "The ICC is a string of one to six characters, each an uppercase Basic Latin alphabetic (i.e., A-Z) or numeric (i.e., 0-9). The characters are encoded using ITU-T Recommendation T.50. The size of the ICC string MUST be zero if the ICC identifier is invalid." REFERENCE "MPLS-TP Identifiers Following ITU-T Conventions, RFC 6923, Section 3. International Reference Alphabet (IRA) (Formerly International Alphabet No. 5 or IA5) - Information technology - 7-bit coded character set for information exchange, ITU-T Recommendation T.50, September 1992." SYNTAX OCTET STRING (SIZE (0|1..6)) MplsNodeId ::= TEXTUAL-CONVENTION DISPLAY-HINT "d" STATUS current DESCRIPTION "The Node_ID is assigned within the scope of the Global_ID/ICC_Operator_ID. When IPv4 addresses are in use, the value of this object can be derived from the LSR's IPv4 loopback address. When IPv6 addresses are in use, the value of this object can be a 32-bit value unique within the scope of a Global_ID. Note that, when IP reachability is not needed, the 32-bit Node_ID is not required to have any association with the IPv4 address space. The value of 0 indicates an invalid Node_ID."
REFERENCE "MPLS Transport Profile (MPLS-TP) Identifiers, RFC 6370, Section 4" SYNTAX Unsigned32 (0|1..4294967295) -- MPLS-TC-EXT-STD-MIB module ends END11. MPLS Identifier MIB Definitions
MPLS-ID-STD-MIB DEFINITIONS ::= BEGIN IMPORTS MODULE-IDENTITY, OBJECT-TYPE FROM SNMPv2-SMI -- RFC 2578 MODULE-COMPLIANCE, OBJECT-GROUP FROM SNMPv2-CONF -- RFC 2580 mplsStdMIB FROM MPLS-TC-STD-MIB -- RFC 3811 MplsGlobalId, MplsCcId, MplsIccId, MplsNodeId FROM MPLS-TC-EXT-STD-MIB ; mplsIdStdMIB MODULE-IDENTITY LAST-UPDATED "201502020000Z" -- February 2, 2015 ORGANIZATION "Multiprotocol Label Switching (MPLS) Working Group" CONTACT-INFO " Venkatesan Mahalingam Dell Inc, 5450 Great America Parkway, Santa Clara, CA 95054, USA Email: venkat.mahalingams@gmail.com Kannan KV Sampath Redeem, India Email: kannankvs@gmail.com Sam Aldrin Huawei Technologies 2330 Central Express Way, Santa Clara, CA 95051, USA Email: aldrin.ietf@gmail.com
Thomas D. Nadeau
Email: tnadeau@lucidvision.com
"
DESCRIPTION
"This MIB module contains identifier object definitions for
MPLS Traffic Engineering in transport networks.
Copyright (c) 2015 IETF Trust and the persons identified as
authors of the code. All rights reserved.
Redistribution and use in source and binary forms, with or
without modification, is permitted pursuant to, and subject to
the license terms contained in, the Simplified BSD License set
forth in Section 4.c of the IETF Trust's Legal Provisions
Relating to IETF Documents
(http://trustee.ietf.org/license-info)."
-- Revision history.
REVISION
"201502020000Z" -- February 2, 2015
DESCRIPTION
"This MIB modules defines the MIB objects for MPLS-TP
identifiers"
::= { mplsStdMIB 18 }
-- notifications
mplsIdNotifications OBJECT IDENTIFIER ::= { mplsIdStdMIB 0 }
-- tables, scalars
mplsIdObjects OBJECT IDENTIFIER ::= { mplsIdStdMIB 1 }
-- conformance
mplsIdConformance OBJECT IDENTIFIER ::= { mplsIdStdMIB 2 }
-- MPLS common objects
mplsIdGlobalId OBJECT-TYPE
SYNTAX MplsGlobalId
MAX-ACCESS read-write
STATUS current
DESCRIPTION
"This object allows the operator or service provider to
assign a unique operator identifier, also called the MPLS-TP
Global_ID.
If this value is used in mplsTunnelExtNodeConfigGlobalId
for mapping Global_ID::Node_ID with the local identifier,
then this object value MUST NOT be changed."
::= { mplsIdObjects 1 }
mplsIdNodeId OBJECT-TYPE SYNTAX MplsNodeId MAX-ACCESS read-write STATUS current DESCRIPTION "This object allows the operator or service provider to assign a unique MPLS-TP Node_ID. The Node_ID is assigned within the scope of the Global_ID/ICC_Operator_ID. If this value is used in mplsTunnelExtNodeConfigNodeId for mapping Global_ID::Node_ID with the local identifier, then this object value SHOULD NOT be changed. If this value is used in mplsTunnelExtNodeConfigNodeId for mapping ICC_Operator_ID::Node_ID with the local identifier, then this object value MUST NOT be changed." ::= { mplsIdObjects 2 } mplsIdCc OBJECT-TYPE SYNTAX MplsCcId MAX-ACCESS read-write STATUS current DESCRIPTION "This object allows the operator or service provider to assign a Country Code (CC) to the node. Global uniqueness of ICC is assured by concatenating the ICC with a Country Code (CC). If this value is used in mplsTunnelExtNodeConfigCcId for mapping ICC_Operator_ID::Node_ID with the local identifier, then this object value MUST NOT be changed." REFERENCE "MPLS-TP Identifiers Following ITU-T Conventions, RFC 6923, Section 3" ::= { mplsIdObjects 3 } mplsIdIcc OBJECT-TYPE SYNTAX MplsIccId MAX-ACCESS read-write STATUS current DESCRIPTION "This object allows the operator or service provider to assign a unique MPLS-TP ITU-T Carrier Code (ICC) to the node. Together, the CC and the ICC form the ICC_Operator_ID as CC::ICC. If this value is used in mplsTunnelExtNodeConfigIccId for mapping ICC_Operator_ID::Node_ID with the local identifier, then this object value MUST NOT be changed." REFERENCE "MPLS-TP Identifiers Following ITU-T Conventions, RFC 6923, Section 3"
::= { mplsIdObjects 4 } -- Module compliance. mplsIdCompliances OBJECT IDENTIFIER ::= { mplsIdConformance 1 } mplsIdGroups OBJECT IDENTIFIER ::= { mplsIdConformance 2 } -- Compliance requirement for fully compliant implementations. mplsIdModuleFullCompliance MODULE-COMPLIANCE STATUS current DESCRIPTION "Compliance statement for agents that provide full support of the MPLS-ID-STD-MIB module." MODULE -- this module -- The mandatory group has to be implemented by all LSRs that -- originate, terminate, or act as transit for MPLS-TP Tunnels. GROUP mplsIdIpOperatorGroup DESCRIPTION "This group is mandatory for devices that support IP-based identifier configuration." GROUP mplsIdIccOperatorGroup DESCRIPTION "This group is mandatory for devices that support ICC-based identifier configuration." ::= { mplsIdCompliances 1 } -- Compliance requirement for read-only implementations. mplsIdModuleReadOnlyCompliance MODULE-COMPLIANCE STATUS current DESCRIPTION "Compliance statement for agents that only provide read-only support for the MPLS-ID-STD-MIB module." MODULE -- this module
GROUP mplsIdIpOperatorGroup DESCRIPTION "This group is mandatory for devices that support IP-based identifier configuration." GROUP mplsIdIccOperatorGroup DESCRIPTION "This group is mandatory for devices that support ICC-based identifier configuration." OBJECT mplsIdGlobalId MIN-ACCESS read-only DESCRIPTION "Write access is not required." OBJECT mplsIdNodeId MIN-ACCESS read-only DESCRIPTION "Write access is not required." OBJECT mplsIdCc MIN-ACCESS read-only DESCRIPTION "Write access is not required." OBJECT mplsIdIcc MIN-ACCESS read-only DESCRIPTION "Write access is not required." ::= { mplsIdCompliances 2 } -- Units of conformance. mplsIdIpOperatorGroup OBJECT-GROUP OBJECTS { mplsIdGlobalId, mplsIdNodeId } STATUS current DESCRIPTION "The objects in this group are optional for an ICC-based node." ::= { mplsIdGroups 1 }
mplsIdIccOperatorGroup OBJECT-GROUP OBJECTS { mplsIdNodeId, mplsIdCc, mplsIdIcc } STATUS current DESCRIPTION "The objects in this group are optional for an IP-based node." ::= { mplsIdGroups 2 } -- MPLS-ID-STD-MIB module ends END12. MPLS LSR Extension MIB Definitions
MPLS-LSR-EXT-STD-MIB DEFINITIONS ::= BEGIN IMPORTS MODULE-IDENTITY, OBJECT-TYPE FROM SNMPv2-SMI -- RFC 2578 MODULE-COMPLIANCE, OBJECT-GROUP FROM SNMPv2-CONF -- RFC 2580 mplsStdMIB FROM MPLS-TC-STD-MIB -- RFC 3811 RowPointer FROM SNMPv2-TC -- RFC 2579 mplsXCIndex, mplsXCInSegmentIndex, mplsXCOutSegmentIndex, mplsInterfaceGroup, mplsInSegmentGroup, mplsOutSegmentGroup, mplsXCGroup, mplsLsrNotificationGroup FROM MPLS-LSR-STD-MIB; -- RFC 3813 mplsLsrExtStdMIB MODULE-IDENTITY LAST-UPDATED "201502020000Z" -- February 2, 2015 ORGANIZATION "Multiprotocol Label Switching (MPLS) Working Group" CONTACT-INFO " Venkatesan Mahalingam Dell Inc, 5450 Great America Parkway, Santa Clara, CA 95054, USA Email: venkat.mahalingams@gmail.com
Kannan KV Sampath
Redeem,
India
Email: kannankvs@gmail.com
Sam Aldrin
Huawei Technologies
2330 Central Express Way,
Santa Clara, CA 95051, USA
Email: aldrin.ietf@gmail.com
Thomas D. Nadeau
Email: tnadeau@lucidvision.com
"
DESCRIPTION
"This MIB module contains generic object definitions for
MPLS LSRs in transport networks.
Copyright (c) 2015 IETF Trust and the persons identified as
authors of the code. All rights reserved.
Redistribution and use in source and binary forms, with or
without modification, is permitted pursuant to, and subject to
the license terms contained in, the Simplified BSD License set
forth in Section 4.c of the IETF Trust's Legal Provisions
Relating to IETF Documents
(http://trustee.ietf.org/license-info)."
-- Revision history.
REVISION
"201502020000Z" -- February 2, 2015
DESCRIPTION
"MPLS LSR-specific MIB objects extension"
::= { mplsStdMIB 19 }
-- notifications
mplsLsrExtNotifications OBJECT IDENTIFIER ::= { mplsLsrExtStdMIB 0 }
-- tables, scalars
mplsLsrExtObjects OBJECT IDENTIFIER
::= { mplsLsrExtStdMIB 1 }
-- conformance
mplsLsrExtConformance OBJECT IDENTIFIER
::= { mplsLsrExtStdMIB 2 }
-- MPLS LSR common objects
mplsXCExtTable OBJECT-TYPE SYNTAX SEQUENCE OF MplsXCExtEntry MAX-ACCESS not-accessible STATUS current DESCRIPTION "This table sparse augments the mplsXCTable of MPLS-LSR-STD-MIB (RFC 3813) to provide MPLS-TP-specific information about associated tunnel information" REFERENCE "Multiprotocol Label Switching (MPLS) Label Switching Router (LSR) Management Information Base (MIB), RFC 3813." ::= { mplsLsrExtObjects 1 } mplsXCExtEntry OBJECT-TYPE SYNTAX MplsXCExtEntry MAX-ACCESS not-accessible STATUS current DESCRIPTION "An entry in this table sparsely extends the cross-connect information represented by an entry in the mplsXCTable in MPLS-LSR-STD-MIB (RFC 3813) through a sparse augmentation. An entry can be created by a network operator via SNMP SET commands or in response to signaling protocol events." REFERENCE "Multiprotocol Label Switching (MPLS) Label Switching Router (LSR) Management Information Base (MIB), RFC 3813." INDEX { mplsXCIndex, mplsXCInSegmentIndex, mplsXCOutSegmentIndex } ::= { mplsXCExtTable 1 } MplsXCExtEntry ::= SEQUENCE { mplsXCExtTunnelPointer RowPointer, mplsXCExtOppositeDirXCPtr RowPointer } mplsXCExtTunnelPointer OBJECT-TYPE SYNTAX RowPointer MAX-ACCESS read-only STATUS current DESCRIPTION "This read-only object indicates the back pointer to the tunnel entry segment. The only valid value for Tunnel Pointer is mplsTunnelTable entry."
REFERENCE "Multiprotocol Label Switching (MPLS) Label Switching Router (LSR) Management Information Base (MIB), RFC 3813." ::= { mplsXCExtEntry 1 } mplsXCExtOppositeDirXCPtr OBJECT-TYPE SYNTAX RowPointer MAX-ACCESS read-create STATUS current DESCRIPTION "This object indicates the pointer to the opposite- direction XC entry. This object cannot be modified if mplsXCRowStatus for the corresponding entry in the mplsXCTable is active(1). If this pointer is not set or removed, mplsXCOperStatus should be set to down(2)." REFERENCE "Multiprotocol Label Switching (MPLS) Label Switching Router (LSR) Management Information Base (MIB), RFC 3813." ::= { mplsXCExtEntry 2 } mplsLsrExtCompliances OBJECT IDENTIFIER ::= { mplsLsrExtConformance 1 } mplsLsrExtGroups OBJECT IDENTIFIER ::= { mplsLsrExtConformance 2 } -- Compliance requirement for fully compliant implementations. mplsLsrExtModuleFullCompliance MODULE-COMPLIANCE STATUS current DESCRIPTION "Compliance statement for agents that provide full support for MPLS-LSR-EXT-STD-MIB. The mandatory group has to be implemented by all LSRs that originate, terminate, or act as transit for TE-LSPs/tunnels. In addition, depending on the type of tunnels supported, other groups become mandatory as explained below." MODULE MPLS-LSR-STD-MIB -- The MPLS-LSR-STD-MIB, RFC 3813 MANDATORY-GROUPS { mplsInSegmentGroup, mplsOutSegmentGroup, mplsXCGroup, mplsLsrNotificationGroup }
MODULE -- this module MANDATORY-GROUPS { mplsXCExtGroup } ::= { mplsLsrExtCompliances 1 } -- Compliance requirement for implementations that provide -- read-only access. mplsLsrExtModuleReadOnlyCompliance MODULE-COMPLIANCE STATUS current DESCRIPTION "Compliance requirement for implementations that only provide read-only support for MPLS-LSR-EXT-STD-MIB. Such devices can then be monitored but cannot be configured using this MIB module." MODULE MPLS-LSR-STD-MIB MANDATORY-GROUPS { mplsInterfaceGroup, mplsInSegmentGroup, mplsOutSegmentGroup } MODULE -- this module GROUP mplsXCExtReadOnlyObjectsGroup DESCRIPTION "This group is mandatory for devices that support opposite-direction XC configuration of tunnels." -- mplsXCExtTable OBJECT mplsXCExtOppositeDirXCPtr MIN-ACCESS read-only DESCRIPTION "Write access is not required. This object indicates the pointer to the opposite- direction XC entry. The only valid value for XC Pointer is mplsXCTable entry." ::= { mplsLsrExtCompliances 2 } -- Units of conformance.
mplsXCExtGroup OBJECT-GROUP OBJECTS { mplsXCExtTunnelPointer, mplsXCExtOppositeDirXCPtr } STATUS current DESCRIPTION "This object should be supported in order to access the tunnel entry from the XC entry." ::= { mplsLsrExtGroups 1 } mplsXCExtReadOnlyObjectsGroup OBJECT-GROUP OBJECTS { mplsXCExtTunnelPointer, mplsXCExtOppositeDirXCPtr } STATUS current DESCRIPTION "This Object is needed to associate the opposite-direction (forward/reverse) XC entry." ::= { mplsLsrExtGroups 2 } -- MPLS-LSR-EXT-STD-MIB module ends END