511 lines
18 KiB
Plaintext
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
|