ACC SHELL
Path : /usr/share/pibs/ |
|
Current File : //usr/share/pibs/QOS-POLICY-802-PIB |
QOS-POLICY-802-PIB PIB-DEFINITIONS ::= BEGIN
IMPORTS
ibrpib FROM TUBS-SMI
Unsigned32, Integer32,
MODULE-IDENTITY, OBJECT-TYPE
FROM SNMPv2-SMI
TruthValue, PhysAddress,
TEXTUAL-CONVENTION
FROM SNMPv2-TC
RoleCombination
FROM POLICY-FRAMEWORK-PIB
Dscp
FROM QOS-POLICY-IP-PIB
pib
FROM COPS-PR-SPPI
InstanceId
FROM COPS-PR-SPPI-TC;
qosPolicy802Pib MODULE-IDENTITY
SUBJECT-CATEGORIES { all } -- to be assigned
LAST-UPDATED "9906241800Z"
ORGANIZATION "IETF RAP WG"
CONTACT-INFO "
Michael Fine
Cisco Systems, Inc.
170 West Tasman Drive
San Jose, CA 95134-1706 USA
Phone: +1 408 527 8218
Email: mfine@cisco.com
Keith McCloghrie
Cisco Systems, Inc.
170 West Tasman Drive,
San Jose, CA 95134-1706 USA
Phone: +1 408 526 5260
Email: kzm@cisco.com
John Seligson
Nortel Networks, Inc.
4401 Great America Parkway
Santa Clara, CA 95054 USA
Phone: +1 408 495 2992
Email: jseligso@nortelnetworks.com"
DESCRIPTION
"The PIB module containing an initial set of policy
rule classes that describe the quality of service
(QoS) policies supported by devices for IEEE 802-
based traffic."
::= { ibrpib 5 } -- to be assigned !
qosPolicy802PibClasses OBJECT IDENTIFIER ::= { qosPolicy802Pib 1 }
--
-- Textual Conventions
--
--
-- IEEE 802 CoS
--
QosIeee802Cos ::= TEXTUAL-CONVENTION
STATUS current
DESCRIPTION
"An integer that is in the range of the IEEE 802 CoS
values. This corresponds to the 802.1p priority values."
SYNTAX INTEGER (0..7)
--
-- General configuration information for the entire domain
--
qos802DomainConfig OBJECT IDENTIFIER ::= { qosPolicy802PibClasses 1 }
--
-- Differentiated Services Code Point Mapping Table
--
-- Supports the mapping of DSCP values to IEEE CoS values.
--
qos802DscpMappingTable OBJECT-TYPE
SYNTAX SEQUENCE OF Qos802DscpMappingEntry
PIB-ACCESS install
STATUS current
DESCRIPTION
"Maps each DSCP to an QosIeee802Cos. When configured
for the first time, all 64 entries of the table must
be specified. Thereafter, instances may be modified but
not deleted unless all instances are deleted."
INSTALL-ERRORS {
priInstNotComplete(1) -- required instances not created
}
::= { qos802DomainConfig 1 }
qos802DscpMappingEntry OBJECT-TYPE
SYNTAX Qos802DscpMappingEntry
STATUS current
DESCRIPTION
"An instance of the qos802DscpMapping class. A total of 64
class instances are constantly maintained after initial device
configuration."
PIB-INDEX { qos802DscpMappingId }
::= { qos802DscpMappingTable 1 }
Qos802DscpMappingEntry ::= SEQUENCE {
qos802DscpMappingId InstanceId,
qos802DscpMappingDscp Dscp,
qos802DscpMapping802Cos QosIeee802Cos
}
qos802DscpMappingId OBJECT-TYPE
SYNTAX InstanceId
STATUS current
DESCRIPTION
"A unique ID for this policy rule instance."
::= { qos802DscpMappingEntry 1 }
qos802DscpMappingDscp OBJECT-TYPE
SYNTAX Dscp
STATUS current
DESCRIPTION
"The DSCP class instance attribute that is used to
determine the appropriate layer 2 CoS mappings. DSCP
values 0 through 63 (inclusive) are maintained in
the table."
::= { qos802DscpMappingEntry 2 }
qos802DscpMapping802Cos OBJECT-TYPE
SYNTAX QosIeee802Cos
STATUS current
DESCRIPTION
"The IEEE 802 CoS value to use when mapping the DSCP
value specified by the qos802DscpMappingDscp attribute
to a IEEE 802 CoS."
::= { qos802DscpMappingEntry 3 }
--
-- Layer 2 CoS-to-DSCP Mapping Table
--
-- Supports the mapping of IEEE CoS values to DSCP values
-- for generic QoS traffic classification
--
qos802CosToDscpTable OBJECT-TYPE
SYNTAX SEQUENCE OF Qos802CosToDscpEntry
PIB-ACCESS install
STATUS current
DESCRIPTION
"Maps each of eight layer 2 CoS values to a DSCP. When
configured for the first time, all 8 entries of the table
must be specified. Thereafter, instances may be modified
but not deleted unless all instances are deleted."
INSTALL-ERRORS {
priInstNotComplete(1) -- required instances not created
}
::= { qos802DomainConfig 2 }
qos802CosToDscpEntry OBJECT-TYPE
SYNTAX Qos802CosToDscpEntry
STATUS current
DESCRIPTION
"An instance of the qosCosToDscp class. A total of 8
class instances are constantly maintained after initial
device configuration."
PIB-INDEX { qos802CosToDscpId }
::= { qos802CosToDscpTable 1 }
Qos802CosToDscpEntry ::= SEQUENCE {
qos802CosToDscpId InstanceId,
qos802CosToDscpCos QosIeee802Cos,
qos802CosToDscpDscp Dscp
}
qos802CosToDscpId OBJECT-TYPE
SYNTAX InstanceId
STATUS current
DESCRIPTION
"A unique index for this policy rule instance."
::= { qos802CosToDscpEntry 1 }
qos802CosToDscpCos OBJECT-TYPE
SYNTAX QosIeee802Cos
STATUS current
DESCRIPTION
"The layer 2 CoS class instance attribute that is used to
determine the appropriate DSCP mappings. CoS values 0
through 7 (inclusive) are maintained in the table."
::= { qos802CosToDscpEntry 2 }
qos802CosToDscpDscp OBJECT-TYPE
SYNTAX Dscp
STATUS current
DESCRIPTION
"The DSCP value to use when mapping the layer 2 CoS value
specified by the qosCosToDscp attribute to a DSCP."
::= { qos802CosToDscpEntry 3 }
--
-- The IEEE 802 Classification and Policing Group
--
qos802Qos OBJECT IDENTIFIER ::= { qosPolicy802PibClasses 2 }
--
-- The IEEE 802 ACE Table
--
-- The IEEE 802 ACE Table supports the specification of IEEE
-- 802-based (e.g., 802.3) information that is used to perform
-- traffic classification.
--
qos802AceTable OBJECT-TYPE
SYNTAX SEQUENCE OF Qos802AceEntry
PIB-ACCESS install
STATUS current
DESCRIPTION
"IEEE 802-based ACE definitions. A class that contains
attributes of IEEE 802 (e.g., 802.3) traffic that form
an association that is used to perform traffic
classification."
::= { qos802Qos 1 }
qos802AceEntry OBJECT-TYPE
SYNTAX Qos802AceEntry
STATUS current
DESCRIPTION
"IEEE 802-based ACE definitions. An entry specifies
(potentially) several distinct matching components. Each
component is tested against the data in a frame
individually. An overall match occurs when all of the
individual components match the data they are compared
against in the frame being processed. A failure of any
one test causes the overall match to fail.
Wildcards may be specified for those fields that are not
relevant."
PIB-INDEX { qos802AceId }
::= { qos802AceTable 1 }
Qos802AceEntry ::= SEQUENCE {
qos802AceId InstanceId,
qos802AceDstAddr PhysAddress,
qos802AceDstAddrMask PhysAddress,
qos802AceSrcAddr PhysAddress,
qos802AceSrcAddrMask PhysAddress,
qos802AceVlanId Integer32,
qos802AceVlanTagRequired INTEGER,
qos802AceEtherType Integer32,
qos802AceUserPriority BITS,
qos802AcePermit TruthValue
}
qos802AceId OBJECT-TYPE
SYNTAX InstanceId
STATUS current
DESCRIPTION
"An arbitrary integer index that uniquely identifies this
802 ACE among all of the 802 ACEs. Note that this identifier
is used in instances of the qos802Acl class to associate a
802 ACE with a 802 ACL. An active ACE/ACL association
prohibits the deletion of the 802 ACE until the ACE/ACL
association is terminated. Class instances may not be
contiguous."
::= { qos802AceEntry 1 }
qos802AceDstAddr OBJECT-TYPE
SYNTAX PhysAddress
STATUS current
DESCRIPTION
"The 802 address against which the 802 DA of incoming traffic
streams will be compared. Frames whose 802 DA matches the
physical address specified by this object, taking into account
address wildcarding as specified by the qos802AceDstAddrMask
object, are potentially subject to the processing guidelines
that are associated with this entry through the related
action class."
::= { qos802AceEntry 2 }
qos802AceDstAddrMask OBJECT-TYPE
SYNTAX PhysAddress
STATUS current
DESCRIPTION
"This object specifies the bits in a 802 destination address
that should be considered when performing a 802 DA comparison
against the address specified in the qos802AceDstAddr object.
The value of this object represents a mask that is logically
and'ed with the 802 DA in received frames to derive the value
to be compared against the qos802AceDstAddr address. A zero
bit in the mask thus means that the corresponding bit in the
address always matches. The qos802AceDstAddr value must also
be masked using this value prior to any comparisons.
The length of this object in octets must equal the length in
octets of the qos802AceDstAddr. Note that a mask with no bits
set (i.e., all zeroes) effectively wildcards the
qos802AceDstAddr object."
::= { qos802AceEntry 3 }
qos802AceSrcAddr OBJECT-TYPE
SYNTAX PhysAddress
STATUS current
DESCRIPTION
"The 802 MAC address against which the 802 MAC SA of incoming
traffic streams will be compared. Frames whose 802 MAC SA
matches the physical address specified by this object,
taking into account address wildcarding as specified by the
qos802AceSrcAddrMask object, are potentially subject to the
processing guidelines that are associated with this entry
through the related action class."
::= { qos802AceEntry 4 }
qos802AceSrcAddrMask OBJECT-TYPE
SYNTAX PhysAddress
STATUS current
DESCRIPTION
"This object specifies the bits in a 802 MAC source address
that should be considered when performing a 802 MAC SA
comparison against the address specified in the
qos802AceSrcAddr object.
The value of this object represents a mask that is logically
and'ed with the 802 MAC SA in received frames to derive the
value to be compared against the qos802AceSrcAddr address. A
zero bit in the mask thus means that the corresponding bit
in the address always matches. The qos802AceSrcAddr value
must also be masked using this value prior to any
comparisons.
The length of this object in octets must equal the length in
octets of the qos802AceSrcAddr. Note that a mask with no bits
set (i.e., all zeroes) effectively wildcards the
qos802AceSrcAddr object."
::= { qos802AceEntry 5 }
qos802AceVlanId OBJECT-TYPE
SYNTAX Integer32 (-1 | 1..4094)
STATUS current
DESCRIPTION
"The VLAN ID (VID) that uniquely identifies a VLAN
within the device. This VLAN may be known or unknown
(i.e., traffic associated with this VID has not yet
been seen by the device) at the time this entry
is instantiated.
Setting the qos802AceVlanId object to -1 indicates that
VLAN data should not be considered during traffic
classification."
::= { qos802AceEntry 6 }
qos802AceVlanTagRequired OBJECT-TYPE
SYNTAX INTEGER {
taggedOnly(1),
priorityTaggedPlus(2),
untaggedOnly(3),
ignoreTag(4)
}
STATUS current
DESCRIPTION
"This object indicates whether the presence of an
IEEE 802.1Q VLAN tag in data link layer frames must
be considered when determining if a given frame
matches this 802 ACE entry.
A value of 'taggedOnly(1)' means that only frames
containing a VLAN tag with a non-Null VID (i.e., a
VID in the range 1..4094) will be considered a match.
A value of 'priorityTaggedPlus(2)' means that only
frames containing a VLAN tag, regardless of the value
of the VID, will be considered a match.
A value of 'untaggedOnly(3)' indicates that only
untagged frames will match this filter component.
The presence of a VLAN tag is not taken into
consideration in terms of a match if the value is
'ignoreTag(4)'."
::= { qos802AceEntry 7 }
qos802AceEtherType OBJECT-TYPE
SYNTAX Integer32 (-1 | 0..'ffff'h)
STATUS current
DESCRIPTION
"This object specifies the value that will be compared
against the value contained in the EtherType field of an
IEEE 802 frame. Example settings would include 'IP'
(0x0800), 'ARP' (0x0806) and 'IPX' (0x8137).
Setting the qos802AceEtherTypeMin object to -1 indicates
that EtherType data should not be considered during traffic
classification.
Note that the position of the EtherType field depends on
the underlying frame format. For Ethernet-II encapsulation,
the EtherType field follows the 802 MAC source address. For
802.2 LLC/SNAP encapsulation, the EtherType value follows the
Organization Code field in the 802.2 SNAP header. The value
that is tested with regard to this filter component therefore
depends on the data link layer frame format being used. If
this 802 ACE component is active when there is no EtherType
field in a frame (e.g., 802.2 LLC), a match is implied."
::= { qos802AceEntry 8 }
qos802AceUserPriority OBJECT-TYPE
SYNTAX BITS {
matchPriority0(0),
matchPriority1(1),
matchPriority2(2),
matchPriority3(3),
matchPriority4(4),
matchPriority5(5),
matchPriority6(6),
matchPriority7(7)
}
STATUS current
DESCRIPTION
"The set of values, representing the potential range
of user priority values, against which the value contained
in the user priority field of a tagged 802.1 frame is
compared. A test for equality is performed when determining
if a match exists between the data in a data link layer
frame and the value of this 802 ACE component. Multiple
values may be set at one time such that potentially several
different user priority values may match this 802 ACE
component.
Setting all of the bits that are associated with this
object causes all user priority values to match this
attribute. This essentially makes any comparisons
with regard to user priority values unnecessary. Untagged
frames are treated as an implicit match."
::= { qos802AceEntry 9 }
qos802AcePermit OBJECT-TYPE
SYNTAX TruthValue
STATUS current
DESCRIPTION
"If the frame matches this ACE and the value of this
attribute is true, then the matching process terminates
and the QoS associated with this 802-based ACE (indirectly
through the 802 ACL) is applied to the packet. If the
value of this attribute is false, then no more 802 ACEs in
this 802 ACL are compared to this packet and matching
continues with the first 802-based ACE of the next 802 ACL."
::= { qos802AceEntry 10 }
--
-- The IEEE 802 ACL Definition Table
--
-- The IEEE 802 ACL Definition Table supports the association of
-- distinct IEEE 802-based (e.g., 802.3) traffic classification
-- specifications into an ordered list.
--
qos802AclDefinitionTable OBJECT-TYPE
SYNTAX SEQUENCE OF Qos802AclDefinitionEntry
PIB-ACCESS install
STATUS current
DESCRIPTION
"IEEE 802-based ACL definitions. A class that defines a
set of 802 ACLs, each of which is comprised of an ordered
list of 802 ACEs."
INSTALL-ERRORS {
priPrecedenceConflict(1) -- precedence conflict detected
}
::= { qos802Qos 2 }
qos802AclDefinitionEntry OBJECT-TYPE
SYNTAX Qos802AclDefinitionEntry
STATUS current
DESCRIPTION
"IEEE 802-based ACL definitions. An entry specifies an
instance of this class that associates an 802 ACE with
a given 802 ACL. The evaluation order of distinct 802
ACEs that are associated with a specific 802 ACL is
specified as well."
PIB-INDEX { qos802AclDefinitionId }
::= { qos802AclDefinitionTable 1 }
Qos802AclDefinitionEntry ::= SEQUENCE {
qos802AclDefinitionId InstanceId,
qos802AclDefinitionAclId InstanceId,
qos802AclDefinitionAceId InstanceId,
qos802AclDefinitionAceOrder Unsigned32
}
qos802AclDefinitionId OBJECT-TYPE
SYNTAX InstanceId
STATUS current
DESCRIPTION
"An arbitrary integer index that uniquely identifies this
802 ACE / 802 ACL association."
::= { qos802AclDefinitionEntry 1 }
qos802AclDefinitionAclId OBJECT-TYPE
SYNTAX InstanceId
STATUS current
DESCRIPTION
"An index for this 802 ACL. Each 802 ACL in the device is
assigned a unique integer index. There will (potentially) be
multiple instances of the qos802AclDefinition class with this
identifier, one for each 802 ACE that is associated with the
specified 802 ACL.
For example, assume that 2 802 ACLs, each comprised of 4 802
ACEs, have been installed. The instances of this class may
appear as follows:
Index AclId AceId AceOrder
10 6 4 1
11 6 5 2
12 6 9 23
13 6 11 24
65 18 5 8
66 18 9 12
67 18 13 15
70 18 14 16
Note that this identifier is used in instances of the
qosAclTarget class to associate an 802 ACL with an interface
set and action. An active ACL Target association prohibits
the deletion of all of the qos802AclDefinition instances
with a given qos802AclDefinitionAclId (i.e., at least one
entry for the specific qos802AclDefinitionAclId must be
present in this table) until the ACL Target association is
terminated."
::= { qos802AclDefinitionEntry 2 }
qos802AclDefinitionAceId OBJECT-TYPE
SYNTAX InstanceId
STATUS current
DESCRIPTION
"This attribute identifies the 802 ACE in the qos802AceTable
that is associated with the 802 ACL specified by
qos802AclDefinitionAclId object. The corresponding instance
in the qos802Ace class must exist prior to being associated
with a 802 ACL.
Attempting to specify an unknown class instance will result
in an appropriate error indication being returned to the
entity that is attempting to install the conflicting entry.
For example, a 'priUnknown(2)' error indication is returned
to the policy server in this situation."
::= { qos802AclDefinitionEntry 3 }
qos802AclDefinitionAceOrder OBJECT-TYPE
SYNTAX Unsigned32
STATUS current
DESCRIPTION
"The precedence of the 802 ACE, identified via the
qos802AclDefinitionAceId object, with regard to evaluation
order. The precedence determines the order of evaluation of
this ACE in relation to related 802 ACEs that are associated
with an ACL. An ACE with a given precedence order in the
access control list is evaluated before one with a higher-
valued precedence order.
Precedence values within a group must be unique otherwise
instance installation will be prohibited and an error
value will be returned.
Note that qos802AclDefinitionAceOrder values within a given
ACL need not be contiguous."
::= { qos802AclDefinitionEntry 4 }
END
ACC SHELL 2018