1   BROCADE-VCS-MIB DEFINITIONS ::= BEGIN
2
3   IMPORTS
4       MODULE-IDENTITY, OBJECT-TYPE,
5       Integer32, Gauge32,
6       Counter32, Unsigned32              FROM SNMPv2-SMI
7       MODULE-COMPLIANCE, OBJECT-GROUP    FROM SNMPv2-CONF
8       TruthValue, TEXTUAL-CONVENTION,
9       DisplayString                      FROM SNMPv2-TC
10       InetAddress, InetAddressType       FROM INET-ADDRESS-MIB
11       FcWwn                              FROM Brocade-TC
12       bcsiModules                        FROM Brocade-REG-MIB;
13
14   brocadeVcsMIB MODULE-IDENTITY
15       LAST-UPDATED "201504080000Z"
16       ORGANIZATION
17              "Brocade Communications Systems Inc."
18       CONTACT-INFO
19              "130 Holger Way,
20               San Jose, CA
21               95134 USA.
22
23               Phone: +1-408-333-8000
24               Email: vivekk@brocade.com"
25       DESCRIPTION
26              "The MIB module for the monitoring of VCS fabrics. VCS
27               fabrics is a proprietary technology of Brocade.
28
29               A VCS fabric consists of a set of inter-connected
30               Brocade VDX switches. These set of switches together
31               behave like a single L2 switch to the outside world.
32               The cluster can operate in 2 modes: fabric mode and
33               Logical chassis mode.
34               In fabric mode, the switches together behave like a
35               single L2 switch - but configuration on each switch
36               is independent of the other.
37               In logical chassis mode, one switch in the fabric is
38               elected as the principal switch. All configurations
39               need to be done only from the principal switch.
40               This is synced across to all the switches in the fabric.
41               Thus the configuration information is the same on all
42               the switches."
43
44       REVISION      "201504080000Z"
45       DESCRIPTION
46              "Initial version."
47       ::= { bcsiModules  6 }
48
49   brocadeVcsMIBObjects     OBJECT IDENTIFIER ::= { brocadeVcsMIB 1 }
50   brocadeVcsMIBConformance OBJECT IDENTIFIER ::= { brocadeVcsMIB 2 }
51
52   VcsConfigMode ::= TEXTUAL-CONVENTION
53       STATUS     current
54       DESCRIPTION
55              "The configuration mode that is in effect in the VCS
56               fabric.
57               local(1) - configuration is local to the switch.
58               distributed(2) - configuration is to be done from the
59                                principal switch and will be the same
60                                across all the switches in the fabric."
61       SYNTAX INTEGER {
62                local(1),
63                distributed(2)
64       }
65
66   VcsOperationMode ::= TEXTUAL-CONVENTION
67       STATUS     current
68       DESCRIPTION
69              "The operational mode of the fabric.
70               fabricCluster(1) - the entire set of switches in the
71                                  cluster behaves like a single L2
72                                  switch to the outer world. However,
73                                  configuration is local to each switch.
74               logicalChassis(2) - in this case the fabric behaves
75                                   like a single L2 switch and the
76                                   configuration is driven from the
77                                   principal switch and is the same
78                                   across all switches in the fabric."
79       SYNTAX INTEGER {
80                fabricCluster(1),
81                logicalChassis(2)
82       }
83
84   VcsIdentifier ::= TEXTUAL-CONVENTION
85       STATUS     current
86       DESCRIPTION
87              "A number that uniquely identifies a fabric. Two different
88               fabrics would have different identifiers."
89       SYNTAX Unsigned32 (1 .. 8192)
90
91   VcsRbridgeId ::= TEXTUAL-CONVENTION
92       STATUS     current
93       DESCRIPTION
94              "A number that uniquely identifies a switch within a fabric."
95       SYNTAX Unsigned32 (1 .. 239)
96
97   VcsClusterCondition ::= TEXTUAL-CONVENTION
98       STATUS     current
99       DESCRIPTION
100              "The state of the fabric as a whole.
101               good(1) - indicates that all switches are in good
102                         condition and cluster is fine.
103               degraded(2) - indicates that one or more switches are
104                             offline and cluster has degraded.
105               error(3) - Internal error state."
106       SYNTAX INTEGER {
107               good(1),
108               degraded(2),
109               error(3)
110       }
111
112   vcsConfigMode OBJECT-TYPE
113       SYNTAX     VcsConfigMode
114       MAX-ACCESS read-only
115       STATUS     current
116       DESCRIPTION
117	      "The configuration mode of this cluster that is in effect."
118   ::=  { brocadeVcsMIBObjects 1 }
119
120   vcsModeOfOperation OBJECT-TYPE
121       SYNTAX     VcsOperationMode
122       MAX-ACCESS read-only
123       STATUS     current
124       DESCRIPTION
125              "The operational mode of this cluster."
126   ::= { brocadeVcsMIBObjects 2 }
127
128   vcsIdentifier OBJECT-TYPE
129       SYNTAX     VcsIdentifier
130       MAX-ACCESS read-only
131       STATUS     current
132       DESCRIPTION
133              "The unique identifier of this cluster."
134   ::= { brocadeVcsMIBObjects 3 }
135
136   vcsVirtualIpV4Address  OBJECT-TYPE
137       SYNTAX     InetAddress
138       MAX-ACCESS read-only
139       STATUS     current
140       DESCRIPTION
141              "The virtual IPv4 address of the cluster. Management
142               stations can use this address to send requests."
143   ::= { brocadeVcsMIBObjects 4 }
144
145   vcsVirtualIpV6Address OBJECT-TYPE
146       SYNTAX     InetAddress
147       MAX-ACCESS read-only
148       STATUS     current
149       DESCRIPTION
150              "The virtual IPv6 address of the cluster. Management
151               stations can use this address to send requests."
152   ::= { brocadeVcsMIBObjects 5 }
153
154   vcsVirtualIpAssociatedRbridgeId OBJECT-TYPE
155       SYNTAX     VcsRbridgeId
156       MAX-ACCESS read-only
157       STATUS     current
158       DESCRIPTION
159              "The rbridge-id of the switch that hosts the virtual IP
160               address."
161   ::= { brocadeVcsMIBObjects 6 }
162
163   vcsVirtualIpInterfaceId OBJECT-TYPE
164       SYNTAX     Unsigned32
165       MAX-ACCESS read-only
166       STATUS     current
167       DESCRIPTION
168              "The interface Id that is configured in the case of
169               inband configuration. If it is not inband configuration,
170               then this object will contain the value 0."
171   ::= { brocadeVcsMIBObjects 7 }
172
173   vcsVirtualIpV4OperStatus OBJECT-TYPE
174       SYNTAX     INTEGER {
175                     up(1),
176                     down(2)
177                  }
178       MAX-ACCESS read-only
179       STATUS     current
180       DESCRIPTION
181              "The operational status of the virtual IPv4 address."
182   ::= { brocadeVcsMIBObjects 8 }
183
184   vcsVirtualIpV6OperStatus OBJECT-TYPE
185       SYNTAX     INTEGER {
186	             up(1),
187                     down(2)
188                  }
189       MAX-ACCESS read-only
190       STATUS     current
191       DESCRIPTION
192              "The operational status of the virtual IPv6 address."
193   ::= { brocadeVcsMIBObjects 9 }
194
195   vcsNumNodesInCluster OBJECT-TYPE
196       SYNTAX     Unsigned32
197       MAX-ACCESS read-only
198       STATUS     current
199       DESCRIPTION
200              "The number of switches in the cluster that are currently
201               online."
202   ::= { brocadeVcsMIBObjects 10 }
203
204   vcsClusterCondition OBJECT-TYPE
205       SYNTAX         VcsClusterCondition
206       MAX-ACCESS     read-only
207       STATUS         current
208       DESCRIPTION
209              "The condition of the cluster as a whole."
210   ::= { brocadeVcsMIBObjects 11 }
211
212   vcsFabricIslTable  OBJECT-TYPE
213      SYNTAX     SEQUENCE OF VcsFabricIslEntry
214      MAX-ACCESS not-accessible
215      STATUS     current
216      DESCRIPTION
217             "This table contains all the ISLs (Inter Switch Link) on
218              the local device."
219
220   ::= { brocadeVcsMIBObjects 12 }
221
222   vcsFabricIslEntry OBJECT-TYPE
223      SYNTAX     VcsFabricIslEntry
224      MAX-ACCESS not-accessible
225      STATUS     current
226      DESCRIPTION
227             "Represents a single Inter Switch Link (ISL) on this
228              switch."
229	  INDEX { vcsFabricIslIndex }
230   ::= { vcsFabricIslTable 1 }
231
232   VcsFabricIslEntry ::= SEQUENCE {
233      vcsFabricIslIndex           Unsigned32,
234      vcsFabricIslIntfName        DisplayString,
235      vcsFabricIslNbrIntfName     DisplayString,
236      vcsFabricIslNbrWWN          FcWwn,
237      vcsFabricIslNbrName         DisplayString,
238      vcsFabricIslBW              Unsigned32,
239      vcsFabricIslIsTrunk         TruthValue
240   }
241
242   vcsFabricIslIndex OBJECT-TYPE
243       SYNTAX     Unsigned32
244       MAX-ACCESS not-accessible
245       STATUS     current
246       DESCRIPTION
247              "A unique id to distinguish this ISL from others on the
248               local device."
249       ::= { vcsFabricIslEntry 1 }
250
251   vcsFabricIslIntfName OBJECT-TYPE
252       SYNTAX     DisplayString
253       MAX-ACCESS read-only
254       STATUS     current
255       DESCRIPTION
256              "The interface name (ifName) of the interface on which
257               the ISL is formed on this switch."
258       ::= { vcsFabricIslEntry 2 }
259
260   vcsFabricIslNbrIntfName OBJECT-TYPE
261       SYNTAX     DisplayString
262       MAX-ACCESS read-only
263       STATUS     current
264       DESCRIPTION
265	      "The interface name (ifName) of the interface on the
266               neighboring switch for this ISL."
267       ::= { vcsFabricIslEntry 3 }
268
269   vcsFabricIslNbrWWN OBJECT-TYPE
270       SYNTAX     FcWwn
271       MAX-ACCESS read-only
272       STATUS     current
273       DESCRIPTION
274              "The World Wide Name (WWN) of the neighboring switch
275               for this ISL."
276       ::= { vcsFabricIslEntry 4 }
277
278   vcsFabricIslNbrName  OBJECT-TYPE
279       SYNTAX     DisplayString
280       MAX-ACCESS read-only
281       STATUS     current
282       DESCRIPTION
283              "The name of the neighboring switch on which this ISL
284               is formed."
285       ::= { vcsFabricIslEntry 5 }
286
287   vcsFabricIslBW  OBJECT-TYPE
288       SYNTAX     Unsigned32
289       UNITS      "megabytes"
290       MAX-ACCESS read-only
291       STATUS     current
292       DESCRIPTION
293              "The band-width of this ISL."
294       ::= { vcsFabricIslEntry 6 }
295
296   vcsFabricIslIsTrunk  OBJECT-TYPE
297       SYNTAX     TruthValue
298       MAX-ACCESS read-only
299       STATUS     current
300       DESCRIPTION
301              "An indication whether this ISL is a trunk interface.
302               A value of true(1) means it is a trunk.
303               A value of false(2) means it is not a trunk."
304       ::= { vcsFabricIslEntry 7 }
305
306   --  Conformance information
307
308   brocadeVcsConformanceGroups
309        OBJECT IDENTIFIER ::= { brocadeVcsMIBConformance 1 }
310
311   brocadeVcsCompliances
312        OBJECT IDENTIFIER ::= { brocadeVcsMIBConformance 2 }
313
314   --  Compliance statements
315
316   brocadeVcsCompliance MODULE-COMPLIANCE
317      STATUS     current
318      DESCRIPTION
319             "The compliance information for this MIB."
320      MODULE -- this module
321      MANDATORY-GROUPS { brocadeVcsObjectsGroup }
322
323      ::= { brocadeVcsCompliances 1 }
324
325   -- units of conformance
326
327   brocadeVcsObjectsGroup OBJECT-GROUP
328       OBJECTS { vcsConfigMode,
329                 vcsModeOfOperation,
330                 vcsIdentifier,
331                 vcsVirtualIpV4Address,
332                 vcsVirtualIpV6Address,
333                 vcsVirtualIpAssociatedRbridgeId,
334                 vcsVirtualIpInterfaceId,
335                 vcsVirtualIpV4OperStatus,
336                 vcsVirtualIpV6OperStatus,
337                 vcsNumNodesInCluster,
338                 vcsClusterCondition,
339                 vcsFabricIslIndex,
340                 vcsFabricIslIntfName,
341                 vcsFabricIslNbrIntfName,
342                 vcsFabricIslNbrWWN,
343                 vcsFabricIslNbrName,
344                 vcsFabricIslBW,
345                 vcsFabricIslIsTrunk
346           }
347       STATUS     current
348       DESCRIPTION
349              "The MIB objects related  to VCS monitoring."
350       ::= { brocadeVcsConformanceGroups 1 }
351
352   END
353