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

  1 a.dunfey 1.1 // ===================================================================
  2              // Title:  Network OSPF
  3              // $State: Preliminary $
  4              // $Date: 2005/01/05 00:54:00 $
  5              // $Source: /home/dmtf2/dotorg/var/cvs/repositories/dev/Schema/MOF/Network_OSPF.mof,v $
  6              // $Revision: 1.4 $
  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 classes to manage OSPF
 49              //              (Open Shortest Path First).
 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.7
 56              // CR788 - Add classes to support OSPF
 57              // CR806 - Update the OSPF model to take into account the
 58              //         RangeOfIPAddresses class (vs IPAddressRange)
 59              // CR837 - Add the property RFC1583Compatibility to OSPFService, and
 60              //         add the property StubMetricType to OSPFAreaConfiguration
 61              // CR863 - Update the format of the MappingStrings qualifier when
 62              //         referencing IETF RFCs
 63              // CR903 - Correction of EndpointInLink.Member reference.
 64 a.dunfey 1.1 // CR959 - Reposition OSPFLink using the ConnectivityCollection class
 65              // CR982 - Removal of Experimental for preliminary to final
 66              // CR994 - Update of the InstanceID property Description
 67              // Change Log for v2.8
 68              // CR1231 - Update references
 69              //        Property CIM_OSPFService.RunningMOSPF
 70              //        (CIM_OSPFServiceCapabillities.SupportMOSPF)
 71              // 
 72              // Change Log for V2.9
 73              // No changes
 74              // ===================================================================
 75              
 76              #pragma Locale ("en_US")
 77              
 78              
 79              // ====================================================================
 80              // OSPFArea
 81              // ====================================================================
 82                 [Version ( "2.7.0" ), Description (
 83                     "This class represents an OSPF area. The definition of an OSPF "
 84                     "area from RFC2328, is 'OSPF allows sets of networks to be "
 85 a.dunfey 1.1        "grouped together. Such a grouping is called an area. The "
 86                     "topology of an area is hidden from the rest of the Autonomous "
 87                     "System. This information hiding enables a significant "
 88                     "reduction in routing traffic. Also, routing within the area is "
 89                     "determined only by the area's own topology, lending the area "
 90                     "protection from bad routing data.' This class has a 'Type' "
 91                     "propery, which distinguishes between the different area types. "
 92                     "This approach was chosen, because it provides a simpler way to "
 93                     "indicate the type of an area, and additional subclassing is "
 94                     "not needed at this time.")]
 95              class CIM_OSPFArea : CIM_RoutingProtocolDomain {
 96              
 97                    [Description (
 98                        "The area ID of this OSPF area, see C.2 in RFC 2328."), 
 99                     MappingStrings { "MIB.IETF|OSPF-MIB.ospfAreaId" }]
100                 uint32 AreaID;
101              
102                    [Required, Description (
103                        "The type of the OSPF area."), 
104                     ValueMap { "2", "3", "4" }, 
105                     Values { "Plain", "Stub", "NSSA" }]
106 a.dunfey 1.1    uint16 AreaType;
107              
108                    [Description (
109                        "When the number of non-default AS-external-LSAs in a "
110                        "router's link-state database reaches this limit, the router "
111                        "enters OverflowState, see 2.1 in RFC 1765."), 
112                     MappingStrings { "MIB.IETF|OSPF-MIB.ospfExtLsdbLimit" }]
113                 uint32 ExtLsdbLimit;
114              };
115              
116              
117              // ====================================================================
118              // OSPFService
119              // ====================================================================
120                 [Version ( "2.7.0" ), Description (
121                     "This class is used to represent the basic operation of OSPF. "
122                     "It is derived from the RouteCalculationService, the superclass "
123                     "of all routing protocols.")]
124              class CIM_OSPFService : CIM_RouteCalculationService {
125              
126                    [Description (
127 a.dunfey 1.1           "This attribute indicates whether this router is running "
128                        "MOSPF (multicast enhancements to OSPF) or not, see B.1 in "
129                        "RFC 1584. This attribute only can be true, when the "
130                        "SupportMOSPF property in OSPFService Capabilities is also "
131                        "true. If SupportMOSPF is false, then this property has no "
132                        "meaning."), 
133                     MappingStrings { "MIB.IETF|OSPF-MIB.ospfMulticastExtensions" }]
134                 boolean RunningMOSPF;
135              
136                    [Description (
137                        "This attribute indicates whether this router will forward "
138                        "multicast datagrams between OSPF areas or not, see B.1 in "
139                        "RFC 1584."), 
140                     MappingStrings { "MIB.IETF|OSPF-MIB.ospfMulticastExtensions" }]
141                 boolean IsInterAreaMulticastForwarder;
142              
143                    [Description (
144                        "This attribute indicates whether this router will forward "
145                        "multicast datagrams between Autonomous Systems or not, see "
146                        "B.1 in RFC 1584."), 
147                     MappingStrings { "MIB.IETF|OSPF-MIB.ospfMulticastExtensions" }]
148 a.dunfey 1.1    boolean IsInterAsMulticastForwarder;
149              
150                    [Description (
151                        "The number of seconds that, after entering OverflowState, a "
152                        "router will attempt to leave OverflowState. When set to 0, "
153                        "the router will not leave OverflowState until restarted, "
154                        "see 2.1 in RFC 1765."), 
155                     Units ( "Seconds" ), 
156                     MappingStrings { "MIB.IETF|OSPF-MIB.ospfExitOverflowInterval" }]
157                 uint32 ExitOverflowInterval;
158              
159                    [Description (
160                        "Controls the preference rules used in choosing among "
161                        "multiple AS-external-LSAs advertising the same destination. "
162                        "When set to TRUE, the preference rules remain those "
163                        "specified by RFC 1583. When set to FALSE, the preference "
164                        "rules are those stated in RFC 2328, which prevent routing "
165                        "loops when AS-external-LSAs for the same destination have "
166                        "been originated from different areas. See C.1 in RFC2328.")]
167                 boolean RFC1583Compatibility;
168              };
169 a.dunfey 1.1 
170              
171              // ==================================================================
172              // OSPFServiceCapabilities
173              // ==================================================================
174                 [Version ( "2.7.0" ), Description (
175                     "The OSPFServiceCapabilities class represents the capabilities "
176                     "of an OSPF service.")]
177              class CIM_OSPFServiceCapabilities : CIM_Capabilities {
178              
179                    [Description (
180                        "This attribute indicates whether this router supports NSSA "
181                        "(\"not-so-stubby\") areas or not, see RFC 1587.")]
182                 boolean SupportNSSA;
183              
184                    [Description (
185                        "This attribute indicates whether this router supports "
186                        "on-demand circuits or not, see RFC 1793."), 
187                     MappingStrings { "MIB.IETF|OSPF-MIB.ospfDemandExtensions" }]
188                 boolean SupportOnDemand;
189              
190 a.dunfey 1.1       [Description (
191                        "This attribute indicates whether this router supports MOSPF "
192                        "(multicast enhancements to OSPF) or not, see B.1 in RFC "
193                        "1584."), 
194                     MappingStrings { "MIB.IETF|OSPF-MIB.ospfMulticastExtensions" }]
195                 boolean SupportMOSPF;
196              };
197              
198              
199              // ====================================================================
200              // OSPFAreaConfiguration
201              // ====================================================================
202                 [Version ( "2.7.0" ), Description (
203                     "Each OSPF router has an association to one or more OSPF areas. "
204                     "Into these areas, a router advertises summaries filtered by "
205                     "specific address ranges. This would natively be modeled as a "
206                     "ternary association (router/OSPFService to OSPFArea to "
207                     "RangeOfIPAddresses), which is problematic in some "
208                     "implementations. To get around this issue, the "
209                     "OSPFAreaConfiguration class is defined to act as a focal point "
210                     "to bring together the router (indicated as a ComputerSystem "
211 a.dunfey 1.1        "with an instance of OSPFService, associated to the "
212                     "AreaConfiguration using OSPFServiceConfiguration), the area "
213                     "(indicated as an OSPFArea, associated to the AreaConfiguration "
214                     "using AreaOfConfiguration) and the address ranges for "
215                     "advertising (indicated as instances of RangeOfIPAddresses, "
216                     "associated to the AreaConfiguration using "
217                     "RangesOfConfiguration). There would be an instance of "
218                     "OSPFAreaConfiguration for each connected area of a "
219                     "router/OSPFService. \n"
220                     "\n"
221                     "When network administrators want to control the advertisements "
222                     "of OSPF routers by filters, they first define the relevant "
223                     "ranges. In order for a router to handle a range, an instance "
224                     "of RangeOfIPAddresses MUST be associated to the relevant "
225                     "OSPFAreaConfiguration (using the relationship, RangesOf "
226                     "Configuration). The association between the range and area "
227                     "configuration contains a property defining the handling "
228                     "(EnableAdvertise) to allow or disallow advertisements in the "
229                     "range. \n"
230                     "\n"
231                     "Notes: \n"
232 a.dunfey 1.1        "- Because RangeOfIPAddresses is scoped by a System (via the "
233                     "HostedCollection association), an instance of "
234                     "RangeOfIPAddresses would be associated to an OSPFArea, "
235                     "satisfying this semantic. \n"
236                     "- This class is inherited from LogicalElement, because a "
237                     "suitable subclass 'lower' in the inheritance hiearchy does not "
238                     "exist.")]
239              class CIM_OSPFAreaConfiguration : CIM_LogicalElement {
240              
241                    [Key, Description (
242                        "Within the scope of the instantiating Namespace, InstanceID "
243                        "opaquely and uniquely identifies an instance of this class. "
244                        "In order to ensure uniqueness within the NameSpace, the "
245                        "value of InstanceID SHOULD be constructed using the "
246                        "following 'preferred' algorithm: \n"
247                        "<OrgID>:<OSPFService ID><Area Configuration ID> \n"
248                        "where: \n"
249                        "<OrgID> and the remainder of the InstanceID are separated "
250                        "by a colon ':', and where <OrgID> MUST include a "
251                        "copyrighted, trademarked or otherwise unique name that is "
252                        "owned by the business entity creating/defining the "
253 a.dunfey 1.1           "InstanceID, or is a registered ID that is assigned to the "
254                        "business entity by a recognized global authority. (This is "
255                        "similar to the <Schema Name>_<Class Name> structure of "
256                        "Schema class names.) In addition, to ensure uniqueness "
257                        "<OrgID> MUST NOT contain a colon (':'). When using this "
258                        "algorithm, the first colon to appear in InstanceID MUST "
259                        "appear between <OrgID> and the <OSPFService ID>. For DMTF "
260                        "defined instances, the 'preferred' algorithm MUST be used, "
261                        "and the <OrgID> set to 'CIM'. \n"
262                        "<OSPFService ID> and <Area Configuration ID> MUST specify "
263                        "vendor-unique identifiers for the OSPFService and "
264                        "AreaConfiguration.")]
265                 string InstanceID;
266              
267                    [Description (
268                        "This attribute contains the value of the default route that "
269                        "this router advertises into a stub area, see C.2 RFC 2328."), 
270                     MappingStrings { "MIB.IETF|OSPF-MIB.ospfStubMetric" }]
271                 uint32 StubDefaultCost;
272              
273                    [Description (
274 a.dunfey 1.1           "This attribute contains the type of metric advertised as a "
275                        "default route into a stub area, see 3. in RFC 1850."), 
276                     ValueMap { "2", "3", "4" }, 
277                     Values { "OSPF Metric", "Comparable Cost", "NonComparable" }, 
278                     MappingStrings { "MIB.IETF|OSPF-MIB.ospfStubMetricType" }]
279                 uint16 StubMetricType;
280              };
281              
282              
283              // ====================================================================
284              // OSPFLink
285              // ====================================================================
286                 [Version ( "2.7.0" ), Description (
287                     "This class is used to represent OSPF connectivity between two "
288                     "or more OSPF protocol endpoints.")]
289              class CIM_OSPFLink : CIM_ConnectivityCollection {
290              
291                    [Required, Description (
292                        "The type of the OSPF link, see section 1.2 in RFC 2328."), 
293                     ValueMap { "2", "3", "4", "5" }, 
294                     Values { "Point-To-Point", "Point-To-Multipoint", "Broadcast",
295 a.dunfey 1.1           "NBMA" }]
296                 uint16 LinkType;
297              
298                    [Description (
299                        "The time, in seconds, between sending OSPF Hello-packets "
300                        "over the interface, see section C.3 in RFC 2328."), 
301                     Units ( "Seconds" ), 
302                     MappingStrings { "MIB.IETF|OSPF-MIB.ospfIfHelloInterval" }]
303                 uint32 HelloInterval;
304              
305                    [Description (
306                        "After ceasing to hear a router's Hello-packets, the number "
307                        "of seconds before its neighbors declare the router down, "
308                        "see section C.3 in RFC 2328."), 
309                     Units ( "Seconds" ), 
310                     MappingStrings { "MIB.IETF|OSPF-MIB.ospfIfRtrDeadInterval" }]
311                 uint32 RouterDeadInterval;
312              
313                    [Required, Description (
314                        "This parameter indicates whether IP multicast datagrams "
315                        "should be forwarded over this OSPF link, and if so, how the "
316 a.dunfey 1.1           "forwarding should be done, see section B.2 in RFC 1584."), 
317                     ValueMap { "2", "3", "4" }, 
318                     Values { "Disabled", "Data-link Multicast",
319                     "Data-link Unicast" }, 
320                     MappingStrings { "MIB.IETF|OSPF-MIB.ospfIfMulticastForwarding" }]
321                 uint16 MulticastForwarding;
322              };
323              
324              // ====================================================================
325              // AreaOfConfiguration
326              // ====================================================================
327                 [Association, Version ( "2.7.0" ), Description (
328                     "This association connects an area configuration to its area. "
329                     "The OSPFAreaConfiguration class is defined to act as a focal "
330                     "point to bring together the router (indicated as a "
331                     "ComputerSystem with an instance of OSPFService, associated to "
332                     "the AreaConfiguration using OSPFServiceConfiguration), the "
333                     "area (indicated as an OSPFArea, associated to the "
334                     "AreaConfiguration using AreaOfConfiguration) and the address "
335                     "ranges for advertising (indicated as instances of "
336                     "RangeOfIPAddresses, associated to the AreaConfiguration using "
337 a.dunfey 1.1        "RangesOfConfiguration). There is an instance of "
338                     "OSPFAreaConfiguration for each connected area of a "
339                     "router/OSPFService.")]
340              class CIM_AreaOfConfiguration : CIM_Dependency {
341              
342                    [Override ( "Antecedent" ), Max ( 1 ), Description (
343                        "The OSPF area.")]
344                 CIM_OSPFArea REF Antecedent ;
345              
346                    [Override ( "Dependent" ), Description (
347                        "The configuration which is applied to an OSPF area. This is "
348                        "the Dependent reference in this association, since it "
349                        "depends on the area for any functional significance.")]
350                 CIM_OSPFAreaConfiguration REF Dependent;
351              };
352              
353              
354              // ====================================================================
355              // OSPFServiceConfiguration
356              // ====================================================================
357                 [Association, Version ( "2.7.0" ), Description (
358 a.dunfey 1.1        "OSPFServiceConfiguration connects an OSPF service to its area "
359                     "configurations. The configurations are defined for the OSPF "
360                     "Service, and so do not make sense as stand alone objects. This "
361                     "is the reason for the Min (1), Max (1) cardinalities on "
362                     "OSPFService. They mandate the instantiation of the service and "
363                     "of this association for the referenced instance of "
364                     "OSPFAreaConfiguration. The area configuration acts as a focal "
365                     "point to bring together the router (indicated as a "
366                     "ComputerSystem with an instance of OSPFService, associated to "
367                     "the AreaConfiguration using this relationship), the area "
368                     "(indicated as an OSPFArea, associated to the AreaConfiguration "
369                     "using AreaOfConfiguration) and the address ranges for "
370                     "advertising (indicated as instances of RangeOfIPAddresses, "
371                     "associated to the AreaConfiguration using "
372                     "RangesOfConfiguration). There would be an instance of "
373                     "OSPFAreaConfiguration for each connected area of a "
374                     "router/OSPFService.")]
375              class CIM_OSPFServiceConfiguration : CIM_Dependency {
376              
377                    [Override ( "Antecedent" ), Min ( 1 ), Max ( 1 ), Description (
378                        "The OSPF service.")]
379 a.dunfey 1.1    CIM_OSPFService REF Antecedent ;
380              
381                    [Override ( "Dependent" ), Description (
382                        "The area configuration.")]
383                 CIM_OSPFAreaConfiguration REF Dependent;
384              };
385              
386              
387              // ====================================================================
388              // RangesOfConfiguration
389              // ====================================================================
390                 [Association, Version ( "2.7.0" ), Description (
391                     "This association connects address ranges to the OSPF area "
392                     "configuration. When network administrators want to control the "
393                     "advertisements of OSPF routers by filters, they first define "
394                     "the relevant ranges. In order for a router to handle a range, "
395                     "an instance of RangeOfIPAddresses MUST be associated to the "
396                     "router's OSPFAreaConfiguration, using this relationship. The "
397                     "association between the range and area configuration contains "
398                     "a property (EnableAdvertise) defining the handling - to allow "
399                     "or disallow advertismenets in the range.")]
400 a.dunfey 1.1 class CIM_RangesOfConfiguration : CIM_Dependency {
401              
402                    [Override ( "Antecedent" ), Description (
403                        "The address range that is in the OSPF area configuration.")]
404                 CIM_RangeOfIPAddresses REF Antecedent;
405              
406                    [Override ( "Dependent" ), Description (
407                        "The OSPF area configuration that contains the range.")]
408                 CIM_OSPFAreaConfiguration REF Dependent;
409              
410                    [Description (
411                        "The address range is advertised (TRUE) or not (FALSE), see "
412                        "C.2 in RFC 2328.")]
413                 boolean EnableAdvertise;
414              };
415              
416              
417              // ====================================================================
418              // EndpointInLink
419              // ====================================================================
420                 [Association, Aggregation, Version ( "2.7.0" ), Description (
421 a.dunfey 1.1        "This association connects an OSPFLink to the OSPFProtocol "
422                     "Endpoints that this link aggregates.")]
423              class CIM_EndpointInLink : CIM_MemberOfCollection {
424              
425                    [Aggregate, Override ( "Collection" ), Max ( 1 ), Description (
426                        "The OSPF link.")]
427                 CIM_OSPFLink REF Collection;
428              
429                    [Override ( "Member" ), Description (
430                        "The OSPF protocol endpoint.")]
431                 CIM_OSPFProtocolEndpointBase REF Member;
432              };
433              
434              
435              // ====================================================================
436              // EndpointInArea
437              // ====================================================================
438                 [Association, Aggregation, Composition, Version ( "2.7.0" ), 
439                  Description (
440                     "This relation connects an OSPF endpoint to an area.")]
441              class CIM_EndpointInArea : CIM_Component {
442 a.dunfey 1.1 
443                    [Aggregate, Override ( "GroupComponent" ), Min ( 1 ), Max ( 1 ), 
444                     Description (
445                        "The OSPF area.")]
446                 CIM_OSPFArea REF GroupComponent;
447              
448                    [Override ( "PartComponent" ), Description (
449                        "The OSPF endpoint in the area.")]
450                 CIM_OSPFProtocolEndpointBase REF PartComponent;
451              };
452              
453              
454              // ===================================================================
455              // end of file
456              // ===================================================================

No CVS admin address has been configured
Powered by
ViewCVS 0.9.2