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

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

No CVS admin address has been configured
Powered by
ViewCVS 0.9.2