Internet Engineering Task Force Kingston Smiler Selvaraj Internet-Draft IpInfusion Intended status: Standards Track M.Venkatesan Expires: July 27, 2013 Dell Inc. V. Manral Hewlett-Packard Corp Daniel King Old Dog Consulting Sam Aldrin Huawei Technologies January 23, 2013 MPLS Transport Profile Linear Protection MIB draft-smiler-mpls-tp-linear-protection-mib-03 Abstract This memo defines a portion of the Management Information Base (MIB) for use with network management protocols. In particular it defines objects for managing MPLS Transport Profile (MPLS-TP) Linear Protection. Status of This Memo This Internet-Draft is submitted to IETF in full conformance with the provisions of BCP 78 and BCP 79. Internet-Drafts are working documents of the Internet Engineering Task Force (IETF), its areas, and its working groups. Note that other groups may also distribute working documents as Internet-Drafts. Internet-Drafts are draft documents valid for a maximum of six months and may be updated, replaced, or obsoleted by other documents at any time. It is inappropriate to use Internet-Drafts as reference material or to cite them other than as "work in progress." The list of current Internet-Drafts can be accessed at http://www.ietf.org/ietf/1id-abstracts.txt. The list of Internet-Draft Shadow Directories can be accessed at http://www.ietf.org/shadow.html. This Internet-Draft will expire on July 27, 2013. Copyright and License Notice Copyright (c) 2013 IETF Trust and the persons identified as the document authors. All rights reserved. Smiler et al. Expires July 27, 2013 [Page 1] Internet-Draft MPLS-TP Linear Protection MIB January 23, 2013 This document is subject to BCP 78 and the IETF Trust's Legal Provisions Relating to IETF Documents (http://trustee.ietf.org/license-info) in effect on the date of publication of this document. Please review these documents carefully, as they describe your rights and restrictions with respect to this document. Code Components extracted from this document must include Simplified BSD License text as described in Section 4.e of the Trust Legal Provisions and are provided without warranty as described in the Simplified BSD License. Table of Contents 1. Introduction . . . . . . . . . . . . . . . . . . . . . . . . . 2 2. The Internet-Standard Management Framework . . . . . . . . . . 2 3. Conventions . . . . . . . . . . . . . . . . . . . . . . . . . 3 4. Overview . . . . . . . . . . . . . . . . . . . . . . . . . . . 3 5. Structure of the MIB Module . . . . . . . . . . . . . . . . . 3 5.1. Textual Conventions . . . . . . . . . . . . . . . . . . . 3 5.2. The MPLS TP Linear Protection Subtree . . . . . . . . . . 3 5.3. The Notifications Subtree . . . . . . . . . . . . . . . . 3 5.4. The Table Structures . . . . . . . . . . . . . . . . . . . 3 6. Relationship to Other MIB Modules . . . . . . . . . . . . . . 4 6.1. Relationship to MPLS OAM maintenance identifiers MIB module 4 6.2. MIB modules required for IMPORTS . . . . . . . . . . . . . 4 7. Definitions . . . . . . . . . . . . . . . . . . . . . . . . . 5 8. Security Considerations . . . . . . . . . . . . . . . . . . . 19 9. IANA Considerations . . . . . . . . . . . . . . . . . . . . . 19 10. References .................................................. 19 10.1. Normative References .................................... 19 10.2. Informative References .................................. 20 11. Acknowledgments .............................................. 20 12. Author's Address ............................................. 21 Smiler et al. Expires July 27, 2013 [Page 2] Internet-Draft MPLS-TP Linear Protection MIB January 23, 2013 1. Introduction This memo defines a portion of the Management Information Base (MIB) for use with network management protocols. In particular it defines objects for managing MPLS Transport Profile (MPLS-TP) Linear Protection. This MIB module should be used for configuring and managing the MPLS TP linear protection for MPLS TP LSPs. 2. The Internet-Standard Management Framework For a detailed overview of the documents that describe the current Internet-Standard Management Framework, please refer to section 7 of RFC 3410 [RFC3410]. Managed objects are accessed via a virtual information store, termed the Management Information Base or MIB. MIB objects are generally accessed through the Simple Network Management Protocol (SNMP). Objects in the MIB are defined using the mechanisms defined in the Structure of Management Information (SMI). This memo specifies a MIB module that is compliant to the SMIv2, which is described in STD 58, RFC 2578 [RFC2578], STD 58, RFC 2579 [RFC2579] and STD 58, RFC 2580 [RFC2580]. 3. Conventions The key words "MUST", "MUST NOT", "REQUIRED", "SHALL", "SHALL NOT", "SHOULD", "SHOULD NOT", "RECOMMENDED", "MAY", and "OPTIONAL" in this document are to be interpreted as described in RFC 2119 [RFC2119]. 4. Overview [RFC6378] defines the protocol to provide a linear protection switching mechanism for MPLS transport profile with protection domain as point-to-point LSP. The detailed protocol specification of MPLS transport profile linear protection is described in [RFC6378]. This document specifies a MIB module for the LER that supports MPLS TP Linear protection (which includes 1:n protection architecture) and a MIB module that defines textual conventions. 5. Structure of the MIB Module 5.1. Textual Conventions The following new textual conventions are defined in a separate MIB module in this document Smiler et al. Expires July 27, 2013 [Page 3] Internet-Draft MPLS-TP Linear Protection MIB January 23, 2013 MplsLpsReq MplsLpsFpathPath MplsLpsCommand 5.2. The MPLS TP Linear Protection Subtree MPLS-LPS-MIB is the MIB module defined in this document, and it is put under mplsStdMIB. 5.3. The Notifications Subtree Notifications are defined to inform the management station about switchover and mode mismatch of linear protection switching group. Two notifications are defined for this purpose. The notification, mplsLpsEventSwitchover is to inform the management station about the switchover of the active path and the notification mplsLpsEventModeMismatch is to inform the management station about the mismatch in the revertive mode across the end point of the protection domain. 5.4. The Table Structures The MPLS TP Linear protection MIB module has four tables. The tables are as follows o mplsLpsConfigTable This table is used to configure MPLS TP Linear protection switching Group. The protection switching group is identified by mplsLpsConfigGroupName. The other attributes in this table can be used to configure properties that are specific to the protection switching group. o mplsLpsStatusTable This table provides the current status information of mpls linear protection groups that have been configured on the system. When a protection group is configured or deleted in the mplsLpsConfigTable, then the corresponding row of that session in the mplsLpsStatusTable is, respectively, automatically created or deleted. o mplsLpsMeConfigTable This table is used to associate the Maintenance Entities (MEs) to the protection switching group. The ME is identified by mplsOamIdMegIndex, mplsOamIdMeIndex and mplsOamIdMeMpIndex. Smiler et al. Expires July 27, 2013 [Page 4] Internet-Draft MPLS-TP Linear Protection MIB January 23, 2013 o mplsLpsMeStatusTable This table provides the current information about the protection state of MEs that have been configured on the system. When a ME configured or deleted in the mplsLpsMeConfigTable, then the corresponding row of that session in the mplsLpsMeStatusTable is, respectively, automatically created or deleted. 6. Relationship to Other MIB Modules 6.1. Relationship to the MPLS OAM maintenance identifiers MIB module The mplsLpsMeConfigTable entry is extended by entry in the mplsOamIdMeTable [MPLS-OAM-ID-STD-MIB] defined in draft-ietf-mpls-tp- oam-id-mib. Note that the nature of the 'extends' relationship is a sparse augmentation so that the entry in the mplsLpsMeConfigTable has the same index values as the entry in the mplsOamIdMeTable. Each time that an entry is created in the mplsOamIdMeTable for which the LER supports MPLS TP Linear protection a row is created automatically in the mplsLpsMeConfigTable. 6.2. MIB modules required for IMPORTS The MPLS-LPS-MIB module requires following MIB modules for IMPORTS: o SNMPv2-SMI defined in [RFC2578] o SNMPv2-CONF defined in [RFC2580] o SNMPv2-TC defined in [RFC2579] o MPLS-OAM-ID-STD-MIB defined in [draft-ietf-mpls-tp-oam-id-mib] 7. Definitions MPLS-LPS-MIB DEFINITIONS ::= BEGIN IMPORTS MODULE-IDENTITY, NOTIFICATION-TYPE, OBJECT-TYPE, Gauge32, Counter32, Integer32, Unsigned32 FROM SNMPv2-SMI MODULE-COMPLIANCE, OBJECT-GROUP, NOTIFICATION-GROUP FROM SNMPv2-CONF -- [RFC2580] TEXTUAL-CONVENTION, RowStatus, TimeStamp, StorageType FROM SNMPv2-TC SnmpAdminString Smiler et al. Expires July 27, 2013 [Page 5] Internet-Draft MPLS-TP Linear Protection MIB January 23, 2013 FROM SNMP-FRAMEWORK-MIB mplsStdMIB FROM MPLS-TC-STD-MIB -- [RFC3811] mplsOamIdMegIndex, mplsOamIdMeIndex, mplsOamIdMeMpIndex FROM MPLS-OAM-ID-STD-MIB; mplsLpsMIB MODULE-IDENTITY LAST-UPDATED "201301210000Z" -- January 21, 2013 ORGANIZATION "Multiprotocol Label Switching (MPLS) Working Group" CONTACT-INFO " Kingston Smiler Selvaraj Ipinfusion Email:kingstons@ipinfusion.com Venkatesan Mahalingam Dell Inc. 350 Holger way, San Jose, CA, USA Email: venkat.mahalingams@gmail.com Vishwas Manral Hewlet-Packard, Inc. 19111 Pruneridge Ave., Cupertino, CA, 95014 Phone: 408-447-1497 Email: vishwas.manral@hp.com Daniel King Old Dog Consulting UK Email:daniel@olddog.co.uk Sam Aldrin Huawei Technologies, co. 2330 Central Express Way, Santa Clara, CA 95051, USA Email: aldrin.ietf@gmail.com" DESCRIPTION "This management information module supports the configuration and management of MPLS TP linear protection groups. " REVISION "201301210000Z" -- January 21, 2013 DESCRIPTION "MPLS Protection Switching Group objects for LSP MEPs" Smiler et al. Expires July 27, 2013 [Page 6] Internet-Draft MPLS-TP Linear Protection MIB January 23, 2013 ::= { mplsStdMIB xxx } -- xxx to be replaced with -- correct value -- Top level components of this MIB module. -- Notifications mplsLpsNotifications OBJECT IDENTIFIER ::= { mplsLpsMIB 0 } -- tables, scalars mplsLpsObjects OBJECT IDENTIFIER ::= { mplsLpsMIB 1 } -- conformance mplsLpsConformance OBJECT IDENTIFIER ::= { mplsLpsMIB 2 } MplsLpsReq ::= TEXTUAL-CONVENTION STATUS current DESCRIPTION "This Textual Convention describes an object that stores the PSC Request field of the PSC control packet. The values are as follows 1110 Lockout of Protection 1100 Forced Switch 1010 Signal Fail (SF) 0111 Signal Degrade (SD) 0101 Manual Switch 0100 Wait-to-Restore 0001 Do Not Revert 0000 No Request" REFERENCE "Section 4.2.2 of RFC6378" SYNTAX OCTET STRING (SIZE (2)) MplsLpsFpathPath ::= TEXTUAL-CONVENTION STATUS current DESCRIPTION "This Textual Convention describes an object that stores the Fault Path (FPath) field and Data Path (Path) field of the PSC control packet. FPath is located in the first octet and Path is located in the second octet. Bits are numbered from left to right. The value and the interpretation of FPath field is as follows Smiler et al. Expires July 27, 2013 [Page 7] Internet-Draft MPLS-TP Linear Protection MIB January 23, 2013 2-255 for future extensions 1 the anomaly condition is on the working path 0 the anomaly condition is on the protection path The value and the interpretation of Path field is as follows 2-255 for future extensions 1 protection path is transporting user data traffic 0 protection path is not transporting user data traffic " REFERENCE "Section 4.2.5 and 4.2.6 of RFC6378" SYNTAX OCTET STRING (SIZE (2)) MplsLpsCommand ::= TEXTUAL-CONVENTION STATUS current DESCRIPTION "This command allows a user to perform any action over ME. If the protection command cannot be executed because an equal or higher priority request is in effect, an inconsistentValue error is returned. The command values are: noCmd This value should be returned by a read request when no command has been written to the object in question since initialization. This value may not be used in a write operation. If noCmd is used in a write operation a wrongValue error is returned. clear Clears all of the commands listed below for the specified ME. lockoutOfProtection Prevents any of the working ME from switching to the protection ME. The specified ME should be the protection ME, otherwise an inconsistentValue error is returned. forcedSwitchWorkToProtect Switches the specified working ME to the protection path. If the protection ME is specified an inconsistentValue error is returned. Smiler et al. Expires July 27, 2013 [Page 8] Internet-Draft MPLS-TP Linear Protection MIB January 23, 2013 manualSwitchWorkToProtect Switches the specified working ME to the protection ME. If the protection ME is specified an inconsistentValue error is returned." SYNTAX INTEGER { noCmd(1), clear(2), lockoutOfProtection(3), forcedSwitchWorkToProtect(4), manualSwitchWorkToProtect(5) } -- Start of MPLS Transport Profile Protection Switching -- Table -- MPLS TP Protection Switching Configuration Table -- This table supports the addition, configuration and deletion -- of MPLS TP Protection Switching groups. mplsLpsConfigGroups OBJECT-TYPE SYNTAX Gauge32 MAX-ACCESS read-only STATUS current DESCRIPTION "The object hold the count of MPLS Protection Switching groups. This count includes all rows in mplsLpsConfigTable, regardless of the value of mplsLpsConfigRowStatus." ::= { mplsLpsObjects 1 } mplsLpsConfigTable OBJECT-TYPE SYNTAX SEQUENCE OF MplsLpsConfigEntry MAX-ACCESS not-accessible STATUS current DESCRIPTION "This table lists the mpls linear protection groups that have been configured on the system." ::= { mplsLpsObjects 2 } mplsLpsConfigEntry OBJECT-TYPE SYNTAX MplsLpsConfigEntry MAX-ACCESS not-accessible STATUS current DESCRIPTION "A conceptual row in the mplsLpsConfigTable." INDEX { mplsLpsConfigGroupIndex } ::= { mplsLpsConfigTable 1 } Smiler et al. Expires July 27, 2013 [Page 9] Internet-Draft MPLS-TP Linear Protection MIB January 23, 2013 MplsLpsConfigEntry ::= SEQUENCE { mplsLpsConfigGroupIndex Unsigned32, mplsLpsConfigGroupName SnmpAdminString, mplsLpsConfigMode INTEGER, mplsLpsConfigRevertive INTEGER, mplsLpsConfigProtectionScheme INTEGER, mplsLpsConfigSdThreshold Integer32, mplsLpsConfigWaitToRestore Integer32, mplsLpsConfigContinualTxInterval Integer32, mplsLpsConfigRapidTxInterval Integer32, mplsLpsConfigCreationTime TimeStamp, mplsLpsConfigRowStatus RowStatus, mplsLpsConfigStorageType StorageType Smiler et al. Expires July 27, 2013 [Page 10] Internet-Draft MPLS-TP Linear Protection MIB January 23, 2013 } mplsLpsConfigGroupIndex OBJECT-TYPE SYNTAX Unsigned32 MAX-ACCESS not-accessible STATUS current DESCRIPTION "Index for the conceptual row identifying a protection group." ::= { mplsLpsConfigEntry 1 } mplsLpsConfigGroupName OBJECT-TYPE SYNTAX SnmpAdminString (SIZE (1..32)) MAX-ACCESS read-create STATUS current DESCRIPTION "Textual name represents the mpls tp protection group. Each Protection Group is identified by a unique protection group name. " ::= { mplsLpsConfigEntry 2 } mplsLpsConfigMode OBJECT-TYPE SYNTAX INTEGER { onePlusOne(1), oneColonOne(2), oneColonN(3) } MAX-ACCESS read-create STATUS current DESCRIPTION "The architectural mode of the Protection group. This can either be 1+1, 1:1, 1:n. 1+1 In the 1+1 protection scheme, a fully dedicated protection entity is allocated. Data traffic is copied and fed at the source to both the working and the protection entities. The traffic on the working and the protection entities is transmitted simultaneously to the sink of the protection domain, where selection between the working and protection entities is performed 1:1 In the 1:1 scheme, a protection path is allocated to protect against a defect, failure, or a degradation in a working path. In normal conditions, data traffic is Smiler et al. Expires July 27, 2013 [Page 11] Internet-Draft MPLS-TP Linear Protection MIB January 23, 2013 transmitted over the working entity, while the protection entity functions in the idle state. If there is a defect on the working entity or a specific administrative request, traffic is switched to the protection entity. 1:n In case of 1:n linear protection, one protection entity is allocated to protect n working entities. The protection entity might not have sufficient resources to protect all the working entities that may be affected by fault conditions at a specific time. In this case, in order to guaranteed protection, the protection entity should support enough capacity and bandwidth to protect any of the n working entities." DEFVAL {onePlusOne} ::= { mplsLpsConfigEntry 3 } mplsLpsConfigRevertive OBJECT-TYPE SYNTAX INTEGER { nonrevertive(1), revertive(2) } MAX-ACCESS read-create STATUS current DESCRIPTION "This object represents the reversion mode of the Linear Protection Switching group. The reversion mode of protection mechanism may be either revertive or non-revertive. nonrevertive In non-revertive mode, after a service has been recovered, traffic will be forwarded on the recovery path revertive In revertive mode, after a service has been recovered, traffic will be redirected back onto the original working path." DEFVAL { nonrevertive } ::= { mplsLpsConfigEntry 4 } Smiler et al. Expires July 27, 2013 [Page 12] Internet-Draft MPLS-TP Linear Protection MIB January 23, 2013 mplsLpsConfigProtectionScheme OBJECT-TYPE SYNTAX INTEGER { bidirectional(1), unidirectional(2) } MAX-ACCESS read-create STATUS current DESCRIPTION "The object represents the operational scheme of protection switching group. The protection scheme may either be unidirectional or bidirectional. bidirectional In bidirectional protection scheme, both the directions will be switched simultaneously even if the fault applies to only one direction of the path. unidirectional In unidirectional protection scheme protection switching will be performed independently for each direction of a bidirectional transport path This object may not be modified if the associated mplsLpsConfigRowStatus object is equal to active(1). " DEFVAL {bidirectional} ::= { mplsLpsConfigEntry 5 } mplsLpsConfigSdThreshold OBJECT-TYPE SYNTAX Integer32 (1..9) MAX-ACCESS read-create STATUS current DESCRIPTION "This object holds the threshold value of the Signal Degrade. When the MPLS DM OAM reaches this threshold value, the Signal Degrade event will be given to this protection domain. This object may be modified if the associated mplsLpsConfigRowStatus object is equal to active(1)." ::= { mplsLpsConfigEntry 6 } mplsLpsConfigWaitToRestore OBJECT-TYPE SYNTAX Integer32 (0..720) UNITS "seconds" MAX-ACCESS read-create Smiler et al. Expires July 27, 2013 [Page 13] Internet-Draft MPLS-TP Linear Protection MIB January 23, 2013 STATUS current DESCRIPTION "This object hold the Wait To Restore timer value in seconds. The WTR timer is used to delay reversion of PSC state to Normal state when recovering from a failure condition on the working path when the protection domain is configured for revertive behavior This object may not be modified if the associated mplsLpsConfigRowStatus object is equal to active(1)." DEFVAL { 300 } ::= { mplsLpsConfigEntry 7 } mplsLpsConfigContinualTxInterval OBJECT-TYPE SYNTAX Integer32 (1..20) UNITS "seconds" MAX-ACCESS read-create STATUS current DESCRIPTION "The Continual Tx Time in Seconds. Represents the time interval to send the continual LPS packet to the other end based on the current state." DEFVAL { 5 } ::= { mplsLpsConfigEntry 8 } mplsLpsConfigRapidTxInterval OBJECT-TYPE SYNTAX Integer32 (1000..20000) UNITS "micro-seconds" MAX-ACCESS read-create STATUS current DESCRIPTION "The Rapid Tx interval in micro-Seconds. Represents the time interval to send the LPS packet to the other end, when there is a change in state of Linear Protection domain due to local input. The default value is 3.3 milli-seconds which is 3300 micro-seconds" DEFVAL { 3300 } ::= { mplsLpsConfigEntry 9 } mplsLpsConfigCreationTime OBJECT-TYPE SYNTAX TimeStamp MAX-ACCESS read-only STATUS current DESCRIPTION "The value of sysUpTime at the time the row was created" Smiler et al. Expires July 27, 2013 [Page 14] Internet-Draft MPLS-TP Linear Protection MIB January 23, 2013 ::= { mplsLpsConfigEntry 10 } mplsLpsConfigRowStatus OBJECT-TYPE SYNTAX RowStatus MAX-ACCESS read-create STATUS current DESCRIPTION "This represents the status of the MPLS TP Linear Protection group Entry. This variable is used to create, modify, and/or delete a row in this table. An entry may not exist in the active state unless all objects in the entry have an appropriate value." ::= { mplsLpsConfigEntry 11 } mplsLpsConfigStorageType OBJECT-TYPE SYNTAX StorageType MAX-ACCESS read-create STATUS current DESCRIPTION "The storage type for this conceptual row. Conceptual rows having the value 'permanent' need not allow write-access to any columnar objects in the row." DEFVAL { nonVolatile } ::= { mplsLpsConfigEntry 12 } -- -- MPLS TP Linear Protection Switching Status Table -- -- This table provides Protection Switching group statistics. -- mplsLpsStatusTable OBJECT-TYPE SYNTAX SEQUENCE OF MplsLpsStatusEntry MAX-ACCESS not-accessible STATUS current DESCRIPTION "This table provides status information about mpls linear protection groups that have been configured on the system." ::= { mplsLpsObjects 3 } mplsLpsStatusEntry OBJECT-TYPE SYNTAX MplsLpsStatusEntry MAX-ACCESS not-accessible STATUS current DESCRIPTION Smiler et al. Expires July 27, 2013 [Page 15] Internet-Draft MPLS-TP Linear Protection MIB January 23, 2013 "A conceptual row in the mplsLpsStatusTable." AUGMENTS { mplsLpsConfigEntry } ::= { mplsLpsStatusTable 1 } MplsLpsStatusEntry ::= SEQUENCE { mplsLpsStatusReqRcv MplsLpsReq, mplsLpsStatusReqSent MplsLpsReq, mplsLpsStatusFpathPathRcv MplsLpsFpathPath, mplsLpsStatusFpathPathSent MplsLpsFpathPath, mplsLpsStatusModeMismatches Counter32 } mplsLpsStatusReqRcv OBJECT-TYPE SYNTAX MplsLpsReq MAX-ACCESS read-only STATUS current DESCRIPTION "The current value of the PSC Request field received on more recent PSC packet" ::= { mplsLpsStatusEntry 1 } mplsLpsStatusReqSent OBJECT-TYPE SYNTAX MplsLpsReq MAX-ACCESS read-only STATUS current DESCRIPTION "The current value of the PSC Request field sent on the more recent PSC packet" ::= { mplsLpsStatusEntry 2 } mplsLpsStatusFpathPathRcv OBJECT-TYPE SYNTAX MplsLpsFpathPath MAX-ACCESS read-only STATUS current DESCRIPTION "The current value of the FPath and Path fields received on more recent PSC packet" ::= { mplsLpsStatusEntry 3 } mplsLpsStatusFpathPathSent OBJECT-TYPE SYNTAX MplsLpsFpathPath MAX-ACCESS read-only STATUS current DESCRIPTION "The current value of the FPath and Path fields sent on more recent PSC packet" Smiler et al. Expires July 27, 2013 [Page 16] Internet-Draft MPLS-TP Linear Protection MIB January 23, 2013 ::= { mplsLpsStatusEntry 4 } mplsLpsStatusModeMismatches OBJECT-TYPE SYNTAX Counter32 MAX-ACCESS read-only STATUS current DESCRIPTION "This object holds number of occurrences of mismatch in revertive mode across the protection domain end points." ::= { mplsLpsStatusEntry 5 } -- MPLS Linear Protection ME Association Configuration Table -- This table supports the addition, configuration and deletion -- of MPLS Linear Protection Maintenance Entities in Protection -- Switching groups. mplsLpsMeConfigTable OBJECT-TYPE SYNTAX SEQUENCE OF MplsLpsMeConfigEntry MAX-ACCESS not-accessible STATUS current DESCRIPTION "This table lists Maintenance Association that have been configured in Protection groups." ::= { mplsLpsObjects 4 } mplsLpsMeConfigEntry OBJECT-TYPE SYNTAX MplsLpsMeConfigEntry MAX-ACCESS not-accessible STATUS current DESCRIPTION "A conceptual row in the mplsLpsMeConfigTable." INDEX {mplsOamIdMegIndex, mplsOamIdMeIndex, mplsOamIdMeMpIndex} ::= { mplsLpsMeConfigTable 1 } MplsLpsMeConfigEntry ::= SEQUENCE { mplsLpsMeConfigGroupIndex Unsigned32, mplsLpsMeConfigState INTEGER, mplsLpsMeConfigCommand MplsLpsCommand, mplsLpsMeConfigHoldOff Integer32 } mplsLpsMeConfigGroupIndex OBJECT-TYPE SYNTAX Unsigned32 MAX-ACCESS not-accessible Smiler et al. Expires July 27, 2013 [Page 17] Internet-Draft MPLS-TP Linear Protection MIB January 23, 2013 STATUS current DESCRIPTION "This object holds the Protection group index wherein this ME included in. If this ME is not part of any protection group then this object contains value 0. " DEFVAL { 0 } ::= { mplsLpsMeConfigEntry 1 } mplsLpsMeConfigState OBJECT-TYPE SYNTAX INTEGER { primary(1), backup(2) } MAX-ACCESS read-create STATUS current DESCRIPTION "This object represents the operational state of the ME as either primary or backup" ::= { mplsLpsMeConfigEntry 2 } mplsLpsMeConfigCommand OBJECT-TYPE SYNTAX MplsLpsCommand MAX-ACCESS read-write STATUS current DESCRIPTION "Allows the initiation of an MPLS Linear protection command on the protection group and the ME specified by the index values. When read this object returns the last command written or noCmd if no command has been written to this ME since initialization. The return of the last command written does not imply that this command is currently in effect. This request may have been preempted by a higher priority local or remote request. The value lockoutOfProtection should only be applied to the protection path / ME since that switch command prevents any of the working path / ME from switching to the protection path. Following the same logic, forcedSwitchWorkToProtect and manualSwitchWorkToProtect should only be applied to a working ME." ::= { mplsLpsMeConfigEntry 3 } mplsLpsMeConfigHoldOff OBJECT-TYPE SYNTAX Integer32 (0..10000) UNITS "milli-seconds" MAX-ACCESS read-create STATUS current DESCRIPTION "The hold-off time in milliseconds. Represents the time Smiler et al. Expires July 27, 2013 [Page 18] Internet-Draft MPLS-TP Linear Protection MIB January 23, 2013 between SF/SD condition detection and declaration of an SF/SD request to the protection switching logic. It is intended to avoid unnecessary switching when a lower- layer protection mechanism is in place. Can be configured in steps of 100" DEFVAL { 0 } ::= { mplsLpsMeConfigEntry 4 } -- MPLS Linear Protection ME Status Table -- This table provides Protection Switching ME statistics. mplsLpsMeStatusTable OBJECT-TYPE SYNTAX SEQUENCE OF MplsLpsMeStatusEntry MAX-ACCESS not-accessible STATUS current DESCRIPTION "This table contains status information of all the ME that are included in MPLS Protection groups." ::= { mplsLpsObjects 5 } mplsLpsMeStatusEntry OBJECT-TYPE SYNTAX MplsLpsMeStatusEntry MAX-ACCESS not-accessible STATUS current DESCRIPTION "A conceptual row in the mplsLpsMeStatusTable." AUGMENTS { mplsLpsMeConfigEntry } ::= { mplsLpsMeStatusTable 1 } MplsLpsMeStatusEntry ::= SEQUENCE { mplsLpsMeStatusCurrent BITS, mplsLpsMeStatusSignalDegrades Counter32, mplsLpsMeStatusSignalFailures Counter32, mplsLpsMeStatusSwitchovers Counter32, mplsLpsMeStatusLastSwitchover TimeStamp, mplsLpsMeStatusSwitchoverSeconds Counter32 } mplsLpsMeStatusCurrent OBJECT-TYPE SYNTAX BITS { localLockedOut(0), localSd(1), localSf(2), localSwitched(3), localWtr(4), remoteLockedout(5), remoteSd(6), remoteSf(7), Smiler et al. Expires July 27, 2013 [Page 19] Internet-Draft MPLS-TP Linear Protection MIB January 23, 2013 remoteSwitched(8), remoteWtr(9) } MAX-ACCESS read-only STATUS current DESCRIPTION "Indicates the current state of the MA. localLockedOut This bit, when it is set on a working ME or working path indicates that the working path is prevented from switching to the protection path because of local request. When it is set on protection / backup path, this bit indicates that none of the working path (in case of 1:n) can switch to the protection path. localSd This bit implies that local signal degrade condition is in effect on this ME / path. localSf This bit implies that local signal failure condition is in effect on this ME / path. localSwitched This bit is only applicable to the working ME / path. It implies that the working path is currently switched to the protection path because of local request. local wtr This bit implies that local Wait-to-Restore state is in effect. remoteLockedOut This bit, when it is set on a working ME or working path indicates that the working path is prevented from switching to the protection path because of remote request. When it is set on protection / backup path, this bit indicates that none of the working path (in case of 1:n) can switch to the protection path. remoteSd Smiler et al. Expires July 27, 2013 [Page 20] Internet-Draft MPLS-TP Linear Protection MIB January 23, 2013 This bit implies that remote signal degrade condition is in effect on this ME / path. remoteSf This bit implies that remote signal failure condition is in effect on this ME / path. remoteSwitched This bit is only applicable to the working ME / path. It implies that the working path is currently switched to the protection path because of remote request. remoteWtr This bit implies that remote Wait-to-Restore state is in effect." ::= { mplsLpsMeStatusEntry 1 } mplsLpsMeStatusSignalDegrades OBJECT-TYPE SYNTAX Counter32 MAX-ACCESS read-only STATUS current DESCRIPTION "Represents the count of Signal Degrade conditions. This condition occurs when the DM exceeds the currently configured value of the relevant instance of mplsLpsConfigSdThreshold." ::= { mplsLpsMeStatusEntry 2 } mplsLpsMeStatusSignalFailures OBJECT-TYPE SYNTAX Counter32 MAX-ACCESS read-only STATUS current DESCRIPTION "Represents the count of Signal failure conditions. This condition occurs when the OAM running on this MA detects the Signal Fail event." ::= { mplsLpsMeStatusEntry 3 } mplsLpsMeStatusSwitchovers OBJECT-TYPE SYNTAX Counter32 MAX-ACCESS read-only STATUS current DESCRIPTION "Represents the count of SwitchOvers happened in this Smiler et al. Expires July 27, 2013 [Page 21] Internet-Draft MPLS-TP Linear Protection MIB January 23, 2013 MA. When the mplsLpsMeConfigState is primary, this object will return the number of times this path has switched to the protection path. When the mplsLpsMeConfigState is backup, this object will return the number of times that any working paths has been switched back to the working path from this protection path." ::= { mplsLpsMeStatusEntry 4 } mplsLpsMeStatusLastSwitchover OBJECT-TYPE SYNTAX TimeStamp MAX-ACCESS read-only STATUS current DESCRIPTION "This object holds the value of sysUpTime wherein the last switchover happened. When the mplsLpsMeConfigState is primary, this object will return the value of sysUpTime when this path last completed a switchover. If this path has never switched to the protection line, the value 0 will be returned. When the mplsLpsMeConfigState is backup, this object will return the value of sysUpTime the last time that a working path was switched back to the working path from this protection path. If no working path has ever switched back to the working path from this protection path, the value 0 will be returned." ::= { mplsLpsMeStatusEntry 5 } mplsLpsMeStatusSwitchoverSeconds OBJECT-TYPE SYNTAX Counter32 MAX-ACCESS read-only STATUS current DESCRIPTION "The cumulative Protection Switching Duration (PSD) time in seconds. ForM a working path, this is the cumulative number of seconds that traffic was carried on the protection path. Smiler et al. Expires July 27, 2013 [Page 22] Internet-Draft MPLS-TP Linear Protection MIB January 23, 2013 For the protection path, this is the cumulative number of seconds that the protection path has been used to carry any working path traffic." ::= { mplsLpsMeStatusEntry 6 } mplsLpsNotificationEnable OBJECT-TYPE SYNTAX BITS { switchover(0), modeMismatch(1) } MAX-ACCESS read-write STATUS current DESCRIPTION "Provides the ability to enable and disable notifications defined in this MIB. switchover Indicates mplsLpsEventSwitchover notifications should be generated. modeMismatch Indicates mplsLpsEventModeMismatch notifications should be generated." DEFVAL { { } } ::= { mplsLpsObjects 6 } -- MPLS Linear Protection EVENTS mplsLpsEventSwitchover NOTIFICATION-TYPE OBJECTS { mplsLpsMeStatusSwitchovers, mplsLpsMeStatusCurrent } STATUS current DESCRIPTION "An mplsLpsEventSwitchover notification is sent when the value of an instance of mplsLpsMeStatusSwitchovers increments." ::= { mplsLpsNotifications 1 } mplsLpsEventModeMismatch NOTIFICATION-TYPE OBJECTS { mplsLpsStatusModeMismatches } STATUS current DESCRIPTION "An mplsLpsEventModeMismatch notification is sent when the value of an instance of mplsLpsStatusModeMismatches increments." Smiler et al. Expires July 27, 2013 [Page 23] Internet-Draft MPLS-TP Linear Protection MIB January 23, 2013 ::= { mplsLpsNotifications 2 } -- End of Notifications. -- Module Compliance. mplsLpsCompliances OBJECT IDENTIFIER ::= { mplsLpsConformance 1 } mplsLpsGroups OBJECT IDENTIFIER ::= { mplsLpsConformance 2 } -- Compliance requirement for fully compliant implementations. mplsLpsModuleFullCompliance MODULE-COMPLIANCE STATUS current DESCRIPTION "Compliance statement for agents that provide full support for MPLS-LPS-MIB. Such devices can provide linear protection and also be configured using this MIB module." MODULE -- This module. MANDATORY-GROUPS { mplsLpsScalarGroup, mplsLpsConfigTableGroup, mplsLpsMeTableGroup } GROUP mplsLpsNotificationGroup DESCRIPTION "This group is only mandatory for those implementations which can efficiently implement the notifications contained in this group." ::= { mplsLpsCompliances 1 } -- Units of conformance. mplsLpsScalarGroup OBJECT-GROUP OBJECTS { mplsLpsConfigGroups, mplsLpsNotificationEnable } STATUS current DESCRIPTION "Collection of objects needed for MPLS Linear Protection." ::= { mplsLpsGroups 1 } Smiler et al. Expires July 27, 2013 [Page 24] Internet-Draft MPLS-TP Linear Protection MIB January 23, 2013 mplsLpsConfigTableGroup OBJECT-GROUP OBJECTS { mplsLpsConfigGroupName, mplsLpsConfigRowStatus, mplsLpsConfigMode, mplsLpsConfigRevertive, mplsLpsConfigProtectionScheme, mplsLpsConfigSdThreshold, mplsLpsConfigWaitToRestore, mplsLpsConfigContinualTxInterval, mplsLpsConfigRapidTxInterval, mplsLpsConfigCreationTime, mplsLpsConfigStorageType, mplsLpsStatusReqRcv, mplsLpsStatusReqSent, mplsLpsStatusFpathPathRcv, mplsLpsStatusFpathPathSent, mplsLpsStatusModeMismatches } STATUS current DESCRIPTION "Collection of objects needed for MPLS Linear Protection configuration and statistics." ::= { mplsLpsGroups 2 } mplsLpsMeTableGroup OBJECT-GROUP OBJECTS { mplsLpsMeConfigState, mplsLpsMeConfigCommand, mplsLpsMeConfigHoldOff, mplsLpsMeStatusCurrent, mplsLpsMeStatusSignalDegrades, mplsLpsMeStatusSignalFailures, mplsLpsMeStatusSwitchovers, mplsLpsMeStatusLastSwitchover, mplsLpsMeStatusSwitchoverSeconds } STATUS current DESCRIPTION "Collection of objects needed for MPLS Linear Protection ME configuration and statistics." ::= { mplsLpsGroups 3 } mplsLpsNotificationGroup NOTIFICATION-GROUP NOTIFICATIONS { mplsLpsEventSwitchover, Smiler et al. Expires July 27, 2013 [Page 25] Internet-Draft MPLS-TP Linear Protection MIB January 23, 2013 mplsLpsEventModeMismatch } STATUS current DESCRIPTION "Collection of objects needed to implement notifications." ::= { mplsLpsGroups 4 } -- MPLS-LPS-MIB module ends END 8. Security Considerations There are a number of management objects defined in this MIB module with a MAX-ACCESS clause of read-write and/or read-create. Such objects may be considered sensitive or vulnerable in some networks in a non-secure environment without proper protection can have a negative effect on network operations. These are the tables and objects and their sensitivity/vulnerability: Some of the readable objects in this MIB module (i.e., objects with a MAX-ACCESS other than not-accessible) may be considered sensitive or vulnerable in some network environments. It is thus important to control even GET and/or NOTIFY access to these objects and possibly to even encrypt the values of these objects when sending them over the network via SNMP. These are the tables and objects and their sensitivity/vulnerability: SNMP versions prior to SNMPv3 did not include adequate security. Even if the network itself is secure (for example by using IPsec), even then, there is no control as to who on the secure network is allowed to access and GET/SET (read/change/create/delete) the objects in this MIB module. It is RECOMMENDED that implementers consider the security features as provided by the SNMPv3 framework (see [RFC3410], section 8), including full support for the SNMPv3 cryptographic mechanisms (for authentication and privacy). Further, deployment of SNMP versions prior to SNMPv3 is not recommended. Instead, it is RECOMMENDED to deploy SNMPv3 and to enable cryptographic security. It is then a customer/operator Smiler et al. Expires July 27, 2013 [Page 26] Internet-Draft MPLS-TP Linear Protection MIB January 23, 2013 responsibility to ensure that the SNMP entity giving access to an instance of this MIB module is properly configured to give access to the objects only to those principals (users) that have legitimate rights to indeed GET or SET (change/create/delete) them. 9. IANA Considerations To be added in a later version of this document. 10. References 10.1. Normative References [RFC2119] Bradner, S., "Key words for use in RFCs to Indicate Requirement Levels", BCP 14, RFC 2119, March 1997. [RFC2578] McCloghrie, K., Ed., Perkins, D., Ed., and J. Schoenwaelder, Ed., "Structure of Management Information Version 2 (SMIv2)", STD 58, RFC 2578, April 1999. [RFC2579] McCloghrie, K., Ed., Perkins, D., Ed., and J. Schoenwaelder, Ed., "Textual Conventions for SMIv2", STD 58, RFC 2579, April 1999. [RFC2580] McCloghrie, K., Perkins, D., and J. Schoenwaelder, "Conformance Statements for SMIv2", STD 58, RFC 2580, April 1999. Smiler et al. Expires July 27, 2013 [Page 27] Internet-Draft MPLS-TP Linear Protection MIB January 23, 2013 10.2. Informative References [RFC3410] J. Case, R. Mundy, D. pertain, B.Stewart, "Introduction and Applicability Statement for Internet Standard Management Framework", RFC 3410, December 2002. [RFC3811] Nadeau, T., Ed., and J. Cucchiara, Ed., "Definitions of Textual Conventions (TCs) for Multiprotocol Label Switching (MPLS) Management", RFC 3811, June 2004. [RFC6378] Weingarten, Y., Osborne, E., Sprecher, N., Fulignoli, A., Ed., and Y. Weingarten, Ed., "MPLS-TP Linear Protection", October 2011. [MPLS-OAM-ID-STD-MIB] Sam Aldrin, M.Venkatesan, Kannan KV Sampath, Thomas D. Nadeau, Sami Boutros, Ping Pan, "MPLS-TP Operations, Administration, and Management (OAM) Identifiers Management Information Base (MIB)", ID draft-ietf-mpls-tp-oam-id-mib-01, October 2012. 11. Acknowledgments The authors wish to thank Joan Cucchiara for her review as MIB Doctor, Joan's detailed comments were of great help for improving the quality of this document. 12. Author's Address Kingston Smiler Selvaraj IpInfusion India Email: kingstons@ipinfusion.com Venkatesan Mahalingam Dell Inc. 350 Holger way, San Jose, CA, USA Email: venkat.mahalingams@gmail.com Vishwas Manral Hewlet-Packard, Inc. 19111 Pruneridge Ave., Cupertino, CA, 95014 Phone: 408-447-1497 Email: vishwas.manral@hp.com Daniel King Old Dog Consulting UK Smiler et al. Expires July 27, 2013 [Page 28] Internet-Draft MPLS-TP Linear Protection MIB January 23, 2013 Email:daniel@olddog.co.uk Sam Aldrin Huawei Technologies, co. 2330 Central Express Way, Santa Clara, CA 95051, USA Email: aldrin.ietf@gmail.com Smiler et al. Expires July 27, 2013 [Page 29]