(file) Return to Network27_VLAN.mof CVS log (file) (dir) Up to [Pegasus] / pegasus / Schemas / CIM27

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

No CVS admin address has been configured
Powered by
ViewCVS 0.9.2