-- *****************************************************************
-- AGGR-MIB:  Cisco private MIB
-- ****************************************************************

CIE1000-AGGR-MIB DEFINITIONS ::= BEGIN

IMPORTS
    NOTIFICATION-GROUP, MODULE-COMPLIANCE, OBJECT-GROUP FROM SNMPv2-CONF
    NOTIFICATION-TYPE, MODULE-IDENTITY, OBJECT-TYPE FROM SNMPv2-SMI
    TEXTUAL-CONVENTION FROM SNMPv2-TC
    cie1000SwitchMgmt FROM CISCO-IE1000-MIB
    CIE1000DisplayString FROM CIE1000-TC
    CIE1000InterfaceIndex FROM CIE1000-TC
    CIE1000PortList FROM CIE1000-TC
    CIE1000PortStatusSpeed FROM CIE1000-TC
    CIE1000RowEditorState FROM CIE1000-TC
    TruthValue FROM SNMPv2-TC
    ;

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

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

	 Tel: +1 800 553-NETS

	 E-mail: cs-snmp@cisco.com"
    DESCRIPTION
        "This is a private mib of static aggregation"
    REVISION    "201507070000Z"
    DESCRIPTION
        "Port speed is moved into the TC MIB"
    REVISION    "201411180000Z"
    DESCRIPTION
        "Added aggregation group status table"
    REVISION    "201407010000Z"
    DESCRIPTION
        "Initial version"
    ::= { cie1000SwitchMgmt 19 }


cie1000AggrMibObjects OBJECT IDENTIFIER
    ::= { cie1000AggrMib 1 }

cie1000AggrConfig OBJECT IDENTIFIER
    ::= { cie1000AggrMibObjects 2 }

cie1000AggrConfigModeGlobals OBJECT IDENTIFIER
    ::= { cie1000AggrConfig 1 }

cie1000AggrConfigModeGlobalsSmacAddr OBJECT-TYPE
    SYNTAX      TruthValue
    MAX-ACCESS  read-write
    STATUS      current
    DESCRIPTION
        "Set to true to enable the use of the Source MAC address, or false to
         disable. By default, Source MAC Address is enabled."
    ::= { cie1000AggrConfigModeGlobals 1 }

cie1000AggrConfigModeGlobalsDmacAddr OBJECT-TYPE
    SYNTAX      TruthValue
    MAX-ACCESS  read-write
    STATUS      current
    DESCRIPTION
        "Set to true to enable the use of the Destination MAC address, or false
         to disable. By default, Destination MAC Address is disabled."
    ::= { cie1000AggrConfigModeGlobals 2 }

cie1000AggrConfigModeGlobalsSourceAndDestinationIpAddr OBJECT-TYPE
    SYNTAX      TruthValue
    MAX-ACCESS  read-write
    STATUS      current
    DESCRIPTION
        "Set to true to enable the use of the IP address, or false to disable.
         By default, Destination MAC Address is enabled."
    ::= { cie1000AggrConfigModeGlobals 3 }

cie1000AggrConfigModeGlobalsTcpOrUdpSportAndDportNo OBJECT-TYPE
    SYNTAX      TruthValue
    MAX-ACCESS  read-write
    STATUS      current
    DESCRIPTION
        "Set to true to enable the use of the TCP/UDP Port Number, or false to
         disable. By default, TCP/UDP Port Number is enabled."
    ::= { cie1000AggrConfigModeGlobals 4 }

cie1000AggrConfigGroupTable OBJECT-TYPE
    SYNTAX      SEQUENCE OF CIE1000AggrConfigGroupEntry
    MAX-ACCESS  not-accessible
    STATUS      current
    DESCRIPTION
        "The table is static Link Aggregation Group configuration table. The
         index is Aggregration Group Identifier."
    ::= { cie1000AggrConfig 2 }

cie1000AggrConfigGroupEntry OBJECT-TYPE
    SYNTAX      CIE1000AggrConfigGroupEntry
    MAX-ACCESS  not-accessible
    STATUS      current
    DESCRIPTION
        "Each entry has a set of parameters"
    INDEX       { cie1000AggrConfigGroupAggrIndexNo }
    ::= { cie1000AggrConfigGroupTable 1 }

CIE1000AggrConfigGroupEntry ::= SEQUENCE {
    cie1000AggrConfigGroupAggrIndexNo  CIE1000InterfaceIndex,
    cie1000AggrConfigGroupPortMembers  CIE1000PortList,
    cie1000AggrConfigGroupAction       CIE1000RowEditorState
}

cie1000AggrConfigGroupAggrIndexNo OBJECT-TYPE
    SYNTAX      CIE1000InterfaceIndex
    MAX-ACCESS  accessible-for-notify
    STATUS      current
    DESCRIPTION
        "Link Aggregation Group Identifier."
    ::= { cie1000AggrConfigGroupEntry 1 }

cie1000AggrConfigGroupPortMembers OBJECT-TYPE
    SYNTAX      CIE1000PortList
    MAX-ACCESS  read-write
    STATUS      current
    DESCRIPTION
        "The list of port members for this Link Aggregation Group."
    ::= { cie1000AggrConfigGroupEntry 2 }

cie1000AggrConfigGroupAction OBJECT-TYPE
    SYNTAX      CIE1000RowEditorState
    MAX-ACCESS  read-write
    STATUS      current
    DESCRIPTION
        "Action"
    ::= { cie1000AggrConfigGroupEntry 100 }

cie1000AggrConfigGroupTableRowEditor OBJECT IDENTIFIER
    ::= { cie1000AggrConfig 3 }

cie1000AggrConfigGroupTableRowEditorAggrIndexNo OBJECT-TYPE
    SYNTAX      CIE1000InterfaceIndex
    MAX-ACCESS  read-write
    STATUS      current
    DESCRIPTION
        "Link Aggregation Group Identifier."
    ::= { cie1000AggrConfigGroupTableRowEditor 1 }

cie1000AggrConfigGroupTableRowEditorPortMembers OBJECT-TYPE
    SYNTAX      CIE1000PortList
    MAX-ACCESS  read-write
    STATUS      current
    DESCRIPTION
        "The list of port members for this Link Aggregation Group."
    ::= { cie1000AggrConfigGroupTableRowEditor 2 }

cie1000AggrConfigGroupTableRowEditorAction OBJECT-TYPE
    SYNTAX      CIE1000RowEditorState
    MAX-ACCESS  read-write
    STATUS      current
    DESCRIPTION
        "Action"
    ::= { cie1000AggrConfigGroupTableRowEditor 100 }

cie1000AggrStatus OBJECT IDENTIFIER
    ::= { cie1000AggrMibObjects 3 }

cie1000AggrStatusGroupTable OBJECT-TYPE
    SYNTAX      SEQUENCE OF CIE1000AggrStatusGroupEntry
    MAX-ACCESS  not-accessible
    STATUS      current
    DESCRIPTION
        "The table is Aggregation Group status table. The index is Aggregration
         Group Identifier."
    ::= { cie1000AggrStatus 1 }

cie1000AggrStatusGroupEntry OBJECT-TYPE
    SYNTAX      CIE1000AggrStatusGroupEntry
    MAX-ACCESS  not-accessible
    STATUS      current
    DESCRIPTION
        "Each entry has a set of parameters"
    INDEX       { cie1000AggrStatusGroupAggrIndexNo }
    ::= { cie1000AggrStatusGroupTable 1 }

CIE1000AggrStatusGroupEntry ::= SEQUENCE {
    cie1000AggrStatusGroupAggrIndexNo      CIE1000InterfaceIndex,
    cie1000AggrStatusGroupConfiguredPorts  CIE1000PortList,
    cie1000AggrStatusGroupAggregatedPorts  CIE1000PortList,
    cie1000AggrStatusGroupSpeed            CIE1000PortStatusSpeed,
    cie1000AggrStatusGroupType             CIE1000DisplayString
}

cie1000AggrStatusGroupAggrIndexNo OBJECT-TYPE
    SYNTAX      CIE1000InterfaceIndex
    MAX-ACCESS  accessible-for-notify
    STATUS      current
    DESCRIPTION
        "Link Aggregation Group Identifier."
    ::= { cie1000AggrStatusGroupEntry 1 }

cie1000AggrStatusGroupConfiguredPorts OBJECT-TYPE
    SYNTAX      CIE1000PortList
    MAX-ACCESS  read-only
    STATUS      current
    DESCRIPTION
        "Configured member ports of the aggregation Group."
    ::= { cie1000AggrStatusGroupEntry 2 }

cie1000AggrStatusGroupAggregatedPorts OBJECT-TYPE
    SYNTAX      CIE1000PortList
    MAX-ACCESS  read-only
    STATUS      current
    DESCRIPTION
        "Aggregated member ports of the aggregation Group."
    ::= { cie1000AggrStatusGroupEntry 3 }

cie1000AggrStatusGroupSpeed OBJECT-TYPE
    SYNTAX      CIE1000PortStatusSpeed
    MAX-ACCESS  read-only
    STATUS      current
    DESCRIPTION
        "Speed of the Aggregation Group."
    ::= { cie1000AggrStatusGroupEntry 4 }

cie1000AggrStatusGroupType OBJECT-TYPE
    SYNTAX      CIE1000DisplayString (SIZE(0..6))
    MAX-ACCESS  read-only
    STATUS      current
    DESCRIPTION
        "Type of the Aggregation Group."
    ::= { cie1000AggrStatusGroupEntry 5 }

cie1000AggrMibConformance OBJECT IDENTIFIER
    ::= { cie1000AggrMib 2 }

cie1000AggrMibCompliances OBJECT IDENTIFIER
    ::= { cie1000AggrMibConformance 1 }

cie1000AggrMibGroups OBJECT IDENTIFIER
    ::= { cie1000AggrMibConformance 2 }

cie1000AggrConfigModeGlobalsInfoGroup OBJECT-GROUP
    OBJECTS     { cie1000AggrConfigModeGlobalsSmacAddr,
                  cie1000AggrConfigModeGlobalsDmacAddr,
                  cie1000AggrConfigModeGlobalsSourceAndDestinationIpAddr,
                  cie1000AggrConfigModeGlobalsTcpOrUdpSportAndDportNo }
    STATUS      current
    DESCRIPTION
        "A collection of objects."
    ::= { cie1000AggrMibGroups 1 }

cie1000AggrConfigGroupTableInfoGroup OBJECT-GROUP
    OBJECTS     { cie1000AggrConfigGroupAggrIndexNo,
                  cie1000AggrConfigGroupPortMembers,
                  cie1000AggrConfigGroupAction }
    STATUS      current
    DESCRIPTION
        "A collection of objects."
    ::= { cie1000AggrMibGroups 2 }

cie1000AggrConfigGroupTableRowEditorInfoGroup OBJECT-GROUP
    OBJECTS     { cie1000AggrConfigGroupTableRowEditorAggrIndexNo,
                  cie1000AggrConfigGroupTableRowEditorPortMembers,
                  cie1000AggrConfigGroupTableRowEditorAction }
    STATUS      current
    DESCRIPTION
        "A collection of objects."
    ::= { cie1000AggrMibGroups 3 }

cie1000AggrStatusGroupTableInfoGroup OBJECT-GROUP
    OBJECTS     { cie1000AggrStatusGroupAggrIndexNo,
                  cie1000AggrStatusGroupConfiguredPorts,
                  cie1000AggrStatusGroupAggregatedPorts,
                  cie1000AggrStatusGroupSpeed,
                  cie1000AggrStatusGroupType }
    STATUS      current
    DESCRIPTION
        "A collection of objects."
    ::= { cie1000AggrMibGroups 4 }

cie1000AggrMibCompliance MODULE-COMPLIANCE
    STATUS      current
    DESCRIPTION
        "The compliance statement for the implementation."

    MODULE      -- this module

    MANDATORY-GROUPS { cie1000AggrConfigModeGlobalsInfoGroup,
                       cie1000AggrConfigGroupTableInfoGroup,
                       cie1000AggrConfigGroupTableRowEditorInfoGroup,
                       cie1000AggrStatusGroupTableInfoGroup }

    ::= { cie1000AggrMibCompliances 1 }

END
