mibs/MIBS/cisco/CISCO-IETF-PW-ENET-MIB
2023-12-05 12:25:34 +01:00

511 lines
18 KiB
Plaintext

-- *****************************************************************
-- CISCO-IETF-PW-ENET-MIB.my
--
-- February 2003, Tim Swanson
--
-- Copyright (c) 2003, 2006 by cisco Systems, Inc.
-- All rights reserved.
--
-- Made Cisco Proprietary based on IETF draft:
-- draft-ietf-pwe3-enet-mib-00.txt
-- *****************************************************************
--
CISCO-IETF-PW-ENET-MIB DEFINITIONS ::= BEGIN
IMPORTS
OBJECT-TYPE, MODULE-IDENTITY, experimental,
Counter64
FROM SNMPv2-SMI
MODULE-COMPLIANCE, OBJECT-GROUP
FROM SNMPv2-CONF
StorageType, RowStatus
FROM SNMPv2-TC
InterfaceIndexOrZero
FROM IF-MIB
cpwVcIndex
FROM CISCO-IETF-PW-MIB
CpwVcVlanCfg
FROM CISCO-IETF-PW-TC-MIB
ciscoExperiment
FROM CISCO-SMI
;
cpwVcEnetMIB MODULE-IDENTITY
LAST-UPDATED "200209221200Z" -- 22 September 2002 12:00:00 GMT
ORGANIZATION "IETF PWE3 Working group"
CONTACT-INFO
"David Zelig
Postal: Corrigent Systems
126, Yigal Alon St.
Tel-Aviv, ISRAEL
Tel: +972-3-6945273
E-mail: davidz@corrigent.com
Thomas D. Nadeau
Postal: Cisco Systems, Inc.
250 Apollo Drive
Chelmsford, MA 01824
Tel: +1-978-497-3051
Email: tnadeau@cisco.com
"
DESCRIPTION
"This MIB describes a model for managing Ethernet
point-to-point pseudo wire services over a Packet
Switched Network (PSN)."
-- Revision history.
REVISION
"200209221200Z" -- 22 September 2002 12:00:00 GMT
DESCRIPTION
" Submited as draft-pwe3-enet-mib-00.
Changes from previous version:
1) Alignment with draft-pwe3-ethernet-encap-00.txt:
removing 'rangeVLAN' mode and the associated objects.
2) Relaxing requirement on value of pwVcEnetPortVlan in
port mode.
"
REVISION
"200208201200Z" -- 20 August 2002 12:00:00 GMT
DESCRIPTION
"Changes from previous version:
1) Add pwVcEnetVcIfIndex - Option for VC as ifIndex.
2) Change counters to 64 bits.
3) Add mode for adding/removing VLAN fields between PW and
CE bound interface.
4) Referencing draft-martini instead of draft-so.
5) Editorial changes for some description clauses.
6) MPLS PRI mapping table to be independent (not augmented).
7) Adapt descriptions and rules of use to
dratf-ietf-pwe3-Ethernet-encap-00.
"
REVISION
"200202031200Z" -- 03 February 2002 12:00:00 GMT
DESCRIPTION
"initial revision as -00 draft"
::= { ciscoExperiment 108 }
cpwVcEnetNotifications OBJECT IDENTIFIER ::= { cpwVcEnetMIB 0 }
cpwVcEnetObjects OBJECT IDENTIFIER ::= { cpwVcEnetMIB 1 }
cpwVcEnetConformance OBJECT IDENTIFIER ::= { cpwVcEnetMIB 2 }
--
-- VC Ethernet table
--
cpwVcEnetTable OBJECT-TYPE
SYNTAX SEQUENCE OF CpwVcEnetEntry
MAX-ACCESS not-accessible
STATUS current
DESCRIPTION
"This table contains the index to the Ethernet tables
associated with this ETH VC, the VLAN configuration and
VLAN mode."
::= { cpwVcEnetObjects 1 }
cpwVcEnetEntry OBJECT-TYPE
SYNTAX CpwVcEnetEntry
MAX-ACCESS not-accessible
STATUS current
DESCRIPTION
"This table is indexed by the same index that was created
for the associated entry in the PW VC Table in the
CISCO-IETF-PW-MIB. The CpwVcIndex and the cpwVcEnetPwVlan
are used as indexes to allow multiple VLANs to exist on
the same PW.
An entry is created in this table by the agent for every
entry in the cpwVc table with a VcType of 'ethernetVLAN',
'ethernet' or 'ethernetVPLS'. Additional rows may be
created by the operator or the agent if multiple entries
are required for the same VC.
This table provides Ethernet port mapping and VLAN
configuration for each Ethernet VC."
INDEX { cpwVcIndex, cpwVcEnetPwVlan }
::= { cpwVcEnetTable 1 }
CpwVcEnetEntry ::= SEQUENCE {
cpwVcEnetPwVlan CpwVcVlanCfg,
cpwVcEnetVlanMode INTEGER,
cpwVcEnetPortVlan CpwVcVlanCfg,
cpwVcEnetPortIfIndex InterfaceIndexOrZero,
cpwVcEnetVcIfIndex InterfaceIndexOrZero,
cpwVcEnetRowStatus RowStatus,
cpwVcEnetStorageType StorageType
}
cpwVcEnetPwVlan OBJECT-TYPE
SYNTAX CpwVcVlanCfg
MAX-ACCESS not-accessible
STATUS current
DESCRIPTION
"This Object defines the VLAN on the VC. The value of 4097
is used if the object is not applicable, for example when
mapping all packets from an Ethernet port to this VC.
The value of 4096 is used to indicate untagged frames (at
least from the PW point of view), for example if
cpwVcEnetVlanMode is equal 'removeVLAN' or when
cpwVcEnetVlanMode equal 'noChange' and cpwVcEnetPortVlan
is equal 4096."
::= { cpwVcEnetEntry 1 }
cpwVcEnetVlanMode OBJECT-TYPE
SYNTAX INTEGER {
other(0),
portBased(1),
noChange(2),
changeVlan(3),
addVlan(4),
removeVlan(5)
}
MAX-ACCESS read-create
STATUS current
DESCRIPTION
"Indicate the mode of VLAN handling between the port
associated to the VC and the VC encapsulation itself.
- 'other' indicate operation that is not defined by
this MIB.
- 'portBased' indicates that the forwarder will forward
packets between the port and the PW independent of their
structure.
- 'noChange' indicates that the VC contains the original
user VLAN, as specified in cpwVcEnetPortVlan.
- 'changeVlan' indicates that the VLAN field on the VC
may be different than the VLAN field on the user's
port.
- 'removeVlan' indicates that the encapsulation on the
VC does not include the original VLAN field. Note
that PRI bits transparency is lost in this case.
- 'addVlan' indicate that a VLAN field will be added
on the PSN bound direction. cpwVcEnetPwVlan indicate
the value that will be added.
- 'removeVlan', 'addVlan' and 'changeVlan' implementation
is not required.
"
DEFVAL { noChange }
::= { cpwVcEnetEntry 2 }
cpwVcEnetPortVlan OBJECT-TYPE
SYNTAX CpwVcVlanCfg
MAX-ACCESS read-create
STATUS current
DESCRIPTION
"This object define the VLAN value on the physical port (or
VPLS virtual port) if a change is required to the VLAN value
between the VC and the physical/virtual port.
The value of this object can be ignored if the whole traffic
from the port is forwarded to one VC independent of the
tagging on the port, but it is RECOMENDED that the value in
this case will be '4097' indicating not relevant.
It MUST be equal to cpwVcEnetPwVlan if 'noChange' mode
is used.
The value 4096 indicate that no VLAN (i.e. untagged
frames) on the port are associated to this VC. This
allows the same behaviors as assigning 'Default VLAN'
to un-tagged frames.
"
DEFVAL { 4097 }
::= { cpwVcEnetEntry 3 }
cpwVcEnetVcIfIndex OBJECT-TYPE
SYNTAX InterfaceIndexOrZero
MAX-ACCESS read-create
STATUS current
DESCRIPTION
"It is sometimes convenient to model the VC PW as a
virtual interface in the ifTable. In these cases this
object hold the value of the ifIndex in the ifTable
representing this VC PW. A value of zero indicate no such
association or association is not yet known."
::= { cpwVcEnetEntry 4 }
cpwVcEnetPortIfIndex OBJECT-TYPE
SYNTAX InterfaceIndexOrZero
MAX-ACCESS read-create
STATUS current
DESCRIPTION
"This object is used to specify the ifIndex of the ETHERNET
port associated with this VC for point-to-point Ethernet
service, or the ifIndex of the virtual interface of the VPLS
instance associated with the PW if the service is VPLS. Two
rows in this table can point to the same ifIndex only if:
1) It is required to support multiple COS on a MPLS PSN
for the same service (i.e.: a combination of ports and
VLANs) by the use of multiple VC, each with a different
COS.
2) There is no overlap of VLAN values specified in
cpwVcEnetPortVlan that are associated with this port.
A value of zero indicate that association to an ifIndex is
not yet known."
::= { cpwVcEnetEntry 5 }
cpwVcEnetRowStatus OBJECT-TYPE
SYNTAX RowStatus
MAX-ACCESS read-create
STATUS current
DESCRIPTION
"Enable creating, deleting and modifying this row."
-- TBD: Need to specify exact interaction with other tables, and
-- when rows can/cannot be created/deleted/modified.
::= { cpwVcEnetEntry 6 }
cpwVcEnetStorageType OBJECT-TYPE
SYNTAX StorageType
MAX-ACCESS read-create
STATUS current
DESCRIPTION
"Indicates the storage type of this row."
::= { cpwVcEnetEntry 7 }
--
-- Ethernet Primary Mapping Table
--
cpwVcEnetMplsPriMappingTable OBJECT-TYPE
SYNTAX SEQUENCE OF CpwVcEnetMplsPriMappingTableEntry
MAX-ACCESS not-accessible
STATUS current
DESCRIPTION
"This table may be used for MPLS PSNs if there is a need
to hold multiple VC, each with different COS, for the same
user service (port + PW VLAN). Such a need may arise if the
MPLS network is capable of L-LSP or E-LSP without multiple
COS capabilities. Each row is indexed by the cpwVcIndex
and indicate the PRI bits on the packet recieved from the
user port (or VPLS virtual port) that are
classified to this VC. Note that the EXP bit value of the VC
is configured in the CISCO-IETF-PW-MPLS-MIB."
::= { cpwVcEnetObjects 2 }
cpwVcEnetMplsPriMappingTableEntry OBJECT-TYPE
SYNTAX CpwVcEnetMplsPriMappingTableEntry
MAX-ACCESS not-accessible
STATUS current
DESCRIPTION
"Each entry is created if special classification based on
the PRI bits is required for this VC."
INDEX { cpwVcIndex }
::= { cpwVcEnetMplsPriMappingTable 1 }
CpwVcEnetMplsPriMappingTableEntry ::= SEQUENCE {
cpwVcEnetMplsPriMapping BITS,
cpwVcEnetMplsPriMappingRowStatus RowStatus,
cpwVcEnetMplsPriMappingStorageType StorageType
}
cpwVcEnetMplsPriMapping OBJECT-TYPE
SYNTAX BITS {
pri000 (0),
pri001 (1),
pri010 (2),
pri011 (3),
pri100 (4),
pri101 (5),
pri110 (6),
pri111 (7),
untagged (8)
}
MAX-ACCESS read-create
STATUS current
DESCRIPTION
"This object defines the groups of user PRI mapped into
this VC. Each bit set indicates that this user priority
is assigned to this VC.
The value 'untagged' is used to indicate that untagged
frames are also associated to this VC.
This object allow the use of different PSN COS based on
user marking of PRI bits in MPLS PSN with L-LSP or
E-LSP without multiple COS support. In all other cases,
the default value MUST be used.
It is REQUIRED that there is no overlap on this object
between rows serving the same service (port+ PW VLAN).
In case of missing BIT configuration between rows to
the same service, incoming packets with PRI marking not
configured should be handled by the VC with the lowest
COS.
"
REFERENCE
"See appendix A of <draft-ietf-pwe3i-ethernet-encap>
for mapping rules of the PRI bits to PSN COS."
::= { cpwVcEnetMplsPriMappingTableEntry 1 }
cpwVcEnetMplsPriMappingRowStatus OBJECT-TYPE
SYNTAX RowStatus
MAX-ACCESS read-create
STATUS current
DESCRIPTION
"Enable creating, deleting and modifying this row."
-- TBD: Need to specify exact interaction with other tables, and
-- when rows can/cannot be created/deleted/modified.
::= { cpwVcEnetMplsPriMappingTableEntry 2 }
cpwVcEnetMplsPriMappingStorageType OBJECT-TYPE
SYNTAX StorageType
MAX-ACCESS read-create
STATUS current
DESCRIPTION
"Indicates the storage type of this row."
::= { cpwVcEnetMplsPriMappingTableEntry 3 }
--
-- VC Ethernet Statistics Table
--
cpwVcEnetStatsTable OBJECT-TYPE
SYNTAX SEQUENCE OF CpwVcEnetStatsEntry
MAX-ACCESS not-accessible
STATUS current
DESCRIPTION
"This table contains statistical counters specific for
Ethernet PW."
::= { cpwVcEnetObjects 3 }
cpwVcEnetStatsEntry OBJECT-TYPE
SYNTAX CpwVcEnetStatsEntry
MAX-ACCESS not-accessible
STATUS current
DESCRIPTION
"Each entry represents the statistics gathered for the
VC carrying the Ethernet packets since this VC was
first created in the cpwVcEnetTable."
INDEX { cpwVcIndex }
::= { cpwVcEnetStatsTable 1 }
CpwVcEnetStatsEntry ::= SEQUENCE {
cpwVcEnetStatsIllegalVlan Counter64,
cpwVcEnetStatsIllegalLength Counter64
}
cpwVcEnetStatsIllegalVlan OBJECT-TYPE
SYNTAX Counter64
MAX-ACCESS read-only
STATUS current
DESCRIPTION
"The number of packets received (from the PSN) on this VC with
an illegal VLAN field, missing VLAN field that was expected, or
A VLAN field when it was not expected. This counter is not
relevant if the VC type is 'ethernet' (i.e. raw mode), and
should be set to 0 by the agent to indicate this."
::= { cpwVcEnetStatsEntry 1 }
cpwVcEnetStatsIllegalLength OBJECT-TYPE
SYNTAX Counter64
MAX-ACCESS read-only
STATUS current
DESCRIPTION
"The number of packets that were received with an illegal
Ethernet packet length on this VC. An illegal length is defined
as being greater than the value in the advertised maximum MTU
supported, or shorter than the allowed Ethernet packet size."
::= { cpwVcEnetStatsEntry 2 }
---
--- Conformance description
--- In this version of the draft, only objects level conformance is
--- defined. More detailed conformance specifications is FFS.
---
cpwVcEnetGroups OBJECT IDENTIFIER ::= { cpwVcEnetConformance 1 }
cpwVcEnetCompliances OBJECT IDENTIFIER ::= { cpwVcEnetConformance 2 }
cpwVcEnetModuleCompliance MODULE-COMPLIANCE
STATUS current
DESCRIPTION
"The compliance statement for agent that support
Ethernet PW."
MODULE -- this module
MANDATORY-GROUPS { cpwVcEnetGroup,
cpwVcStatsGroup
}
GROUP cpwVcEnetMplsPriGroup
DESCRIPTION
"Collection of objects defining classification to
different PW based on the user's PRI bits mapping.
This group is optional, and should be implemented
only for MPLS PSN where only L-LSP or single OA
E-LSP, exists, and different PSN COS is required
based on the PRI mapping."
::= { cpwVcEnetCompliances 1 }
-- Units of conformance.
cpwVcEnetGroup OBJECT-GROUP
OBJECTS {
cpwVcEnetVlanMode,
cpwVcEnetPortVlan,
cpwVcEnetPortIfIndex,
cpwVcEnetVcIfIndex,
cpwVcEnetRowStatus,
cpwVcEnetStorageType
}
STATUS current
DESCRIPTION
"Collection of objects for basic Ethernet PW config."
::= { cpwVcEnetGroups 1 }
cpwVcStatsGroup OBJECT-GROUP
OBJECTS {
cpwVcEnetStatsIllegalVlan,
cpwVcEnetStatsIllegalLength
}
STATUS current
DESCRIPTION
"Collection of objects counting various PW level errors."
::= { cpwVcEnetGroups 2 }
cpwVcEnetMplsPriGroup OBJECT-GROUP
OBJECTS {
cpwVcEnetMplsPriMapping,
cpwVcEnetMplsPriMappingRowStatus,
cpwVcEnetMplsPriMappingStorageType
}
STATUS current
DESCRIPTION
"Collection of objects defining classification to
different PW based on the user's PRI bits mapping.
This group is optional, and should be implemented
only for MPLS PSN where only L-LSP or single OA
E-LSP exists, and different PSN COS is required
based on the PRI mapping."
::= { cpwVcEnetGroups 3 }
END