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

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

No CVS admin address has been configured
Powered by
ViewCVS 0.9.2