-- Copyright (C) 2008-2014 Super Micro Computer Inc. All Rights Reserved

-- $Id: fsmplsr.mib,v 1.4 2013/07/26 13:31:09 siva Exp $
SUPERMICRO-MPLS-LSR-MIB DEFINITIONS ::= BEGIN

    IMPORTS
       MODULE-IDENTITY, OBJECT-TYPE,
       enterprises 
           FROM SNMPv2-SMI               -- [RFC2578]
	   TruthValue,
           FROM SNMPv2-TC
       mplsInSegmentEntry, mplsOutSegmentEntry
           FROM MPLS-LSR-STD-MIB;        -- [RFC3813]

    fsMplsLsrMIB MODULE-IDENTITY
       LAST-UPDATED "201209050000Z"           
       ORGANIZATION "Super Micro Computer Inc."
       CONTACT-INFO "support@Supermicro.com"
       DESCRIPTION  "The Proprietary MIB for MPLSR module"
       REVISION "201209050000Z" 
       DESCRIPTION  "The Proprietary MIB for MPLSR module"
       ::= { enterprises supermicro-computer-inc(10876) super-switch(101) basic(1) futureMpls (13) 13}

    -- Notifications
    fsMplsLsrNotifications OBJECT IDENTIFIER  ::= { fsMplsLsrMIB 0 }
    -- MPLS LSR objects
    fsMplsLsrObjects        OBJECT IDENTIFIER ::= { fsMplsLsrMIB 1 }
    -- conformance
    fsMplsLsrConformance    OBJECT IDENTIFIER ::= { fsMplsLsrMIB 2 }
    -- MPLS LSR scalar objects
    fsMplsLsrScalarObjects OBJECT IDENTIFIER ::= { fsMplsLsrObjects 1 }
    
-- Extensions to MPLS In Segment Table starts
    
    fsMplsInSegmentTable  OBJECT-TYPE
       SYNTAX        SEQUENCE OF FsMplsInSegmentEntry
       MAX-ACCESS    not-accessible
       STATUS        current
       DESCRIPTION
           "This table sparse augments the mplsInSegmentTable of
            MPLS-LSR-STD-MIB to provide information about bidirectional
            LSPs."
       REFERENCE
           "1. Multiprotocol Label Switching (MPLS) Label Switching
            Router (LSR) Management Information Base (MIB), RFC 3813."
       ::= { fsMplsLsrObjects 2 }

    fsMplsInSegmentEntry  OBJECT-TYPE
       SYNTAX        FsMplsInSegmentEntry
       MAX-ACCESS    not-accessible
       STATUS        current
       DESCRIPTION
          "An entry in this table extends the representation of an incoming
           segment represented by an entry in the mplsInSegmentTable in
           MPLS-LSR-STD-MIB through a sparse augmentation.  An entry can be
           created by a network administrator via SNMP SET commands, or in
           response to signaling protocol events. "
       REFERENCE
          "1. Multiprotocol Label Switching (MPLS) Label Switching
           Router (LSR) Management Information Base (MIB), RFC 3813."
       AUGMENTS { mplsInSegmentEntry }
       ::= { fsMplsInSegmentTable 1 }

    FsMplsInSegmentEntry ::= SEQUENCE {
        fsMplsInSegmentDirection        INTEGER
    }

    fsMplsInSegmentDirection OBJECT-TYPE
       SYNTAX        INTEGER {
                       forward(1),   -- data flows from head-end of LSP toward tail-end
                       reverse(2)    -- data flows from tail-end of LSP toward head-end
                     }      
       MAX-ACCESS    read-create
       STATUS        current
       DESCRIPTION
          "This object indicates the direction of data flow on this
           segment.  This object cannot be modified if
           mplsInSegmentRowStatus for the corresponding entry in the
           mplsInSegmentTable is active(1)."
       REFERENCE
          "1. Multiprotocol Label Switching (MPLS) Label Switching
           Router (LSR) Management Information Base (MIB), RFC 3813."
       DEFVAL        { forward }
       ::= { fsMplsInSegmentEntry 1 }

    -- Extensions to In Segment Table ends

    -- Extensions to Out Segment Table starts

    fsMplsOutSegmentTable  OBJECT-TYPE
       SYNTAX        SEQUENCE OF FsMplsOutSegmentEntry
       MAX-ACCESS    not-accessible
       STATUS        current
       DESCRIPTION
          "This table sparse augments the mplsOutSegmentTable of
           MPLS-LSR-STD-MIB to provide information about bidirectional
           LSPs."
       REFERENCE
         "1. Multiprotocol Label Switching (MPLS) Label Switching
          Router (LSR) Management Information Base (MIB), RFC 3813."
       ::= { fsMplsLsrObjects 3 }

    fsMplsOutSegmentEntry  OBJECT-TYPE
       SYNTAX        FsMplsOutSegmentEntry
       MAX-ACCESS    not-accessible
       STATUS        current
       DESCRIPTION
          "An entry in this table extends the representation of an outgoing
           segment represented by an entry in the mplsOutSegmentTable of
           MPLS-LSR-STD-MIB through a sparse augmentation.  An entry can be
           created by a network administrator via SNMP SET commands, or in
           response to signaling protocol events."
       REFERENCE
          "1. Multiprotocol Label Switching (MPLS) Label Switching
           Router (LSR) Management Information Base (MIB), RFC 3813."
       AUGMENTS  { mplsOutSegmentEntry }
       ::= { fsMplsOutSegmentTable 1 }

    FsMplsOutSegmentEntry ::= SEQUENCE {
       fsMplsOutSegmentDirection       INTEGER
    }

    fsMplsOutSegmentDirection OBJECT-TYPE
       SYNTAX        INTEGER {
                       forward(1),   -- data flows from head-end of LSP toward tail-end
                       reverse(2)    -- data flows from tail-end of LSP toward head-end
                     }              
       MAX-ACCESS    read-create
       STATUS        current
       DESCRIPTION
          "This object indicates the direction of data flow on this
          segment.  This object cannot be modified if
          mplsOutSegmentRowStatus for the corresponding entry in the
          mplsOutSegmentTable is active(1)."
       REFERENCE
         "1. Multiprotocol Label Switching (MPLS) Label Switching
          Router (LSR) Management Information Base (MIB), RFC 3813."
       DEFVAL  { forward }
       ::= { fsMplsOutSegmentEntry 1 }

    -- Extensions to Out Segment Table ends

-- Definitions ofsMplsLsrScalarObjects fsMplsLsrScalarObjects - Start
fsMplsLsrRfc6428CompatibleCodePoint OBJECT-TYPE
    SYNTAX      TruthValue
    MAX-ACCESS  read-write
    STATUS      current
    DESCRIPTION
             " When this object is set to true(1), the following code point
               values corresponding to RFC 6428 are used in MPLS Ach Header.

               CC BFD   = 0x0022
               CV BFD   = 0x0023
               CV IPV4  = 0x0056
               CV IPv6  = 0x7ff7

               When this object is set to false(2), the following code point
               values corresponding to draft version of RFC 6428 are used in
               MPLS Ach Header.

               CC BFD   = 0x0007
               CV BFD   = 0x0008
               CV IPV4  = 0x0022
               CV IPV6  = 0x0058
              "
    DEFVAL        { false }
    ::=           { fsMplsLsrScalarObjects 1 }

-- Definitions of fsMplsLsrScalarObjects - End

END
