LLDP-EXT-DOT1-DCBX-MIB DEFINITIONS ::= BEGIN
IMPORTS
    MODULE-IDENTITY, OBJECT-TYPE,
    Integer32                              FROM SNMPv2-SMI
    TruthValue, TEXTUAL-CONVENTION         FROM SNMPv2-TC
    lldpV2PortConfigEntry, lldpV2LocPortIfIndex,
    lldpV2RemTimeMark, lldpV2RemLocalIfIndex,
    lldpV2RemLocalDestMACAddress, lldpV2RemIndex
                                           FROM LLDP-V2-MIB
    lldpV2Xdot1MIB                         FROM LLDP-EXT-DOT1-V2-MIB
    IEEE8021PriorityValue                  FROM IEEE8021-TC-MIB
    MODULE-COMPLIANCE, OBJECT-GROUP        FROM SNMPv2-CONF;
 
lldpXdot1dcbxMIB MODULE-IDENTITY
    LAST-UPDATED "200911251800Z" -- November 25, 2009 1800Z
    ORGANIZATION "IEEE 802.1 Working Group"
    CONTACT-INFO 
            "WG-URL: http://grouper.ieee.org/groups/802/1/index.html
             WG-EMail: STDS-802-1-L@LISTSERV.IEEE.ORG

             Contact: Joseph Pelissier
             Postal:  Cisco Systems, Inc.
                      Mail Stop SJC02/2/4
                      3800 Zanker Road 
                      SAN JOSE, CALIFORNIA 95134 
                      UNITED STATES 

             Tel:     +1-503-628-0801
             E-mail:  jopeliss@cisco.com"
    DESCRIPTION
            "The DCBX Management Information Base module for
            IEEE 802.1 organizationally defined configuration
            information.

            The DCBX MIB is branched from lldpV2Xdot1mib.

            Unless otherwise indicated, the references in this
            MIB module are to IEEE Std 802.1Qaz.

            Copyright (C) IEEE (2009).  This version of this MIB module
            is published as clause 17.7 of IEEE Std 802.1Qaz;
            see the standard itself for full legal notices."
    REVISION        "200911251800Z" -- November 25, 2009 1800Z
    DESCRIPTION
            "Published as part of IEEE Std 802.1Qaz initial version."
    ::= { lldpV2Xdot1MIB 5 }
--    ::= { iso std(0) iso8802(8802) ieee802dot1(1) ieee802dot1mibs(1) lldpMIB(2) lldpObjects(1) lldpExtensions(5) 32962 3 }
--     ::= { iso std(0) iso8802(8802) ieee802dot1(1) ieee802dot1mibs(1) lldpMIB(2) lldpObjects(1) 32962 3 }


-----------------------------------------------------------------------
-----------------------------------------------------------------------
--
-- Organizationally Defined Information Extension - IEEE 802.1
-- Definitions to support the Data Center eXchange Protocol
-- (DCBX) TLV set (Table D-1)
--
-----------------------------------------------------------------------
-----------------------------------------------------------------------
lldpXdot1dcbxObjects       OBJECT IDENTIFIER ::= { lldpXdot1dcbxMIB 1 }

-- DCBX 802.1 MIB Extension groups

lldpXdot1dcbxConfig     OBJECT IDENTIFIER ::= { lldpXdot1dcbxObjects 1 }
lldpXdot1dcbxLocalData  OBJECT IDENTIFIER ::= { lldpXdot1dcbxObjects 2 }
lldpXdot1dcbxRemoteData OBJECT IDENTIFIER ::= { lldpXdot1dcbxObjects 3 }
lldpXdot1dcbxAdminData  OBJECT IDENTIFIER ::= { lldpXdot1dcbxObjects 4 }

-------------------------------------------------------------------
-- IEEE 802.1 - DCBX Textual Conventions
-------------------------------------------------------------------

LldpXdot1dcbxTrafficClassValue ::= TEXTUAL-CONVENTION
    DISPLAY-HINT "d"
    STATUS    current
    DESCRIPTION
        "Indicates a traffic class.  Values 0-7 correspond to
        traffic classes."
    SYNTAX    Unsigned32 (0..7)

LldpXdot1dcbxTrafficClassBandwidthValue ::= TEXTUAL-CONVENTION
    DISPLAY-HINT "d"
    STATUS    current
    DESCRIPTION
        "Indicates the bandwidth in percent assigned to a 
        traffic class."
    SYNTAX    Unsigned32 (0..100)

LldpXdot1dcbxAppSelector ::= TEXTUAL-CONVENTION
    STATUS    current
    DESCRIPTION
        "Indicates the contents of a protocol object
        1: Ethertype
        2: Well Known Port number over TCP, or SCTP
        3: Well Known Port number over UDP, or DCCP
        4: Well Known Port number over TCP, SCTP, UDP, and DCCP"
    SYNTAX INTEGER {
        asEthertype(1),
        asTCPPortNumber(2),
        asUDPPortNumber(3),
        asTCPUDPPortNumber(4)
    }
 
 LldpXdot1dcbxAppProtocol ::= TEXTUAL-CONVENTION
     DISPLAY-HINT "d"
     STATUS        current
     DESCRIPTION
         "Contains the application protocol indicator the
         type of which is specified by an object with 
         the syntax of
         LldpXdot1dcbxAppSelector"
     SYNTAX Unsigned32 (0..65535)

LldpXdot1dcbxSupportedCapacity ::= TEXTUAL-CONVENTION
    DISPLAY-HINT "d"
    STATUS    current
    DESCRIPTION
        "Indicates the supported capacity of a given feature,
        for example, the number of traffic classes supported.
        This TC is used for features that have a maximum
        capacity of eight and a minimum of one."
    SYNTAX Unsigned32 (1..8)

LldpXdot1dcbxTrafficSelectionAlgorithm ::= TEXTUAL-CONVENTION
    STATUS    current
    DESCRIPTION
        "Indicates the Traffic Selection Algorithm
        0: Strict Priority
        1: Credit-based shaper
        2: Enhanced transmission selection
        3-254: Reserved for furture standardization
        255: Vendor specific"
    SYNTAX INTEGER {
        tsaStrictPriority(0),
        tsaCreditBasedShaper(1),
        tsaEnhancedTransmission(2),
        tsaVendorSpecific(255)
    }

-------------------------------------------------------------------
-- IEEE 802.1 - DCBX Configuration
-------------------------------------------------------------------

--
--  lldpXdot1dcbxConfigETSConfigurationTable : configure the 
--  transmission of the ETS Configuration TLV on a set of ports
--

lldpXdot1dcbxConfigETSConfigurationTable OBJECT-TYPE
    SYNTAX        SEQUENCE OF LldpXdot1dcbxConfigETSConfigurationEntry
    MAX-ACCESS    not-accessible
    STATUS        current
    DESCRIPTION
        "A table that controls selection of ETS Configuration
         TLVs to be transmitted on individual ports."
    ::= { lldpXdot1dcbxConfig 1 }

lldpXdot1dcbxConfigETSConfigurationEntry OBJECT-TYPE
    SYNTAX        LldpXdot1dcbxConfigETSConfigurationEntry
    MAX-ACCESS    not-accessible
    STATUS        current
    DESCRIPTION
        "LLDP configuration information that controls the
        transmission of IEEE 802.1 organizationally defined 
        ETS Configuration TLV on LLDP transmission capable ports.

        This configuration object augments the lldpV2PortConfigEntry of
        the LLDP-MIB, therefore it is only present along with the port
        configuration defined by the associated lldpV2PortConfigEntry
        entry.

        Each active lldpConfigEntry is restored from non-volatile
        storage (along with the corresponding lldpV2PortConfigEntry)
        after a re-initialization of the management system."
    AUGMENTS      { lldpV2PortConfigEntry }
    ::= { lldpXdot1dcbxConfigETSConfigurationTable 1 }

LldpXdot1dcbxConfigETSConfigurationEntry ::= SEQUENCE {
    lldpXdot1dcbxConfigETSConfigurationTxEnable TruthValue
}

lldpXdot1dcbxConfigETSConfigurationTxEnable OBJECT-TYPE
    SYNTAX        TruthValue
    MAX-ACCESS    read-write
    STATUS        current
    DESCRIPTION 
        "The lldpXdot1dcbxConfigETSConfigurationTxEnable, which is
        defined as a truth value and configured by the network 
        management, determines whether the IEEE 802.1 organizationally
        defined ETS Configuration TLV transmission is allowed on a 
        given LLDP transmission capable port.

        The value of this object is restored from non-volatile
        storage after a re-initialization of the management system."
    REFERENCE
        "D.2.9"
    DEFVAL         { false }
    ::= { lldpXdot1dcbxConfigETSConfigurationEntry 1 }

--
--  lldpXdot1dcbxConfigETSRecommendationTable : configure the 
--  transmission of the ETS Recommendation TLV on a set of ports
--

lldpXdot1dcbxConfigETSRecommendationTable OBJECT-TYPE
    SYNTAX        SEQUENCE OF LldpXdot1dcbxConfigETSRecommendationEntry
    MAX-ACCESS    not-accessible
    STATUS        current
    DESCRIPTION
        "A table that controls selection of ETS Recommendation
        TLVs to be transmitted on individual ports."
    ::= { lldpXdot1dcbxConfig 2 }

lldpXdot1dcbxConfigETSRecommendationEntry OBJECT-TYPE
    SYNTAX        LldpXdot1dcbxConfigETSRecommendationEntry
    MAX-ACCESS    not-accessible
    STATUS        current
    DESCRIPTION
        "LLDP configuration information that controls the
        transmission of IEEE 802.1 organizationally defined 
        ETS Recommendation TLV on LLDP transmission capable ports.

        This configuration object augments the lldpV2PortConfigEntry of
        the LLDP-MIB, therefore it is only present along with the port
        configuration defined by the associated lldpV2PortConfigEntry
        entry.

        Each active lldpConfigEntry is restored from non-volatile
        storage (along with the corresponding lldpV2PortConfigEntry)
        after a re-initialization of the management system."
    AUGMENTS     { lldpV2PortConfigEntry }
    ::= { lldpXdot1dcbxConfigETSRecommendationTable 1 }

LldpXdot1dcbxConfigETSRecommendationEntry ::= SEQUENCE {
    lldpXdot1dcbxConfigETSRecommendationTxEnable TruthValue
}

lldpXdot1dcbxConfigETSRecommendationTxEnable OBJECT-TYPE
    SYNTAX        TruthValue
    MAX-ACCESS    read-write
    STATUS        current
    DESCRIPTION 
        "The lldpXdot1dcbxConfigETSRecommendationTxEnable, which is
        defined as a truth value and configured by the network 
        management, determines whether the IEEE 802.1 organizationally 
        defined ETS Recommendation TLV transmission is allowed on a 
        given LLDP transmission capable port.

        The value of this object is restored from non-volatile
        storage after a re-initialization of the management system."
    REFERENCE
        "D.2.10"
    DEFVAL         { false }
    ::= { lldpXdot1dcbxConfigETSRecommendationEntry 1 }
--
--  lldpXdot1dcbxConfigPFCTable : configure the transmission of the  
--  Priority-based Flow Control TLV on a set of ports
--

lldpXdot1dcbxConfigPFCTable OBJECT-TYPE
    SYNTAX        SEQUENCE OF LldpXdot1dcbxConfigPFCEntry
    MAX-ACCESS    not-accessible
    STATUS        current
    DESCRIPTION
        "A table that controls selection of Priority-based
        Flow Control TLVs to be transmitted on individual ports."
    ::= { lldpXdot1dcbxConfig 3 }

lldpXdot1dcbxConfigPFCEntry OBJECT-TYPE
    SYNTAX        LldpXdot1dcbxConfigPFCEntry
    MAX-ACCESS    not-accessible
    STATUS        current
    DESCRIPTION
        "LLDP configuration information that controls the
        transmission of IEEE 802.1 organizationally defined 
        Priority-based Flow Control TLV on LLDP transmission
        capable ports.

        This configuration object augments the lldpV2PortConfigEntry of
        the LLDP-MIB, therefore it is only present along with the port
        configuration defined by the associated lldpV2PortConfigEntry
        entry.

        Each active lldpConfigEntry is restored from non-volatile
        storage (along with the corresponding lldpV2PortConfigEntry)
        after a re-initialization of the management system."
    AUGMENTS     { lldpV2PortConfigEntry }
    ::= { lldpXdot1dcbxConfigPFCTable 1 }

LldpXdot1dcbxConfigPFCEntry ::= SEQUENCE {
    lldpXdot1dcbxConfigPFCTxEnable TruthValue
}

lldpXdot1dcbxConfigPFCTxEnable OBJECT-TYPE
    SYNTAX        TruthValue
    MAX-ACCESS    read-write
    STATUS        current
    DESCRIPTION 
        "The lldpXdot1dcbxConfigPFCTxEnable, which is defined
        as a truth value and configured by the network management,
        determines whether the IEEE 802.1 organizationally defined
        Priority-based Flow Control TLV transmission is allowed on
        a given LLDP transmission capable port.

        The value of this object is restored from non-volatile
        storage after a re-initialization of the management system."
    REFERENCE
        "D.2.11"
    DEFVAL         { false }
    ::= { lldpXdot1dcbxConfigPFCEntry 1 }

--
--  lldpXdot1dcbxConfigApplicationPriorityTable : configure the 
--  transmission of the Application Priority TLV on a set of ports
--

lldpXdot1dcbxConfigApplicationPriorityTable OBJECT-TYPE
    SYNTAX        SEQUENCE OF
        LldpXdot1dcbxConfigApplicationPriorityEntry
    MAX-ACCESS    not-accessible
    STATUS        current
    DESCRIPTION
        "A table that controls selection of Priority-based
        Flow Control TLVs to be transmitted on individual ports."
    ::= { lldpXdot1dcbxConfig 4 }

lldpXdot1dcbxConfigApplicationPriorityEntry OBJECT-TYPE
    SYNTAX        LldpXdot1dcbxConfigApplicationPriorityEntry
    MAX-ACCESS    not-accessible
    STATUS        current
    DESCRIPTION
        "LLDP configuration information that controls the
        transmission of IEEE 802.1 organizationally defined 
        Application Priority TLV on LLDP transmission capable ports.

        This configuration object augments the lldpV2PortConfigEntry of
        the LLDP-MIB, therefore it is only present along with the port
        configuration defined by the associated lldpV2PortConfigEntry
        entry.

        Each active lldpConfigEntry is restored from non-volatile
        storage (along with the corresponding lldpV2PortConfigEntry)
        after a re-initialization of the management system."
    AUGMENTS     { lldpV2PortConfigEntry }
    ::= { lldpXdot1dcbxConfigApplicationPriorityTable 1 }

LldpXdot1dcbxConfigApplicationPriorityEntry ::= SEQUENCE {
    lldpXdot1dcbxConfigApplicationPriorityTxEnable TruthValue
}

lldpXdot1dcbxConfigApplicationPriorityTxEnable OBJECT-TYPE
    SYNTAX        TruthValue
    MAX-ACCESS    read-write
    STATUS        current
    DESCRIPTION 
        "The lldpXdot1dcbxConfigApplicationPriorityTxEnable, which
        is defined as a truth value and configured by the network 
        management, determines whether the IEEE 802.1 organizationally
        defined Application Priority TLV transmission is allowed on
        a given LLDP transmission capable port.

        The value of this object is restored from non-volatile
        storage after a re-initialization of the management system."
    REFERENCE
        "D.2.12"
    DEFVAL         { false }
    ::= { lldpXdot1dcbxConfigApplicationPriorityEntry 1 }

------------------------------------------------------------------------
-- IEEE 802.1 - DCBX Local System Information
------------------------------------------------------------------------

--
-- lldpXdot1dcbxLocETSConfigurationTable - Contains the information
-- for the ETS Configuration TLV.  
--
lldpXdot1dcbxLocETSConfiguration OBJECT IDENTIFIER
    ::= { lldpXdot1dcbxLocalData 1 }

lldpXdot1dcbxLocETSBasicConfigurationTable OBJECT-TYPE
    SYNTAX        SEQUENCE OF LldpXdot1dcbxLocETSBasicConfigurationEntry
    MAX-ACCESS    not-accessible
    STATUS        current
    DESCRIPTION
        "This table contains one row per port for the IEEE 802.1
        organizationally defined LLDP ETS Configuration TLV on
        the local system known to this agent"
    ::= { lldpXdot1dcbxLocETSConfiguration 1 }

lldpXdot1dcbxLocETSBasicConfigurationEntry OBJECT-TYPE
    SYNTAX        LldpXdot1dcbxLocETSBasicConfigurationEntry
    MAX-ACCESS    not-accessible
    STATUS        current
    DESCRIPTION
        "Information about the IEEE 802.1 organizational defined
        ETS Configuration TLV LLDP extension."
    INDEX         { lldpV2LocPortIfIndex }
    ::= { lldpXdot1dcbxLocETSBasicConfigurationTable 1 }

LldpXdot1dcbxLocETSBasicConfigurationEntry ::= SEQUENCE {
    lldpXdot1dcbxLocETSConCreditBasedShaperSupport TruthValue,
    lldpXdot1dcbxLocETSConTrafficClassesSupported
        LldpXdot1dcbxSupportedCapacity,
    lldpXdot1dcbxLocETSConWilling    TruthValue
}

lldpXdot1dcbxLocETSConCreditBasedShaperSupport OBJECT-TYPE
    SYNTAX        TruthValue
    MAX-ACCESS    read-only
    STATUS        current
    DESCRIPTION
        "Indicates if the credit-based shaper Traffic Selection
        Algorithm is supported on the local system."
    REFERENCE
        "D.2.9.4"
    ::= { lldpXdot1dcbxLocETSBasicConfigurationEntry 1 }

lldpXdot1dcbxLocETSConTrafficClassesSupported OBJECT-TYPE
    SYNTAX        LldpXdot1dcbxSupportedCapacity
    MAX-ACCESS    read-only
    STATUS        current
    DESCRIPTION
        "Indicates the number of traffic classes supported."
    REFERENCE
        "D.2.9.5"
    ::= { lldpXdot1dcbxLocETSBasicConfigurationEntry 2 }

lldpXdot1dcbxLocETSConWilling OBJECT-TYPE
    SYNTAX        TruthValue
    MAX-ACCESS    read-only
    STATUS        current
    DESCRIPTION
        "Indicates if the local system is willing to accept the
        ETS configuration recommended by the remote system."
    REFERENCE
        "D.2.9.3"
    ::= { lldpXdot1dcbxLocETSBasicConfigurationEntry 3 }

lldpXdot1dcbxLocETSConPriorityAssignmentTable OBJECT-TYPE
    SYNTAX        SEQUENCE OF 
        LldpXdot1dcbxLocETSConPriorityAssignmentEntry
    MAX-ACCESS    not-accessible
    STATUS        current
    DESCRIPTION
        "This table contains one row per priority.  The entry in each
        row indicates the traffic class to which the priority is 
        assigned."
    ::= { lldpXdot1dcbxLocETSConfiguration 2 }

lldpXdot1dcbxLocETSConPriorityAssignmentEntry OBJECT-TYPE
    SYNTAX        LldpXdot1dcbxLocETSConPriorityAssignmentEntry
    MAX-ACCESS    not-accessible
    STATUS        current
    DESCRIPTION
        "Indicates a priority to traffic class assignment."
    INDEX        { 
                lldpV2LocPortIfIndex,
                lldpXdot1dcbxLocETSConPriority 
    }
    ::= { lldpXdot1dcbxLocETSConPriorityAssignmentTable 1 }

LldpXdot1dcbxLocETSConPriorityAssignmentEntry ::= SEQUENCE {
    lldpXdot1dcbxLocETSConPriority      IEEE8021PriorityValue,
    lldpXdot1dcbxLocETSConPriTrafficClass 
        LldpXdot1dcbxTrafficClassValue
}

lldpXdot1dcbxLocETSConPriority OBJECT-TYPE
    SYNTAX        IEEE8021PriorityValue
    MAX-ACCESS    not-accessible
    STATUS        current
    DESCRIPTION
        "Indicates the priority that is assigned to a traffic
        class."
    REFERENCE
        "D.2.9.6"
    ::= { lldpXdot1dcbxLocETSConPriorityAssignmentEntry 1 }

lldpXdot1dcbxLocETSConPriTrafficClass OBJECT-TYPE
    SYNTAX        LldpXdot1dcbxTrafficClassValue
    MAX-ACCESS    read-only
    STATUS        current
    DESCRIPTION
        "Indicates the traffic class to which this priority is
        to be assigned."
    REFERENCE
        "D.2.9.6"
    ::= { lldpXdot1dcbxLocETSConPriorityAssignmentEntry 2 }

lldpXdot1dcbxLocETSConTrafficClassBandwidthTable OBJECT-TYPE
    SYNTAX        SEQUENCE OF 
        LldpXdot1dcbxLocETSConTrafficClassBandwidthEntry
    MAX-ACCESS    not-accessible
    STATUS        current
    DESCRIPTION
        "This table contains one row per traffic class.  The 
        entry in each row indicates the traffic class to  
        which the bandwidth is assigned."
    ::= { lldpXdot1dcbxLocETSConfiguration 3 }

lldpXdot1dcbxLocETSConTrafficClassBandwidthEntry OBJECT-TYPE
    SYNTAX        LldpXdot1dcbxLocETSConTrafficClassBandwidthEntry
    MAX-ACCESS    not-accessible
    STATUS        current
    DESCRIPTION
        "Indicates a traffic class to Bandwidth assignment."
    INDEX        { 
                lldpV2LocPortIfIndex,
                lldpXdot1dcbxLocETSConTrafficClass 
    }
    ::= { lldpXdot1dcbxLocETSConTrafficClassBandwidthTable 1 }

LldpXdot1dcbxLocETSConTrafficClassBandwidthEntry ::= SEQUENCE {
    lldpXdot1dcbxLocETSConTrafficClass 
        LldpXdot1dcbxTrafficClassValue,
    lldpXdot1dcbxLocETSConTrafficClassBandwidth
        LldpXdot1dcbxTrafficClassBandwidthValue
}

lldpXdot1dcbxLocETSConTrafficClass OBJECT-TYPE
    SYNTAX        LldpXdot1dcbxTrafficClassValue
    MAX-ACCESS    not-accessible
    STATUS        current
    DESCRIPTION
        "Indicates the traffic class to
        which this bandwidth applies"
    REFERENCE
        "D.2.9.7"
    ::= { lldpXdot1dcbxLocETSConTrafficClassBandwidthEntry 1 }

lldpXdot1dcbxLocETSConTrafficClassBandwidth OBJECT-TYPE
    SYNTAX        LldpXdot1dcbxTrafficClassBandwidthValue
    MAX-ACCESS    read-only
    STATUS        current
    DESCRIPTION
        "Indicates the bandwidth assigned to this traffic class."
    REFERENCE
        "D.2.9.7"
    ::= { lldpXdot1dcbxLocETSConTrafficClassBandwidthEntry 2 }


lldpXdot1dcbxLocETSConTrafficSelectionAlgorithmTable OBJECT-TYPE
    SYNTAX        SEQUENCE OF 
        LldpXdot1dcbxLocETSConTrafficSelectionAlgorithmEntry
    MAX-ACCESS    not-accessible
    STATUS        current
    DESCRIPTION
        "This table contains one row per traffic class.  The entry
        in each row indicates the traffic selction algorithm to be
        used by the traffic class."
    ::= { lldpXdot1dcbxLocETSConfiguration 4 }

lldpXdot1dcbxLocETSConTrafficSelectionAlgorithmEntry OBJECT-TYPE
    SYNTAX        LldpXdot1dcbxLocETSConTrafficSelectionAlgorithmEntry
    MAX-ACCESS    not-accessible
    STATUS        current
    DESCRIPTION
        "Indicates a traffic class to traffic selection algorithm
         assignment."
    INDEX        { 
                lldpV2LocPortIfIndex,
                lldpXdot1dcbxLocETSConTSATrafficClass
    }
    ::= { lldpXdot1dcbxLocETSConTrafficSelectionAlgorithmTable 1 }

LldpXdot1dcbxLocETSConTrafficSelectionAlgorithmEntry ::= SEQUENCE {
    lldpXdot1dcbxLocETSConTSATrafficClass
        LldpXdot1dcbxTrafficClassValue,
    lldpXdot1dcbxLocETSConTrafficSelectionAlgorithm 
        LldpXdot1dcbxTrafficSelectionAlgorithm
}

lldpXdot1dcbxLocETSConTSATrafficClass OBJECT-TYPE
    SYNTAX        LldpXdot1dcbxTrafficClassValue
    MAX-ACCESS    not-accessible
    STATUS        current
    DESCRIPTION
        "Indicates the traffic class that is assigned to a traffic 
        selection algorithm."
    REFERENCE
        "D.2.9.8"
    ::= { lldpXdot1dcbxLocETSConTrafficSelectionAlgorithmEntry 1 }

lldpXdot1dcbxLocETSConTrafficSelectionAlgorithm OBJECT-TYPE
    SYNTAX        LldpXdot1dcbxTrafficSelectionAlgorithm
    MAX-ACCESS    read-only
    STATUS        current
    DESCRIPTION
        "Indicates the Traffic Selection Algorithm to which this
        traffic class is to be assigned."
    REFERENCE
        "D.2.9.8"
    ::= { lldpXdot1dcbxLocETSConTrafficSelectionAlgorithmEntry 2 }

--
-- lldpXdot1dcbxLocETSRecommendationTable - Contains the information for
-- the ETS Recommendation TLV.   
--
lldpXdot1dcbxLocETSReco OBJECT IDENTIFIER ::=
  { lldpXdot1dcbxLocalData 2 }

lldpXdot1dcbxLocETSRecoTrafficClassBandwidthTable OBJECT-TYPE
    SYNTAX        SEQUENCE OF 
        LldpXdot1dcbxLocETSRecoTrafficClassBandwidthEntry
    MAX-ACCESS    not-accessible
    STATUS        current
    DESCRIPTION
        "This table contains one row per traffic class.  The 
        entry in each row indicates the traffic class to  
        which the bandwidth is assigned."
    ::= { lldpXdot1dcbxLocETSReco 1 }

lldpXdot1dcbxLocETSRecoTrafficClassBandwidthEntry OBJECT-TYPE
    SYNTAX        LldpXdot1dcbxLocETSRecoTrafficClassBandwidthEntry
    MAX-ACCESS    not-accessible
    STATUS        current
    DESCRIPTION
        "Indicates a traffic class to Bandwidth assignment."
    INDEX        { 
                lldpV2LocPortIfIndex,
                lldpXdot1dcbxLocETSRecoTrafficClass 
    }
    ::= { lldpXdot1dcbxLocETSRecoTrafficClassBandwidthTable 1 }

LldpXdot1dcbxLocETSRecoTrafficClassBandwidthEntry ::= SEQUENCE {
    lldpXdot1dcbxLocETSRecoTrafficClass 
        LldpXdot1dcbxTrafficClassValue,
    lldpXdot1dcbxLocETSRecoTrafficClassBandwidth
        LldpXdot1dcbxTrafficClassBandwidthValue
}

lldpXdot1dcbxLocETSRecoTrafficClass OBJECT-TYPE
    SYNTAX        LldpXdot1dcbxTrafficClassValue
    MAX-ACCESS    not-accessible
    STATUS        current
    DESCRIPTION
        "Indicates the traffic class to
        which this bandwidth applies"
    REFERENCE
        "D.2.10.3"
    ::= { lldpXdot1dcbxLocETSRecoTrafficClassBandwidthEntry 1 }

lldpXdot1dcbxLocETSRecoTrafficClassBandwidth OBJECT-TYPE
    SYNTAX        LldpXdot1dcbxTrafficClassBandwidthValue
    MAX-ACCESS    read-only
    STATUS        current
    DESCRIPTION
        "Indicates the bandwidth assigned to this traffic class."
    REFERENCE
        "D.2.10.4"
    ::= { lldpXdot1dcbxLocETSRecoTrafficClassBandwidthEntry 2 }

lldpXdot1dcbxLocETSRecoTrafficSelectionAlgorithmTable OBJECT-TYPE
    SYNTAX        SEQUENCE OF 
        LldpXdot1dcbxLocETSRecoTrafficSelectionAlgorithmEntry
    MAX-ACCESS    not-accessible
    STATUS        current
    DESCRIPTION
        "This table contains one row per priority.  The entry in each
        row indicates the traffic selction algorithm to be used
        by the traffic class."
    ::= { lldpXdot1dcbxLocETSReco 2 }

lldpXdot1dcbxLocETSRecoTrafficSelectionAlgorithmEntry OBJECT-TYPE
    SYNTAX        LldpXdot1dcbxLocETSRecoTrafficSelectionAlgorithmEntry
    MAX-ACCESS    not-accessible
    STATUS        current
    DESCRIPTION
        "Indicates a priority to traffic selection algorithm
         assignment."
    INDEX        { 
                lldpV2LocPortIfIndex,
                lldpXdot1dcbxLocETSRecoTSATrafficClass
    }
    ::= { lldpXdot1dcbxLocETSRecoTrafficSelectionAlgorithmTable 1 }

LldpXdot1dcbxLocETSRecoTrafficSelectionAlgorithmEntry ::= SEQUENCE {
    lldpXdot1dcbxLocETSRecoTSATrafficClass    
        LldpXdot1dcbxTrafficClassValue,
    lldpXdot1dcbxLocETSRecoTrafficSelectionAlgorithm 
        LldpXdot1dcbxTrafficSelectionAlgorithm
}

lldpXdot1dcbxLocETSRecoTSATrafficClass OBJECT-TYPE
    SYNTAX        LldpXdot1dcbxTrafficClassValue
    MAX-ACCESS    not-accessible
    STATUS        current
    DESCRIPTION
        "Indicates the traffic class that is assigned to a traffic 
        selection algorithm."
    REFERENCE
        "D.2.10.5"
    ::= { lldpXdot1dcbxLocETSRecoTrafficSelectionAlgorithmEntry 1 }

lldpXdot1dcbxLocETSRecoTrafficSelectionAlgorithm OBJECT-TYPE
    SYNTAX        LldpXdot1dcbxTrafficSelectionAlgorithm
    MAX-ACCESS    read-only
    STATUS        current
    DESCRIPTION
        "Indicates the Traffic Selection Algorithm to which this
        traffic class is to be assigned."
    REFERENCE
        "D.2.10.5"
    ::= { lldpXdot1dcbxLocETSRecoTrafficSelectionAlgorithmEntry 2 }

--
-- lldpXdot1dcbxLocPFCTable - Contains the information for the PFC
-- Configuration TLV.   
--
lldpXdot1dcbxLocPFC OBJECT IDENTIFIER ::= { lldpXdot1dcbxLocalData 3 }

lldpXdot1dcbxLocPFCBasicTable OBJECT-TYPE
    SYNTAX        SEQUENCE OF LldpXdot1dcbxLocPFCBasicEntry
    MAX-ACCESS    not-accessible
    STATUS        current
    DESCRIPTION
        "This table contains one row per port for the IEEE 802.1
        organizationally defined LLDP PFC TLV on the local
        system known to this agent"
    ::= { lldpXdot1dcbxLocPFC 1 }

lldpXdot1dcbxLocPFCBasicEntry OBJECT-TYPE
    SYNTAX        LldpXdot1dcbxLocPFCBasicEntry
    MAX-ACCESS    not-accessible
    STATUS        current
    DESCRIPTION
        "Information about the IEEE 802.1 organizational defined
        PFC TLV LLDP extension."
    INDEX         { lldpV2LocPortIfIndex }
    ::= { lldpXdot1dcbxLocPFCBasicTable 1 }

LldpXdot1dcbxLocPFCBasicEntry ::= SEQUENCE {
    lldpXdot1dcbxLocPFCWilling    TruthValue,
    lldpXdot1dcbxLocPFCMBC           TruthValue,
    lldpXdot1dcbxLocPFCCap        LldpXdot1dcbxSupportedCapacity
}

lldpXdot1dcbxLocPFCWilling OBJECT-TYPE
    SYNTAX        TruthValue
    MAX-ACCESS    read-only
    STATUS        current
    DESCRIPTION
        "Indicates if the local system is willing to accept the 
        PFC configuration of the remote system."
    REFERENCE
        "D.2.11.3"
    ::= { lldpXdot1dcbxLocPFCBasicEntry 1}

lldpXdot1dcbxLocPFCMBC OBJECT-TYPE
    SYNTAX        TruthValue
    MAX-ACCESS    read-only
    STATUS        current
    DESCRIPTION
        "Indicates if the local system is capable of bypassing
        MACsec processing when MACsec is disabled."
    REFERENCE
        "D.2.11.4"
    ::= { lldpXdot1dcbxLocPFCBasicEntry 2}
    
lldpXdot1dcbxLocPFCCap OBJECT-TYPE
    SYNTAX        LldpXdot1dcbxSupportedCapacity
    MAX-ACCESS    read-only
    STATUS        current
    DESCRIPTION
        "Indicates the number of traffic classes on the local device
        that may simultaneously have PFC enabled."
    REFERENCE
        "D.2.11.5"
    ::= { lldpXdot1dcbxLocPFCBasicEntry 3}

lldpXdot1dcbxLocPFCEnableTable OBJECT-TYPE
    SYNTAX        SEQUENCE OF LldpXdot1dcbxLocPFCEnableEntry
    MAX-ACCESS    not-accessible
    STATUS        current
    DESCRIPTION
        "This table contains eight entries, one entry per priority,
        indicating if PFC is enabled on the corresponding priority."
    ::= { lldpXdot1dcbxLocPFC 2 }

lldpXdot1dcbxLocPFCEnableEntry OBJECT-TYPE
    SYNTAX        LldpXdot1dcbxLocPFCEnableEntry
    MAX-ACCESS    not-accessible
    STATUS        current
    DESCRIPTION
        "Each entry indicates if PFC is enabled on the 
        correponding priority"
    INDEX { 
        lldpV2LocPortIfIndex,
        lldpXdot1dcbxLocPFCEnablePriority 
    }
    ::= { lldpXdot1dcbxLocPFCEnableTable 1 }

LldpXdot1dcbxLocPFCEnableEntry ::= SEQUENCE {
    lldpXdot1dcbxLocPFCEnablePriority   IEEE8021PriorityValue,
    lldpXdot1dcbxLocPFCEnableEnabled    TruthValue
}

lldpXdot1dcbxLocPFCEnablePriority OBJECT-TYPE
    SYNTAX        IEEE8021PriorityValue
    MAX-ACCESS    not-accessible
    STATUS        current
    DESCRIPTION
        "Prioity for which PFC is enabled / disabled"
    ::= { lldpXdot1dcbxLocPFCEnableEntry 1 }

lldpXdot1dcbxLocPFCEnableEnabled OBJECT-TYPE
    SYNTAX        TruthValue
    MAX-ACCESS    read-only
    STATUS        current
    DESCRIPTION
        "Indicates if PFC is enabled on the corresponding priority"
    REFERENCE
        "D.2.11.6"
    ::= { lldpXdot1dcbxLocPFCEnableEntry 2 }
--
-- lldpXdot1dcbxLocApplicationPriorityTable - Contains the information 
-- for the Application Priority TLV. 
--

lldpXdot1dcbxLocApplicationPriorityAppTable OBJECT-TYPE
    SYNTAX        SEQUENCE OF 
        LldpXdot1dcbxLocApplicationPriorityAppEntry
    MAX-ACCESS    not-accessible
    STATUS        current
    DESCRIPTION
        "Table containing entries indicating the priorty to be used
        for a given application"
    ::= { lldpXdot1dcbxLocalData 4 }

lldpXdot1dcbxLocApplicationPriorityAppEntry OBJECT-TYPE
    SYNTAX        LldpXdot1dcbxLocApplicationPriorityAppEntry
    MAX-ACCESS    not-accessible
    STATUS        current
    DESCRIPTION 
        "Entry that indicates the priority to be used for a
        given application."
    INDEX         {
                  lldpV2LocPortIfIndex,
                  lldpXdot1dcbxLocApplicationPriorityAESelector,
                  lldpXdot1dcbxLocApplicationPriorityAEProtocol
    }
    ::= { lldpXdot1dcbxLocApplicationPriorityAppTable 1 }

LldpXdot1dcbxLocApplicationPriorityAppEntry ::= SEQUENCE {
    lldpXdot1dcbxLocApplicationPriorityAESelector    
        LldpXdot1dcbxAppSelector,
    lldpXdot1dcbxLocApplicationPriorityAEProtocol    
        LldpXdot1dcbxAppProtocol,
    lldpXdot1dcbxLocApplicationPriorityAEPriority    
        IEEE8021PriorityValue
}

lldpXdot1dcbxLocApplicationPriorityAESelector OBJECT-TYPE
    SYNTAX        LldpXdot1dcbxAppSelector
    MAX-ACCESS    not-accessible
    STATUS        current
    DESCRIPTION 
        "Indicates the contents of the protocol object
        (lldpXdot1dcbxLocApplicationPriorityAEProtocol)
        1: Ethertype
        2: Well Known Port number over TCP, or SCTP
        3: Well Known Port number over UDP, or DCCP
        4: Well Known Port number over TCP, SCTP, UDP, and DCCP"
    REFERENCE
        "D.2.12.3"
    ::= { lldpXdot1dcbxLocApplicationPriorityAppEntry 1 }

lldpXdot1dcbxLocApplicationPriorityAEProtocol OBJECT-TYPE
    SYNTAX        LldpXdot1dcbxAppProtocol
    MAX-ACCESS    not-accessible
    STATUS        current
    DESCRIPTION
        "The protocol indicator of the type indicated by
        lldpXdot1dcbxLocApplicationPriorityAESelector."
    REFERENCE
        "D.2.12.3"
    ::= { lldpXdot1dcbxLocApplicationPriorityAppEntry 2 }

lldpXdot1dcbxLocApplicationPriorityAEPriority OBJECT-TYPE
    SYNTAX        IEEE8021PriorityValue
    MAX-ACCESS    read-only
    STATUS        current
    DESCRIPTION
        "The priority code point that should be used in
        frames transporting the protocol indicated by
        lldpXdot1dcbxLocApplicationPriorityAESelector and
        lldpXdot1dcbxLocApplicationPriorityAEProtocol"
    REFERENCE
        "D.2.12.3"
    ::= { lldpXdot1dcbxLocApplicationPriorityAppEntry 3 }


------------------------------------------------------------------------
-- IEEE 802.1 - DCBX Remote System Information
------------------------------------------------------------------------

--
-- lldpXdot1dcbxRemETSConfigurationTable - Contains the information
-- for the remote system ETS Configuration TLV.   
--
lldpXdot1dcbxRemETSConfiguration OBJECT IDENTIFIER
    ::= { lldpXdot1dcbxRemoteData 1 }

lldpXdot1dcbxRemETSBasicConfigurationTable OBJECT-TYPE
    SYNTAX        SEQUENCE OF LldpXdot1dcbxRemETSBasicConfigurationEntry
    MAX-ACCESS    not-accessible
    STATUS        current
    DESCRIPTION
        "This table contains one row per port for the IEEE 802.1
        organizationally defined LLDP ETS Configuration TLV on
        the local system known to this agent"
    ::= { lldpXdot1dcbxRemETSConfiguration 1 }

lldpXdot1dcbxRemETSBasicConfigurationEntry OBJECT-TYPE
    SYNTAX        LldpXdot1dcbxRemETSBasicConfigurationEntry
    MAX-ACCESS    not-accessible
    STATUS        current
    DESCRIPTION
        "Information about the IEEE 802.1 organizational defined
        ETS Configuration TLV LLDP extension."
    INDEX         { 
                  lldpV2RemTimeMark,
                  lldpV2RemLocalIfIndex,
                  lldpV2RemLocalDestMACAddress,
                  lldpV2RemIndex
    }
    ::= { lldpXdot1dcbxRemETSBasicConfigurationTable 1 }

LldpXdot1dcbxRemETSBasicConfigurationEntry ::= SEQUENCE {
    lldpXdot1dcbxRemETSConCreditBasedShaperSupport     TruthValue,
    lldpXdot1dcbxRemETSConTrafficClassesSupported
        LldpXdot1dcbxSupportedCapacity,
    lldpXdot1dcbxRemETSConWilling    TruthValue
}

lldpXdot1dcbxRemETSConCreditBasedShaperSupport OBJECT-TYPE
    SYNTAX        TruthValue
    MAX-ACCESS    read-only
    STATUS        current
    DESCRIPTION
        "Indicates if the credit-based shaper Traffic Selection
        algorithm is supported on the remote system."
    REFERENCE
        "D.2.9.4"
    ::= { lldpXdot1dcbxRemETSBasicConfigurationEntry 1 }

lldpXdot1dcbxRemETSConTrafficClassesSupported OBJECT-TYPE
    SYNTAX        LldpXdot1dcbxSupportedCapacity
    MAX-ACCESS    read-only
    STATUS        current
    DESCRIPTION
        "Indicates the number of traffic classes supported."
    REFERENCE
        "D.2.9.5"
    ::= { lldpXdot1dcbxRemETSBasicConfigurationEntry 2 }

lldpXdot1dcbxRemETSConWilling OBJECT-TYPE
    SYNTAX        TruthValue
    MAX-ACCESS    read-only
    STATUS        current
    DESCRIPTION
        "Indicates if the remote system is willing to accept the
        ETS configuration recommended by the remote system."
    REFERENCE
        "D.2.9.3"
    ::= { lldpXdot1dcbxRemETSBasicConfigurationEntry 3 }

lldpXdot1dcbxRemETSConPriorityAssignmentTable OBJECT-TYPE
    SYNTAX        SEQUENCE OF 
        LldpXdot1dcbxRemETSConPriorityAssignmentEntry
    MAX-ACCESS    not-accessible
    STATUS        current
    DESCRIPTION
        "This table contains one row per priority.  The entry in 
        each row indicates the traffic class to which the 
        priority is assigned."
    ::= { lldpXdot1dcbxRemETSConfiguration 2 }

lldpXdot1dcbxRemETSConPriorityAssignmentEntry OBJECT-TYPE
    SYNTAX        LldpXdot1dcbxRemETSConPriorityAssignmentEntry
    MAX-ACCESS    not-accessible
    STATUS        current
    DESCRIPTION
        "Indicates a priority to traffic class assignment."
    INDEX        { 
                lldpV2RemTimeMark,
                lldpV2RemLocalIfIndex,
                lldpV2RemLocalDestMACAddress,
                lldpV2RemIndex,
                lldpXdot1dcbxRemETSConPriority 
    }
    ::= { lldpXdot1dcbxRemETSConPriorityAssignmentTable 1 }

LldpXdot1dcbxRemETSConPriorityAssignmentEntry ::= SEQUENCE {
    lldpXdot1dcbxRemETSConPriority      IEEE8021PriorityValue,
    lldpXdot1dcbxRemETSConPriTrafficClass 
        LldpXdot1dcbxTrafficClassValue
}

lldpXdot1dcbxRemETSConPriority OBJECT-TYPE
    SYNTAX        IEEE8021PriorityValue
    MAX-ACCESS    not-accessible
    STATUS        current
    DESCRIPTION
        "Indicates the priority that is assigned to a traffic
        class."
    REFERENCE
        "D.2.9.6"
    ::= { lldpXdot1dcbxRemETSConPriorityAssignmentEntry 1 }

lldpXdot1dcbxRemETSConPriTrafficClass OBJECT-TYPE
    SYNTAX        LldpXdot1dcbxTrafficClassValue
    MAX-ACCESS    read-only
    STATUS        current
    DESCRIPTION
        "Indicates the traffic class to which this priority is 
        to be assigned."
    REFERENCE
        "D.2.9.6"
    ::= { lldpXdot1dcbxRemETSConPriorityAssignmentEntry 2 }

lldpXdot1dcbxRemETSConTrafficClassBandwidthTable OBJECT-TYPE
    SYNTAX        SEQUENCE OF 
        LldpXdot1dcbxRemETSConTrafficClassBandwidthEntry
    MAX-ACCESS    not-accessible
    STATUS        current
    DESCRIPTION
        "This table contains one row per traffic class.  The 
        entry in each row indicates the traffic class to  
        which the bandwidth is assigned."
    ::= { lldpXdot1dcbxRemETSConfiguration 3 }

lldpXdot1dcbxRemETSConTrafficClassBandwidthEntry OBJECT-TYPE
    SYNTAX        LldpXdot1dcbxRemETSConTrafficClassBandwidthEntry
    MAX-ACCESS    not-accessible
    STATUS        current
    DESCRIPTION
        "Indicates a traffic class to Bandwidth assignment."
    INDEX        { 
                lldpV2RemTimeMark,
                lldpV2RemLocalIfIndex,
                lldpV2RemLocalDestMACAddress,
                lldpV2RemIndex,
                lldpXdot1dcbxRemETSConTrafficClass 
    }
    ::= { lldpXdot1dcbxRemETSConTrafficClassBandwidthTable 1 }

LldpXdot1dcbxRemETSConTrafficClassBandwidthEntry ::= SEQUENCE {
    lldpXdot1dcbxRemETSConTrafficClass 
        LldpXdot1dcbxTrafficClassValue,
    lldpXdot1dcbxRemETSConTrafficClassBandwidth
        LldpXdot1dcbxTrafficClassBandwidthValue
}

lldpXdot1dcbxRemETSConTrafficClass OBJECT-TYPE
    SYNTAX        LldpXdot1dcbxTrafficClassValue
    MAX-ACCESS    not-accessible
    STATUS        current
    DESCRIPTION
        "Indicates the traffic class to
        which this bandwidth applies"
    REFERENCE
        "D.2.9.7"
    ::= { lldpXdot1dcbxRemETSConTrafficClassBandwidthEntry 1 }

lldpXdot1dcbxRemETSConTrafficClassBandwidth OBJECT-TYPE
    SYNTAX        LldpXdot1dcbxTrafficClassBandwidthValue
    MAX-ACCESS    read-only
    STATUS        current
    DESCRIPTION
        "Indicates the bandwidth assigned to this traffic class."
    REFERENCE
        "D.2.9.7"
    ::= { lldpXdot1dcbxRemETSConTrafficClassBandwidthEntry 2 }


lldpXdot1dcbxRemETSConTrafficSelectionAlgorithmTable OBJECT-TYPE
    SYNTAX        SEQUENCE OF 
        LldpXdot1dcbxRemETSConTrafficSelectionAlgorithmEntry
    MAX-ACCESS    not-accessible
    STATUS        current
    DESCRIPTION
        "This table contains one row per traffic class.  The 
        entry in each row indicates the traffic selction
        algorithm to be used by the traffic class."
    ::= { lldpXdot1dcbxRemETSConfiguration 4 }

lldpXdot1dcbxRemETSConTrafficSelectionAlgorithmEntry OBJECT-TYPE
    SYNTAX        LldpXdot1dcbxRemETSConTrafficSelectionAlgorithmEntry
    MAX-ACCESS    not-accessible
    STATUS        current
    DESCRIPTION
        "Indicates a traffic class to traffic selection
        algorithm assignment."
    INDEX       { 
                lldpV2RemTimeMark,
                lldpV2RemLocalIfIndex,
                lldpV2RemLocalDestMACAddress,
                lldpV2RemIndex,
                lldpXdot1dcbxRemETSConTSATrafficClass
    }
    ::= { lldpXdot1dcbxRemETSConTrafficSelectionAlgorithmTable 1 }

LldpXdot1dcbxRemETSConTrafficSelectionAlgorithmEntry ::= SEQUENCE {
    lldpXdot1dcbxRemETSConTSATrafficClass
        LldpXdot1dcbxTrafficClassValue,
    lldpXdot1dcbxRemETSConTrafficSelectionAlgorithm 
        LldpXdot1dcbxTrafficSelectionAlgorithm
}

lldpXdot1dcbxRemETSConTSATrafficClass OBJECT-TYPE
    SYNTAX        LldpXdot1dcbxTrafficClassValue
    MAX-ACCESS    not-accessible
    STATUS        current
    DESCRIPTION
        "Indicates the traffic class that is assigned to a traffic 
        selection algorithm."
    REFERENCE
        "D.2.9.8"
    ::= { lldpXdot1dcbxRemETSConTrafficSelectionAlgorithmEntry 1 }

lldpXdot1dcbxRemETSConTrafficSelectionAlgorithm OBJECT-TYPE
    SYNTAX        LldpXdot1dcbxTrafficSelectionAlgorithm
    MAX-ACCESS    read-only
    STATUS        current
    DESCRIPTION
        "Indicates the Traffic Selection Algorithm to which this
        traffic class is to be assigned."
    REFERENCE
        "D.2.9.8"
    ::= { lldpXdot1dcbxRemETSConTrafficSelectionAlgorithmEntry 2 }

--
-- lldpXdot1dcbxRemETSRecommendationTable - Contains the information for
-- the remote system ETS Recommendation TLV.   
--
lldpXdot1dcbxRemETSReco OBJECT IDENTIFIER ::=
  { lldpXdot1dcbxRemoteData 2 }

lldpXdot1dcbxRemETSRecoTrafficClassBandwidthTable OBJECT-TYPE
    SYNTAX        SEQUENCE OF 
        LldpXdot1dcbxRemETSRecoTrafficClassBandwidthEntry
    MAX-ACCESS    not-accessible
    STATUS        current
    DESCRIPTION
        "This table contains one row per traffic class.  The 
        entry in each row indicates the traffic class to  
        which the bandwidth is assigned."
    ::= { lldpXdot1dcbxRemETSReco 1 }

lldpXdot1dcbxRemETSRecoTrafficClassBandwidthEntry OBJECT-TYPE
    SYNTAX        LldpXdot1dcbxRemETSRecoTrafficClassBandwidthEntry
    MAX-ACCESS    not-accessible
    STATUS        current
    DESCRIPTION
        "Indicates a traffic class to Bandwidth assignment."
    INDEX        { 
                lldpV2RemTimeMark,
                lldpV2RemLocalIfIndex,
                lldpV2RemLocalDestMACAddress,
                lldpV2RemIndex,
                lldpXdot1dcbxRemETSRecoTrafficClass 
    }
    ::= { lldpXdot1dcbxRemETSRecoTrafficClassBandwidthTable 1 }

LldpXdot1dcbxRemETSRecoTrafficClassBandwidthEntry ::= SEQUENCE {
    lldpXdot1dcbxRemETSRecoTrafficClass 
        LldpXdot1dcbxTrafficClassValue,
    lldpXdot1dcbxRemETSRecoTrafficClassBandwidth
        LldpXdot1dcbxTrafficClassBandwidthValue
}

lldpXdot1dcbxRemETSRecoTrafficClass OBJECT-TYPE
    SYNTAX        LldpXdot1dcbxTrafficClassValue
    MAX-ACCESS    not-accessible
    STATUS        current
    DESCRIPTION
        "Indicates the traffic class to
        which this bandwidth applies"
    REFERENCE
        "D.2.10.4"
    ::= { lldpXdot1dcbxRemETSRecoTrafficClassBandwidthEntry 1 }

lldpXdot1dcbxRemETSRecoTrafficClassBandwidth OBJECT-TYPE
    SYNTAX        LldpXdot1dcbxTrafficClassBandwidthValue
    MAX-ACCESS    read-only
    STATUS        current
    DESCRIPTION
        "Indicates the bandwidth assigned to this traffic class."
    REFERENCE
        "D.2.10.4"
    ::= { lldpXdot1dcbxRemETSRecoTrafficClassBandwidthEntry 2 }

lldpXdot1dcbxRemETSRecoTrafficSelectionAlgorithmTable OBJECT-TYPE
    SYNTAX        SEQUENCE OF 
        LldpXdot1dcbxRemETSRecoTrafficSelectionAlgorithmEntry
    MAX-ACCESS    not-accessible
    STATUS        current
    DESCRIPTION
        "This table contains one row per traffic class.  The
        entry in each row indicates the traffic selction 
        algorithm to be used by the priority."
    ::= { lldpXdot1dcbxRemETSReco 2 }

lldpXdot1dcbxRemETSRecoTrafficSelectionAlgorithmEntry OBJECT-TYPE
    SYNTAX        LldpXdot1dcbxRemETSRecoTrafficSelectionAlgorithmEntry
    MAX-ACCESS    not-accessible
    STATUS        current
    DESCRIPTION
        "Indicates a priority to traffic selection algorithm
         assignment."
    INDEX        { 
                  lldpV2RemTimeMark,
                  lldpV2RemLocalIfIndex,
                  lldpV2RemLocalDestMACAddress,
                  lldpV2RemIndex,
                  lldpXdot1dcbxRemETSRecoTSATrafficClass 
    }
    ::= { lldpXdot1dcbxRemETSRecoTrafficSelectionAlgorithmTable 1 }

LldpXdot1dcbxRemETSRecoTrafficSelectionAlgorithmEntry ::= SEQUENCE {
    lldpXdot1dcbxRemETSRecoTSATrafficClass
        LldpXdot1dcbxTrafficClassValue,
    lldpXdot1dcbxRemETSRecoTrafficSelectionAlgorithm 
        LldpXdot1dcbxTrafficSelectionAlgorithm
}

lldpXdot1dcbxRemETSRecoTSATrafficClass OBJECT-TYPE
    SYNTAX        LldpXdot1dcbxTrafficClassValue
    MAX-ACCESS    not-accessible
    STATUS        current
    DESCRIPTION
        "Indicates the traffic class that is assigned to a traffic 
        selection algorithm."
    REFERENCE
        "D.2.10.5"
    ::= { lldpXdot1dcbxRemETSRecoTrafficSelectionAlgorithmEntry 1 }

lldpXdot1dcbxRemETSRecoTrafficSelectionAlgorithm OBJECT-TYPE
    SYNTAX        LldpXdot1dcbxTrafficSelectionAlgorithm
    MAX-ACCESS    read-only
    STATUS        current
    DESCRIPTION
        "Indicates the Traffic Selection Algorithm to which this
        traffic class is to be assigned."
    REFERENCE
        "D.2.10.5"
    ::= { lldpXdot1dcbxRemETSRecoTrafficSelectionAlgorithmEntry 2 }

--
-- lldpXdot1dcbxRemPFCTable - Contains the information for the remote
-- system PFC TLV.   
--
lldpXdot1dcbxRemPFC OBJECT IDENTIFIER ::= { lldpXdot1dcbxRemoteData 3 }

lldpXdot1dcbxRemPFCBasicTable OBJECT-TYPE
    SYNTAX        SEQUENCE OF LldpXdot1dcbxRemPFCBasicEntry
    MAX-ACCESS    not-accessible
    STATUS        current
    DESCRIPTION
        "This table contains one row per port for the IEEE 802.1
        organizationally defined LLDP PFC TLV on the local
        system known to this agent"
    ::= { lldpXdot1dcbxRemPFC 1 }

lldpXdot1dcbxRemPFCBasicEntry OBJECT-TYPE
    SYNTAX        LldpXdot1dcbxRemPFCBasicEntry
    MAX-ACCESS    not-accessible
    STATUS        current
    DESCRIPTION
        "Information about the IEEE 802.1 organizational defined
        PFC TLV LLDP extension."
    INDEX         {             
                  lldpV2RemTimeMark,
                  lldpV2RemLocalIfIndex,
                  lldpV2RemLocalDestMACAddress,
                  lldpV2RemIndex
    }
    ::= { lldpXdot1dcbxRemPFCBasicTable 1 }

LldpXdot1dcbxRemPFCBasicEntry ::= SEQUENCE {
    lldpXdot1dcbxRemPFCWilling    TruthValue,
    lldpXdot1dcbxRemPFCMBC        TruthValue,
    lldpXdot1dcbxRemPFCCap        LldpXdot1dcbxSupportedCapacity
}

lldpXdot1dcbxRemPFCWilling OBJECT-TYPE
    SYNTAX        TruthValue
    MAX-ACCESS    read-only
    STATUS        current
    DESCRIPTION
        "Indicates if the remote system is willing to accept the 
        PFC configuration of the local system."
    REFERENCE
        "D.2.11.3"
    ::= { lldpXdot1dcbxRemPFCBasicEntry 1}

lldpXdot1dcbxRemPFCMBC OBJECT-TYPE
    SYNTAX        TruthValue
    MAX-ACCESS    read-only
    STATUS        current
    DESCRIPTION
        "Indicates if the remote system is capable of bypassing
        MACsec processing when MACsec is disabled."
    REFERENCE
        "D.2.11.4"
    ::= { lldpXdot1dcbxRemPFCBasicEntry 2}
    
lldpXdot1dcbxRemPFCCap OBJECT-TYPE
    SYNTAX         LldpXdot1dcbxSupportedCapacity
    MAX-ACCESS     read-only
    STATUS         current
    DESCRIPTION
        "Indicates the number of traffic classes on the remote device
        that may simultaneously have PFC enabled."
    REFERENCE
        "D.2.11.5"
    ::= { lldpXdot1dcbxRemPFCBasicEntry 3}

lldpXdot1dcbxRemPFCEnableTable OBJECT-TYPE
    SYNTAX        SEQUENCE OF LldpXdot1dcbxRemPFCEnableEntry
    MAX-ACCESS    not-accessible
    STATUS        current
    DESCRIPTION
        "This table contains eight entries, one entry per priority,
        indicating if PFC is enabled on the corresponding priority."
    ::= { lldpXdot1dcbxRemPFC 2 }

lldpXdot1dcbxRemPFCEnableEntry OBJECT-TYPE
    SYNTAX        LldpXdot1dcbxRemPFCEnableEntry
    MAX-ACCESS    not-accessible
    STATUS        current
    DESCRIPTION
        "Each entry indicates if PFC is enabled on the 
        correponding priority"
    INDEX         { 
                  lldpV2RemTimeMark,
                  lldpV2RemLocalIfIndex,
                  lldpV2RemLocalDestMACAddress,
                  lldpV2RemIndex,
                  lldpXdot1dcbxRemPFCEnablePriority 
    }
    ::= { lldpXdot1dcbxRemPFCEnableTable 1 }

LldpXdot1dcbxRemPFCEnableEntry ::= SEQUENCE {
    lldpXdot1dcbxRemPFCEnablePriority   IEEE8021PriorityValue,
    lldpXdot1dcbxRemPFCEnableEnabled    TruthValue
}

lldpXdot1dcbxRemPFCEnablePriority OBJECT-TYPE
    SYNTAX        IEEE8021PriorityValue
    MAX-ACCESS    not-accessible
    STATUS        current
    DESCRIPTION
        "Prioity for which PFC is enabled / disabled"
    ::= { lldpXdot1dcbxRemPFCEnableEntry 1 }

lldpXdot1dcbxRemPFCEnableEnabled OBJECT-TYPE
    SYNTAX        TruthValue
    MAX-ACCESS    read-only
    STATUS        current
    DESCRIPTION
        "Indicates if PFC is enabled on the corresponding priority"
    REFERENCE
        "D.2.11.6"
    ::= { lldpXdot1dcbxRemPFCEnableEntry 2 }

--
-- lldpXdot1dcbxRemApplicationPriorityTable - Contains the information 
-- for the remote system Application Priority TLV.   
--

lldpXdot1dcbxRemApplicationPriorityAppTable OBJECT-TYPE
    SYNTAX        SEQUENCE OF 
        LldpXdot1dcbxRemApplicationPriorityAppEntry
    MAX-ACCESS    not-accessible
    STATUS        current
    DESCRIPTION
        "Table containing entries indicating the priorty to be used
        for a given application"
    ::= { lldpXdot1dcbxRemoteData 4 }

lldpXdot1dcbxRemApplicationPriorityAppEntry OBJECT-TYPE
    SYNTAX        LldpXdot1dcbxRemApplicationPriorityAppEntry
    MAX-ACCESS    not-accessible
    STATUS        current
    DESCRIPTION 
        "Entry that indicates the priority to be used for a
        given application."
    INDEX         {
                  lldpV2RemTimeMark,
                  lldpV2RemLocalIfIndex,
                  lldpV2RemLocalDestMACAddress,
                  lldpV2RemIndex,
                  lldpXdot1dcbxRemApplicationPriorityAESelector,
                  lldpXdot1dcbxRemApplicationPriorityAEProtocol
    }
    ::= { lldpXdot1dcbxRemApplicationPriorityAppTable 1 }

LldpXdot1dcbxRemApplicationPriorityAppEntry ::= SEQUENCE {
    lldpXdot1dcbxRemApplicationPriorityAESelector    
        LldpXdot1dcbxAppSelector,
    lldpXdot1dcbxRemApplicationPriorityAEProtocol    
        LldpXdot1dcbxAppProtocol,
    lldpXdot1dcbxRemApplicationPriorityAEPriority    
        IEEE8021PriorityValue
}

lldpXdot1dcbxRemApplicationPriorityAESelector OBJECT-TYPE
    SYNTAX        LldpXdot1dcbxAppSelector
    MAX-ACCESS    not-accessible
    STATUS        current
    DESCRIPTION 
        "Indicates the contents of the protocol object
        (lldpXdot1dcbxRemApplicationPriorityAEProtocol)
        1: Ethertype
        2: Well Known Port number over TCP, or SCTP
        3: Well Known Port number over UDP, or DCCP
        4: Well Known Port number over TCP, SCTP, UDP, and DCCP"
    REFERENCE
        "D.2.12.3"
    ::= { lldpXdot1dcbxRemApplicationPriorityAppEntry 1 }

lldpXdot1dcbxRemApplicationPriorityAEProtocol OBJECT-TYPE
    SYNTAX        LldpXdot1dcbxAppProtocol
    MAX-ACCESS    not-accessible
    STATUS        current
    DESCRIPTION
        "The protocol indicator of the type indicated by
        lldpXdot1dcbxRemApplicationPriorityAESelector."
    REFERENCE
        "D.2.12.3"
    ::= { lldpXdot1dcbxRemApplicationPriorityAppEntry 2 }

lldpXdot1dcbxRemApplicationPriorityAEPriority OBJECT-TYPE
    SYNTAX        IEEE8021PriorityValue
    MAX-ACCESS    read-only
    STATUS        current
    DESCRIPTION
        "The priority code point that should be used in
        frames transporting the protocol indicated by
        lldpXdot1dcbxRemApplicationPriorityAESelector and
        lldpXdot1dcbxRemApplicationPriorityAEProtocol"
    REFERENCE
        "D.2.12.3"
    ::= { lldpXdot1dcbxRemApplicationPriorityAppEntry 3 }

------------------------------------------------------------------------
-- IEEE 802.1 - DCBX Administrative Information
------------------------------------------------------------------------

--
-- lldpXdot1dcbxAdminETSConfigurationTable - Contains the information
-- for the ETS Configuration TLV.   
--
lldpXdot1dcbxAdminETSConfiguration OBJECT IDENTIFIER
    ::= { lldpXdot1dcbxAdminData 1 }

lldpXdot1dcbxAdminETSBasicConfigurationTable OBJECT-TYPE
    SYNTAX        SEQUENCE OF 
        LldpXdot1dcbxAdminETSBasicConfigurationEntry
    MAX-ACCESS    not-accessible
    STATUS        current
    DESCRIPTION
        "This table contains one row per port for the IEEE 802.1
        organizationally defined LLDP ETS Configuration TLV
        on the local system known to this agent"
    ::= { lldpXdot1dcbxAdminETSConfiguration 1 }

lldpXdot1dcbxAdminETSBasicConfigurationEntry OBJECT-TYPE
    SYNTAX        LldpXdot1dcbxAdminETSBasicConfigurationEntry
    MAX-ACCESS    not-accessible
    STATUS        current
    DESCRIPTION
        "Information about the IEEE 802.1 organizational defined
        ETS Configuration TLV LLDP extension."
    INDEX         { lldpV2LocPortIfIndex }
    ::= { lldpXdot1dcbxAdminETSBasicConfigurationTable 1 }

LldpXdot1dcbxAdminETSBasicConfigurationEntry ::= SEQUENCE {
    lldpXdot1dcbxAdminETSConCreditBasedShaperSupport      TruthValue,
    lldpXdot1dcbxAdminETSConTrafficClassesSupported
        LldpXdot1dcbxSupportedCapacity,
    lldpXdot1dcbxAdminETSConWilling    TruthValue
}

lldpXdot1dcbxAdminETSConCreditBasedShaperSupport OBJECT-TYPE
    SYNTAX        TruthValue
    MAX-ACCESS    read-only
    STATUS        current
    DESCRIPTION
        "Indicates support for the credit-based shaper Traffic
        Selection Algorithm."
    REFERENCE
        "D.2.9.4"
    ::= { lldpXdot1dcbxAdminETSBasicConfigurationEntry 1 }

lldpXdot1dcbxAdminETSConTrafficClassesSupported OBJECT-TYPE
    SYNTAX        LldpXdot1dcbxSupportedCapacity
    MAX-ACCESS    read-only
    STATUS        current
    DESCRIPTION
        "Indicates the number of traffic classes supported."
    REFERENCE
        "D.2.9.5"
    ::= { lldpXdot1dcbxAdminETSBasicConfigurationEntry 2 }

lldpXdot1dcbxAdminETSConWilling OBJECT-TYPE
    SYNTAX        TruthValue
    MAX-ACCESS    read-write
    STATUS        current
    DESCRIPTION
        "Indicates if the local system is willing to accept the
        ETS configuration recommended by the remote system."
    REFERENCE
        "D.2.9.3"
    DEFVAL         { false }
    ::= { lldpXdot1dcbxAdminETSBasicConfigurationEntry 3 }

lldpXdot1dcbxAdminETSConPriorityAssignmentTable OBJECT-TYPE
    SYNTAX        SEQUENCE OF 
        LldpXdot1dcbxAdminETSConPriorityAssignmentEntry
    MAX-ACCESS    not-accessible
    STATUS        current
    DESCRIPTION
        "This table contains one row per priority.  The entry in each
        row indicates the traffic class to which the priority is
        assigned."
    ::= { lldpXdot1dcbxAdminETSConfiguration 2 }

lldpXdot1dcbxAdminETSConPriorityAssignmentEntry OBJECT-TYPE
    SYNTAX        LldpXdot1dcbxAdminETSConPriorityAssignmentEntry
    MAX-ACCESS    not-accessible
    STATUS        current
    DESCRIPTION
        "Indicates a priority to traffic class assignment."
    INDEX        { 
                lldpV2LocPortIfIndex,
                lldpXdot1dcbxAdminETSConPriority 
    }
    ::= { lldpXdot1dcbxAdminETSConPriorityAssignmentTable 1 }

LldpXdot1dcbxAdminETSConPriorityAssignmentEntry ::= SEQUENCE {
    lldpXdot1dcbxAdminETSConPriority        IEEE8021PriorityValue,
    lldpXdot1dcbxAdminETSConPriTrafficClass
        LldpXdot1dcbxTrafficClassValue
}

lldpXdot1dcbxAdminETSConPriority OBJECT-TYPE
    SYNTAX        IEEE8021PriorityValue
    MAX-ACCESS    not-accessible
    STATUS        current
    DESCRIPTION
        "Indicates the priority that is assigned to a traffic 
        class."
    REFERENCE
        "D.2.9.6"
    ::= { lldpXdot1dcbxAdminETSConPriorityAssignmentEntry 1 }

lldpXdot1dcbxAdminETSConPriTrafficClass OBJECT-TYPE
    SYNTAX        LldpXdot1dcbxTrafficClassValue
    MAX-ACCESS    read-write
    STATUS        current
    DESCRIPTION
        "Indicates the traffic class to which this priority is
        to be assigned."
    REFERENCE
        "D.2.9.6"
    DEFVAL      { 0 }
    ::= { lldpXdot1dcbxAdminETSConPriorityAssignmentEntry 2 }

lldpXdot1dcbxAdminETSConTrafficClassBandwidthTable OBJECT-TYPE
    SYNTAX        SEQUENCE OF 
        LldpXdot1dcbxAdminETSConTrafficClassBandwidthEntry
    MAX-ACCESS    not-accessible
    STATUS        current
    DESCRIPTION
        "This table contains one row per traffic class.  The 
        entry in each row indicates the traffic class to  
        which the bandwidth is assigned."
    ::= { lldpXdot1dcbxAdminETSConfiguration 3 }

lldpXdot1dcbxAdminETSConTrafficClassBandwidthEntry OBJECT-TYPE
    SYNTAX      LldpXdot1dcbxAdminETSConTrafficClassBandwidthEntry
    MAX-ACCESS    not-accessible
    STATUS        current
    DESCRIPTION
        "Indicates a traffic class to Bandwidth assignment."
    INDEX        { 
                lldpV2LocPortIfIndex,
                lldpXdot1dcbxAdminETSConTrafficClass 
    }
    ::= { lldpXdot1dcbxAdminETSConTrafficClassBandwidthTable 1 }

LldpXdot1dcbxAdminETSConTrafficClassBandwidthEntry ::= SEQUENCE {
    lldpXdot1dcbxAdminETSConTrafficClass 
        LldpXdot1dcbxTrafficClassValue,
    lldpXdot1dcbxAdminETSConTrafficClassBandwidth
        LldpXdot1dcbxTrafficClassBandwidthValue
}

lldpXdot1dcbxAdminETSConTrafficClass OBJECT-TYPE
    SYNTAX        LldpXdot1dcbxTrafficClassValue
    MAX-ACCESS    not-accessible
    STATUS        current
    DESCRIPTION
        "Indicates the traffic class to
        which this bandwidth applies"
    REFERENCE
        "D.2.9.7"
    ::= { lldpXdot1dcbxAdminETSConTrafficClassBandwidthEntry 1 }

lldpXdot1dcbxAdminETSConTrafficClassBandwidth OBJECT-TYPE
    SYNTAX        LldpXdot1dcbxTrafficClassBandwidthValue
    MAX-ACCESS    read-write
    STATUS        current
    DESCRIPTION
        "Indicates the bandwidth assigned to this traffic class.
        The sum of the bandwidths assigned to a given port is
        required at all times to eqaul 100.  An operation that
        attempts to change this table such that the bandwidth
        entires do not total 100 shall be rejected. An implication
        of this is that modification of this table requires that
        multiple set operations be included in a single SNMP PDU,
        commonly referred to as an MSET operation, to perform
        simultaneous set operations to keep the sum at 100.  Any
        attempt to change a single entry in this table will result
        in the operation being rejected since entries in the 
        table referring to the given port will no longer 
        sum to 100."
    REFERENCE
        "D.2.9.7"
    ::= { lldpXdot1dcbxAdminETSConTrafficClassBandwidthEntry 2 }

lldpXdot1dcbxAdminETSConTrafficSelectionAlgorithmTable OBJECT-TYPE
    SYNTAX        SEQUENCE OF 
        LldpXdot1dcbxAdminETSConTrafficSelectionAlgorithmEntry
    MAX-ACCESS    not-accessible
    STATUS        current
    DESCRIPTION
        "This table contains one row per traffic class.  The entry
        in each row indicates the traffic selction algorithm to
        be used by the priority."
    ::= { lldpXdot1dcbxAdminETSConfiguration 4 }

lldpXdot1dcbxAdminETSConTrafficSelectionAlgorithmEntry OBJECT-TYPE
    SYNTAX        LldpXdot1dcbxAdminETSConTrafficSelectionAlgorithmEntry
    MAX-ACCESS    not-accessible
    STATUS        current
    DESCRIPTION
        "Indicates a traffic class to traffic selection
        algorithm assignment."
    INDEX       { 
                lldpV2LocPortIfIndex,
                lldpXdot1dcbxAdminETSConTSATrafficClass
    }
    ::= { lldpXdot1dcbxAdminETSConTrafficSelectionAlgorithmTable 1 }

LldpXdot1dcbxAdminETSConTrafficSelectionAlgorithmEntry ::= SEQUENCE {
    lldpXdot1dcbxAdminETSConTSATrafficClass
        LldpXdot1dcbxTrafficClassValue,
    lldpXdot1dcbxAdminETSConTrafficSelectionAlgorithm 
        LldpXdot1dcbxTrafficSelectionAlgorithm
}

lldpXdot1dcbxAdminETSConTSATrafficClass OBJECT-TYPE
    SYNTAX        LldpXdot1dcbxTrafficClassValue
    MAX-ACCESS    not-accessible
    STATUS        current
    DESCRIPTION
        "Indicates the traffic class that is assigned
        to a traffic selection algorithm."
    REFERENCE
        "D.2.9.8"
    ::= { lldpXdot1dcbxAdminETSConTrafficSelectionAlgorithmEntry 1 }

lldpXdot1dcbxAdminETSConTrafficSelectionAlgorithm OBJECT-TYPE
    SYNTAX        LldpXdot1dcbxTrafficSelectionAlgorithm
    MAX-ACCESS    read-write
    STATUS        current
    DESCRIPTION
        "Indicates the Traffic Selection Algorithm to which this
        traffic class is to be assigned."
    REFERENCE
        "D.2.9.8"
    ::= { lldpXdot1dcbxAdminETSConTrafficSelectionAlgorithmEntry 2 }


--
-- lldpXdot1dcbxAdminETSRecommendationTable - Contains the information 
-- for the ETS Recommendation TLV.   
--
lldpXdot1dcbxAdminETSReco OBJECT IDENTIFIER ::=
  { lldpXdot1dcbxAdminData 2 }

lldpXdot1dcbxAdminETSRecoTrafficClassBandwidthTable OBJECT-TYPE
    SYNTAX        SEQUENCE OF 
        LldpXdot1dcbxAdminETSRecoTrafficClassBandwidthEntry
    MAX-ACCESS    not-accessible
    STATUS        current
    DESCRIPTION
        "This table contains one row per traffic class.  The 
        entry in each row indicates the traffic class to  
        which the bandwidth is assigned."
    ::= { lldpXdot1dcbxAdminETSReco 1 }

lldpXdot1dcbxAdminETSRecoTrafficClassBandwidthEntry OBJECT-TYPE
    SYNTAX      LldpXdot1dcbxAdminETSRecoTrafficClassBandwidthEntry
    MAX-ACCESS    not-accessible
    STATUS        current
    DESCRIPTION
        "Indicates a traffic class to Bandwidth assignment."
    INDEX        { 
                lldpV2LocPortIfIndex,
                lldpXdot1dcbxAdminETSRecoTrafficClass 
    }
    ::= { lldpXdot1dcbxAdminETSRecoTrafficClassBandwidthTable 1 }

LldpXdot1dcbxAdminETSRecoTrafficClassBandwidthEntry ::= SEQUENCE {
    lldpXdot1dcbxAdminETSRecoTrafficClass 
        LldpXdot1dcbxTrafficClassValue,
    lldpXdot1dcbxAdminETSRecoTrafficClassBandwidth
        LldpXdot1dcbxTrafficClassBandwidthValue
}

lldpXdot1dcbxAdminETSRecoTrafficClass OBJECT-TYPE
    SYNTAX        LldpXdot1dcbxTrafficClassValue
    MAX-ACCESS    not-accessible
    STATUS        current
    DESCRIPTION
        "Indicates the traffic class to
        which this bandwidth applies"
    REFERENCE
        "D.2.10.4"
    ::= { lldpXdot1dcbxAdminETSRecoTrafficClassBandwidthEntry 1 }

lldpXdot1dcbxAdminETSRecoTrafficClassBandwidth OBJECT-TYPE
    SYNTAX        LldpXdot1dcbxTrafficClassBandwidthValue
    MAX-ACCESS    read-write
    STATUS        current
    DESCRIPTION
        "Indicates the bandwidth assigned to this traffic class.
        The sum of the bandwidths assigned to a given port is
        required at all times to eqaul 100.  An operation that
        attempts to change this table such that the bandwidth
        entires do not total 100 shall be rejected. An implication
        of this is that modification of this table requires that
        multiple set operations be included in a single SNMP PDU,
        commonly referred to as an MSET operation, to perform
        simultaneous set operations to keep the sum at 100.  Any
        attempt to change a single entry in this table will result
        in the operation being rejected since entries in the 
        table referring to the given port will no longer 
        sum to 100."

    REFERENCE
        "D.2.10.4"
    ::= { lldpXdot1dcbxAdminETSRecoTrafficClassBandwidthEntry 2 }

lldpXdot1dcbxAdminETSRecoTrafficSelectionAlgorithmTable OBJECT-TYPE
    SYNTAX        SEQUENCE OF 
        LldpXdot1dcbxAdminETSRecoTrafficSelectionAlgorithmEntry
    MAX-ACCESS    not-accessible
    STATUS        current
    DESCRIPTION
        "This table contains one row per traffic class.  The entry
        in each row indicates the traffic selction algorithm to 
        be used by the traffic class."
    ::= { lldpXdot1dcbxAdminETSReco 2 }

lldpXdot1dcbxAdminETSRecoTrafficSelectionAlgorithmEntry OBJECT-TYPE
    SYNTAX    LldpXdot1dcbxAdminETSRecoTrafficSelectionAlgorithmEntry
    MAX-ACCESS    not-accessible
    STATUS        current
    DESCRIPTION
        "Indicates a traffic class to traffic selection
        algorithm assignment."
    INDEX        { 
                lldpV2LocPortIfIndex,
                lldpXdot1dcbxAdminETSRecoTSATrafficClass
    }
    ::= { lldpXdot1dcbxAdminETSRecoTrafficSelectionAlgorithmTable 1 }

LldpXdot1dcbxAdminETSRecoTrafficSelectionAlgorithmEntry ::= SEQUENCE {
    lldpXdot1dcbxAdminETSRecoTSATrafficClass    
        LldpXdot1dcbxTrafficClassValue,
    lldpXdot1dcbxAdminETSRecoTrafficSelectionAlgorithm 
        LldpXdot1dcbxTrafficSelectionAlgorithm
}

lldpXdot1dcbxAdminETSRecoTSATrafficClass OBJECT-TYPE
    SYNTAX        LldpXdot1dcbxTrafficClassValue
    MAX-ACCESS    not-accessible
    STATUS        current
    DESCRIPTION
        "Indicates the traffic class that is assigned to a traffic 
        selection algorithm."
    REFERENCE
        "D.2.10.5"
    ::= { lldpXdot1dcbxAdminETSRecoTrafficSelectionAlgorithmEntry 1 }

lldpXdot1dcbxAdminETSRecoTrafficSelectionAlgorithm OBJECT-TYPE
    SYNTAX        LldpXdot1dcbxTrafficSelectionAlgorithm
    MAX-ACCESS    read-write
    STATUS        current
    DESCRIPTION
        "Indicates the Traffic Selection Algorithm to which this
        traffic class is to be assigned."
    REFERENCE
        "D.2.10.5"
    ::= { lldpXdot1dcbxAdminETSRecoTrafficSelectionAlgorithmEntry 2 }

--
-- lldpXdot1dcbxAdminPFCTable - Contains the information for the PFC
-- Configuration TLV.   
--
lldpXdot1dcbxAdminPFC OBJECT IDENTIFIER ::= { lldpXdot1dcbxAdminData 3 }

lldpXdot1dcbxAdminPFCBasicTable OBJECT-TYPE
    SYNTAX        SEQUENCE OF LldpXdot1dcbxAdminPFCBasicEntry
    MAX-ACCESS    not-accessible
    STATUS        current
    DESCRIPTION
        "This table contains one row per port for the IEEE 802.1
        organizationally defined LLDP PFC TLV on the local
        system known to this agent"
    ::= { lldpXdot1dcbxAdminPFC 1 }

lldpXdot1dcbxAdminPFCBasicEntry OBJECT-TYPE
    SYNTAX        LldpXdot1dcbxAdminPFCBasicEntry
    MAX-ACCESS    not-accessible
    STATUS        current
    DESCRIPTION
        "Information about the IEEE 802.1 organizational defined
        PFC TLV LLDP extension."
    INDEX         { lldpV2LocPortIfIndex }
    ::= { lldpXdot1dcbxAdminPFCBasicTable 1 }

LldpXdot1dcbxAdminPFCBasicEntry ::= SEQUENCE {
    lldpXdot1dcbxAdminPFCWilling    TruthValue,
    lldpXdot1dcbxAdminPFCMBC        TruthValue,
    lldpXdot1dcbxAdminPFCCap        LldpXdot1dcbxSupportedCapacity
}

lldpXdot1dcbxAdminPFCWilling OBJECT-TYPE
    SYNTAX        TruthValue
    MAX-ACCESS    read-write
    STATUS        current
    DESCRIPTION
        "Indicates if the local system is willing to accept the 
        PFC configuration of the remote system."
    REFERENCE
        "D.2.11.3"
    DEFVAL      { false }
    ::= { lldpXdot1dcbxAdminPFCBasicEntry 1}

lldpXdot1dcbxAdminPFCMBC OBJECT-TYPE
    SYNTAX        TruthValue
    MAX-ACCESS    read-only
    STATUS        current
    DESCRIPTION
        "Indicates if the local system is capable of bypassing
        MACsec processing when MACsec is disabled."
    REFERENCE
        "D.2.11.4"
    ::= { lldpXdot1dcbxAdminPFCBasicEntry 2}

lldpXdot1dcbxAdminPFCCap OBJECT-TYPE
    SYNTAX         LldpXdot1dcbxSupportedCapacity
    MAX-ACCESS    read-only
    STATUS    current
    DESCRIPTION
        "Indicates the number of traffic classes on the local device
        that may simultaneously have PFC enabled.  

        Note that this typically indicates a physical limitation of the
        device.  However, some devices may allow this parameter to be
        administratively configured, in which case the MAX-ACCESS
        should be changed to read-write with and an appropriate
        DEFVAL added."
    REFERENCE
        "D.2.11.5"
    ::= { lldpXdot1dcbxAdminPFCBasicEntry 3}

lldpXdot1dcbxAdminPFCEnableTable OBJECT-TYPE
    SYNTAX        SEQUENCE OF LldpXdot1dcbxAdminPFCEnableEntry
    MAX-ACCESS    not-accessible
    STATUS        current
    DESCRIPTION
        "This table contains eight entries, one entry per priority,
        indicating if PFC is enabled on the corresponding priority."
    ::= { lldpXdot1dcbxAdminPFC 2 }

lldpXdot1dcbxAdminPFCEnableEntry OBJECT-TYPE
    SYNTAX        LldpXdot1dcbxAdminPFCEnableEntry
    MAX-ACCESS    not-accessible
    STATUS        current
    DESCRIPTION
        "Each entry indicates if PFC is enabled on the 
        correponding priority"
    INDEX { 
        lldpV2LocPortIfIndex,
        lldpXdot1dcbxAdminPFCEnablePriority 
    }
    ::= { lldpXdot1dcbxAdminPFCEnableTable 1 }

LldpXdot1dcbxAdminPFCEnableEntry ::= SEQUENCE {
    lldpXdot1dcbxAdminPFCEnablePriority    IEEE8021PriorityValue,
    lldpXdot1dcbxAdminPFCEnableEnabled    TruthValue
    }

lldpXdot1dcbxAdminPFCEnablePriority OBJECT-TYPE
    SYNTAX        IEEE8021PriorityValue
    MAX-ACCESS    not-accessible
    STATUS        current
    DESCRIPTION
        "Prioity for which PFC is enabled / disabled"
    ::= { lldpXdot1dcbxAdminPFCEnableEntry 1 }

lldpXdot1dcbxAdminPFCEnableEnabled OBJECT-TYPE
    SYNTAX        TruthValue
    MAX-ACCESS    read-write
    STATUS        current
    DESCRIPTION
        "Indicates if PFC is enabled on the corresponding priority"
    REFERENCE
        "D.2.11.6"
    DEFVAL      { false }
    ::= { lldpXdot1dcbxAdminPFCEnableEntry 2 }

--
-- lldpXdot1dcbxAdminApplicationPriorityTable - Contains the
-- information for the Application Priority TLV.    
--

lldpXdot1dcbxAdminApplicationPriorityAppTable OBJECT-TYPE
    SYNTAX        SEQUENCE OF 
        LldpXdot1dcbxAdminApplicationPriorityAppEntry
    MAX-ACCESS    not-accessible
    STATUS        current
    DESCRIPTION
        "Table containing entries indicating the priorty to be used
        for a given application"
    ::= { lldpXdot1dcbxAdminData 4 }

lldpXdot1dcbxAdminApplicationPriorityAppEntry OBJECT-TYPE
    SYNTAX        LldpXdot1dcbxAdminApplicationPriorityAppEntry
    MAX-ACCESS    not-accessible
    STATUS        current
    DESCRIPTION 
        "Entry that indicates the priority to be used for a
        given application."
    INDEX         {
                  lldpV2LocPortIfIndex,
                  lldpXdot1dcbxAdminApplicationPriorityAESelector,
                  lldpXdot1dcbxAdminApplicationPriorityAEProtocol
    }
    ::= { lldpXdot1dcbxAdminApplicationPriorityAppTable 1 }

LldpXdot1dcbxAdminApplicationPriorityAppEntry ::= SEQUENCE {
    lldpXdot1dcbxAdminApplicationPriorityAESelector    
        LldpXdot1dcbxAppSelector,
    lldpXdot1dcbxAdminApplicationPriorityAEProtocol    
        LldpXdot1dcbxAppProtocol,
    lldpXdot1dcbxAdminApplicationPriorityAEPriority    
        IEEE8021PriorityValue
}

lldpXdot1dcbxAdminApplicationPriorityAESelector OBJECT-TYPE
    SYNTAX        LldpXdot1dcbxAppSelector
    MAX-ACCESS    not-accessible
    STATUS        current
    DESCRIPTION 
        "Indicates the contents of the protocol object
        (lldpXdot1dcbxAdminApplicationPriorityAEProtocol)
        1: Ethertype
        2: Well Known Port number over TCP, or SCTP
        3: Well Known Port number over UDP, or DCCP
        4: Well Known Port number over TCP, SCTP, UDP, and DCCP"
    REFERENCE
        "D.2.11.6"
    ::= { lldpXdot1dcbxAdminApplicationPriorityAppEntry 1 }

lldpXdot1dcbxAdminApplicationPriorityAEProtocol OBJECT-TYPE
    SYNTAX        LldpXdot1dcbxAppProtocol
    MAX-ACCESS    not-accessible
    STATUS        current
    DESCRIPTION
        "The protocol indicator of the type indicated by
        lldpXdot1dcbxAdminApplicationPriorityAESelector."
    REFERENCE
        "D.2.11.6"
    ::= { lldpXdot1dcbxAdminApplicationPriorityAppEntry 2 }

lldpXdot1dcbxAdminApplicationPriorityAEPriority OBJECT-TYPE
    SYNTAX        IEEE8021PriorityValue
    MAX-ACCESS    read-create
    STATUS        current
    DESCRIPTION
        "The priority code point that should be used in
        frames transporting the protocol indicated by
        lldpXdot1dcbxAdminApplicationPriorityAESelector and
        lldpXdot1dcbxAdminApplicationPriorityAEProtocol"
    REFERENCE
        "D.2.11.6"
    ::= { lldpXdot1dcbxAdminApplicationPriorityAppEntry 3 }

------------------------------------------------------------------------
-- IEEE 802.1 - DCBX Conformance Information
------------------------------------------------------------------------
lldpXdot1dcbxConformance OBJECT IDENTIFIER ::= { lldpV2Xdot1MIB 6 }
lldpXdot1dcbxCompliances 
    OBJECT IDENTIFIER ::= { lldpXdot1dcbxConformance 1 }
lldpXdot1dcbxGroups      
    OBJECT IDENTIFIER ::= { lldpXdot1dcbxConformance 2 }

--
-- Compliance Statements
--

lldpXdot1dcbxCompliance MODULE-COMPLIANCE
    STATUS        current
    DESCRIPTION
         "A compliance statement for SNMP entities that implement
         the IEEE 802.1 organizationally defined DCBX LLDP 
         extension MIB.

         This group is mandatory for agents which implement Enhanced
         Transmission Selection."
    MODULE        -- this module
        MANDATORY-GROUPS  { lldpXdot1dcbxETSGroup,
                            lldpXdot1dcbxPFCGroup,
                            lldpXdot1dcbxApplicationPriorityGroup,
                            ifGeneralInformationGroup
        }
    ::= { lldpXdot1dcbxCompliances 1 }

--
-- MIB Groupings
--

lldpXdot1dcbxETSGroup  OBJECT-GROUP
    OBJECTS {
        lldpXdot1dcbxConfigETSConfigurationTxEnable,
        lldpXdot1dcbxConfigETSRecommendationTxEnable,
        lldpXdot1dcbxLocETSConCreditBasedShaperSupport,
        lldpXdot1dcbxLocETSConTrafficClassesSupported,
        lldpXdot1dcbxLocETSConWilling,
        lldpXdot1dcbxLocETSConPriTrafficClass,
        lldpXdot1dcbxLocETSConTrafficClassBandwidth,
        lldpXdot1dcbxLocETSConTrafficSelectionAlgorithm,
        lldpXdot1dcbxLocETSRecoTrafficClassBandwidth,
        lldpXdot1dcbxLocETSRecoTrafficSelectionAlgorithm,
        lldpXdot1dcbxRemETSConCreditBasedShaperSupport,
        lldpXdot1dcbxRemETSConTrafficClassesSupported,
        lldpXdot1dcbxRemETSConWilling,
        lldpXdot1dcbxRemETSConPriTrafficClass,
        lldpXdot1dcbxRemETSConTrafficClassBandwidth,
        lldpXdot1dcbxRemETSConTrafficSelectionAlgorithm,
        lldpXdot1dcbxRemETSRecoTrafficClassBandwidth,
        lldpXdot1dcbxRemETSRecoTrafficSelectionAlgorithm,
        lldpXdot1dcbxAdminETSConCreditBasedShaperSupport,
        lldpXdot1dcbxAdminETSConTrafficClassesSupported,
        lldpXdot1dcbxAdminETSConWilling,
        lldpXdot1dcbxAdminETSConPriTrafficClass,
        lldpXdot1dcbxAdminETSConTrafficClassBandwidth,
        lldpXdot1dcbxAdminETSConTrafficSelectionAlgorithm,
        lldpXdot1dcbxAdminETSRecoTrafficClassBandwidth,
        lldpXdot1dcbxAdminETSRecoTrafficSelectionAlgorithm
    }
    STATUS  current
    DESCRIPTION
        "The collection of objects used for Enhanced
        Transmission Selection."
    ::= { lldpXdot1dcbxGroups 1 }

lldpXdot1dcbxPFCGroup  OBJECT-GROUP
    OBJECTS {
        lldpXdot1dcbxConfigPFCTxEnable,
        lldpXdot1dcbxLocPFCWilling,
        lldpXdot1dcbxLocPFCMBC,
        lldpXdot1dcbxLocPFCCap,
        lldpXdot1dcbxLocPFCEnableEnabled,
        lldpXdot1dcbxRemPFCWilling,
        lldpXdot1dcbxRemPFCMBC,
        lldpXdot1dcbxRemPFCCap,
        lldpXdot1dcbxRemPFCEnableEnabled,
        lldpXdot1dcbxAdminPFCWilling,
        lldpXdot1dcbxAdminPFCMBC,
        lldpXdot1dcbxAdminPFCCap,
        lldpXdot1dcbxAdminPFCEnableEnabled
    }
    STATUS  current
    DESCRIPTION
        "The collection of objects used for Priority-
        base Flow Control."
    ::= { lldpXdot1dcbxGroups 2 }

lldpXdot1dcbxApplicationPriorityGroup  OBJECT-GROUP
    OBJECTS {
        lldpXdot1dcbxConfigApplicationPriorityTxEnable,
        lldpXdot1dcbxLocApplicationPriorityAEPriority,
        lldpXdot1dcbxRemApplicationPriorityAEPriority,
        lldpXdot1dcbxAdminApplicationPriorityAEPriority
    }
    STATUS  current
    DESCRIPTION
        "The collection of objects used for Application
        priority."
    ::= { lldpXdot1dcbxGroups 3 }        
END

