1 tony 1.1 // ===================================================================
2 // Title: Network BGP Model 2.8
3 // Filename: Network28_BGP.mof
4 // Version: 2.8
5 // Status: Preliminary
6 // Date: August 18, 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 tony 1.1 // 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 tony 1.1 // ===================================================================
44 // Description: The Network Model extends the management concepts to
45 // represent protocol interfaces and network/protocol
46 // services. This file defines the classes that model
47 // BGP (Border Gateway Protocol).
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.8
54 // CR1128 - Change subclassing of HostedBGPPeerGroup,
55 // HostedBGPAttributes, and HostedBGPRoutMap from
56 // Dependency to HostedDependency.
57 //
58 // Change Log for v2.7
59 // CR792 - Add the Composition qualifer to BGPClustersInAS,
60 // ASBGPEndpoints, and Confederation
61 // CR863 - Update the format of the MappingStrings qualifier when
62 // referencing IETF RFCs
63 // CR866 - Fixes to the BGP Model
64 tony 1.1 // CR920 - BGPAttributes.AtomicAggregate is incorrectly defined with
65 // Values/ValueMap qualifiers when it is a boolean - these
66 // qualifiers must be removed and the Description updated
67 // CR965 - Update Description for BGPIPRoute
68 // CR982 - Removal of Experimental for preliminary to final
69 // CR983 - v2.7 Deprecations promoted to final
70 // ===================================================================
71
72 #pragma Locale ("en_US")
73
74
75 // ==================================================================
76 // BGPService
77 // ==================================================================
78 [Version ("2.7.0"), Description (
79 "This class is used to represent the basic operation of BGP. "
80 "It is derived from RouteCalculationService, the superclass of "
81 "all routing protocols.") ]
82 class CIM_BGPService : CIM_RouteCalculationService {
83
84 [Description (
85 tony 1.1 "The BGPVersion property defines the version of BGP that "
86 "this router is using. This is part of the BGP peer "
87 "negotiation process)."),
88 MappingStrings {"MIB.IETF|BGP4-MIB.bgpVersion"} ]
89 uint8 BGPVersion;
90
91 [Description (
92 "BGP sends errors using a NOTIFICATION message. This "
93 "message contains an error code, an error subcode, and error "
94 "data. The error code defines the type of the "
95 "notification. The 'Cease' error is for all fatal errors "
96 "that are not one of the other five types of errors. For "
97 "several of the errors, subcode information is also "
98 "enumerated in other properties of this class."),
99 ValueMap {"0", "1", "2", "3", "4", "5", "6"},
100 Values {"None", "Message Header Error", "OPEN Message Error",
101 "UPDATE Message Error", "Hold Timer Expired",
102 "Finite State Machine Error", "Cease"} ]
103 uint16 LastErrorCode;
104
105 [Description (
106 tony 1.1 "This defines the BGP error subcode for message header "
107 "errors (LastErrorCode = 1). If LastErrorCode is any other "
108 "value, then this property should be set to NULL."),
109 ValueMap {"0", "1", "2", "3"},
110 Values {"None", "Connection Not Synchronized",
111 "Bad Message Length", "Bad Message Type"},
112 ModelCorrespondence {"CIM_BGPService.ErrorCode"} ]
113 uint16 LastMessageErrorSubCode;
114
115 [Description (
116 "This defines the BGP error subcode for OPEN message errors "
117 "(LastErrorCode = 2). If LastErrorCode is any other value, "
118 "then this property should be set to NULL."),
119 ValueMap {"0", "1", "2", "3", "4", "5", "6"},
120 Values {"None", "Unsupported Version Number", "Bad Peer AS",
121 "Bad BGP Identifier", "Unsupported Optional Parameter",
122 "Authentication Failure", "Unacceptable Hold Time"},
123 ModelCorrespondence {"CIM_BGPService.ErrorCode"} ]
124 uint16 LastOpenErrorSubCode;
125
126 [Description (
127 tony 1.1 "This defines the BGP error subcode for UPDATE message "
128 "errors (LastErrorCode = 3). If LastErrorCode is any other "
129 "value, then this property should be set to NULL."),
130 ValueMap {"0", "1", "2", "3", "4", "5", "6", "7", "8", "9",
131 "10", "11"},
132 Values {"None", "Malformed Attribute List",
133 "Unrecognized Well-Known Attribute",
134 "Missing Well-Known Attribute", "Attribute Flags Error",
135 "Attribute Length Error", "Invalid Origin Attribute",
136 "AS Routing Loop", "Invalid NEXT_HOP Attribute",
137 "Optional Attribute Error", "Invalid Network Field",
138 "Malformed AS_path"},
139 ModelCorrespondence {"CIM_BGPService.ErrorCode"} ]
140 uint16 LastUpdateErrorSubCode;
141 };
142
143
144 // ==================================================================
145 // BGPAdminDistance
146 // ==================================================================
147 [Association, Version ("2.6.0"), Description (
148 tony 1.1 "This is a specialization of the Dependency association, and "
149 "defines the relationship between a BGPService and the "
150 "AdministrativeDistances that it uses to control the (BGP) "
151 "routing decisions that it makes.") ]
152 class CIM_BGPAdminDistance : CIM_Dependency {
153
154 [Override ("Antecedent"), Min (1), Max (1), Description (
155 "The table of (global) administrative distances that are "
156 "used by the BGPService.") ]
157 CIM_AdministrativeDistance REF Antecedent;
158
159 [Override ("Dependent"), Description (
160 "The BGPService object that makes BGP routing decisions.") ]
161 CIM_BGPService REF Dependent;
162 };
163
164
165 // ==================================================================
166 // BGPCluster
167 // ==================================================================
168 [Version ("2.6.0"), Description (
169 tony 1.1 "The BGP speakers in an AS are required to be fully meshed. "
170 "This can lead to a huge number of TCP connections per router. "
171 "One way to reduce the peering requirements is to use a route "
172 "reflector. This is based on specifying one or more routers to "
173 "act as focal points for IBGP sessions.\n"
174 "\n"
175 "The route reflector as a whole is called a cluster. It is "
176 "logically divided into three types of routers: reflectors, "
177 "clients of the route reflector(s), and non-clients of the "
178 "route reflector. There can be more than one route reflector "
179 "in a cluster, and there can be more than one cluster in an "
180 "AS.") ]
181 class CIM_BGPCluster : CIM_CollectionOfMSEs {
182
183 [Key, Description (
184 "If a cluster has more than one route reflector, all of the "
185 "route reflectors in the cluster need to be configured with "
186 "a 4-byte cluster ID. This allows route reflectors to "
187 "recognize updates from other route reflectors in the same "
188 "cluster.") ]
189 uint32 ClusterID;
190 tony 1.1 };
191
192
193 // ==================================================================
194 // RoutersInBGPCluster
195 // ==================================================================
196 [Association, Aggregation, Version ("2.6.0"), Description (
197 "This aggregation establishes the routers (ComputerSystems) in "
198 "a BGPCluster. At least three routers are required to form a "
199 "cluster - a reflector and two clients. The routers that form "
200 "a cluster share common configuration information.") ]
201 class CIM_RoutersInBGPCluster : CIM_CollectedMSEs {
202
203 [Aggregate, Override ("Collection"), Max (1), Description (
204 "The Cluster that aggregates the routers participating in "
205 "it.") ]
206 CIM_BGPCluster REF Collection;
207
208 [Override ("Member"), Min (3), Description (
209 "The routers that form the Cluster.") ]
210 CIM_ComputerSystem REF Member;
211 tony 1.1 };
212
213
214 // ==================================================================
215 // BGPClustersInAS
216 // ==================================================================
217 [Association, Aggregation, Composition, Version ("2.7.0"),
218 Description (
219 "This aggregation establishes 'whole-part' relationships "
220 "between an AutonomousSystem and the BGPClusters that it "
221 "contains.") ]
222 class CIM_BGPClustersInAS {
223
224 [Key, Aggregate, Max (1), Description (
225 "The AutonomousSystem that aggregates the Clusters belonging "
226 "to it and administers them.") ]
227 CIM_AutonomousSystem REF GroupAS;
228
229 [Key, Description (
230 "The Clusters that are contained in the AS.") ]
231 CIM_BGPCluster REF PartAS;
232 tony 1.1 };
233
234
235 // ==================================================================
236 // Confederation
237 // ==================================================================
238 [Association, Aggregation, Composition, Version ("2.7.0"),
239 Description (
240 "The BGP speakers in an AS are required to be fully meshed. "
241 "This can lead to a huge number of TCP connections per router. "
242 "One way to reduce the peering requirements is to use a "
243 "confederation. A confederation effectively partitions one AS "
244 "into a group of 'sub-ASs'. This enables all of the benefits "
245 "of IBGP to be applied inside the confederation, while enabling "
246 "EBGP to be run between each confederation. It also enables "
247 "certain BGP attribute values to be preserved between "
248 "confederations. However, to the outside world, the AS with "
249 "its confederations appear to be a single AS.") ]
250 class CIM_Confederation : CIM_SystemComponent {
251
252 [Aggregate, Override ("GroupComponent"), Max (1), Description (
253 tony 1.1 "The AutonomousSystem that contains the confederations.") ]
254 CIM_AutonomousSystem REF GroupComponent;
255
256 [Override ("PartComponent"), Description (
257 "The Confederation within the AutonomousSystem.") ]
258 CIM_AutonomousSystem REF PartComponent;
259
260 [Description (
261 "A unique identifier of the AutonomousSystem that contains "
262 "the confederations.") ]
263 uint32 ParentASNumber;
264
265 [Description (
266 "A unique identifier of the Confederation within the "
267 "AutonomousSystem.") ]
268 uint32 ChildASNumber;
269 };
270
271
272 // ==================================================================
273 // BGPIPRoute
274 tony 1.1 // ==================================================================
275 [Version ("2.6.0"), Description (
276 "BGPIPRoute describes a BGP routing entry that connects two "
277 "peer routers that are running BGP. The source and destination "
278 "addresses may be either specific IP endpoints or IP subnets. "
279 "Examining the BGPIPRoute class definition, note that its "
280 "superclass IPRoute is deprecated. Unfortunately, IPRoute "
281 "cannot be removed from the object hierarchy without a major "
282 "Schema release. When/if this occurs, the IPRoute superclass "
283 "will be removed, and BGPIPRoute will subclass from "
284 "CIM_NextHopRouting directly.") ]
285 class CIM_BGPIPRoute : CIM_IPRoute {
286
287 [Description (
288 "Usually, the administrative distance is used to determine "
289 "which route gets installed in the routing table. Using "
290 "this scheme, routes learned via EBGP will win over routes "
291 "learned via an IGP. If this is not desired, then this "
292 "assigns the administrative distance of this route to be "
293 "equal to that of a local route, which means that the same "
294 "route learned by an IGP will have a lower administrative "
295 tony 1.1 "distance and be installed instead.") ]
296 boolean IsBackDoorRoute;
297
298 [Description (
299 "Loopback interfaces are often used by IBGP peers, because "
300 "they eliminate a dependency that would otherwise occur if "
301 "the actual IP address of a physical interface was used to "
302 "configure BGP. The loopback interface instead instructs "
303 "the router to use any available interface.") ]
304 boolean UsesLoopbackPeering;
305 };
306
307
308 // ==================================================================
309 // RoutesBGP
310 // ==================================================================
311 [Association, Version ("2.6.0"), Description (
312 "This association defines a BGP route, and makes explicit the "
313 "dependency between a BGPIPRoute and a BGPProtocolEndpoint.") ]
314 class CIM_RoutesBGP : CIM_Dependency {
315
316 tony 1.1 [Override ("Antecedent"), Max (2), Description (
317 "The BGPProtocolEndpoints that represent the source and "
318 "destination (or at least the next hop) of the BGP route.") ]
319 CIM_BGPProtocolEndpoint REF Antecedent;
320
321 [Override ("Dependent"), Min (1), Description (
322 "The routing table entry that represents a BGP route.") ]
323 CIM_BGPIPRoute REF Dependent;
324 };
325
326
327 // ==================================================================
328 // EGPRouteCalcDependency
329 // ==================================================================
330 [Association, Version ("2.6.0"), Description (
331 "This is a specialization of ServiceServiceDependency, and "
332 "captures the dependency that external gateway protocols (such "
333 "as BGP) have on interior gateway protocols (such as OSPF).") ]
334 class CIM_EGPRouteCalcDependency : CIM_ServiceServiceDependency {
335
336 [Override ("Antecedent"), Description (
337 tony 1.1 "The independent RouteCalculationService that provides "
338 "routing information from the AS, for the EGP to use.") ]
339 CIM_RouteCalculationService REF Antecedent;
340
341 [Override ("Dependent"), Description (
342 "The dependent RouteCalculationService (e.g., the Route "
343 "CalculationService) that is functioning as an EGP.") ]
344 CIM_RouteCalculationService REF Dependent;
345
346 [Description (
347 "Sometimes it is necessary to inject EGP information, such "
348 "as that from BGP, into IGPs. This attribute defines "
349 "whether this should be done for the two routing protocols "
350 "that are defined by this association. The values below "
351 "mean that no, partial, and full EGP information is injected "
352 "into the IGP, respectively."),
353 ValueMap {"1", "2", "3"},
354 Values {"None", "Partial", "Full"} ]
355 uint16 IGPInjection;
356 };
357
358 tony 1.1
359 // ==================================================================
360 // BGPPeerGroup
361 // ==================================================================
362 [Version ("2.7.0"), Description (
363 "A BGP Peer Group is a set of BGP neighbors that share the same "
364 "update policies. This enables an administrator to assign "
365 "policies to the peer group, instead of individually. This "
366 "enables the routers in the Peer Group to optimize UPDATE "
367 "messages. Consequently, Peer Groups have a set of "
368 "restrictions that must be followed in order to work correctly "
369 "with external BGP peers. Otherwise, loss of routing "
370 "information could occur.\n"
371 "\n"
372 "A BGPPeerGroup is weak to the AutonomousSystem that contains "
373 "it. Therefore, the keys from System must be propagated to "
374 "it.") ]
375 class CIM_BGPPeerGroup : CIM_CollectionOfMSEs {
376
377 [Key, Propagated ("CIM_AutonomousSystem.CreationClassName"),
378 Description (
379 tony 1.1 "The scoping AutonomousSystem's CreationClassName."),
380 MaxLen (256) ]
381 string SystemCreationClassName;
382
383 [Key, Propagated ("CIM_AutonomousSystem.Name"), Description (
384 "The scoping AutonomousSystem's Name."),
385 MaxLen (256) ]
386 string SystemName;
387
388 [Key, Description (
389 "CreationClassName indicates the name of the class or the "
390 "subclass used in the creation of an instance. When used "
391 "with the other key properties of this class, this property "
392 "allows all instances of this class and its subclasses to be "
393 "uniquely identified.") ]
394 string CreationClassName;
395
396 [Key, Description (
397 "This is the name of the BGP Peer Group."),
398 MaxLen (256) ]
399 string Name;
400 tony 1.1
401 [Description (
402 "This defines the time interval, in seconds, for the "
403 "ConnectRetry timer for the endpoints of the routers in the "
404 "PeerGroup. The suggested value is 120 seconds."),
405 Units ("Seconds"),
406 MappingStrings { "MIB.IETF|BGP4-MIB.bgpConnectRetryInterval"} ]
407 uint32 ConnectRetryInterval = 120;
408
409 [Description (
410 "This defines the time interval in seconds for the Hold "
411 "TimeConfigured property of the endpoints of the routers in "
412 "the PeerGroup. This value must not be less than three "
413 "seconds. The suggested value for this timer is 90 "
414 "seconds."),
415 Units ("Seconds"),
416 MappingStrings {"MIB.IETF|BGP4-MIB.bgpPeerHoldTimeConfigured"} ]
417 uint16 HoldTimeConfigured = 90;
418
419 [Description (
420 "This defines the time interval in seconds for the "
421 tony 1.1 "KeepAliveConfigured timer for the endpoints of the routers "
422 "in the PeerGroup. The suggested value for this property is "
423 "30 seconds. The maximum value of this property is 21845 "
424 "seconds."),
425 Units ("Seconds"),
426 MappingStrings { "MIB.IETF|BGP4-MIB.bgpPeerKeepAliveConfigured"} ]
427 uint16 KeepAliveConfigured = 30;
428
429 [Description (
430 "This defines the time interval in seconds for the "
431 "MinASOriginationInterval timer for the endpoints of the "
432 "routers in the PeerGroup. The suggested value for this "
433 "property is 15 seconds."),
434 Units ("Seconds"),
435 MappingStrings
436 {"MIB.IETF|BGP4-MIB.bgpPeerMinASOriginationInterval"} ]
437 uint16 MinASOriginationInterval = 15;
438
439 [Description (
440 "This defines the time interval in seconds for the "
441 "MinRouteAdvertisementInterval timer for the endpoints of "
442 tony 1.1 "the routers in the PeerGroup. The suggested value for this "
443 "property is 30 seconds."),
444 Units ("Seconds"),
445 MappingStrings {
446 "MIB.IETF|BGP4-MIB.bgpPeerMinRouteAdvertisementInterval"} ]
447 uint16 MinRouteAdvertisementInterval = 30;
448 };
449
450
451 // ==================================================================
452 // HostedBGPPeerGroup
453 // ==================================================================
454 [Association, Version ("2.6.0"), Description (
455 "A BGPPeerGroup is weak to the AutonomousSystem that contains "
456 "it. This association formalizes that relationship.") ]
457 class CIM_HostedBGPPeerGroup : CIM_HostedDependency {
458
459 [Override ("Antecedent"), Min (1), Max (1), Description (
460 "The AutonomousSystem that scopes the BGP peer group.") ]
461 CIM_AutonomousSystem REF Antecedent;
462
463 tony 1.1 [Override ("Dependent"), Weak, Description (
464 "The BGP peer group defined in the context of the "
465 "AutonomousSystem.") ]
466 CIM_BGPPeerGroup REF Dependent;
467 };
468
469 // ==================================================================
470 // InBGPPeerGroup
471 // ==================================================================
472 [Association, Aggregation, Version ("2.6.0"), Description (
473 "This aggregation defines the specific routers (i.e., "
474 "ComputerSystems) that participate in a PeerGroup.") ]
475 class CIM_InBGPPeerGroup : CIM_CollectedMSEs {
476
477 [Aggregate, Override ("Collection"), Max (1), Description (
478 "The PeerGroup that aggregates the routers.") ]
479 CIM_BGPPeerGroup REF Collection;
480
481 [Override ("Member"), Min (2), Description (
482 "The routers that comprise the PeerGroup.") ]
483 CIM_ComputerSystem REF Member;
484 tony 1.1 };
485
486
487 // ==================================================================
488 // BGPPeerGroupService
489 // ==================================================================
490 [Association, Version ("2.7.0"), Description (
491 "This defines the relationship between a BGPService and a "
492 "specific BGPPeerGroup in which it is executing.") ]
493 class CIM_BGPPeerGroupService : CIM_Dependency {
494
495 [Override ("Antecedent"), Description (
496 "The BGPPeerGroup in which the BGPService is executing.") ]
497 CIM_BGPPeerGroup REF Antecedent;
498
499 [Override ("Dependent"), Description (
500 "The BGPService that is executing in the BGPPeerGroup.") ]
501 CIM_BGPService REF Dependent;
502 };
503
504
505 tony 1.1 // ==================================================================
506 // ReflectorService
507 // ==================================================================
508 [Association, Version ("2.6.0"), Description (
509 "This association will serve as the base class for defining and "
510 "distributing BGP routing information for the reflector of this "
511 "Cluster.") ]
512 class CIM_ReflectorService : CIM_Dependency {
513
514 [Override ("Antecedent"), Max (1), Description (
515 "The Cluster for which this Service is being defined.") ]
516 CIM_BGPCluster REF Antecedent;
517
518 [Override ("Dependent"), Min (1), Description (
519 "The BGPService which distributes routing information in the "
520 "Cluster.") ]
521 CIM_BGPService REF Dependent;
522 };
523
524
525 // ==================================================================
526 tony 1.1 // ReflectorClientService
527 // ==================================================================
528 [Association, Version ("2.6.0"), Description (
529 "This association will serve as the base class for handling BGP "
530 "routing information for clients of the reflector of this "
531 "Cluster.") ]
532 class CIM_ReflectorClientService : CIM_Dependency {
533
534 [Override ("Antecedent"), Max (1), Description (
535 "The Cluster for which this Service is being defined.") ]
536 CIM_BGPCluster REF Antecedent;
537
538 [Override ("Dependent"), Min (1), Description (
539 "The BGPService to handles routing information as a client "
540 "in the Cluster.") ]
541 CIM_BGPService REF Dependent;
542 };
543
544
545 // ==================================================================
546 // ReflectorNonClientService
547 tony 1.1 // ==================================================================
548 [Association, Version ("2.6.0"), Description (
549 "This association will serve as the base class for handling BGP "
550 "routing information for the non-clients of the reflector of "
551 "this Cluster.") ]
552 class CIM_ReflectorNonClientService : CIM_Dependency {
553
554 [Override ("Antecedent"), Max (1), Description (
555 "The Cluster for which this Service is being defined.") ]
556 CIM_BGPCluster REF Antecedent;
557
558 [Override ("Dependent"), Description (
559 "The BGPService which handles routing information as a "
560 "non-client of the Cluster.") ]
561 CIM_BGPService REF Dependent;
562 };
563
564
565 // ==================================================================
566 // BGPRoutingPolicy
567 // ==================================================================
568 tony 1.1 [Association, Version ("2.6.0"), Description (
569 "This is a specialization of the Dependency association, and "
570 "defines the relationship between a BGPService and the "
571 "RoutingPolicy that control it.") ]
572 class CIM_BGPRoutingPolicy : CIM_Dependency {
573
574 [Override ("Antecedent"), Description (
575 "The BGP routing policy object.") ]
576 CIM_RoutingPolicy REF Antecedent;
577
578 [Override ("Dependent"), Description (
579 "The BGPService that operates according to the routing "
580 "policy.") ]
581 CIM_BGPService REF Dependent;
582 };
583
584
585 // ==================================================================
586 // BGPAttributes
587 // ==================================================================
588 [Version ("2.7.0"), Description (
589 tony 1.1 "This class defines the BGP Attributes, that can be used to "
590 "affect routing decisions. BGPAttributes are specific to a "
591 "given AutonomousSystem that contains it. Hence, the keys of "
592 "the AutonomousSystem are propagated to this class.") ]
593 class CIM_BGPAttributes : CIM_LogicalElement {
594
595 [Key, Propagated ("CIM_AutonomousSystem.CreationClassName"),
596 Description (
597 "The scoping AutonomousSystem's CreationClassName."),
598 MaxLen (256) ]
599 string SystemCreationClassName;
600
601 [Key, Propagated ("CIM_AutonomousSystem.Name"), Description (
602 "The scoping AutonomousSystem's Name."),
603 MaxLen (256) ]
604 string SystemName;
605
606 [Key, Description (
607 "This defines the version of the BGP protocol.") ]
608 string Version;
609
610 tony 1.1 [Description (
611 "This defines the priority, or preference, of a route, in "
612 "order to better compare it with other routes for the same "
613 "destination. Higher values indicate a higher preference "
614 "for a route."),
615 MappingStrings { "MIB.IETF|BGP4-MIB.bgp4PathAttrLocalPref"} ]
616 uint16 LocalPreference;
617
618 [Description (
619 "This attribute is a sequences of the AS numbers through "
620 "which routing information carried in this UPDATE message "
621 "has passed. The components of this list can be AS_SETs or "
622 "AS_SEQUENCEs."),
623 MappingStrings {"MIB.IETF|BGP4-MIB.bgp4PathAttrASPath"} ]
624 string ASPath;
625
626 [Description (
627 "This is the set of all elements contained in all specific "
628 "paths that are being summarized, so that those attributes "
629 "will remain available to the routing decision process.") ]
630 string AS_Set;
631 tony 1.1
632 [Description (
633 "This attribute defines the IP address of the border router "
634 "that should be used as the next hop to the destinations "
635 "listed in the UPDATE message."),
636 MappingStrings { "MIB.IETF|BGP4-MIB.bgp4PathAttrNextHop"} ]
637 string NextHop;
638
639 [Description (
640 "This defines the next hop to be the IP address of the "
641 "border IBGP neighbor.") ]
642 string NextHopSelf;
643
644 [Description (
645 "This is used on external (e.g., inter-AS) links to indicate "
646 "which is the preferred entry point into an AS, when that AS "
647 "has multiple entry points. Lower MED values have "
648 "preference."),
649 MappingStrings { "MIB.IETF|BGP4-MIB.bgp4PathAttrMultiExitDisc"} ]
650 uint32 MED;
651
652 tony 1.1 [Description (
653 "This defines a group of destinations that share a similar "
654 "property. Communities are not restricted to a single AS, "
655 "and can span multiple ASs. This attribute is used to "
656 "simplify routing policies by basing policies on a logical "
657 "value, as opposed to an IP address or an AS number.") ]
658 uint32 BGPCommunityValue;
659
660 [Description (
661 "This property is set to TRUE if there are overlapping "
662 "routes, and a less-specific route is selected instead of a "
663 "more specific one (e.g., a system propagates an aggregate "
664 "that causes loss of information). The value is set to "
665 "FALSE if a less-specific route is NOT selected."),
666 MappingStrings {
667 "MIB.IETF|BGP4-MIB.bgp4PathAttrAtomicAggregate"} ]
668 boolean AtomicAggregate;
669
670 [Description (
671 "This specifies the AS and IP address of the router that has "
672 "generated an aggregate."),
673 tony 1.1 MappingStrings { "MIB.IETF|BGP4-MIB.bgp4PathAttrAggregatorAS"} ]
674 string Aggregator;
675
676 [Description (
677 "This is generated by the AS that originates the routing "
678 "information. There are three types of origins - IGP, EGP, "
679 "and INCOMPLETE. These correspond to whether the "
680 "information was learned internally in the AS, externally "
681 "via an EGP, or by some other means."),
682 ValueMap {"1", "2", "3"},
683 Values {"IGP", "EGP", "INCOMPLETE"},
684 MappingStrings {"MIB.IETF|BGP4-MIB.bgp4PathAttrOrigin"} ]
685 uint16 Origin;
686
687 [Description (
688 "This is the router ID for the ORIGIN attribute.") ]
689 string OriginatorID;
690 };
691
692
693 // ==================================================================
694 tony 1.1 // HostedBGPAttributes
695 // ==================================================================
696 [Association, Version ("2.7.0"), Description (
697 "The class BGPAttributes is weak to the AutonomousSystem that "
698 "contains it. This association formalizes that relationship.") ]
699 class CIM_HostedBGPAttributes : CIM_HostedDependency {
700
701 [Override ("Antecedent"), Min (1), Max (1), Description (
702 "The AutonomousSystem that scopes the BGP attributes.") ]
703 CIM_AutonomousSystem REF Antecedent;
704
705 [Override ("Dependent"), Weak, Description (
706 "The BGP attributes defined in the context of the "
707 "AutonomousSystem.") ]
708 CIM_BGPAttributes REF Dependent;
709 };
710
711
712 // ==================================================================
713 // FilteredBGPAttributes
714 // ==================================================================
715 tony 1.1 [Association, Aggregation, Version ("2.7.0"), Description (
716 "This is a specialization of the Component aggregation, which "
717 "is used to define the set of BGP Attributes that are used by a "
718 "particular Routing Policy.") ]
719 class CIM_FilteredBGPAttributes : CIM_Component {
720
721 [Aggregate, Override ("GroupComponent"), Description (
722 "The RoutingPolicy, which aggregates a set of BGP "
723 "attributes.") ]
724 CIM_RoutingPolicy REF GroupComponent;
725
726 [Override ("PartComponent"), Description (
727 "A BGP attribute, which is part-of the RoutingPolicy.") ]
728 CIM_BGPAttributes REF PartComponent;
729 };
730
731
732 // ==================================================================
733 // BGPRouteMap
734 // ==================================================================
735 [Version ("2.7.0"), Description (
736 tony 1.1 "A route map is used to control and modify routing information "
737 "as well as to define when a route is redistributed between "
738 "routing domains. Route maps are placed in router "
739 "configuration files, and several instances of the same route "
740 "map may be used to implement different actions. RouteMaps MAY "
741 "use FilterLists to identify the route.\n"
742 "\n"
743 "A BGPRouteMap is specific to a given AutonomousSystem that "
744 "contains it. Hence, the keys of the AutonomousSystem are "
745 "propagated to this class.") ]
746 class CIM_BGPRouteMap : CIM_LogicalElement {
747
748 [Key, Propagated ("CIM_AutonomousSystem.CreationClassName"),
749 Description (
750 "The scoping AutonomousSystem's CreationClassName."),
751 MaxLen (256) ]
752 string SystemCreationClassName;
753
754 [Key, Propagated ("CIM_AutonomousSystem.Name"), Description (
755 "The scoping AutonomousSystem's Name."),
756 MaxLen (256) ]
757 tony 1.1 string SystemName;
758
759 [Key, Description (
760 "CreationClassName indicates the name of the class or the "
761 "subclass used in the creation of an instance. When used "
762 "with the other key properties of this class, this property "
763 "allows all instances of this class and its subclasses to be "
764 "uniquely identified.") ]
765 string CreationClassName;
766
767 [Key, Override ("Name"), Description (
768 "This is the name of the RouteMap class."),
769 MaxLen (256) ]
770 string Name;
771
772 [Description (
773 "This defines whether this RouteMap is used for input, "
774 "output, or both input and output filtering."),
775 ValueMap {"1", "2", "3"},
776 Values {"Input", "Output", "Both"} ]
777 uint16 Direction;
778 tony 1.1
779 [Description (
780 "This defines whether the action should be to forward or "
781 "deny traffic meeting the match condition specified in this "
782 "RouteMap."),
783 ValueMap {"1", "2"},
784 Values {"Permit", "Deny"} ]
785 uint16 Action;
786
787 [Description (
788 "This specifies the criteria that must be matched in order "
789 "for the corresponding MatchAction to take effect. The "
790 "matching of the criteria may be specified by using a "
791 "FilterList. For example, the command 'match ip address "
792 "foo' uses the FilterList named 'foo' to do the matching of "
793 "IP addresses."),
794 ValueMap {"1", "2", "3", "4", "5", "6", "7", "8", "9"},
795 Values {"Other", "Source Address and Mask",
796 "Destination Address and Mask", "Source Port",
797 "Source Port Range", "Destination Port",
798 "Destination Port Range", "Protocol Type",
799 tony 1.1 "Protocol Type and Option"},
800 ModelCorrespondence { "CIM_RouteMap.OtherMatchConditionType"} ]
801 uint16 MatchConditionType;
802
803 [Description (
804 "If the value of the MatchConditionType property in this "
805 "class is 1 (i.e., \"Other\"), then the specific type of "
806 "filtering is specified in this property."),
807 ModelCorrespondence { "CIM_RouteMap.MatchConditionType"} ]
808 string OtherMatchConditionType;
809
810 [Description (
811 "This defines an additional action to take if the "
812 "MatchCondition is satisfied. This definition is "
813 "specifically limited to BGP filtering at this time. The "
814 "actual value of the metric is specified in the "
815 "SetMetricValue property."),
816 ValueMap {"1", "2", "3", "4", "5", "6", "7", "8", "9"},
817 Values {"Origin", "AS_Path", "NEXT_HOP", "Multi_Exit_Disc",
818 "Local_Pref", "Atomic_Aggregate", "Aggregator", "Community",
819 "Originator_ID"},
820 tony 1.1 ModelCorrespondence {"CIM_BGPRouteMap.SetMetricValue"} ]
821 uint16 SetMetricType;
822
823 [Description (
824 "This is the value of the metric that is being set for the "
825 "BGP attribute defined in the SetMetricType property.") ]
826 string SetMetricValue;
827 };
828
829
830 // ==================================================================
831 // HostedBGPRouteMap
832 // ==================================================================
833 [Association, Version ("2.6.0"), Description (
834 "A BGPRouteMap is weak to the AutonomousSystem that contains "
835 "it. This association formalizes that relationship.") ]
836 class CIM_HostedBGPRouteMap : CIM_HostedDependency {
837
838 [Override ("Antecedent"), Min (1), Max (1), Description (
839 "The AutonomousSystem that scopes the BGPRouteMap.") ]
840 CIM_AutonomousSystem REF Antecedent;
841 tony 1.1
842 [Override ("Dependent"), Weak, Description (
843 "The BGPRouteMap defined in the context of the "
844 "AutonomousSystem.") ]
845 CIM_BGPRouteMap REF Dependent;
846 };
847
848
849 // ==================================================================
850 // BGPRouteMapsInRoutingPolicy
851 // ==================================================================
852 [Association, Aggregation, Version ("2.6.0"), Description (
853 "This aggregation defines the BGPRouteMaps that are used by a "
854 "particular RoutingPolicy object. Multiple instances of the "
855 "same RouteMap may be used in the same RoutingPolicy instance. "
856 "If this is desired, then the Sequence attribute of this "
857 "aggregation can be used to disambiguate them.") ]
858 class CIM_BGPRouteMapsInRoutingPolicy : CIM_Component {
859
860 [Aggregate, Override ("GroupComponent"), Description (
861 "The RoutingPolicy that aggregates the RouteMaps.") ]
862 tony 1.1 CIM_RoutingPolicy REF GroupComponent;
863
864 [Override ("PartComponent"), Description (
865 "The RouteMaps that are used by the RoutingPolicy.") ]
866 CIM_BGPRouteMap REF PartComponent;
867
868 [Description (
869 "This defines the position of this RouteMap instance "
870 "relative to all other instances of the same RouteMap.") ]
871 uint16 MapSequence;
872 };
873
874
875 // ==================================================================
876 // BGPPeerUsesRouteMap
877 // ==================================================================
878 [Association, Aggregation, Version ("2.6.0"), Description (
879 "This association defines the RouteMaps that are aggregated and "
880 "used by a particular BGPPeerGroup object. Multiple instances "
881 "of the same RouteMap may be aggregated into the same "
882 "BGPPeerGroup. If this is desired, then the MapSequence "
883 tony 1.1 "attribute of the association can be used to disambiguate "
884 "them.") ]
885 class CIM_BGPPeerUsesRouteMap : CIM_CollectedMSEs {
886
887 [Aggregate, Override ("Collection"), Description (
888 "The BGPPeerGroup that aggregates the RouteMaps.") ]
889 CIM_BGPPeerGroup REF Collection;
890
891 [Override ("Member"), Description (
892 "The RouteMaps that are used by the BGPPeerGroup.") ]
893 CIM_BGPRouteMap REF Member;
894
895 [Description (
896 "This defines the position of this RouteMap instance "
897 "relative to all other instances of the same RouteMap.") ]
898 uint16 MapSequence;
899 };
900
901
902 // ==================================================================
903 // FilterListsInBGPRouteMap
904 tony 1.1 // ==================================================================
905 [Association, Version ("2.6.0"), Description (
906 "RouteMaps do not have to use FilterLists, but if they do, this "
907 "association defines which FilterList is used by a particular "
908 "RouteMap.") ]
909 class CIM_FilterListsInBGPRouteMap : CIM_Dependency {
910
911 [Override ("Antecedent"), Description (
912 "The FilterList used by a RouteMap.") ]
913 CIM_FilterList REF Antecedent;
914
915 [Override ("Dependent"), Description (
916 "The RouteMap using the FilterList.") ]
917 CIM_BGPRouteMap REF Dependent;
918 };
919
920
921 // ==================================================================
922 // BGPPathAttributes
923 // ==================================================================
924 [Version ("2.7.0"), Description (
925 tony 1.1 "This class defines the per-path information used to process "
926 "specific BGP attribute information, as defined in the "
927 "bgp4PathAttrTable of RFC 1657.") ]
928 class CIM_BGPPathAttributes : CIM_LogicalElement {
929
930 [Key, Description (
931 "A comma-separated list of AS numbers, as would be stored in "
932 "the value portion of the path segment in the "
933 "PathAttrASPathSegment property. This list can be ordered "
934 "or unordered."),
935 MaxLen (512) ]
936 string ASNumbers;
937
938 [Key, Description (
939 "This is the address of the border router that should be "
940 "used for the destination network."),
941 MaxLen (32),
942 MappingStrings {"MIB.IETF|BGP4-MIB.bgp4PathAttrNextHop"} ]
943 string PathAttrNextHop;
944
945 [Description (
946 tony 1.1 "This property and its description are taken directly from "
947 "RFC 1657. The property represents a sequence of AS path "
948 "segments. Each AS path segment is represented by the tuple:\n"
949 "<type, length, value>\n"
950 "The type is a 1-octet field which has two possible values:\n"
951 "1 = AS_SET\n"
952 "2 = AS_SEQUENCE\n"
953 "An AS_SET is an unordered set of ASs representing the path "
954 "that an UPDATE message has traversed, and an AS_SEQUENCE is "
955 "an ordered set of ASs representing the path that an UPDATE "
956 "message has traversed.\n"
957 "The length is a 1-octet field containing the number of ASs "
958 "in the value field.\n"
959 "The value field contains one or more AS numbers, each AS is "
960 "represented in the octet string as a pair of octets "
961 "according to the following algorithm:\n"
962 "first-byte-of-pair = ASNumber / 256;\n"
963 "second-byte-of-pair = ASNumber & 255;\n"
964 "This property is mapped from the bgp4PathAttrASPathSegment "
965 "MIB variable, which is an OctetString. Its length is "
966 "defined as a minimum of 2 and a maximum of 255 octets."),
967 tony 1.1 OctetString,
968 MappingStrings { "MIB.IETF|BGP4-MIB.bgp4PathAttrASPathSegment"} ]
969 uint8 PathAttrASPathSegment[];
970
971 [Description (
972 "This is an enumeration that defines the ultimate origin of "
973 "the path information. The value 'IGP' means that the "
974 "origin is interior; the value 'EGP' means that it was "
975 "learned via an EGP; the value 'INCOMPLETE' means that the "
976 "origin is undetermined."),
977 ValueMap {"1", "2", "3"},
978 Values {"IGP", "EGP", "Incomplete"},
979 MappingStrings {"MIB.IETF|BGP4-MIB.bgp4PathAttrOrigin"} ]
980 uint16 PathAttrOrigin;
981
982 [Description (
983 "This metric is used to discriminate between multiple "
984 "adjacent autonomous systems. A value of -1 indicates the "
985 "absence of this attribute. The range of this attribute is "
986 "defined to be -1 to 2147483647."),
987 MappingStrings { "MIB.IETF|BGP4-MIB.bgp4PathAttrMultiExitDisc"} ]
988 tony 1.1 sint32 PathAttrMultiExitDisc;
989
990 [Description (
991 "This is the originating BGP4 speaker's degree of preference "
992 "for an advertised route. A value of -1 indicates the "
993 "absence of this attribute. The range of this attribute is "
994 "defined to be -1 to 2147483647."),
995 MappingStrings { "MIB.IETF|BGP4-MIB.bgp4PathAttrLocalPref"} ]
996 sint32 PathAttrLocalPref;
997
998 [Description (
999 "This is an enumeration that defines whether or not the "
1000 "local system has selected a less specific route without "
1001 "selecting a more specific route. There are two values, 1 "
1002 "and 2, indicating that a less specific route has not and "
1003 "has been selected, respectively. This is a 32-bit integer "
1004 "to correspond to the IETF MIB."),
1005 ValueMap {"0", "1", "2"},
1006 Values {"Unknown", "Less Specific Not Selected",
1007 "Less Specific Selected"},
1008 MappingStrings {
1009 tony 1.1 "MIB.IETF|BGP4-MIB.bgp4PathAttrAtomicAggregate"} ]
1010 uint32 PathAttrAtomicAggregate;
1011
1012 [Description (
1013 "This is the AS number of the last BGP speaker that "
1014 "performed route aggregation. A value of 0 indicates the "
1015 "absence of this attribute. The range of this attribute is "
1016 "defined to be 0 to 65535."),
1017 MappingStrings { "MIB.IETF|BGP4-MIB.bgp4PathAttrAggregatorAS"} ]
1018 uint16 PathAttrAggregatorAS;
1019
1020 [Description (
1021 "This is the IP address of the last BGP speaker that "
1022 "performed route aggregation. A value of 0.0.0.0 indicates "
1023 "the absence of this attribute."),
1024 MappingStrings { "MIB.IETF|BGP4-MIB.bgp4PathAttrAggregatorAddr"} ]
1025 string PathAttrAggregatorAddr;
1026
1027 [Description (
1028 "This is the degree of preference calculated by the "
1029 "receiving BGP speaker for an advertised route. A value of "
1030 tony 1.1 "-1 indicates the absence of this attribute. The range of "
1031 "this attribute is defined to be -1 to 2147483647."),
1032 MappingStrings { "MIB.IETF|BGP4-MIB.bgp4PathAttrCalcLocalPref"} ]
1033 sint16 PathAttrCalcLocalPref;
1034
1035 [Description (
1036 "This is an indication of whether or not this route was "
1037 "chosen as the best BGP route. There are three possible "
1038 "values, 0 (Unknown), 1 (FALSE) and 2 (TRUE)."),
1039 ValueMap {"0", "1", "2"},
1040 Values {"Unknown", "False", "True"},
1041 MappingStrings {"MIB.IETF|BGP4-MIB.bgp4PathAttrBest"} ]
1042 uint16 PathAttrBest;
1043
1044 [Description (
1045 "This contains one or more path atributes not understood by "
1046 "this BGP speaker. It is a array of path attributes that "
1047 "are not understood. The number of attributes is placed in "
1048 "a separate property of this class, PathAttrUnknownNumber."),
1049 OctetString,
1050 MappingStrings {"MIB.IETF|BGP4-MIB.bgp4PathAttrUnknown"},
1051 tony 1.1 ModelCorrespondence {
1052 "CIM_BGPPathAttributes.PathAttrUnknownNumber"} ]
1053 string PathAttrUnknown[];
1054
1055 [Description (
1056 "The number of unknown attributes in the array, "
1057 "PathAttrUnknown."),
1058 MappingStrings {"MIB.IETF|BGP4-MIB.bgp4PathAttrUnknown"},
1059 ModelCorrespondence { "CIM_BGPPathAttributes.PathAttrUnknown"} ]
1060 uint16 PathAttrUnknownNumber;
1061 };
1062
1063
1064 // ==================================================================
1065 // BGPAttributesForRoute
1066 // ==================================================================
1067 [Association, Version ("2.7.0"), Description (
1068 "This defines the attributes that are transmitted between BGP "
1069 "peers on a per-route basis.") ]
1070 class CIM_BGPAttributesForRoute : CIM_Dependency {
1071
1072 tony 1.1 [Override ("Antecedent"), Max (1), Description (
1073 "The BGPPathAttribute object that may be associated with a "
1074 "BGPIPRoute.") ]
1075 CIM_BGPPathAttributes REF Antecedent;
1076
1077 [Override ("Dependent"), Max (1), Description (
1078 "The BGPIPRoute that may have an associated set of per-peer "
1079 "attributes.") ]
1080 CIM_BGPIPRoute REF Dependent;
1081
1082 [Description (
1083 "This defines the IP address of the peer where the path "
1084 "information was learned."),
1085 MappingStrings {"MIB.IETF|BGP4-MIB.bgp4PathAttrPeer"},
1086 ModelCorrespondence {
1087 "CIM_BGPPathAttributes.PathAttrIpAddrPrefixLen",
1088 "CIM_BGPPathAttributes.PathAttrIpAddrPrefix"} ]
1089 string PathAttrPeer;
1090
1091 [Description (
1092 "This defines the length in bits of the IP address prefix "
1093 tony 1.1 "for the property, PathAttrPeer. The range is 0 to 32."),
1094 MappingStrings {
1095 "MIB.IETF|BGP4-MIB.bgp4PathAttrIpAddrPrefixLen"},
1096 ModelCorrespondence { "CIM_BGPPathAttributes.PathAttrPeer"} ]
1097 uint8 PathAttrIPAddrPrefixLen;
1098
1099 [Description (
1100 "The IP address prefix of the property, PathAttrPeer. Its "
1101 "length is specified by the property, "
1102 "PathAttrIpAddrPrefixLen."),
1103 MappingStrings { "MIB.IETF|BGP4-MIB.bgp4PathAttrIpAddrPrefix"},
1104 ModelCorrespondence { "CIM_BGPPathAttributes.PathAttrPeer",
1105 "CIM_BGPPathAttributes.PathAttrIpAddrPrefixLen"} ]
1106 string PathAttrIPAddrPrefix;
1107 };
1108
1109
1110 // ==================================================================
1111 // BGPServiceAttributes
1112 // ==================================================================
1113 [Association, Deprecated {"No value"}, Aggregation,
1114 tony 1.1 Version ("2.7.0"), Description (
1115 "This is a specialization of the Component aggregation. This "
1116 "aggregation defines the set of BGPPathAttributes that are "
1117 "transmitted in per-path UPDATE messages. The association is "
1118 "deprecated since it is incorrectly defined as a Component "
1119 "relationship, and since the properties of BGPPathAttribute are "
1120 "path/endpoint-specific (not defined at the level of the "
1121 "Service).") ]
1122 class CIM_BGPServiceAttributes : CIM_Component {
1123
1124 [Deprecated {"No value"}, Aggregate, Override ("GroupComponent"),
1125 Max (1), Description (
1126 "The BGPService that aggregates BGPPathAttributes as part of "
1127 "its routing information.") ]
1128 CIM_BGPService REF GroupComponent;
1129
1130 [Deprecated {"No value"}, Override ("PartComponent"), Max (1),
1131 Description (
1132 "The BGP attribute, which are part-of the BGP UPDATE "
1133 "message.") ]
1134 CIM_BGPPathAttributes REF PartComponent;
1135 tony 1.1 };
1136
1137
1138 // ==================================================================
1139 // BGPEndpointStatistics
1140 // ==================================================================
1141 [Version ("2.7.0"), Description (
1142 "This class contains statistical information for a connection "
1143 "on a BGPProtocolEndpoint. It is defined as a subclass of "
1144 "StatisticalData and associated with the Endpoint using the "
1145 "relationship, ElementStatisticalData.") ]
1146 class CIM_BGPEndpointStatistics : CIM_StatisticalData {
1147
1148 [Description (
1149 "This is the number of BGP UPDATE messages received on this "
1150 "router's BGP connection. This is a 32-bit counter."),
1151 Counter,
1152 MappingStrings {"MIB.IETF|BGP4-MIB.bgpPeerInUpdates"} ]
1153 uint32 InUpdates;
1154
1155 [Description (
1156 tony 1.1 "This is the number of BGP UPDATE messages transmitted on "
1157 "this router's BGP connection. This is a 32-bit counter."),
1158 Counter,
1159 MappingStrings {"MIB.IETF|BGP4-MIB.bgpPeerOutUpdates"} ]
1160 uint32 OutUpdates;
1161
1162 [Description (
1163 "This is the total number of BGP messages received on this "
1164 "router's BGP connection. This is a 32-bit counter."),
1165 Counter,
1166 MappingStrings { "MIB.IETF|BGP4-MIB.bgpPeerInTotalMessages"} ]
1167 uint32 InTotalMessages;
1168
1169 [Description (
1170 "This is the total number of BGP messages transmitted on "
1171 "this router's BGP connection. This is a 32-bit counter."),
1172 Counter,
1173 MappingStrings { "MIB.IETF|BGP4-MIB.bgpPeerOutTotalMessages"} ]
1174 uint32 OutTotalMessages;
1175
1176 [Description (
1177 tony 1.1 "This contains the last error code and error subcode for "
1178 "this router's BGP connection. If no error has occurred, "
1179 "then each integer in the array is zero."),
1180 MappingStrings {"MIB.IETF|BGP4-MIB.bgpPeerLastError"} ]
1181 uint8 LastError [2];
1182
1183 [Description (
1184 "This contains the total number of times that the BGP Finite "
1185 "State Machine has transitioned into the established state "
1186 "for this router's BGP connection. This is a 32-bit "
1187 "counter."),
1188 Counter,
1189 MappingStrings {
1190 "MIB.IETF|BGP4-MIB.bgpPeerFsmEstablishedTransitions"} ]
1191 uint32 FsmEstablishedTransitions;
1192
1193 [Description (
1194 "This indicates how long, in seconds, this peer has been in "
1195 "the established state, or how long since this peer was last "
1196 "in the established state. It is set to zero when a new "
1197 "peer is configured or when the router is booted. This has "
1198 tony 1.1 "the semantics of a 32-bit gauge."),
1199 Units ("Seconds"), Gauge,
1200 MappingStrings { "MIB.IETF|BGP4-MIB.bgpPeerFsmEstablishedTime"} ]
1201 uint32 FsmEstablishedTime;
1202
1203 [Description (
1204 "This defines the time in seconds since the last BGP UPDATE "
1205 "message was received from the peer. This has the semantics "
1206 "of a 32-bit gauge."),
1207 Units ("Seconds"), Gauge,
1208 MappingStrings { "MIB.IETF|BGP4-MIB.bgpPeerInUpdateElapsedTime"} ]
1209 uint32 InUpdateElapsedTime;
1210 };
1211
1212
1213 // ==================================================================
1214 // BGPStatistics
1215 // ==================================================================
1216 [Deprecated {"CIM_BGPEndpointStatistics"}, Version ("2.7.0"),
1217 Description (
1218 "This class contains statistical information for a Service's "
1219 tony 1.1 "sessions. It is deprecated since the statistics are defined "
1220 "in the BGP4 MIB at the level of individual peers/ endpoints.") ]
1221 class CIM_BGPStatistics : CIM_ServiceStatisticalInformation {
1222
1223 [Deprecated {"CIM_BGPEndpointStatistics.InUpdates"},
1224 Description (
1225 "This is the number of BGP UPDATE messages received on this "
1226 "router's BGP connection. This is a 32-bit counter."),
1227 Counter,
1228 MappingStrings {"MIB.IETF|BGP4-MIB.bgpPeerInUpdates"} ]
1229 uint32 InUpdates;
1230
1231 [Deprecated {"CIM_BGPEndpointStatistics.OutUpdates"},
1232 Description (
1233 "This is the number of BGP UPDATE messages transmitted on "
1234 "this router's BGP connection. This is a 32-bit counter."),
1235 Counter,
1236 MappingStrings {"MIB.IETF|BGP4-MIB.bgpPeerOutUpdates"} ]
1237 uint32 OutUpdates;
1238
1239 [Deprecated {"CIM_BGPEndpointStatistics.InTotalMessages"},
1240 tony 1.1 Description (
1241 "This is the total number of BGP messages received on this "
1242 "router's BGP connection. This is a 32-bit counter."),
1243 Counter,
1244 MappingStrings { "MIB.IETF|BGP4-MIB.bgpPeerInTotalMessages"} ]
1245 uint32 InTotalMessages;
1246
1247 [Deprecated {"CIM_BGPEndpointStatistics.OutTotalMessages"},
1248 Description (
1249 "This is the total number of BGP messages transmitted on "
1250 "this router's BGP connection. This is a 32-bit counter."),
1251 Counter,
1252 MappingStrings { "MIB.IETF|BGP4-MIB.bgpPeerOutTotalMessages"} ]
1253 uint32 OutTotalMessages;
1254
1255 [Deprecated {"CIM_BGPEndpointStatistics.LastError"},
1256 Description (
1257 "This contains the last error code and error subcode for "
1258 "this router's BGP connection. If no error has occurred, "
1259 "then each integer in the array is zero."),
1260 MappingStrings {"MIB.IETF|BGP4-MIB.bgpPeerLastError"} ]
1261 tony 1.1 uint8 LastError [2];
1262
1263 [Deprecated
1264 {"CIM_BGPEndpointStatistics.FsmEstablishedTransitions"},
1265 Description (
1266 "This contains the total number of times that the BGP Finite "
1267 "State Machine has transitioned into the established state "
1268 "for this router's BGP connection. This is a 32-bit "
1269 "counter."),
1270 Counter,
1271 MappingStrings {
1272 "MIB.IETF|BGP4-MIB.bgpPeerFsmEstablishedTransitions"} ]
1273 uint32 FsmEstablishedTransitions;
1274
1275 [Deprecated {"CIM_BGPEndpointStatistics.FsmEstablishedTime"},
1276 Description (
1277 "This indicates how long, in seconds, this peer has been in "
1278 "the established state, or how long since this peer was last "
1279 "in the established state. It is set to zero when a new "
1280 "peer is configured or when the router is booted. This has "
1281 "the semantics of a 32-bit gauge."),
1282 tony 1.1 Units ("Seconds"), Gauge,
1283 MappingStrings { "MIB.IETF|BGP4-MIB.bgpPeerFsmEstablishedTime"} ]
1284 uint32 FsmEstablishedTime;
1285
1286 [Deprecated {"CIM_BGPEndpointStatistics.InUpdateEstablishedTime"},
1287 Description (
1288 "This defines the time in seconds since the last BGP UPDATE "
1289 "message was received from the peer. This has the semantics "
1290 "of a 32-bit gauge."),
1291 Units ("Seconds"), Gauge,
1292 MappingStrings { "MIB.IETF|BGP4-MIB.bgpPeerInUpdateElapsedTime"} ]
1293 uint32 InUpdateElapsedTime;
1294 };
1295
1296
1297 // ==================================================================
1298 // BGPServiceStatistics
1299 // ==================================================================
1300 [Association, Deprecated {"CIM_ElementStatisticalData"},
1301 Version ("2.7.0"), Description (
1302 "This association defines statistics collected for a BGP "
1303 tony 1.1 "Service. The relationship is deprecated since the class "
1304 "BGPStatistics is deprecated. It is incorrectly associated "
1305 "with a BGPService, but should instead be associated with a "
1306 "BGPProtocolEndpoint using the ElementStatisticalData "
1307 "relationship.") ]
1308 class CIM_BGPServiceStatistics : CIM_ServiceStatistics {
1309
1310 [Deprecated {"CIM_ElementStatisticalData.Stats"},
1311 Override ("Stats"), Max (1), Description (
1312 "The statistics object for the BGP session.") ]
1313 CIM_BGPStatistics REF Stats;
1314
1315 [Deprecated {"CIM_ElementStatisticalData.ManagedElement"},
1316 Override ("Element"), Min (1), Max (1), Description (
1317 "The BGPService for which statistics are being gathered.") ]
1318 CIM_BGPService REF Element;
1319 };
1320
1321
1322 // ===================================================================
1323 // end of file
1324 tony 1.1 // ===================================================================
|