
Network Working Group                            Thomas D. Nadeau, Ed.
Internet Draft                                         CA Technologies
Intended Status: Standards Track
Expires: Mar 2012                         Agrahara S Kiran Koushik, Ed.
                                                    Cisco Systems, Inc.

                                                        Riza Cetin, Ed.
                                                                Alcatel


                                                            Sep 2011


    Multiprotocol Label Switching (MPLS) Traffic Engineering Management
                     Information Base for Fast Reroute

                  draft-ietf-mpls-fastreroute-mib-21.txt

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.

Copyright Notice

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

Nadeau, et al.                Expires Mar 2012               [Page 1]

                  MPLS Fast-reroute MIB                  Sep 1, 2011




   This document may contain material from IETF Documents or IETF
   Contributions published or made publicly available before November
   10, 2008.  The person(s) controlling the copyright in some of this
   material may not have granted the IETF Trust the right to allow
   modifications of such material outside the IETF Standards Process.
   Without obtaining an adequate license from the person(s) controlling
   the copyright in such materials, this document may not be modified
   outside the IETF Standards Process, and derivative works of it may
   not be created outside the IETF Standards Process, except to format
   it for publication as an RFC or to translate it into languages other
   than English.

Abstract

    This memo defines a portion of the Management Information Base
    for use with network management protocols in the Internet community.
    In particular, it describes managed objects used to support two
    fast reroute (FRR) methods for Multiprotocol Label Switching
    (MPLS) based traffic engineering (TE). The two methods are 
    one-to-one backup method and facility backup method.


Table of Contents

1.     Introduction...............................................2
1.1.   Conventions Used in This Document..........................2
2.     Terminology................................................2
3.     The Internet-Standard Management Framework.................3
4.     Overview of the MIB Modules................................3
4.1.   MPLS-FRR-GENERAL-STD-MIB...................................3
4.1.1  mplsFrrConstraintsTable....................................4
4.1.2  mplsFrrTunnelARHopTable....................................5
4.1.3  Example of relationship between various tables of
       MPLS-FRR-GENERAL-STD-MIB...................................5
4.2.   MPLS-FRR-ONE2ONE-STD-MIB...................................6
4.2.1  mplsFrrOne2OnePlrTable.....................................6
4.2.2  mplsFrrOne2OneDetourTable..................................6
4.2.3  Example of relationship between mplsFrrOne2OnePlrTable, 
       mplsFrrOne2OneDetourTable and mplsTunnelTable..............7
4.3    MPLS-FRR-FACILITY-STD-MIB..................................9
4.3.1  mplsFrrFacilityDBTable....................................10
4.3.2  Example of relationship between various tables of
       MPLS-FRR-FACILITY-STD-MIB.................................10
5.     Handling IPv6 Tunnels.....................................11
6.     MIB Module Definitions....................................12
6.1    MPLS-FRR-GENERAL-STD-MIB Module Definitions...............12



Nadeau, et al.                Expires Mar 2012               [Page 2]

                  MPLS Fast-reroute MIB                  Sep 1, 2011



6.2    MPLS-FRR-ONE2ONE-STD-MIB Module Definitions...............24
6.3    MPLS-FRR-FACILITY-STD-MIB Module Definitions..............34
7.     Security Considerations...................................45
8.     IANA Considerations.......................................46
8.1    IANA Considerations for MPLS-FRR-GENERAL-STD-MIB..........46
8.2    IANA Considerations for MPLS-FRR-ONE2ONE-STD-MIB..........46
8.3    IANA Considerations for MPLS-FRR-FACILITY-STD-MIB.........46
9.     Acknowledgments...........................................47
10.    References................................................47
10.1   Normative References......................................47
10.2   Informative References....................................48
11.    Editors' Addresses........................................48
12.    Contributors' Addresses...................................48


1. Introduction

   This memo defines a portion of the Management Information Base (MIB)
   containing objects used to manage Multiprotocol Label
   Switching (MPLS)-based fast rerouting features on MPLS Label 
   Switching Routers as defined in [RFC4090]. This MIB module should 
   be used in conjunction with [RFC3811], [RFC3812] and [RFC3813].

   Comments should be made directly to the MPLS mailing list at
   mpls@ietf.org.

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


2.  Terminology

   This document uses terminology from the document describing the
   Multiprotocol Label Switching Architecture [RFC3031] and from 
   the document describing Fast Reroute Extensions to RSVP-TE for
   LSP Tunnels [RFC4090].

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

   Managed objects are accessed via a virtual information store, termed
   the Management Information Base or MIB.  MIB module objects are 
   generally accessed through the Simple Network Management Protocol 



Nadeau, et al.                Expires Mar 2012               [Page 3]

                  MPLS Fast-reroute MIB                  Sep 1, 2011



   (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. Overview of the MIB Modules

    The specification [RFC4090] stipulates two different approaches 
    to implementing MPLS TE fast reroute: one-to-one and facility
    backup.  

    We define three MIB modules to represent the respective 
    components: general, one-to-one and facility backup.

    They are:
    
    - MPLS-FRR-GENERAL-STD-MIB: Contains objects that apply to any 
      MPLS LSR(Label Switching Router) implementing MPLS TE fast
      reroute functionality.
    - MPLS-FRR-ONE2ONE-STD-MIB: Contains objects that apply to 
      one-to-one backup method.
    - MPLS-FRR-FACILITY-STD-MIB: Contains objects that apply to 
      facility backup method.

    Although [RFC4090] specifies that a node is able to support both 
    fast reroute methods simultaneously, common practice has shown
    that operators choose to configure either one-to-one backup method
    or facility backup at any given time. So by dividing the MIB 
    modules into three, we allow the developers to choose the MIB 
    modules they want to implement depending on the method supported
    on that node.


4.1. MPLS-FRR-GENERAL-STD-MIB

     This MIB module MUST be implemented if either of the fast reroute
     methods is implemented.
 
4.1.1 mplsFrrConstraintsTable

      This table contains objects that apply to all LSRs
      implementing MPLS TE fast reroute functions. In particular,
      this table defines fast reroute constraints such as
      bandwidth for a tunnel instance to be protected by using 
      backup LSPs (detour LSPs or bypass tunnels).
  
      This table MUST be implemented at the ingress node of the 
      protected TE tunnel instance to configure backup LSP setup 



Nadeau, et al.                Expires Mar 2012               [Page 4]

                  MPLS Fast-reroute MIB                  Sep 1, 2011



      constraints.

4.1.2 mplsFrrTunnelARHopTable

      This table extends mplsTunnelARHopTable (defined in the 
      MPLS-TE-STD-MIB [RFC3812]) with fast-reroute objects which 
      specify the local protection type or types of availability,
      as well as what type or types are actally in-use for each 
      tunnel hop traversed by a protected TE tunnel. 
 

4.1.3 Example of relationship between various tables of 
      MPLS-FRR-GENERAL-STD-MIB

              (R1)----(R2)----(R3)----(R4)---(R5)
                  \       \       \    /
                  (R6)---(R7)------(R8)

              Protected LSP:  [R1->R2->R3->R4->R5]

              R1's Backup:    [R1->R6->R7->R8->R3]

      In the above topology the various tables will be populated
      as below on R1.

   mplsFrrGeneralConstraintsTable
   {
    mplsFrrGeneralConstraintsIfIndexOrZero  = 10,-- Interface to protect
    mplsFrrGeneralConstraintsTunnelIndex    = 1, -- Protecting tunnel
    mplsFrrGeneralConstraintsTunnelInstance = 0, -- Use any instance
    mplsFrrGeneralConstraintsProtectionType = 1, -- linkProtection
    mplsFrrGeneralConstraintsSetupPrio      = 0,
    mplsFrrGeneralConstraintsHoldingPrio     = 0,
    mplsFrrGeneralConstraintsInclAnyAffinity = 0,
    mplsFrrGeneralConstraintsInclAllAffinity = 0,
    mplsFrrGeneralConstraintsExclAnyAffinity = 0,
    mplsFrrGeneralConstraintsHopLimit        = 0,
    mplsFrrGeneralConstraintsBandwidth       = 0, -- best effort
    mplsFrrGeneralConstraintsStorageType     = 2, -- volatile
    mplsFrrGeneralConstraintsRowStatus       = 1, -- active
    };

   mplsFrrGeneralTunnelARHopEntry
   {
    mplsFrrGeneralTunnelARHopSessionAttributeFlags = 5,
                             -- SEStyleDesired | LocalProtectionDesired




Nadeau, et al.                Expires Mar 2012               [Page 5]

                  MPLS Fast-reroute MIB                  Sep 1, 2011



    mplsFrrGeneralTunnelARHopRROSubObjectFlags = 2 
                             -- LocalProtectionInUse   
    };


4.2. MPLS-FRR-ONE2ONE-STD-MIB

     This MIB module MUST be implemented if one-to-one backup
     fastreroute method is implemented.
  
4.2.1 mplsFrrOne2OnePlrTable

      The mplsFrrOne2OnePlrTable contains information about 
      Points of Local Repair (PLR) that initiated detour LSPs to 
      protect tunnel instances. This table MUST be supported for LSRs 
      implementing the one-to-one backup method. 
      In these cases, the detour LSPs are reflected in the 
      mplsFrrOne2OneDetourTable.

4.2.2 mplsFrrOne2OneDetourTable

      The mplsFrrOne2OneDetourTable shows the detour LSPs in each node 
      (ingress, transit and egress nodes). An entry of this table 
      represents a detour LSP.

      Each detour is identified by the following indexes:

      - mplsTunnelIndex [RFC3812]:
        set to the tunnel-id of an LSP protected by a detour.

      - mplsTunnelInstance [RFC3812]: consists of two parts
 
        1) the higher 16 bits:  - protected TE tunnel instance
                                - uniquely identifies a protected 
                                  LSP within a tunnel.
        2) the lower 16 bits:  - detour instance
                               - uniquely identifies a detour LSP 
                                 of a protected TE tunnel instance.
                                 Multiple detours of the same 
                                 protected LSP may go through the 
                                 same node. In this case, the
                                 higher 16 bits of the tunnel 
                                 instance object is used as a 
                                 detour instance.

      - ingress node's LSR ID (mplsFrrOne2OnePlrTunnelIngressLSRId):
        set to the ingress node of an LSP protected by a detour.

      - egress node's LSR ID (mplsFrrOne2OnePlrTunnelEgressLSRId):



Nadeau, et al.                Expires Mar 2012               [Page 6]

                  MPLS Fast-reroute MIB                  Sep 1, 2011



        set to the egress node of an LSP protected by a detour.

      A detour LSP is also considered as an instance of a protected 
      TE tunnel. Therefore, each detour LSP SHOULD have an entry in 
      the mplsTunnelTable (defined in the MPLS-TE-STD-MIB[RFC3812]).

      The mplsTunnelTable entries are indexed using mplsTunnelIndex, 
      mplsTunnelInstance, mplsTunnelIngressLSRId, and
      mplsTunnelEgressLSRId.
      Entries where the higher 16 bits of mplsTunnelInstance are
      set to zero represent detour TE tunnel instances. All other
      values of the higher 16 bits represent protected tunnel 
      instances.

      This table MUST be supported if one-to-one backup method is 
      used.

4.2.3 Example of relationship between mplsFrrOne2OnePlrTable, 
      mplsFrrOne2OneDetourTable and mplsTunnelTable

      This section contains an example depicting the inter
      relationship between the mplsFrrOne2OnePlrTable, 
      mplsFrrOne2OneDetourTable and mplsTunnelTable tables.

              (R1)----(R2)----(R3)----(R4)---(R5)
                  \       \       \    /
                  (R6)---(R7)------(R8)

              Protected LSP:  [R1->R2->R3->R4->R5]

              R1's Backup:    [R1->R6->R7->R8->R3]

      In the above topology the various tables will be populated
      as below.

      In mplsFrrOne2OnePlrTable:

      {
        mplsFrrOne2OnePlrTunnelIndex           = 1, 
        mplsFrrOne2OnePlrTunnelDetourInstance  = 6553601, 
        --
        -- (100  << 16 | 1) = 6553601
        -- 100 is the tunnel instance of the protected tunnel.
        --
        mplsFrrOne2OnePlrTunnelIngressLSRId    = 192.0.2.1, --R1
        mplsFrrOne2OnePlrTunnelEgressLSRId     = 192.0.2.5, --R5
        mplsFrrOne2OnePlrId                    = 192.0.2.1, -- 
                                                        -- R1 is PLR
        mplsFrrOne2OnePlrSenderAddrType        = ipv4(1),



Nadeau, et al.                Expires Mar 2012               [Page 7]

                  MPLS Fast-reroute MIB                  Sep 1, 2011



        mplsFrrOne2OnePlrSenderAddr            = "192.0.2.1", -- R1
        mplsFrrOne2OnePlrAvoidNodeAddrType     = ipv4(1),
        mplsFrrOne2OnePlrAvoidNodeAddr         = "192.0.2.2",
                                                        -- R1-R2(Avoid)
      }

      In mplsFrrOne2OneDetourTable:
      {
        mplsFrrOne2OnePlrTunnelIndex           = 1,
        mplsFrrOne2OnePlrTunnelDetourInstance  = 6553601, 
        --
        --    (100 << 16 | 1) == 6553601
        --
        --   1 is mplsTunnelInstance for the detour lsp
        --   from mplsTunnelTable. Marked by AAA below.
        --   Shift 16 to put this into the high order bits
        --
        --   100  is mplsTunnelInstance for the protected tunnel
        --   from the mplsTunnelTable. Marked by BBB below.
        --   Need to OR the index value into low order bits)

        -- To get all detour lsps of a protected tunnel(of instance 100)
        -- we could do a snmpwalk of the mplsFrrOne2OneDetourEntry
        -- where mplsFrrOne2OnePlrTunnelIndex == 1
        -- mplsFrrOne2OnePlrTunnelDetourInstance == 6553600

        -- The first value would be: 
        --                 mplsFrrOne2OneDetourActive.1.6553601

        mplsFrrOne2OnePlrTunnelIngressLSRId    = 192.0.2.1, --R1
        mplsFrrOne2OnePlrTunnelEgressLSRId     = 192.0.2.3, --R3
        mplsFrrOne2OneDetourActive             = false(2),
        mplsFrrOne2OneDetourMergedStatus       = notMerged(1),  
        mplsFrrOne2OneDetourMergedDetourInst   = 0,
      }

      In mplsTunnelTable(protected tunnel entry):

      {
       mplsTunnelIndex              = 1,
       mplsTunnelInstance           = 100,-- Indicating protected tunnel 
                                          -- AAA

       mplsTunnelIngressLSRId       = 192.0.2.1,
       mplsTunnelEgressLSRId        = 192.0.2.5,
       mplsTunnelName               = "R1-R5",
       mplsTunnelDescr              = "R1-R5",
       mplsTunnelIsIf               = true (1),
       mplsTunnelXCPointer          = 0.0,



Nadeau, et al.                Expires Mar 2012               [Page 8]

                  MPLS Fast-reroute MIB                  Sep 1, 2011



       mplsTunnelSignallingProto    = none (1),
       mplsTunnelSetupPrio          = 0,
       mplsTunnelHoldingPrio        = 0,
       mplsTunnelSessionAttributes  = 0,
       mplsTunnelLocalProtectInUse  = true(1),
       mplsTunnelResourcePointer    = mplsTunnelResourceMaxRate.5,
       mplsTunnelInstancePriority   = 1,
       mplsTunnelHopTableIndex      = 1,
       mplsTunnelIncludeAnyAffinity = 0,
       mplsTunnelIncludeAllAffinity = 0,
       mplsTunnelExcludeAnyAffinity = 0,
       mplsTunnelPathInUse          = 1,
       mplsTunnelRole               = head (1),
      }               

      In mplsTunnelTable(detour lsp entry):

      {
       mplsTunnelIndex              = 1,
       mplsTunnelInstance           = 1,
                               -- Indicating detour lsp(higher 16 bits)
                               -- BBB

       mplsTunnelIngressLSRId       = 192.0.2.1,
       mplsTunnelEgressLSRId        = 192.0.2.3,
       mplsTunnelName               = "R1-R3",
       mplsTunnelDescr              = "R1-R3",
       mplsTunnelIsIf               = true (1),
       mplsTunnelXCPointer          = 0.0,
       mplsTunnelSignallingProto    = none (1),
       mplsTunnelSetupPrio          = 0,
       mplsTunnelHoldingPrio        = 0,
       mplsTunnelSessionAttributes  = 0,
       mplsTunnelLocalProtectInUse  = false (0),
       mplsTunnelResourcePointer    = mplsTunnelResourceMaxRate.6,
       mplsTunnelInstancePriority   = 1,
       mplsTunnelHopTableIndex      = 1,
       mplsTunnelIncludeAnyAffinity = 0,
       mplsTunnelIncludeAllAffinity = 0,
       mplsTunnelExcludeAnyAffinity = 0,
       mplsTunnelPathInUse          = 1,
       mplsTunnelRole               = head (1),
      }               

4.3 MPLS-FRR-FACILITY-STD-MIB

    This MIB module MUST be implemented if facility backup
    fastreroute method is implemented.




Nadeau, et al.                Expires Mar 2012               [Page 9]

                  MPLS Fast-reroute MIB                  Sep 1, 2011




4.3.1 mplsFrrFacilityDBTable

      The mplsFrrFacilityDBTable provides information about the fast
      reroute database for facility-based fast reroute.  
      An entry is created in this table for each tunnel being
      protected by a backup tunnel. Backup tunnels are defined 
      to protect the tunnels traversing an interface. 
      The protecting tunnel will exist on the PLR as per [RFC4090].  
      Protected tunnels are the LSPs that traverse the protected link.
  
4.3.2 Example of relationship between various tables of 
      MPLS-FRR-FACILITY-STD-MIB


               [R1]---[R2]----[R3]-----[R4]---[R5]
                          \           /    
                           [R6]===[R7]     

                Protected LSP 1    :        [R1->R2->R3->R4->R5]
                Protecting Tunnel 999 :     [R2->R6->R7->R4]

                    Facility Backup Technique
                    -------------------------
    In the above topology, the following tables are populated at R2:

    mplsFrrFacilityDBEntry
    {
       mplsFrrFacilityProtectedIfIndex          = 10,
       mplsFrrFacilityProtectingTunnelIndex     = 999,
       mplsFrrFacilityBackupTunnelIndex         = 1,
       mplsFrrFacilityBackupTunnelInstance      = 0,
       mplsFrrFacilityBackupTunnelIngressLSRId  = 
       mplsFrrFacilityBackupTunnelEgressLSRId   = 
       mplsFrrFacilityDBNumProtectingTunnelOnIf = 1,
       mplsFrrFacilityDBNumProtectedLspOnIf     = 1,
       mplsFrrFacilityDBNumProtectedTunnels     = 1,
       mplsFrrFacilityDBProtectingTunnelStatus  = 1, -- active
       mplsFrrFacilityDBProtectingTunnelResvBw  = 0,
    };

      In mplsTunnelTable(protecting tunnel entry):

      {
       mplsTunnelIndex              = 999, -- protecting tunnel index
       mplsTunnelInstance           = 0,   -- head




Nadeau, et al.               Expires Mar 2012               [Page 10]

                  MPLS Fast-reroute MIB                  Sep 1, 2011



       mplsTunnelIngressLSRId       = 192.0.2.2,
       mplsTunnelEgressLSRId        = 192.0.2.4,
       mplsTunnelName               = "R2-R4",
       mplsTunnelDescr              = "R2-R4",
       mplsTunnelIsIf               = true (1),
       mplsTunnelXCPointer          = 0.0,
       mplsTunnelSignallingProto    = none (1),
       mplsTunnelSetupPrio          = 0,
       mplsTunnelHoldingPrio        = 0,
       mplsTunnelSessionAttributes  = 0,
       mplsTunnelLocalProtectInUse  = false(1),
       mplsTunnelResourcePointer    = mplsTunnelResourceMaxRate.5,
       mplsTunnelInstancePriority   = 1,
       mplsTunnelHopTableIndex      = 1,
       mplsTunnelIncludeAnyAffinity = 0,
       mplsTunnelIncludeAllAffinity = 0,
       mplsTunnelExcludeAnyAffinity = 0,
       mplsTunnelPathInUse          = 1,
       mplsTunnelRole               = head (1),
      }               

      In mplsTunnelTable( Protected LSP ):

      {
       mplsTunnelIndex              = 1,  -- protected lsp tunnel index
       mplsTunnelInstance           = 100,-- Specific instance protected
       mplsTunnelIngressLSRId       = 192.0.2.1,
       mplsTunnelEgressLSRId        = 192.0.2.5,
       mplsTunnelName               = "R1-R5",
       mplsTunnelDescr              = "R1-R5",
       mplsTunnelIsIf               = false (2),
       mplsTunnelXCPointer          = 0.0,
       mplsTunnelSignallingProto    = none (1),
       mplsTunnelSetupPrio          = 0,
       mplsTunnelHoldingPrio        = 0,
       mplsTunnelSessionAttributes  = 0,
       mplsTunnelLocalProtectInUse  = true (1),
       mplsTunnelResourcePointer    = mplsTunnelResourceMaxRate.6,
       mplsTunnelInstancePriority   = 1,
       mplsTunnelHopTableIndex      = 1,
       mplsTunnelIncludeAnyAffinity = 0,
       mplsTunnelIncludeAllAffinity = 0,
       mplsTunnelExcludeAnyAffinity = 0,
       mplsTunnelPathInUse          = 1,
       mplsTunnelRole               = transit (2),
      }               

5. Handling IPv6 Tunnels 




Nadeau, et al.               Expires Mar 2012               [Page 11]

                  MPLS Fast-reroute MIB                  Sep 1, 2011



    As described in [RFC4990], in order to support IPv6 MPLS
    tunnels in the mplsTunnelTable [RFC3812] all LSRs in the network 
    MUST have a 32-bit LSR ID that can be used to identify the LSR 
    with the existing mplsTunnelIngressLSRId and mplsTunnelEgressLSRId
    objects which are 32-bit long.

    In this MIB, the following objects which refer to ingress/egress
    LSRs will have then the 32-bit LSR ID to support IPv6 tunnels:
    - mplsFrrOne2OnePlrTunnelIngressLSRId and 
    - mplsFrrOne2OnePlrTunnelEgressLSRId
      objects of the mplsFrrOne2OnePlrTable,
    - mplsFrrOne2OnePlrTunnelIngressLSRId and
    - mplsFrrOne2OnePlrTunnelEgressLSRId
      objects of the mplsFrrOne2OneDetourTable  
    - mplsFrrFacilityBackupTunnelIngressLSRId and
    - mplsFrrFacilityBackupTunnelEgressLSRId
      objects of the mplsFrrFacilityDBTable


6. MIB Module Definitions

6.1. MPLS-FRR-GENERAL-STD-MIB Module:

-- Start of MPLS-FRR-GENERAL-STD-MIB

MPLS-FRR-GENERAL-STD-MIB DEFINITIONS ::= BEGIN

    IMPORTS
       MODULE-IDENTITY, OBJECT-TYPE, mib-2,
       Unsigned32,
       Counter32
          FROM SNMPv2-SMI                            -- [RFC2578]
       MODULE-COMPLIANCE, OBJECT-GROUP 
          FROM SNMPv2-CONF                           -- [RFC2580]
       RowStatus, StorageType
          FROM SNMPv2-TC                             -- [RFC2579]
       InterfaceIndexOrZero,
       ifGeneralInformationGroup, 
       ifCounterDiscontinuityGroup

          FROM IF-MIB                                -- [RFC2863]
       MplsTunnelIndex, MplsTunnelInstanceIndex,
       MplsBitRate,
       MplsTunnelAffinity
          FROM MPLS-TC-STD-MIB                       -- [RFC3811]
       mplsTunnelGroup, mplsTunnelScalarGroup,
       mplsTunnelARHopListIndex, mplsTunnelARHopIndex
          FROM MPLS-TE-STD-MIB                       -- [RFC3812]
       ;



Nadeau, et al.               Expires Mar 2012               [Page 12]

                  MPLS Fast-reroute MIB                  Sep 1, 2011




    mplsFrrGeneralMIB MODULE-IDENTITY
       LAST-UPDATED
          "201106141200Z" -- 14 Jun 2011 12:00:00 GMT
       ORGANIZATION
          "Multiprotocol Label Switching (MPLS) Working Group"
       CONTACT-INFO
            "
                     Riza Cetin
              Email: riza.cetin@alcatel.be

                     Thomas D. Nadeau
              Email: tnadeau@lucidvision.com

                     A S Kiran Koushik
              Email: kkoushik@cisco.com

                     Stefaan De Cnodder
              Email: Stefaan.de_cnodder@alcatel.be

                     Der-Hwa Gan
              Email: dhg@juniper.net
            "
       DESCRIPTION
         "Copyright (c) 2011 IETF Trust and the persons identified 
          as the document authors.  All rights reserved. This version 
          of this MIB module is part of RFC xxxx; See the RFC itself 
          for full legal notices.

-- RFC EDITOR: please replace xxxx with actual number
-- and remove this note.

          This MIB module contains generic object definitions for
          MPLS Traffic Engineering Fast Reroute as defined in
          RFC4090."
    -- Revision history.
       REVISION
          "201106141200Z" -- 14 Jun 2011 12:00:00 GMT
       DESCRIPTION
          "Initial version. Published as RFC xxxx." 
                          -- RFC-editor pls fill in xxxx
   ::= { mib-2 XXX }      -- RFC-editor please fill in
                          -- yyy with value assigned by IANA, 
                          -- see section 8.1 for details

    -- Top level components of this MIB module.

    mplsFrrGeneralObjects 
                OBJECT IDENTIFIER ::= { mplsFrrGeneralMIB 1 }



Nadeau, et al.               Expires Mar 2012               [Page 13]

                  MPLS Fast-reroute MIB                  Sep 1, 2011

    mplsFrrGeneralConformance   
                OBJECT IDENTIFIER ::= { mplsFrrGeneralMIB 2 }


    -- MPLS Fast Reroute generic scalars.
   mplsFrrGeneralProtectionMethod OBJECT-TYPE
       SYNTAX        INTEGER { 
                               unknown(1),
                               oneToOneBackup(2),
                               facilityBackup(3)
                             }
       MAX-ACCESS    read-write
       STATUS        current
       DESCRIPTION
         "Indicates which protection method is to be used for fast
          reroute on this device. Some devices may require a reboot 
          if this variable is to take affect after being modified."
       ::= { mplsFrrGeneralObjects 1 }

    mplsFrrGeneralIngressTunnelInstances OBJECT-TYPE
       SYNTAX        Counter32
       MAX-ACCESS    read-only
       STATUS        current
       DESCRIPTION
         "The number of tunnel instances for either detour LSPs or
          bypass tunnels for which this LSR is the ingress."
       ::= { mplsFrrGeneralObjects 2 }

    --
    --  General FRR Table Section
    --
    --  These tables apply to both types of FRR
    --  and should be implemented by all LSRs supporting
    --  FRR.
    --
    -- MPLS Fast Reroute Constraints table

    mplsFrrGeneralConstraintsTable OBJECT-TYPE
       SYNTAX        SEQUENCE OF MplsFrrGeneralConstraintsEntry
       MAX-ACCESS    not-accessible
       STATUS        current
       DESCRIPTION
         "This table shows detour LSP or bypass tunnel setup
          constraints."
       ::= {  mplsFrrGeneralObjects 3 }

    mplsFrrGeneralConstraintsEntry OBJECT-TYPE
       SYNTAX        MplsFrrGeneralConstraintsEntry
       MAX-ACCESS    not-accessible
       STATUS        current

Nadeau, et al.               Expires Mar 2012               [Page 14]

                  MPLS Fast-reroute MIB                  Sep 1, 2011

       DESCRIPTION
         "An entry in this table represents detour LSP or bypass 
          tunnel setup constraints for an interface or link to be 
          protected by detour LSPs or a bypass tunnel. 

          Once the LSP or tunnel instance to be protected is identified
          in the mplsTunnelTable, the corresponding mplsTunnelIfIndex 
          value of that tunnel can be used to get the ifIndex of 
          the underlying physical interface using the ifStackTable.
          That ifIndex of the underlying physical interface will
          be used as mplsFrrGeneralConstraintsIfIndexOrZero in this
          table to protect the LSPs or tunnel instances determined 
          earlier. 

          It is recommended that ifIndex persistence be 
          enabled across re-initializations.
          If persistence is not implemented then the value of 
          mplsFrrGeneralConstraintsIfIndexOrZero in this
          table cannot be guaranteed across restarts and all entries
          in this table MUST NOT be persistent, or the values of
          mplsFrrGeneralConstraintsIfIndexOrZero MUST be reconstructed
          on restart.
 
          SNMP Engines must only allow entries in this table 
          to be created for tunnel instances that require fast-reroute
          as indicated by the presense of the FAST_REROUTE Object 
          in the signaling for the LSP in question.

          An entry in this table can be created only if a 
          corresponding entry in mplsTunnelTable exists with the
          same mplsTunnelIndex as mplsFrrGeneralConstraintsTunnelIndex.
   
          Entries in this table are deleted when the corresponding
          entries in mplsTunnelTable are deleted.

          It is recommended that entries in this table be persisted
          across reboots.

          Entries indexed with mplsFrrGeneralConstraintsIfIndexOrZero 
          set to 0 apply to all interfaces on this device for which 
          the FRR feature can operate.

          If the mplsTunnelInstance object is
          set to a value of 0, it indicates that the mplsTunnelEntry
          contains a tunnel ingress. This is typically how
          configuration of this feature is performed on devices
          where the actual protection LSP used is left up to the
          protecting tunnel. However, in cases where static 
          configuration is possible, any valid tunnel
          instance is possible; however,  it is STRONGLY RECOMMENDED 
          that the instance index SHOULD use the following convention 
          to identify backup LSPs:
          - lower 16 bits : protected tunnel instance

Nadeau, et al.               Expires Mar 2012               [Page 15]

                  MPLS Fast-reroute MIB                  Sep 1, 2011

          - higher 16 bits: must be all zeros
       "
       REFERENCE "Section 4.1 of RFC4090 and Section 6.1 from RFC 3812."
       INDEX { mplsFrrGeneralConstraintsIfIndexOrZero,
               mplsFrrGeneralConstraintsTunnelIndex,
               mplsFrrGeneralConstraintsTunnelInstance
             }
       ::= { mplsFrrGeneralConstraintsTable 1 }

    MplsFrrGeneralConstraintsEntry ::= SEQUENCE {
       mplsFrrGeneralConstraintsIfIndexOrZero   InterfaceIndexOrZero,
       mplsFrrGeneralConstraintsTunnelIndex     MplsTunnelIndex,
       mplsFrrGeneralConstraintsTunnelInstance  MplsTunnelInstanceIndex,
       mplsFrrGeneralConstraintsProtectionType  INTEGER,
       mplsFrrGeneralConstraintsSetupPrio       Unsigned32,
       mplsFrrGeneralConstraintsHoldingPrio     Unsigned32,
       mplsFrrGeneralConstraintsInclAnyAffinity MplsTunnelAffinity,
       mplsFrrGeneralConstraintsInclAllAffinity MplsTunnelAffinity,
       mplsFrrGeneralConstraintsExclAnyAffinity MplsTunnelAffinity,
       mplsFrrGeneralConstraintsHopLimit        Unsigned32,
       mplsFrrGeneralConstraintsBandwidth       MplsBitRate,
       mplsFrrGeneralConstraintsStorageType     StorageType,
       mplsFrrGeneralConstraintsRowStatus       RowStatus
    }

    mplsFrrGeneralConstraintsIfIndexOrZero  OBJECT-TYPE
       SYNTAX        InterfaceIndexOrZero
       MAX-ACCESS    not-accessible
       STATUS        current
       DESCRIPTION
         "Uniquely identifies an interface which a fast reroute 
          protection tunnel is configured to potentially protect
          in the event of a fault. Entries with this index set to 
          0 indicates that the protection tunnel configured protects 
          all interfaces on this device (i.e.: node protection)."
       ::= { mplsFrrGeneralConstraintsEntry 1 }

    mplsFrrGeneralConstraintsTunnelIndex OBJECT-TYPE
       SYNTAX        MplsTunnelIndex
       MAX-ACCESS    not-accessible
       STATUS        current
       DESCRIPTION
         "Uniquely identifies a tunnel in the mplsTunnelTable which 
          is configured to possibly protect the interface(s) specified
          by mplsFrrGeneralConstraintsIfIndexOrZero in the event of a 
          fault."
       REFERENCE "mplsTunnelTable from RFC3812."
       ::= { mplsFrrGeneralConstraintsEntry 2 }

    mplsFrrGeneralConstraintsTunnelInstance OBJECT-TYPE
       SYNTAX        MplsTunnelInstanceIndex
       MAX-ACCESS    not-accessible
       STATUS        current
       DESCRIPTION

Nadeau, et al.               Expires Mar 2012               [Page 16]

                  MPLS Fast-reroute MIB                  Sep 1, 2011

         "Uniquely identifies an existing instance of this tunnel 
          for which fast reroute is requested. Note that a value of 
          0 indicates that the configuration points at a tunnel 
          head (as specified in RFC3812). This is typically how 
          configuration of this feature is performed on devices 
          where the actual protection LSP used is left up to the 
          protecting tunnel. However, in cases where static 
          configuration is possible, any valid tunnel
          instance is permissible.  In these cases, it is recommended
          that the instance index follow the following convention
          as to make identification of backup LSPs easier:

          - lower 16 bits : protected tunnel instance
          - higher 16 bits: must be all zeros"
       ::= { mplsFrrGeneralConstraintsEntry 3 }

    mplsFrrGeneralConstraintsProtectionType OBJECT-TYPE
       SYNTAX        INTEGER { linkProtection(1),
                               nodeProtection(2)
                             }
       MAX-ACCESS    read-create
       STATUS        current
       DESCRIPTION
         "Indicates type of the resource protection:

          linkProtection(1) indicates that this tunnel is
            setup to protect a particular link's resources.
          nodeProtection(2) indicates that this tunnel is
            setup to protect an entire node from failure.
         "
       REFERENCE "Section 3 in RFC4090."
       DEFVAL { nodeProtection }
       ::= { mplsFrrGeneralConstraintsEntry 4 }

    mplsFrrGeneralConstraintsSetupPrio OBJECT-TYPE
       SYNTAX        Unsigned32 (0..7)
       MAX-ACCESS    read-create
       STATUS        current
       DESCRIPTION
         "Indicates the setup priority of the detour LSP
          or bypass tunnel."
       REFERENCE
         "Section 4.7 in RFC 3209"
       DEFVAL { 7 }
       ::= { mplsFrrGeneralConstraintsEntry 5 }


Nadeau, et al.               Expires Mar 2012               [Page 17]

                  MPLS Fast-reroute MIB                  Sep 1, 2011

    mplsFrrGeneralConstraintsHoldingPrio OBJECT-TYPE
       SYNTAX        Unsigned32 (0..7)
       MAX-ACCESS    read-create
       STATUS        current
       DESCRIPTION
         "Indicates the holding priority for detour LSP
          or bypass tunnel."
       REFERENCE
         "Section 4.7 RFC 3209"
       DEFVAL { 0 }
       ::= { mplsFrrGeneralConstraintsEntry 6 }

    mplsFrrGeneralConstraintsInclAnyAffinity OBJECT-TYPE
       SYNTAX        MplsTunnelAffinity
       MAX-ACCESS    read-create
       STATUS        current
       DESCRIPTION
         "Indicates the include-any link constraint for the
          detour LSP or bypass tunnel. A link satisfies the
          include-any constraint if and only if the constraint
          is zero, or the link and the constraint have a
          resource class in common."
       REFERENCE
         "Section 4.7 in RFC 3209"
       DEFVAL { 0 }
       ::= { mplsFrrGeneralConstraintsEntry 7 }

    mplsFrrGeneralConstraintsInclAllAffinity OBJECT-TYPE
       SYNTAX        MplsTunnelAffinity
       MAX-ACCESS    read-create
       STATUS        current
       DESCRIPTION
         "Indicates the include-all link constraint for the
          detour LSP or bypass tunnel. A link satisfies the
          include-all constraint if and only if the link contains
          all of the administrative groups specified in the
          constraint."
       REFERENCE
         "Section 4.7 in RFC 3209"
       DEFVAL { 0 }
       ::= { mplsFrrGeneralConstraintsEntry 8 }

    mplsFrrGeneralConstraintsExclAnyAffinity OBJECT-TYPE
       SYNTAX        MplsTunnelAffinity
       MAX-ACCESS    read-create
       STATUS        current
       DESCRIPTION
         "Indicates the exclude-any link constraint for the
          detour LSP or bypass tunnel. A link satisfies the
          exclude-any constraint if and only if the link contains
          none of the administrative groups specified in the

Nadeau, et al.               Expires Mar 2012               [Page 18]

                  MPLS Fast-reroute MIB                  Sep 1, 2011

          constraint."
       REFERENCE
         "Section 4.7 in RFC 3209"
       DEFVAL { 0 }
       ::= { mplsFrrGeneralConstraintsEntry 9 }

    mplsFrrGeneralConstraintsHopLimit OBJECT-TYPE
       SYNTAX        Unsigned32(0..255)
       MAX-ACCESS    read-create
       STATUS        current
       DESCRIPTION
         "The maximum number of hops that the detour LSP or
          bypass tunnel may traverse."
       REFERENCE
         "Section 4.1 in RFC4090."
       DEFVAL { 32 }
    ::= { mplsFrrGeneralConstraintsEntry 10 }

    mplsFrrGeneralConstraintsBandwidth OBJECT-TYPE
       SYNTAX        MplsBitRate
       UNITS         "kilobits per second"
       MAX-ACCESS    read-create
       STATUS        current
       DESCRIPTION
         "The maximum bandwidth specifically reserved for a detour
          LSP or bypass tunnel, in units of thousands of bits 
          per second (Kbps). Note that setting this value to 0 
          indicates best-effort treatment."
       DEFVAL { 0 }
       ::= { mplsFrrGeneralConstraintsEntry 11 }

   mplsFrrGeneralConstraintsStorageType OBJECT-TYPE
   SYNTAX        StorageType
   MAX-ACCESS    read-create
   STATUS        current
   DESCRIPTION  
        "The storage type for this configuration entry.
         Conceptual rows having the value 'permanent'
         need not allow write-access to any columnar
         objects in the row."
   DEFVAL { volatile }
       ::= { mplsFrrGeneralConstraintsEntry 12 }

    mplsFrrGeneralConstraintsRowStatus OBJECT-TYPE
       SYNTAX        RowStatus
       MAX-ACCESS    read-create
       STATUS        current
       DESCRIPTION
         "This object is used to create, modify, and/or delete a row in
          this table. When a row in this table is in active(1) 
          state, no objects in that row can be modified 
          except mplsFrrGeneralConstraintsRowStatus and 
          mplsFrrGeneralConstraintsStorageType."
       ::= { mplsFrrGeneralConstraintsEntry 13 }

Nadeau, et al.               Expires Mar 2012               [Page 19]

                  MPLS Fast-reroute MIB                  Sep 1, 2011

    -- MPLS Fast Reroute Tunnel Actual Route Hop table

    mplsFrrGeneralTunnelARHopTable OBJECT-TYPE
       SYNTAX             SEQUENCE OF MplsFrrGeneralTunnelARHopEntry
       MAX-ACCESS         not-accessible
       STATUS             current
       DESCRIPTION
         "This table sparsely extends mplsTunnelARHopTable defined 
          in the MPLS-TE-STD-MIB MIB module with fast-reroute objects. 
          These objects specify the status of local protection including
          availability and active use, on a per-hop basis, of hops
          traversed by a protected tunnel."
       ::= {  mplsFrrGeneralObjects 4 }

    mplsFrrGeneralTunnelARHopEntry  OBJECT-TYPE
       SYNTAX             MplsFrrGeneralTunnelARHopEntry
       MAX-ACCESS         not-accessible
       STATUS             current
       DESCRIPTION
         "This entry contains fast-reroute protection status of a single
          protected tunnel hop."
     INDEX {
       mplsTunnelARHopListIndex,
       mplsTunnelARHopIndex
     }
       ::= { mplsFrrGeneralTunnelARHopTable 1 }

    MplsFrrGeneralTunnelARHopEntry    ::= SEQUENCE {
        mplsFrrGeneralTunnelARHopSessionAttributeFlags   BITS,
        mplsFrrGeneralTunnelARHopRROSubObjectFlags       BITS
    }

     mplsFrrGeneralTunnelARHopSessionAttributeFlags  OBJECT-TYPE
       SYNTAX            BITS { ARHopSessionAttrFlagsUnsupported(0),
                                LocalProtectionDesired(1), 
                                LabelRecordingDesired(2),
                                SEStyleDesired(3),
                                BandwidthProtectionDesired(4),
                                NodeProtectionDesired(5)  
                              }
       MAX-ACCESS                   read-only
       STATUS                       current
       DESCRIPTION
         "This object indicates the desired values for 
          the associated SESSION_ATTRIBUTE flags. Note that since 
          this object is a BITS type, the bits 
          may be set to indicate various desired combinations of the
          SESSION ATTRIBUTE flags.

          If SESSION_ATTRIBUTE flags are not supported, then this
          object contains the value of 
          ARHopSessionAttrFlagsUnsupported(0)."
        REFERENCE 

Nadeau, et al.               Expires Mar 2012               [Page 20]

                  MPLS Fast-reroute MIB                  Sep 1, 2011

          "See section 4.3 of RFC4090 for SESSION_ATTRIBUTE 
           flags."
       ::= { mplsFrrGeneralTunnelARHopEntry 1 }

     mplsFrrGeneralTunnelARHopRROSubObjectFlags OBJECT-TYPE
       SYNTAX             BITS { ARHopRROSubObjectFlagsUnsupported(0),
                                 LocalProtectionAvailable(1), 
                                 LocalProtectionInUse(2),
                                 BandwidthProtection(3),
                                 NodeProtection(4) 
                               }
       MAX-ACCESS                   read-only
       STATUS                       current
       DESCRIPTION
         "This object indicates the flags that are
          currently in use by the associated RRO sub-object.
          Note that since this object is a BITS type,
          the bits may be set to indicate various combinations of
          the flags.
 
          If RRO sub-object is not supported, then this object
          contains the value of 
          ARHopRROSubObjectFlagsUnsupported(0)."
        REFERENCE
          "See section 4.4 of RFC4090."
       ::= { mplsFrrGeneralTunnelARHopEntry 2 }

    -- Notifications

    -- Module Conformance Statement

   mplsFrrGeneralCompliances
       OBJECT IDENTIFIER ::= {mplsFrrGeneralConformance 1 }

    mplsFrrGeneralGroups
       OBJECT IDENTIFIER ::= {mplsFrrGeneralConformance 2 }

    mplsFrrGeneralModuleFullCompliance MODULE-COMPLIANCE
       STATUS current
       DESCRIPTION
         "Compliance statements for SNMP Engines that support 
          the MPLS-FRR-GENERAL-STD-MIB MIB module."

      MODULE IF-MIB -- The Interfaces Group MIB module, RFC 2863.
         MANDATORY-GROUPS {
            ifGeneralInformationGroup,
            ifCounterDiscontinuityGroup
         }

      MODULE MPLS-TE-STD-MIB  -- The MPLS Traffic Engineering 
                              -- MIB module, RFC 3812
         MANDATORY-GROUPS {
            mplsTunnelGroup,
            mplsTunnelScalarGroup

Nadeau, et al.               Expires Mar 2012               [Page 21]

                  MPLS Fast-reroute MIB                  Sep 1, 2011



         }

       MODULE -- this module
           MANDATORY-GROUPS {
                             mplsFrrGeneralScalarGroup,
                             mplsFrrGeneralTunnelARHopGroup,
                             mplsFrrGeneralConstraintsGroup
                            }

       OBJECT       mplsFrrGeneralConstraintsRowStatus
       SYNTAX       RowStatus { active(1), notInService(2) }
       WRITE-SYNTAX RowStatus { active(1), notInService(2),
                                createAndGo(4), destroy(6)
                              }
       DESCRIPTION "Support for createAndWait and notReady is 
                    not required."

       ::= { mplsFrrGeneralCompliances 1 }

    mplsFrrGeneralModuleReadOnlyCompliance MODULE-COMPLIANCE
       STATUS current
       DESCRIPTION
         "Compliance statements for SNMP Engines that support 
         the MPLS-FRR-GENERAL-STD-MIB MIB module."
       MODULE

           MANDATORY-GROUPS {
                             mplsFrrGeneralScalarGroup,
                             mplsFrrGeneralTunnelARHopGroup,
                             mplsFrrGeneralConstraintsGroup
                            }

       -- Scalars

       OBJECT        mplsFrrGeneralProtectionMethod
       MIN-ACCESS    read-only
       DESCRIPTION
         "Write access is not required."

       -- mplsFrrGeneralConstraintsTable

       OBJECT        mplsFrrGeneralConstraintsSetupPrio
       MIN-ACCESS    read-only
       DESCRIPTION
         "Write access is not required."

       OBJECT        mplsFrrGeneralConstraintsHoldingPrio
       MIN-ACCESS    read-only
       DESCRIPTION



Nadeau, et al.               Expires Mar 2012               [Page 22]

                  MPLS Fast-reroute MIB                  Sep 1, 2011



         "Write access is not required."

       OBJECT        mplsFrrGeneralConstraintsInclAnyAffinity
       MIN-ACCESS    read-only
       DESCRIPTION
         "Write access is not required."

       OBJECT        mplsFrrGeneralConstraintsInclAllAffinity
       MIN-ACCESS    read-only
       DESCRIPTION
         "Write access is not required."

       OBJECT        mplsFrrGeneralConstraintsExclAnyAffinity
       MIN-ACCESS    read-only
       DESCRIPTION
         "Write access is not required."


       OBJECT        mplsFrrGeneralConstraintsBandwidth
       MIN-ACCESS    read-only
       DESCRIPTION
         "Write access is not required."
       OBJECT        mplsFrrGeneralConstraintsProtectionType
       MIN-ACCESS    read-only
       DESCRIPTION
         "Write access is not required."

       OBJECT        mplsFrrGeneralConstraintsHopLimit
       MIN-ACCESS    read-only
       DESCRIPTION
         "Write access is not required."

       OBJECT        mplsFrrGeneralConstraintsStorageType
       MIN-ACCESS    read-only
       DESCRIPTION
         "Write access is not required."

       OBJECT        mplsFrrGeneralConstraintsRowStatus
       SYNTAX        RowStatus { active(1) }
       MIN-ACCESS    read-only
       DESCRIPTION
         "Write access is not required."

       ::= { mplsFrrGeneralCompliances 2 }

    -- Units of conformance

    mplsFrrGeneralScalarGroup OBJECT-GROUP
       OBJECTS {



Nadeau, et al.               Expires Mar 2012               [Page 23]

                  MPLS Fast-reroute MIB                  Sep 1, 2011



                mplsFrrGeneralIngressTunnelInstances,
                mplsFrrGeneralProtectionMethod
               }
       STATUS        current
       DESCRIPTION
         "Objects that are required to display general fast reroute 
          information."
       ::= { mplsFrrGeneralGroups 1 }

    mplsFrrGeneralConstraintsGroup OBJECT-GROUP
       OBJECTS {
          mplsFrrGeneralConstraintsProtectionType,
          mplsFrrGeneralConstraintsSetupPrio,
          mplsFrrGeneralConstraintsHoldingPrio,
          mplsFrrGeneralConstraintsInclAnyAffinity,
          mplsFrrGeneralConstraintsInclAllAffinity,
          mplsFrrGeneralConstraintsExclAnyAffinity,
          mplsFrrGeneralConstraintsHopLimit,
          mplsFrrGeneralConstraintsBandwidth,
          mplsFrrGeneralConstraintsStorageType,
          mplsFrrGeneralConstraintsRowStatus
       }

       STATUS        current
       DESCRIPTION
         "Objects that are required to configure fast reroute
          constraints at the ingress LSR of the tunnel that requires 
          fast reroute service."
       ::= { mplsFrrGeneralGroups 2 }

    mplsFrrGeneralTunnelARHopGroup         OBJECT-GROUP
     OBJECTS {
               mplsFrrGeneralTunnelARHopSessionAttributeFlags,
               mplsFrrGeneralTunnelARHopRROSubObjectFlags
             }
     STATUS        current
     DESCRIPTION
         "Objects that are required to present per hop fast-reroute
          protection status."
    ::= { mplsFrrGeneralGroups 3}

END

-- End of MPLS-FRR-GENERAL-STD-MIB

6.2. MPLS-FRR-ONE2ONE-STD-MIB

-- Start of MPLS-FRR-ONE2ONE-STD-MIB




Nadeau, et al.               Expires Mar 2012               [Page 24]

                  MPLS Fast-reroute MIB                  Sep 1, 2011



MPLS-FRR-ONE2ONE-STD-MIB DEFINITIONS ::= BEGIN

    IMPORTS
       MODULE-IDENTITY, OBJECT-TYPE, mib-2,
       Integer32, Gauge32
          FROM SNMPv2-SMI                            -- [RFC2578]
       MODULE-COMPLIANCE, OBJECT-GROUP 
          FROM SNMPv2-CONF                           -- [RFC2580]
       TruthValue
          FROM SNMPv2-TC                             -- [RFC2579]
       MplsTunnelIndex, MplsTunnelInstanceIndex,
       MplsLsrIdentifier
          FROM MPLS-TC-STD-MIB                       -- [RFC3811]
       InetAddressType, InetAddress
          FROM INET-ADDRESS-MIB                      -- [RFC4001]
       mplsFrrGeneralScalarGroup, mplsFrrGeneralTunnelARHopGroup,
       mplsFrrGeneralConstraintsGroup
          FROM MPLS-FRR-GENERAL-STD-MIB
       ;

    mplsFrrOne2OneMIB MODULE-IDENTITY
       LAST-UPDATED
          "201106141200Z" -- 14 Jun 2011 12:00:00 GMT
       ORGANIZATION
          "Multiprotocol Label Switching (MPLS) Working Group"
       CONTACT-INFO
            "
                     Riza Cetin
              Email: riza.cetin@alcatel.be

                     Thomas D. Nadeau
              Email: tom.nadeau@bt.com

                     A S Kiran Koushik
              Email: kkoushik@cisco.com

                     Stefaan De Cnodder
              Email: Stefaan.de_cnodder@alcatel.be

                     Der-Hwa Gan
              Email: dhg@juniper.net
            "
       DESCRIPTION
         "Copyright (c) 2011 IETF Trust and the persons identified 
          as the document authors.  All rights reserved. This version 
          of this MIB module is part of RFC xxxx; See the RFC itself 
          for full legal notices.

-- RFC EDITOR: please replace xxxx with actual number



Nadeau, et al.               Expires Mar 2012               [Page 25]

                  MPLS Fast-reroute MIB                  Sep 1, 2011



-- and remove this note.

          This MIB module contains object definitions for
          MPLS Traffic Engineering one-to-one backup method for
          Fast Reroute as defined in RFC4090."

    -- Revision history.
       REVISION
          "201106141200Z" -- 14 Jun 2011 12:00:00 GMT
       DESCRIPTION
          "Initial version. Published as RFC xxxx." 
                          -- RFC-editor pls fill in xxxx
   ::= { mib-2 YYY }      -- RFC-editor please fill in
                          -- yyy with value assigned by IANA, 
                          -- see section 8.2 for details

    -- Top level components of this MIB module.

    mplsFrrOne2OneObjects OBJECT IDENTIFIER 
                            ::= { mplsFrrOne2OneMIB 1 }
    mplsFrrOne2OneConformance   OBJECT IDENTIFIER 
                            ::= { mplsFrrOne2OneMIB 2 }


    -- Scalar objects defined for 1-to-1 style FRR

    mplsFrrIncomingDetourLSPs OBJECT-TYPE
       SYNTAX        Integer32 (0..2147483647)
       MAX-ACCESS    read-only
       STATUS        current
       DESCRIPTION
         "The number of detour LSPs entering the device."
       ::= { mplsFrrOne2OneObjects 1 }

    mplsFrrOutgoingDetourLSPs OBJECT-TYPE
       SYNTAX        Integer32 (0..2147483647)
       MAX-ACCESS    read-only
       STATUS        current
       DESCRIPTION
         "The number of detour LSPs leaving the device."
      ::= { mplsFrrOne2OneObjects 2 }

    mplsFrrOne2OneDetourOriginating OBJECT-TYPE
       SYNTAX        Integer32(0..2147483647)
       MAX-ACCESS    read-only
       STATUS        current
       DESCRIPTION
         "The number of detour LSPs originating at this PLR."
       ::= { mplsFrrOne2OneObjects 3 }



Nadeau, et al.               Expires Mar 2012               [Page 26]

                  MPLS Fast-reroute MIB                  Sep 1, 2011




    mplsFrrActiveProtectedLSPs OBJECT-TYPE
       SYNTAX        Gauge32
       MAX-ACCESS    read-only
       STATUS        current
       DESCRIPTION
         "Indicates the number of LSPs currently protected by
          the FRR feature where this device acts as the PLR
          for those LSPs."
       ::= { mplsFrrOne2OneObjects 4 }

    --
    -- One-to-One Specific Tables
    --
    -- Tables in this section pertain only to the 1-1
    -- style of FRR.
    --

    -- MPLS Fast Reroute Point of Local Repair table

    mplsFrrOne2OnePlrTable  OBJECT-TYPE
       SYNTAX        SEQUENCE OF MplsFrrOne2OnePlrEntry
       MAX-ACCESS    not-accessible
       STATUS        current
       DESCRIPTION
         "This table shows a list of protected TE tunnels with
          the corresponding protecting tunnel, as well as the PLR 
          where the protecting tunnel that initiated the detour 
          LSPs traverse this node."
       ::= { mplsFrrOne2OneObjects 5 }

    mplsFrrOne2OnePlrEntry  OBJECT-TYPE
       SYNTAX        MplsFrrOne2OnePlrEntry
       MAX-ACCESS    not-accessible
       STATUS        current
       DESCRIPTION
         "An entry in this table represents a protected tunnel LSP
          together with its detour tunnel instance. An entry in 
          this table is only created by an SNMP engine as instructed 
          by an MPLS signaling protocol.

          The entries of this table are present in all LSRs on the path
          of the detour LSP.

          The objects mplsFrrOne2OnePlrSenderAddrType and 
          mplsFrrOne2OnePlrSenderAddr can be modified after the row
          is created.

          The objects mplsFrrOne2OnePlrTunnelIndex,



Nadeau, et al.               Expires Mar 2012               [Page 27]

                  MPLS Fast-reroute MIB                  Sep 1, 2011



          mplsFrrOne2OnePlrTunnelDetourInstance, 
          mplsFrrOne2OnePlrTunnelIngressLSRId
          and mplsFrrOne2OnePlrTunnelEgressLSRId have the same values as
          the objects mplsTunnelIndex, mplsTunnelInstance,
          mplsTunnelIngressLSRId and mplsTunnelEgressLSRId of the detour
          tunnel instance created in the mplsTunnelTable
          (MPLS-TE-STD-MIB).

          The entries in this table will be deleted when the
          corresponding entries in the mplsTunnelTable are deleted."
       INDEX { mplsFrrOne2OnePlrTunnelIndex,     -- from MPLS-TE-STD-MIB
               mplsFrrOne2OnePlrTunnelDetourInstance,-- mplsTunnelTable
               mplsFrrOne2OnePlrTunnelIngressLSRId,-- Tunnels must exist
               mplsFrrOne2OnePlrTunnelEgressLSRId,  -- a priori
               mplsFrrOne2OnePlrId    }
       ::= { mplsFrrOne2OnePlrTable 1 }

    MplsFrrOne2OnePlrEntry ::= SEQUENCE {
        mplsFrrOne2OnePlrTunnelIndex         MplsTunnelIndex,
        mplsFrrOne2OnePlrTunnelDetourInstance  MplsTunnelInstanceIndex,
        mplsFrrOne2OnePlrTunnelIngressLSRId   MplsLsrIdentifier,
        mplsFrrOne2OnePlrTunnelEgressLSRId    MplsLsrIdentifier,
        mplsFrrOne2OnePlrId             MplsLsrIdentifier,
        mplsFrrOne2OnePlrSenderAddrType InetAddressType,
        mplsFrrOne2OnePlrSenderAddr     InetAddress,
        mplsFrrOne2OnePlrAvoidNodeAddrType InetAddressType,
        mplsFrrOne2OnePlrAvoidNodeAddr     InetAddress
    }

    mplsFrrOne2OnePlrTunnelIndex OBJECT-TYPE
       SYNTAX        MplsTunnelIndex
       MAX-ACCESS    not-accessible
       STATUS        current
       DESCRIPTION
         "Uniquely identifies a tunnel between a pair of LSRs
          from the mplsTunnelEntry."
       ::= { mplsFrrOne2OnePlrEntry 1 }

    mplsFrrOne2OnePlrTunnelDetourInstance OBJECT-TYPE
       SYNTAX        MplsTunnelInstanceIndex
       MAX-ACCESS    not-accessible
       STATUS        current
       DESCRIPTION
         "Uniquely identifies a detour instance of a tunnel from
          the mplsTunnelEntry.

         - lower 16 bits : protected tunnel instance
         - higher 16 bits: detour instance"
       ::= { mplsFrrOne2OnePlrEntry 2 }



Nadeau, et al.               Expires Mar 2012               [Page 28]

                  MPLS Fast-reroute MIB                  Sep 1, 2011




    mplsFrrOne2OnePlrTunnelIngressLSRId OBJECT-TYPE
       SYNTAX        MplsLsrIdentifier
       MAX-ACCESS    not-accessible
       STATUS        current
       DESCRIPTION
         "The purpose of this object is to uniquely identify a
           tunnel within a network. When the MPLS signalling
           protocol is rsvp(2) this object SHOULD contain the 
           same value as the Extended Tunnel Id field in the 
           SESSION object. When the MPLS signalling protocol 
           is crldp(3) this object SHOULD contain the same 
           value as the Ingress LSR Router ID field in the 
           LSPID TLV object.

           This value represents the head-end of the protected 
           tunnel instance."
       REFERENCE
         "Sectopn 4.7 in RFC3209"
       ::= { mplsFrrOne2OnePlrEntry 3 }

     mplsFrrOne2OnePlrTunnelEgressLSRId OBJECT-TYPE
       SYNTAX        MplsLsrIdentifier
       MAX-ACCESS    not-accessible
       STATUS        current
       DESCRIPTION
         "Specifies the egress LSR ID of the protected tunnel instance."
       ::= { mplsFrrOne2OnePlrEntry 4 }

    mplsFrrOne2OnePlrId OBJECT-TYPE
       SYNTAX        MplsLsrIdentifier
       MAX-ACCESS    not-accessible
       STATUS        current
       DESCRIPTION
         "This value represents the PLR that has initiated a detour LSP
          to protect a tunnel instance.
          This value is signalled via the DETOUR object defined in MPLS
          RSVP protocol."
       REFERENCE
          "Section 4.2 of RFC4090"  
       ::= { mplsFrrOne2OnePlrEntry 5 }

    mplsFrrOne2OnePlrSenderAddrType OBJECT-TYPE
       SYNTAX        InetAddressType
       MAX-ACCESS    read-write
       STATUS        current
       DESCRIPTION
         "Denotes the address type of this detour instance's sender
          address."



Nadeau, et al.               Expires Mar 2012               [Page 29]

                  MPLS Fast-reroute MIB                  Sep 1, 2011



       DEFVAL        { ipv4 }
       ::= { mplsFrrOne2OnePlrEntry 6 }

    mplsFrrOne2OnePlrSenderAddr OBJECT-TYPE
       SYNTAX        InetAddress
       MAX-ACCESS    read-write
       STATUS        current
       DESCRIPTION
         "The IP address of the PLR which has initiated the detour LSP.
          The type of this address is determined by the value of the
          mplsFrrOne2OnePlrSenderAddrType object."
       ::= { mplsFrrOne2OnePlrEntry 7 }

    mplsFrrOne2OnePlrAvoidNodeAddrType OBJECT-TYPE
       SYNTAX        InetAddressType
       MAX-ACCESS    read-only
       STATUS        current
       DESCRIPTION
         "Denotes the address type of the node that this PLR tries to
          avoid."
       DEFVAL        { ipv4 }
       ::= { mplsFrrOne2OnePlrEntry 8 }

    mplsFrrOne2OnePlrAvoidNodeAddr OBJECT-TYPE
       SYNTAX        InetAddress
       MAX-ACCESS    read-only
       STATUS        current
       DESCRIPTION
         "The IP address of the node that this PLR tries to avoid.
          The type of this address is determined by the value of the
          mplsFrrOne2OnePlrAvoidNodeAddrType object.
          This value is signalled via the DETOUR object defined in MPLS
          RSVP protocol."
       REFERENCE
         "Section 4.2 of RFC4090"
       ::= { mplsFrrOne2OnePlrEntry 9 }

    -- MPLS One-To-One Fast Reroute Detour table.

    mplsFrrOne2OneDetourTable OBJECT-TYPE
       SYNTAX        SEQUENCE OF MplsFrrOne2OneDetourEntry
       MAX-ACCESS    not-accessible
       STATUS        current
       DESCRIPTION
         "This table shows detour LSPs."
       ::= { mplsFrrOne2OneObjects 6 }

    mplsFrrOne2OneDetourEntry OBJECT-TYPE
       SYNTAX        MplsFrrOne2OneDetourEntry



Nadeau, et al.               Expires Mar 2012               [Page 30]

                  MPLS Fast-reroute MIB                  Sep 1, 2011



       MAX-ACCESS    not-accessible
       STATUS        current
       DESCRIPTION
         "An entry in this table represents a detour. An entry in this
          table is only created by an SNMP engine as instructed by an 
          MPLS signaling protocol. "
       INDEX {
               mplsFrrOne2OnePlrTunnelIndex,     -- from MPLS-TE-STD-MIB
               mplsFrrOne2OnePlrTunnelDetourInstance, -- mplsTunnelTable
               mplsFrrOne2OnePlrTunnelIngressLSRId,-- Tunnels must exist
               mplsFrrOne2OnePlrTunnelEgressLSRId    -- a priori
          }
       ::= { mplsFrrOne2OneDetourTable 1 }

    MplsFrrOne2OneDetourEntry ::= SEQUENCE {
          mplsFrrOne2OneDetourActive             TruthValue,
          mplsFrrOne2OneDetourMergedStatus            INTEGER,
          mplsFrrOne2OneDetourMergedDetourInst   MplsTunnelInstanceIndex
    }

    mplsFrrOne2OneDetourActive OBJECT-TYPE
       SYNTAX        TruthValue
       MAX-ACCESS    read-only
       STATUS        current
       DESCRIPTION
         "Indicates whether or not the main LSP has switched over to 
          this detour LSP. 
          If the value of this object is 'true', then it means that
          the main LSP has switched over to this detour LSP. Otherwise
          it contains a value of 'false'.
          This is only relevant for detours originated by this node."
       ::= { mplsFrrOne2OneDetourEntry 1 }

    mplsFrrOne2OneDetourMergedStatus OBJECT-TYPE
       SYNTAX        INTEGER { notMerged(1),
                               mergedWithProtectedTunnel(2),
                               mergedWithDetour(3)
                             }
       MAX-ACCESS    read-only
       STATUS        current
       DESCRIPTION
         "This value represents whether or not this detour is merged.
          This value is set to notMerged(1) if this detour is not 
          merged.

          This value is set to mergedWithProtectedTunnel(2) if
          this detour is merged with the protected tunnel. This value 
          is mergedWithDetour(3) if this detour is merged 
          with another detour protecting the same tunnel."



Nadeau, et al.               Expires Mar 2012               [Page 31]

                  MPLS Fast-reroute MIB                  Sep 1, 2011



       ::= { mplsFrrOne2OneDetourEntry 2 }

    mplsFrrOne2OneDetourMergedDetourInst OBJECT-TYPE
       SYNTAX        MplsTunnelInstanceIndex
       MAX-ACCESS    read-only
       STATUS        current
       DESCRIPTION
         "This value represents the mplsTunnelInstance of the detour 
          with which this detour is merged. This object is only valid 
          when mplsFrrOne2OneDetourMergedStatus is set to 
          mergedWithDetour(3).

          - lower 16 bits : protected tunnel instance
          - higher 16 bits: detour instance"
       ::= { mplsFrrOne2OneDetourEntry 3 }

    -- Module Conformance Statement

    mplsFrrOne2OneCompliances
       OBJECT IDENTIFIER ::= {mplsFrrOne2OneConformance 1 }

    mplsFrrOne2OneGroups
       OBJECT IDENTIFIER ::= {mplsFrrOne2OneConformance 2 }

    mplsFrrOne2OneModuleFullCompliance MODULE-COMPLIANCE
       STATUS current
       DESCRIPTION
         "Compliance statements for SNMP Engines that support the 
          MPLS-FRR-ONE2ONE-STD-MIB MIB module."

      MODULE MPLS-FRR-GENERAL-STD-MIB -- MPLS FRR Generic MIB
         MANDATORY-GROUPS {
                             mplsFrrGeneralScalarGroup,
                             mplsFrrGeneralTunnelARHopGroup,
                             mplsFrrGeneralConstraintsGroup
         }

       MODULE -- this module
           MANDATORY-GROUPS {
                             mplsFrrOne2OneScalarsGroup,
                             mplsFrrOne2OnePLRDetourGroup,
                             mplsFrrOne2OnePlrGroup
                            }

       ::= { mplsFrrOne2OneCompliances 1 }

    mplsFrrOne2OneModuleReadOnlyCompliance MODULE-COMPLIANCE
       STATUS current
       DESCRIPTION



Nadeau, et al.               Expires Mar 2012               [Page 32]

                  MPLS Fast-reroute MIB                  Sep 1, 2011



         "Compliance statements for SNMP Engines that support the
          MPLS-FRR-ONE2ONE-STD-MIB MIB module."
       MODULE
           MANDATORY-GROUPS {
                             mplsFrrOne2OneScalarsGroup,
                             mplsFrrOne2OnePLRDetourGroup,
                             mplsFrrOne2OnePlrGroup
                            }
       -- mplsFrrOne2OnePlrTable

       OBJECT        mplsFrrOne2OnePlrSenderAddrType
       MIN-ACCESS    read-only
       DESCRIPTION
         "Write access is not required."

       OBJECT        mplsFrrOne2OnePlrSenderAddr
       MIN-ACCESS    read-only
       DESCRIPTION
         "Write access is not required."

       ::= { mplsFrrOne2OneCompliances 2 }

    -- Units of conformance

    mplsFrrOne2OneScalarsGroup OBJECT-GROUP
     OBJECTS {
              mplsFrrIncomingDetourLSPs,
              mplsFrrOutgoingDetourLSPs,
              mplsFrrOne2OneDetourOriginating,
              mplsFrrActiveProtectedLSPs
             }
     STATUS        current
     DESCRIPTION
         "Objects that are required for general One-2-One PLR 
          information."
     ::= { mplsFrrOne2OneGroups 1 }


    mplsFrrOne2OnePLRDetourGroup OBJECT-GROUP
     OBJECTS {
              mplsFrrOne2OneDetourActive,
              mplsFrrOne2OneDetourMergedStatus,
              mplsFrrOne2OneDetourMergedDetourInst
             }
     STATUS        current
     DESCRIPTION
         "Objects that are required to present the detour LSP 
          information at the detour ingress, transit and egress LSRs."
     ::= { mplsFrrOne2OneGroups 2 }



Nadeau, et al.               Expires Mar 2012               [Page 33]

                  MPLS Fast-reroute MIB                  Sep 1, 2011




    mplsFrrOne2OnePlrGroup OBJECT-GROUP
      OBJECTS {
          mplsFrrOne2OnePlrSenderAddrType,
          mplsFrrOne2OnePlrSenderAddr,
          mplsFrrOne2OnePlrAvoidNodeAddrType,
          mplsFrrOne2OnePlrAvoidNodeAddr
         }
    STATUS        current
    DESCRIPTION
       "Objects that are required to represent the FRR
        One-2-One PLR information."
    ::= { mplsFrrOne2OneGroups 3 }

END

-- End of MPLS-FRR-ONE2ONE-STD-MIB


6.3. MPLS-FRR-FACILITY-STD-MIB

-- Start of MPLS-FRR-FACILITY-STD-MIB

MPLS-FRR-FACILITY-STD-MIB DEFINITIONS ::= BEGIN

    IMPORTS
       MODULE-IDENTITY, OBJECT-TYPE, mib-2,
       Integer32,
       NOTIFICATION-TYPE, Gauge32
          FROM SNMPv2-SMI                            -- [RFC2578]
       MODULE-COMPLIANCE, OBJECT-GROUP, 
       NOTIFICATION-GROUP
          FROM SNMPv2-CONF                           -- [RFC2580]
       TruthValue
          FROM SNMPv2-TC                             -- [RFC2579]
       InterfaceIndex
          FROM IF-MIB                                -- [RFC2863]
       MplsTunnelIndex, MplsTunnelInstanceIndex,
       MplsLsrIdentifier, MplsBitRate
          FROM MPLS-TC-STD-MIB                       -- [RFC3811]
       mplsFrrGeneralScalarGroup, mplsFrrGeneralTunnelARHopGroup,
       mplsFrrGeneralConstraintsGroup
          FROM MPLS-FRR-GENERAL-STD-MIB
       ;

    mplsFrrFacilityMIB MODULE-IDENTITY
       LAST-UPDATED
          "201106141200Z" -- 14 Jun 2011 12:00:00 GMT
       ORGANIZATION



Nadeau, et al.               Expires Mar 2012               [Page 34]

                  MPLS Fast-reroute MIB                  Sep 1, 2011



          "Multiprotocol Label Switching (MPLS) Working Group"
       CONTACT-INFO
            "
                     Riza Cetin
              Email: riza.cetin@alcatel.be

                     Thomas D. Nadeau
              Email: tom.nadeau@bt.com

                     A S Kiran Koushik
              Email: kkoushik@cisco.com

                     Stefaan De Cnodder
              Email: Stefaan.de_cnodder@alcatel.be

                     Der-Hwa Gan
              Email: dhg@juniper.net
            "
       DESCRIPTION
         "Copyright (C) 2011 The IETF Trust.  This version of this MIB
          module is part of RFC xxxx; See the RFC itself for full
          legal notices.

-- RFC EDITOR: please replace xxxx with actual number
-- and remove this note.

          This MIB module contains object definitions for
          MPLS Traffic Engineering facility backup method for
          Fast Reroute as defined in RFC4090."

    -- Revision history.
       REVISION
          "201106141200Z" -- 14 Jun 2011 12:00:00 GMT
       DESCRIPTION
          "Initial version. Published as RFC xxxx." 
                          -- RFC-editor pls fill in xxxx
   ::= { mib-2 ZZZ }      -- RFC-editor please fill in
                          -- yyy with value assigned by IANA, 
                          -- see section 8.3 for details

    -- Top level components of this MIB module.
    mplsFrrFacilityNotifications         OBJECT IDENTIFIER 
                                    ::= { mplsFrrFacilityMIB 0 }

    mplsFrrFacilityObjects               OBJECT IDENTIFIER 
                                    ::= { mplsFrrFacilityMIB 1 }

    mplsFrrFacilityConformance           OBJECT IDENTIFIER 
                                    ::= { mplsFrrFacilityMIB 2 }



Nadeau, et al.               Expires Mar 2012               [Page 35]

                  MPLS Fast-reroute MIB                  Sep 1, 2011





    -- Scalar objects defined for Facility Backup style FRR

    mplsFrrConfiguredInterfaces OBJECT-TYPE
       SYNTAX        Integer32(0..2147483647)
       MAX-ACCESS    read-only
       STATUS        current
       DESCRIPTION
         "Indicates the number of MPLS interfaces configured for
          protection."
       DEFVAL { 0 }
       ::= { mplsFrrFacilityObjects 1 }

    mplsFrrActiveInterfaces OBJECT-TYPE
       SYNTAX        Gauge32
       MAX-ACCESS    read-only
       STATUS        current
       DESCRIPTION
         "Indicates the number of interfaces currently being 
          protected. This value MUST be less than or equal 
          to mplsFrrConfiguredInterfaces."
       DEFVAL { 0 }
       ::= { mplsFrrFacilityObjects 2 }

    mplsFrrConfiguredBypassTunnels OBJECT-TYPE
       SYNTAX        Gauge32
       MAX-ACCESS    read-only
       STATUS        current
       DESCRIPTION
         "Indicates the number of bypass tunnels configured to
          protect TE tunnels on this LSR."
       DEFVAL { 0 }
       ::= { mplsFrrFacilityObjects 3 }

    mplsFrrActiveBypassTunnels OBJECT-TYPE
       SYNTAX        Gauge32

       MAX-ACCESS    read-only
       STATUS        current
       DESCRIPTION
         "Indicates the number of bypass tunnels indicated in
          mplsFrrConfiguredBypassTunnels whose operStatus
          is up(1) indicating that they are currently protecting
          TE tunnels on this LSR."
       DEFVAL { 0 }
       ::= { mplsFrrFacilityObjects 4 }

    mplsFrrFacilityNotificationsEnabled OBJECT-TYPE



Nadeau, et al.               Expires Mar 2012               [Page 36]

                  MPLS Fast-reroute MIB                  Sep 1, 2011



        SYNTAX            TruthValue
        MAX-ACCESS        read-write
        STATUS            current
        DESCRIPTION
            "Enables or disables FRR notifications defined in this 
             MIB module. Notifications are disabled by default.
 
             This object is needed to control the notifications
             emitted by this implementation."
        DEFVAL { false }
    ::= { mplsFrrFacilityObjects 5 }

    mplsFrrFacilityNotificationsMaxRate OBJECT-TYPE
       SYNTAX       Gauge32
       UNITS        "Notifications per Second"
       MAX-ACCESS   read-write
       STATUS       current
       DESCRIPTION
           "This variable indicates the maximum number of
             notifications issued per second. If events occur
             more rapidly, the implementation may simply fail to
             emit these notifications during that period, or may
             queue them until an appropriate time. In case the
             implementation chooses to drop the events during 
             throttling instead of queuing them to be sent at a later
             time, it is assumed that there will be no indication
             that events are being thrown away.

             A value of 0 means no throttling is applied and 
             events may be generated at the rate at which they occur."
       DEFVAL       { 0 }
    ::= { mplsFrrFacilityObjects 6 }  

    --
    -- Facility-based FRR-specific Tables
    -- 
    -- Tables in this section pertain only to the facility-
    -- based style of FRR.
    --

    mplsFrrFacilityDBTable OBJECT-TYPE
        SYNTAX            SEQUENCE OF MplsFrrFacilityDBEntry
        MAX-ACCESS        not-accessible
        STATUS            current
        DESCRIPTION
            "The mplsFrrFacilityDBTable provides information about the
             fast reroute database.  Each entry belongs to a protected 
             interface, protecting backup tunnel and protected tunnel. 
             MPLS interfaces defined on this node are protected by 
             backup tunnels and are indicated by the index 
             mplsFrrFacilityProtectedIfIndex. If the interface index is 

Nadeau, et al.               Expires Mar 2012               [Page 37]

                  MPLS Fast-reroute MIB                  Sep 1, 2011

             set to 0, this indicates that the remaining indexes apply 
             to all configured protected interfaces.
 
             Note that all objects in this table are read-only and
             if new objects are added to this table, they should also
             be read-only.
  
             It is recommended that ifIndex persistence be enabled
             across re-initializations. 
             If persistence is not implemented then the value of 
             mplsFrrFacilityProtectedIfIndex in this
             table cannot be guaranteed across restarts and all entries
             in this table MUST NOT be persistent, or the values of
             mplsFrrFacilityProtectedIfIndex MUST be reconstructed
             on restart.

             It is recommended that entries in this table be persisted
             across reboots.

             The protecting tunnel is indicated by the  
             index mplsFrrFacilityProtectingTunnelIndex and 
             represents a valid mplsTunnelEntry. Note that the tunnel 
             instance index of the protecting tunnel may be set to 0
             which indicates the tunnel head interface for the 
             protecting tunnel, as per RFC3812, but it may also be
             defined using the following semantics:

             - lower 16 bits : protected tunnel instance
             - higher 16 bits: must be all zeros
           "
    ::= { mplsFrrFacilityObjects 7 }

    mplsFrrFacilityDBEntry OBJECT-TYPE
       SYNTAX        MplsFrrFacilityDBEntry
       MAX-ACCESS    not-accessible
       STATUS        current
       DESCRIPTION
            "An entry in the mplsFrrFacilityDBTable represents a single
             protected LSP, protected by a backup tunnel on a
             specific protected interface, or if the interface
             index is set to 0, on all interfaces. Note that for
             brevity, managers should consult the mplsTunnelTable
             present in the MPLS-TE-STD-MIB MIB module for
             additional information about the protecting and protected
             tunnels, and the ifEntry in the IF-MIB MIB module
             for the protected interface."
        INDEX {
               mplsFrrFacilityProtectedIfIndex,   -- protected ifIndex
               mplsFrrFacilityProtectingTunnelIndex,-- protecting TE tun
               mplsFrrFacilityBackupTunnelIndex,    -- protected TE tun
               mplsFrrFacilityBackupTunnelInstance, -- LSP
               mplsFrrFacilityBackupTunnelIngressLSRId,  
               mplsFrrFacilityBackupTunnelEgressLSRId }  
    ::= { mplsFrrFacilityDBTable 1 }

Nadeau, et al.               Expires Mar 2012               [Page 38]

                  MPLS Fast-reroute MIB                  Sep 1, 2011


    MplsFrrFacilityDBEntry ::= SEQUENCE {
       mplsFrrFacilityProtectedIfIndex          InterfaceIndex,
       mplsFrrFacilityProtectingTunnelIndex     MplsTunnelIndex,
       mplsFrrFacilityBackupTunnelIndex         MplsTunnelIndex,
       mplsFrrFacilityBackupTunnelInstance      MplsTunnelInstanceIndex,
       mplsFrrFacilityBackupTunnelIngressLSRId  MplsLsrIdentifier,
       mplsFrrFacilityBackupTunnelEgressLSRId   MplsLsrIdentifier,
       mplsFrrFacilityDBNumProtectingTunnelOnIf Gauge32,
       mplsFrrFacilityDBNumProtectedLspOnIf     Gauge32,
       mplsFrrFacilityDBNumProtectedTunnels     Gauge32,
       mplsFrrFacilityDBProtectingTunnelStatus  INTEGER,
       mplsFrrFacilityDBProtectingTunnelResvBw  MplsBitRate
    }

    mplsFrrFacilityProtectedIfIndex OBJECT-TYPE
       SYNTAX        InterfaceIndex
       MAX-ACCESS    not-accessible
       STATUS        current
       DESCRIPTION
         "Uniquely identifies the interface configured for FRR 
          protection. If this object is set to 0, this indicates
          that the remaining indexing combinations for this row 
          apply to all interfaces on this device for which 
          the FRR feature can operate."
      ::= { mplsFrrFacilityDBEntry 1 }

    mplsFrrFacilityProtectingTunnelIndex OBJECT-TYPE
       SYNTAX        MplsTunnelIndex
       MAX-ACCESS    not-accessible
       STATUS        current
       DESCRIPTION
         "Uniquely identifies the mplsTunnelEntry primary index for
          the tunnel head interface designated to protect the
          interface as specified in the mplsFrrFacilityProtectedIfIndex
          (and all of the tunnels using this interface). Note 
          that the corresponding mplsTunnelInstance MUST BE
          0 as per the indexing convention stipulated."
       REFERENCE
          "Section 6.1 of RFC3812"
       ::= { mplsFrrFacilityDBEntry 2 }

    mplsFrrFacilityBackupTunnelIndex OBJECT-TYPE
       SYNTAX        MplsTunnelIndex
       MAX-ACCESS    not-accessible
       STATUS        current
       DESCRIPTION
        "Uniquely identifies the mplsTunnelEntry primary index for
          the TE tunnel LSP being protected on the
          interface as specified by mplsFrrFacilityProtectedIfIndex."
       ::= { mplsFrrFacilityDBEntry 3 }

Nadeau, et al.               Expires Mar 2012               [Page 39]

                  MPLS Fast-reroute MIB                  Sep 1, 2011

    mplsFrrFacilityBackupTunnelInstance OBJECT-TYPE
       SYNTAX        MplsTunnelInstanceIndex
       MAX-ACCESS    not-accessible
       STATUS        current
       DESCRIPTION
        "Uniquely identifies the mplsTunnelEntry secondary index 
         for the TE tunnel LSP being protected on the
         interface as specified by mplsFrrFacilityProtectedIfIndex."
       ::= { mplsFrrFacilityDBEntry 4 }

    mplsFrrFacilityBackupTunnelIngressLSRId OBJECT-TYPE
       SYNTAX        MplsLsrIdentifier
       MAX-ACCESS    not-accessible
       STATUS        current
       DESCRIPTION
        "Uniquely identifies the mplsTunnelEntry third index 
         for the TE tunnel LSP being protected on the
         interface as specified by mplsFrrFacilityProtectedIfIndex."
       REFERENCE
         "Section 6.1 of RFC3812"
       ::= { mplsFrrFacilityDBEntry 5 }

    mplsFrrFacilityBackupTunnelEgressLSRId  OBJECT-TYPE
       SYNTAX        MplsLsrIdentifier
       MAX-ACCESS    not-accessible
       STATUS        current
       DESCRIPTION
        "Uniquely identifies the mplsTunnelEntry fourth index 
         for the TE tunnel LSP being protected on the
         interface as specified by mplsFrrFacilityProtectedIfIndex."
       ::= { mplsFrrFacilityDBEntry 6 }

    mplsFrrFacilityDBNumProtectingTunnelOnIf OBJECT-TYPE
        SYNTAX            Gauge32
        MAX-ACCESS        read-only
        STATUS            current
        DESCRIPTION
            "The number of backup tunnels protecting the
             interface specified by mplsFrrFacilityProtectedIfIndex."
       ::= { mplsFrrFacilityDBEntry 7 }

    mplsFrrFacilityDBNumProtectedLspOnIf OBJECT-TYPE
        SYNTAX            Gauge32
        MAX-ACCESS        read-only
        STATUS            current
        DESCRIPTION
            "The number of LSPs currently being protected on 
             the interface specified by 
             mplsFrrFacilityProtectedIfIndex."
       ::= { mplsFrrFacilityDBEntry 8 }

Nadeau, et al.               Expires Mar 2012               [Page 40]

                  MPLS Fast-reroute MIB                  Sep 1, 2011



    mplsFrrFacilityDBNumProtectedTunnels OBJECT-TYPE
        SYNTAX            Gauge32
        MAX-ACCESS        read-only
        STATUS            current
        DESCRIPTION
            "The number of tunnels protected on the interface
             specified by mplsFrrFacilityProtectedIfIndex."
    ::= { mplsFrrFacilityDBEntry 9 }

    mplsFrrFacilityDBProtectingTunnelStatus OBJECT-TYPE
        SYNTAX            INTEGER {
                              active(1),
                              ready(2),
                              partial(3)
                          }
        MAX-ACCESS        read-only
        STATUS            current
        DESCRIPTION
            "Specifies the state of the protecting tunnel as
             specified by mplsFrrFacilityProtectingTunnelIndex.

             active  This tunnel's label has been placed in the
                      LFIB and is ready to be applied to incoming
                      packets.

             ready -  This tunnel's label entry has been created but is
                      not yet in the LFIB.
             partial - This tunnel's label entry has not been fully
                       created."
    ::= { mplsFrrFacilityDBEntry 10 }

    mplsFrrFacilityDBProtectingTunnelResvBw  OBJECT-TYPE
        SYNTAX            MplsBitRate
        UNITS             "kilobits per second"
        MAX-ACCESS        read-only
        STATUS            current
        DESCRIPTION
            "Specifies the amount of bandwidth in units 
             of '1,000 bits per second', actually reserved by 
             the protecting tunnel for facility backup purposes. 
             This value is repeated here from the 
             MPLS-TE-STD-MIB MIB module because the tunnel entry will 
             reveal the bandwidth reserved by the signaling protocol, 
             which is typically 0 for backup tunnels so as to not 
             over-book bandwidth. However, internal reservations are 
             typically made on the PLR, thus this value should be 
             revealed here as it is often different from 
             mplsTunnelResourceMeanRate found in the MPLS-TE-STD-MIB
             MIB module."



Nadeau, et al.               Expires Mar 2012               [Page 41]

                  MPLS Fast-reroute MIB                  Sep 1, 2011



     ::= { mplsFrrFacilityDBEntry 11 }

    -- Notifications
    mplsFrrFacilityInitialBackupTunnelInvoked  NOTIFICATION-TYPE
        OBJECTS { mplsFrrFacilityDBNumProtectingTunnelOnIf,
                  mplsFrrFacilityDBNumProtectedLspOnIf,
                  mplsFrrFacilityDBNumProtectedTunnels,
                  mplsFrrFacilityDBProtectingTunnelStatus,
                  mplsFrrFacilityDBProtectingTunnelResvBw
                }
    STATUS      current
    DESCRIPTION
        "This notification is generated when a tunnel running over an
         interface as specified in the mplsFrrConstraintsTable is 
         initially protected by the backup tunnel also specified in the
         mplsFrrConstraintsTable. In some implementations there may be
         a difference between when the control plane triggers 
         this notification and when the hardware is programmed to
         utilize the protection path. Due to the urgency of this
         operation, it is acceptable for the control plane to 
         either issue this notification before or after it programs
         the hardware. In cases where it is the latter approach,
         the notification MUST be sent immediately after the
         data plane has been altered.

         This notification should not be generated
         for each subsequent tunnel that is backed up by the FRR feature
         on this LSR, as this may result in potential scaling issues
         with regard to LSR performance and network load. Note also
         that notifications MUST be generated in accordance with the
         mplsFrrNotificationsMaxRate."

        ::= { mplsFrrFacilityNotifications 1 }

    mplsFrrFacilityFinalTunnelRestored NOTIFICATION-TYPE
        OBJECTS { mplsFrrFacilityDBNumProtectingTunnelOnIf,
                  mplsFrrFacilityDBNumProtectedLspOnIf,
                  mplsFrrFacilityDBNumProtectedTunnels,
                  mplsFrrFacilityDBProtectingTunnelStatus,
                  mplsFrrFacilityDBProtectingTunnelResvBw
                }
    STATUS      current
    DESCRIPTION
        "This notification is generated when the final tunnel that is
         being protected by a backup tunnel as specified in the
         mplsFrrConstraintsTable is restored to normal operation. This
         notification should not be generated for each restored tunnel,
         as this may result in potential scaling issues with regard to
         LSR performance and network load. Note also that



Nadeau, et al.               Expires Mar 2012               [Page 42]

                  MPLS Fast-reroute MIB                  Sep 1, 2011



         notifications MUST be generated in accordance with the
         mplsFrrNotificationsMaxRate."
        ::= { mplsFrrFacilityNotifications 2 }

    -- Module Conformance Statement

    mplsFrrFacilityCompliances
       OBJECT IDENTIFIER ::= {mplsFrrFacilityConformance 1 }

    mplsFrrFacilityGroups
       OBJECT IDENTIFIER ::= {mplsFrrFacilityConformance 2 }


    mplsFrrFacilityModuleFullCompliance MODULE-COMPLIANCE
       STATUS current
       DESCRIPTION
         "Compliance statements for SNMP Engines that support the 
          MPLS-FRR-FACILITY-STD-MIB MIB module."

      MODULE MPLS-FRR-GENERAL-STD-MIB  -- MPLS FRR Generic MIB
         MANDATORY-GROUPS {
                             mplsFrrGeneralScalarGroup,
                             mplsFrrGeneralTunnelARHopGroup,
                             mplsFrrGeneralConstraintsGroup
         }

       MODULE -- this module
           MANDATORY-GROUPS {
                             mplsFrrFacilityScalarGroup,
                             mplsFrrFacilityDBGroup,
                             mplsFrrFacilityNotificationsGroup
                            }

       ::= { mplsFrrFacilityCompliances 1 }

    mplsFrrFacilityModuleReadOnlyCompliance MODULE-COMPLIANCE
       STATUS current
       DESCRIPTION
         "Compliance statements for SNMP Engines that support 
          MPLS-FRR-FACILITY-STD-MIB MIB module."

      MODULE MPLS-FRR-GENERAL-STD-MIB -- MPLS FRR Generic MIB
         MANDATORY-GROUPS {
                             mplsFrrGeneralScalarGroup,
                             mplsFrrGeneralTunnelARHopGroup,
                             mplsFrrGeneralConstraintsGroup
         }

       MODULE -- this module



Nadeau, et al.               Expires Mar 2012               [Page 43]

                  MPLS Fast-reroute MIB                  Sep 1, 2011



           MANDATORY-GROUPS {
                             mplsFrrFacilityScalarGroup,
                             mplsFrrFacilityDBGroup,
                             mplsFrrFacilityNotificationsGroup
                            }

       ::= { mplsFrrFacilityCompliances 2 }

    -- Units of conformance

    mplsFrrFacilityScalarGroup OBJECT-GROUP
      OBJECTS { mplsFrrConfiguredInterfaces,
                mplsFrrActiveInterfaces,
                mplsFrrConfiguredBypassTunnels,
                mplsFrrActiveBypassTunnels,
                mplsFrrFacilityNotificationsEnabled,
                mplsFrrFacilityNotificationsMaxRate
        }
    STATUS        current
    DESCRIPTION
       "Objects that are required to represent the FRR
        Facility Route Database information."
    ::= { mplsFrrFacilityGroups 1 }

    mplsFrrFacilityDBGroup OBJECT-GROUP
      OBJECTS { mplsFrrFacilityDBNumProtectingTunnelOnIf,
                mplsFrrFacilityDBNumProtectedLspOnIf,
                mplsFrrFacilityDBNumProtectedTunnels,
                mplsFrrFacilityDBProtectingTunnelStatus,
                mplsFrrFacilityDBProtectingTunnelResvBw
        }
    STATUS        current
    DESCRIPTION
       "Objects that are required to represent the FRR
        Facility Route Database information."
    ::= { mplsFrrFacilityGroups 2 }

    mplsFrrFacilityNotificationsGroup NOTIFICATION-GROUP
    NOTIFICATIONS { mplsFrrFacilityInitialBackupTunnelInvoked,
                    mplsFrrFacilityFinalTunnelRestored
                  }
    STATUS        current
    DESCRIPTION
         "Objects that are required to represent FRR notifications."
    ::= { mplsFrrFacilityGroups 3 }

END





Nadeau, et al.               Expires Mar 2012               [Page 44]

                  MPLS Fast-reroute MIB                  Sep 1, 2011



-- End of MPLS-FRR-FACILITY-STD-MIB

7. Security Considerations

   It is clear that these MIB modules are potentially useful for 
   monitoring of MPLS LSRs supporting fast reroute.  This
   MIB module can also 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:

   o    the mplsFrrGeneralConstraintsTable(
        mplsFrrGeneralConstraintsProtectionType,
        mplsFrrGeneralConstraintsSetupPrio, etc.) and some objects in 
        the mplsFrrScalarGroup( mplsFrrGeneralProtectionMethod,
        mplsFrrFacilityNotificationsEnabled, etc.) contain objects 
        which may be used to provision MPLS fast reroute features.
        Unauthorized access to these objects could result in disruption
        of traffic on the network. 

   Some of the readable objects in these MIB modules (i.e. objects with
   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:

   o    the mplsFrrOne2OnePlrTable (mplsFrrOne2OnePlrSenderAddr,
        mplsFrrOne2OnePlrAvoidNodeAddr, etc.), 
        mplsFrrOne2OneDetourTable (mplsFrrOne2OneDetourActive,
        mplsFrrOne2OneDetourMergedDetourInst, etc.), and 
        mplsFrrGeneralTunnelARHopTable(
        mplsFrrGeneralTunnelARHopSessionAttributeFlags,
        mplsFrrGeneralTunnelARHopRROSubObjectFlags, etc.) 
        tables and some objects contained in the mplsFrrScalarGroup(
        mplsFrrGeneralProtectionMethod, mplsFrrActiveInterfaces, etc.)
        collectively show the MPLS fast reroute interfaces, tunnels,
        and other associated fast reroute feature configurations 
        as well as their linkages to other MPLS-related 
        configuration and/or performance statistics. 
        Administrators not wishing to reveal this information should



Nadeau, et al.               Expires Mar 2012               [Page 45]

                  MPLS Fast-reroute MIB                  Sep 1, 2011



        consider these objects sensitive/vulnerable and take 
        precautions so they are not revealed.

   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 these MIB modules.

   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 these MIB modules, 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

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

8.1.  IANA Considerations for MPLS-FRR-GENERAL-STD-MIB

   The IANA is requested to assign { mib-2 XXX } to the 
   MPLS-FRR-GENERAL-STD-MIB MIB module specified in this document.

8.2.  IANA Considerations for MPLS-FRR-ONE2ONE-STD-MIB

   The IANA is requested to assign { mib-2 YYY } to the 
   MPLS-FRR-ONE2ONE-STD-MIB MIB module specified in this document.

8.3.  IANA Considerations for MPLS-FRR-FACILITY-STD-MIB

   The IANA is requested to assign { mib-2 ZZZ } to the 
   MPLS-FRR-FACILITY-STD-MIB MIB module specified in this document.

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

Nadeau, et al.               Expires Mar 2012               [Page 46]

                  MPLS Fast-reroute MIB                  Sep 1, 2011



9. Acknowledgments

    This document is a product of the MPLS Working Group.
    We would like to thank Alia Atlas, Yeong Tai, Walter Vanhimbeeck,
    Mike Piecuch, Adrien Grise, Kiran Koushik, Joan Cucchiara and 
    Adrian Farrel for the helpful and colorful discussions about, 
    editorial comments on and contributions to this document.

10. References

10.1 Normative References

   [RFC2119] S. Bradner, "Key Words for use in RFCs to Indicate
             Requirement Levels", RFC 2119, BCP 14, 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. Kastenholtz, "The Interfaces Group
              MIB", RFC 2863, June 2000.

   [RFC3031]  Rosen, E., Viswanathan, A., and R. Callon, "Multiprotocol
              Label Switching Architecture", RFC 3031, January 2001.

   [RFC3811]  Nadeau, T. and J. Cucchiara, "Definition of Textual
              Conventions and for Multiprotocol Label Switching (MPLS)
              Management", RFC 3811, June 2004.

   [RFC3812] Srinivasan, C., Viswanathan, A. and T. Nadeau, 
             "Multiprotocol Label Switching (MPLS) Traffic
              Engineering Management Information
              Base", RFC 3812, June 2004

   [RFC3813] Srinivasan, C., Viswanathan, A. and Nadeau, T., 
             "Multiprotocol Label Switching (MPLS) Label Switching
              Router (LSR) Management Information Base",
              RFC 3813, June 2004

   [RFC4001]  Daniele, M., Haberman, B., Routhier, S., and J.



Nadeau, et al.               Expires Mar 2012               [Page 47]

                  MPLS Fast-reroute MIB                  Sep 1, 2011



              Schoenwaelder, "Textual Conventions for Internet Network
              Addresses", RFC 4001, Feb 2005.

   [RFC4090]  Pan, P., Swallow, G., and A. Atlas, "Fast Reroute 
              Extensions to RSVP-TE for LSP Tunnels", RFC 4090,
              May 2005.

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

   [RFC4990]  Shiomoto K., Papneja R., Rabbat R.," Use of Addresses 
              in Generalized Multi-Protocol Label Switching (GMPLS)
              Networks", RFC 4990, Sep 2007.

11. Editors' Addresses

    Riza Cetin
    Alcatel
    Francis Wellesplein 1
    B-2018 Antwerp, Belgium
    Email: riza.cetin@alcatel.be

    Thomas D. Nadeau
    CA Technologies
    Email: thomas.nadeau@ca.com

    A S Kiran Koushik
    Cisco Systems, Inc.
    12515 Research Blvd, Bldg 4
    Austin, TX 78664 
    Phone: +1-512-378-1482
    Email: kkoushik@cisco.com

12. Contributors' Addresses

    Stefaan De Cnodder
    Alcatel
    Francis Wellesplein 1
    B-2018 Antwerp, Belgium
    Email: stefaan.de_cnodder@alcatel.be

    Der-Hwa Gan
    Juniper Networks, Inc.
    1194 N. Mathilda Avenue
    Sunnyvale, CA 94089
    Email: derhwagan@yahoo.com



Nadeau, et al.               Expires Mar 2012               [Page 48]

                  MPLS Fast-reroute MIB                  Sep 1, 2011




Intellectual Property Statement

   The IETF Trust takes no position regarding the validity or scope of
   any Intellectual Property Rights or other rights that might be
   claimed to pertain to the implementation or use of the technology
   described in any IETF Document or the extent to which any license
   under such rights might or might not be available; nor does it
   represent that it has made any independent effort to identify any
   such rights.

   Copies of Intellectual Property disclosures made to the IETF
   Secretariat and any assurances of licenses to be made available, or
   the result of an attempt made to obtain a general license or
   permission for the use of such proprietary rights by implementers or
   users of this specification can be obtained from the IETF on-line IPR
   repository at http://www.ietf.org/ipr

   The IETF invites any interested party to bring to its attention any
   copyrights, patents or patent applications, or other proprietary
   rights that may cover technology that may be required to implement
   any standard or specification contained in an IETF Document. Please
   address the information to the IETF at ietf-ipr@ietf.org.

   The definitive version of an IETF Document is that published by, or
   under the auspices of, the IETF. Versions of IETF Documents that are
   published by third parties, including those that are translated into
   other languages, should not be considered to be definitive versions
   of IETF Documents. The definitive version of these Legal Provisions
   is that published by, or under the auspices of, the IETF. Versions of
   these Legal Provisions that are published by third parties, including
   those that are translated into other languages, should not be
   considered to be definitive versions of these Legal Provisions.

   For the avoidance of doubt, each Contributor to the IETF Standards
   Process licenses each Contribution that he or she makes as part of
   the IETF Standards Process to the IETF Trust pursuant to the
   provisions of RFC 5378. No language to the contrary, or terms,
   conditions or rights that differ from or are inconsistent with the
   rights and licenses granted under RFC 5378, shall have any effect and
   shall be null and void, whether published or posted by such
   Contributor, or included with or in such Contribution.


Acknowledgement

   This document is a product of the MPLS Working Group.
   Funding for the RFC Editor function is provided by the IETF
   Administrative Support Activity (IASA).



Nadeau, et al.               Expires Mar 2012               [Page 49]

                  MPLS Fast-reroute MIB                  Sep 1, 2011























































Nadeau, et al.               Expires Mar 2012               [Page 50]
