1--
2-- Copyright (C) 2006 Shteryana Shopova <syrinx@FreeBSD.org>
3-- All rights reserved.
4--
5-- Redistribution and use in source and binary forms, with or without
6-- modification, are permitted provided that the following conditions
7-- are met:
8-- 1. Redistributions of source code must retain the above copyright
9--    notice, this list of conditions and the following disclaimer.
10-- 2. Redistributions in binary form must reproduce the above copyright
11--    notice, this list of conditions and the following disclaimer in the
12--    documentation and/or other materials provided with the distribution.
13--
14-- THIS SOFTWARE IS PROVIDED BY AUTHOR AND CONTRIBUTORS ``AS IS'' AND
15-- ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
16-- IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
17-- ARE DISCLAIMED.  IN NO EVENT SHALL AUTHOR OR CONTRIBUTORS BE LIABLE
18-- FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL
19-- DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS
20-- OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION)
21-- HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT
22-- LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY
23-- OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
24-- SUCH DAMAGE.
25--
26
27BEGEMOT-BRIDGE-MIB DEFINITIONS ::= BEGIN
28
29IMPORTS
30    MODULE-IDENTITY, OBJECT-TYPE, NOTIFICATION-TYPE,
31    Counter32, Integer32, TimeTicks, mib-2
32	FROM SNMPv2-SMI
33    TEXTUAL-CONVENTION, MacAddress, TruthValue, RowStatus
34	FROM SNMPv2-TC
35    BridgeId, Timeout
36	FROM BRIDGE-MIB
37    InterfaceIndex FROM IF-MIB
38    begemot
39	FROM BEGEMOT-MIB;
40
41begemotBridge MODULE-IDENTITY
42    LAST-UPDATED "201612170000Z"
43    ORGANIZATION "Sofia University St. Kliment Ohridski"
44    CONTACT-INFO
45	    "		Shteryana Shopova
46
47	     Postal:	Faculty of Mathematics and Informatics
48			5 James Bourchier Blvd.
49			1164 Sofia
50			Bulgaria
51
52	     Fax:	+359 2 687 180
53
54	     E-Mail:	syrinx@FreeBSD.org"
55    DESCRIPTION
56	    "The Begemot MIB for managing bridge interfaces."
57    REVISION     "201612170000Z"
58    DESCRIPTION
59    	     "Address some minor typos and grammar mistakes."
60    REVISION     "200708060000Z"
61    DESCRIPTION
62	     "Third revision adds begemotBridgeBasePortPrivate
63	     object."
64    REVISION     "200611210000Z"
65    DESCRIPTION
66	     "Second revision adds support for monitoring RSTP
67	     specific variables."
68    REVISION     "200607270000Z"
69    DESCRIPTION
70	    "Initial revision."
71    ::= { begemot 205 }
72
73-- ---------------------------------------------------------- --
74BridgeIfName ::= TEXTUAL-CONVENTION
75    DISPLAY-HINT "16a"
76    STATUS	current
77    DESCRIPTION
78	"Name of a bridge interface."
79    SYNTAX	OCTET STRING (SIZE(1..16))
80
81BridgeIfNameOrEmpty ::= TEXTUAL-CONVENTION
82    DISPLAY-HINT "16a"
83    STATUS	current
84    DESCRIPTION
85	"Name of a bridge interface."
86    SYNTAX	OCTET STRING (SIZE(0..16))
87
88BridgePortId ::= TEXTUAL-CONVENTION
89    DISPLAY-HINT "1x.1x"
90    STATUS	current
91    DESCRIPTION
92	"A port identifier that contains a bridge port's STP priority
93	in the first octet and the port number in the second octet."
94    SYNTAX	OCTET STRING (SIZE(2))
95
96-- ---------------------------------------------------------- --
97-- subtrees in the Begemot Bridge MIB
98-- ---------------------------------------------------------- --
99begemotBridgeNotifications	OBJECT IDENTIFIER ::= { begemotBridge 0 }
100
101begemotBridgeBase		OBJECT IDENTIFIER ::= { begemotBridge 1 }
102
103begemotBridgeStp		OBJECT IDENTIFIER ::= { begemotBridge 2 }
104
105begemotBridgeTp			OBJECT IDENTIFIER ::= { begemotBridge 3 }
106
107begemotBridgePf			OBJECT IDENTIFIER ::= { begemotBridge 4 }
108
109begemotBridgeConfigObjects	OBJECT IDENTIFIER ::= { begemotBridge 5 }
110
111-- ---------------------------------------------------------- --
112-- the base Bridge interface table
113-- ---------------------------------------------------------- --
114
115begemotBridgeBaseTable OBJECT-TYPE
116    SYNTAX	SEQUENCE OF BegemotBridgeBaseEntry
117    MAX-ACCESS	not-accessible
118    STATUS	current
119    DESCRIPTION
120	"A table that contains generic information for each
121	bridge interface on the managed device."
122    ::= { begemotBridgeBase 1 }
123
124begemotBridgeBaseEntry OBJECT-TYPE
125    SYNTAX	BegemotBridgeBaseEntry
126    MAX-ACCESS	not-accessible
127    STATUS	current
128    DESCRIPTION
129	"A list of information for the bridge interfaces on
130	the managed device."
131    INDEX  { begemotBridgeBaseName }
132    ::= { begemotBridgeBaseTable 1 }
133
134BegemotBridgeBaseEntry ::= SEQUENCE {
135    begemotBridgeBaseName			BridgeIfName,
136    begemotBridgeBaseAddress			MacAddress,
137    begemotBridgeBaseNumPorts			Integer32,
138    begemotBridgeBaseType			INTEGER,
139    begemotBridgeBaseStatus			RowStatus
140}
141
142begemotBridgeBaseName OBJECT-TYPE
143    SYNTAX	BridgeIfName
144    MAX-ACCESS	read-only
145    STATUS	current
146    DESCRIPTION
147	"The name of the bridge interface for which this
148	entry contains management information."
149    ::= { begemotBridgeBaseEntry 1 }
150
151begemotBridgeBaseAddress OBJECT-TYPE
152    SYNTAX	MacAddress
153    MAX-ACCESS	read-only
154    STATUS	current
155    DESCRIPTION
156	"The MAC address of the bridge interface."
157    ::= { begemotBridgeBaseEntry 2 }
158
159begemotBridgeBaseNumPorts OBJECT-TYPE
160    SYNTAX	Integer32
161    MAX-ACCESS	read-only
162    STATUS	current
163    DESCRIPTION
164	"The number of ports, members of this bridge."
165    ::= { begemotBridgeBaseEntry 3 }
166
167begemotBridgeBaseType OBJECT-TYPE
168    SYNTAX	INTEGER {
169		    unknown(1),
170		    transparent-only(2),
171		    sourceroute-only(3),
172		    srt(4)
173		}
174    MAX-ACCESS	read-only
175    STATUS	current
176    DESCRIPTION
177	"Indicates what type of bridging this bridge can
178	perform."
179    ::= { begemotBridgeBaseEntry 4 }
180
181begemotBridgeBaseStatus OBJECT-TYPE
182    SYNTAX	RowStatus
183    MAX-ACCESS	read-create
184    STATUS	current
185    DESCRIPTION
186	"Used to create/destroy bridge interfaces on the
187	managed device."
188    ::= { begemotBridgeBaseEntry 5 }
189
190-- ---------------------------------------------------------- --
191-- the base Bridge ports table
192-- ---------------------------------------------------------- --
193
194begemotBridgeBasePortTable OBJECT-TYPE
195    SYNTAX	SEQUENCE OF BegemotBridgeBasePortEntry
196    MAX-ACCESS	not-accessible
197    STATUS	current
198    DESCRIPTION
199	"A table containing generic information about ports,
200	members of each bridge interface."
201    ::= { begemotBridgeBase 2 }
202
203begemotBridgeBasePortEntry OBJECT-TYPE
204    SYNTAX	BegemotBridgeBasePortEntry
205    MAX-ACCESS	not-accessible
206    STATUS	current
207    DESCRIPTION
208	"A list of information about a specific port, member of
209	a bridge interface."
210    INDEX { begemotBridgeBaseName, begemotBridgeBasePortIfIndex }
211    ::= { begemotBridgeBasePortTable 1 }
212
213BegemotBridgeBasePortEntry  ::= SEQUENCE {
214    begemotBridgeBasePort			Integer32,
215    begemotBridgeBasePortIfIndex		InterfaceIndex,
216    begemotBridgeBaseSpanEnabled		INTEGER,
217    begemotBridgeBasePortDelayExceededDiscards	Counter32,
218    begemotBridgeBasePortMtuExceededDiscards	Counter32,
219    begemotBridgeBasePortStatus			RowStatus,
220    begemotBridgeBasePortPrivate		TruthValue
221}
222
223begemotBridgeBasePort OBJECT-TYPE
224    SYNTAX	Integer32 (1..65535)
225    MAX-ACCESS	read-only
226    STATUS	current
227    DESCRIPTION
228	"The system interface index of the interface corresponding
229	to this port."
230    ::= { begemotBridgeBasePortEntry 1 }
231
232begemotBridgeBasePortIfIndex OBJECT-TYPE
233    SYNTAX	InterfaceIndex
234    MAX-ACCESS	read-only
235    STATUS	current
236    DESCRIPTION
237	"The value of the instance of the ifIndex object,
238	defined in IF-MIB, for the interface corresponding
239	to this port."
240    ::= { begemotBridgeBasePortEntry 2 }
241
242begemotBridgeBaseSpanEnabled OBJECT-TYPE
243    SYNTAX	INTEGER {
244		    enabled(1),
245		    disabled(2)
246		}
247    MAX-ACCESS	read-write
248    STATUS	current
249    DESCRIPTION
250	"The value of this objects reflects whether the port
251	is a span port on the specified bridge interface."
252    ::= { begemotBridgeBasePortEntry 3 }
253
254begemotBridgeBasePortDelayExceededDiscards OBJECT-TYPE
255    SYNTAX	Counter32
256    MAX-ACCESS	read-only
257    STATUS	current
258    DESCRIPTION
259	"The number of frames discarded by this port due
260	to excessive transit delay through the bridge."
261    ::= { begemotBridgeBasePortEntry 4 }
262
263begemotBridgeBasePortMtuExceededDiscards OBJECT-TYPE
264    SYNTAX	Counter32
265    MAX-ACCESS	read-only
266    STATUS	current
267    DESCRIPTION
268	"The number of frames discarded by this port due
269	to an excessive size."
270    ::= { begemotBridgeBasePortEntry 5 }
271
272begemotBridgeBasePortStatus OBJECT-TYPE
273    SYNTAX	RowStatus
274    MAX-ACCESS	read-create
275    STATUS	current
276    DESCRIPTION
277	"Used to control addition of member ports to or
278	removal of member ports from a specified bridge."
279    ::= { begemotBridgeBasePortEntry 6 }
280
281begemotBridgeBasePortPrivate OBJECT-TYPE
282    SYNTAX		TruthValue
283    MAX-ACCESS		read-write
284    STATUS		current
285    DESCRIPTION
286	"The value of this objects reflects whether the port
287	has a PRIVATE flag set. A port with this flags set
288	can only communicate with ports not having the
289	PRIVATE flag set."
290    ::= { begemotBridgeBasePortEntry 7 }
291
292-- ---------------------------------------------------------- --
293-- the Bridge interface STP table
294-- ---------------------------------------------------------- --
295
296begemotBridgeStpTable OBJECT-TYPE
297    SYNTAX	SEQUENCE OF BegemotBridgeStpEntry
298    MAX-ACCESS	not-accessible
299    STATUS	current
300    DESCRIPTION
301	"A table that contains Spanning Tree Protocol information
302	for each bridge interface on the managed device."
303    ::= { begemotBridgeStp 1 }
304
305begemotBridgeStpEntry OBJECT-TYPE
306    SYNTAX	BegemotBridgeStpEntry
307    MAX-ACCESS	not-accessible
308    STATUS	current
309    DESCRIPTION
310	"A list of information about the Spanning Tree Protocol
311	operation on a bridge interface."
312    AUGMENTS { begemotBridgeBaseEntry }
313    ::= { begemotBridgeStpTable 1 }
314
315BegemotBridgeStpEntry ::= SEQUENCE {
316    begemotBridgeStpProtocolSpecification		INTEGER,
317    begemotBridgeStpPriority				Integer32,
318    begemotBridgeStpTimeSinceTopologyChange		TimeTicks,
319    begemotBridgeStpTopChanges				Counter32,
320    begemotBridgeStpDesignatedRoot			BridgeId,
321    begemotBridgeStpRootCost				Integer32,
322    begemotBridgeStpRootPort				Integer32,
323    begemotBridgeStpMaxAge				Timeout,
324    begemotBridgeStpHelloTime				Timeout,
325    begemotBridgeStpHoldTime				Integer32,
326    begemotBridgeStpForwardDelay			Timeout,
327    begemotBridgeStpBridgeMaxAge			Timeout,
328    begemotBridgeStpBridgeHelloTime			Timeout,
329    begemotBridgeStpBridgeForwardDelay			Timeout,
330    begemotBridgeStpVersion				INTEGER,
331    begemotBridgeStpTxHoldCount				Integer32
332}
333
334begemotBridgeStpProtocolSpecification OBJECT-TYPE
335    SYNTAX	INTEGER {
336		    unknown(1),
337		    decLb100(2),
338		    ieee8021d(3)
339		}
340    MAX-ACCESS	read-only
341    STATUS	current
342    DESCRIPTION
343	"The Spanning Tree Protocol version being run on the
344	bridge interface. The value 'decLb100(2)' indicates the
345	DEC LANbridge 100 Spanning Tree protocol, 'ieee8021d(3)'
346	indicates the bridge is running IEEE 802.1D STP
347	implementation."
348    ::= { begemotBridgeStpEntry 1 }
349
350begemotBridgeStpPriority OBJECT-TYPE
351    SYNTAX	Integer32 (0..65535)
352    MAX-ACCESS	read-write
353    STATUS	current
354    DESCRIPTION
355	"The priority value of the bridge interface forming the
356	first two octets of the bridge identifier. Acceptable
357	values are 0-61440, in steps of 4096."
358    ::= { begemotBridgeStpEntry 2 }
359
360begemotBridgeStpTimeSinceTopologyChange OBJECT-TYPE
361    SYNTAX	TimeTicks
362    UNITS	"centi-seconds"
363    MAX-ACCESS	read-only
364    STATUS	current
365    DESCRIPTION
366	"The time (in hundreds of a second) since a topology change
367	was last detected by this bridge."
368    ::= { begemotBridgeStpEntry 3 }
369
370begemotBridgeStpTopChanges OBJECT-TYPE
371    SYNTAX	Counter32
372    MAX-ACCESS	read-only
373    STATUS	current
374    DESCRIPTION
375	"The number of times a topology change was detected by the
376	bridge interface since the management entity was initialized
377	or reset."
378    ::= { begemotBridgeStpEntry 4 }
379
380begemotBridgeStpDesignatedRoot OBJECT-TYPE
381    SYNTAX	BridgeId
382    MAX-ACCESS	read-only
383    STATUS	current
384    DESCRIPTION
385	"The bridge identifier of the root of the spanning tree as
386	calculated by the Spanning Tree Protocol."
387    ::= { begemotBridgeStpEntry 5 }
388
389begemotBridgeStpRootCost OBJECT-TYPE
390    SYNTAX	Integer32
391    MAX-ACCESS	read-only
392    STATUS	current
393    DESCRIPTION
394	"The cost of the path from this bridge to the root bridge."
395    ::= { begemotBridgeStpEntry 6 }
396
397begemotBridgeStpRootPort OBJECT-TYPE
398    SYNTAX	Integer32
399    MAX-ACCESS	read-only
400    STATUS	current
401    DESCRIPTION
402	"The port number of the port that offers the lowest
403	cost path from this bridge to the root bridge of
404	the spanning tree. If this bridge is the root bridge,
405	this object shall have a value of zero."
406    ::= { begemotBridgeStpEntry 7 }
407
408begemotBridgeStpMaxAge OBJECT-TYPE
409    SYNTAX	Timeout
410    UNITS	"centi-seconds"
411    MAX-ACCESS	read-only
412    STATUS	current
413    DESCRIPTION
414	"The maximum age of Spanning Tree Protocol information
415	received from the network on any port, before that
416	information is discarded. This is the actual value that
417	the bridge is currently using."
418    ::= { begemotBridgeStpEntry 8 }
419
420begemotBridgeStpHelloTime OBJECT-TYPE
421    SYNTAX	Timeout
422    UNITS	"centi-seconds"
423    MAX-ACCESS	read-only
424    STATUS	current
425    DESCRIPTION
426	"The amount of time between transmission of
427	Configuration BPDUs by this bridge on any port,
428	when it is the root of the spanning tree or is
429	trying to become so. This is the actual value that
430	this bridge is currently using."
431    ::= { begemotBridgeStpEntry 9 }
432
433begemotBridgeStpHoldTime OBJECT-TYPE
434    SYNTAX	Integer32
435    UNITS	"centi-seconds"
436    MAX-ACCESS	read-only
437    STATUS	current
438    DESCRIPTION
439	"This time value determines the interval length
440	during which no more than two Configuration BPDUs
441	shall be transmitted by this node, in units of
442	hundredths of a second."
443    ::= { begemotBridgeStpEntry 10 }
444
445begemotBridgeStpForwardDelay OBJECT-TYPE
446    SYNTAX	Timeout
447    UNITS	"centi-seconds"
448    MAX-ACCESS	read-only
449    STATUS	current
450    DESCRIPTION
451	"This value, measured in units of hundredths of a second
452	determines how long a port will stay consecutively in the
453	Listening and Learning states before transitioning to
454	Forwarding state.
455	This is the actual value currently used by the bridge
456	as opposed to begemotBridgeStpBridgeForwardDelay, which
457	is the value this and all bridges participating in the
458	spanning tree were to use, if this was the root bridge."
459    ::= { begemotBridgeStpEntry 11 }
460
461begemotBridgeStpBridgeMaxAge OBJECT-TYPE
462    SYNTAX	Timeout (600..4000)
463    UNITS	"centi-seconds"
464    MAX-ACCESS	read-write
465    STATUS	current
466    DESCRIPTION
467	"The value that all bridges participating in the
468	spanning tree would use for MaxAge if this bridge
469	was the root of the spanning tree."
470    ::= { begemotBridgeStpEntry 12 }
471
472begemotBridgeStpBridgeHelloTime OBJECT-TYPE
473    SYNTAX	Timeout (100..1000)
474    UNITS	"centi-seconds"
475    MAX-ACCESS	read-write
476    STATUS	current
477    DESCRIPTION
478	"The value that all bridges participating in the
479	spanning tree would use for HelloTime if this
480	bridge was the root of the spanning tree."
481    ::= { begemotBridgeStpEntry 13 }
482
483begemotBridgeStpBridgeForwardDelay OBJECT-TYPE
484    SYNTAX	Timeout (400..3000)
485    UNITS	"centi-seconds"
486    MAX-ACCESS	read-write
487    STATUS	current
488    DESCRIPTION
489	"The value that all bridges participating in the
490	spanning tree would use for ForwardDelay if this
491	bridge was the root of the spanning tree."
492    ::= { begemotBridgeStpEntry 14 }
493
494begemotBridgeStpVersion OBJECT-TYPE
495    SYNTAX	INTEGER {
496		    stpCompatible(0),
497		    rstp(2)
498		}
499    MAX-ACCESS	read-write
500    STATUS	current
501    DESCRIPTION
502	"The version of Spanning Tree Protocol the bridge is
503	currently running.  The value 'stpCompatible(0)'
504	indicates the Spanning Tree Protocol specified in
505	IEEE 802.1D-1998 and 'rstp(2)' indicates the Rapid
506	Spanning Tree Protocol specified in IEEE 802.1w and
507	clause 17 of 802.1D-2004.  The values are directly from
508	the IEEE standard.  New values may be defined as future
509	versions of the protocol become available.
510
511	The value of this object MUST be retained across
512	reinitializations of the management system."
513    DEFVAL	{ rstp }
514    ::= { begemotBridgeStpEntry 15 }
515
516begemotBridgeStpTxHoldCount OBJECT-TYPE
517    SYNTAX	Integer32 (1..10)
518    MAX-ACCESS	read-write
519    STATUS	current
520    DESCRIPTION
521	"The value used by the Port Transmit state machine to limit
522	the maximum transmission rate of BPDUs on the bridge interface.
523
524	The value of this object MUST be retained across
525	reinitializations of the management system."
526    DEFVAL	{ 3 }
527    ::= { begemotBridgeStpEntry 16 }
528
529-- ---------------------------------------------------------- --
530-- the Bridge STP ports table
531-- ---------------------------------------------------------- --
532
533begemotBridgeStpPortTable OBJECT-TYPE
534    SYNTAX	SEQUENCE OF BegemotBridgeStpPortEntry
535    MAX-ACCESS	not-accessible
536    STATUS	current
537    DESCRIPTION
538	"A table containing Spanning Tree Protocol information
539	about the members of each bridge interface."
540    ::= { begemotBridgeStp 2 }
541
542begemotBridgeStpPortEntry OBJECT-TYPE
543    SYNTAX	BegemotBridgeStpPortEntry
544    MAX-ACCESS	not-accessible
545    STATUS	current
546    DESCRIPTION
547	"A list of Spanning Tree Protocol information about
548	a specific member of a bridge interface."
549    INDEX  { begemotBridgeBaseName,  begemotBridgeBasePortIfIndex }
550    ::= { begemotBridgeStpPortTable 1 }
551
552BegemotBridgeStpPortEntry  ::= SEQUENCE {
553    begemotBridgeStpPort			Integer32,
554    begemotBridgeStpPortPriority		Integer32,
555    begemotBridgeStpPortState			INTEGER,
556    begemotBridgeStpPortEnable			INTEGER,
557    begemotBridgeStpPortPathCost		Integer32,
558    begemotBridgeStpPortDesignatedRoot		BridgeId,
559    begemotBridgeStpPortDesignatedCost		Integer32,
560    begemotBridgeStpPortDesignatedBridge	BridgeId,
561    begemotBridgeStpPortDesignatedPort		BridgePortId,
562    begemotBridgeStpPortForwardTransitions	Counter32
563}
564
565begemotBridgeStpPort OBJECT-TYPE
566    SYNTAX	Integer32 (1..65535)
567    MAX-ACCESS	read-only
568    STATUS	current
569    DESCRIPTION
570	"The system interface index of the interface corresponding
571	to this port, for which the management entity has Spanning
572	Tree Protocol information."
573    ::= { begemotBridgeStpPortEntry 1 }
574
575begemotBridgeStpPortPriority OBJECT-TYPE
576    SYNTAX	Integer32 (0..255)
577    MAX-ACCESS	read-write
578    STATUS	current
579    DESCRIPTION
580	"The STP priority of this port that is contained in the first
581	octet of its Port Identifier. The second octet contains the
582	value of begemotBridgeStpPort."
583    ::= { begemotBridgeStpPortEntry 2 }
584
585begemotBridgeStpPortState OBJECT-TYPE
586    SYNTAX	INTEGER {
587		    disabled(1),
588		    blocking(2),
589		    listening(3),
590		    learning(4),
591		    forwarding(5),
592		    broken(6)
593		}
594    MAX-ACCESS	read-only
595    STATUS	current
596    DESCRIPTION
597	"The current state of the port as defined by the operation
598	of the Spanning Tree Protocol. If the Spanning Tree Protocol
599	is administratively disabled on the port, this object shall
600	have value disabled(1). A value of broken(6) does not correspond
601	to any legal state of a port, and if present should indicate
602	error in the operation of either the Spanning Tree Protocol
603	implementation running on the device or the management entity."
604    ::= { begemotBridgeStpPortEntry 3 }
605
606begemotBridgeStpPortEnable OBJECT-TYPE
607    SYNTAX	INTEGER {
608		    enabled(1),
609		    disabled(2)
610		}
611    MAX-ACCESS	read-write
612    STATUS	current
613    DESCRIPTION
614	"The administrative Spanning Tree Protocol state of the
615	port - value of enabled(1) indicates that the port is
616	participating in the Spanning Tree Protocol operation."
617    ::= { begemotBridgeStpPortEntry 4 }
618
619begemotBridgeStpPortPathCost OBJECT-TYPE
620    SYNTAX	Integer32 (1..65535)
621    MAX-ACCESS	read-write
622    STATUS	current
623    DESCRIPTION
624	"The contribution of the path through this port, when the port
625	is the Root Port, to the total cost of the path to the root
626	bridge for this bridge."
627    ::= { begemotBridgeStpPortEntry 5 }
628
629begemotBridgeStpPortDesignatedRoot OBJECT-TYPE
630    SYNTAX	BridgeId
631    MAX-ACCESS	read-only
632    STATUS	current
633    DESCRIPTION
634	"The unique Bridge Identifier of the bridge recorded as the
635	root in the Root Identifier parameter of Configuration BPDUs
636	transmitted by the Designated Bridge for the LAN to which
637	the port is attached."
638    ::= { begemotBridgeStpPortEntry 6 }
639
640begemotBridgeStpPortDesignatedCost OBJECT-TYPE
641    SYNTAX	Integer32
642    MAX-ACCESS	read-only
643    STATUS	current
644    DESCRIPTION
645	"For a Designated port, the path cost (equal to the Root
646	Path Cost of the bridge) offered to the LAN to which the
647	port is attached otherwise the cost of the path to the Root
648	offered by the Designated Port on the LAN to which this
649	Port is attached."
650    ::= { begemotBridgeStpPortEntry 7 }
651
652begemotBridgeStpPortDesignatedBridge OBJECT-TYPE
653    SYNTAX	BridgeId
654    MAX-ACCESS	read-only
655    STATUS	current
656    DESCRIPTION
657	"The unique Bridge Identifier of the bridge to which the
658	port belongs, in the case when the port is a designated
659	port, otherwise the bridge believed to be the Designated
660	Bridge for the LAN to which this port is attached."
661    ::= { begemotBridgeStpPortEntry 8 }
662
663begemotBridgeStpPortDesignatedPort OBJECT-TYPE
664    SYNTAX	BridgePortId
665    MAX-ACCESS	read-only
666    STATUS	current
667    DESCRIPTION
668	"The Port Identifier of the Bridge port, on the Designated
669	Bridge, through which the Designated Bridge transmits the
670	Configuration Message information stored by this port."
671    ::= { begemotBridgeStpPortEntry 9 }
672
673begemotBridgeStpPortForwardTransitions OBJECT-TYPE
674    SYNTAX	Counter32
675    MAX-ACCESS	read-only
676    STATUS	current
677    DESCRIPTION
678	"The number of times this port has transitioned
679	from the Learning state to the Forwarding state."
680    ::= { begemotBridgeStpPortEntry 10 }
681
682-- ---------------------------------------------------------- --
683-- the Bridge STP extended ports table
684-- ---------------------------------------------------------- --
685
686begemotBridgeStpExtPortTable OBJECT-TYPE
687    SYNTAX	SEQUENCE OF BegemotBridgeStpExtPortEntry
688    MAX-ACCESS	not-accessible
689    STATUS	current
690    DESCRIPTION
691	"A table that contains port-specific Rapid Spanning Tree
692	information for the bridge interface members."
693    ::= { begemotBridgeStp 3 }
694
695begemotBridgeStpExtPortEntry OBJECT-TYPE
696    SYNTAX	BegemotBridgeStpExtPortEntry
697    MAX-ACCESS	not-accessible
698    STATUS	current
699    DESCRIPTION
700	"A list of Rapid Spanning Tree information maintained by
701	each bridge interface member."
702    AUGMENTS    { begemotBridgeStpPortEntry }
703    ::= { begemotBridgeStpExtPortTable 1 }
704
705BegemotBridgeStpExtPortEntry ::= SEQUENCE {
706    begemotBridgeStpPortProtocolMigration	TruthValue,
707    begemotBridgeStpPortAdminEdgePort		TruthValue,
708    begemotBridgeStpPortOperEdgePort		TruthValue,
709    begemotBridgeStpPortAdminPointToPoint	INTEGER,
710    begemotBridgeStpPortOperPointToPoint	TruthValue,
711    begemotBridgeStpPortAdminPathCost		Integer32
712}
713
714begemotBridgeStpPortProtocolMigration OBJECT-TYPE
715    SYNTAX	TruthValue
716    MAX-ACCESS	read-write
717    STATUS	current
718    DESCRIPTION
719	"When operating in RSTP (version 2) mode, writing true(1)
720	to this object forces this port to transmit RSTP BPDUs.
721	Any other operation on this object has no effect and
722	it always returns false(2) when read."
723    ::= { begemotBridgeStpExtPortEntry 1 }
724
725begemotBridgeStpPortAdminEdgePort OBJECT-TYPE
726    SYNTAX	TruthValue
727    MAX-ACCESS	read-write
728    STATUS	current
729    DESCRIPTION
730	"The administrative value of the Edge Port parameter. A
731	value of true(1) indicates that this port should be
732	assumed as an edge-port, and a value of false(2) indicates
733	that this port should be assumed as a non-edge-port.
734	Setting this object will also cause the corresponding
735	instance of begemotBridgeStpPortOperEdgePort to change to
736	the same value.  Note that even when this object's value
737	is true, the value of the corresponding instance of
738	begemotBridgeStpPortOperEdgePort can be false if a BPDU
739	has been received.
740
741	The value of this object MUST be retained across
742	reinitializations of the management system."
743    ::= { begemotBridgeStpExtPortEntry 2 }
744
745begemotBridgeStpPortOperEdgePort OBJECT-TYPE
746    SYNTAX	TruthValue
747    MAX-ACCESS	read-only
748    STATUS	current
749    DESCRIPTION
750	"The operational value of the Edge Port parameter. The
751	object is initialized to the value of the corresponding
752	instance of begemotBridgeStpPortAdminEdgePort. When the
753	corresponding instance of begemotBridgeStpPortAdminEdgePort
754	is set, this object will be changed as well. This object
755	will also be changed to false on reception of a BPDU."
756    ::= { begemotBridgeStpExtPortEntry 3 }
757
758begemotBridgeStpPortAdminPointToPoint OBJECT-TYPE
759    SYNTAX	INTEGER {
760		    forceTrue(0),
761		    forceFalse(1),
762		    auto(2)
763		}
764    MAX-ACCESS	read-write
765    STATUS	current
766    DESCRIPTION
767	"The administrative point-to-point status of the LAN segment
768	attached to this port, using the enumeration values of the
769	IEEE 802.1w clause.  A value of forceTrue(0) indicates
770	that this port should always be treated as if it is
771	connected to a point-to-point link. A value of
772	forceFalse(1) indicates that this port should be treated as
773	having a shared media connection.  A value of auto(2)
774	indicates that this port is considered to have a
775	point-to-point link if it is an Aggregator and all of its
776	members are aggregatable, or if the MAC entity
777	is configured for full duplex operation, either through
778	auto-negotiation or by management means.  Manipulating this
779	object changes the underlying adminPortToPortMAC.
780
781	The value of this object MUST be retained across
782	reinitializations of the management system."
783    ::= { begemotBridgeStpExtPortEntry 4 }
784
785begemotBridgeStpPortOperPointToPoint OBJECT-TYPE
786    SYNTAX	TruthValue
787    MAX-ACCESS	read-only
788    STATUS	current
789    DESCRIPTION
790	"The operational point-to-point status of the LAN segment
791	attached to this port. It indicates whether a port is
792	considered to have a point-to-point connection.
793	If adminPointToPointMAC is set to auto(2), then the value
794	of operPointToPointMAC is determined in accordance with the
795	specific procedures defined for the MAC entity concerned,
796	as defined in IEEE 802.1w, clause 6.5. The value is
797	determined dynamically; that is, it is re-evaluated whenever
798	the value of adminPointToPointMAC changes, and whenever
799	the specific procedures defined for the MAC entity evaluates
800	a change in its point-to-point status."
801    ::= { begemotBridgeStpExtPortEntry 5 }
802
803begemotBridgeStpPortAdminPathCost OBJECT-TYPE
804    SYNTAX	Integer32 (0..200000000)
805    MAX-ACCESS	read-write
806    STATUS	current
807    DESCRIPTION
808	"The administratively assigned value for the contribution
809	of this port to the path cost of paths toward the spanning
810	tree root.
811
812	Writing a value of '0' assigns the automatically calculated
813	default Path Cost value to the port. If the default Path
814	Cost is being used, this object returns '0' when read.
815
816	This complements the object begemotBridgeStpPortPathCost or
817	begemotBridgeStpPortPathCost32, which returns the operational
818	value of the path cost.
819
820	The value of this object MUST be retained across
821	reinitializations of the management system."
822    ::= { begemotBridgeStpExtPortEntry 6 }
823
824-- ---------------------------------------------------------- --
825-- the Bridge interface Transparent bridging table
826-- ---------------------------------------------------------- --
827
828begemotBridgeTpTable OBJECT-TYPE
829    SYNTAX	SEQUENCE OF BegemotBridgeTpEntry
830    MAX-ACCESS	not-accessible
831    STATUS	current
832    DESCRIPTION
833	"A table that contains information regarding transparent
834	bridging for each bridge interface on the managed device."
835    ::= { begemotBridgeTp 1 }
836
837begemotBridgeTpEntry OBJECT-TYPE
838    SYNTAX	BegemotBridgeTpEntry
839    MAX-ACCESS	not-accessible
840    STATUS	current
841    DESCRIPTION
842	"A list of information regarding transparent bridging
843	on a bridge interface."
844    AUGMENTS { begemotBridgeBaseEntry }
845    ::= { begemotBridgeTpTable 1 }
846
847BegemotBridgeTpEntry ::= SEQUENCE {
848    begemotBridgeTpLearnedEntryDiscards		Counter32,
849    begemotBridgeTpAgingTime			Integer32,
850    begemotBridgeTpMaxAddresses			Integer32
851}
852
853begemotBridgeTpLearnedEntryDiscards OBJECT-TYPE
854    SYNTAX	Counter32
855    MAX-ACCESS	read-only
856    STATUS	current
857    DESCRIPTION
858	"The total number of Forwarding Database entries that would
859	have been learnt, but have been discarded due to Forwarding
860	Address Table having reached its maximum entries limit."
861    ::= { begemotBridgeTpEntry 1 }
862
863begemotBridgeTpAgingTime OBJECT-TYPE
864    SYNTAX	Integer32 (10..1000000)
865    UNITS	"seconds"
866    MAX-ACCESS	read-write
867    STATUS	current
868    DESCRIPTION
869	"The timeout period in seconds before aging out
870        dynamically learnt forwarding entries."
871    ::= { begemotBridgeTpEntry 2 }
872
873begemotBridgeTpMaxAddresses OBJECT-TYPE
874    SYNTAX	Integer32 (1..10000)
875    MAX-ACCESS	read-write
876    STATUS	current
877    DESCRIPTION
878	"The maximum number of entries that this bridge can
879	learn in its Forwarding Address Table and use for
880	making forwarding decisions."
881    ::= { begemotBridgeTpEntry 3 }
882
883-- ---------------------------------------------------------- --
884--  The Forwarding Database for Transparent Bridging interfaces
885-- ---------------------------------------------------------- --
886
887begemotBridgeTpFdbTable OBJECT-TYPE
888    SYNTAX	SEQUENCE OF BegemotBridgeTpFdbEntry
889    MAX-ACCESS	not-accessible
890    STATUS	current
891    DESCRIPTION
892	"A table that contains information about unicast entries
893	for which the bridge interfaces have forwarding and/or
894	filtering information. This information is used by the
895	bridge interfaces to make forwarding decisions."
896    ::= { begemotBridgeTp 2 }
897
898begemotBridgeTpFdbEntry OBJECT-TYPE
899    SYNTAX	BegemotBridgeTpFdbEntry
900    MAX-ACCESS	not-accessible
901    STATUS	current
902    DESCRIPTION
903	"Information about a specific unicast MAC address
904	for which the bridge interface has some forwarding
905	and/or filtering information."
906    INDEX   { begemotBridgeBaseName, begemotBridgeTpFdbAddress }
907    ::= { begemotBridgeTpFdbTable 1 }
908
909BegemotBridgeTpFdbEntry ::= SEQUENCE {
910    begemotBridgeTpFdbAddress			MacAddress,
911    begemotBridgeTpFdbPort			Integer32,
912    begemotBridgeTpFdbStatus			INTEGER
913}
914
915begemotBridgeTpFdbAddress OBJECT-TYPE
916    SYNTAX	MacAddress
917    MAX-ACCESS	read-only
918    STATUS	current
919    DESCRIPTION
920	"A unicast MAC address for which the bridge has which the
921	bridge interface has some forwarding and/or filtering
922	information."
923    ::= { begemotBridgeTpFdbEntry 1 }
924
925begemotBridgeTpFdbPort OBJECT-TYPE
926    SYNTAX	Integer32
927    MAX-ACCESS	read-only
928    STATUS	current
929    DESCRIPTION
930	"The port number of the bridge port on which a frame having
931	a source address equal to the value of the corresponding
932	instance of begemotBridgeTpFdbAddress has been seen."
933    ::= { begemotBridgeTpFdbEntry 2 }
934
935begemotBridgeTpFdbStatus OBJECT-TYPE
936    SYNTAX	INTEGER {
937		    other(1),
938		    invalid(2),
939		    learned(3),
940		    self(4),
941		    mgmt(5)
942		}
943    MAX-ACCESS	read-only
944    STATUS	current
945    DESCRIPTION
946	"The status of this entry.  The meanings of the
947	values are:
948	    other(1) - none of the following.
949	    invalid(2) - this entry is no longer valid (e.g.,
950		it was learned but has since aged out), but has
951		not yet been flushed from the table.
952	    learned(3) - the value of the corresponding instance
953		of begemotBridgeTpFdbPort was learned, and is being
954		used.
955	    self(4) - the value of the corresponding instance of
956		begemotBridgeTpFdbAddress represents one of the
957		bridge's addresses.  The corresponding instance of
958		begemotBridgeTpFdbPort indicates which of the bridge's
959		ports has this address.
960	    mgmt(5) - the value of the corresponding instance of
961		begemotBridgeTpFdbAddress has been added to the
962		bridge's Forwarding Database by some management
963		means."
964    ::= { begemotBridgeTpFdbEntry 3 }
965
966-- ---------------------------------------------------------- --
967--  Ports table for Transparent Bridging interfaces
968-- ---------------------------------------------------------- --
969
970begemotBridgeTpPortTable OBJECT-TYPE
971    SYNTAX	SEQUENCE OF BegemotBridgeTpPortEntry
972    MAX-ACCESS	not-accessible
973    STATUS	current
974    DESCRIPTION
975	"A table that contains information about every bridge port,
976	member of a bridge interface, associated with the transparent
977	bridging function of the bridge."
978    ::= { begemotBridgeTp 3 }
979
980begemotBridgeTpPortEntry OBJECT-TYPE
981    SYNTAX	BegemotBridgeTpPortEntry
982    MAX-ACCESS	not-accessible
983    STATUS	current
984    DESCRIPTION
985	"A list of information about every bridge port, member of a
986	bridge interface, associated with the bridge's transparent
987	bridging function."
988    INDEX  { begemotBridgeBaseName,  begemotBridgeBasePortIfIndex }
989    ::= { begemotBridgeTpPortTable 1 }
990
991BegemotBridgeTpPortEntry  ::= SEQUENCE {
992    begemotBridgeTpPort				Integer32,
993    begemotBridgeTpPortMaxInfo			Integer32,
994    begemotBridgeTpPortInFrames			Counter32,
995    begemotBridgeTpPortOutFrames		Counter32,
996    begemotBridgeTpPortInDiscards		Counter32
997}
998
999begemotBridgeTpPort OBJECT-TYPE
1000    SYNTAX	Integer32 (1..65535)
1001    MAX-ACCESS	read-only
1002    STATUS	current
1003    DESCRIPTION
1004	"The system interface index of the port for which this entry
1005	contains Transparent bridging management information."
1006    ::= { begemotBridgeTpPortEntry 1 }
1007
1008begemotBridgeTpPortMaxInfo OBJECT-TYPE
1009    SYNTAX	Integer32
1010    UNITS	"bytes"
1011    MAX-ACCESS	read-only
1012    STATUS	current
1013    DESCRIPTION
1014	"The maximum size of the INFO (non-MAC) field that this port
1015	will receive or transmit."
1016    ::= { begemotBridgeTpPortEntry 2 }
1017
1018begemotBridgeTpPortInFrames OBJECT-TYPE
1019    SYNTAX	Counter32
1020    UNITS	"frames"
1021    MAX-ACCESS	read-only
1022    STATUS	current
1023    DESCRIPTION
1024	"The number of frames that have been received by this
1025	port from its segment.  Note that a frame received on the
1026	interface corresponding to this port is only counted by
1027	this object if and only if it is for a protocol being
1028	processed by the local bridging function, including
1029	bridge management frames."
1030    ::= { begemotBridgeTpPortEntry 3 }
1031
1032begemotBridgeTpPortOutFrames OBJECT-TYPE
1033    SYNTAX	Counter32
1034    UNITS	"frames"
1035    MAX-ACCESS	read-only
1036    STATUS	current
1037    DESCRIPTION
1038	"The number of frames that have been transmitted by this
1039	port to its segment.  Note that a frame transmitted on
1040	the interface corresponding to this port is only counted
1041	by this object if and only if it is for a protocol being
1042	processed by the local bridging function, including
1043	bridge management frames."
1044    ::= { begemotBridgeTpPortEntry 4 }
1045
1046begemotBridgeTpPortInDiscards OBJECT-TYPE
1047    SYNTAX	Counter32
1048    UNITS	"frames"
1049    MAX-ACCESS	read-only
1050    STATUS	current
1051    DESCRIPTION
1052	"Count of received valid frames that were discarded
1053	(i.e., filtered) by the Forwarding Process."
1054    ::= { begemotBridgeTpPortEntry  5 }
1055
1056-- ---------------------------------------------------------- --
1057-- the begemotBridgePf objects
1058-- ---------------------------------------------------------- --
1059
1060begemotBridgePfilStatus OBJECT-TYPE
1061    SYNTAX	TruthValue
1062    MAX-ACCESS	read-write
1063    STATUS	current
1064    DESCRIPTION
1065	"Indicates whether packet filtering by some firewall
1066	package is enabled on the bridge interface."
1067    ::= { begemotBridgePf 1 }
1068
1069begemotBridgePfilMembers OBJECT-TYPE
1070    SYNTAX	TruthValue
1071    MAX-ACCESS	read-write
1072    STATUS	current
1073    DESCRIPTION
1074	"A value of true(1) indicates that packet filtering is
1075	enabled on both incoming and outgoing bridge member
1076	interfaces."
1077    ::= { begemotBridgePf 2 }
1078
1079begemotBridgePfilIpOnly OBJECT-TYPE
1080    SYNTAX	TruthValue
1081    MAX-ACCESS	read-write
1082    STATUS	current
1083    DESCRIPTION
1084	"This value controls the handling of non-IP packets which
1085	are not passed on for further processing to a firewall
1086	package. A value of false(0) indicates that all non-IP
1087	Ethernet frames are passed unconditionally."
1088    ::= { begemotBridgePf 3 }
1089
1090begemotBridgeLayer2PfStatus OBJECT-TYPE
1091    SYNTAX	INTEGER {
1092		    enabled(1),
1093		    disabled(2)
1094		}
1095    MAX-ACCESS	read-write
1096    STATUS	current
1097    DESCRIPTION
1098	"This value indicates whether layer2 filtering by a
1099	firewall package is enabled for bridge interfaces."
1100    ::= { begemotBridgePf 4 }
1101
1102-- ---------------------------------------------------------- --
1103-- the begemotBridgeConfigObjects objects
1104-- ---------------------------------------------------------- --
1105
1106begemotBridgeDefaultBridgeIf OBJECT-TYPE
1107
1108    SYNTAX	BridgeIfNameOrEmpty
1109    MAX-ACCESS	read-write
1110    STATUS	current
1111    DESCRIPTION
1112	"The name of the bridge interface that will be managed
1113	via objects in IETF BRIDGE-MIB (RFC4188). If the
1114	object's value is set to an empty string, bridge interfaces
1115	will only be managed via objects in this MIB module."
1116    DEFVAL	{ "bridge0" }
1117    ::= { begemotBridgeConfigObjects 1 }
1118
1119begemotBridgeDataUpdate OBJECT-TYPE
1120
1121    SYNTAX	Timeout (1..300)
1122    UNITS       "seconds"
1123    MAX-ACCESS	read-write
1124    STATUS	current
1125    DESCRIPTION
1126	"The maximum age in seconds of the cached data."
1127    DEFVAL	{ 10 }
1128    ::= { begemotBridgeConfigObjects 2 }
1129
1130begemotBridgeDataPoll OBJECT-TYPE
1131
1132    SYNTAX	Timeout (1..3600)
1133    UNITS       "seconds"
1134    MAX-ACCESS	read-write
1135    STATUS	current
1136    DESCRIPTION
1137	"The polling rate of data when the module is idle."
1138    DEFVAL	{ 300 }
1139    ::= { begemotBridgeConfigObjects 3 }
1140
1141-- ---------------------------------------------------------- --
1142-- Notifications for the Spanning Tree Protocol
1143-- ---------------------------------------------------------- --
1144
1145begemotBridgeNewRoot NOTIFICATION-TYPE
1146    OBJECTS	{ begemotBridgeBaseName }
1147    STATUS	current
1148    DESCRIPTION
1149	"The begemotBridgeNewRoot trap indicates that one of the
1150	bridge interfaces on the sending agent's device has
1151	become the new root of the spanning tree topology it is
1152	participating in."
1153    ::= { begemotBridgeNotifications 1 }
1154
1155begemotBridgeTopologyChange NOTIFICATION-TYPE
1156    OBJECTS	{ begemotBridgeBaseName }
1157    STATUS	current
1158    DESCRIPTION
1159	"A begemotBridgeTopologyChange trap is send when a member
1160	port on one of the bridge interfaces, monitored by the agent,
1161	transitions from the Learning state to the Forwarding state,
1162	or from the Forwarding state to the Blocking state. The trap
1163	is not sent if a begemotBridgeNewRoot trap is sent for the
1164	same transition."
1165    ::= { begemotBridgeNotifications 2 }
1166
1167END
1168