Q-BRIDGE-MIB DEFINITIONS ::= BEGIN

IMPORTS
	MODULE-IDENTITY,
	OBJECT-TYPE,
	Counter32,
	Counter64,
	Unsigned32,
	TimeTicks
		FROM SNMPv2-SMI
	RowStatus,
	TruthValue,
	TEXTUAL-CONVENTION,
	MacAddress
		FROM SNMPv2-TC
	SnmpAdminString
		FROM SNMP-FRAMEWORK-MIB
	MODULE-COMPLIANCE,
	OBJECT-GROUP
		FROM SNMPv2-CONF
	dot1dBridge,
	dot1dBasePortEntry,
	dot1dBasePort
		FROM BRIDGE-MIB
	EnabledStatus
		FROM P-BRIDGE-MIB
	TimeFilter
		FROM RMON2-MIB;

qBridgeMIB MODULE-IDENTITY
	LAST-UPDATED "9908250000Z"	-- Aug 25, 1999 12:00:00 AM
	ORGANIZATION "IETF Bridge MIB Working Group"
	CONTACT-INFO
		"Les Bell
		Postal: 3Com Europe Ltd.
		        3Com Centre, Boundary Way
		        Hemel Hempstead, Herts. HP2 7YU
		        UK
		 Phone: +44 1442 438025
		 Email: Les_Bell@3Com.com

		        Andrew Smith
		Postal: Extreme Networks
		        3585 Monroe St.
		        Santa Clara CA 95051
		        USA
		 Phone: +1 408 579 2821
		 Email: andrew@extremenetworks.com

		        Paul Langille
		Postal: Newbridge Networks
		        5 Corporate Drive
		        Andover, MA 01810
		        USA
		 Phone: +1 978 691 4665
		 Email: langille@newbridge.com

		        Anil Rijhsinghani
		Postal: Cabletron Systems
		        50 Minuteman Road
		        Andover, MA 01810
		        USA
		 Phone: +1 978 684 1295
		 Email: anil@cabletron.com

		        Keith McCloghrie
		Postal: cisco Systems, Inc.
		        170 West Tasman Drive
		        San Jose, CA 95134-1706
		        USA
		 Phone: +1 408 526 5260
		 Email: kzm@cisco.com"
	DESCRIPTION
		"The VLAN Bridge MIB module for managing Virtual Bridged
		Local Area Networks, as defined by IEEE 802.1Q-1998."
	REVISION "9908250000Z"	-- Aug 25, 1999 12:00:00 AM
	DESCRIPTION
		"Initial version, published as RFC 2674."
	-- 1.3.6.1.2.1.17.7
	::= { dot1dBridge 7 }


-- -------------------------------------------------------------
-- Textual Conventions
-- -------------------------------------------------------------

PortList ::= TEXTUAL-CONVENTION
	STATUS  current
	DESCRIPTION
		"Each octet within this value specifies a set of eight
		ports, with the first octet specifying ports 1 through
		8, the second octet specifying ports 9 through 16, etc.
		Within each octet, the most significant bit represents
		the lowest numbered port, and the least significant bit
		represents the highest numbered port.  Thus, each port
		of the bridge is represented by a single bit within the
		value of this object.  If that bit has a value of '1'
		then that port is included in the set of ports; the port
		is not included if its bit has a value of '0'."
	SYNTAX OCTET STRING


VlanIndex ::= TEXTUAL-CONVENTION
	STATUS  current
	DESCRIPTION
		"A value used to index per-VLAN tables: values of 0 and
		4095 are not permitted; if the value is between 1 and
		4094 inclusive, it represents an IEEE 802.1Q VLAN-ID with
		global scope within a given bridged domain (see VlanId
		textual convention).  If the value is greater than 4095
		then it represents a VLAN with scope local to the
		particular agent, i.e. one without a global VLAN-ID
		assigned to it. Such VLANs are outside the scope of
		IEEE 802.1Q but it is convenient to be able to manage them
		in the same way using this MIB."
	SYNTAX Unsigned32


VlanId ::= TEXTUAL-CONVENTION
	STATUS  current
	DESCRIPTION
		"A 12-bit VLAN ID used in the VLAN Tag header."
	SYNTAX INTEGER (1..4094)


qBridgeMIBObjects OBJECT IDENTIFIER 
	-- 1.3.6.1.2.1.17.7.1
	::= { qBridgeMIB 1 }

-- -------------------------------------------------------------
-- groups in the Q-BRIDGE MIB
-- -------------------------------------------------------------

dot1qBase OBJECT IDENTIFIER 
	-- 1.3.6.1.2.1.17.7.1.1
	::= { qBridgeMIBObjects 1 }

dot1qTp OBJECT IDENTIFIER 
	-- 1.3.6.1.2.1.17.7.1.2
	::= { qBridgeMIBObjects 2 }

dot1qStatic OBJECT IDENTIFIER 
	-- 1.3.6.1.2.1.17.7.1.3
	::= { qBridgeMIBObjects 3 }

dot1qVlan OBJECT IDENTIFIER 
	-- 1.3.6.1.2.1.17.7.1.4
	::= { qBridgeMIBObjects 4 }

-- -------------------------------------------------------------
-- -------------------------------------------------------------
-- dot1qBase group
-- -------------------------------------------------------------

dot1qVlanVersionNumber OBJECT-TYPE
	SYNTAX  INTEGER {
			version1(1) }
	MAX-ACCESS read-only
	STATUS  current
	DESCRIPTION
		"The version number of IEEE 802.1Q that this device
		supports."
	REFERENCE
		"IEEE 802.1Q/D11 Section 12.10.1.1"
	-- 1.3.6.1.2.1.17.7.1.1.1
	::= { dot1qBase 1 }


dot1qMaxVlanId OBJECT-TYPE
	SYNTAX  VlanId
	MAX-ACCESS read-only
	STATUS  current
	DESCRIPTION
		"The maximum IEEE 802.1Q VLAN ID that this device
		supports."
	REFERENCE
		"IEEE 802.1Q/D11 Section 9.3.2.3"
	-- 1.3.6.1.2.1.17.7.1.1.2
	::= { dot1qBase 2 }


dot1qMaxSupportedVlans OBJECT-TYPE
	SYNTAX  Unsigned32
	MAX-ACCESS read-only
	STATUS  current
	DESCRIPTION
		"The maximum number of IEEE 802.1Q VLANs that this
		device supports."
	REFERENCE
		"IEEE 802.1Q/D11 Section 12.10.1.1"
	-- 1.3.6.1.2.1.17.7.1.1.3
	::= { dot1qBase 3 }


dot1qNumVlans OBJECT-TYPE
	SYNTAX  Unsigned32
	MAX-ACCESS read-only
	STATUS  current
	DESCRIPTION
		"The current number of IEEE 802.1Q VLANs that are
		configured in this device."
	REFERENCE
		"IEEE 802.1Q/D11 Section 12.7.1.1"
	-- 1.3.6.1.2.1.17.7.1.1.4
	::= { dot1qBase 4 }


dot1qGvrpStatus OBJECT-TYPE
	SYNTAX  EnabledStatus
	MAX-ACCESS read-write
	STATUS  current
	DESCRIPTION
		"The administrative status requested by management for
		GVRP.  The value enabled(1) indicates that GVRP should
		be enabled on this device, on all ports for which it has
		not been specifically disabled.  When disabled(2), GVRP
		is disabled on all ports and all GVRP packets will be
		forwarded transparently.  This object affects all GVRP
		Applicant and Registrar state machines.  A transition
		from disabled(2) to enabled(1) will cause a reset of all
		GVRP state machines on all ports."
	DEFVAL { enabled }
	-- 1.3.6.1.2.1.17.7.1.1.5
	::= { dot1qBase 5 }


-- -------------------------------------------------------------
-- the dot1qTp group
-- -------------------------------------------------------------
-- -------------------------------------------------------------
-- the current Filtering Database Table
-- -------------------------------------------------------------

dot1qFdbTable OBJECT-TYPE
	SYNTAX  SEQUENCE OF Dot1qFdbEntry
	MAX-ACCESS not-accessible
	STATUS  current
	DESCRIPTION
		"A table that contains configuration and control
		information for each Filtering Database currently
		operating on this device.  Entries in this table appear
		automatically when VLANs are assigned FDB IDs in the
		dot1qVlanCurrentTable."
	-- 1.3.6.1.2.1.17.7.1.2.1
	::= { dot1qTp 1 }


dot1qFdbEntry OBJECT-TYPE
	SYNTAX  Dot1qFdbEntry
	MAX-ACCESS not-accessible
	STATUS  current
	DESCRIPTION
		"Information about a specific Filtering Database."
	INDEX {
		dot1qFdbId }
	-- 1.3.6.1.2.1.17.7.1.2.1.1
	::= { dot1qFdbTable 1 }


Dot1qFdbEntry ::= SEQUENCE {

	dot1qFdbId           Unsigned32,
	dot1qFdbDynamicCount Counter32 }


dot1qFdbId OBJECT-TYPE
	SYNTAX  Unsigned32
	MAX-ACCESS not-accessible
	STATUS  current
	DESCRIPTION
		"The identity of this Filtering Database."
	-- 1.3.6.1.2.1.17.7.1.2.1.1.1
	::= { dot1qFdbEntry 1 }


dot1qFdbDynamicCount OBJECT-TYPE
	SYNTAX  Counter32
	MAX-ACCESS read-only
	STATUS  current
	DESCRIPTION
		"The current number of dynamic entries in this
		Filtering Database."
	REFERENCE
		"IEEE 802.1Q/D11 Section 12.7.1.1.3"
	-- 1.3.6.1.2.1.17.7.1.2.1.1.2
	::= { dot1qFdbEntry 2 }


-- -------------------------------------------------------------
-- Multiple Forwarding Databases for 802.1Q Transparent devices
-- This table is an alternative to the dot1dTpFdbTable,
-- previously defined for 802.1D devices which only support a
-- single Forwarding Database.
-- -------------------------------------------------------------

dot1qTpFdbTable OBJECT-TYPE
	SYNTAX  SEQUENCE OF Dot1qTpFdbEntry
	MAX-ACCESS not-accessible
	STATUS  current
	DESCRIPTION
		"A table that contains information about unicast entries
		for which the device has forwarding and/or filtering
		information.  This information is used by the
		transparent bridging function in determining how to
		propagate a received frame."
	REFERENCE
		"IEEE 802.1Q/D11 Section 12.7.7"
	-- 1.3.6.1.2.1.17.7.1.2.2
	::= { dot1qTp 2 }


dot1qTpFdbEntry OBJECT-TYPE
	SYNTAX  Dot1qTpFdbEntry
	MAX-ACCESS not-accessible
	STATUS  current
	DESCRIPTION
		"Information about a specific unicast MAC address for
		which the device has some forwarding and/or filtering
		information."
	INDEX {
		dot1qFdbId,
		dot1qTpFdbAddress }
	-- 1.3.6.1.2.1.17.7.1.2.2.1
	::= { dot1qTpFdbTable 1 }


Dot1qTpFdbEntry ::= SEQUENCE {

	dot1qTpFdbAddress MacAddress,
	dot1qTpFdbPort    INTEGER,
	dot1qTpFdbStatus  INTEGER }


dot1qTpFdbAddress OBJECT-TYPE
	SYNTAX  MacAddress
	MAX-ACCESS not-accessible
	STATUS  current
	DESCRIPTION
		"A unicast MAC address for which the device has
		forwarding and/or filtering information."
	-- 1.3.6.1.2.1.17.7.1.2.2.1.1
	::= { dot1qTpFdbEntry 1 }


dot1qTpFdbPort OBJECT-TYPE
	SYNTAX  INTEGER (0..65535)
	MAX-ACCESS read-only
	STATUS  current
	DESCRIPTION
		"Either the value '0', or the port number of the port on
		which a frame having a source address equal to the value
		of the corresponding instance of dot1qTpFdbAddress has
		been seen.  A value of '0' indicates that the port
		number has not been learned but that the device does
		have some forwarding/filtering information about this
		address (e.g. in the dot1qStaticUnicastTable).
		Implementors are encouraged to assign the port value to
		this object whenever it is learned even for addresses
		for which the corresponding value of dot1qTpFdbStatus is
		not learned(3)."
	-- 1.3.6.1.2.1.17.7.1.2.2.1.2
	::= { dot1qTpFdbEntry 2 }


dot1qTpFdbStatus OBJECT-TYPE
	SYNTAX  INTEGER {
			other(1),
			invalid(2),
			learned(3),
			self(4),
			mgmt(5) }
	MAX-ACCESS read-only
	STATUS  current
	DESCRIPTION
		"The status of this entry.  The meanings of the values
		are:
		    other(1) - none of the following.  This may include
		        the case where some other MIB object (not the
		        corresponding instance of dot1qTpFdbPort, nor an
		        entry in the dot1qStaticUnicastTable) is being
		        used to determine if and how frames addressed to
		        the value of the corresponding instance of
		        dot1qTpFdbAddress are being forwarded.
		    invalid(2) - this entry is no longer valid (e.g., it
		        was learned but has since aged out), but has not
		        yet been flushed from the table.
		    learned(3) - the value of the corresponding instance
		        of dot1qTpFdbPort was learned and is being used.





		    self(4) - the value of the corresponding instance of
		        dot1qTpFdbAddress represents one of the device's
		        addresses.  The corresponding instance of
		        dot1qTpFdbPort indicates which of the device's
		        ports has this address.
		    mgmt(5) - the value of the corresponding instance of
		        dot1qTpFdbAddress is also the value of an
		        existing instance of dot1qStaticAddress."
	-- 1.3.6.1.2.1.17.7.1.2.2.1.3
	::= { dot1qTpFdbEntry 3 }


-- -------------------------------------------------------------
-- Dynamic Group Registration Table
-- -------------------------------------------------------------

dot1qTpGroupTable OBJECT-TYPE
	SYNTAX  SEQUENCE OF Dot1qTpGroupEntry
	MAX-ACCESS not-accessible
	STATUS  current
	DESCRIPTION
		"A table containing filtering information for VLANs
		configured into the bridge by (local or network)
		management, or learnt dynamically, specifying the set of
		ports to which frames received on a VLAN for this FDB
		and containing a specific Group destination address are
		allowed to be forwarded."
	-- 1.3.6.1.2.1.17.7.1.2.3
	::= { dot1qTp 3 }


dot1qTpGroupEntry OBJECT-TYPE
	SYNTAX  Dot1qTpGroupEntry
	MAX-ACCESS not-accessible
	STATUS  current
	DESCRIPTION
		"Filtering information configured into the bridge by
		management, or learnt dynamically, specifying the set of
		ports to which frames received on a VLAN and containing
		a specific Group destination address, are allowed to be
		forwarded.  The subset of these ports learnt dynamically
		is also provided."
	INDEX {
		dot1qVlanIndex,
		dot1qTpGroupAddress }
	-- 1.3.6.1.2.1.17.7.1.2.3.1
	::= { dot1qTpGroupTable 1 }


Dot1qTpGroupEntry ::= SEQUENCE {

	dot1qTpGroupAddress     MacAddress,
	dot1qTpGroupEgressPorts PortList,
	dot1qTpGroupLearnt      PortList }


dot1qTpGroupAddress OBJECT-TYPE
	SYNTAX  MacAddress
	MAX-ACCESS not-accessible
	STATUS  current
	DESCRIPTION
		"The destination Group MAC address in a frame to which
		this entry's filtering information applies."
	-- 1.3.6.1.2.1.17.7.1.2.3.1.1
	::= { dot1qTpGroupEntry 1 }


dot1qTpGroupEgressPorts OBJECT-TYPE
	SYNTAX  PortList
	MAX-ACCESS read-only
	STATUS  current
	DESCRIPTION
		"The complete set of ports, in this VLAN, to which
		frames destined for this Group MAC address are currently
		being explicitly forwarded.  This does not include ports
		for which this address is only implicitly forwarded, in
		the dot1qForwardAllPorts list."
	-- 1.3.6.1.2.1.17.7.1.2.3.1.2
	::= { dot1qTpGroupEntry 2 }


dot1qTpGroupLearnt OBJECT-TYPE
	SYNTAX  PortList
	MAX-ACCESS read-only
	STATUS  current
	DESCRIPTION
		"The subset of ports in dot1qTpGroupEgressPorts which
		were learnt by GMRP or some other dynamic mechanism, in
		this Filtering database."
	-- 1.3.6.1.2.1.17.7.1.2.3.1.3
	::= { dot1qTpGroupEntry 3 }


-- -------------------------------------------------------------
-- Service Requirements Group
-- -------------------------------------------------------------

dot1qForwardAllTable OBJECT-TYPE
	SYNTAX  SEQUENCE OF Dot1qForwardAllEntry
	MAX-ACCESS not-accessible
	STATUS  current
	DESCRIPTION
		"A table containing forwarding information for each
		VLAN, specifying the set of ports to which forwarding of
		all multicasts applies, configured statically by
		management or dynamically by GMRP.  An entry appears in
		this table for all VLANs that are currently





		instantiated."
	REFERENCE
		"IEEE 802.1Q/D11 Section 12.7.2, 12.7.7"
	-- 1.3.6.1.2.1.17.7.1.2.4
	::= { dot1qTp 4 }


dot1qForwardAllEntry OBJECT-TYPE
	SYNTAX  Dot1qForwardAllEntry
	MAX-ACCESS not-accessible
	STATUS  current
	DESCRIPTION
		"Forwarding information for a VLAN, specifying the set
		of ports to which all multicasts should be forwarded,
		configured statically by management or dynamically by
		GMRP."
	INDEX {
		dot1qVlanIndex }
	-- 1.3.6.1.2.1.17.7.1.2.4.1
	::= { dot1qForwardAllTable 1 }


Dot1qForwardAllEntry ::= SEQUENCE {

	dot1qForwardAllPorts          PortList,
	dot1qForwardAllStaticPorts    PortList,
	dot1qForwardAllForbiddenPorts PortList }


dot1qForwardAllPorts OBJECT-TYPE
	SYNTAX  PortList
	MAX-ACCESS read-only
	STATUS  current
	DESCRIPTION
		"The complete set of ports in this VLAN to which all
		multicast group-addressed frames are to be forwarded.
		This includes ports for which this need has been
		determined dynamically by GMRP, or configured statically
		by management."
	-- 1.3.6.1.2.1.17.7.1.2.4.1.1
	::= { dot1qForwardAllEntry 1 }


dot1qForwardAllStaticPorts OBJECT-TYPE
	SYNTAX  PortList
	MAX-ACCESS read-write
	STATUS  current
	DESCRIPTION
		"The set of ports configured by management in this VLAN
		to which all multicast group-addressed frames are to be
		forwarded.  Ports entered in this list will also appear
		in the complete set shown by dot1qForwardAllPorts.  This
		value will be restored after the device is reset.  This
		only applies to ports that are members of the VLAN,
		defined by dot1qVlanCurrentEgressPorts.  A port may not
		be added in this set if it is already a member of the
		set of ports in dot1qForwardAllForbiddenPorts.  The
		default value is a string of ones of appropriate length,
		to indicate standard non-EFS behaviour, i.e.  forward
		all multicasts to all ports."
	-- 1.3.6.1.2.1.17.7.1.2.4.1.2
	::= { dot1qForwardAllEntry 2 }


dot1qForwardAllForbiddenPorts OBJECT-TYPE
	SYNTAX  PortList
	MAX-ACCESS read-write
	STATUS  current
	DESCRIPTION
		"The set of ports configured by management in this VLAN
		for which the Service Requirement attribute Forward All
		Multicast Groups may not be dynamically registered by
		GMRP.  This value will be restored after the device is
		reset.  A port may not be added in this set if it is
		already a member of the set of ports in
		dot1qForwardAllStaticPorts.  The default value is a
		string of zeros of appropriate length."
	-- 1.3.6.1.2.1.17.7.1.2.4.1.3
	::= { dot1qForwardAllEntry 3 }


dot1qForwardUnregisteredTable OBJECT-TYPE
	SYNTAX  SEQUENCE OF Dot1qForwardUnregisteredEntry
	MAX-ACCESS not-accessible
	STATUS  current
	DESCRIPTION
		"A table containing forwarding information for each
		VLAN, specifying the set of ports to which forwarding of
		multicast group-addressed frames for which there is no
		more specific forwarding information applies.  This is
		configured statically by management and determined
		dynamically by GMRP.  An entry appears in this table for
		all VLANs that are currently instantiated."
	REFERENCE
		"IEEE 802.1Q/D11 Section 12.7.2, 12.7.7"
	-- 1.3.6.1.2.1.17.7.1.2.5
	::= { dot1qTp 5 }


dot1qForwardUnregisteredEntry OBJECT-TYPE
	SYNTAX  Dot1qForwardUnregisteredEntry
	MAX-ACCESS not-accessible
	STATUS  current
	DESCRIPTION
		"Forwarding information for a VLAN, specifying the set
		of ports to which all multicasts for which there is no
		more specific forwarding information shall be forwarded.
		This is configured statically by management or
		dynamically by GMRP."
	INDEX {
		dot1qVlanIndex }
	-- 1.3.6.1.2.1.17.7.1.2.5.1
	::= { dot1qForwardUnregisteredTable 1 }


Dot1qForwardUnregisteredEntry ::= SEQUENCE {

	dot1qForwardUnregisteredPorts          PortList,
	dot1qForwardUnregisteredStaticPorts    PortList,
	dot1qForwardUnregisteredForbiddenPorts PortList }


dot1qForwardUnregisteredPorts OBJECT-TYPE
	SYNTAX  PortList
	MAX-ACCESS read-only
	STATUS  current
	DESCRIPTION
		"The complete set of ports in this VLAN to which
		multicast group-addressed frames for which there is no
		more specific forwarding information will be forwarded.
		This includes ports for which this need has been
		determined dynamically by GMRP, or configured statically
		by management."
	-- 1.3.6.1.2.1.17.7.1.2.5.1.1
	::= { dot1qForwardUnregisteredEntry 1 }


dot1qForwardUnregisteredStaticPorts OBJECT-TYPE
	SYNTAX  PortList
	MAX-ACCESS read-write
	STATUS  current
	DESCRIPTION
		"The set of ports configured by management, in this
		VLAN, to which multicast group-addressed frames for
		which there is no more specific forwarding information
		are to be forwarded.  Ports entered in this list will
		also appear in the complete set shown by
		dot1qForwardUnregisteredPorts.  This value will be
		restored after the device is reset.  A port may not be
		added in this set if it is already a member of the set
		of ports in dot1qForwardUnregisteredForbiddenPorts.  The





		default value is a string of zeros of appropriate
		length, although this has no effect with the default
		value of dot1qForwardAllStaticPorts."
	-- 1.3.6.1.2.1.17.7.1.2.5.1.2
	::= { dot1qForwardUnregisteredEntry 2 }


dot1qForwardUnregisteredForbiddenPorts OBJECT-TYPE
	SYNTAX  PortList
	MAX-ACCESS read-write
	STATUS  current
	DESCRIPTION
		"The set of ports configured by management in this VLAN
		for which the Service Requirement attribute Forward
		Unregistered Multicast Groups may not be dynamically
		registered by GMRP.  This value will be restored after
		the device is reset.  A port may not be added in this
		set if it is already a member of the set of ports in
		dot1qForwardUnregisteredStaticPorts.  The default value
		is a string of zeros of appropriate length."
	-- 1.3.6.1.2.1.17.7.1.2.5.1.3
	::= { dot1qForwardUnregisteredEntry 3 }


-- -------------------------------------------------------------
-- The Static (Destination-Address Filtering) Database
-- -------------------------------------------------------------

dot1qStaticUnicastTable OBJECT-TYPE
	SYNTAX  SEQUENCE OF Dot1qStaticUnicastEntry
	MAX-ACCESS not-accessible
	STATUS  current
	DESCRIPTION
		"A table containing filtering information for Unicast
		MAC addresses for each Filtering Database, configured
		into the device by (local or network) management
		specifying the set of ports to which frames received
		from specific ports and containing specific unicast
		destination addresses are allowed to be forwarded.  A
		value of zero in this table as the port number from
		which frames with a specific destination address are
		received, is used to specify all ports for which there
		is no specific entry in this table for that particular
		destination address.  Entries are valid for unicast
		addresses only."
	REFERENCE
		"IEEE 802.1Q/D11 Section 12.7.7,
		ISO/IEC 15802-3 Section 7.9.1"
	-- 1.3.6.1.2.1.17.7.1.3.1
	::= { dot1qStatic 1 }


dot1qStaticUnicastEntry OBJECT-TYPE
	SYNTAX  Dot1qStaticUnicastEntry
	MAX-ACCESS not-accessible
	STATUS  current
	DESCRIPTION
		"Filtering information configured into the device by
		(local or network) management specifying the set of
		ports to which frames received from a specific port and
		containing a specific unicast destination address are
		allowed to be forwarded."
	INDEX {
		dot1qFdbId,
		dot1qStaticUnicastAddress,
		dot1qStaticUnicastReceivePort }
	-- 1.3.6.1.2.1.17.7.1.3.1.1
	::= { dot1qStaticUnicastTable 1 }


Dot1qStaticUnicastEntry ::= SEQUENCE {

	dot1qStaticUnicastAddress       MacAddress,
	dot1qStaticUnicastReceivePort   INTEGER,
	dot1qStaticUnicastAllowedToGoTo PortList,
	dot1qStaticUnicastStatus        INTEGER }


dot1qStaticUnicastAddress OBJECT-TYPE
	SYNTAX  MacAddress
	MAX-ACCESS not-accessible
	STATUS  current
	DESCRIPTION
		"The destination MAC address in a frame to which this
		entry's filtering information applies.  This object must
		take the value of a unicast address."
	-- 1.3.6.1.2.1.17.7.1.3.1.1.1
	::= { dot1qStaticUnicastEntry 1 }


dot1qStaticUnicastReceivePort OBJECT-TYPE
	SYNTAX  INTEGER (0..65535)
	MAX-ACCESS not-accessible
	STATUS  current
	DESCRIPTION
		"Either the value '0', or the port number of the port
		from which a frame must be received in order for this
		entry's filtering information to apply.  A value of zero
		indicates that this entry applies on all ports of the





		device for which there is no other applicable entry."
	-- 1.3.6.1.2.1.17.7.1.3.1.1.2
	::= { dot1qStaticUnicastEntry 2 }


dot1qStaticUnicastAllowedToGoTo OBJECT-TYPE
	SYNTAX  PortList
	MAX-ACCESS read-write
	STATUS  current
	DESCRIPTION
		"The set of ports for which a frame with a specific
		unicast address will be flooded in the event that it
		has not been learned.  It also specifies the set of
		ports a specific unicast address may be dynamically
		learnt on.  The dot1qTpFdbTable will have an equivalent
		entry with a dot1qTpFdbPort value of '0' until this
		address has been learnt, when it will be updated with
		the port the address has been seen on.  This only
		applies to ports that are members of the VLAN, defined
		by dot1qVlanCurrentEgressPorts.  The default value of
		this object is a string of ones of appropriate length."
	REFERENCE
		"IEEE 802.1Q/D11 Table 8-5, ISO/IEC 15802-3 Table 7-5"
	-- 1.3.6.1.2.1.17.7.1.3.1.1.3
	::= { dot1qStaticUnicastEntry 3 }


dot1qStaticUnicastStatus OBJECT-TYPE
	SYNTAX  INTEGER {
			other(1),
			invalid(2),
			permanent(3),
			deleteOnReset(4),
			deleteOnTimeout(5) }
	MAX-ACCESS read-write
	STATUS  current
	DESCRIPTION
		"This object indicates the status of this entry.
		other(1) - this entry is currently in use but
		    the conditions under which it will remain
		    so differ from the following values.
		invalid(2) - writing this value to the object
		    removes the corresponding entry.
		permanent(3) - this entry is currently in use
		    and will remain so after the next reset of
		    the bridge.
		deleteOnReset(4) - this entry is currently in
		    use and will remain so until the next
		    reset of the bridge.







		deleteOnTimeout(5) - this entry is currently in
		    use and will remain so until it is aged out."
	DEFVAL { permanent }
	-- 1.3.6.1.2.1.17.7.1.3.1.1.4
	::= { dot1qStaticUnicastEntry 4 }


dot1qStaticMulticastTable OBJECT-TYPE
	SYNTAX  SEQUENCE OF Dot1qStaticMulticastEntry
	MAX-ACCESS not-accessible
	STATUS  current
	DESCRIPTION
		"A table containing filtering information for Multicast
		and Broadcast MAC addresses for each VLAN, configured
		into the device by (local or network) management
		specifying the set of ports to which frames received
		from specific ports and containing specific Multicast
		and Broadcast destination addresses are allowed to be
		forwarded.  A value of zero in this table as the port
		number from which frames with a specific destination
		address are received, is used to specify all ports for
		which there is no specific entry in this table for that
		particular destination address.  Entries are valid for
		Multicast and Broadcast addresses only."
	REFERENCE
		"IEEE 802.1Q/D11 Section 12.7.7,
		ISO/IEC 15802-3 Section 7.9.1"
	-- 1.3.6.1.2.1.17.7.1.3.2
	::= { dot1qStatic 2 }


dot1qStaticMulticastEntry OBJECT-TYPE
	SYNTAX  Dot1qStaticMulticastEntry
	MAX-ACCESS not-accessible
	STATUS  current
	DESCRIPTION
		"Filtering information configured into the device by
		(local or network) management specifying the set of
		ports to which frames received from this specific port
		for this VLAN and containing this Multicast or Broadcast
		destination address are allowed to be forwarded."
	INDEX {
		dot1qVlanIndex,
		dot1qStaticMulticastAddress,
		dot1qStaticMulticastReceivePort }
	-- 1.3.6.1.2.1.17.7.1.3.2.1
	::= { dot1qStaticMulticastTable 1 }


Dot1qStaticMulticastEntry ::= SEQUENCE {

	dot1qStaticMulticastAddress              MacAddress,
	dot1qStaticMulticastReceivePort          INTEGER,
	dot1qStaticMulticastStaticEgressPorts    PortList,
	dot1qStaticMulticastForbiddenEgressPorts PortList,
	dot1qStaticMulticastStatus               INTEGER }


dot1qStaticMulticastAddress OBJECT-TYPE
	SYNTAX  MacAddress
	MAX-ACCESS not-accessible
	STATUS  current
	DESCRIPTION
		"The destination MAC address in a frame to which this
		entry's filtering information applies.  This object must
		take the value of a Multicast or Broadcast address."
	-- 1.3.6.1.2.1.17.7.1.3.2.1.1
	::= { dot1qStaticMulticastEntry 1 }


dot1qStaticMulticastReceivePort OBJECT-TYPE
	SYNTAX  INTEGER (0..65535)
	MAX-ACCESS not-accessible
	STATUS  current
	DESCRIPTION
		"Either the value '0', or the port number of the port
		from which a frame must be received in order for this
		entry's filtering information to apply.  A value of zero
		indicates that this entry applies on all ports of the
		device for which there is no other applicable entry."
	-- 1.3.6.1.2.1.17.7.1.3.2.1.2
	::= { dot1qStaticMulticastEntry 2 }


dot1qStaticMulticastStaticEgressPorts OBJECT-TYPE
	SYNTAX  PortList
	MAX-ACCESS read-write
	STATUS  current
	DESCRIPTION
		"The set of ports to which frames received from a
		specific port and destined for a specific Multicast or
		Broadcast MAC address must be forwarded, regardless of
		any dynamic information e.g. from GMRP.  A port may not
		be added in this set if it is already a member of the
		set of ports in dot1qStaticMulticastForbiddenEgressPorts.
		The default value of this object is a string of ones of
		appropriate length."
	-- 1.3.6.1.2.1.17.7.1.3.2.1.3
	::= { dot1qStaticMulticastEntry 3 }


dot1qStaticMulticastForbiddenEgressPorts OBJECT-TYPE
	SYNTAX  PortList
	MAX-ACCESS read-write
	STATUS  current
	DESCRIPTION
		"The set of ports to which frames received from a
		specific port and destined for a specific Multicast or
		Broadcast MAC address must not be forwarded, regardless
		of any dynamic information e.g. from GMRP.  A port may
		not be added in this set if it is already a member of the
		set of ports in dot1qStaticMulticastStaticEgressPorts.
		The default value of this object is a string of zeros of
		appropriate length."
	-- 1.3.6.1.2.1.17.7.1.3.2.1.4
	::= { dot1qStaticMulticastEntry 4 }


dot1qStaticMulticastStatus OBJECT-TYPE
	SYNTAX  INTEGER {
			other(1),
			invalid(2),
			permanent(3),
			deleteOnReset(4),
			deleteOnTimeout(5) }
	MAX-ACCESS read-write
	STATUS  current
	DESCRIPTION
		"This object indicates the status of this entry.
		other(1) - this entry is currently in use but
		    the conditions under which it will remain
		    so differ from the following values.
		invalid(2) - writing this value to the object
		    removes the corresponding entry.
		permanent(3) - this entry is currently in use
		    and will remain so after the next reset of
		    the bridge.







		deleteOnReset(4) - this entry is currently in
		    use and will remain so until the next
		    reset of the bridge.
		deleteOnTimeout(5) - this entry is currently in
		    use and will remain so until it is aged out."
	DEFVAL { permanent }
	-- 1.3.6.1.2.1.17.7.1.3.2.1.5
	::= { dot1qStaticMulticastEntry 5 }


-- -------------------------------------------------------------
-- The Current VLAN Database
-- -------------------------------------------------------------

dot1qVlanNumDeletes OBJECT-TYPE
	SYNTAX  Counter32
	MAX-ACCESS read-only
	STATUS  current
	DESCRIPTION
		"The number of times a VLAN entry has been deleted from
		the dot1qVlanCurrentTable (for any reason).  If an entry
		is deleted, then inserted, and then deleted, this
		counter will be incremented by 2."
	-- 1.3.6.1.2.1.17.7.1.4.1
	::= { dot1qVlan 1 }


dot1qVlanCurrentTable OBJECT-TYPE
	SYNTAX  SEQUENCE OF Dot1qVlanCurrentEntry
	MAX-ACCESS not-accessible
	STATUS  current
	DESCRIPTION
		"A table containing current configuration information
		for each VLAN currently configured into the device by
		(local or network) management, or dynamically created
		as a result of GVRP requests received."
	-- 1.3.6.1.2.1.17.7.1.4.2
	::= { dot1qVlan 2 }


dot1qVlanCurrentEntry OBJECT-TYPE
	SYNTAX  Dot1qVlanCurrentEntry
	MAX-ACCESS not-accessible
	STATUS  current
	DESCRIPTION
		"Information for a VLAN configured into the device by
		(local or network) management, or dynamically created
		as a result of GVRP requests received."
	INDEX {
		dot1qVlanTimeMark,
		dot1qVlanIndex }
	-- 1.3.6.1.2.1.17.7.1.4.2.1
	::= { dot1qVlanCurrentTable 1 }


Dot1qVlanCurrentEntry ::= SEQUENCE {

	dot1qVlanTimeMark             TimeFilter,
	dot1qVlanIndex                VlanIndex,
	dot1qVlanFdbId                Unsigned32,
	dot1qVlanCurrentEgressPorts   PortList,
	dot1qVlanCurrentUntaggedPorts PortList,
	dot1qVlanStatus               INTEGER,
	dot1qVlanCreationTime         TimeTicks }


dot1qVlanTimeMark OBJECT-TYPE
	SYNTAX  TimeFilter
	MAX-ACCESS not-accessible
	STATUS  current
	DESCRIPTION
		"A TimeFilter for this entry.  See the TimeFilter
		textual convention to see how this works."
	-- 1.3.6.1.2.1.17.7.1.4.2.1.1
	::= { dot1qVlanCurrentEntry 1 }


dot1qVlanIndex OBJECT-TYPE
	SYNTAX  VlanIndex
	MAX-ACCESS not-accessible
	STATUS  current
	DESCRIPTION
		"The VLAN-ID or other identifier refering to this VLAN."
	-- 1.3.6.1.2.1.17.7.1.4.2.1.2
	::= { dot1qVlanCurrentEntry 2 }


dot1qVlanFdbId OBJECT-TYPE
	SYNTAX  Unsigned32
	MAX-ACCESS read-only
	STATUS  current
	DESCRIPTION
		"The Filtering Database used by this VLAN.  This is one
		of the dot1qFdbId values in the dot1qFdbTable.  This
		value is allocated automatically by the device whenever
		the VLAN is created: either dynamically by GVRP, or by









		management, in dot1qVlanStaticTable.  Allocation of this
		value follows the learning constraints defined for this
		VLAN in dot1qLearningConstraintsTable."
	-- 1.3.6.1.2.1.17.7.1.4.2.1.3
	::= { dot1qVlanCurrentEntry 3 }


dot1qVlanCurrentEgressPorts OBJECT-TYPE
	SYNTAX  PortList
	MAX-ACCESS read-only
	STATUS  current
	DESCRIPTION
		"The set of ports which are transmitting traffic for
		this VLAN as either tagged or untagged frames."
	REFERENCE
		"IEEE 802.1Q/D11 Section 12.10.2.1"
	-- 1.3.6.1.2.1.17.7.1.4.2.1.4
	::= { dot1qVlanCurrentEntry 4 }


dot1qVlanCurrentUntaggedPorts OBJECT-TYPE
	SYNTAX  PortList
	MAX-ACCESS read-only
	STATUS  current
	DESCRIPTION
		"The set of ports which are transmitting traffic for
		this VLAN as untagged frames."
	REFERENCE
		"IEEE 802.1Q/D11 Section 12.10.2.1"
	-- 1.3.6.1.2.1.17.7.1.4.2.1.5
	::= { dot1qVlanCurrentEntry 5 }


dot1qVlanStatus OBJECT-TYPE
	SYNTAX  INTEGER {
			other(1),
			permanent(2),
			dynamicGvrp(3) }
	MAX-ACCESS read-only
	STATUS  current
	DESCRIPTION
		"This object indicates the status of this entry.
		other(1) - this entry is currently in use but the
		    conditions under which it will remain so differ
		    from the following values.
		permanent(2) - this entry, corresponding to an entry
		    in dot1qVlanStaticTable, is currently in use and
		    will remain so after the next reset of the
		    device.  The port lists for this entry include
		    ports from the equivalent dot1qVlanStaticTable
		    entry and ports learnt dynamically.
		dynamicGvrp(3) - this entry is currently in use






		    and will remain so until removed by GVRP.  There
		    is no static entry for this VLAN and it will be
		    removed when the last port leaves the VLAN."
	-- 1.3.6.1.2.1.17.7.1.4.2.1.6
	::= { dot1qVlanCurrentEntry 6 }


dot1qVlanCreationTime OBJECT-TYPE
	SYNTAX  TimeTicks
	MAX-ACCESS read-only
	STATUS  current
	DESCRIPTION
		"The value of sysUpTime when this VLAN was created."
	-- 1.3.6.1.2.1.17.7.1.4.2.1.7
	::= { dot1qVlanCurrentEntry 7 }


-- -------------------------------------------------------------
-- The Static VLAN Database
-- -------------------------------------------------------------

dot1qVlanStaticTable OBJECT-TYPE
	SYNTAX  SEQUENCE OF Dot1qVlanStaticEntry
	MAX-ACCESS not-accessible
	STATUS  current
	DESCRIPTION
		"A table containing static configuration information for
		each VLAN configured into the device by (local or
		network) management.  All entries are permanent and will
		be restored after the device is reset."
	-- 1.3.6.1.2.1.17.7.1.4.3
	::= { dot1qVlan 3 }


dot1qVlanStaticEntry OBJECT-TYPE
	SYNTAX  Dot1qVlanStaticEntry
	MAX-ACCESS not-accessible
	STATUS  current
	DESCRIPTION
		"Static information for a VLAN configured into the
		device by (local or network) management."
	INDEX {
		dot1qVlanIndex }
	-- 1.3.6.1.2.1.17.7.1.4.3.1
	::= { dot1qVlanStaticTable 1 }


Dot1qVlanStaticEntry ::= SEQUENCE {

	dot1qVlanStaticName           SnmpAdminString,
	dot1qVlanStaticEgressPorts    PortList,
	dot1qVlanForbiddenEgressPorts PortList,
	dot1qVlanStaticUntaggedPorts  PortList,
	dot1qVlanStaticRowStatus      RowStatus }


dot1qVlanStaticName OBJECT-TYPE
	SYNTAX  SnmpAdminString (SIZE (0..32))
	MAX-ACCESS read-create
	STATUS  current
	DESCRIPTION
		"An administratively assigned string, which may be used
		to identify the VLAN."
	REFERENCE
		"IEEE 802.1Q/D11 Section 12.10.2.1"
	-- 1.3.6.1.2.1.17.7.1.4.3.1.1
	::= { dot1qVlanStaticEntry 1 }


dot1qVlanStaticEgressPorts OBJECT-TYPE
	SYNTAX  PortList
	MAX-ACCESS read-create
	STATUS  current
	DESCRIPTION
		"The set of ports which are permanently assigned to the
		egress list for this VLAN by management.  Changes to a
		bit in this object affect the per-port per-VLAN
		Registrar control for Registration Fixed for the
		relevant GVRP state machine on each port.  A port may
		not be added in this set if it is already a member of
		the set of ports in dot1qVlanForbiddenEgressPorts.  The
		default value of this object is a string of zeros of
		appropriate length, indicating not fixed."
	REFERENCE
		"IEEE 802.1Q/D11 Section 12.7.7.3, 11.2.3.2.3"
	-- 1.3.6.1.2.1.17.7.1.4.3.1.2
	::= { dot1qVlanStaticEntry 2 }


dot1qVlanForbiddenEgressPorts OBJECT-TYPE
	SYNTAX  PortList
	MAX-ACCESS read-create
	STATUS  current
	DESCRIPTION
		"The set of ports which are prohibited by management
		from being included in the egress list for this VLAN.
		Changes to this object that cause a port to be included
		or excluded affect the per-port per-VLAN Registrar









		control for Registration Forbidden for the relevant GVRP
		state machine on each port.  A port may not be added in
		this set if it is already a member of the set of ports
		in dot1qVlanStaticEgressPorts.  The default value of
		this object is a string of zeros of appropriate length,
		excluding all ports from the forbidden set."
	REFERENCE
		"IEEE 802.1Q/D11 Section 12.7.7.3, 11.2.3.2.3"
	-- 1.3.6.1.2.1.17.7.1.4.3.1.3
	::= { dot1qVlanStaticEntry 3 }


dot1qVlanStaticUntaggedPorts OBJECT-TYPE
	SYNTAX  PortList
	MAX-ACCESS read-create
	STATUS  current
	DESCRIPTION
		"The set of ports which should transmit egress packets
		for this VLAN as untagged.  The default value of this
		object for the default VLAN (dot1qVlanIndex = 1) is a string
		of appropriate length including all ports.  There is no
		specified default for other VLANs.  If a device agent cannot
		support the set of ports being set then it will reject the
		set operation with an error. An example might be if a
		manager attempts to set more than one VLAN to be untagged
		on egress where the device does not support this IEEE 802.1Q
		option."
	REFERENCE
		"IEEE 802.1Q/D11 Section 12.10.2.1"
	-- 1.3.6.1.2.1.17.7.1.4.3.1.4
	::= { dot1qVlanStaticEntry 4 }


dot1qVlanStaticRowStatus OBJECT-TYPE
	SYNTAX  RowStatus
	MAX-ACCESS read-create
	STATUS  current
	DESCRIPTION
		"This object indicates the status of this entry."
	-- 1.3.6.1.2.1.17.7.1.4.3.1.5
	::= { dot1qVlanStaticEntry 5 }


dot1qNextFreeLocalVlanIndex OBJECT-TYPE
	SYNTAX  INTEGER (0 | 4096..2147483647)
	MAX-ACCESS read-only
	STATUS  current
	DESCRIPTION
		"The next available value for dot1qVlanIndex of a local
		VLAN entry in dot1qVlanStaticTable.  This will report
		values >=4096 if a new Local VLAN may be created or else
		the value 0 if this is not possible.







		A row creation operation in this table for an entry with a local
		VlanIndex value may fail if the current value of this object
		is not used as the index. Even if the value read is used,
		there is no guarantee that it will still be the valid index
		when the create operation is attempted - another manager may
		have already got in during the intervening time interval.
		In this case, dot1qNextFreeLocalVlanIndex should be re-read
		and the creation re-tried with the new value.

		This value will automatically change when the current value is
		used to create a new row."
	-- 1.3.6.1.2.1.17.7.1.4.4
	::= { dot1qVlan 4 }


-- -------------------------------------------------------------
-- The VLAN Port Configuration Table
-- -------------------------------------------------------------

dot1qPortVlanTable OBJECT-TYPE
	SYNTAX  SEQUENCE OF Dot1qPortVlanEntry
	MAX-ACCESS not-accessible
	STATUS  current
	DESCRIPTION
		"A table containing per port control and status
		information for VLAN configuration in the device."
	-- 1.3.6.1.2.1.17.7.1.4.5
	::= { dot1qVlan 5 }


dot1qPortVlanEntry OBJECT-TYPE
	SYNTAX  Dot1qPortVlanEntry
	MAX-ACCESS not-accessible
	STATUS  current
	DESCRIPTION
		"Information controlling VLAN configuration for a port
		on the device.  This is indexed by dot1dBasePort."
	AUGMENTS {
		dot1dBasePortEntry }
	-- 1.3.6.1.2.1.17.7.1.4.5.1
	::= { dot1qPortVlanTable 1 }


Dot1qPortVlanEntry ::= SEQUENCE {

	dot1qPvid                        VlanIndex,
	dot1qPortAcceptableFrameTypes    INTEGER,
	dot1qPortIngressFiltering        TruthValue,
	dot1qPortGvrpStatus              EnabledStatus,
	dot1qPortGvrpFailedRegistrations Counter32,
	dot1qPortGvrpLastPduOrigin       MacAddress }


dot1qPvid OBJECT-TYPE
	SYNTAX  VlanIndex
	MAX-ACCESS read-write
	STATUS  current
	DESCRIPTION
		"The PVID, the VLAN ID assigned to untagged frames or
		Priority-Tagged frames received on this port."
	REFERENCE
		"IEEE 802.1Q/D11 Section 12.10.1.1"
	DEFVAL { 1 }
	-- 1.3.6.1.2.1.17.7.1.4.5.1.1
	::= { dot1qPortVlanEntry 1 }


dot1qPortAcceptableFrameTypes OBJECT-TYPE
	SYNTAX  INTEGER {
			admitAll(1),
			admitOnlyVlanTagged(2) }
	MAX-ACCESS read-write
	STATUS  current
	DESCRIPTION
		"When this is admitOnlyVlanTagged(2) the device will
		discard untagged frames or Priority-Tagged frames
		received on this port.  When admitAll(1), untagged
		frames or Priority-Tagged frames received on this port
		will be accepted and assigned to the PVID for this port.

		This control does not affect VLAN independent BPDU
		frames, such as GVRP and STP.  It does affect VLAN
		dependent BPDU frames, such as GMRP."
	REFERENCE
		"IEEE 802.1Q/D11 Section 12.10.1.3"
	DEFVAL { admitAll }
	-- 1.3.6.1.2.1.17.7.1.4.5.1.2
	::= { dot1qPortVlanEntry 2 }


dot1qPortIngressFiltering OBJECT-TYPE
	SYNTAX  TruthValue
	MAX-ACCESS read-write
	STATUS  current
	DESCRIPTION
		"When this is true(1) the device will discard incoming
		frames for VLANs which do not include this Port in its
		Member set.  When false(2), the port will accept all
		incoming frames.

		This control does not affect VLAN independent BPDU
		frames, such as GVRP and STP.  It does affect VLAN
		dependent BPDU frames, such as GMRP."
	REFERENCE
		"IEEE 802.1Q/D11 Section 12.10.1.4"
	DEFVAL { false }
	-- 1.3.6.1.2.1.17.7.1.4.5.1.3
	::= { dot1qPortVlanEntry 3 }


dot1qPortGvrpStatus OBJECT-TYPE
	SYNTAX  EnabledStatus
	MAX-ACCESS read-write
	STATUS  current
	DESCRIPTION
		"The state of GVRP operation on this port.  The value
		enabled(1) indicates that GVRP is enabled on this port,
		as long as dot1qGvrpStatus is also enabled for this
		device.  When disabled(2) but dot1qGvrpStatus is still
		enabled for the device, GVRP is disabled on this port:
		any GVRP packets received will be silently discarded and
		no GVRP registrations will be propagated from other
		ports.  This object affects all GVRP Applicant and
		Registrar state machines on this port.  A transition
		from disabled(2) to enabled(1) will cause a reset of all
		GVRP state machines on this port."
	DEFVAL { enabled }
	-- 1.3.6.1.2.1.17.7.1.4.5.1.4
	::= { dot1qPortVlanEntry 4 }


dot1qPortGvrpFailedRegistrations OBJECT-TYPE
	SYNTAX  Counter32
	MAX-ACCESS read-only
	STATUS  current
	DESCRIPTION
		"The total number of failed GVRP registrations, for any
		reason, on this port."
	-- 1.3.6.1.2.1.17.7.1.4.5.1.5
	::= { dot1qPortVlanEntry 5 }


dot1qPortGvrpLastPduOrigin OBJECT-TYPE
	SYNTAX  MacAddress
	MAX-ACCESS read-only
	STATUS  current
	DESCRIPTION
		"The Source MAC Address of the last GVRP message
		received on this port."
	-- 1.3.6.1.2.1.17.7.1.4.5.1.6
	::= { dot1qPortVlanEntry 6 }


-- -------------------------------------------------------------
-- Per port VLAN Statistics Table
-- -------------------------------------------------------------

dot1qPortVlanStatisticsTable OBJECT-TYPE
	SYNTAX  SEQUENCE OF Dot1qPortVlanStatisticsEntry
	MAX-ACCESS not-accessible
	STATUS  current
	DESCRIPTION
		"A table containing per-port, per-VLAN statistics for
		traffic received. Separate objects are provided for both the
		most-significant and least-significant bits of statistics
		counters for ports that are associated with this transparent
		bridge. The most-significant bit objects are only required on
		high capacity interfaces, as defined in the conformance clauses
		for these objects. This mechanism is provided as a way to read
		64-bit counters for agents which support only SNMPv1.

		Note that the reporting of most-significant and least-
		significant counter bits separately runs the risk of missing
		an overflow of the lower bits in the interval between sampling.
		The manager must be aware of this possibility, even within the
		same varbindlist, when interpreting the results of a request or
		asynchronous notification."
	-- 1.3.6.1.2.1.17.7.1.4.6
	::= { dot1qVlan 6 }


dot1qPortVlanStatisticsEntry OBJECT-TYPE
	SYNTAX  Dot1qPortVlanStatisticsEntry
	MAX-ACCESS not-accessible
	STATUS  current
	DESCRIPTION
		"Traffic statistics for a VLAN on an interface."
	INDEX {
		dot1dBasePort,
		dot1qVlanIndex }
	-- 1.3.6.1.2.1.17.7.1.4.6.1
	::= { dot1qPortVlanStatisticsTable 1 }


Dot1qPortVlanStatisticsEntry ::= SEQUENCE {

	dot1qTpVlanPortInFrames           Counter32,
	dot1qTpVlanPortOutFrames          Counter32,
	dot1qTpVlanPortInDiscards         Counter32,
	dot1qTpVlanPortInOverflowFrames   Counter32,
	dot1qTpVlanPortOutOverflowFrames  Counter32,
	dot1qTpVlanPortInOverflowDiscards Counter32 }


dot1qTpVlanPortInFrames OBJECT-TYPE
	SYNTAX  Counter32
	MAX-ACCESS read-only
	STATUS  current
	DESCRIPTION
		"The number of valid frames received by this port from
		its segment which were classified as belonging to this
		VLAN.  Note that a frame received on this port is
		counted by this object if and only if it is for a
		protocol being processed by the local forwarding process
		for this VLAN.  This object includes received bridge
		management frames classified as belonging to this VLAN
		(e.g. GMRP, but not GVRP or STP)."
	REFERENCE
		"IEEE 802.1Q/D11 Section 12.6.1.1.3(a)"
	-- 1.3.6.1.2.1.17.7.1.4.6.1.1
	::= { dot1qPortVlanStatisticsEntry 1 }


dot1qTpVlanPortOutFrames OBJECT-TYPE
	SYNTAX  Counter32
	MAX-ACCESS read-only
	STATUS  current
	DESCRIPTION
		"The number of valid frames transmitted by this port to
		its segment from the local forwarding process for this
		VLAN.  This includes bridge management frames originated
		by this device which are classified as belonging to this
		VLAN (e.g. GMRP, but not GVRP or STP)."
	REFERENCE
		"IEEE 802.1Q/D11 Section 12.6.1.1.3(d)"
	-- 1.3.6.1.2.1.17.7.1.4.6.1.2
	::= { dot1qPortVlanStatisticsEntry 2 }


dot1qTpVlanPortInDiscards OBJECT-TYPE
	SYNTAX  Counter32
	MAX-ACCESS read-only
	STATUS  current
	DESCRIPTION
		"The number of valid frames received by this port from
		its segment which were classified as belonging to this
		VLAN which were discarded due to VLAN related reasons.
		Specifically, the IEEE 802.1Q counters for Discard
		Inbound and Discard on Ingress Filtering."
	REFERENCE
		"IEEE 802.1Q/D11 Section 12.6.1.1.3"
	-- 1.3.6.1.2.1.17.7.1.4.6.1.3
	::= { dot1qPortVlanStatisticsEntry 3 }


dot1qTpVlanPortInOverflowFrames OBJECT-TYPE
	SYNTAX  Counter32
	MAX-ACCESS read-only
	STATUS  current
	DESCRIPTION
		"The number of times the associated
		dot1qTpVlanPortInFrames counter has overflowed."
	REFERENCE
		"ISO/IEC 15802-3 Section 14.6.1.1.3"
	-- 1.3.6.1.2.1.17.7.1.4.6.1.4
	::= { dot1qPortVlanStatisticsEntry 4 }


dot1qTpVlanPortOutOverflowFrames OBJECT-TYPE
	SYNTAX  Counter32
	MAX-ACCESS read-only
	STATUS  current
	DESCRIPTION
		"The number of times the associated
		dot1qTpVlanPortOutFrames counter has overflowed."
	REFERENCE
		"ISO/IEC 15802-3 Section 14.6.1.1.3"
	-- 1.3.6.1.2.1.17.7.1.4.6.1.5
	::= { dot1qPortVlanStatisticsEntry 5 }


dot1qTpVlanPortInOverflowDiscards OBJECT-TYPE
	SYNTAX  Counter32
	MAX-ACCESS read-only
	STATUS  current
	DESCRIPTION
		"The number of times the associated
		dot1qTpVlanPortInDiscards counter has overflowed."
	REFERENCE
		"ISO/IEC 15802-3 Section 14.6.1.1.3"
	-- 1.3.6.1.2.1.17.7.1.4.6.1.6
	::= { dot1qPortVlanStatisticsEntry 6 }


dot1qPortVlanHCStatisticsTable OBJECT-TYPE
	SYNTAX  SEQUENCE OF Dot1qPortVlanHCStatisticsEntry
	MAX-ACCESS not-accessible
	STATUS  current
	DESCRIPTION
		"A table containing per port, per VLAN statistics for
		traffic on high capacity interfaces."
	-- 1.3.6.1.2.1.17.7.1.4.7
	::= { dot1qVlan 7 }


dot1qPortVlanHCStatisticsEntry OBJECT-TYPE
	SYNTAX  Dot1qPortVlanHCStatisticsEntry
	MAX-ACCESS not-accessible
	STATUS  current
	DESCRIPTION
		"Traffic statistics for a VLAN on a high capacity
		interface."
	INDEX {
		dot1dBasePort,
		dot1qVlanIndex }
	-- 1.3.6.1.2.1.17.7.1.4.7.1
	::= { dot1qPortVlanHCStatisticsTable 1 }


Dot1qPortVlanHCStatisticsEntry ::= SEQUENCE {

	dot1qTpVlanPortHCInFrames   Counter64,
	dot1qTpVlanPortHCOutFrames  Counter64,
	dot1qTpVlanPortHCInDiscards Counter64 }


dot1qTpVlanPortHCInFrames OBJECT-TYPE
	SYNTAX  Counter64
	MAX-ACCESS read-only
	STATUS  current
	DESCRIPTION
		"The number of valid frames received by this port from
		its segment which were classified as belonging to this
		VLAN.  Note that a frame received on this port is
		counted by this object if and only if it is for a
		protocol being processed by the local forwarding process
		for this VLAN.  This object includes received bridge
		management frames classified as belonging to this VLAN
		(e.g. GMRP, but not GVRP or STP)."
	REFERENCE
		"IEEE 802.1Q/D11 Section 12.6.1.1.3(a)"
	-- 1.3.6.1.2.1.17.7.1.4.7.1.1
	::= { dot1qPortVlanHCStatisticsEntry 1 }


dot1qTpVlanPortHCOutFrames OBJECT-TYPE
	SYNTAX  Counter64
	MAX-ACCESS read-only
	STATUS  current
	DESCRIPTION
		"The number of valid frames transmitted by this port to
		its segment from the local forwarding process for this
		VLAN.  This includes bridge management frames originated
		by this device which are classified as belonging to this
		VLAN (e.g. GMRP, but not GVRP or STP)."
	REFERENCE
		"IEEE 802.1Q/D11 Section 12.6.1.1.3(d)"
	-- 1.3.6.1.2.1.17.7.1.4.7.1.2
	::= { dot1qPortVlanHCStatisticsEntry 2 }


dot1qTpVlanPortHCInDiscards OBJECT-TYPE
	SYNTAX  Counter64
	MAX-ACCESS read-only
	STATUS  current
	DESCRIPTION
		"The number of valid frames received by this port from
		its segment which were classified as belonging to this
		VLAN which were discarded due to VLAN related reasons.
		Specifically, the IEEE 802.1Q counters for Discard
		Inbound and Discard on Ingress Filtering."
	REFERENCE
		"IEEE 802.1Q/D11 Section 12.6.1.1.3"
	-- 1.3.6.1.2.1.17.7.1.4.7.1.3
	::= { dot1qPortVlanHCStatisticsEntry 3 }


-- -------------------------------------------------------------
-- The VLAN Learning Constraints Table
-- -------------------------------------------------------------

dot1qLearningConstraintsTable OBJECT-TYPE
	SYNTAX  SEQUENCE OF Dot1qLearningConstraintsEntry
	MAX-ACCESS not-accessible
	STATUS  current
	DESCRIPTION
		"A table containing learning constraints for sets of
		Shared and Independendent VLANs."
	REFERENCE
		"IEEE 802.1Q/D11 Section 12.10.3.1"
	-- 1.3.6.1.2.1.17.7.1.4.8
	::= { dot1qVlan 8 }


dot1qLearningConstraintsEntry OBJECT-TYPE
	SYNTAX  Dot1qLearningConstraintsEntry
	MAX-ACCESS not-accessible
	STATUS  current
	DESCRIPTION
		"A learning constraint defined for a VLAN."
	INDEX {
		dot1qConstraintVlan,
		dot1qConstraintSet }
	-- 1.3.6.1.2.1.17.7.1.4.8.1
	::= { dot1qLearningConstraintsTable 1 }


Dot1qLearningConstraintsEntry ::= SEQUENCE {

	dot1qConstraintVlan   VlanIndex,
	dot1qConstraintSet    INTEGER,
	dot1qConstraintType   INTEGER,
	dot1qConstraintStatus RowStatus }


dot1qConstraintVlan OBJECT-TYPE
	SYNTAX  VlanIndex
	MAX-ACCESS not-accessible
	STATUS  current
	DESCRIPTION
		"The index of the row in dot1qVlanCurrentTable for the
		VLAN constrained by this entry."
	-- 1.3.6.1.2.1.17.7.1.4.8.1.1
	::= { dot1qLearningConstraintsEntry 1 }


dot1qConstraintSet OBJECT-TYPE
	SYNTAX  INTEGER (0..65535)
	MAX-ACCESS not-accessible
	STATUS  current
	DESCRIPTION
		"The identity of the constraint set to which
		dot1qConstraintVlan belongs.  These values may be chosen
		by the management station."
	-- 1.3.6.1.2.1.17.7.1.4.8.1.2
	::= { dot1qLearningConstraintsEntry 2 }


dot1qConstraintType OBJECT-TYPE
	SYNTAX  INTEGER {
			independent(1),
			shared(2) }
	MAX-ACCESS read-create
	STATUS  current
	DESCRIPTION
		"The type of constraint this entry defines.
		independent(1) - the VLAN, dot1qConstraintVlan,
		    uses an independent filtering database from all






		    other VLANs in the same set, defined by
		    dot1qConstraintSet.
		shared(2) - the VLAN, dot1qConstraintVlan, shares
		    the same filtering database as all other VLANs
		    in the same set, defined by dot1qConstraintSet."
	-- 1.3.6.1.2.1.17.7.1.4.8.1.3
	::= { dot1qLearningConstraintsEntry 3 }


dot1qConstraintStatus OBJECT-TYPE
	SYNTAX  RowStatus
	MAX-ACCESS read-create
	STATUS  current
	DESCRIPTION
		"The status of this entry."
	-- 1.3.6.1.2.1.17.7.1.4.8.1.4
	::= { dot1qLearningConstraintsEntry 4 }


dot1qConstraintSetDefault OBJECT-TYPE
	SYNTAX  INTEGER (0..65535)
	MAX-ACCESS read-write
	STATUS  current
	DESCRIPTION
		"The identity of the constraint set to which a VLAN
		belongs, if there is not an explicit entry for that VLAN
		in dot1qLearningConstraintsTable."
	-- 1.3.6.1.2.1.17.7.1.4.9
	::= { dot1qVlan 9 }


dot1qConstraintTypeDefault OBJECT-TYPE
	SYNTAX  INTEGER {
			independent(1),
			shared(2) }
	MAX-ACCESS read-write
	STATUS  current
	DESCRIPTION
		"The type of constraint set to which a VLAN belongs, if
		there is not an explicit entry for that VLAN in
		dot1qLearningConstraintsTable.  The types are as defined
		for dot1qConstraintType."
	-- 1.3.6.1.2.1.17.7.1.4.10
	::= { dot1qVlan 10 }


-- -------------------------------------------------------------
-- IEEE 802.1Q MIB - Conformance Information
-- -------------------------------------------------------------

qBridgeConformance OBJECT IDENTIFIER 
	-- 1.3.6.1.2.1.17.7.2
	::= { qBridgeMIB 2 }

qBridgeGroups OBJECT IDENTIFIER 
	-- 1.3.6.1.2.1.17.7.2.1
	::= { qBridgeConformance 1 }

qBridgeCompliances OBJECT IDENTIFIER 
	-- 1.3.6.1.2.1.17.7.2.2
	::= { qBridgeConformance 2 }

-- -------------------------------------------------------------
-- units of conformance
-- -------------------------------------------------------------

qBridgeBaseGroup OBJECT-GROUP
	OBJECTS {
		dot1qVlanVersionNumber,
		dot1qMaxVlanId,
		dot1qMaxSupportedVlans,
		dot1qNumVlans,
		dot1qGvrpStatus }
	STATUS  current
	DESCRIPTION
		"A collection of objects providing device level control
		and status information for the Virtual LAN bridge
		services."
	-- 1.3.6.1.2.1.17.7.2.1.1
	::= { qBridgeGroups 1 }

qBridgeFdbUnicastGroup OBJECT-GROUP
	OBJECTS {
		dot1qFdbDynamicCount,
		dot1qTpFdbPort,
		dot1qTpFdbStatus }
	STATUS  current
	DESCRIPTION
		"A collection of objects providing information about all
		unicast addresses, learnt dynamically or statically
		configured by management, in each Filtering Database."
	-- 1.3.6.1.2.1.17.7.2.1.2
	::= { qBridgeGroups 2 }

qBridgeFdbMulticastGroup OBJECT-GROUP
	OBJECTS {
		dot1qTpGroupEgressPorts,
		dot1qTpGroupLearnt }
	STATUS  current
	DESCRIPTION
		"A collection of objects providing information about all
		multicast addresses, learnt dynamically or statically
		configured by management, in each Filtering Database."
	-- 1.3.6.1.2.1.17.7.2.1.3
	::= { qBridgeGroups 3 }

qBridgeServiceRequirementsGroup OBJECT-GROUP
	OBJECTS {
		dot1qForwardAllPorts,
		dot1qForwardAllStaticPorts,
		dot1qForwardAllForbiddenPorts,
		dot1qForwardUnregisteredPorts,
		dot1qForwardUnregisteredStaticPorts,
		dot1qForwardUnregisteredForbiddenPorts }
	STATUS  current
	DESCRIPTION
		"A collection of objects providing information about
		service requirements, learnt dynamically or statically
		configured by management, in each Filtering Database."
	-- 1.3.6.1.2.1.17.7.2.1.4
	::= { qBridgeGroups 4 }

qBridgeFdbStaticGroup OBJECT-GROUP
	OBJECTS {
		dot1qStaticUnicastAllowedToGoTo,
		dot1qStaticUnicastStatus,
		dot1qStaticMulticastStaticEgressPorts,
		dot1qStaticMulticastForbiddenEgressPorts,
		dot1qStaticMulticastStatus }
	STATUS  current
	DESCRIPTION
		"A collection of objects providing information about
		unicast and multicast addresses statically configured by
		management, in each Filtering Database or VLAN."
	-- 1.3.6.1.2.1.17.7.2.1.5
	::= { qBridgeGroups 5 }

qBridgeVlanGroup OBJECT-GROUP
	OBJECTS {
		dot1qVlanNumDeletes,
		dot1qVlanFdbId,
		dot1qVlanCurrentEgressPorts,
		dot1qVlanCurrentUntaggedPorts,
		dot1qVlanStatus,
		dot1qVlanCreationTime }
	STATUS  current
	DESCRIPTION
		"A collection of objects providing information about
		all VLANs currently configured on this device."
	-- 1.3.6.1.2.1.17.7.2.1.6
	::= { qBridgeGroups 6 }

qBridgeVlanStaticGroup OBJECT-GROUP
	OBJECTS {
		dot1qVlanStaticName,
		dot1qVlanStaticEgressPorts,
		dot1qVlanForbiddenEgressPorts,
		dot1qVlanStaticUntaggedPorts,
		dot1qVlanStaticRowStatus,
		dot1qNextFreeLocalVlanIndex }
	STATUS  current
	DESCRIPTION
		"A collection of objects providing information about
		VLANs statically configured by management."
	-- 1.3.6.1.2.1.17.7.2.1.7
	::= { qBridgeGroups 7 }

qBridgePortGroup OBJECT-GROUP
	OBJECTS {
		dot1qPvid,
		dot1qPortAcceptableFrameTypes,
		dot1qPortIngressFiltering,
		dot1qPortGvrpStatus,
		dot1qPortGvrpFailedRegistrations,
		dot1qPortGvrpLastPduOrigin }
	STATUS  current
	DESCRIPTION
		"A collection of objects providing port level VLAN
		control and status information for all ports."
	-- 1.3.6.1.2.1.17.7.2.1.8
	::= { qBridgeGroups 8 }

qBridgeVlanStatisticsGroup OBJECT-GROUP
	OBJECTS {
		dot1qTpVlanPortInFrames,
		dot1qTpVlanPortOutFrames,
		dot1qTpVlanPortInDiscards }
	STATUS  current
	DESCRIPTION
		"A collection of objects providing per-port packet
		statistics for all VLANs currently configured on this
		device."
	-- 1.3.6.1.2.1.17.7.2.1.9
	::= { qBridgeGroups 9 }

qBridgeVlanStatisticsOverflowGroup OBJECT-GROUP
	OBJECTS {
		dot1qTpVlanPortInOverflowFrames,
		dot1qTpVlanPortOutOverflowFrames,
		dot1qTpVlanPortInOverflowDiscards }
	STATUS  current
	DESCRIPTION
		"A collection of objects providing overflow counters for
		per-port packet statistics for all VLANs currently configured
		on this device for high capacity interfaces, defined as those
		that have the value of the corresponding instance of
		ifSpeed greater than 650,000,000 bits/second."
	-- 1.3.6.1.2.1.17.7.2.1.10
	::= { qBridgeGroups 10 }

qBridgeVlanHCStatisticsGroup OBJECT-GROUP
	OBJECTS {
		dot1qTpVlanPortHCInFrames,
		dot1qTpVlanPortHCOutFrames,
		dot1qTpVlanPortHCInDiscards }
	STATUS  current
	DESCRIPTION
		"A collection of objects providing per-port packet
		statistics for all VLANs currently configured on this
		device for high capacity interfaces, defined as those
		that have the value of the corresponding instance of
		ifSpeed greater than 650,000,000 bits/second."
	-- 1.3.6.1.2.1.17.7.2.1.11
	::= { qBridgeGroups 11 }

qBridgeLearningConstraintsGroup OBJECT-GROUP
	OBJECTS {
		dot1qConstraintType,
		dot1qConstraintStatus }
	STATUS  current
	DESCRIPTION
		"A collection of objects defining the Filtering Database
		constraints all VLANs have with each other."
	-- 1.3.6.1.2.1.17.7.2.1.12
	::= { qBridgeGroups 12 }

qBridgeLearningConstraintDefaultGroup OBJECT-GROUP
	OBJECTS {
		dot1qConstraintSetDefault,
		dot1qConstraintTypeDefault }
	STATUS  current
	DESCRIPTION
		"A collection of objects defining the default Filtering
		Database constraints for VLANs which have no specific
		constraints defined."
	-- 1.3.6.1.2.1.17.7.2.1.13
	::= { qBridgeGroups 13 }


-- -------------------------------------------------------------
-- compliance statements
-- -------------------------------------------------------------

qBridgeCompliance MODULE-COMPLIANCE
	STATUS  current
	DESCRIPTION
		"The compliance statement for device support of Virtual
		LAN Bridge services."

	MODULE 
	MANDATORY-GROUPS {
			qBridgeBaseGroup,
			qBridgeVlanGroup,
			qBridgeVlanStaticGroup,
			qBridgePortGroup }

	GROUP qBridgeFdbUnicastGroup
	  DESCRIPTION
		"This group is mandatory for bridges that implement
		802.1Q transparent bridging."
	GROUP qBridgeFdbMulticastGroup
	  DESCRIPTION
		"This group is mandatory for bridges that implement
		802.1Q transparent bridging."
	GROUP qBridgeServiceRequirementsGroup
	  DESCRIPTION
		"This group is mandatory for bridges that implement
		extended filtering services.  All objects must be
		read-write if extended-filtering services are
		enabled."
	GROUP qBridgeFdbStaticGroup
	  DESCRIPTION
		"This group is optional."
	GROUP qBridgeVlanStatisticsGroup
	  DESCRIPTION
		"This group is optional as there may be significant
		implementation cost associated with its support."
	GROUP qBridgeVlanStatisticsOverflowGroup
	  DESCRIPTION
		"This group is optional as there may be significant
		implementation cost associated with its support. It is most
		relevant for high capacity interfaces where the SNMP agent
		supports only SNMPv1."
	GROUP qBridgeVlanHCStatisticsGroup
	  DESCRIPTION
		"This group is optional as there may be significant
		implementation cost associated with its support. It is most
		relevant for high capacity interfaces."
	GROUP qBridgeLearningConstraintsGroup
	  DESCRIPTION
		"This group is mandatory for devices implementing
		both Independent VLAN Learning (IVL) and Shared
		VLAN Learning (SVL) modes of operation of the
		filtering database, as defined by IEEE 802.1Q."
	GROUP qBridgeLearningConstraintDefaultGroup
	  DESCRIPTION
		"This group is mandatory for devices implementing
		both Independent VLAN Learning (IVL) and Shared
		VLAN Learning (SVL) modes of operation of the
		filtering database, as defined by IEEE 802.1Q."
	OBJECT dot1qPortAcceptableFrameTypes
	  MIN-ACCESS read-only
	  DESCRIPTION 
		"Write access is not required as this is an optional
		capability in IEEE 802.1Q."
	OBJECT dot1qPortIngressFiltering
	  MIN-ACCESS read-only
	  DESCRIPTION 
		"Write access is not required as this is an optional
		capability in IEEE 802.1Q."
	OBJECT dot1qConstraintSetDefault
	  MIN-ACCESS read-only
	  DESCRIPTION 
		"Write access is not required as this is an optional
		capability in IEEE 802.1Q."
	OBJECT dot1qConstraintTypeDefault
	  MIN-ACCESS read-only
	  DESCRIPTION 
		"Write access is not required as this is an optional
		capability in IEEE 802.1Q."
	-- 1.3.6.1.2.1.17.7.2.2.1
	::= { qBridgeCompliances 1 }

END
