TOC 
Forwarding and Control ElementR. Haas
Separation (forces)IBM
Internet-DraftSeptember 09, 2008
Intended status: Standards Track 
Expires: March 13, 2009 


ForCES MIB
draft-ietf-forces-mib-09

Status of this Memo

By submitting this Internet-Draft, each author represents that any applicable patent or other IPR claims of which he or she is aware have been or will be disclosed, and any of which he or she becomes aware will be disclosed, in accordance with Section 6 of 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 March 13, 2009.

Abstract

This memo defines a Management Information Base (MIB) module for use with network management protocols in the Internet community. In particular, it defines managed objects for the Forwarding and Control Element Separation (ForCES) Network Element (NE).



Table of Contents

1.  Requirements notation
2.  The Internet-Standard Management Framework
3.  Introduction
4.  ForCES MIB Overview
5.  ForCES MIB Definition
6.  Associations kept in the MIB
7.  Support for multiple CEs and FEs
8.  Security Considerations
9.  IANA Considerations
10.  Changes from Previous Draft Revisions
11.  References
    11.1.  Normative References
    11.2.  Informative References
Appendix A.  Acknowledgments
§  Author's Address
§  Intellectual Property and Copyright Statements




 TOC 

1.  Requirements notation

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] (Bradner, S., “Key words for use in RFCs to Indicate Requirement Levels,” March 1997.).



 TOC 

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] (Case, J., Mundy, R., Partain, D., and B. Stewart, “Introduction and Applicability Statements for Internet-Standard Management Framework,” December 2002.).

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] (McCloghrie, K., Ed., Perkins, D., Ed., and J. Schoenwaelder, Ed., “Structure of Management Information Version 2 (SMIv2),” April 1999.), STD 58, [RFC2579] (McCloghrie, K., Ed., Perkins, D., Ed., and J. Schoenwaelder, Ed., “Textual Conventions for SMIv2,” April 1999.) and STD 58, [RFC2580] (McCloghrie, K., Perkins, D., and J. Schoenwaelder, “Conformance Statements for SMIv2,” April 1999.).



 TOC 

3.  Introduction

The ForCES MIB module is a read-only MIB module that captures information related to the ForCES protocol ([RFC3654] (Khosravi, H. and T. Anderson, “Requirements for Separation of IP Control and Forwarding,” November 2003.), [RFC3746] (Yang, L., Dantu, R., Anderson, T., and R. Gopal, “Forwarding and Control Element Separation (ForCES) Framework,” April 2004.), [forces‑applicability‑draft] (Crouch, A., Khosravi, H., Handley, M., and A. Doria, “ForCES Applicability Statement,” July 2006.) and [forces‑protocol‑draft] (Doria, A., Haas, R., Hadi Salim, J., Khosravi, H., and W. Wang, “ForCES Protocol Specification,” August 2008.)).

The ForCES MIB module does not include information that is specified in other MIB modules, such as packet counters for interfaces, etc.

More specifically, the information in the ForCES MIB module relative to associations (between Control Elements and Forwarding Elements) that are in the UP state includes:



 TOC 

4.  ForCES MIB Overview

The MIB module contains the latest ForCES protocol version supported by the Control Element (CE) (forcesLatestProtocolVersionSupported). Note that the CE must also allow interaction with Forwarding Elements (FEs) supporting earlier versions.

For each association identified by the pair CE ID and FE ID, the following associated information is provided by the MIB module as an entry (forcesAssociationEntry) in the association table (forcesAssociationTable):

Finally, the MIB module defines the following notifications:



 TOC 

5.  ForCES MIB Definition

      FORCES-MIB DEFINITIONS ::= BEGIN

      IMPORTS
          MODULE-IDENTITY, OBJECT-TYPE, NOTIFICATION-TYPE,
            mib-2, Integer32
            FROM SNMPv2-SMI

          TEXTUAL-CONVENTION, TimeStamp
            FROM SNMPv2-TC

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

          ZeroBasedCounter32
            FROM RMON2-MIB;

      forcesMib MODULE-IDENTITY
          LAST-UPDATED "200809091200Z"  -- Sep 9, 2008
          ORGANIZATION "IETF Forwarding and Control Element
                        Separation (ForCES) Working Group"
          CONTACT-INFO
              "WG Charter:
                http://www.ietf.org/html.charters/forces-charter.html

                Mailing lists:
                    General Discussion: forces@peach.ease.lsoft.com
                    To Subscribe: listserv@peach.ease.lsoft.com
                    In Body: subscribe forces

                Chairs: Patrick Droz
                        Email: dro@zurich.ibm.com
                        Jamal Hadi Salim
                        Email: hadi@znyx.com

                Editor: Robert Haas
                        IBM
                        Email:  rha@zurich.ibm.com"
          DESCRIPTION
              "This MIB module contains managed object definitions
               for the ForCES Protocol.
               Copyright (C) The Internet Trust (2008).  This
               version of this MIB module is part of RFC yyyy; see
               the RFC itself for full legal notices."
 -- RFC Ed.: replace yyyy with actual RFC number & remove this note
          REVISION "200809091200Z"  -- Sep 9, 2008
          DESCRIPTION
            "Initial version, published as RFC yyyy."
 -- RFC Ed.: replace yyyy with actual RFC number & remove this note
          ::= { mib-2 XXX }
 -- RFC Ed.: replace XXX with IANA-assigned number & remove this note

 --****************************************************************

      forcesMibNotifications OBJECT IDENTIFIER ::= { forcesMib 0 }
      forcesMibObjects       OBJECT IDENTIFIER ::= { forcesMib 1 }
      forcesMibConformance   OBJECT IDENTIFIER ::= { forcesMib 2 }

      ForcesID ::= TEXTUAL-CONVENTION
          STATUS      current
          DESCRIPTION
              "The ForCES identifier is a four octet quantity."
          SYNTAX      OCTET STRING (SIZE (4))

      ForcesProtocolVersion ::= TEXTUAL-CONVENTION
          STATUS      current
          DESCRIPTION
              "ForCES protocol version number.
               The version numbers used are defined in the
               specifications of the respective protocol:
               1 - ForCESv1 [RFCzzzz]."
 -- RFC Ed.: replace zzzz with actual RFC number of ForCES protocol
 -- & remove this note

          SYNTAX      Integer32 (1..255)
          DISPLAY-HINT "d"

-- Notifications

      forcesAssociationEntryUp NOTIFICATION-TYPE
         OBJECTS     {
            forcesAssociationRunningProtocolVersion
         }
         STATUS      current
         DESCRIPTION
              "This notification is generated as soon
               as an association enters the UP state.
               Note that these notifications are not
               throttled as the CE itself should
               throttle the setup of associations."
         ::= { forcesMibNotifications 1 }


       forcesAssociationEntryDown NOTIFICATION-TYPE
         OBJECTS     {
            forcesAssociationRunningProtocolVersion
         }
         STATUS      current
         DESCRIPTION
              "This notification is generated as soon
               as an association leaves the UP state.
               Note that these notifications are not
               throttled as the CE itself should
               throttle the setup of associations."
         ::= { forcesMibNotifications 2 }

      forcesAssociationEntryUpStats NOTIFICATION-TYPE
         OBJECTS     {
            forcesAssociationRunningProtocolVersion,
            forcesAssociationTimeUp
         }
         STATUS      current
         DESCRIPTION
              "This notification is generated as soon
               as an association enters the UP state.
               Note that these notifications are not
               throttled as the CE itself should
               throttle the setup of associations."
         ::= { forcesMibNotifications 3 }

       forcesAssociationEntryDownStats NOTIFICATION-TYPE
         OBJECTS     {
            forcesAssociationRunningProtocolVersion,
            forcesAssociationTimeUp,
            forcesAssociationTimeDown,
            forcesAssociationHBMsgSent,
            forcesAssociationHBMsgReceived,
            forcesAssociationOperMsgSent,
            forcesAssociationOperMsgReceived,
            forcesAssociationCounterDiscontinuityTime
            }
         STATUS      current
         DESCRIPTION
              "This notification is generated as soon
               as an association leaves the UP state.
               Note that these notifications are not
               throttled as the CE itself should
               throttle the setup of associations."
         ::= { forcesMibNotifications 4 }

-- Objects

      forcesLatestProtocolVersionSupported OBJECT-TYPE
          SYNTAX      ForcesProtocolVersion
          MAX-ACCESS  read-only
          STATUS      current
          DESCRIPTION
                 "The ForCES protocol version supported by the CE.
                  The current protocol version is 1.
                  Note that the CE must also allow interaction
                  with FEs supporting earlier versions."
          ::= { forcesMibObjects 1 }

      forcesAssociations OBJECT IDENTIFIER ::= { forcesMibObjects 2 }

      forcesAssociationTable OBJECT-TYPE
          SYNTAX SEQUENCE OF ForcesAssociationEntry
          MAX-ACCESS not-accessible
          STATUS current
          DESCRIPTION
                 "The (conceptual) table of associations."
          ::= { forcesAssociations 1 }

      forcesAssociationEntry OBJECT-TYPE
          SYNTAX ForcesAssociationEntry
          MAX-ACCESS not-accessible
          STATUS current
          DESCRIPTION
                 "A (conceptual) entry for one association."
          INDEX { forcesAssociationCEID, forcesAssociationFEID }
          ::= { forcesAssociationTable 1 }

      ForcesAssociationEntry ::= SEQUENCE {
              forcesAssociationCEID             ForcesID,
              forcesAssociationFEID             ForcesID,

              forcesAssociationRunningProtocolVersion
                                          ForcesProtocolVersion,

              forcesAssociationTimeUp           TimeStamp,
              forcesAssociationTimeDown         TimeStamp,

              forcesAssociationHBMsgSent        ZeroBasedCounter32,
              forcesAssociationHBMsgReceived    ZeroBasedCounter32,
              forcesAssociationOperMsgSent      ZeroBasedCounter32,
              forcesAssociationOperMsgReceived  ZeroBasedCounter32,
              forcesAssociationCounterDiscontinuityTime  TimeStamp
     }

      forcesAssociationCEID OBJECT-TYPE
          SYNTAX ForcesID
          MAX-ACCESS not-accessible
          STATUS current
          DESCRIPTION
                 "The ForCES ID of the CE."
          ::= { forcesAssociationEntry 1 }

      forcesAssociationFEID OBJECT-TYPE
          SYNTAX ForcesID
          MAX-ACCESS not-accessible
          STATUS current
          DESCRIPTION
                 "The ForCES ID of the FE."
          ::= { forcesAssociationEntry 2 }

      forcesAssociationRunningProtocolVersion OBJECT-TYPE
          SYNTAX      ForcesProtocolVersion
          MAX-ACCESS  read-only
          STATUS      current
          DESCRIPTION
          "The current ForCES protocol version used in this
           association.
           The current protocol version is 1."
          ::= { forcesAssociationEntry 3 }

      forcesAssociationTimeUp OBJECT-TYPE
          SYNTAX TimeStamp
          MAX-ACCESS read-only
          STATUS current
          DESCRIPTION
                 "The value of sysUpTime at the time this
                  association entered the UP state.
                  If this association started prior to the last
                  initialization of the network subsystem, then
                  this object contains a zero value.
                  This object allows to uniquely identify
                  associations with the same CE and FE IDs."
          ::= { forcesAssociationEntry 4 }

      forcesAssociationTimeDown OBJECT-TYPE
          SYNTAX TimeStamp
          MAX-ACCESS accessible-for-notify
          STATUS current
          DESCRIPTION
                 "The value of sysUpTime at the time this
                  association left the UP state."
          ::= { forcesAssociationEntry 5 }

      forcesAssociationHBMsgSent OBJECT-TYPE
          SYNTAX ZeroBasedCounter32
          MAX-ACCESS read-only
          STATUS current
          DESCRIPTION
                 "A counter of how many heartbeat messages have
                  have been sent by the CE on this association
                  since the association entered the UP state.
                  Discontinuities in the value of this counter
                  can occur at re-initialization of the management
                  system, and at other times as indicated by the
                  value of forcesAssociationCounterDiscontinuityTime."
          ::= { forcesAssociationEntry 6 }

      forcesAssociationHBMsgReceived OBJECT-TYPE
          SYNTAX ZeroBasedCounter32
          MAX-ACCESS read-only
          STATUS current
          DESCRIPTION
                 "A counter of how many heartbeat messages
                  have been received by the CE on this association
                  since the association entered the UP state.
                  Discontinuities in the value of this counter
                  can occur at re-initialization of the management
                  system, and at other times as indicated by the
                  value of forcesAssociationCounterDiscontinuityTime."
          ::= { forcesAssociationEntry 7 }

      forcesAssociationOperMsgSent OBJECT-TYPE
          SYNTAX ZeroBasedCounter32
          MAX-ACCESS read-only
          STATUS current
          DESCRIPTION
                 "A counter of how many messages other than
                  heartbeat (i.e., config and query)
                  have been sent by the CE on this association
                  since the association entered the UP state.
                  Discontinuities in the value of this counter
                  can occur at re-initialization of the management
                  system, and at other times as indicated by the
                  value of forcesAssociationCounterDiscontinuityTime."
          ::= { forcesAssociationEntry 8 }

      forcesAssociationOperMsgReceived OBJECT-TYPE
          SYNTAX ZeroBasedCounter32
          MAX-ACCESS read-only
          STATUS current
          DESCRIPTION
                 "A counter of how many messages other than
                  heartbeat (i.e., config response, query response,
                  event notification, and packet redirect)
                  have been received by the CE on this association
                  since the association entered the UP state.
                  Discontinuities in the value of this counter
                  can occur at re-initialization of the management
                  system, and at other times as indicated by the
                  value of forcesAssociationCounterDiscontinuityTime."
          ::= { forcesAssociationEntry 9 }

      forcesAssociationCounterDiscontinuityTime 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 association's
                  counters suffered a discontinuity. The relevant
                  counters are the specific instances associated with
                  this association of any ZeroBasedCounter32 object
                  contained in the forcesAssociationTable. If no
                  such discontinuities have occured since the last
                  reinitialization of the local management subsystem,
                  then this object contains a zero value."
          ::= { forcesAssociationEntry 10 }



-- Conformance

      forcesMibCompliances   OBJECT IDENTIFIER
                               ::= { forcesMibConformance 1 }
      forcesMibGroups        OBJECT IDENTIFIER
                               ::= { forcesMibConformance 2 }

-- Compliance statements

      forcesMibCompliance  MODULE-COMPLIANCE
          STATUS current
          DESCRIPTION
            "The compliance statement for routers running ForCES and
            implementing the ForCES MIB."
          MODULE  -- this module
            MANDATORY-GROUPS { forcesMibGroup, forcesNotificationGroup }

            GROUP forcesNotificationStatsGroup
            DESCRIPTION
              "Implementation of this group is recommended."

            GROUP forcesStatsGroup
            DESCRIPTION
              "Implementation of this group is recommended."

          ::= { forcesMibCompliances 1 }


-- Units of conformance

      forcesNotificationGroup NOTIFICATION-GROUP
          NOTIFICATIONS { forcesAssociationEntryUp,
                          forcesAssociationEntryDown
                        }
          STATUS  current
          DESCRIPTION

            "A collection of notifications for signaling important
             ForCES events."
          ::= { forcesMibGroups 1 }

      forcesMibGroup OBJECT-GROUP
          OBJECTS { forcesLatestProtocolVersionSupported,
                    forcesAssociationRunningProtocolVersion
                  }
          STATUS  current
          DESCRIPTION
            "A collection of objects to support management of ForCES
             routers."
        ::= { forcesMibGroups 2 }


      forcesNotificationStatsGroup NOTIFICATION-GROUP
          NOTIFICATIONS { forcesAssociationEntryUpStats,
                          forcesAssociationEntryDownStats
                        }
          STATUS  current
          DESCRIPTION

            "A collection of optional notifications for signaling
             important ForCES events including statistics."
          ::= { forcesMibGroups 3 }

      forcesStatsGroup OBJECT-GROUP
          OBJECTS { forcesAssociationTimeUp,
                    forcesAssociationTimeDown,
                    forcesAssociationHBMsgSent,
                    forcesAssociationHBMsgReceived,
                    forcesAssociationOperMsgSent,
                    forcesAssociationOperMsgReceived,
                    forcesAssociationCounterDiscontinuityTime
                  }
          STATUS  current
          DESCRIPTION
            "A collection of optional objects to provide extra
             information about the associations. There is no protocol
             reason to keep such information, but these objects can
             be very useful in debugging connectivity problems."
        ::= { forcesMibGroups 4}

      END


 TOC 

6.  Associations kept in the MIB

Associations enter the UP state as soon as the CE has sent to the FE an Association Setup Response message containing a successful Association Setup Result. Only associations that are UP are reflected in this MIB module.

Associations are removed from the MIB module as soon as they leave the UP state, i.e., if the CE has not received any message (Heartbeat or other protocol message) from the FE within a given time period or if an Association Teardown message has been sent by the CE.

Statistics counters are initialized to zero when the association is created. If the same association goes down and comes back up, the counters will reset and the discontinuity can be discovered by checking the discontinuity timestamp. In addition, the time-up timestamp in the association allows to distinguish new associations from past ones with the same index. Note that the optional down notification contains the statistics with the final values of the statistics counters.



 TOC 

7.  Support for multiple CEs and FEs

An NE consists of one or more FEs and one or more CEs. Where there is a single CE, that CE will have knowledge of all the associations in the NE and so can provide the information necessary to support the managed objects defined in this MIB module. Where there is more than one CE, information about the associations may be distributed among the CEs. Whether each CE implements the managed objects for the associations of which it is aware or whether the CEs cooperate to present the appearance of a single set of managed objects for all the associations in the NE is outside the scope of this document.



 TOC 

8.  Security Considerations

There are no management objects defined in this MIB module that have a MAX-ACCESS clause of read-write and/or read-create. So, if this MIB module is implemented correctly, then there is no risk that an intruder can alter or create any management objects of this MIB module via direct SNMP SET operations.

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] (Case, J., Mundy, R., Partain, D., and B. Stewart, “Introduction and Applicability Statements for Internet-Standard Management Framework,” December 2002.), 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.



 TOC 

9.  IANA Considerations

The MIB module in this document uses the following IANA-assigned OBJECT IDENTIFIER values recorded in the SMI Numbers registry:

      Descriptor        OBJECT IDENTIFIER value
      ----------        -----------------------

      forcesMIB         { mib-2 XXX }

Editor's Note (to be removed prior to publication): the IANA is requested to assign a value for "XXX" under the 'mib-2' subtree and to record the assignment in the SMI Numbers registry. When the assignment has been made, the RFC Editor is asked to replace "XXX" (here and in the MIB module) with the assigned value and to remove this note.



 TOC 

10.  Changes from Previous Draft Revisions

Editor's Note (to be removed prior to publication): Prior to RFC publication of this document, the RFC Editor is asked to remove this entire section titled "Changes from Previous Draft Versions".

Changes from draft-ietf-forces-mib-08:

Changes from draft-ietf-forces-mib-07: They are editorial changes made as suggested by the General Area Review Team.

Changes from draft-ietf-forces-mib-06:

Changes from draft-ietf-forces-mib-05: Copyright statement in the MIB description corrected to IETF Trust.

Changes from draft-ietf-forces-mib-04. They are changes suggested by the MIB doctor review, according to the MIB Review Checklist in Appendix A of RFC 4181:

Changes from draft-ietf-forces-mib-03. They are small fixes to the text and the MIB module:

Changes from draft-ietf-forces-mib-02. They are refinements of the MIB module:

Changes from draft-ietf-forces-mib-01. The changes are in response to the Working Group Last Call:



 TOC 

11.  References



 TOC 

11.1. Normative References

[RFC2119] Bradner, S., “Key words for use in RFCs to Indicate Requirement Levels,” BCP 14, RFC 2119, March 1997 (TXT, HTML, XML).
[RFC2578] McCloghrie, K., Ed., Perkins, D., Ed., and J. Schoenwaelder, Ed., “Structure of Management Information Version 2 (SMIv2),” STD 58, RFC 2578, April 1999 (TXT).
[RFC2579] McCloghrie, K., Ed., Perkins, D., Ed., and J. Schoenwaelder, Ed., “Textual Conventions for SMIv2,” STD 58, RFC 2579, April 1999 (TXT).
[RFC2580] McCloghrie, K., Perkins, D., and J. Schoenwaelder, “Conformance Statements for SMIv2,” STD 58, RFC 2580, April 1999 (TXT).
[forces-protocol-draft] Doria, A., Haas, R., Hadi Salim, J., Khosravi, H., and W. Wang, “ForCES Protocol Specification,” ID Document: draft-ietf-forces-protocol-15.txt, August 2008.


 TOC 

11.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 (TXT).
[RFC3654] Khosravi, H. and T. Anderson, “Requirements for Separation of IP Control and Forwarding,” RFC 3654, November 2003 (TXT).
[RFC3746] Yang, L., Dantu, R., Anderson, T., and R. Gopal, “Forwarding and Control Element Separation (ForCES) Framework,” RFC 3746, April 2004 (TXT).
[forces-applicability-draft] Crouch, A., Khosravi, H., Handley, M., and A. Doria, “ForCES Applicability Statement,” ID Document: draft-ietf-forces-applicability-05.txt, July 2006.


 TOC 

Appendix A.  Acknowledgments

The author gratefully acknowledges the contributions of: Jinrong Fenggen, John Flick, Xiaoyi Guo, Joel Halpern, Tom Petch, and Jamal Hadi Salim.



 TOC 

Author's Address

  Robert Haas
  IBM
  Saeumerstrasse 4
  Rueschlikon 8803
  CH
Email:  rha@zurich.ibm.com
URI:  http://www.zurich.ibm.com/~rha


 TOC 

Full Copyright Statement

Intellectual Property