1-- *****************************************************************
2-- ciscoVSIController MIB
3--
4-- Virtual Switch Interface(VSI) controller MIB
5-- April 1999 Subra.Hegde
6--
7-- Copyright (c) 1999 by cisco Systems, Inc.
8-- All rights reserved.
9-- *****************************************************************
10
11CISCO-VSI-CONTROLLER-MIB DEFINITIONS ::= BEGIN
12
13IMPORTS
14    MODULE-IDENTITY,
15    OBJECT-TYPE,
16    Integer32     	 FROM SNMPv2-SMI
17    RowStatus,
18    TEXTUAL-CONVENTION,
19    DisplayString     	 FROM SNMPv2-TC
20    MODULE-COMPLIANCE,
21    OBJECT-GROUP 	 FROM SNMPv2-CONF
22    ciscoMgmt       	 FROM CISCO-SMI;
23
24
25ciscoVSIControllerMIB MODULE-IDENTITY
26LAST-UPDATED   "9906080000Z"
27ORGANIZATION   "Cisco Systems, Inc."
28CONTACT-INFO
29               "Cisco Systems
30                Customer Service
31
32        Postal: 170 W Tasman Drive
33                San Jose, CA  95134
34                USA
35
36          Tel: +1 800 553-NETS
37
38     E-mail: cs-wanatm@cisco.com"
39
40DESCRIPTION
41    "This MIB module is used for configuring ATM Capable Switch
42     to be aware of VSI Controller information.
43
44     Terminolgies used:
45
46     VSI       - Virtual Switch Interface, a hardware-independent switch
47                 control protocol. This allows a Switch(node) to be
48		 controlled by a multiple controllers such as PNNI,LSC.
49		 These control planes can be internal or external to the
50	         switch.The VSI interface defines the messages and associated
51	         functions which allow communication between the controller
52		 and the switch.This interface is expected to support all
53		 types of connections (voice,data,frame relay,ATM) for PVCs,
54	         SPVCs and SVCs.
55
56     VSI Master - software component which requests connections and receives
57                  switch generic information. This controls one or more VSI
58                  Slaves. This may run on the switch or a dedicated controller
59		  platform. This is the master module.It performs the interface
60	 	  to the higher layer networking software and handles all VSI
61		  related functions.
62
63     VSI Slave - software component which converts generic connection
64                 requests into hardware specific requests and hardware
65		 specific information into generic information.
66		 This runs on the switch.a A centralized slave has a single
67		 point of control for making connections and controlling
68		 interfaces, while a distributed slave allows for multiple
69		 slaves to coexist on the same switch.
70
71     Controller - Software ( and possibly hardware) which manages topology
72                  and network resources and performs VSI Master fucntion.
73		  This performs source routing for ent-to-end SVCs, including
74		  general call acceptance GCAC,setup calls with other
75		  controllers.
76                  PNNI and MPLS are examples for the Controller.
77
78     Controller Shelf - A controller shelf is a switch containing atleast
79		   one VSI Controller which is controlling a different
80		   switch.It will also, typically, contain 'local' controllers
81		   for itself."
82   ::= {ciscoMgmt 141 }
83
84CvcControllerShelfLocation ::= TEXTUAL-CONVENTION
85    STATUS  current
86    DESCRIPTION
87        "The location of the Controller Shelf.
88
89	 internal(1)  - controller resides on the same shelf
90	                as the switch.
91	 external(2)  - controller resides on the external
92		        platform. The controller shelf is
93		        connected to the switch by an ATM link."
94        SYNTAX   INTEGER{
95           internal(1),
96           external(2)
97           }
98
99CvcControllerType ::= TEXTUAL-CONVENTION
100    STATUS  current
101    DESCRIPTION
102        "The type of the controller which is a VSI Master.
103	 The Possible values are :
104
105	 par(1) -  Portable Auto Route(PAR). This is a VSI Master controller
106	           implementing Cisco Proprietary protocol for network
107	           routing and topology in a Network containing only
108		   Cisco Switches.
109
110	 pnni(2) - Private Network-to-Network Interface (PNNI) controller.
111		   The PNNI protocol is used between private ATM Switches
112		   and between groups of ATM switches. This protocol is
113		   defined for distributing topology information between
114		   switches and clusters of switches.
115
116	 lsc(3)  - Label Switch Controller(TSC).The LSC Implements MPLS
117	           (Multi Protocol Label Switching) protocol. The LSC is
118		   a router which is capable of controlling the operation
119		   of a separate ATM switch so that the two of them
120                   together function as a single ATM-LSR(ATM Label Switch
121                   Router).
122		   The LSC controls the operation of the ATM Switch
123		   using a 'Switch Control Protocol', which allows the
124		   LSC to setup and remove cross-connects on the ATM
125		   switch, to discover the configuration and capabilities
126		   of the controlled switch, and to gather statistics from
127		   the controlled switch."
128    SYNTAX   INTEGER {
129        par(1),
130        pnni(2),
131        lsc(3)
132    }
133
134cvcMIBObjects       OBJECT IDENTIFIER ::= {ciscoVSIControllerMIB 1}
135cvcConfController   OBJECT IDENTIFIER ::= { cvcMIBObjects 1}
136
137-- VSI Controller Configuration table
138
139cvcConfTable  OBJECT-TYPE
140    SYNTAX      SEQUENCE OF CvcConfEntry
141    MAX-ACCESS  not-accessible
142    STATUS      current
143    DESCRIPTION
144        "This table contains the entries for VSI Controllers.
145         This table is used for informing the VSI Slaves about
146         the existence of VSI Controllers and how the VSI slaves
147	 can reach the controller. The information in these entries
148	 are advertised to all the VSI Slaves using a system
149	 dependent implementation when an entry is created/activated."
150   ::= { cvcConfController 1 }
151
152cvcConfEntry  OBJECT-TYPE
153    SYNTAX      CvcConfEntry
154    MAX-ACCESS  not-accessible
155    STATUS      current
156    DESCRIPTION
157        "An entry for a VSI Controller.
158         The entries in this table are created by setting the
159         cvcConfRowStatus object to 'createAndGo(4)'.
160	 The entries in this table are deleted by setting the
161	 cvcConfRowStatus object to 'destroy(6)'. The entries
162	 are can be created/modified/deleted through the Command
163	 Line Interface(CLI) also."
164    INDEX   { cvcConfControllerID }
165    ::= { cvcConfTable 1 }
166
167CvcConfEntry ::=
168    SEQUENCE {
169	cvcConfControllerID           		Integer32,
170	cvcConfControllerType	  	        CvcControllerType,
171	cvcConfControllerShelfLocation	        CvcControllerShelfLocation,
172        cvcConfControllerLocation	        Integer32,
173	cvcConfControllerName			DisplayString,
174        cvcConfVpi	       			Integer32,
175        cvcConfVci	       			Integer32,
176        cvcConfRowStatus    	  	        RowStatus
177    }
178
179cvcConfControllerID OBJECT-TYPE
180    SYNTAX      Integer32 (1..2147483647)
181    MAX-ACCESS  not-accessible
182    STATUS      current
183    DESCRIPTION
184        "This is the unique value for VSI Controller(VSI Master).
185         The VSI Slave uses this value in the message to identify
186         the VSI Master controller."
187    ::= { cvcConfEntry 1}
188
189cvcConfControllerType OBJECT-TYPE
190    SYNTAX      CvcControllerType
191    MAX-ACCESS  read-create
192    STATUS      current
193    DESCRIPTION
194        "This object identifies the controller type.
195	 This object may not be modified if the associated
196	 cvcConfRowStatus is equal to 'active(1)'."
197    ::= { cvcConfEntry 2}
198
199cvcConfControllerShelfLocation OBJECT-TYPE
200    SYNTAX      CvcControllerShelfLocation
201    MAX-ACCESS  read-create
202    STATUS      current
203    DESCRIPTION
204        "This identifies the location of the controller shelf.
205         This Object can be set only during row creation."
206    ::= { cvcConfEntry 3}
207
208cvcConfControllerLocation OBJECT-TYPE
209    SYNTAX      Integer32 (1..2147483647)
210    MAX-ACCESS  read-create
211    STATUS      current
212    DESCRIPTION
213        "This identifies the location of the controller.
214         This object might contain the logical slot number
215         of the Module where the controller is running
216         on the same shelf as the switch.
217	 This object might contain the value of the interface
218         on the module where the controller is running on an
219         external shelf connected to the switch.
220	 This object may not be modified if the associated
221	 cvcConfRowStatus is equal to 'active(1)'."
222    ::= { cvcConfEntry 4}
223
224cvcConfControllerName OBJECT-TYPE
225    SYNTAX  DisplayString
226    MAX-ACCESS  read-create
227    STATUS  current
228    DESCRIPTION
229       "This is the  name choosen by the user for the VSI Controller.
230        This object contains Octet string of length zero, if the user
231        does not set the value for this object.
232	This object may not be modified if the associated
233	cvcConfRowStatus is equal to 'active(1)'."
234    ::= { cvcConfEntry 5 }
235
236cvcConfVpi OBJECT-TYPE
237    SYNTAX  Integer32 (0..4095)
238    MAX-ACCESS  read-create
239    STATUS  current
240    DESCRIPTION
241       "This is the Virtual Path Identifier(VPI) used for connecting to
242        the controller which is external to the switch. This object has
243        significance only if cvcConfControllerShelfLocation is 'external(2)'.
244	This object may not be modified if the associated
245	cvcConfRowStatus is equal to 'active(1)'."
246    ::= { cvcConfEntry 6 }
247
248cvcConfVci OBJECT-TYPE
249    SYNTAX  Integer32 (32..65535)
250    MAX-ACCESS  read-create
251    STATUS  current
252    DESCRIPTION
253       "This is the start value of Virtual Channel Identifier(VCI) used
254        for connecting to the controller which is external to the switch.
255        This object has significance only if cvcConfControllerShelfLocation
256        is 'external(2)'.
257	This object may not be modified if the associated
258	cvcConfRowStatus is equal to 'active(1)'."
259    ::= { cvcConfEntry 7 }
260
261cvcConfRowStatus OBJECT-TYPE
262    SYNTAX RowStatus
263    MAX-ACCESS  read-create
264    STATUS  current
265    DESCRIPTION
266       "This object is used for adding,deleting and modifying the
267        controller configuration. The row can be created by
268        setting this object to 'createAndGo(4)'.
269	The row can be deleted by setting this object to 'destroy(6)'.
270	The objects in the row can not be modified when this object
271        contains value 'active(1)'."
272    ::= { cvcConfEntry 8 }
273
274-- conformance information
275
276cvcMIBConformance OBJECT IDENTIFIER ::= {ciscoVSIControllerMIB 3}
277
278cvcMIBCompliances OBJECT IDENTIFIER
279     ::= {cvcMIBConformance 1}
280cvcMIBGroups  OBJECT IDENTIFIER
281     ::= {cvcMIBConformance 2}
282
283cvcMIBCompliance MODULE-COMPLIANCE
284    STATUS current
285    DESCRIPTION
286       "The Compliance statement for cisco VSI Controller group."
287    MODULE -- this module
288    MANDATORY-GROUPS { cvcConfGroup }
289
290    GROUP cvcConfGroupExternal
291    DESCRIPTION
292        "This group is required only for controllers running
293         on a shelf external to the switch.
294        "
295    ::= {cvcMIBCompliances 1}
296
297-- units of conformance
298cvcConfGroup OBJECT-GROUP
299        OBJECTS {
300	    cvcConfControllerType,
301            cvcConfControllerShelfLocation,
302            cvcConfControllerLocation,
303            cvcConfControllerName,
304            cvcConfRowStatus
305        }
306       STATUS current
307       DESCRIPTION
308          "The objects related to configuring VSI controllers
309           running on the same shelf as the switch.
310          "
311       ::= { cvcMIBGroups 1}
312
313cvcConfGroupExternal OBJECT-GROUP
314        OBJECTS {
315            cvcConfVpi,
316            cvcConfVci
317        }
318       STATUS current
319       DESCRIPTION
320          "The objects related to configuring VSI controllers
321           running on the shelf external to the switch. "
322       ::= { cvcMIBGroups 2}
323END
324