CISCO-LAG-MIB: Cisco Link Aggregation Module for IEEE Std

This MIB provides Link Aggregation information that are either excluded by IEEE Std 802.3ad (IEEE8023-LAG-MIB) or specific to Cisco products.

CISCO-LAG-MIB DEFINITIONS ::= BEGIN

IMPORTS
   MODULE-IDENTITY, OBJECT-TYPE
       FROM SNMPv2-SMI

   MODULE-COMPLIANCE, OBJECT-GROUP
       FROM SNMPv2-CONF

   TEXTUAL-CONVENTION
       FROM SNMPv2-TC

   ciscoMgmt
       FROM CISCO-SMI

   dot3adAggPortEntry
       FROM IEEE8023-LAG-MIB

   ifIndex
       FROM IF-MIB;

ciscoLagMIB MODULE-IDENTITY
   LAST-UPDATED "200201020000Z"
   ORGANIZATION "Cisco Systems, Inc."
   CONTACT-INFO
       "         Cisco Systems
                 Customer Service

         Postal: 170 W Tasman Drive
                 San Jose, CA  95134
                 USA

            Tel: +1 800 553-NETS

         E-mail:  cs-etherchan@cisco.com"

   DESCRIPTION
       "Cisco Link Aggregation module for managing IEEE Std
        802.3ad.

        This MIB provides Link Aggregation information that are
        either excluded by IEEE Std 802.3ad (IEEE8023-LAG-MIB)
        or specific to Cisco products."

   REVISION     "200201020000Z"
   DESCRIPTION
       "Modified Description of clagAggDistributionProtocol."
   REVISION     "200110230000Z"
   DESCRIPTION
       "Initial version of this MIB module.
        Support Distribution configuration for LACP, Aggregation
        protocol control, and  Administrative status for LACP."

   ::= { ciscoMgmt 225 }

clagMIBObjects    OBJECT IDENTIFIER ::= { ciscoLagMIB 1 }

-- -------------------------------------------------------------
-- Textual Conventions
-- -------------------------------------------------------------

ClagDistributionProtocol ::= TEXTUAL-CONVENTION
   STATUS      current
   DESCRIPTION
       "An enumerated type for all the supported load balancing
        protocols to distribute traffic across multiple links.
        The protocol can be mac, ip and port used on the LACP
        interface to distribute outgoing data frames among its
        component interfaces.

        ip(1)               IP address
        mac(2)              MAC address
        port(3)             port number"

   SYNTAX      INTEGER {
                   ip(1),
                   mac(2),
                   port(3)
               }

ClagDistributionAddressMode ::= TEXTUAL-CONVENTION
   STATUS      current
   DESCRIPTION
       "An enumerated type for all the supported load
        balancing address modes to distribute traffic
        across multiple links.  The address mode can be
        source, destination, or both used on this LACP
        interface to distribute outgoing data frames among
        its component interfaces.

        source(1)         Source address.
        destination(2)    Destination address.
        both(3)           both, Source and Destination."

   SYNTAX      INTEGER {
                   source(1),
                   destination(2),
                   both(3)
               }

ClagAggregationProtocol ::= TEXTUAL-CONVENTION
   STATUS      current
   DESCRIPTION
       "An enumerated type for all the supported aggregation
        protocols.

        lacp(1)     Link Aggregation Control Protocol(LACP),
                    IEEE 802.3ad
        pagp(2)     Port Aggregation Protocol"

    SYNTAX      INTEGER {
                    lacp(1),
                    pagp(2)
                }

ClagPortAdminStatus ::= TEXTUAL-CONVENTION
   STATUS      current
   DESCRIPTION
       "An enumerated type for all the LACP administrative states on
        a particular aggregation port.

        off(1)          No LACP involved on the aggregation port.

        on(2)           The aggregation port always join link
                        aggregation whithout any LACP protocol
                        involved.

        active(3)       Active LACP indicates the port's preference
                        to participate in the protocol regardless of
                        Partner's control value.

        passive(4)      Passive indicates the port's preference for
                        not transmitting LACP PDU unless its Partner's
                        control value is Active LACP."

   SYNTAX      INTEGER {
                   off(1),
                   on(2),
                   active(3),
                   passive(4)
               }

-- -------------------------------------------------------------

-- -------------------------------------------------------------
-- groups in the LAG MIB
-- -------------------------------------------------------------

clagGlobalConfigObjects OBJECT IDENTIFIER ::= { clagMIBObjects 1 }
clagAgg OBJECT IDENTIFIER ::= { clagMIBObjects 2 }
clagAggPort OBJECT IDENTIFIER ::= { clagMIBObjects 3 }

-- -------------------------------------------------------------

-- -------------------------------------------------------------
-- The Aggregation Global Configuration
-- -------------------------------------------------------------
clagAggDistributionProtocol OBJECT-TYPE
   SYNTAX      ClagDistributionProtocol
   MAX-ACCESS  read-write
   STATUS      current
   DESCRIPTION
       "This object controls the type of protocol (mac, or ip)
        address or port number used on this LACP interface to
        distribute outgoing data frames among its component
        interfaces."

   ::= { clagGlobalConfigObjects 1 }

clagAggDistributionAddressMode OBJECT-TYPE
   SYNTAX      ClagDistributionAddressMode
   MAX-ACCESS  read-write
   STATUS      current
   DESCRIPTION
       "The load balancing address mode for the device."

   ::= { clagGlobalConfigObjects 2 }

-- -------------------------------------------------------------
-- The Aggregation Protocol Table
-- -------------------------------------------------------------

clagAggProtocolTable  OBJECT-TYPE
   SYNTAX      SEQUENCE OF ClagAggProtocolEntry
   MAX-ACCESS  not-accessible
   STATUS      current
   DESCRIPTION
       "A table that contains protocol information about every
        interface which supports link aggregation."

   ::= { clagAgg 1 }


clagAggProtocolEntry OBJECT-TYPE
   SYNTAX      ClagAggProtocolEntry
   MAX-ACCESS  not-accessible
   STATUS      current
   DESCRIPTION
       "Entry containing aggregation protocol type for a
        particular interface.  An entry is created in this
        table when its associated ifEntry is created and that
        interface supports link aggregation.  The entry of this
        table is deleted when the associated ifEntry is removed."
   INDEX      { ifIndex }
   ::= { clagAggProtocolTable 1 }

ClagAggProtocolEntry ::=
   SEQUENCE {
       clagAggProtocolType    ClagAggregationProtocol
   }

clagAggProtocolType OBJECT-TYPE
   SYNTAX      ClagAggregationProtocol
   MAX-ACCESS  read-write
   STATUS      current
   DESCRIPTION
        "The aggregation protocol type for the interface.

         On some platforms, aggregation protocol may be assigned per
         group.  The group can be a collection of the ports which belong
         to a module or system.  If the aggregation protocol is assigned
         to any of the ports in such group then the aggregation protocol
         will apply to all ports in the same group.

         On some platforms, aggregation protocol type  can be assigned
         per aggregator.  If multiple ports belong to a aggregator,
         the aggregation protocol assigned to any of the ports in such
         aggregator will apply to all ports in the same."
   ::= { clagAggProtocolEntry 1 }

-- -------------------------------------------------------------
-- The Aggregation Port Configuration Table
-- -------------------------------------------------------------
clagAggPortTable  OBJECT-TYPE
   SYNTAX      SEQUENCE OF ClagAggPortEntry
   MAX-ACCESS  not-accessible
   STATUS      current
   DESCRIPTION
       "A table that contains information about every
        aggregation port that is associated with this system.
        This table contains additional objects for the
        dot3adAggPortTable."

   REFERENCE
       "IEEE 802.3 Subclause 30.7.2"
   ::= { clagAggPort 1 }

clagAggPortEntry  OBJECT-TYPE
   SYNTAX      ClagAggPortEntry
   MAX-ACCESS  not-accessible
   STATUS      current
   DESCRIPTION
       "An entry containing additional management information
        applicable to a particular aggregation port."
   AUGMENTS    { dot3adAggPortEntry }
   ::= { clagAggPortTable 1 }

ClagAggPortEntry ::=
   SEQUENCE {
       clagAggPortAdminStatus ClagPortAdminStatus
   }

clagAggPortAdminStatus OBJECT-TYPE
   SYNTAX      ClagPortAdminStatus
   MAX-ACCESS  read-write
   STATUS      current
   DESCRIPTION
       "The administrative status of the LACP protocol on this
        aggregation port."
   ::= { clagAggPortEntry 1 }

-- -------------------------------------------------------------

-- -------------------------------------------------------------
-- Notifications
-- -------------------------------------------------------------
clagMIBNotifications   OBJECT IDENTIFIER ::= { ciscoLagMIB 2 }

-- no notifications defined

-- -------------------------------------------------------------
-- Conformance
-- -------------------------------------------------------------
clagMIBConformance OBJECT IDENTIFIER ::= { ciscoLagMIB 3 }

clagMIBCompliances OBJECT IDENTIFIER ::= { clagMIBConformance 1 }

clagMIBGroups      OBJECT IDENTIFIER ::= { clagMIBConformance 2 }

-- -------------------------------------------------------------

-- -------------------------------------------------------------
-- Compliance
-- -------------------------------------------------------------
clagMIBCompliance MODULE-COMPLIANCE
   STATUS      current
   DESCRIPTION
       "The compliance statement for entities which implement
       the Cisco Link Aggregation MIB"

   MODULE           -- this module
       MANDATORY-GROUPS {
           clagAggProtocolGroup,
           clagAggPortGroup
       }

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

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

       GROUP      clagAggDistributionGroup
       DESCRIPTION
           "This group is mandatory for the devices which
            supported aggregation load balancing."
   ::= { clagMIBCompliances 1 }

-- -------------------------------------------------------------
-- Units of Conformance
-- -------------------------------------------------------------
clagAggProtocolGroup OBJECT-GROUP
   OBJECTS {
       clagAggProtocolType
   }
   STATUS     current
   DESCRIPTION
       "The object that provide aggregation protocol type of an
        interface. These are additional to the IEEE Std 802.3ad
        MIB."
   ::= { clagMIBGroups 1 }


clagAggPortGroup OBJECT-GROUP
   OBJECTS {
       clagAggPortAdminStatus
   }
   STATUS current
   DESCRIPTION
       "A collection of objects that provide admin status
        about an aggregation port.  These are additional to the
        IEEE Std 802.3ad MIB."
   ::= { clagMIBGroups 2 }


clagAggDistributionGroup OBJECT-GROUP
   OBJECTS {
       clagAggDistributionProtocol,
       clagAggDistributionAddressMode
   }
   STATUS current
   DESCRIPTION
       "A collection of objects that provide the load balancing
        information for an aggregator.  These are additional to
        the IEEE Std 802.3ad MIB."
   ::= { clagMIBGroups 3 }
END

< Back (CISCO-LAG-MIB)

What did you think of this topic?