PCE Working Group A. Koushik Internet-Draft Cisco Systems, Inc. Intended status: Standards Track S. Emile Expires: January 11, 2013 France Telecom Q. Zhao Huawei Technology D. King Old Dog Consulting J. Hardwick Metaswitch July 10, 2012 PCE communication protocol (PCEP) Management Information Base draft-ietf-pce-pcep-mib-03 Abstract This memo defines an experimental portion of the Management Information Base for use with network management protocols in the Internet community. In particular, it describes managed objects for modeling of Path Computation Element communication Protocol (PCEP) for communications between a Path Computation Client (PCC) and a Path Computation Element (PCE), or between two PCEs. Status of This Memo This Internet-Draft is submitted in full conformance with the provisions of BCP 78 and BCP 79. Internet-Drafts are working documents of the Internet Engineering Task Force (IETF). Note that other groups may also distribute working documents as Internet-Drafts. The list of current Internet- Drafts is at http://datatracker.ietf.org/drafts/current/. 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." This Internet-Draft will expire on January 11, 2013. Copyright Notice Copyright (c) 2012 IETF Trust and the persons identified as the document authors. All rights reserved. This document is subject to BCP 78 and the IETF Trust's Legal Koushik, et al. Expires January 11, 2013 [Page 1] Internet-Draft PCEP MIB July 2012 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 . . . . . . . . . . . . . . . . . . . . . . . . . 3 2. The Internet-Standard Management Framework . . . . . . . . . . 3 3. Requirements Language . . . . . . . . . . . . . . . . . . . . 3 4. Terminology . . . . . . . . . . . . . . . . . . . . . . . . . 3 5. PCEP MIB Module Architecture . . . . . . . . . . . . . . . . . 4 5.1. Relations to other MIB modules . . . . . . . . . . . . . . 4 6. Object Definitions . . . . . . . . . . . . . . . . . . . . . . 4 6.1. PCE-PCEP-DRAFT-MIB . . . . . . . . . . . . . . . . . . . . 4 7. Security Considerations . . . . . . . . . . . . . . . . . . . 23 8. IANA Considerations . . . . . . . . . . . . . . . . . . . . . 24 9. References . . . . . . . . . . . . . . . . . . . . . . . . . . 24 9.1. Normative References . . . . . . . . . . . . . . . . . . . 24 9.2. Normative References . . . . . . . . . . . . . . . . . . . 25 Appendix A. Acknowledgement . . . . . . . . . . . . . . . . . . . 26 Koushik, et al. Expires January 11, 2013 [Page 2] Internet-Draft PCEP MIB July 2012 1. Introduction The Path Computation Element (PCE) defined in [RFC4655] is an entity that is capable of computing a network path or route based on a network graph, and applying computational constraints. A Path Computation Client (PCC) may make requests to a PCE for paths to be computed. The PCE communication protocol (PCEP) is the communication protocol between a PCC and PCE for point-to-point (P2P) path computations and is defined in [RFC5440]. Such PCEP communication interactions include path computation requests and path computation replies as well as notifications of specific states related to the use of a PCE in the context of Multiprotocol Label Switching (MPLS) and Generalized MPLS (GMPLS) Traffic Engineering. This memo defines a portion of the Management Information Base (MIB) for use with network management protocols in the Internet community. In particular, it defines a MIB module that can be used to manage PCEP communications between a PCC and a PCE, or between two PCEs. 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 [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 [RFC2578] [RFC2579] [RFC2580]. 3. Requirements Language 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 BCP 14, RFC 2119 [RFC2119]. 4. Terminology The terminology used in this document is built on notions introduced and discussed in PCE WG documents. The reader should be familiar with these documents. Koushik, et al. Expires January 11, 2013 [Page 3] Internet-Draft PCEP MIB July 2012 Domain: any collection of network elements within a common sphere of address management or path computational responsibility. IGP Area: OSPF Area or ISIS level. This document also uses the terminology defined in [RFC4655] and [RFC5440]. 5. PCEP MIB Module Architecture The PCEP MIB will contain the following information: a. PCEP entity configuration and status. b. PCEP peer configuration and information. c. PCEP session configuration and information. d. Notifications to indicate PCEP session changes. 5.1. Relations to other MIB modules PCEP relies on existing protocols which have specialized MIB objects to monitor their own activities. Consequently this document considers that the monitoring underlying protocols are out of scope of the PCEP MIB module. 6. Object Definitions 6.1. PCE-PCEP-DRAFT-MIB This MIB module makes references to the following documents: [RFC2578]; [RFC2579]; [RFC2580]; [RFC2863]; [RFC3411]; [RFC3813]; [RFC4001]; and [RFC4265]. PCE-PCEP-DRAFT-MIB DEFINITIONS ::= BEGIN IMPORTS MODULE-IDENTITY, OBJECT-TYPE, NOTIFICATION-TYPE, Unsigned32, Integer32, Counter32, experimental FROM SNMPv2-SMI RowStatus, TruthValue, Koushik, et al. Expires January 11, 2013 [Page 4] Internet-Draft PCEP MIB July 2012 TimeStamp, TimeInterval FROM SNMPv2-TC -- [RFC2579] MODULE-COMPLIANCE, OBJECT-GROUP, NOTIFICATION-GROUP FROM SNMPv2-CONF InetAddressType, InetAddress, InetPortNumber FROM INET-ADDRESS-MIB; pcePcepDraftMIB MODULE-IDENTITY LAST-UPDATED "201207101200Z" -- July 10, 2012 ORGANIZATION "IETF Path Computation Element (PCE) Working Group" CONTACT-INFO "Email: pce@ietf.org WG charter: http://www.ietf.org/html.charters/pce-charter.html" DESCRIPTION "This MIB module defines a collection of objects for managing PCE communication protocol (PCEP)." ::= { experimental 9999 } -- pcePcepNotifications OBJECT IDENTIFIER ::= { pcePcepDraftMIB 0 } pcePcepMIBObjects OBJECT IDENTIFIER ::= { pcePcepDraftMIB 1 } pcePcepConformance OBJECT IDENTIFIER ::= { pcePcepDraftMIB 2 } pcePcepEntityObjects OBJECT IDENTIFIER ::= { pcePcepMIBObjects 1 } -- -- PCE Entity Objects -- pcePcepEntityLastChange OBJECT-TYPE SYNTAX TimeStamp MAX-ACCESS read-only STATUS current DESCRIPTION "The value of sysUpTime at the time of the most recent addition or deletion of an entry to/from the pcePcepEntityTable, or the most recent change in value of any objects in the pcePcepEntityTable. If no such changes have occurred since the last re-initialization of the local management subsystem, then this object contains a zero value." Koushik, et al. Expires January 11, 2013 [Page 5] Internet-Draft PCEP MIB July 2012 ::= { pcePcepEntityObjects 1 } pcePcepEntityIndexNext OBJECT-TYPE SYNTAX Integer32 MAX-ACCESS read-only STATUS current DESCRIPTION "This object contains an appropriate value to be used for pcePcepEntityIndex when creating entries in the pcePcepEntityTable. The value 0 indicates that no unassigned entries are available." ::= { pcePcepEntityObjects 2 } pcePcepEntityTable OBJECT-TYPE SYNTAX SEQUENCE OF PcePcepEntityEntry MAX-ACCESS not-accessible STATUS current DESCRIPTION "This table contains information about the PCEP Entity." ::= { pcePcepEntityObjects 3 } pcePcepEntityEntry OBJECT-TYPE SYNTAX PcePcepEntityEntry MAX-ACCESS not-accessible STATUS current DESCRIPTION "An entry in this table represents a PCEP entity. An entry can be created by a network administrator or by an SNMP agent as instructed by PCEP." INDEX { pcePcepEntityIndex } ::= { pcePcepEntityTable 1 } PcePcepEntityEntry ::= SEQUENCE { pcePcepEntityIndex Integer32, pcePcepEntityRowStatus RowStatus, pcePcepEntityAdminStatus INTEGER, pcePcepEntityOperStatus INTEGER, pcePcepEntityAddrType InetAddressType, pcePcepEntityAddr InetAddress, pcePcepEntityTcpPort InetPortNumber, pcePcepEntityConnectTimer Unsigned32, pcePcepEntityOpenWaitTimer Unsigned32, pcePcepEntityKeepWaitTimer Unsigned32, pcePcepEntityKeepAliveTimer Unsigned32, pcePcepEntityDeadTimer Unsigned32, pcePcepEntitySyncTimer Unsigned32, pcePcepEntityRequestTimer Unsigned32, pcePcepEntityInitBackoffTimer Unsigned32, Koushik, et al. Expires January 11, 2013 [Page 6] Internet-Draft PCEP MIB July 2012 pcePcepEntityMaxBackoffTimer Unsigned32, pcePcepEntityMaxSessions Unsigned32, pcePcepEntityMaxReqPerSession Unsigned32, pcePcepEntityMaxUnknownReqs Unsigned32, pcePcepEntityMaxUnknownMsgs Unsigned32 } pcePcepEntityIndex OBJECT-TYPE SYNTAX Integer32 (1..2147483647) MAX-ACCESS not-accessible STATUS current DESCRIPTION "This index is used to uniquely identify the PCEP entity." ::= { pcePcepEntityEntry 1 } pcePcepEntityRowStatus OBJECT-TYPE SYNTAX RowStatus MAX-ACCESS read-create STATUS current DESCRIPTION "The status of this conceptual row." ::= { pcePcepEntityEntry 2 } pcePcepEntityAdminStatus OBJECT-TYPE SYNTAX INTEGER { adminStatusUp(1), adminStatusDown(2) } MAX-ACCESS read-create STATUS current DESCRIPTION "The administrative status of this PCEP Entity. If this object is changed from 'up' to 'down' and this entity has already attempted to establish contact with a Peer, then all contact with that Peer is lost." DEFVAL { adminStatusDown } ::= { pcePcepEntityEntry 3 } pcePcepEntityOperStatus OBJECT-TYPE SYNTAX INTEGER { operStatusUp(1), -- active operStatusDown(2), -- inactive operStatusGoingUp(3), -- activating operStatusGoingDown(4), -- deactivating operStatusFailed(5), -- failed, will recover -- when possible operStatusFailedPerm(6) -- operator intervention Koushik, et al. Expires January 11, 2013 [Page 7] Internet-Draft PCEP MIB July 2012 -- required } MAX-ACCESS read-only STATUS current DESCRIPTION "The operational status of the PCEP entity." ::= { pcePcepEntityEntry 4 } pcePcepEntityAddrType OBJECT-TYPE SYNTAX InetAddressType MAX-ACCESS read-create STATUS current DESCRIPTION "The type of the PCEP entity's Internet address. This object specifies how the value of the pcePcepPeerAddr object should be interpreted." ::= { pcePcepEntityEntry 5 } pcePcepEntityAddr OBJECT-TYPE SYNTAX InetAddress MAX-ACCESS read-create STATUS current DESCRIPTION "The Internet address of this PCEP entity. The type is given by pcePcepEntityAddrType. If operating as a PCE server, the PCEP entity listens on this address. If operating as a PCC, the PCEP entity binds outgoing TCP connections to this address." ::= { pcePcepEntityEntry 6 } pcePcepEntityTcpPort OBJECT-TYPE SYNTAX InetPortNumber MAX-ACCESS read-create STATUS current DESCRIPTION "The TCP Port for PCEP. The default value is the well-known value of this port." DEFVAL { 4189 } ::= { pcePcepEntityEntry 7 } pcePcepEntityConnectTimer OBJECT-TYPE SYNTAX Unsigned32 (1..65535) UNITS "seconds" MAX-ACCESS read-create STATUS current DESCRIPTION Koushik, et al. Expires January 11, 2013 [Page 8] Internet-Draft PCEP MIB July 2012 "The time that the PCEP entity will wait to establish a TCP connection with a PCEP peer. If a TCP connection is not established within this time then PCEP aborts the session setup attempt." DEFVAL { 60 } ::= { pcePcepEntityEntry 8 } pcePcepEntityOpenWaitTimer OBJECT-TYPE SYNTAX Unsigned32 (1..65535) UNITS "seconds" MAX-ACCESS read-create STATUS current DESCRIPTION "The time that the PCEP entity will wait to receive an Open message from a PCEP peer. If no Open message is received within this time then PCEP aborts the session setup attempt." DEFVAL { 60 } ::= { pcePcepEntityEntry 9 } pcePcepEntityKeepWaitTimer OBJECT-TYPE SYNTAX Unsigned32 (1..65535) UNITS "seconds" MAX-ACCESS read-create STATUS current DESCRIPTION "The time that the PCEP entity will wait to receive a Keepalive or PCErr message from a PCEP peer during session initialization. If no Keepalive or PCErr message is received within this time then PCEP aborts the session setup attempt." DEFVAL { 60 } ::= { pcePcepEntityEntry 10 } pcePcepEntityKeepAliveTimer OBJECT-TYPE SYNTAX Unsigned32 (0..255) UNITS "seconds" MAX-ACCESS read-create STATUS current DESCRIPTION "The keep alive transmission timer that this PCEP entity will propose in the initial OPEN message of each session it is involved in. This is the maximum time between two consecutive messages sent to a PCEP peer. Zero means that the PCEP entity prefers not to send Keepalives at all. Note that the actual Keepalive transmission intervals, in either direction of an active PCEP session, are determined by negotiation between the PCEP peers as specified by RFC 5440, and so may differ from this configured value. For Koushik, et al. Expires January 11, 2013 [Page 9] Internet-Draft PCEP MIB July 2012 the actually negotiated values (per-session), see pcePcepSessionKeepaliveTimer and pcePcepSessionPeerKeepaliveTimer." DEFVAL { 30 } ::= { pcePcepEntityEntry 11 } pcePcepEntityDeadTimer OBJECT-TYPE SYNTAX Unsigned32 (0..255) UNITS "seconds" MAX-ACCESS read-create STATUS current DESCRIPTION "The dead timer that this PCEP entity will propose in the initial OPEN message of each session it is involved in. This is the time after which a PCEP peer should declare a session down if it does not receive any PCEP messages. pcePcepEntityDeadTimer is recommended to be 4 times the pcePcepEntityKeepAliveTimer value. Zero means suggesting that the peer does not run a dead timer at all; it is only allowed when pcePcepEntityKeepAliveTimer is also zero." DEFVAL { 120 } ::= { pcePcepEntityEntry 12 } pcePcepEntitySyncTimer OBJECT-TYPE SYNTAX Unsigned32 (1..65535) UNITS "seconds" MAX-ACCESS read-create STATUS current DESCRIPTION "The value of SYNC timer is used in the case of synchronized path computation request using the SVEC object. Consider the case where a PCReq message is received by a PCE that contains the SVEC object referring to M synchronized path computation requests. If after the expiration of the SYNC timer all the M path computation requests have not been received, a protocol error is triggered and the PCE MUST cancel the whole set of path computation requests. The aim of the SyncTimer is to avoid the storage of unused synchronized request should one of them get lost for some reasons (for example, a misbehaving PCC)." DEFVAL { 60 } ::= { pcePcepEntityEntry 13 } pcePcepEntityRequestTimer OBJECT-TYPE SYNTAX Unsigned32 (1..65535) Koushik, et al. Expires January 11, 2013 [Page 10] Internet-Draft PCEP MIB July 2012 UNITS "seconds" MAX-ACCESS read-create STATUS current DESCRIPTION "The maximum time that the PCEP entity will wait for a response to a PCReq message." DEFVAL { 60 } ::= { pcePcepEntityEntry 14 } pcePcepEntityInitBackoffTimer OBJECT-TYPE SYNTAX Unsigned32 (1..65535) UNITS "seconds" MAX-ACCESS read-create STATUS current DESCRIPTION "The initial back-off time for retrying a failed session setup attempt to a peer. The back-off time doubles for each failed session setup attempt, until a maximum back-off time is reached. The maximum back-off time is configured in pcePcepEntityMaxBackoffTimer." DEFVAL { 60 } ::= { pcePcepEntityEntry 15 } pcePcepEntityMaxBackoffTimer OBJECT-TYPE SYNTAX Unsigned32 (1..604800) UNITS "seconds" MAX-ACCESS read-create STATUS current DESCRIPTION "The maximum back-off time for retrying a failed session setup attempt to a peer. The back-off time doubles for each failed session setup attempt, until this maximum value is reached. Session setup attempts then repeat periodically without any further increase in back-off time. The value of pcePcepEntityMaxBackoffTimer must be greater than or equal to pcePcepEntityInitBackoffTimer." DEFVAL { 600 } ::= { pcePcepEntityEntry 16 } pcePcepEntityMaxSessions OBJECT-TYPE SYNTAX Unsigned32 MAX-ACCESS read-create STATUS current Koushik, et al. Expires January 11, 2013 [Page 11] Internet-Draft PCEP MIB July 2012 DESCRIPTION "Maximum number of sessions involving this PCEP entity that can exist at any time." DEFVAL { 100 } ::= { pcePcepEntityEntry 17 } pcePcepEntityMaxReqPerSession OBJECT-TYPE SYNTAX Unsigned32 MAX-ACCESS read-create STATUS current DESCRIPTION "Maximum number of independent requests sent to a peer that can be outstanding at any time. Once a PCEP entity has this number of requests outstanding on a session, it MUST wait to receive responses before sending any further requests on the session." DEFVAL { 100 } ::= { pcePcepEntityEntry 18 } pcePcepEntityMaxUnknownReqs OBJECT-TYPE SYNTAX Unsigned32 MAX-ACCESS read-create STATUS current DESCRIPTION "The maximum number of unrecognized requests and replies that any session on this PCEP entity is willing to accept per minute. A PCRep message contains an unrecognized reply if it contains an RP object whose request ID does not correspond to any in-progress request sent by this PCEP entity. A PCReq message contains an unrecognized request if it containd an RP object whose request ID is zero." DEFVAL { 5 } ::= { pcePcepEntityEntry 19 } pcePcepEntityMaxUnknownMsgs OBJECT-TYPE SYNTAX Unsigned32 MAX-ACCESS read-create STATUS current DESCRIPTION "The maximum number of unknown messages that any session on this PCEP entity is willing to accept per minute." DEFVAL { 5 } ::= { pcePcepEntityEntry 20 } Koushik, et al. Expires January 11, 2013 [Page 12] Internet-Draft PCEP MIB July 2012 -- -- The PCEP Peer Table -- pcePcepPeerObjects OBJECT IDENTIFIER ::= { pcePcepMIBObjects 2 } pcePcepPeerTable OBJECT-TYPE SYNTAX SEQUENCE OF PcePcepPeerEntry MAX-ACCESS not-accessible STATUS current DESCRIPTION "Information about PCEP peers known by Entities in the pcePcepEntityTable. This MIB table gives PCEP peer information that spans PCEP sessions. Information about current PCEP sessions can be found in the pcePcepSessionTable MIB table." ::= { pcePcepPeerObjects 1 } pcePcepPeerEntry OBJECT-TYPE SYNTAX PcePcepPeerEntry MAX-ACCESS not-accessible STATUS current DESCRIPTION "Information about a single PCEP Peer which spans all PCEP sessions to that peer. The information contained in a row is read-only." INDEX { pcePcepEntityIndex, pcePcepPeerAddrType, pcePcepPeerAddr } ::= { pcePcepPeerTable 1 } PcePcepPeerEntry ::= SEQUENCE { pcePcepPeerAddrType InetAddressType, pcePcepPeerAddr InetAddress, pcePcepPeerSessionExists TruthValue, pcePcepPeerNumSessSetupOK Counter32, pcePcepPeerNumSessSetupFail Counter32, pcePcepPeerSessionUpTime TimeStamp, pcePcepPeerSessionFailTime TimeStamp, pcePcepPeerResponseTime Unsigned32 } pcePcepPeerAddrType OBJECT-TYPE SYNTAX InetAddressType MAX-ACCESS not-accessible STATUS current DESCRIPTION Koushik, et al. Expires January 11, 2013 [Page 13] Internet-Draft PCEP MIB July 2012 "The peer Internet address type (IPv4 or IPv6). This specifies how the pcePcepPeerAddr value should be interpreted." ::= { pcePcepPeerEntry 2 } pcePcepPeerAddr OBJECT-TYPE SYNTAX InetAddress (SIZE (4..32)) MAX-ACCESS not-accessible STATUS current DESCRIPTION "The Internet address of the peer. The type of this address is specified by the pcePcepPeerAddrType value." ::= { pcePcepPeerEntry 3 } pcePcepPeerSessionExists OBJECT-TYPE SYNTAX TruthValue MAX-ACCESS read-only STATUS current DESCRIPTION "Indicates whether a session with this peer currently exists." ::= { pcePcepPeerEntry 4 } pcePcepPeerNumSessSetupOK OBJECT-TYPE SYNTAX Counter32 MAX-ACCESS read-only STATUS current DESCRIPTION "The number of PCEP sessions successfully established with the peer, including any current session." ::= { pcePcepPeerEntry 5 } pcePcepPeerNumSessSetupFail OBJECT-TYPE SYNTAX Counter32 MAX-ACCESS read-only STATUS current DESCRIPTION "The number of PCEP sessions with the peer that failed before reaching session state pceSessionUp." ::= { pcePcepPeerEntry 6 } pcePcepPeerSessionUpTime OBJECT-TYPE SYNTAX TimeStamp MAX-ACCESS read-only STATUS current Koushik, et al. Expires January 11, 2013 [Page 14] Internet-Draft PCEP MIB July 2012 DESCRIPTION "The value of sysUpTime the last time a session with this peer was successfully established. If pcePcepPeerSessionUpCount is zero, then this object contains zero." ::= { pcePcepPeerEntry 7 } pcePcepPeerSessionFailTime OBJECT-TYPE SYNTAX TimeStamp MAX-ACCESS read-only STATUS current DESCRIPTION "The value of sysUpTime the last time a session with this peer failed to be established. If pcePcepPeerSessionFailCount is zero, then this object contains zero." ::= { pcePcepPeerEntry 8 } pcePcepPeerResponseTime OBJECT-TYPE SYNTAX Unsigned32 (1..65535) UNITS "seconds" MAX-ACCESS read-only STATUS current DESCRIPTION "The average response time for this peer. If an average response time has not been calculated for this peer then this object has the value zero." ::= { pcePcepPeerEntry 9 } -- -- The PCEP Sessions Table -- pcePcepSessionObjects OBJECT IDENTIFIER ::= { pcePcepMIBObjects 3 } pcePcepSessionTable OBJECT-TYPE SYNTAX SEQUENCE OF PcePcepSessionEntry MAX-ACCESS not-accessible STATUS current DESCRIPTION "A table of Sessions on this PCEP entity. Each row in this table represents a single session." ::= { pcePcepSessionObjects 1 } pcePcepSessionEntry OBJECT-TYPE Koushik, et al. Expires January 11, 2013 [Page 15] Internet-Draft PCEP MIB July 2012 SYNTAX PcePcepSessionEntry MAX-ACCESS not-accessible STATUS current DESCRIPTION "An entry in this table represents information on a single session between two PCEP clients. The information contained in a row is read-only." INDEX { pcePcepEntityIndex, pcePcepPeerAddrType, pcePcepPeerAddr } ::= { pcePcepSessionTable 1 } PcePcepSessionEntry ::= SEQUENCE { pcePcepSessionStateLastChange TimeStamp, pcePcepSessionState INTEGER, pcePcepSessionLocalID Integer32, pcePcepSessionPeerID Integer32, pcePcepSessionKeepaliveTimer Unsigned32, pcePcepSessionPeerKeepaliveTimer Unsigned32, pcePcepSessionDeadTimer Unsigned32, pcePcepSessionPeerDeadTimer Unsigned32, pcePcepSessionKAHoldTimeRem TimeInterval, pcePcepSessionNumPCReqSent Counter32, pcePcepSessionNumPCReqRcvd Counter32, pcePcepSessionNumPCRepSent Counter32, pcePcepSessionNumPCRepRcvd Counter32, pcePcepSessionNumPCErrSent Counter32, pcePcepSessionNumPCErrRcvd Counter32, pcePcepSessionNumPCNtfSent Counter32, pcePcepSessionNumPCNtfRcvd Counter32, pcePcepSessionNumKeepaliveSent Counter32, pcePcepSessionNumKeepaliveRcvd Counter32, pcePcepSessionNumUnknownRcvd Counter32 } pcePcepSessionStateLastChange OBJECT-TYPE SYNTAX TimeStamp MAX-ACCESS read-only STATUS current DESCRIPTION "The value of sysUpTime at the time this session entered its current state as denoted by the pcePcepSessionState object." ::= { pcePcepSessionEntry 1 } pcePcepSessionState OBJECT-TYPE SYNTAX INTEGER { idle(0), tcpPending(1), Koushik, et al. Expires January 11, 2013 [Page 16] Internet-Draft PCEP MIB July 2012 openWait(2), keepWait(3), sessionUp(4) } MAX-ACCESS read-only STATUS current DESCRIPTION "The current state of the session." ::= { pcePcepSessionEntry 2 } pcePcepSessionLocalID OBJECT-TYPE SYNTAX Integer32 (0..255) MAX-ACCESS read-only STATUS current DESCRIPTION "The value of the PCEP session ID used by the local PCEP speaker in the Open message for this session." ::= { pcePcepSessionEntry 3 } pcePcepSessionPeerID OBJECT-TYPE SYNTAX Integer32 (0..255) MAX-ACCESS read-only STATUS current DESCRIPTION "The value of the PCEP session ID used by the peer in its Open message for this session." ::= { pcePcepSessionEntry 4 } pcePcepSessionKeepaliveTimer OBJECT-TYPE SYNTAX Unsigned32 MAX-ACCESS read-only STATUS current DESCRIPTION "The agreed maximum interval at which the local PCEP speaker transmits PCEP messages on this PCEP session. Zero means that the local PCEP speaker never sends Keepalives on this session." ::= { pcePcepSessionEntry 5 } pcePcepSessionPeerKeepaliveTimer OBJECT-TYPE SYNTAX Unsigned32 MAX-ACCESS read-only STATUS current DESCRIPTION "The agreed maximum interval at which the peer transmits PCEP messages on this PCEP session. Zero means that the peer never sends Keepalives on this session." ::= { pcePcepSessionEntry 6 } Koushik, et al. Expires January 11, 2013 [Page 17] Internet-Draft PCEP MIB July 2012 pcePcepSessionDeadTimer OBJECT-TYPE SYNTAX Unsigned32 MAX-ACCESS read-only STATUS current DESCRIPTION "The local PCEP speaker's DeadTimer interval for this PCEP session." ::= { pcePcepSessionEntry 7 } pcePcepSessionPeerDeadTimer OBJECT-TYPE SYNTAX Unsigned32 MAX-ACCESS read-only STATUS current DESCRIPTION "The peer's DeadTimer interval for for this PCEP session." ::= { pcePcepSessionEntry 8 } pcePcepSessionKAHoldTimeRem OBJECT-TYPE SYNTAX TimeInterval MAX-ACCESS read-only STATUS current DESCRIPTION "The keep alive hold time remaining for this session." ::= { pcePcepSessionEntry 9 } pcePcepSessionNumPCReqSent OBJECT-TYPE SYNTAX Counter32 MAX-ACCESS read-only STATUS current DESCRIPTION "The number of PCReq messages sent on this session." ::= { pcePcepSessionEntry 10 } pcePcepSessionNumPCReqRcvd OBJECT-TYPE SYNTAX Counter32 MAX-ACCESS read-only STATUS current DESCRIPTION "The number of PCReq messages received on this session." ::= { pcePcepSessionEntry 11 } pcePcepSessionNumPCRepSent OBJECT-TYPE SYNTAX Counter32 MAX-ACCESS read-only STATUS current DESCRIPTION "The number of PCRep messages sent on this session." ::= { pcePcepSessionEntry 12 } Koushik, et al. Expires January 11, 2013 [Page 18] Internet-Draft PCEP MIB July 2012 pcePcepSessionNumPCRepRcvd OBJECT-TYPE SYNTAX Counter32 MAX-ACCESS read-only STATUS current DESCRIPTION "The number of PCRep messages received on this session." ::= { pcePcepSessionEntry 13 } pcePcepSessionNumPCErrSent OBJECT-TYPE SYNTAX Counter32 MAX-ACCESS read-only STATUS current DESCRIPTION "The number of PCErr messages sent on this session." ::= { pcePcepSessionEntry 14 } pcePcepSessionNumPCErrRcvd OBJECT-TYPE SYNTAX Counter32 MAX-ACCESS read-only STATUS current DESCRIPTION "The number of PCErr messages received on this session." ::= { pcePcepSessionEntry 15 } pcePcepSessionNumPCNtfSent OBJECT-TYPE SYNTAX Counter32 MAX-ACCESS read-only STATUS current DESCRIPTION "The number of PCNtf messages sent on this session." ::= { pcePcepSessionEntry 16 } pcePcepSessionNumPCNtfRcvd OBJECT-TYPE SYNTAX Counter32 MAX-ACCESS read-only STATUS current DESCRIPTION "The number of PCNtf messages received on this session." ::= { pcePcepSessionEntry 17 } pcePcepSessionNumKeepaliveSent OBJECT-TYPE SYNTAX Counter32 MAX-ACCESS read-only STATUS current DESCRIPTION "The number of Keepalive messages sent on this session." ::= { pcePcepSessionEntry 18 } Koushik, et al. Expires January 11, 2013 [Page 19] Internet-Draft PCEP MIB July 2012 pcePcepSessionNumKeepaliveRcvd OBJECT-TYPE SYNTAX Counter32 MAX-ACCESS read-only STATUS current DESCRIPTION "The number of Keepalive messages received on this session." ::= { pcePcepSessionEntry 19 } pcePcepSessionNumUnknownRcvd OBJECT-TYPE SYNTAX Counter32 MAX-ACCESS read-only STATUS current DESCRIPTION "The number of unknown messages received on this session." ::= { pcePcepSessionEntry 20 } --- --- Notifications --- pcePcepSessionUp NOTIFICATION-TYPE OBJECTS { pcePcepSessionState, pcePcepSessionStateLastChange } STATUS current DESCRIPTION "This notification is sent when the value of 'pcePcepSessionState' enters the 'sessionUp(4)' state." ::= { pcePcepNotifications 1 } pcePcepSessionDown NOTIFICATION-TYPE OBJECTS { pcePcepSessionState, pcePcepSessionStateLastChange } STATUS current DESCRIPTION "This notification is sent when the value of 'pcePcepSessionState' leaves the 'sessionUp(4)' state." ::= { pcePcepNotifications 2 } -- -- Module Conformance Statement -- pcePcepGroups OBJECT IDENTIFIER ::= { pcePcepConformance 1 } Koushik, et al. Expires January 11, 2013 [Page 20] Internet-Draft PCEP MIB July 2012 pcePcepCompliances OBJECT IDENTIFIER ::= { pcePcepConformance 2 } -- -- Full Compliance -- pcePcepModuleFullCompliance MODULE-COMPLIANCE STATUS current DESCRIPTION "The Module is implemented with support for read-create. In other words, both monitoring and configuration are available when using this MODULE-COMPLIANCE." MODULE -- this module MANDATORY-GROUPS { pcePcepGeneralGroup, pcePcepNotificationsGroup } ::= { pcePcepCompliances 1 } -- -- Read-Only Compliance -- pcePcepModuleReadOnlyCompliance MODULE-COMPLIANCE STATUS current DESCRIPTION "The Module is implemented with support for read-only. In other words, only monitoring is available by implementing this MODULE-COMPLIANCE." MODULE -- this module MANDATORY-GROUPS { pcePcepGeneralGroup, pcePcepNotificationsGroup } ::= { pcePcepCompliances 2 } -- units of conformance pcePcepGeneralGroup OBJECT-GROUP OBJECTS { pcePcepEntityLastChange, pcePcepEntityIndexNext, pcePcepEntityRowStatus, pcePcepEntityAdminStatus, pcePcepEntityOperStatus, pcePcepEntityAddrType, Koushik, et al. Expires January 11, 2013 [Page 21] Internet-Draft PCEP MIB July 2012 pcePcepEntityAddr, pcePcepEntityTcpPort, pcePcepEntityConnectTimer, pcePcepEntityOpenWaitTimer, pcePcepEntityKeepWaitTimer, pcePcepEntityKeepAliveTimer, pcePcepEntityDeadTimer, pcePcepEntitySyncTimer, pcePcepEntityRequestTimer, pcePcepEntityInitBackoffTimer, pcePcepEntityMaxBackoffTimer, pcePcepEntityMaxSessions, pcePcepEntityMaxReqPerSession, pcePcepEntityMaxUnknownReqs, pcePcepEntityMaxUnknownMsgs, pcePcepPeerSessionExists, pcePcepPeerNumSessSetupOK, pcePcepPeerNumSessSetupFail, pcePcepPeerSessionUpTime, pcePcepPeerSessionFailTime, pcePcepPeerResponseTime, pcePcepSessionStateLastChange, pcePcepSessionState, pcePcepSessionLocalID, pcePcepSessionPeerID, pcePcepSessionKeepaliveTimer, pcePcepSessionPeerKeepaliveTimer, pcePcepSessionDeadTimer, pcePcepSessionPeerDeadTimer, pcePcepSessionKAHoldTimeRem, pcePcepSessionNumPCReqSent, pcePcepSessionNumPCReqRcvd, pcePcepSessionNumPCRepSent, pcePcepSessionNumPCRepRcvd, pcePcepSessionNumPCErrSent, pcePcepSessionNumPCErrRcvd, pcePcepSessionNumPCNtfSent, pcePcepSessionNumPCNtfRcvd, pcePcepSessionNumKeepaliveSent, pcePcepSessionNumKeepaliveRcvd, pcePcepSessionNumUnknownRcvd } STATUS current DESCRIPTION "Objects that apply to all PCEP MIB implementations." ::= { pcePcepGroups 1 } Koushik, et al. Expires January 11, 2013 [Page 22] Internet-Draft PCEP MIB July 2012 pcePcepNotificationsGroup NOTIFICATION-GROUP NOTIFICATIONS { pcePcepSessionUp, pcePcepSessionDown } STATUS current DESCRIPTION "The notifications for a PCEP MIB implementation." ::= { pcePcepGroups 2 } END 7. Security Considerations This MIB module can be used for configuration of certain objects, and anything that can be configured can be incorrectly configured, with potentially disastrous results. There are a number of management objects defined in this MIB module with a MAX-ACCESS clause of read-create. Such objects may be considered sensitive or vulnerable in some network environments. The support for SET operations 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: o pcePcepEnityTcpPort: A PCC or PCE listening in on the wrong TCP port would mean PCEP communications would fail. o pcePcepEntityKeepAliveTimer: Changing the PCEP session keepalive timer to a value lower than the default value, may force premature PCEP communication time-outs. o pcePcepEntityRowStatus: Setting row status incorrectly may turn off the PCEP client. o pcePcepEntityDeadTimer: Changing the PCEP session deadtimer timer to a value lower than the default value, may force premature PCEP communication time-outs. The user of the PCE-PCEP-DRAFT-MIB module must therefore be aware that support for SET operations in a non-secure environment without proper protection can have a negative effect on network operations. The readable objects in the PCE-PCEP-DRAFT-MIB module (i.e., those with MAX-ACCESS other than not-accessible) may be considered sensitive in some environments since, collectively, they provide information about the amount and frequency of path computation requests and responses within the network and can reveal some aspects of their configuration. Koushik, et al. Expires January 11, 2013 [Page 23] Internet-Draft PCEP MIB July 2012 In such environments it is important to control also GET and NOTIFY access to these objects and possibly even to encrypt their values when sending them over the network via SNMP. 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 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. 8. IANA Considerations IANA is requested to make a MIB OID assignment for pceStdMIB under the mib-2 branch. The MIB module in this document uses the following IANA-assigned OBJECT IDENTIFIER values recorded in the SMI Numbers registry: The MIB module in this document uses the following IANA-assigned OBJECT IDENTIFIER values recorded in the SMI Numbers registry: Descriptor OBJECT IDENTIFIER value ---------- ----------------------- pceStdMIB { mib-2 XXX } IANA is requested to root MIB objects in the MIB module contained in this document under the mib-2 subtree. 9. References 9.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. Koushik, et al. Expires January 11, 2013 [Page 24] Internet-Draft PCEP MIB July 2012 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. [RFC2863] McCloghrie, K. and F. Kastenholz, "The Interfaces Group MIB", RFC 2863, June 2000. [RFC3411] Harrington, D., Presuhn, R., and B. Wijnen, "An Architecture for Describing Simple Network Management Protocol (SNMP) Management Frameworks", STD 62, RFC 3411, December 2002. [RFC3813] Srinivasan, C., Viswanathan, A., and T. Nadeau, "Multiprotocol Label Switching (MPLS) Label Switching Router (LSR) Management Information Base (MIB)", RFC 3813, June 2004. [RFC4001] Daniele, M., Haberman, B., Routhier, S., and J. Schoenwaelder, "Textual Conventions for Internet Network Addresses", RFC 4001, February 2005. [RFC4265] Schliesser, B. and T. Nadeau, "Definition of Textual Conventions for Virtual Private Network (VPN) Management", RFC 4265, November 2005. [RFC4655] Farrel, A., Vasseur, J., and J. Ash, "A Path Computation Element (PCE)-Based Architecture", RFC 4655, August 2006. [RFC5440] Vasseur, JP. and JL. Le Roux, "Path Computation Element (PCE) Communication Protocol (PCEP)", RFC 5440, March 2009. 9.2. Normative References [RFC3410] Case, J., Mundy, R., Partain, D., and B. Stewart, "Introduction and Applicability Statements for Internet- Standard Management Framework", RFC 3410, December 2002. Koushik, et al. Expires January 11, 2013 [Page 25] Internet-Draft PCEP MIB July 2012 Appendix A. Acknowledgement The authors would like to thank Santanu Mazumder and Meral Shirazipour for their valuable input. Funding for the RFC Editor function is currently provided by the Internet Society. Authors' Addresses A S Kiran Koushik Cisco Systems, Inc. EMail: kkoushik@cisco.com Stephan Emile France Telecom 2 avenue Pierre Marzin Lannion F-22307 France EMail: emile.stephan@orange-ftgroup.com Quintin Zhao Huawei Technology 125 Nagog Technology Park Acton, MA 01719 US EMail: qzhao@huawei.com Daniel King Old Dog Consulting UK EMail: daniel@olddog.co.uk Koushik, et al. Expires January 11, 2013 [Page 26] Internet-Draft PCEP MIB July 2012 Jonathan Hardwick Metaswitch 100 Church Street Enfield EN2 6BQ UK EMail: jon.hardwick@metaswitch.com Koushik, et al. Expires January 11, 2013 [Page 27]