Internet Engineering Task Force                      A S Kiran Koushik
Internet Draft                                     Cisco Systems, Inc.
Intended Status: Standards Track                            E. Stephan
Created: March 8, 2010                                  France Telecom
Expires: September 8, 2010                                Quintin Zhao
                                                     Huawei Technology
                                                           Daniel King
                                                    Old Dog Consulting


       PCE communication protocol(PCEP) Management Information Base

                     draft-ietf-pce-pcep-mib-01.txt

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 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 September 8, 2010.







PCE Working Group              Expires Sept 2010              [Page 1]


draft-ietf-pce-pcep-mib-01 PCE-PCEP-MIB                 March 8, 2010


Copyright Notice

   Copyright (c) 2010 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
   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

   Abstract............................................................
   1. Introduction.....................................................
   2. Terminology......................................................
   3. The Internet-Standard Management Framework.......................
   4. PCEP MIB modules Architecture....................................
     4.1 Relations to other MIB modules................................
   5. Example of the PCEP MIB modules usage ...........................
   6. Object definitions...............................................
      6.1  PCE-PCEP-DRAFT-MIB..........................................
   7. Security considerations..........................................
   8. IANA Considerations..............................................
   9. References.......................................................
      9.1. Normative References........................................
      9.2. Informative References......................................
   10. Acknowledgement ................................................
   11. Author's Addresses..............................................


1. Introduction

   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 Path Computation Element communication
   Protocol (PCEP) [RFC5440] for communications between a Path
   Computation Client(PCC) and a Path Computation Element (PCE), or
   between two PCEs.

   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
   [RFC2119].

PCE Working Group              Expires Sept 2010              [Page 2]


draft-ietf-pce-pcep-mib-01 PCE-PCEP-MIB                 March 8, 2010


Conventions used in this document

   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].

2. 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.

   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].

3. 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].

4. PCEP MIB Module Architecture

   The PCEP MIB will contain the following information:

   a. PCEP client configuration and status.
   b. PCEP peer configuration and information.
   c. PCEP session configuration and information.
   d. Notifications to indicate PCEP session changes.

4.1. Relations to other MIB modules

   TBD

PCE Working Group              Expires Sept 2010              [Page 3]


draft-ietf-pce-pcep-mib-01 PCE-PCEP-MIB                 March 8, 2010


5. Example of the PCEP MIB module usage

   TBD

6.  Object definitions

6.1 PCE-PCEP-DRAFT-MIB

   This MIB module makes references to the following documents.
   [RFC2578], [RFC2579], [RFC2580], [RFC3411], [RFC2863], [RFC4001],
   [RFC4265] and [RFC3813].

   PCE-PCEP-DRAFT-MIB DEFINITIONS ::= BEGIN

   IMPORTS
      MODULE-IDENTITY, OBJECT-TYPE, NOTIFICATION-TYPE,
      Counter32, Unsigned32, Gauge32, Integer32, IpAddress,
      experimental
            FROM SNMPv2-SMI

      RowStatus, TimeInterval, TruthValue,
      TimeStamp, StorageType,TEXTUAL-CONVENTION
             FROM SNMPv2-TC                                --  [RFC2579]

      InetAddressPrefixLength,
      InetAddressType,
      InetAddress,
      InetPortNumber
             FROM INET-ADDRESS-MIB

      MODULE-COMPLIANCE,
      OBJECT-GROUP,
      NOTIFICATION-GROUP
         FROM SNMPv2-CONF;

   pcePcepDraftMIB MODULE-IDENTITY
      LAST-UPDATED "200811030000Z" --Nov 3, 2008
      ORGANIZATION "Path Computation Element (PCE) Working Group"
      CONTACT-INFO "
         A S Kiran Koushik
         Cisco Systems Inc.
         Stephan Emile
         France Telecom DR&D
      Email: kkoushik@cisco.com
      Email: emile.stephan@orange-ft.com
      Email comments directly to the PCE WG Mailing List at pce@ietf.org
      WG-URL: http://www.ietf.org/html.charters/pce-charter.html
      "



PCE Working Group              Expires Sept 2010              [Page 4]


draft-ietf-pce-pcep-mib-01 PCE-PCEP-MIB                 March 8, 2010


   DESCRIPTION

      "This MIB module defines a collection of objects for managing
       PCE communication protocol(PCEP)."


-- Revision history

    REVISION
      "200811031200Z"  -- Nov 03 2008 12:00:00 EST
    DESCRIPTION
        "
          Changes from -00- ietf draft include support for the following
           in the MIB :
           o Whether the PCEP speaker should initiate the PCEP session
             or wait for initiation by the peer,
           o A set of PCEP policies including the type of operations
             allowed for the PCEP peer (e.g., diverse path computation,
             synchronization, etc.),
           o A scalar object restricting the set of PCEP peers
             that can initiate a PCEP session with the PCEP speaker
             (e.g., list of authorized PCEP peers, all PCEP peers in
             the area, all PCEP peers in the AS).

         Changes from -01- draft include support for the following
           in the MIB :
           o  The SyncTimer,
           o  The maximum number of sessions that can be setup,
           o  Request timer: amount of time a PCC waits for a reply
              before resending its path computation requests
              (potentially to an alternate PCE).
           o  The MAX-UNKNOWN-REQUESTS
           o  The MAX-UNKNOWN-MESSAGES
           o  Response time (minimum, average and maximum), on a
              per PCE Peer basis,
           o  PCEP Session failures,
           o  Amount of time the session has been in active state,
           o  Number of corrupted messages,
           o  Number of failed computations,

        Changes from -00- draft :
         1. Clarified the notion of PCEP Client.
         2. Added new objects to the PCEP client and session tables
            to manage PCEP protocol as in section 8 of
            draft-ietf-pce-pcep-08.txt
         3. Did not add all the objects to manage the recommendations
            in draft-ietf-pce-pcep-08.txt to control the complexity of
            the MIB."



PCE Working Group              Expires Sept 2010              [Page 5]


draft-ietf-pce-pcep-mib-01 PCE-PCEP-MIB                 March 8, 2010


    REVISION
      "200702201200Z"  -- 20 Feb 2007 12:00:00 EST
    DESCRIPTION
        "draft-00 version"
   ::= { experimental 9999 } --

   -- Textual Conventions used in this MIB module --
    PcePcepIdentifier ::= TEXTUAL-CONVENTION
       DISPLAY-HINT "1d.1d.1d.1d:1d:1d"
       STATUS      current
       DESCRIPTION
          "The LDP identifier is a six octet
           quantity which is used to identify a
           PCE client."

       SYNTAX  OCTET STRING (SIZE (6))

   -- Notifications --

   pcePcepNotifications OBJECT IDENTIFIER ::= { pcePcepDraftMIB 0 }

   pcePcepMIBObjects OBJECT IDENTIFIER ::= { pcePcepDraftMIB 1 }
   pcePcepConformance   OBJECT IDENTIFIER ::= { pcePcepDraftMIB 2 }

   pcePcepClientObjects OBJECT IDENTIFIER ::= { pcePcepMIBObjects 1 }

     --
     -- PCE Client Objects
     --

     pcePcepClientLastChange 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 pcePcepClientTable/pcePcepClientStatsTable, or
             the most recent change in value of any objects in the
             pcePcepClientTable.

             If no such changes have occurred since the last
             re-initialization of the local management subsystem,
             then this object contains a zero value."
         ::= { pcePcepClientObjects 1 }






PCE Working Group              Expires Sept 2010              [Page 6]


draft-ietf-pce-pcep-mib-01 PCE-PCEP-MIB                 March 8, 2010


     pcePcepClientIndexNext  OBJECT-TYPE
         SYNTAX      Unsigned32
         MAX-ACCESS     read-only
         STATUS         current
         DESCRIPTION
             "This object contains an appropriate value to
             be used for pcePcepClientIndex when creating
             entries in the pcePcepClientTable. The value
             0 indicates that no unassigned entries are
             available."
        ::= { pcePcepClientObjects 2 }

     pcePcepClientSessionAuth  OBJECT-TYPE
         SYNTAX        INTEGER {
                       AllPcepPeersInArea(1),
                       AllPcepPeersInAS(2),
                       OnlyAuthorizedPeers(3)
                     }
         MAX-ACCESS     read-only
         STATUS         current
         DESCRIPTION
             "This object indicates which peers can start
             a PCEP session with the PCEP speaker. The value
             of this object is only applicable if this system
             can be a PCEP speaker."
        ::= { pcePcepClientObjects 2 }

     pcePcepClientTable OBJECT-TYPE
         SYNTAX      SEQUENCE OF PcePcepClientEntry
         MAX-ACCESS  not-accessible
         STATUS      current
         DESCRIPTION

             "This table contains information about the
             PCEP Client."
          ::= { pcePcepClientObjects 4 }

      pcePcepClientEntry OBJECT-TYPE
          SYNTAX      PcePcepClientEntry
          MAX-ACCESS  not-accessible
          STATUS      current
          DESCRIPTION
              "An entry in this table represents a PCEP client.
              An entry can be created by a network administrator
              or by an SNMP agent as instructed by PCEP."
          INDEX       {  pcePcepClientPcepId, pcePcepClientIndex  }
          ::= { pcePcepClientTable 1 }




PCE Working Group              Expires Sept 2010              [Page 7]


draft-ietf-pce-pcep-mib-01 PCE-PCEP-MIB                 March 8, 2010


      PcePcepClientEntry ::= SEQUENCE {
          pcePcepClientPcepId               PcePcepIdentifier,
          pcePcepClientIndex                Unsigned32,
          pcePcepClientAdminStatus          INTEGER,
          pcePcepClientOperStatus           INTEGER,
          pcePcepClientTcpPort              InetPortNumber,
          pcePcepClientKeepAliveTimer       Unsigned32,
          pcePcepClientStorageType          StorageType,
          pcePcepClientRowStatus            RowStatus,
          pcePcepClientDeadTimer            Unsigned32,
          pcePcepClientInitSession          TruthValue,
          pcePcepClientPoliciesAllowed      INTEGER
      }

      pcePcepClientPcepId OBJECT-TYPE
          SYNTAX      PcePcepIdentifier
          MAX-ACCESS  not-accessible
          STATUS      current
          DESCRIPTION
              "The PCEP client identifier."
         ::= { pcePcepClientEntry 1 }

     pcePcepClientIndex OBJECT-TYPE
         SYNTAX      Unsigned32
         MAX-ACCESS  not-accessible
         STATUS      current
         DESCRIPTION
             "This index is used to uniquely identify the PCEP client.
             Before creating a row in this table,
             the 'pcePcepClientIndexNext' object should be retrieved.
             That value should be used for the value of this index
             when creating a row in this table.  NOTE:  if a value
             of zero (0) is retrieved, that indicates that no rows
             can be created in this table at this time."
         ::= { pcePcepClientEntry 2 }
















PCE Working Group              Expires Sept 2010              [Page 8]


draft-ietf-pce-pcep-mib-01 PCE-PCEP-MIB                 March 8, 2010


     pcePcepClientAdminStatus OBJECT-TYPE
         SYNTAX      INTEGER {
                       enable(1),
                       disable(2)
                     }
         MAX-ACCESS  read-create
         STATUS      current
         DESCRIPTION
             "The administrative status of this PCEP Client.
             If this object is changed from 'enable' to 'disable'
             and this entity has already attempted to establish
             contact with a Peer, then all contact with that
             Peer is lost and all information from that Peer
             needs to be removed from the MIB. (This implies
             that the network management subsystem should clean
             up any related entry in the pcePcepPeerTable.  This
             further implies that a 'tear-down' for that session
             is issued and the session and all information related
             to that session cease to exist).

             At this point the operator is able to change values
             which are related to this entity.

             When the admin status is set back to 'enable', then
             this Entity will attempt to establish a new session
             with the Peer."

         DEFVAL  { enable }
         ::= { pcePcepClientEntry 4 }

     pcePcepClientOperStatus OBJECT-TYPE
         SYNTAX      INTEGER {
                       unknown(1),
                       enabled(2),
                       disabled(3)
                     }
         MAX-ACCESS  read-only
         STATUS      current
         DESCRIPTION
             "The operational status of this PCEP client.

             The value of unknown(1) indicates that the
             operational status cannot be determined at
             this time.  The value of unknown should be
             a transient condition before changing
             to enabled(2) or disabled(3)."

         ::= { pcePcepClientEntry 5 }



PCE Working Group              Expires Sept 2010              [Page 9]


draft-ietf-pce-pcep-mib-01 PCE-PCEP-MIB                 March 8, 2010


     pcePcepClientTcpPort 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." -- To be assigned by IANA
         ::= { pcePcepClientEntry 6 }

     pcePcepClientKeepAliveTimer OBJECT-TYPE
         SYNTAX      Unsigned32 (1..65535)
         UNITS       "seconds"
         MAX-ACCESS  read-create
         STATUS      current
         DESCRIPTION
             "The integer value which is the proposed keep
             alive timer for this PCEP client."
         ::= { pcePcepClientEntry 7 }

     pcePcepClientStorageType  OBJECT-TYPE
         SYNTAX      StorageType
         MAX-ACCESS  read-create
         STATUS      current

         DESCRIPTION
             "The storage type for this conceptual row.
             Conceptual rows having the value 'permanent(4)'
             need not allow write-access to any columnar
             objects in the row."
         DEFVAL{ nonVolatile }
         ::= { pcePcepClientEntry 8 }

     pcePcepClientRowStatus OBJECT-TYPE
         SYNTAX      RowStatus
         MAX-ACCESS  read-create
         STATUS      current
         DESCRIPTION
             "The status of this conceptual row.  All writable
              objects in this row may be modified at any
              time, however, as described in detail in
              the section entitled, 'Changing Values After
              Session Establishment', and again described
              in the DESCRIPTION clause of the
              pcePcepClientAdminStatus object, if a session
              has been initiated with a Peer, changing objects
              in this table will wreak havoc with the session
              and interrupt traffic.  To repeat again:
              the recommended procedure is to


PCE Working Group              Expires Sept 2010             [Page 10]


draft-ietf-pce-pcep-mib-01 PCE-PCEP-MIB                 March 8, 2010


              set the pcePcepClientAdminStatus to down, thereby
              explicitly causing a session to be torn down. Then,
              change objects in this entry, then set
              the pcePcepClientAdminStatus to enable,
              which enables a new session to be initiated."
         ::= { pcePcepClientEntry 9 }

     pcePcepClientDeadTimer OBJECT-TYPE
         SYNTAX      Unsigned32 (4..262140)
         UNITS       "seconds"
         MAX-ACCESS  read-create
         STATUS      current
         DESCRIPTION
             "The value which indicates a period of
             time after the expiration of which a PCEP peer
             declares the session down if no PCEP message
             has been received. The Deadtimer value is recommended to
             be 4 times the Keepalive value."
         ::= { pcePcepClientEntry 10 }

     pcepPcepClientInitSession OBJECT-TYPE
         SYNTAX      TruthValue
         MAX-ACCESS  read-create
         STATUS      current
         DESCRIPTION
             "The value indicates if the PCEP client should initiate
             PCEP session or wait for initiation by the peer.
             If the value is true(1) then this client will initiate
             the session. If the value is false(2) the it has to
             wait for the peer to initiate a session."
         DEFVAL{ false }
         ::= { pcePcepClientEntry 11 }

     pcePcepClientPoliciesAllowed OBJECT-TYPE
         SYNTAX      INTEGER {
                       independentNonSyncPathComp(1)
                       independentSyncPathComp(2),
                       dependentSyncPathComp(3)
                     }
         MAX-ACCESS  read-create
         STATUS      current
         DESCRIPTION
             "The value indicates the set of operation types allowed
             for this client."
         ::= { pcePcepClientEntry 12 }

     --
     -- The PCEP Client Statistics Table
     -- TBD
     --

PCE Working Group              Expires Sept 2010             [Page 11]


draft-ietf-pce-pcep-mib-01 PCE-PCEP-MIB                 March 8, 2010


     --
     -- The PCEP Peer Table
     --

     pcePcepSessionObjects OBJECT IDENTIFIER ::= { pcePcepMIBObjects 3 }

     pcePcepPeerLastChange 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 to/from the
             pcePcepPeerTable/pcePcepSessionTable."
         ::= { pcePcepSessionObjects 1 }

     pcePcepPeerTable OBJECT-TYPE
         SYNTAX      SEQUENCE OF PcePcepPeerEntry
         MAX-ACCESS  not-accessible
         STATUS      current
         DESCRIPTION
             "Information about PCEP peers known by Entities in
             the pcePcepClientTable.  The information in this table
             is based on information from the Client-Peer interaction
             during session initialization but is not appropriate
             for the pcePcepSessionTable, because objects in this
             table may or may not be used in session establishment."
         ::= { pcePcepSessionObjects 2 }

     pcePcepPeerEntry OBJECT-TYPE
         SYNTAX      PcePcepPeerEntry
         MAX-ACCESS  not-accessible
         STATUS      current
         DESCRIPTION
             "Information about a single Peer which is related
             to a Session.  This table is augmented by
             the pcePcepSessionTable."
         INDEX       { pcePcepClientPcepId,
                       pcePcepClientIndex,
                       pcePcepPeerPcepId }
         ::= { pcePcepPeerTable 1 }

     PcePcepPeerEntry ::= SEQUENCE {
         pcePcepPeerPcepId                PcePcepIdentifier,
         pcePcepPeerTransportAddrType    InetAddressType,
         pcePcepPeerTransportAddr        InetAddress
     }




PCE Working Group              Expires Sept 2010             [Page 12]


draft-ietf-pce-pcep-mib-01 PCE-PCEP-MIB                 March 8, 2010


     pcePcepPeerPcepId OBJECT-TYPE
         SYNTAX      PcePcepIdentifier
         MAX-ACCESS  not-accessible
         STATUS      current
         DESCRIPTION
             "The PCEP identifier of this PCE Peer."
         ::= { pcePcepPeerEntry 1 }

     pcePcepPeerTransportAddrType OBJECT-TYPE
         SYNTAX      InetAddressType
         MAX-ACCESS  read-only
         STATUS      current
         DESCRIPTION
             "The type of the Internet address for the
             pcePcepPeerTransportAddr object.  The PCEP
             specification describes this as being either
             an IPv4 Transport Address or IPv6 Transport
             This object specifies how the value of the
             pcePcepPeerTransportAddr object should be
             interpreted."
         ::= { pcePcepPeerEntry 2 }

     pcePcepPeerTransportAddr OBJECT-TYPE
         SYNTAX      InetAddress
         MAX-ACCESS  read-only
         STATUS      current
         DESCRIPTION
             "The Internet address advertised by the peer.

             The type of this address is specified by the
             value of the pcePcepPeerTransportAddrType
             object."
         ::= { pcePcepPeerEntry 3 }

     pcePcepPeerResponseTime OBJECT-TYPE
         SYNTAX      Unsigned32 (1..65535)
         UNITS       "seconds"
         MAX-ACCESS  read-only
         STATUS      current
         DESCRIPTION
             "The Average response time for this PCEP peer."
         ::= { pcePcepPeerEntry 4 }


     --
     -- The PCEP Sessions Table
     --




PCE Working Group              Expires Sept 2010             [Page 13]


draft-ietf-pce-pcep-mib-01 PCE-PCEP-MIB                 March 8, 2010


     pcePcepSessionMax OBJECT-TYPE
         SYNTAX  Unsigned32
         MAX-ACCESS read-only
         STATUS current
         DESCRIPTION
             "The maximum number of sessions that can be setup
             on this PCEP client."
         ::= { pcePcepSessionObjects 3 }

     pcePcepSessionMaxUnknownRequests OBJECT-TYPE
         SYNTAX  Unsigned32
         MAX-ACCESS read-only
         STATUS current
         DESCRIPTION
             "The maximum number of unknown requests that any session
             on this PCEP client is willing to accept."
         ::= { pcePcepSessionObjects 4 }

     pcePcepSessionMaxUnknownMsgs OBJECT-TYPE
         SYNTAX  Unsigned32
         MAX-ACCESS read-only
         STATUS current
         DESCRIPTION
             "The maximum number of unknown messages that any session
             on this PCEP client is willing to accept."
         ::= { pcePcepSessionObjects 5 }

     pcePcepSessionFailures OBJECT-TYPE
         SYNTAX  Unsigned32
         MAX-ACCESS read-only
         STATUS current
         DESCRIPTION
             "The number of failed sessions on this client."
         ::= { pcePcepSessionObjects 6 }

     pcePcepSessionTable OBJECT-TYPE
         SYNTAX      SEQUENCE OF PcePcepSessionEntry
         MAX-ACCESS  not-accessible
         STATUS      current
         DESCRIPTION
             "A table of Sessions between PCEP clients.
             This table AUGMENTS the pcePcepPeerTable.
             Each row in this table represents a single session."
         ::= { pcePcepSessionObjects 7 }







PCE Working Group              Expires Sept 2010             [Page 14]


draft-ietf-pce-pcep-mib-01 PCE-PCEP-MIB                 March 8, 2010


     pcePcepSessionEntry OBJECT-TYPE
         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."

         AUGMENTS { pcePcepPeerEntry }
         ::= { pcePcepSessionTable 1 }

     PcePcepSessionEntry ::= SEQUENCE {
         pcePcepSessionStateLastChange       TimeStamp,
         pcePcepSessionState                 INTEGER,
         pcePcepSessionKeepAliveHoldTimeRem  TimeInterval,
         pcePcepSessionKeepAliveTime         Unsigned32,
         pcePcepSessionDiscontinuityTime     TimeStamp,
         pcePcepSessionSpeakerRole           INTEGER,
         pcePcepSessionSyncTime              Unsigned32,
         pcePcepSessionActiveTime            Unsigned32,
         pcePcepSessionCorruptedMsgs         Unsigned32,
         pcePcepSessionFailedComps           Unsigned32
     }

     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 {
                        sessionUp(1),
                        keepWait(2),
                        openWait(3),
                        tcpPending(4),
                        idle(5)
                     }
         MAX-ACCESS  read-only
         STATUS      current
         DESCRIPTION
             "The current state of the session, all of the
             states 1 to 5 are based on the state machine
             for session negotiation behavior."
         ::= { pcePcepSessionEntry 2 }

PCE Working Group              Expires Sept 2010             [Page 15]


draft-ietf-pce-pcep-mib-01 PCE-PCEP-MIB                 March 8, 2010


     pcePcepSessionKeepAliveHoldTimeRem OBJECT-TYPE
         SYNTAX      TimeInterval
         MAX-ACCESS  read-only
         STATUS      current
         DESCRIPTION
             "The keep alive hold time remaining for
             this session."
         ::= { pcePcepSessionEntry 3 }

     pcePcepSessionKeepAliveTime OBJECT-TYPE
         SYNTAX      Unsigned32 (1..65535)
         UNITS       "seconds"
         MAX-ACCESS  read-only
         STATUS      current
         DESCRIPTION
             "The negotiated KeepAlive Time which
             represents the amount of seconds between
             keep alive messages.  The
             pcePcepClientKeepAliveHoldTimer
             related to this Session is the
             value that was proposed as the
             KeepAlive Time for this session

             This value is negotiated during
             session initialization between
             the entity's proposed value
             (i.e., the value configured in
             pcePcepClientKeepAliveHoldTimer)
             and the peer's proposed
             KeepAlive Hold Timer value.
             This value is the smaller
             of the two proposed values."
         ::= { pcePcepSessionEntry 4 }

     pcePcepSessionDiscontinuityTime OBJECT-TYPE
         SYNTAX      TimeStamp
         MAX-ACCESS  read-only
         STATUS      current
         DESCRIPTION
             "The value of sysUpTime on the most recent occasion
             at which any one or more of this session's counters
             suffered a discontinuity.  The relevant counters are
             the specific instances associated with this session
             of any Counter32 object contained in the
             pcePcepSessionStatsTable.

             The initial value of this object is the value of
             sysUpTime when the entry was created in this table.


PCE Working Group              Expires Sept 2010             [Page 16]


draft-ietf-pce-pcep-mib-01 PCE-PCEP-MIB                 March 8, 2010


             Also, a command generator can distinguish when a session
             between a given Entity and Peer goes away and a new
             session is established.  This value would change and
             thus indicate to the command generator that this is a
             different session."
         ::= { pcePcepSessionEntry 5 }

     pcePcepSessionSpeakerRole OBJECT-TYPE
         SYNTAX      INTEGER {
                       pcc(1),
                       pce(2),
                       pccandpce(3)
                     }
         MAX-ACCESS  read-only
         STATUS      current
         DESCRIPTION
             "The value of this object indicates the PCEP
             speaker role in this session."
         ::= { pcePcepSessionEntry 6 }

      pcePcepSessionSyncTime OBJECT-TYPE
            SYNTAX      Unsigned32 (1..65535)
            UNITS       "seconds"
            MAX-ACCESS  read-only
            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 (e.g a misbehaving PCC)."

            DEFVAL { 60 }
            ::= { pcePcepSessionEntry 7 }







PCE Working Group              Expires Sept 2010             [Page 17]


draft-ietf-pce-pcep-mib-01 PCE-PCEP-MIB                 March 8, 2010


      pcePcepSessionRequestTime OBJECT-TYPE
            SYNTAX      Unsigned32 (1..65535)
            UNITS       "seconds"
            MAX-ACCESS  read-only
            STATUS      current
            DESCRIPTION
                "The maximum amount of time a PCC waits for a
                reply before resending its path computation requests
                (potentially to an alternate PCE)."
            ::= { pcePcepSessionEntry 8 }

      pcePcepSessionActiveTime OBJECT-TYPE
            SYNTAX      Unsigned32 (1..65535)
            UNITS       "seconds"
            MAX-ACCESS  read-only
            STATUS      current
            DESCRIPTION
                "The amount of time this session has been active
                since creation or a discontinuity."
            ::= { pcePcepSessionEntry 9 }

      pcePcepSessionCorruptedMsgs OBJECT-TYPE
            SYNTAX      Unsigned32
            MAX-ACCESS  read-only
            STATUS      current
            DESCRIPTION
                "The number of corrupted messages received on this
                session."
            ::= { pcePcepSessionEntry 10 }

      pcePcepSessionCorruptedMsgs OBJECT-TYPE
            SYNTAX      Unsigned32
            MAX-ACCESS  read-only
            STATUS      current
            DESCRIPTION
                "The number of requests which had failed
                computations."
            ::= { pcePcepSessionEntry 11 }

     ---
     --- Notifications
     ---

     pcePcepSessionUp NOTIFICATION-TYPE
          OBJECTS     {
                         pcePcepSessionState,
                         pcePcepSessionDiscontinuityTime
                      }
          STATUS      current


PCE Working Group              Expires Sept 2010             [Page 18]


draft-ietf-pce-pcep-mib-01 PCE-PCEP-MIB                 March 8, 2010


          DESCRIPTION
             "This notification is sent when the
             value of 'pcePcepSessionState' enters
             the 'sessionUp(1)' state."
          ::= { pcePcepNotifications 1 }

     pcePcepSessionDown NOTIFICATION-TYPE
          OBJECTS     {
                         pcePcepSessionState,
                         pcePcepSessionDiscontinuityTime

                      }
          STATUS      current
          DESCRIPTION
             "This notification is sent when the
             value of 'pcePcepSessionState' leaves
             the 'sessionUp(1)' state."
          ::= { pcePcepNotifications 2 }


     --****************************************************************
     -- Module Conformance Statement
     --****************************************************************

     pcePcepGroups
         OBJECT IDENTIFIER ::= { pcePcepConformance 1 }

     pcePcepCompliances
         OBJECT IDENTIFIER ::= { pcePcepConformance 2 }

     --
     -- Full Compliance
     --

     pcePcepModuleFullCompliance MODULE-COMPLIANCE
         STATUS current
         DESCRIPTION
             "The Module is implemented with support
             for read-create and read-write.  In other

             words, both monitoring and configuration
             are available when using this MODULE-COMPLIANCE."

         MODULE -- this module
             MANDATORY-GROUPS    { pcePcepGeneralGroup,
                                   pcePcepNotificationsGroup
                                 }

         ::= { pcePcepCompliances 1 }


PCE Working Group              Expires Sept 2010             [Page 19]


draft-ietf-pce-pcep-mib-01 PCE-PCEP-MIB                 March 8, 2010


     --
     -- 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 {
         pcePcepClientLastChange,
         pcePcepClientIndexNext,
         pcePcepClientAdminStatus,
         pcePcepClientOperStatus,
         pcePcepClientTcpPort,
         pcePcepClientKeepAliveTimer,
         pcePcepClientStorageType,
         pcePcepClientRowStatus,
         pcePcepPeerLastChange,
         pcePcepPeerTransportAddrType,
         pcePcepPeerTransportAddr,
         pcePcepSessionStateLastChange,
         pcePcepSessionState,
         pcePcepSessionKeepAliveHoldTimeRem,
         pcePcepSessionKeepAliveTime,
         pcePcepSessionDiscontinuityTime,
         pcePcepClientDeadTimer,
         pcePcepClientInitSession,
         pcePcepClientPoliciesAllowed,
         pcePcepSessionMax,
         pcePcepSessionSpeakerRole,
         pcePcepClientSyncTime,
         pcePcepClientRequestTime,
         pcePcepSessionMaxUnknownRequests,
         pcePcepSessionMaxUnknownMsgs,
         pcePcepSessionSessionFailures,
         pcePcepSessionActiveTime,
         pcePcepSessionCorruptedMsgs,


 PCE Working Group              Expires Sept 2010             [Page 20]


draft-ietf-pce-pcep-mib-01 PCE-PCEP-MIB                 March 8, 2010


         pcePcepSessionFailedComps
         }
         STATUS    current
         DESCRIPTION
             "Objects that apply to all PCEP MIB implementations."

         ::= { pcePcepGroups 1 }

      pcePcepNotificationsGroup NOTIFICATION-GROUP
         NOTIFICATIONS { pcePcepSessionUp,
                         pcePcepSessionDown
                            }
         STATUS   current


         DESCRIPTION
             "The notifications for a PCEP MIB implementation."
         ::= { pcePcepGroups 2 }
         END

7. Security Considerations

   These MIB modules 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 these MIB modules
   with a MAX-ACCESS clause of read-write and/or 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:

   <The tables and objects and their sensitivies will be added in a
   future version of this document>

   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


PCE Working Group              Expires Sept 2010             [Page 21]


draft-ietf-pce-pcep-mib-01 PCE-PCEP-MIB                 March 8, 2010

   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:

           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., Perkins, D., Schoenwaelder, J., Case,
                J., Rose, M., and S. Waldbusser, "Structure of
                Management Information Version 2 (SMIv2)", STD 58, RFC
                2578, April 1999.

   [RFC2579]    McCloghrie, K., Perkins, D., Schoenwaelder, J., Case,
                J., Rose, M., and S. Waldbusser, "Textual Conventions
                for SMIv2", STD 58, RFC 2579, April 1999.

   [RFC2580]    McCloghrie, K., Perkins, D., Schoenwaelder, J., Case,
                J., Rose, M., and S. Waldbusser, "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.

PCE Working Group              Expires Sept 2010             [Page 22]


draft-ietf-pce-pcep-mib-01 PCE-PCEP-MIB                 March 8, 2010


   [RFC3813]    Srinivasan, C., Viswanathan, A., and T. Nadeau, "MPLS
                Multiprotocol Label Switching (MPLS) Label Switch Router
                Management Information Base ", 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.

   [RFC5440]    Ayyangar, A., Farrel, A., Oki, E., Atlas, A., Dolganow
                A. Ikejiri, Y., Kumaki, K., Vasseur, J., and J. Roux,
                "Path Computation Element (PCE) communication Protocol
                (PCEP)," RFC5440, March. 2009.

9.2. Informative References

   [RFC3410]    Case, J., Mundy, R., Partain, D., and B. Stewart,
                "Introduction and Applicability Statements for
                Internet-Standard Management Framework", RFC 3410,
                December 2002.

   [RFC4655]    Farrel, A., Vasseur, J., and J. Ash, "A Path Computation
                Element (PCE)-Based Architecture", RFC 4655, August
                2006.

10. 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.

11. Authors' Addresses

   A S Kiran Koushik
   Cisco Systems Inc.
   Email: kkoushik@cisco.com

   Stephan Emile
   France Telecom
   2 avenue Pierre Marzin
   Lannion,   F-22307
   Email: emile.stephan@orange-ftgroup.com




PCE Working Group              Expires Sept 2010             [Page 23]

draft-ietf-pce-pcep-mib-01 PCE-PCEP-MIB                 March 8, 2010


   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