1516 lines
62 KiB
Plaintext
1516 lines
62 KiB
Plaintext
-- **************************************************************************
|
|
-- * *
|
|
-- * *
|
|
-- * Hirschmann Automation and Control GmbH *
|
|
-- * *
|
|
-- * PLATFORM SNMP PRIVATE MIB *
|
|
-- * *
|
|
-- * Platform4 QoS *
|
|
-- * *
|
|
-- * *
|
|
-- %*************************************************************************
|
|
-- * *
|
|
-- * Dies ist eine SNMP MIB fuer Hirschmann Platform Geraete. *
|
|
-- * *
|
|
-- * Sollten Sie weitere Fragen haben, wenden Sie sich bitte an ihren *
|
|
-- * Hirschmann-Vertragspartner. *
|
|
-- * *
|
|
-- * Aktuelle Hirschmann-Infos zu unseren Produkten erhalten Sie ueber *
|
|
-- * unseren WWW-Server unter http://www.hirschmann.com *
|
|
-- * *
|
|
-- * This is a SNMP MIB for the Hirschmann Platform devices. *
|
|
-- * *
|
|
-- * If you have any further questions please contact your *
|
|
-- * Hirschmann contractual partner. *
|
|
-- * *
|
|
-- * You can access current information about Hirschmann products *
|
|
-- * via our WWW server on http://www.hirschmann.com *
|
|
-- * *
|
|
-- **************************************************************************
|
|
|
|
HIRSCHMANN-MMP4-QOS-MIB DEFINITIONS ::= BEGIN
|
|
|
|
|
|
IMPORTS
|
|
MODULE-IDENTITY, OBJECT-TYPE, Integer32,
|
|
Unsigned32, IpAddress FROM SNMPv2-SMI
|
|
TEXTUAL-CONVENTION, RowStatus, TruthValue, MacAddress,
|
|
DisplayString FROM SNMPv2-TC
|
|
hmPlatform4 FROM HIRSCHMANN-MMP4-BASICL2-MIB
|
|
InterfaceIndexOrZero FROM IF-MIB;
|
|
|
|
|
|
hmPlatform4QOS MODULE-IDENTITY
|
|
LAST-UPDATED "200508181200Z" -- 18 Aug 2005 12:00:00 GMT
|
|
ORGANIZATION "Hirschmann Automation and Control GmbH"
|
|
CONTACT-INFO
|
|
"Customer Support
|
|
Postal:
|
|
Hirschmann Automation and Control GmbH
|
|
Stuttgarter Str. 45-51
|
|
72654 Neckartenzlingen
|
|
Germany
|
|
Tel: +49 7127 14 1981
|
|
Web: http://www.hicomcenter.com/
|
|
E-Mail: hicomcenter@hirschmann.com"
|
|
DESCRIPTION
|
|
"The Hirschmann Private Platform4 QoS MIB definitions for Platform devices."
|
|
|
|
-- Revision history.
|
|
REVISION
|
|
"200508181200Z"
|
|
DESCRIPTION
|
|
"Initial revision."
|
|
|
|
::= { hmPlatform4 3 }
|
|
|
|
hmAgentQOSACL OBJECT IDENTIFIER ::= { hmPlatform4QOS 2 }
|
|
hmAgentQOSCOS OBJECT IDENTIFIER ::= { hmPlatform4QOS 3 }
|
|
|
|
|
|
EtypeValue ::= TEXTUAL-CONVENTION
|
|
DISPLAY-HINT "x"
|
|
STATUS current
|
|
DESCRIPTION
|
|
"Ethertype value of a packet. The allowed value is 0x0600 to 0xFFFF."
|
|
SYNTAX Unsigned32 (1536..65535) -- hex value 0x0600 to 0xFFFF
|
|
|
|
PercentByFives ::= TEXTUAL-CONVENTION
|
|
STATUS current
|
|
DESCRIPTION
|
|
"An unsigned integer representing a value expressed
|
|
as a percentage with five percent increments."
|
|
SYNTAX Unsigned32 (0|5|10|15|20|25|30|35|40|45|50|55|60|65|70|75|80|85|90|95|100)
|
|
|
|
Sixteenths ::= TEXTUAL-CONVENTION
|
|
STATUS current
|
|
DESCRIPTION
|
|
"An unsigned integer representing the numerator of a
|
|
value expressing a fraction in terms of sixteenths
|
|
(0/16, 1/16, 2/16, up to 16/16)."
|
|
SYNTAX Unsigned32 (0..16)
|
|
|
|
|
|
aclTable OBJECT-TYPE
|
|
SYNTAX SEQUENCE OF AclEntry
|
|
MAX-ACCESS not-accessible
|
|
STATUS current
|
|
DESCRIPTION
|
|
"A table of ACL instances."
|
|
::= { hmAgentQOSACL 1 }
|
|
|
|
aclEntry OBJECT-TYPE
|
|
SYNTAX AclEntry
|
|
MAX-ACCESS not-accessible
|
|
STATUS current
|
|
DESCRIPTION
|
|
"The entry of the aclTable."
|
|
INDEX { aclIndex }
|
|
::= { aclTable 1 }
|
|
|
|
AclEntry ::= SEQUENCE {
|
|
aclIndex
|
|
Integer32,
|
|
aclStatus
|
|
RowStatus
|
|
}
|
|
|
|
aclIndex OBJECT-TYPE
|
|
SYNTAX Integer32
|
|
MAX-ACCESS not-accessible
|
|
STATUS current
|
|
DESCRIPTION
|
|
"The IP ACL table index this instance is associated with."
|
|
::= { aclEntry 1 }
|
|
|
|
aclStatus OBJECT-TYPE
|
|
SYNTAX RowStatus
|
|
MAX-ACCESS read-create
|
|
STATUS current
|
|
DESCRIPTION
|
|
"Status of this instance. Entries can not be deleted until all rows in
|
|
the aclIfTable and aclRuleTable with corresponding values of aclIndex
|
|
have been deleted.
|
|
|
|
active(1) - this ACL instance is active
|
|
createAndGo(4) - set to this value to create an instance
|
|
destroy(6) - set to this value to delete an instance"
|
|
::= { aclEntry 3 }
|
|
|
|
--**************************************************************************************
|
|
|
|
aclIfTable OBJECT-TYPE
|
|
SYNTAX SEQUENCE OF AclIfEntry
|
|
MAX-ACCESS not-accessible
|
|
STATUS current
|
|
DESCRIPTION
|
|
"A table of ACL interface instances per direction."
|
|
::= { hmAgentQOSACL 8 }
|
|
|
|
aclIfEntry OBJECT-TYPE
|
|
SYNTAX AclIfEntry
|
|
MAX-ACCESS not-accessible
|
|
STATUS current
|
|
DESCRIPTION
|
|
"The entry of the aclIfTable."
|
|
INDEX { aclIfIndex, aclIfDirection, aclIfSequence, aclIfAclType, aclIfAclId }
|
|
::= { aclIfTable 1 }
|
|
|
|
AclIfEntry ::= SEQUENCE {
|
|
aclIfIndex
|
|
Integer32,
|
|
aclIfDirection
|
|
INTEGER,
|
|
aclIfSequence
|
|
Unsigned32,
|
|
aclIfAclType
|
|
INTEGER,
|
|
aclIfAclId
|
|
Integer32,
|
|
aclIfStatus
|
|
RowStatus
|
|
}
|
|
|
|
aclIfIndex OBJECT-TYPE
|
|
SYNTAX Integer32
|
|
MAX-ACCESS not-accessible
|
|
STATUS current
|
|
DESCRIPTION
|
|
"The interface to which this ACL instance applies."
|
|
::= { aclIfEntry 1 }
|
|
|
|
aclIfDirection OBJECT-TYPE
|
|
SYNTAX INTEGER {
|
|
inbound(1),
|
|
outbound(2)
|
|
}
|
|
MAX-ACCESS not-accessible
|
|
STATUS current
|
|
DESCRIPTION
|
|
"The interface direction to which this ACL instance applies."
|
|
::= { aclIfEntry 2 }
|
|
|
|
aclIfSequence OBJECT-TYPE
|
|
SYNTAX Unsigned32 (1..4294967295)
|
|
MAX-ACCESS not-accessible
|
|
STATUS current
|
|
DESCRIPTION
|
|
"The relative evaluation sequence of this ACL for this
|
|
interface and direction. When multiple ACLs are allowed
|
|
for a given interface and direction, the sequence number
|
|
determines the order in which the list of ACLs are evaluated,
|
|
with lower sequence numbers given higher precedence. The
|
|
sequence number value is arbitrary, but must be a unique
|
|
non-zero value for a given interface and direction.
|
|
|
|
Setting this object to an existing sequence number
|
|
value for a given interface and direction causes the
|
|
ACL corresponding to that value to be replaced with
|
|
this ACL."
|
|
::= { aclIfEntry 3 }
|
|
|
|
aclIfAclType OBJECT-TYPE
|
|
SYNTAX INTEGER {
|
|
ip(1),
|
|
mac(2)
|
|
}
|
|
MAX-ACCESS not-accessible
|
|
STATUS current
|
|
DESCRIPTION
|
|
"The type of this ACL, which is used to interpret the
|
|
aclIfId object value. Each type of ACL uses its own
|
|
numbering scheme for identification (see aclIfId object
|
|
for details).
|
|
|
|
The aclIfId object must be specified along with this
|
|
object."
|
|
::= { aclIfEntry 4 }
|
|
|
|
aclIfAclId OBJECT-TYPE
|
|
SYNTAX Integer32
|
|
MAX-ACCESS not-accessible
|
|
STATUS current
|
|
DESCRIPTION
|
|
"The ACL identifier value, which is interpreted based on
|
|
the aclIfType object.
|
|
|
|
For the IP ACLs, the actual ACL number is its identifier
|
|
as follows: IP standard ranges from 1-99, while
|
|
IP extended ranges from 100-199. Here, aclIfAclId represents
|
|
aclIndex.
|
|
|
|
The MAC ACLs use an internally-generated index value
|
|
that is assigned when the ACL is created.Here, aclIfAclId
|
|
represents aclMacIndex.
|
|
|
|
The aclIfType object must be specified along with
|
|
this object."
|
|
::= { aclIfEntry 5 }
|
|
|
|
aclIfStatus OBJECT-TYPE
|
|
SYNTAX RowStatus
|
|
MAX-ACCESS read-create
|
|
STATUS current
|
|
DESCRIPTION
|
|
"Status of this instance.
|
|
|
|
active(1) - this ACL interface instance is active
|
|
createAndGo(4) - set to this value to assign an ACL to an interface and direction
|
|
destroy(6) - set to this value to remove an ACL from an interface and direction"
|
|
::= { aclIfEntry 6 }
|
|
|
|
|
|
--**************************************************************************************
|
|
-- Layer 3 IP Access List Rules
|
|
--
|
|
--**************************************************************************************
|
|
|
|
aclRuleTable OBJECT-TYPE
|
|
SYNTAX SEQUENCE OF AclRuleEntry
|
|
MAX-ACCESS not-accessible
|
|
STATUS current
|
|
DESCRIPTION
|
|
"A table of IP ACL Rule instances."
|
|
::= { hmAgentQOSACL 4 }
|
|
|
|
aclRuleEntry OBJECT-TYPE
|
|
SYNTAX AclRuleEntry
|
|
MAX-ACCESS not-accessible
|
|
STATUS current
|
|
DESCRIPTION
|
|
"A table of IP ACL Classification Rules"
|
|
INDEX { aclIndex, aclRuleIndex }
|
|
::= { aclRuleTable 1 }
|
|
|
|
AclRuleEntry ::= SEQUENCE {
|
|
aclRuleIndex
|
|
Integer32,
|
|
aclRuleAction
|
|
INTEGER,
|
|
aclRuleProtocol
|
|
Integer32,
|
|
aclRuleSrcIpAddress
|
|
IpAddress,
|
|
aclRuleSrcIpMask
|
|
IpAddress,
|
|
aclRuleSrcL4Port
|
|
Integer32,
|
|
aclRuleSrcL4PortRangeStart
|
|
Integer32,
|
|
aclRuleSrcL4PortRangeEnd
|
|
Integer32,
|
|
aclRuleDestIpAddress
|
|
IpAddress,
|
|
aclRuleDestIpMask
|
|
IpAddress,
|
|
aclRuleDestL4Port
|
|
Integer32,
|
|
aclRuleDestL4PortRangeStart
|
|
Integer32,
|
|
aclRuleDestL4PortRangeEnd
|
|
Integer32,
|
|
aclRuleIPDSCP
|
|
Integer32,
|
|
aclRuleIpPrecedence
|
|
Integer32,
|
|
aclRuleIpTosBits
|
|
Integer32,
|
|
aclRuleIpTosMask
|
|
Integer32,
|
|
aclRuleStatus
|
|
RowStatus,
|
|
aclRuleAssignQueueId
|
|
Unsigned32,
|
|
aclRuleRedirectIntf
|
|
InterfaceIndexOrZero,
|
|
aclRuleMatchEvery
|
|
TruthValue
|
|
}
|
|
|
|
aclRuleIndex OBJECT-TYPE
|
|
SYNTAX Integer32
|
|
MAX-ACCESS not-accessible
|
|
STATUS current
|
|
DESCRIPTION
|
|
"The index of this rule instance within an IP ACL."
|
|
::= { aclRuleEntry 1 }
|
|
|
|
aclRuleAction OBJECT-TYPE
|
|
SYNTAX INTEGER {
|
|
permit(1),
|
|
deny(2)
|
|
}
|
|
MAX-ACCESS read-create
|
|
STATUS current
|
|
DESCRIPTION
|
|
"The type of action this rule should perform."
|
|
DEFVAL { deny }
|
|
::= { aclRuleEntry 2 }
|
|
|
|
aclRuleProtocol OBJECT-TYPE
|
|
SYNTAX Integer32 (1..255)
|
|
MAX-ACCESS read-create
|
|
STATUS current
|
|
DESCRIPTION
|
|
"icmp - 1
|
|
igmp - 2
|
|
ip - 4
|
|
tcp - 6
|
|
udp - 17
|
|
All values from 1 to 255 are valid."
|
|
::= { aclRuleEntry 3 }
|
|
|
|
aclRuleSrcIpAddress OBJECT-TYPE
|
|
SYNTAX IpAddress
|
|
MAX-ACCESS read-create
|
|
STATUS current
|
|
DESCRIPTION
|
|
"The Source IP Address used in the ACL Classification."
|
|
::= { aclRuleEntry 4 }
|
|
|
|
aclRuleSrcIpMask OBJECT-TYPE
|
|
SYNTAX IpAddress
|
|
MAX-ACCESS read-create
|
|
STATUS current
|
|
DESCRIPTION
|
|
"The Source IP Mask used in the ACL Classification.
|
|
This mask is expressed using wild-card notation,which
|
|
is the 1's compliment of traditional Subnet Masks.
|
|
Here, the 'Don't care bits' are represented by binary 1's and
|
|
'Do care bits' are represented by binary 0's. "
|
|
::= { aclRuleEntry 5 }
|
|
|
|
|
|
aclRuleSrcL4Port OBJECT-TYPE
|
|
SYNTAX Integer32
|
|
MAX-ACCESS read-create
|
|
STATUS current
|
|
DESCRIPTION
|
|
"The Source Port Number (Layer 4) used in the ACL Classification."
|
|
::= { aclRuleEntry 6 }
|
|
|
|
aclRuleSrcL4PortRangeStart OBJECT-TYPE
|
|
SYNTAX Integer32
|
|
MAX-ACCESS read-create
|
|
STATUS current
|
|
DESCRIPTION
|
|
"The Source Port Number(Layer 4) range start."
|
|
::= { aclRuleEntry 7 }
|
|
|
|
aclRuleSrcL4PortRangeEnd OBJECT-TYPE
|
|
SYNTAX Integer32
|
|
MAX-ACCESS read-create
|
|
STATUS current
|
|
DESCRIPTION
|
|
"The Source Port Number(Layer 4) range end."
|
|
::= { aclRuleEntry 8 }
|
|
|
|
aclRuleDestIpAddress OBJECT-TYPE
|
|
SYNTAX IpAddress
|
|
MAX-ACCESS read-create
|
|
STATUS current
|
|
DESCRIPTION
|
|
"The Destination IP Address used in the ACL Classification."
|
|
::= { aclRuleEntry 9 }
|
|
|
|
aclRuleDestIpMask OBJECT-TYPE
|
|
SYNTAX IpAddress
|
|
MAX-ACCESS read-create
|
|
STATUS current
|
|
DESCRIPTION
|
|
"The Destination IP Mask used in the ACL Classification.
|
|
This mask is expressed using wild-card notation,which
|
|
is the 1's compliment of traditional Subnet Masks.
|
|
Here, the 'Don't care bits' are represented by binary 1's and
|
|
'Do care bits' are represented by binary 0's. "
|
|
::= { aclRuleEntry 10 }
|
|
|
|
aclRuleDestL4Port OBJECT-TYPE
|
|
SYNTAX Integer32
|
|
MAX-ACCESS read-create
|
|
STATUS current
|
|
DESCRIPTION
|
|
"The Destination Port (Layer 4) used in ACl classification."
|
|
::= { aclRuleEntry 11 }
|
|
|
|
aclRuleDestL4PortRangeStart OBJECT-TYPE
|
|
SYNTAX Integer32
|
|
MAX-ACCESS read-create
|
|
STATUS current
|
|
DESCRIPTION
|
|
"The Destination Port (Layer 4) starting range used in ACL classification."
|
|
::= { aclRuleEntry 12 }
|
|
|
|
aclRuleDestL4PortRangeEnd OBJECT-TYPE
|
|
SYNTAX Integer32
|
|
MAX-ACCESS read-create
|
|
STATUS current
|
|
DESCRIPTION
|
|
"The Destination Port (Layer 4) ending range used in ACL classification."
|
|
::= { aclRuleEntry 13 }
|
|
|
|
aclRuleIPDSCP OBJECT-TYPE
|
|
SYNTAX Integer32
|
|
MAX-ACCESS read-create
|
|
STATUS current
|
|
DESCRIPTION
|
|
"The Differentiated Services Code Point value."
|
|
::= { aclRuleEntry 14 }
|
|
|
|
aclRuleIpPrecedence OBJECT-TYPE
|
|
SYNTAX Integer32
|
|
MAX-ACCESS read-create
|
|
STATUS current
|
|
DESCRIPTION
|
|
"The Type of Service (TOS) IP Precedence value."
|
|
::= { aclRuleEntry 15 }
|
|
|
|
aclRuleIpTosBits OBJECT-TYPE
|
|
SYNTAX Integer32
|
|
MAX-ACCESS read-create
|
|
STATUS current
|
|
DESCRIPTION
|
|
"The Type of Service (TOS) Bits value."
|
|
::= { aclRuleEntry 16 }
|
|
|
|
aclRuleIpTosMask OBJECT-TYPE
|
|
SYNTAX Integer32
|
|
MAX-ACCESS read-create
|
|
STATUS current
|
|
DESCRIPTION
|
|
"The Type of Service (TOS) Mask value."
|
|
::= { aclRuleEntry 17 }
|
|
|
|
aclRuleStatus OBJECT-TYPE
|
|
SYNTAX RowStatus
|
|
MAX-ACCESS read-create
|
|
STATUS current
|
|
DESCRIPTION
|
|
"Status of this instance.
|
|
|
|
active(1) - this ACL Rule is active
|
|
createAndGo(4) - set to this value to create an instance
|
|
destroy(6) - set to this value to delete an instance"
|
|
::= { aclRuleEntry 18 }
|
|
|
|
aclRuleAssignQueueId OBJECT-TYPE
|
|
SYNTAX Unsigned32
|
|
MAX-ACCESS read-create
|
|
STATUS current
|
|
DESCRIPTION
|
|
"Queue identifier to which all inbound packets matching this
|
|
ACL rule are directed. This object defaults to the standard
|
|
queue assignment for user priority 0 traffic per the IEEE 802.1D
|
|
specification based on the number of assignable queues in the
|
|
system:
|
|
1-3 queues: 0
|
|
4-7 queues: 1
|
|
8 queues: 2
|
|
This default assignment is static and is not influenced by
|
|
other system configuration changes."
|
|
::= { aclRuleEntry 19 }
|
|
|
|
aclRuleRedirectIntf OBJECT-TYPE
|
|
SYNTAX InterfaceIndexOrZero
|
|
MAX-ACCESS read-create
|
|
STATUS current
|
|
DESCRIPTION
|
|
"A non-zero value indicates the external ifIndex to which all
|
|
inbound packets matching this ACL rule are directed. A
|
|
value of zero means packet redirection is not in effect, which
|
|
is the default value of this object."
|
|
DEFVAL { 0 }
|
|
::= { aclRuleEntry 20 }
|
|
|
|
aclRuleMatchEvery OBJECT-TYPE
|
|
SYNTAX TruthValue
|
|
MAX-ACCESS read-create
|
|
STATUS current
|
|
DESCRIPTION
|
|
"Flag to indicate that the acl rule is defined to match on every IP packet,
|
|
regardless of content."
|
|
::= { aclRuleEntry 21 }
|
|
|
|
|
|
--**************************************************************************************
|
|
-- Layer 2 MAC Access Lists
|
|
--
|
|
--**************************************************************************************
|
|
|
|
aclMacIndexNextFree OBJECT-TYPE
|
|
SYNTAX Integer32
|
|
MAX-ACCESS read-only
|
|
STATUS current
|
|
DESCRIPTION
|
|
"This object contains an unused value for the aclMacIndex
|
|
to be used when creating a new MAC ACL. A value of zero
|
|
zero indicates the ACL table is full."
|
|
::= { hmAgentQOSACL 5 }
|
|
|
|
--**************************************************************************************
|
|
|
|
aclMacTable OBJECT-TYPE
|
|
SYNTAX SEQUENCE OF AclMacEntry
|
|
MAX-ACCESS not-accessible
|
|
STATUS current
|
|
DESCRIPTION
|
|
"A table of MAC ACL instances."
|
|
::= { hmAgentQOSACL 6 }
|
|
|
|
aclMacEntry OBJECT-TYPE
|
|
SYNTAX AclMacEntry
|
|
MAX-ACCESS not-accessible
|
|
STATUS current
|
|
DESCRIPTION
|
|
"The entry of the aclMacTable."
|
|
INDEX { aclMacIndex }
|
|
::= { aclMacTable 1 }
|
|
|
|
AclMacEntry ::= SEQUENCE {
|
|
aclMacIndex
|
|
Integer32,
|
|
aclMacName
|
|
DisplayString,
|
|
aclMacStatus
|
|
RowStatus
|
|
}
|
|
|
|
aclMacIndex OBJECT-TYPE
|
|
SYNTAX Integer32
|
|
MAX-ACCESS not-accessible
|
|
STATUS current
|
|
DESCRIPTION
|
|
"The MAC ACL table index this instance is associated with.
|
|
When creating a new MAC ACL, refer to the aclMacIndexNextFree
|
|
object to determine the next available aclMacIndex to use."
|
|
::= { aclMacEntry 1 }
|
|
|
|
aclMacName OBJECT-TYPE
|
|
SYNTAX DisplayString (SIZE(1..31))
|
|
MAX-ACCESS read-create
|
|
STATUS current
|
|
DESCRIPTION
|
|
"The name of this MAC ACL entry, which must consist of
|
|
1 to 31 alphanumeric characters and uniquely identify
|
|
this MAC ACL. An existing MAC ACL can be renamed by
|
|
setting this object to a new name.
|
|
|
|
This object must be set to complete a new MAC ACL
|
|
row instance."
|
|
::= { aclMacEntry 2 }
|
|
|
|
aclMacStatus OBJECT-TYPE
|
|
SYNTAX RowStatus
|
|
MAX-ACCESS read-create
|
|
STATUS current
|
|
DESCRIPTION
|
|
"Status of this instance. ACL MAC entries can not be deleted until all rows in
|
|
the aclIfTable and aclRuleTable with corresponding values of aclMacIndex
|
|
have been deleted.
|
|
|
|
active(1) - this ACL instance is active
|
|
createAndGo(4) - set to this value to create an instance
|
|
destroy(6) - set to this value to delete an instance
|
|
|
|
The aclMacName object must be set to complete this row instance."
|
|
::= { aclMacEntry 3 }
|
|
|
|
--**************************************************************************************
|
|
|
|
aclMacRuleTable OBJECT-TYPE
|
|
SYNTAX SEQUENCE OF AclMacRuleEntry
|
|
MAX-ACCESS not-accessible
|
|
STATUS current
|
|
DESCRIPTION
|
|
"A table of layer 2 MAC ACL Rule instances."
|
|
::= { hmAgentQOSACL 7 }
|
|
|
|
aclMacRuleEntry OBJECT-TYPE
|
|
SYNTAX AclMacRuleEntry
|
|
MAX-ACCESS not-accessible
|
|
STATUS current
|
|
DESCRIPTION
|
|
"A table of layer 2 MAC ACL Classification Rules"
|
|
INDEX { aclMacIndex, aclMacRuleIndex }
|
|
::= { aclMacRuleTable 1 }
|
|
|
|
AclMacRuleEntry ::= SEQUENCE {
|
|
aclMacRuleIndex
|
|
Integer32,
|
|
aclMacRuleAction
|
|
INTEGER,
|
|
aclMacRuleCos
|
|
Unsigned32,
|
|
aclMacRuleCos2
|
|
Unsigned32,
|
|
aclMacRuleDestMacAddr
|
|
MacAddress,
|
|
aclMacRuleDestMacMask
|
|
MacAddress,
|
|
aclMacRuleEtypeKey
|
|
INTEGER,
|
|
aclMacRuleEtypeValue
|
|
EtypeValue,
|
|
aclMacRuleSrcMacAddr
|
|
MacAddress,
|
|
aclMacRuleSrcMacMask
|
|
MacAddress,
|
|
aclMacRuleVlanId
|
|
Unsigned32,
|
|
aclMacRuleVlanIdRangeStart
|
|
Unsigned32,
|
|
aclMacRuleVlanIdRangeEnd
|
|
Unsigned32,
|
|
aclMacRuleVlanId2
|
|
Unsigned32,
|
|
aclMacRuleVlanId2RangeStart
|
|
Unsigned32,
|
|
aclMacRuleVlanId2RangeEnd
|
|
Unsigned32,
|
|
aclMacRuleStatus
|
|
RowStatus,
|
|
aclMacRuleAssignQueueId
|
|
Unsigned32,
|
|
aclMacRuleRedirectIntf
|
|
InterfaceIndexOrZero,
|
|
aclMacRuleMatchEvery
|
|
TruthValue
|
|
}
|
|
|
|
aclMacRuleIndex OBJECT-TYPE
|
|
SYNTAX Integer32
|
|
MAX-ACCESS not-accessible
|
|
STATUS current
|
|
DESCRIPTION
|
|
"The index of this rule instance within an MAC ACL."
|
|
::= { aclMacRuleEntry 1 }
|
|
|
|
aclMacRuleAction OBJECT-TYPE
|
|
SYNTAX INTEGER {
|
|
permit(1),
|
|
deny(2)
|
|
}
|
|
MAX-ACCESS read-create
|
|
STATUS current
|
|
DESCRIPTION
|
|
"The type of action this MAC ACL rule should perform."
|
|
DEFVAL { deny }
|
|
::= { aclMacRuleEntry 2 }
|
|
|
|
aclMacRuleCos OBJECT-TYPE
|
|
SYNTAX Unsigned32 (0..7)
|
|
MAX-ACCESS read-create
|
|
STATUS current
|
|
DESCRIPTION
|
|
"The Class of Service (COS) used in the MAC ACL Classification.
|
|
|
|
This is the three-bit user priority field in the 802.1Q tag
|
|
header of a tagged Ethernet frame. For frames containing a
|
|
double VLAN tag, this field is located in the first/outer tag."
|
|
::= { aclMacRuleEntry 3 }
|
|
|
|
aclMacRuleCos2 OBJECT-TYPE
|
|
SYNTAX Unsigned32 (0..7)
|
|
MAX-ACCESS read-create
|
|
STATUS current
|
|
DESCRIPTION
|
|
"The Secondary Class of Service (COS2) used in the MAC ACL Classification.
|
|
|
|
This is the three-bit user priority field in the second/inner 802.1Q
|
|
tag header of a double VLAN tagged Ethernet frame."
|
|
::= { aclMacRuleEntry 4 }
|
|
|
|
aclMacRuleDestMacAddr OBJECT-TYPE
|
|
SYNTAX MacAddress
|
|
MAX-ACCESS read-create
|
|
STATUS current
|
|
DESCRIPTION
|
|
"The Destination MAC address used in the MAC ACL Classification."
|
|
::= { aclMacRuleEntry 5 }
|
|
|
|
aclMacRuleDestMacMask OBJECT-TYPE
|
|
SYNTAX MacAddress
|
|
MAX-ACCESS read-create
|
|
STATUS current
|
|
DESCRIPTION
|
|
"The Destination MAC address mask used in the MAC ACL Classification.
|
|
|
|
This mask value identifies the portion of the aclMacRuleDestMacAddr
|
|
that is compared against a packet. A non-contiguous mask value is
|
|
permitted."
|
|
::= { aclMacRuleEntry 6 }
|
|
|
|
aclMacRuleEtypeKey OBJECT-TYPE
|
|
SYNTAX INTEGER {
|
|
custom(1),
|
|
appletalk(2),
|
|
arp(3),
|
|
ibmsna(4),
|
|
ipv4(5),
|
|
ipv6(6),
|
|
ipx(7),
|
|
mplsmcast(8),
|
|
mplsucast(9),
|
|
netbios(10),
|
|
novell(11),
|
|
pppoe(12),
|
|
rarp(13)
|
|
}
|
|
MAX-ACCESS read-create
|
|
STATUS current
|
|
DESCRIPTION
|
|
"The Ethertype keyword used in the MAC ACL Classification.
|
|
|
|
A keyword of custom(1) requires that the aclMacRuleEtypeValue
|
|
object also be set."
|
|
::= { aclMacRuleEntry 7 }
|
|
|
|
aclMacRuleEtypeValue OBJECT-TYPE
|
|
SYNTAX EtypeValue
|
|
MAX-ACCESS read-create
|
|
STATUS current
|
|
DESCRIPTION
|
|
"The Ethertype custom value used in the MAC ACL Classification.
|
|
|
|
This object is only valid if the aclMacRuleEtypeKey is set to
|
|
custom(1). The allowed value for this object is 0x0600 to 0xFFFF
|
|
(1536 to 65535)."
|
|
::= { aclMacRuleEntry 8 }
|
|
|
|
aclMacRuleSrcMacAddr OBJECT-TYPE
|
|
SYNTAX MacAddress
|
|
MAX-ACCESS read-create
|
|
STATUS current
|
|
DESCRIPTION
|
|
"The Source MAC address used in the MAC ACL Classification."
|
|
::= { aclMacRuleEntry 9 }
|
|
|
|
aclMacRuleSrcMacMask OBJECT-TYPE
|
|
SYNTAX MacAddress
|
|
MAX-ACCESS read-create
|
|
STATUS current
|
|
DESCRIPTION
|
|
"The Source MAC address mask used in the MAC ACL Classification.
|
|
|
|
This mask value identifies the portion of the aclMacRuleSrcMacAddr
|
|
that is compared against a packet. A non-contiguous mask value is
|
|
permitted."
|
|
::= { aclMacRuleEntry 10 }
|
|
|
|
aclMacRuleVlanId OBJECT-TYPE
|
|
SYNTAX Unsigned32 (0..4095)
|
|
MAX-ACCESS read-create
|
|
STATUS current
|
|
DESCRIPTION
|
|
"The VLAN ID value used in the MAC ACL Classification.
|
|
|
|
The VLAN ID field is defined as the 12-bit VLAN identifier
|
|
in the 802.1Q tag header of a tagged Ethernet frame. This is
|
|
contained in the first/outer tag of a double VLAN tagged frame."
|
|
::= { aclMacRuleEntry 11 }
|
|
|
|
aclMacRuleVlanIdRangeStart OBJECT-TYPE
|
|
SYNTAX Unsigned32 (0..4095)
|
|
MAX-ACCESS read-create
|
|
STATUS current
|
|
DESCRIPTION
|
|
"The VLAN ID range start value used in the MAC ACL Classification.
|
|
Setting this value greater than the current aclMacRuleVlanIdRangeEnd
|
|
changes the VLAN ID range end to the same value as the range start.
|
|
|
|
The VLAN ID field is defined as the 12-bit VLAN identifier
|
|
in the 802.1Q tag header of a tagged Ethernet frame. This is
|
|
contained in the first/outer tag of a double VLAN tagged frame."
|
|
::= { aclMacRuleEntry 12 }
|
|
|
|
aclMacRuleVlanIdRangeEnd OBJECT-TYPE
|
|
SYNTAX Unsigned32 (0..4095)
|
|
MAX-ACCESS read-create
|
|
STATUS current
|
|
DESCRIPTION
|
|
"The VLAN ID range end value used in the MAC ACL Classification.
|
|
Setting this value less than the current aclMacRuleVlanIdRangeStart
|
|
changes the VLAN ID range start to the same value as the range end.
|
|
|
|
The VLAN ID field is defined as the 12-bit VLAN identifier
|
|
in the 802.1Q tag header of a tagged Ethernet frame. This is
|
|
contained in the first/outer tag of a double VLAN tagged frame."
|
|
::= { aclMacRuleEntry 13 }
|
|
|
|
aclMacRuleVlanId2 OBJECT-TYPE
|
|
SYNTAX Unsigned32 (0..4095)
|
|
MAX-ACCESS read-create
|
|
STATUS current
|
|
DESCRIPTION
|
|
"The Secondary VLAN ID value used in the MAC ACL Classification.
|
|
|
|
The Secondary VLAN ID field is defined as the 12-bit VLAN identifier
|
|
in the second/inner 802.1Q tag header of a double VLAN tagged Ethernet
|
|
frame."
|
|
::= { aclMacRuleEntry 14 }
|
|
|
|
aclMacRuleVlanId2RangeStart OBJECT-TYPE
|
|
SYNTAX Unsigned32 (0..4095)
|
|
MAX-ACCESS read-create
|
|
STATUS current
|
|
DESCRIPTION
|
|
"The Secondary VLAN ID range start value used in the MAC ACL Classification.
|
|
Setting this value greater than the current aclMacRuleVlanId2RangeEnd
|
|
changes the Secondary VLAN ID range end to the same value as the range start.
|
|
|
|
The Secondary VLAN ID field is defined as the 12-bit VLAN identifier
|
|
in the second/inner 802.1Q tag header of a double VLAN tagged Ethernet
|
|
frame."
|
|
::= { aclMacRuleEntry 15 }
|
|
|
|
aclMacRuleVlanId2RangeEnd OBJECT-TYPE
|
|
SYNTAX Unsigned32 (0..4095)
|
|
MAX-ACCESS read-create
|
|
STATUS current
|
|
DESCRIPTION
|
|
"The Secondary VLAN ID range end value used in the MAC ACL Classification.
|
|
Setting this value less than the current aclMacRuleVlanId2RangeStart
|
|
changes the Secondary VLAN ID range start to the same value as the range end.
|
|
|
|
The Secondary VLAN ID field is defined as the 12-bit VLAN identifier
|
|
in the second/inner 802.1Q tag header of a double VLAN tagged Ethernet
|
|
frame."
|
|
::= { aclMacRuleEntry 16 }
|
|
|
|
aclMacRuleStatus OBJECT-TYPE
|
|
SYNTAX RowStatus
|
|
MAX-ACCESS read-create
|
|
STATUS current
|
|
DESCRIPTION
|
|
"Status of this instance.
|
|
|
|
active(1) - this ACL Rule is active
|
|
createAndGo(4) - set to this value to create an instance
|
|
destroy(6) - set to this value to delete an instance"
|
|
::= { aclMacRuleEntry 17 }
|
|
|
|
aclMacRuleAssignQueueId OBJECT-TYPE
|
|
SYNTAX Unsigned32
|
|
MAX-ACCESS read-create
|
|
STATUS current
|
|
DESCRIPTION
|
|
"Queue identifier to which all inbound packets matching this
|
|
MAC ACL rule are directed. This object defaults to the standard
|
|
queue assignment for user priority 0 traffic per the IEEE 802.1D
|
|
specification based on the number of assignable queues in the
|
|
system:
|
|
1-3 queues: 0
|
|
4-7 queues: 1
|
|
8 queues: 2
|
|
This default assignment is static and is not influenced by
|
|
other system configuration changes."
|
|
::= { aclMacRuleEntry 18 }
|
|
|
|
aclMacRuleRedirectIntf OBJECT-TYPE
|
|
SYNTAX InterfaceIndexOrZero
|
|
MAX-ACCESS read-create
|
|
STATUS current
|
|
DESCRIPTION
|
|
"A non-zero value indicates the external ifIndex to which all
|
|
inbound packets matching this MAC ACL rule are directed. A
|
|
value of zero means packet redirection is not in effect, which
|
|
is the default value of this object."
|
|
DEFVAL { 0 }
|
|
::= { aclMacRuleEntry 19 }
|
|
|
|
aclMacRuleMatchEvery OBJECT-TYPE
|
|
SYNTAX TruthValue
|
|
MAX-ACCESS read-create
|
|
STATUS current
|
|
DESCRIPTION
|
|
"Flag to indicate that the MAC acl rule is defined to match all packets,
|
|
regardless of Ethertype."
|
|
::= { aclMacRuleEntry 20 }
|
|
|
|
|
|
--*********************************************************************
|
|
-- hmAgentCosMapCfgGroup
|
|
--
|
|
-- Note: System-wide configuration is supported for this
|
|
-- group by using an index value of 0.
|
|
--*********************************************************************
|
|
hmAgentCosMapCfgGroup OBJECT IDENTIFIER ::= { hmAgentQOSCOS 1 }
|
|
|
|
-- IP Precedence mapping table (global and per-port)
|
|
hmAgentCosMapIpPrecTable OBJECT-TYPE
|
|
SYNTAX SEQUENCE OF HmAgentCosMapIpPrecEntry
|
|
MAX-ACCESS not-accessible
|
|
STATUS current
|
|
DESCRIPTION
|
|
"A table mapping evaluated IP precedence to Traffic
|
|
Class for a specific physical port. Traffic class
|
|
is a number in the range
|
|
(0..(dot1dPortNumTrafficClasses-1))."
|
|
|
|
::= { hmAgentCosMapCfgGroup 1 }
|
|
|
|
hmAgentCosMapIpPrecEntry OBJECT-TYPE
|
|
SYNTAX HmAgentCosMapIpPrecEntry
|
|
MAX-ACCESS not-accessible
|
|
STATUS current
|
|
DESCRIPTION
|
|
"IP Precedence to Traffic Class mapping for a port."
|
|
INDEX { hmAgentCosMapIpPrecIntfIndex, hmAgentCosMapIpPrecValue }
|
|
::= { hmAgentCosMapIpPrecTable 1 }
|
|
|
|
HmAgentCosMapIpPrecEntry ::=
|
|
SEQUENCE {
|
|
hmAgentCosMapIpPrecIntfIndex
|
|
InterfaceIndexOrZero,
|
|
hmAgentCosMapIpPrecValue
|
|
Unsigned32,
|
|
hmAgentCosMapIpPrecTrafficClass
|
|
Unsigned32
|
|
}
|
|
|
|
hmAgentCosMapIpPrecIntfIndex OBJECT-TYPE
|
|
SYNTAX InterfaceIndexOrZero
|
|
MAX-ACCESS not-accessible
|
|
STATUS current
|
|
DESCRIPTION
|
|
"This is a unique index for an entry in the
|
|
hmAgentCosMapIpPrecTable. A non-zero value indicates
|
|
the ifIndex for the corresponding interface entry
|
|
in the ifTable. A value of zero represents global
|
|
configuration, which in turn causes all interface
|
|
entries to be updated for a set operation, or
|
|
reflects the most recent global setting for a get
|
|
operation."
|
|
|
|
::= { hmAgentCosMapIpPrecEntry 1 }
|
|
|
|
hmAgentCosMapIpPrecValue OBJECT-TYPE
|
|
SYNTAX Unsigned32 (0..7)
|
|
MAX-ACCESS not-accessible
|
|
STATUS current
|
|
DESCRIPTION
|
|
"The IP precedence value contained in the received
|
|
frame. This value is only indicated in IP packets,
|
|
but is independent of both media-type and frame
|
|
tagging.
|
|
|
|
Non-IP packets are handled in accordance with the
|
|
dot1dPortDefaultUserPriority value of the ingress
|
|
port."
|
|
|
|
::= { hmAgentCosMapIpPrecEntry 2 }
|
|
|
|
hmAgentCosMapIpPrecTrafficClass OBJECT-TYPE
|
|
SYNTAX Unsigned32 (0..7)
|
|
MAX-ACCESS read-write
|
|
STATUS current
|
|
DESCRIPTION
|
|
"Traffic class priority queue the received frame is
|
|
mapped to. This represents the actual configuration
|
|
setting the port is using."
|
|
|
|
::= { hmAgentCosMapIpPrecEntry 3 }
|
|
|
|
|
|
-- IP DSCP mapping table (global and per-port)
|
|
hmAgentCosMapIpDscpTable OBJECT-TYPE
|
|
SYNTAX SEQUENCE OF HmAgentCosMapIpDscpEntry
|
|
MAX-ACCESS not-accessible
|
|
STATUS current
|
|
DESCRIPTION
|
|
"A table mapping evaluated IP DSCP to Traffic Class
|
|
for a specific physical port. Traffic class is a
|
|
number in the range
|
|
(0..(dot1dPortNumTrafficClasses-1))."
|
|
|
|
::= { hmAgentCosMapCfgGroup 2 }
|
|
|
|
hmAgentCosMapIpDscpEntry OBJECT-TYPE
|
|
SYNTAX HmAgentCosMapIpDscpEntry
|
|
MAX-ACCESS not-accessible
|
|
STATUS current
|
|
DESCRIPTION
|
|
"IP DSCP to Traffic Class mapping for a port."
|
|
INDEX { hmAgentCosMapIpDscpIntfIndex, hmAgentCosMapIpDscpValue }
|
|
::= { hmAgentCosMapIpDscpTable 1 }
|
|
|
|
HmAgentCosMapIpDscpEntry ::=
|
|
SEQUENCE {
|
|
hmAgentCosMapIpDscpIntfIndex
|
|
InterfaceIndexOrZero,
|
|
hmAgentCosMapIpDscpValue
|
|
Unsigned32,
|
|
hmAgentCosMapIpDscpTrafficClass
|
|
Unsigned32
|
|
}
|
|
|
|
hmAgentCosMapIpDscpIntfIndex OBJECT-TYPE
|
|
SYNTAX InterfaceIndexOrZero
|
|
MAX-ACCESS not-accessible
|
|
STATUS current
|
|
DESCRIPTION
|
|
"This is a unique index for an entry in the
|
|
hmAgentCosMapIpDscpTable. A non-zero value indicates
|
|
the ifIndex for the corresponding interface entry
|
|
in the ifTable. A value of zero represents global
|
|
configuration, which in turn causes all interface
|
|
entries to be updated for a set operation, or
|
|
reflects the most recent global setting for a get
|
|
operation."
|
|
|
|
::= { hmAgentCosMapIpDscpEntry 1 }
|
|
|
|
hmAgentCosMapIpDscpValue OBJECT-TYPE
|
|
SYNTAX Unsigned32 (0..63)
|
|
MAX-ACCESS not-accessible
|
|
STATUS current
|
|
DESCRIPTION
|
|
"The IP DSCP value contained in the received frame.
|
|
This value is only indicated in IP packets, but is
|
|
independent of both media-type and frame tagging.
|
|
|
|
Non-IP packets are handled in accordance with the
|
|
dot1dPortDefaultUserPriority value of the ingress
|
|
port."
|
|
|
|
::= { hmAgentCosMapIpDscpEntry 2 }
|
|
|
|
hmAgentCosMapIpDscpTrafficClass OBJECT-TYPE
|
|
SYNTAX Unsigned32 (0..7)
|
|
MAX-ACCESS read-write
|
|
STATUS current
|
|
DESCRIPTION
|
|
"Traffic class priority queue the received frame is
|
|
mapped to."
|
|
|
|
::= { hmAgentCosMapIpDscpEntry 3 }
|
|
|
|
|
|
-- Interface trust mode (global and per-port)
|
|
hmAgentCosMapIntfTrustTable OBJECT-TYPE
|
|
SYNTAX SEQUENCE OF HmAgentCosMapIntfTrustEntry
|
|
MAX-ACCESS not-accessible
|
|
STATUS current
|
|
DESCRIPTION
|
|
"Specifies the interface trust mode of operation for
|
|
a port. The trust mode setting determines which COS
|
|
mapping table is used for directing ingress packets
|
|
to a Traffic Class."
|
|
|
|
::= { hmAgentCosMapCfgGroup 3 }
|
|
|
|
hmAgentCosMapIntfTrustEntry OBJECT-TYPE
|
|
SYNTAX HmAgentCosMapIntfTrustEntry
|
|
MAX-ACCESS not-accessible
|
|
STATUS current
|
|
DESCRIPTION
|
|
"COS interface trust mode."
|
|
INDEX { hmAgentCosMapIntfTrustIntfIndex }
|
|
::= { hmAgentCosMapIntfTrustTable 1 }
|
|
|
|
HmAgentCosMapIntfTrustEntry ::=
|
|
SEQUENCE {
|
|
hmAgentCosMapIntfTrustIntfIndex
|
|
InterfaceIndexOrZero,
|
|
hmAgentCosMapIntfTrustMode
|
|
INTEGER,
|
|
hmAgentCosMapUntrustedTrafficClass
|
|
Unsigned32
|
|
}
|
|
|
|
hmAgentCosMapIntfTrustIntfIndex OBJECT-TYPE
|
|
SYNTAX InterfaceIndexOrZero
|
|
MAX-ACCESS not-accessible
|
|
STATUS current
|
|
DESCRIPTION
|
|
"This is a unique index for an entry in the
|
|
hmAgentCosMapIntfTrustTable. A non-zero value indicates
|
|
the ifIndex for the corresponding interface entry
|
|
in the ifTable. A value of zero represents global
|
|
configuration, which in turn causes all interface
|
|
entries to be updated for a set operation, or
|
|
reflects the most recent global setting for a get
|
|
operation."
|
|
|
|
::= { hmAgentCosMapIntfTrustEntry 1 }
|
|
|
|
hmAgentCosMapIntfTrustMode OBJECT-TYPE
|
|
SYNTAX INTEGER {
|
|
untrusted(1),
|
|
trustDot1p(2),
|
|
trustIpPrecedence(3),
|
|
trustIpDscp(4)
|
|
}
|
|
MAX-ACCESS read-write
|
|
STATUS current
|
|
DESCRIPTION
|
|
"The class of service trust mode of an interface.
|
|
When set to a trusted mode, the appropriate COS
|
|
mapping table is used as follows:
|
|
|
|
trustDot1p(2) : dot1dTrafficClassTable
|
|
trustIpPrecedence(3): hmAgentCosMapIpPrecTable
|
|
trustIpDscp(4): hmAgentCosMapIpDscpTable
|
|
|
|
For an untrusted(1) interface, packets are handled in
|
|
accordance with the dot1dPortDefaultUserPriority value
|
|
of the ingress port."
|
|
|
|
::= { hmAgentCosMapIntfTrustEntry 2 }
|
|
|
|
hmAgentCosMapUntrustedTrafficClass OBJECT-TYPE
|
|
SYNTAX Unsigned32
|
|
MAX-ACCESS read-only
|
|
STATUS current
|
|
DESCRIPTION
|
|
"The traffic class (i.e. hardware queue) to which all
|
|
untrusted traffic is assigned. This includes all
|
|
traffic when the hmAgentCosMapIntfTrustMode is set to
|
|
untrusted(1), or just non-IP packets when in
|
|
trustIpPrecedence(3) or trustIpDscp(4) modes.
|
|
|
|
This is a read-only object that reflects the current setting
|
|
of the dot1dPortDefaultUserPriority object as mapped
|
|
to a traffic class through the dot1dTrafficClassEntry."
|
|
::= { hmAgentCosMapIntfTrustEntry 3 }
|
|
|
|
|
|
|
|
--*********************************************************************
|
|
-- hmAgentCosQueueCfgGroup
|
|
--
|
|
-- Note: System-wide configuration is supported for this
|
|
-- group by using an index value of 0.
|
|
--*********************************************************************
|
|
hmAgentCosQueueCfgGroup OBJECT IDENTIFIER ::= { hmAgentQOSCOS 2 }
|
|
|
|
hmAgentCosQueueNumQueuesPerPort OBJECT-TYPE
|
|
SYNTAX Unsigned32
|
|
MAX-ACCESS read-only
|
|
STATUS current
|
|
DESCRIPTION
|
|
"The number of configurable COS queues per port
|
|
supported by the hardware device."
|
|
::= { hmAgentCosQueueCfgGroup 1 }
|
|
|
|
hmAgentCosQueueNumDropPrecedenceLevels OBJECT-TYPE
|
|
SYNTAX Unsigned32
|
|
MAX-ACCESS read-only
|
|
STATUS current
|
|
DESCRIPTION
|
|
"The number of distinct drop precedence levels per
|
|
queue supported by the hardware device. These levels
|
|
are typically used when configuring the queue
|
|
management tail drop and WRED parameters."
|
|
::= { hmAgentCosQueueCfgGroup 2 }
|
|
|
|
-- Control table for managing queue configuration for the interface
|
|
hmAgentCosQueueControlTable OBJECT-TYPE
|
|
SYNTAX SEQUENCE OF HmAgentCosQueueControlEntry
|
|
MAX-ACCESS not-accessible
|
|
STATUS current
|
|
DESCRIPTION
|
|
"Table of class-of-service queue configuration
|
|
controls for the specified interface."
|
|
::= { hmAgentCosQueueCfgGroup 3 }
|
|
|
|
hmAgentCosQueueControlEntry OBJECT-TYPE
|
|
SYNTAX HmAgentCosQueueControlEntry
|
|
MAX-ACCESS not-accessible
|
|
STATUS current
|
|
DESCRIPTION
|
|
"Provides a general control mechanism that affects
|
|
all queues on a given interface."
|
|
INDEX { hmAgentCosQueueIntfIndex }
|
|
::= { hmAgentCosQueueControlTable 1 }
|
|
|
|
HmAgentCosQueueControlEntry ::= SEQUENCE {
|
|
hmAgentCosQueueIntfIndex
|
|
InterfaceIndexOrZero,
|
|
hmAgentCosQueueIntfShapingRate
|
|
Unsigned32,
|
|
hmAgentCosQueueMgmtTypeIntf
|
|
INTEGER,
|
|
hmAgentCosQueueWredDecayExponent
|
|
Unsigned32,
|
|
hmAgentCosQueueDefaultsRestore
|
|
INTEGER
|
|
}
|
|
|
|
hmAgentCosQueueIntfIndex OBJECT-TYPE
|
|
SYNTAX InterfaceIndexOrZero
|
|
MAX-ACCESS not-accessible
|
|
STATUS current
|
|
DESCRIPTION
|
|
"This is a unique index for an entry in the
|
|
hmAgentCosQueueControlTable, hmAgentCosQueueTable,
|
|
or hmAgentCosQueueMgmtTable. A non-zero value indicates
|
|
the ifIndex for the corresponding interface entry
|
|
in the ifTable. A value of zero represents global
|
|
configuration, which in turn causes all interface
|
|
entries to be updated for a set operation, or
|
|
reflects the most recent global setting for a get
|
|
operation."
|
|
|
|
::= { hmAgentCosQueueControlEntry 1 }
|
|
|
|
hmAgentCosQueueIntfShapingRate OBJECT-TYPE
|
|
SYNTAX Unsigned32 (0..100)
|
|
MAX-ACCESS read-write
|
|
STATUS current
|
|
DESCRIPTION
|
|
"Maximum bandwidth allowed for this interface as a
|
|
whole, typically used to shape the outbound
|
|
transmission rate. The value is specified in terms
|
|
of percentage of overall link speed for the port in
|
|
1% increments. A value of 0 means there is no
|
|
maximum bandwidth limit in effect and that the
|
|
interface is allowed to transmit up to its maximum
|
|
line rate (i.e., work conserving method).
|
|
The default value is 0.
|
|
|
|
When set to a non-zero value, the interface is
|
|
restricted to using at most the bandwidth specified
|
|
in this object for the outbound transmission rate
|
|
(i.e., non-work-conserving method). This bandwidth
|
|
value is independent of any per-queue maximum
|
|
bandwidth value(s) in effect for the interface, as
|
|
specified in the hmAgentCosQueueMaxBandwidth ohject,
|
|
and should be considered as a second-level
|
|
transmission rate control mechanism that regulates
|
|
the output of the entire interface regardless of
|
|
which queues originate the outbound traffic."
|
|
DEFVAL { 0 }
|
|
::= { hmAgentCosQueueControlEntry 2 }
|
|
|
|
hmAgentCosQueueMgmtTypeIntf OBJECT-TYPE
|
|
SYNTAX INTEGER {
|
|
taildrop(1),
|
|
wred(2)
|
|
}
|
|
MAX-ACCESS read-write
|
|
STATUS current
|
|
DESCRIPTION
|
|
"The management technique used for all queues on this
|
|
interface. If taildrop(1), then all new packets
|
|
presented to the queues are dropped based on some
|
|
maximum threshold value(s). If wred(2), then an
|
|
active queue management scheme is employed whereby
|
|
packet drop precedence is considered during times of
|
|
queue congestion using WRED parameters. The
|
|
necessary queue management parameters are specified
|
|
in the hmAgentCosQueueMgmtTable for the corresponding
|
|
hmAgentCosQueueIntfIndex value. The default for this
|
|
object is taildrop(1).
|
|
|
|
Implementations that support this object but do not
|
|
support weighted RED must return taildrop(1) for this
|
|
value and must not allow a value of wred(2) to be set."
|
|
DEFVAL { taildrop }
|
|
::= { hmAgentCosQueueControlEntry 3 }
|
|
|
|
hmAgentCosQueueWredDecayExponent OBJECT-TYPE
|
|
SYNTAX Unsigned32 (1..15)
|
|
MAX-ACCESS read-write
|
|
STATUS current
|
|
DESCRIPTION
|
|
"The decay exponent value used with the weighted
|
|
random early discard (WRED) algorithm to determine
|
|
how quickly the average queue length calculation
|
|
reacts to the current length of the queue. A higher
|
|
value produces a slower response, meaning previously
|
|
sampled queue length values are factored into the
|
|
calculation for a longer period of time. The default
|
|
value is 9.
|
|
|
|
Use caution when changing this value from its
|
|
default. If set too low, short traffic bursts can
|
|
cause WRED to drop too many packets. If set too
|
|
high, WRED might not detect queue congestion in a
|
|
timely manner and becomes ineffective. The default
|
|
value should be sufficient for most users.
|
|
|
|
This object value is only used when the
|
|
hmAgentCosQueueMgmtType is set to wred(2) and is
|
|
otherwise ignored."
|
|
DEFVAL { 9 }
|
|
::= { hmAgentCosQueueControlEntry 4 }
|
|
|
|
hmAgentCosQueueDefaultsRestore OBJECT-TYPE
|
|
SYNTAX INTEGER {
|
|
enable(1),
|
|
disable(2)
|
|
}
|
|
MAX-ACCESS read-write
|
|
STATUS current
|
|
DESCRIPTION
|
|
"Causes the default values to be restored for all COS
|
|
queue objects defined for this interface. This
|
|
includes objects in the following tables:
|
|
hmAgentCosQueueTable
|
|
hmAgentCosQueueMgmtTable
|
|
|
|
This object always reads as disable(2). This object may
|
|
only be set to enable(1), which immediately causes the
|
|
default value restoration action as described above.
|
|
In essence, this models a momentary-style push button
|
|
switch that triggers a restoration of the original
|
|
default values for all affected objects."
|
|
::= { hmAgentCosQueueControlEntry 5 }
|
|
|
|
|
|
-- Queue table for specifying attributes of each COS queue on an interface
|
|
hmAgentCosQueueTable OBJECT-TYPE
|
|
SYNTAX SEQUENCE OF HmAgentCosQueueEntry
|
|
MAX-ACCESS not-accessible
|
|
STATUS current
|
|
DESCRIPTION
|
|
"Table of class-of-service queue configuration
|
|
parameters for the specified interface."
|
|
::= { hmAgentCosQueueCfgGroup 4 }
|
|
|
|
hmAgentCosQueueEntry OBJECT-TYPE
|
|
SYNTAX HmAgentCosQueueEntry
|
|
MAX-ACCESS not-accessible
|
|
STATUS current
|
|
DESCRIPTION
|
|
"Each entry describes a single class-of-service (COS)
|
|
queue for a given Interface Index. The number of
|
|
configurable COS queues for an interface vary based
|
|
on device capabilities.
|
|
|
|
All objects defined for this table entry contain a
|
|
default value corresponding to a typical,
|
|
non-preferential treatment of packets traversing the
|
|
interface's COS queues."
|
|
INDEX { hmAgentCosQueueIntfIndex, hmAgentCosQueueIndex }
|
|
::= { hmAgentCosQueueTable 1 }
|
|
|
|
HmAgentCosQueueEntry ::= SEQUENCE {
|
|
hmAgentCosQueueIndex
|
|
Unsigned32,
|
|
hmAgentCosQueueSchedulerType
|
|
INTEGER,
|
|
hmAgentCosQueueMinBandwidth
|
|
Unsigned32,
|
|
hmAgentCosQueueMaxBandwidth
|
|
Unsigned32,
|
|
hmAgentCosQueueMgmtType
|
|
INTEGER
|
|
}
|
|
|
|
hmAgentCosQueueIndex OBJECT-TYPE
|
|
SYNTAX Unsigned32
|
|
MAX-ACCESS not-accessible
|
|
STATUS current
|
|
DESCRIPTION
|
|
"The COS queue index, numbered 0 to (n-1), where n is
|
|
the total number of configurable interface queues for
|
|
the device as indicated by hmAgentCosQueueNumQueuesPerPort.
|
|
In general, a higher numbered queue index is used to
|
|
support higher priority traffic, although actual
|
|
operation may be altered via configuration through
|
|
this table."
|
|
::= { hmAgentCosQueueEntry 1 }
|
|
|
|
hmAgentCosQueueSchedulerType OBJECT-TYPE
|
|
SYNTAX INTEGER {
|
|
strict(1),
|
|
weighted(2)
|
|
}
|
|
MAX-ACCESS read-write
|
|
STATUS current
|
|
DESCRIPTION
|
|
"The type of scheduling used for this queue. If
|
|
strict(1), then all traffic placed on this queue is
|
|
transmitted before any queue with a lower precedence
|
|
(lower hmAgentCosQueueIndex). A weighted(2) scheme
|
|
gives this queue service relative to other weighted
|
|
queues based on their relative hmAgentCosQueueMinBandwidth
|
|
object values. The default is weighted(2)."
|
|
DEFVAL { weighted }
|
|
::= { hmAgentCosQueueEntry 2 }
|
|
|
|
hmAgentCosQueueMinBandwidth OBJECT-TYPE
|
|
SYNTAX Unsigned32 (0..100)
|
|
MAX-ACCESS read-write
|
|
STATUS current
|
|
DESCRIPTION
|
|
"Minimum guaranteed bandwidth allotted to this queue.
|
|
The value is specified in terms of percentage of
|
|
overall link speed for the port in 1% increments. A
|
|
value of 0 means there is no guaranteed minimum
|
|
bandwidth in effect (best-effort service).
|
|
The default value is 0.
|
|
|
|
The sum of all hmAgentCosQueueMinBandwidth object
|
|
values for the queues on the same interface must not
|
|
exceed 100%.
|
|
|
|
If the hmAgentCosQueueMaxBandwidth corresponding to the
|
|
same hmAgentCosQueueIndex on this interface is
|
|
currently set to a non-zero value, then setting this
|
|
object to a value greater than
|
|
hmAgentCosQueueMaxBandwidth automatically updates
|
|
hmAgentCosQueueMaxBandwidth to the same value to
|
|
maintain a proper relationship between the minimum
|
|
and maximum queue bandwidth specification.
|
|
|
|
The value of this object is ignored when
|
|
hmAgentCosQueueSchedulerType is set to strict(1)."
|
|
DEFVAL { 0 }
|
|
::= { hmAgentCosQueueEntry 3 }
|
|
|
|
hmAgentCosQueueMaxBandwidth OBJECT-TYPE
|
|
SYNTAX Unsigned32 (0..100)
|
|
MAX-ACCESS read-write
|
|
STATUS current
|
|
DESCRIPTION
|
|
"Maximum bandwidth allowed for this queue, typically
|
|
used to shape the outbound transmission rate. The
|
|
value is specified in terms of percentage of overall
|
|
link speed for the port in 1% increments. A value
|
|
of 0 means there is no maximum bandwidth limit in
|
|
effect and that the queue is allowed to use any
|
|
available excess bandwidth (i.e., work conserving
|
|
method). The default value is 0.
|
|
|
|
When set to a non-zero value, the queue is restricted
|
|
to using at most the bandwidth specified in this
|
|
object for the outbound transmission rate (i.e.,
|
|
non-work-conserving method). Any non-zero value set
|
|
for this object must be equal to or greater than the
|
|
value of hmAgentCosQueueMinBandwidth for the same
|
|
hmAgentCosQueueIndex on this interface."
|
|
DEFVAL { 0 }
|
|
::= { hmAgentCosQueueEntry 4 }
|
|
|
|
hmAgentCosQueueMgmtType OBJECT-TYPE
|
|
SYNTAX INTEGER {
|
|
taildrop(1),
|
|
wred(2)
|
|
}
|
|
MAX-ACCESS read-write
|
|
STATUS current
|
|
DESCRIPTION
|
|
"The queue depth management technique used when
|
|
per-queue specification is supported. If
|
|
taildrop(1), then all new packets presented to the
|
|
queue are dropped based on some maximum threshold
|
|
value(s). If wred(2), then an active queue management
|
|
scheme is employed whereby packet drop precedence is
|
|
considered during times of queue congestion using
|
|
WRED parameters. The necessary queue management
|
|
parameters are specified in the
|
|
hmAgentCosQueueMgmtEntry for the corresponding
|
|
hmAgentCosQueueIntfIndex and hmAgentCosQueueIndex values.
|
|
The default for this object is taildrop(1).
|
|
|
|
Implementations that do not support weighted RED must
|
|
return taildrop(1) for this value and must not allow
|
|
a value of wred(2) to be set."
|
|
DEFVAL { taildrop }
|
|
::= { hmAgentCosQueueEntry 5 }
|
|
|
|
END
|