1-- *********************************************************************
2-- CISCO-SANTAP-MIB.my: For SanTap service Configuration
3--
4-- February 2005, Arul Mozhi
5--
6-- Copyright (c) 2005 by Cisco Systems, Inc.
7-- All rights reserved.
8--
9-- *********************************************************************
10CISCO-SANTAP-MIB DEFINITIONS ::= BEGIN
11
12IMPORTS
13   MODULE-IDENTITY,
14   OBJECT-TYPE,
15   Unsigned32
16       FROM SNMPv2-SMI
17   RowStatus,
18   TruthValue
19       FROM SNMPv2-TC
20   MODULE-COMPLIANCE,
21   OBJECT-GROUP
22       FROM SNMPv2-CONF
23   ciscoMgmt
24       FROM CISCO-SMI
25   PhysicalIndex
26       FROM ENTITY-MIB
27   vsanIndex
28       FROM CISCO-VSAN-MIB
29   SnmpAdminString
30       FROM SNMP-FRAMEWORK-MIB
31   InterfaceIndex
32       FROM IF-MIB
33   VsanIndex,
34   FcNameIdOrZero,
35   FcNameId
36       FROM CISCO-ST-TC;
37
38
39ciscoSanTapMIB MODULE-IDENTITY
40   LAST-UPDATED "200603160000Z"
41   ORGANIZATION "Cisco Systems Inc."
42   CONTACT-INFO
43                "     Cisco Systems
44                      Customer Service
45                Postal: 170 W Tasman Drive
46                      San Jose, CA  95134
47                      USA
48                Tel: +1 800 553 -NETS
49                E-mail: cs-san@cisco.com"
50   DESCRIPTION
51           "MIB module to provide information about the SanTap
52            service configuration.
53
54            SanTap is a fibre channel switch based capability that
55            provides a reliable copy of the data flowing between
56            a set of one or more initiators and a set of one or
57            more targets connected to the fabric.
58
59            Adminstrator must configure the switch to create the
60            Control Virtual Target (CVT) for the SanTap service.
61            CVTs are used to implement the control path which process
62            all SanTap service requests sent out by an appliance.
63
64            Prior to requesting for SanTap service the appliance
65            contacts the CVT, specifies the initiator and the target
66            for replicating the data flowing between them.
67
68            This MIB provides an interface to configure the CVT for
69            the SanTap service on the fibre channel switch modules.
70
71            Glossary of terms used in this MIB:
72
73            Fabric - The set of physically connected fibre channel
74                     switches.
75
76            VSAN - Virtual Storage Area Network, similar to a
77                   Virtual Fabric as defined by T11.
78
79            WWN  - World Wide Name. Mechanism of uniquely
80                   identifying the devices in Fibre Channel
81                   Networks.
82
83            Appliance - It is a storage target, which can
84                   requests the SanTap service for the reliable
85                   copy of the data flowing between a specific
86                   host initiator and a target.
87
88            CVT  - Control Virtual Target. It is a logical target
89                   port that resides on the switch and is used
90                   for the purpose of communicating control traffic
91                   from an appliance.
92
93            DVT  - Data Virtual Target.  It is a logical target port
94                   that resides on the switch and is used to intercept
95                   traffic meant for a real target."
96
97       REVISION     "200603160000Z"
98       DESCRIPTION  "Added 'cstDVTLunSizeHandling' and 'cstDVTIOTimeout'
99                     columnar objects to 'cstDVTConfigTable'."
100       REVISION     "200510270000Z"
101       DESCRIPTION  "Added the 'cstDVTConfigTable'.  Added 'cstCVTName'
102                     columnar object to 'cstServiceConfigTable'."
103       REVISION     "200502020000Z"
104       DESCRIPTION  "Initial version of this MIB."
105       ::= { ciscoMgmt 463 }
106
107
108ciscoSanTapMIBObjects     OBJECT IDENTIFIER ::= { ciscoSanTapMIB 1 }
109ciscoSanTapMIBConformance OBJECT IDENTIFIER
110                           ::= { ciscoSanTapMIB 2 }
111ciscoSanTapNotifications   OBJECT IDENTIFIER
112                           ::= { ciscoSanTapMIB 3 }
113
114
115--
116-- San Tap Module Table
117--
118
119cstModuleTable  OBJECT-TYPE
120       SYNTAX     SEQUENCE OF CstModuleEntry
121       MAX-ACCESS not-accessible
122       STATUS     current
123       DESCRIPTION
124           "A table listing the modules on which SanTap service can
125            be configured and CVT can be created by the user.
126
127            The entry in the cstServiceConfigTable can only be
128            created on a module present in the cstModuleTable."
129       ::= { ciscoSanTapMIBObjects 1 }
130
131cstModuleEntry  OBJECT-TYPE
132       SYNTAX     CstModuleEntry
133       MAX-ACCESS not-accessible
134       STATUS     current
135       DESCRIPTION
136           "An entry in this table.
137            The cstModuleId denotes the entPhysicalIndex of the
138            module on which SanTap service can be configured."
139       INDEX { cstModuleId }
140       ::= { cstModuleTable 1 }
141
142CstModuleEntry ::= SEQUENCE {
143       cstModuleId    PhysicalIndex
144}
145
146cstModuleId OBJECT-TYPE
147       SYNTAX     PhysicalIndex
148       MAX-ACCESS read-only
149       STATUS     current
150       DESCRIPTION
151           "This object specifies the physical index of the entity
152            with entPhysicalClass as 'module' on which SanTap service
153            can be configured by the user.
154            This is same as the entPhysicalIndex of the module."
155       ::= { cstModuleEntry 1 }
156
157--
158-- Configuring the SAN TAP Service
159--
160
161cstServiceConfigTable OBJECT-TYPE
162       SYNTAX         SEQUENCE OF CstServiceConfigEntry
163       MAX-ACCESS     not-accessible
164       STATUS         current
165       DESCRIPTION
166           "This table provides information about the list of
167            all CVTs created and configured in the system.
168
169            A new entry creation in this table, creates a CVT on the
170            module specified by the corresponding instance index
171            'cstModuleId' and configures the CVT on the VSAN
172            specified by the corresponding instance index 'vsanIndex'.
173
174            A row creation in this table, with an existing
175            module physical index  but different 'vsanIndex'
176            configures the already created CVT on the module into
177            VSAN specified by the 'vsanIndex'.
178
179            Deleting an entry from this table, unconfigures the
180            CVT created on the module specified by the corresponding
181            instance index 'cstModuleId' on the VSAN represented
182            by the corresponding instance index 'vsanIndex'. If there
183            are no more entries in this table for this module then
184            the CVT will be deleted from the corresponding module.
185
186            For example, If there is no entry in this table for a
187            module pysical Index '22', then a new entry creation
188            with cstModuleId '22' vsanIndex 'n1' creates a
189            CVT on this module and configures the CVT on VSAN 'n1'.
190            And a new row is created in this table.
191
192            Any subsequent entry creation with cstModuleId '22'
193            vsanIndex 'n2' only configures the previously created
194            CVT on vsan 'n2' and a new row is created in this table.
195
196            Similarly for any delete request with cstModuleId '22'
197            vsanIndex 'n1'/'n2' unconfigures the CVT created on the
198            vsan 'n1'/'n2' and the corresponding row is deleted from
199            the table.
200
201            If there is only one entry with cstModuleId '22'
202            and vsan 'n' exists in the table, then any delete request
203            with cstModuleId '22' vsan 'n' unconfigures the CVT on
204            vsan 'n' and deletes the CVT. The corresponding row is
205            deleted from the table."
206       ::= { ciscoSanTapMIBObjects 2 }
207
208cstServiceConfigEntry OBJECT-TYPE
209       SYNTAX         CstServiceConfigEntry
210       MAX-ACCESS     not-accessible
211       STATUS         current
212       DESCRIPTION
213           "An entry containing information about a CVT configuration
214            for the SanTap service.
215
216            The 'cstModuleId' denotes the module on which the user
217            wants the SanTap service to be configured and the CVT to be
218            created.
219
220            The index 'vsanIndex' represents the VSAN on which the
221            CVT needs to be configured. It represents the VSAN on
222            which CVT and the appliance communicate to establish the
223            control path for processing the SanTap service requests."
224       INDEX   { cstModuleId , vsanIndex }
225       ::= { cstServiceConfigTable 1 }
226
227CstServiceConfigEntry ::= SEQUENCE {
228       cstCVTNodeWwn                FcNameIdOrZero,
229       cstCVTPortWwn                FcNameIdOrZero,
230       cstServiceConfigRowStatus    RowStatus,
231       cstCVTName                   SnmpAdminString
232}
233
234cstCVTNodeWwn OBJECT-TYPE
235       SYNTAX       FcNameIdOrZero
236       MAX-ACCESS   read-only
237       STATUS       current
238       DESCRIPTION
239           "This object represents the Node World-Wide Name of the
240            CVT created on the module represented by the corresponding
241            entity index 'cstModuleId'."
242       ::= { cstServiceConfigEntry 1 }
243
244cstCVTPortWwn OBJECT-TYPE
245       SYNTAX       FcNameIdOrZero
246       MAX-ACCESS   read-only
247       STATUS       current
248       DESCRIPTION
249           "This object represents the Port World-Wide Name of the
250            CVT created on the module represented by the corresponding
251            entity index 'cstModuleId'."
252       ::= { cstServiceConfigEntry 2 }
253
254cstServiceConfigRowStatus OBJECT-TYPE
255       SYNTAX      RowStatus
256       MAX-ACCESS  read-create
257       STATUS      current
258       DESCRIPTION
259           "The status of this conceptual row."
260       ::= { cstServiceConfigEntry 3 }
261
262cstCVTName OBJECT-TYPE
263       SYNTAX         SnmpAdminString (SIZE (0..255))
264       MAX-ACCESS     read-create
265       STATUS         current
266       DESCRIPTION
267           "The administratively assigned name for this CVT."
268       DEFVAL {""}
269       ::= { cstServiceConfigEntry 4 }
270
271
272--
273-- SANTAP DVT Configuration Table
274--
275
276cstDVTConfigTable OBJECT-TYPE
277       SYNTAX         SEQUENCE OF CstDVTConfigEntry
278       MAX-ACCESS     not-accessible
279       STATUS         current
280       DESCRIPTION
281           "This table provides information about the list of
282            all DVTs created and configured in the system.
283
284            A new entry creation in this table, creates a DVT
285            corresponding to the target PWWN 'cstDVTPortWwn' on
286            the VSAN 'vsanIndex'.
287
288            Deleting an entry from this table, unconfigures the
289            DVT corresponding to 'cstDVTPortWwn' from the VSAN
290            'vsanIndex'.
291
292            The index 'vsanIndex' represents the VSAN on which the
293            DVT needs to be created.  The index 'vsanIndex' should
294            be a known VSAN on the switch.
295
296            The index 'cstDVTPortWWN' represents the Port WWN of the
297            real target for which a corresponding DVT is to be created.
298            The DVT will have the same Port WWN as the target. The
299            index 'cstDVTPortWWN' should correspond to a known target
300            on the switch.
301
302            By default no entries exist in the table."
303       ::= { ciscoSanTapMIBObjects 3 }
304
305cstDVTConfigEntry OBJECT-TYPE
306       SYNTAX         CstDVTConfigEntry
307       MAX-ACCESS     not-accessible
308       STATUS         current
309       DESCRIPTION
310           "An entry containing information about a DVT configuration
311            for the SanTap service."
312       INDEX   { vsanIndex, cstDVTPortWwn }
313       ::= { cstDVTConfigTable 1 }
314
315CstDVTConfigEntry ::= SEQUENCE {
316       cstDVTPortWwn                FcNameId,
317       cstDVTTargetVsan             VsanIndex,
318       cstDVTPort                   InterfaceIndex,
319       cstDVTName                   SnmpAdminString,
320       cstDVTRowStatus              RowStatus,
321       cstDVTLunSizeHandling        TruthValue,
322       cstDVTIOTimeout              Unsigned32
323}
324
325cstDVTPortWwn OBJECT-TYPE
326       SYNTAX       FcNameId
327       MAX-ACCESS   not-accessible
328       STATUS       current
329       DESCRIPTION
330           "This object represents the port world-wide name of the
331            created DVT.  It will be the same as the port world-wide
332            name of the real target for which data is to be replicated."
333       ::= { cstDVTConfigEntry 1 }
334
335cstDVTTargetVsan OBJECT-TYPE
336       SYNTAX       VsanIndex
337       MAX-ACCESS   read-create
338       STATUS       current
339       DESCRIPTION
340           "This object represents the VSAN of the real target for
341            which this DVT is being created.
342
343            This object MUST be set to a valid value concurrently
344            with setting the corresponding instance of cstDVTRowStatus
345            to 'active'. This object cannot be modified while the value
346            of the corresponding instance of cstDVTRowStatus is
347            'active'."
348       ::= { cstDVTConfigEntry 2 }
349
350cstDVTPort OBJECT-TYPE
351       SYNTAX       InterfaceIndex
352       MAX-ACCESS   read-create
353       STATUS       current
354       DESCRIPTION
355           "This object represents the port on the module where the
356            DVT will be created.
357
358            This object MUST be set to a valid value concurrently
359            with setting the corresponding instance of cstDVTRowStatus
360            to 'active'. This object cannot be modified while the value
361            of the corresponding instance of cstDVTRowStatus is
362            'active'."
363       ::= { cstDVTConfigEntry 3 }
364
365cstDVTName OBJECT-TYPE
366       SYNTAX       SnmpAdminString (SIZE (0..255))
367       MAX-ACCESS   read-create
368       STATUS       current
369       DESCRIPTION
370           "The administratively assigned name for this DVT."
371       DEFVAL {""}
372       ::= { cstDVTConfigEntry 4 }
373
374cstDVTRowStatus OBJECT-TYPE
375       SYNTAX      RowStatus
376       MAX-ACCESS  read-create
377       STATUS      current
378       DESCRIPTION
379           "The status of this conceptual row."
380       ::= { cstDVTConfigEntry 5 }
381
382cstDVTLunSizeHandling OBJECT-TYPE
383        SYNTAX         TruthValue
384        MAX-ACCESS     read-create
385        STATUS         current
386        DESCRIPTION
387                "This object indicates if the DVT should use the
388                 real target LUN size for the virtual LUN or the
389                 max LUN size supported which is 2TB.
390
391                 A value of false for this object indicates the
392                 real target LUN size should be used. This object
393                 should be set during the DVT creation time and
394                 cannot be modified later."
395        DEFVAL { true }
396        ::= { cstDVTConfigEntry 6 }
397
398cstDVTIOTimeout OBJECT-TYPE
399        SYNTAX         Unsigned32 (10..200)
400        UNITS          "seconds"
401        MAX-ACCESS     read-create
402        STATUS         current
403        DESCRIPTION
404                "This object represents the IO timeout value
405                 associated with the DVT. This object should
406                 be set during the DVT creation time and cannot
407                 be modified later."
408        DEFVAL { 10 }
409        ::= { cstDVTConfigEntry 7 }
410
411
412
413--
414-- Compliance Section
415--
416
417ciscoSanTapMIBCompliances
418       OBJECT IDENTIFIER ::= { ciscoSanTapMIBConformance 1 }
419
420
421ciscoSanTapMIBCompliance MODULE-COMPLIANCE
422     STATUS deprecated
423     DESCRIPTION
424           "Compliance statement for entites which implement
425            the CISCO SANTAP MIB."
426     MODULE       -- this module
427     MANDATORY-GROUPS {
428         ciscoSanTapServiceConfigGroup
429     }
430     OBJECT  cstServiceConfigRowStatus
431        SYNTAX     INTEGER {
432                     active(1),
433                     createAndGo(4),
434                     destroy(6)}
435        DESCRIPTION
436                   "Only values 'createAndGo', 'destroy' and
437                   'active' need to be supported."
438     ::= { ciscoSanTapMIBCompliances 1 }
439
440
441ciscoSanTapMIBComplianceRev1 MODULE-COMPLIANCE
442     STATUS deprecated
443     DESCRIPTION
444           "Compliance statement for entites which implement
445            the CISCO SANTAP MIB."
446     MODULE       -- this module
447     MANDATORY-GROUPS {
448         ciscoSanTapServiceConfigGroupRev1,
449         ciscoSanTapDVTConfigGroup
450     }
451     OBJECT  cstServiceConfigRowStatus
452        SYNTAX     INTEGER {
453                     active(1),
454                     createAndGo(4),
455                     destroy(6)}
456        DESCRIPTION
457                   "Only values 'createAndGo', 'destroy' and
458                   'active' need to be supported."
459     OBJECT  cstDVTRowStatus
460        SYNTAX     INTEGER {
461                     active(1),
462                     createAndGo(4),
463                     destroy(6)}
464        DESCRIPTION
465                   "Only values 'createAndGo', 'destroy' and
466                   'active' need to be supported."
467     ::= { ciscoSanTapMIBCompliances 2 }
468
469
470ciscoSanTapMIBComplianceRev2 MODULE-COMPLIANCE
471     STATUS current
472     DESCRIPTION
473           "Compliance statement for entites which implement
474            the CISCO SANTAP MIB."
475     MODULE       -- this module
476     MANDATORY-GROUPS {
477         ciscoSanTapServiceConfigGroupRev1,
478         ciscoSanTapDVTConfigGroup1
479     }
480     OBJECT  cstServiceConfigRowStatus
481        SYNTAX     INTEGER {
482                     active(1),
483                     createAndGo(4),
484                     destroy(6)}
485        DESCRIPTION
486                   "Only values 'createAndGo', 'destroy' and
487                   'active' need to be supported."
488     OBJECT  cstDVTRowStatus
489        SYNTAX     INTEGER {
490                     active(1),
491                     createAndGo(4),
492                     destroy(6)}
493        DESCRIPTION
494                   "Only values 'createAndGo', 'destroy' and
495                   'active' need to be supported."
496     ::= { ciscoSanTapMIBCompliances 3 }
497
498--
499-- Units of Conformance
500--
501
502ciscoSanTapMIBGroups
503       OBJECT IDENTIFIER ::= { ciscoSanTapMIBConformance 2 }
504
505ciscoSanTapServiceConfigGroup OBJECT-GROUP
506       OBJECTS {
507           cstModuleId,
508           cstCVTNodeWwn,
509           cstCVTPortWwn,
510           cstServiceConfigRowStatus
511       }
512       STATUS       deprecated
513       DESCRIPTION
514           "A Collection of objects to configure the CVT for SanTap
515            service."
516       ::= { ciscoSanTapMIBGroups 1 }
517
518ciscoSanTapServiceConfigGroupRev1 OBJECT-GROUP
519       OBJECTS {
520           cstModuleId,
521           cstCVTNodeWwn,
522           cstCVTPortWwn,
523           cstServiceConfigRowStatus,
524           cstCVTName
525       }
526       STATUS       current
527       DESCRIPTION
528           "A Collection of objects to configure the CVT for SanTap
529            service."
530       ::= { ciscoSanTapMIBGroups 2 }
531
532
533ciscoSanTapDVTConfigGroup OBJECT-GROUP
534       OBJECTS {
535           cstDVTTargetVsan,
536           cstDVTPort,
537           cstDVTName,
538           cstDVTRowStatus
539       }
540       STATUS       deprecated
541       DESCRIPTION
542           "A Collection of objects to configure the DVT for SanTap
543            service."
544       ::= { ciscoSanTapMIBGroups 3 }
545
546ciscoSanTapDVTConfigGroup1 OBJECT-GROUP
547       OBJECTS {
548           cstDVTTargetVsan,
549           cstDVTPort,
550           cstDVTName,
551           cstDVTRowStatus,
552           cstDVTLunSizeHandling,
553           cstDVTIOTimeout
554       }
555       STATUS       current
556       DESCRIPTION
557           "A Collection of objects to configure the DVT for SanTap
558            service."
559       ::= { ciscoSanTapMIBGroups 4 }
560
561END
562
563