1 a.dunfey 1.1 // ===================================================================
2 // Title: Network_VLAN
3 // $State: Exp $
4 // $Date: 2004/11/29 18:31:42 $
5 // $RCSfile: Network_VLAN.mof,v $
6 // $Revision: 1.8.2.3 $
7 // ===================================================================
8 //#pragma inLine ("Includes/copyright.inc")
9 // Copyright 1998-2005 Distributed Management Task Force, Inc. (DMTF).
10 // All rights reserved.
11 // DMTF is a not-for-profit association of industry members dedicated
12 // to promoting enterprise and systems management and interoperability.
13 // DMTF specifications and documents may be reproduced for uses
14 // consistent with this purpose by members and non-members,
15 // provided that correct attribution is given.
16 // As DMTF specifications may be revised from time to time,
17 // the particular version and release date should always be noted.
18 //
19 // Implementation of certain elements of this standard or proposed
20 // standard may be subject to third party patent rights, including
21 // provisional patent rights (herein "patent rights"). DMTF makes
22 a.dunfey 1.1 // no representations to users of the standard as to the existence
23 // of such rights, and is not responsible to recognize, disclose, or
24 // identify any or all such third party patent right, owners or
25 // claimants, nor for any incomplete or inaccurate identification or
26 // disclosure of such rights, owners or claimants. DMTF shall have no
27 // liability to any party, in any manner or circumstance, under any
28 // legal theory whatsoever, for failure to recognize, disclose, or
29 // identify any such third party patent rights, or for such party's
30 // reliance on the standard or incorporation thereof in its product,
31 // protocols or testing procedures. DMTF shall have no liability to
32 // any party implementing such standard, whether such implementation
33 // is foreseeable or not, nor to any patent owner or claimant, and shall
34 // have no liability or responsibility for costs or losses incurred if
35 // a standard is withdrawn or modified after publication, and shall be
36 // indemnified and held harmless by any party implementing the
37 // standard from any and all claims of infringement by a patent owner
38 // for such implementations.
39 //
40 // For information about patents held by third-parties which have
41 // notified the DMTF that, in their opinion, such patent may relate to
42 // or impact implementations of DMTF standards, visit
43 a.dunfey 1.1 // http://www.dmtf.org/about/policies/disclosures.php.
44 //#pragma inLine
45 // ===================================================================
46 // Description: The Network Model extends the management concepts to
47 // represent protocol interfaces and network/protocol
48 // services. This file defines VLAN (virtual LAN)
49 // concepts.
50 //
51 // The object classes below are listed in an order that
52 // avoids forward references. Required objects, defined
53 // by other working groups, are omitted.
54 // ==================================================================
55 // Change Log for v2.8
56 // CR1024 - Deprecate all classes and properties in VLAN model. The
57 // purpose of doing this is to introduce a new model in
58 // the upcoming the CIM releases.
59 // CR1226 - Change all references to CIM_802dot1QVLANService to
60 // CIM_Specific802dot1QVLANService
61 //
62 // /Change Log for v2.7
63 // CR867 - Remove Min(1), Max(1) cardinality restrictions on Related
64 a.dunfey 1.1 // TransparentBridgingService
65 // CR920 - Add missing parenthesis to the Description for CIM_VLAN
66 // ===================================================================
67
68 #pragma Locale ("en_US")
69
70
71 // ==================================================================
72 // VLAN
73 // ==================================================================
74 [Deprecated { "No Value" }, Version ( "2.8.0" ), Description (
75 "An instance of VLAN represents a VLAN within a switch. In a "
76 "particular switch, there should be an instance of VLAN for "
77 "every VLAN available. For example, in a switch with port-based "
78 "VLANs, if there are 16 VLANs to which ports can be assigned "
79 "(VLAN 1 through VLAN 16), there should be an instance of "
80 "CIM_VLAN for each of VLAN 1 through VLAN 16. \n"
81 "\n"
82 "VLAN inherits Name from ServiceAccessPoint. Use this for the "
83 "textual name of the VLAN, if there is one. Otherwise, "
84 "synthesize a textual name, e.g., VLAN 0003. (Consider leading "
85 a.dunfey 1.1 "zero fill, as shown, to ensure that if the textual VLAN names "
86 "are extracted and presented by a management applictions, the "
87 "VLAN names will sort in the expected order.) The numeric part "
88 "of the name should be at least four digits wide since 802.1Q "
89 "specifies 4095 VLANs. \n"
90 "\n"
91 "It is intended that VLAN be subclassed only if necessary to "
92 "add attributes. The type of the VLAN can be inferred from the "
93 "VLANService(s) with which the VLAN is associated in the "
94 "VLANFor association. \n"
95 "\n"
96 "An instance of VLAN may be associated with more than one "
97 "VLANService. For example, there are switches that support both "
98 "802.1Q VLANs and the vendor's proprietary VLANs. In some such "
99 "switches, if a broadcast packet is received on a port in an "
100 "802.1Q VLAN (VLAN 5, for example), it may be be transmitted "
101 "from a port in a 'proprietary' VLAN 5. In effect, there is "
102 "only one VLAN 5, and the type of port only determines the "
103 "packet format for tagged packets. In the case just described, "
104 "only one instance of CIM_VLAN should be instantiated for VLAN "
105 "5, and it should be associated both with the 802.1Q "
106 a.dunfey 1.1 "VLANService and the proprietary VLANService. \n"
107 "\n"
108 "In typical VLAN-aware switches, packets can be assigned to a "
109 "VLAN based on the port on which they are received (port-based "
110 "VLANS), based on the source MAC address (MAC-based VLANs), or "
111 "based on the value of a set of bits in the packet "
112 "(protocol-based VLANs). If it is desirable to represent the "
113 "VLAN assignment predicate for some MAC-based VLAN switch, it "
114 "will be necessary to subclass VLAN. The list of MAC addresses "
115 "associated with a VLAN might be an attribute of the subclass. "
116 "If it is desirable to represent the VLAN assignment predicate "
117 "in a protocol-based VLAN switch, it will also be necessary to "
118 "subclass VLAN, InboundVLAN, or both. If the predicate applies "
119 "to all ports in the switch, then only VLAN need be "
120 "used/instantiated. If the predicate may vary based on the "
121 "port, then InboundVLAN must be subclassed, and CIM_VLAN might "
122 "have to be subclassed as well.")]
123 class CIM_VLAN : CIM_ServiceAccessPoint {
124
125 [Deprecated { "No Value" }, Description (
126 "VLAN identifying number.")]
127 a.dunfey 1.1 uint16 VLANNumber;
128 };
129
130
131 // ==================================================================
132 // InboundVLAN
133 // ==================================================================
134 [Association, Deprecated { "No Value" }, Version ( "2.8.0" ),
135 Description (
136 "This class is deprecated in lieu or not being necessary to "
137 "indicate whether the VLAN is inbound/outbound This association "
138 "makes explicit the operational dependencies of a SwitchPort "
139 "when operating in a VLAN. If there is an association between a "
140 "particular SwitchPort and a particular VLAN, then there is the "
141 "possibility that a packet received by the port will be "
142 "assigned to the VLAN (or if the packet already has a VLAN tag, "
143 "that the packet will not be dropped). If there is no such "
144 "association, then there is NO possibility that a packet "
145 "received by the port will progress through the switch having "
146 "been assigned to the referenced VLAN.")]
147 class CIM_InboundVLAN : CIM_SAPSAPDependency {
148 a.dunfey 1.1
149 [Deprecated { "No Value" }, Override ( "Antecedent" ),
150 Description (
151 "The VLAN to which the SwitchPort is assigned.")]
152 CIM_VLAN REF Antecedent;
153
154 [Deprecated { "No Value" }, Override ( "Dependent" ),
155 Description (
156 "The SwitchPort on the VLAN.")]
157 CIM_SwitchPort REF Dependent;
158
159 [Deprecated { "No Value" }, Description (
160 "If TRUE, packets already tagged with this VLAN number will "
161 "be accepted when arriving at this port. For example, if "
162 "there is an InboundVLAN association between port 12 and "
163 "VLAN 7 for which Tagged is true, then when a packet tagged "
164 "with VLAN 7 arrives at port 12, the packet will be accepted "
165 "into the switch for further processing. If there is no such "
166 "association, then the packet will be dropped. \n"
167 "\n"
168 "If FALSE, it means that any untagged packets arriving at "
169 a.dunfey 1.1 "this port MIGHT be classified into the associated VLAN. If, "
170 "for a particular SwitchPort, there is only one instance of "
171 "the association for which Tagged is FALSE, then all "
172 "incoming untagged packets will be classified into that "
173 "VLAN. This is the typical configuration of a non-trunk port "
174 "in a switch implementing port-based VLANs. If there is more "
175 "than one such association instance, then the packet MIGHT "
176 "be classified into any one of them, based on some criterion "
177 "other than the identity of the switch port. For example, in "
178 "a MAC-based VLAN switch, the decision would be based on the "
179 "source MAC address. In a protocol-based VLAN switch, the "
180 "decision would be based on the values of some set of bits "
181 "in the packet. \n"
182 "\n"
183 "Note that the MAC address is formatted as twelve "
184 "hexadecimal digits (e.g., \"010203040506\"), with each pair "
185 "representing one of the six octets of the MAC address in "
186 "\"canonical\" bit order according to RFC 2469.")]
187 boolean Tagged;
188
189 [Deprecated { "No Value" }, Description (
190 a.dunfey 1.1 "Default should be TRUE if untagged packets received by the "
191 "SwitchPort are assigned to the VLAN. For 802.1Q-compliant "
192 "ports, the Default property should be TRUE on the "
193 "association instance connecting a SwitchPort to the VLAN "
194 "corresponding to the port's PVID. Default MUST never be "
195 "TRUE if Tagged is true -- it applies only to untagged "
196 "packets.")]
197 boolean Default;
198 };
199
200
201 // ==================================================================
202 // OutboundVLAN
203 // ==================================================================
204 [Association, Deprecated { "No Value" }, Version ( "2.8.0" ),
205 Description (
206 "This class is deprecated in lieu or not being necessary to "
207 "indicate whether the VLAN is inbound/outbound This association "
208 "makes explicit the operational dependencies of a SwitchPort "
209 "when operating in a VLAN. If there is no instance of "
210 "OutboundVLAN between a given SwitchPort and VLAN, then any "
211 a.dunfey 1.1 "packet that has been assigned to the VLAN and whose "
212 "destination address is associated with the port will be "
213 "dropped by the switch without being transmitted. Otherwise, "
214 "the packet will be transmitted.")]
215 class CIM_OutboundVLAN : CIM_SAPSAPDependency {
216
217 [Deprecated { "No Value" }, Override ( "Antecedent" ),
218 Description (
219 "The VLAN to which the SwitchPort is assigned.")]
220 CIM_VLAN REF Antecedent;
221
222 [Deprecated { "No Value" }, Override ( "Dependent" ),
223 Description (
224 "The SwitchPort on the VLAN.")]
225 CIM_SwitchPort REF Dependent;
226
227 [Deprecated { "No Value" }, Description (
228 "If Tagged is TRUE, then the packet will be transmitted in "
229 "encapsulated form, tagged with the associated VLAN tag. If "
230 "Tagged is FALSE, the packet will be trasmitted without any "
231 "VLAN tag.")]
232 a.dunfey 1.1 boolean Tagged;
233 };
234
235
236 // ==================================================================
237 // VLANService
238 // ==================================================================
239 [Deprecated { "No Value" }, Abstract, Version ( "2.8.0" ),
240 Description (
241 "This class is deprecated following discussion as to the need "
242 "of a modeling a VLAN as a service. It was determined that a "
243 "VLAN service was not needed. VLANService represents the VLAN "
244 "aspects of the function performed by a switch. Some VLAN-aware "
245 "devices participate in protocols where VLAN information is "
246 "propagated among switches, e.g., GVRP in 802.1Q switches and "
247 "VTP in Cisco Catalyst switches. VLANService also represents "
248 "the function performed by the switch as a participant in such "
249 "a protocol. VLANService must be subclassed so that the type of "
250 "instance can be distinguished by its class.")]
251 class CIM_VLANService : CIM_Service {
252 };
253 a.dunfey 1.1
254
255 // ==================================================================
256 // Specific802dot1QVLANService
257 // ==================================================================
258 [Deprecated { "No Value" }, Version ( "2.8.0" ), Description (
259 "This class is deprecated following discussion as to the need "
260 "of a modeling a 802.1Q as a service. It was determined that a "
261 "802.1Q service was not needed. If a switch supports 802.1Q, an "
262 "instance of this class should be instantiated in the switch. "
263 "If the switch supports GVRP, this class represents the "
264 "function that the switch performs with respect to GVRP.")]
265 class CIM_Specific802dot1QVLANService : CIM_VLANService {
266 };
267
268
269 // ==================================================================
270 // VLANFor
271 // ==================================================================
272 [Association, Deprecated { "No Value" }, Version ( "2.8.0" ),
273 Description (
274 a.dunfey 1.1 "The VLAN for the VLAN Service.")]
275 class CIM_VLANFor : CIM_ServiceSAPDependency {
276
277 [Deprecated { "No Value" }, Override ( "Antecedent" ),
278 Description (
279 "The VLAN for the VLANService.")]
280 CIM_VLAN REF Antecedent;
281
282 [Deprecated { "No Value" }, Override ( "Dependent" ), Min ( 1 ),
283 Description (
284 "The VLANService which uses the VLAN for processing.")]
285 CIM_VLANService REF Dependent;
286 };
287
288
289 // ==================================================================
290 // SwitchServiceVLAN
291 // ==================================================================
292 [Association, Deprecated { "No Value" }, Aggregation,
293 Version ( "2.8.0" ), Description (
294 "This class is deprecated as a fall out of the previous "
295 a.dunfey 1.1 "deprecations within the existing model An association linking "
296 "SwitchService to a component VLANService.")]
297 class CIM_SwitchServiceVLAN : CIM_ServiceComponent {
298
299 [Deprecated { "No Value" }, Aggregate,
300 Override ( "GroupComponent" ), Min ( 1 ), Max ( 1 ),
301 Description (
302 "The SwitchService containing the VLANService.")]
303 CIM_SwitchService REF GroupComponent;
304
305 [Deprecated { "No Value" }, Override ( "PartComponent" ),
306 Description (
307 "The VLANService that is a component of the SwitchService.")]
308 CIM_VLANService REF PartComponent;
309 };
310
311
312 // ==================================================================
313 // RelatedTransparentBridgingService
314 // ==================================================================
315 [Association, Deprecated { "No Value" }, Version ( "2.8.0" ),
316 a.dunfey 1.1 Description (
317 "This class is deprecated as a fall out of the previous "
318 "deprecations within the existing model The association between "
319 "a VLAN and the forwarding database (some use the term "
320 "filtering database) used to determine which port a packet "
321 "should be transmitted on, given that it is assigned to the "
322 "VLAN and that it has a particular destination MAC address. The "
323 "TransparentBridgingService represents a forwarding database.")]
324 class CIM_RelatedTransparentBridgingService : CIM_ServiceSAPDependency {
325
326 [Deprecated { "No Value" }, Override ( "Antecedent" ),
327 Description (
328 "The VLAN.")]
329 CIM_VLAN REF Antecedent;
330
331 [Deprecated { "No Value" }, Override ( "Dependent" ),
332 Description (
333 "The BridgingService that determines the port, given the the "
334 "VLAN and addressing information.")]
335 CIM_TransparentBridgingService REF Dependent;
336 };
337 a.dunfey 1.1
338 // ===================================================================
339 // end of file
340 // ===================================================================
|