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

File: [Pegasus] / pegasus / Schemas / CIMPrelim28 / Attic / Network28_MPLS.mof (download)
Revision: 1.2, Thu Feb 24 20:47:29 2005 UTC (19 years, 3 months ago) by a.dunfey
Branch: MAIN
CVS Tags: TASK-PEP362_RestfulService-merged_out_from_trunk, TASK-PEP348_SCMO-merged_out_from_trunk, TASK-PEP317_pullop-merged_out_from_trunk, TASK-PEP317_pullop-merged_in_to_trunk, TASK-PEP311_WSMan-root, TASK-PEP311_WSMan-branch, RELEASE_2_5_0-RC1, HPUX_TEST, HEAD
Changes since 1.1: +0 -0 lines
FILE REMOVED
PEP#: 215
TITLE: Remove old schemas

DESCRIPTION:

Removing old, unneeded schema files from the repository:

CIM 2.7
CIM 2.7.1 Preliminary
CIM 2.8 Preliminary
CIM 2.9 Preliminary

// ===================================================================
// Title:       Network MPLS 2.8 Preliminary
// Filename:    Network28_MPLS.mof
// Version:     2.8
// Status:      Preliminary
// Date:        August 18, 2003
// ===================================================================
// Copyright 1998-2003 Distributed Management Task Force, Inc. (DMTF).
// All rights reserved.
// DMTF is a not-for-profit association of industry members dedicated
// to promoting enterprise and systems management and interoperability.
// DMTF specifications and documents may be reproduced for uses
// consistent with this purpose by members and non-members,
// provided that correct attribution is given.
// As DMTF specifications may be revised from time to time,
// the particular version and release date should always be noted.
// 
// Implementation of certain elements of this standard or proposed
// standard may be subject to third party patent rights, including
// provisional patent rights (herein "patent rights"). DMTF makes
// no representations to users of the standard as to the existence
// of such rights, and is not responsible to recognize, disclose, or
// identify any or all such third party patent right, owners or
// claimants, nor for any incomplete or inaccurate identification or
// disclosure of such rights, owners or claimants. DMTF shall have no
// liability to any party, in any manner or circumstance, under any
// legal theory whatsoever, for failure to recognize, disclose, or
// identify any such third party patent rights, or for such party's
// reliance on the standard or incorporation thereof in its product,
// protocols or testing procedures. DMTF shall have no liability to
// any party implementing such standard, whether such implementation
// is foreseeable or not, nor to any patent owner or claimant, and shall
// have no liability or responsibility for costs or losses incurred if
// a standard is withdrawn or modified after publication, and shall be
// indemnified and held harmless by any party implementing the
// standard from any and all claims of infringement by a patent owner
// for such implementations.
// 
// For information about patents held by third-parties which have
// notified the DMTF that, in their opinion, such patent may relate to
// or impact implementations of DMTF standards, visit
// http://www.dmtf.org/about/policies/disclosures.php.
// ===================================================================
// Description: The Network Model extends the management concepts to
//              represent protocol interfaces and network/protocol
//              services.  This file defines concepts in support of
//              managing MPLS (Multi-Protocol Label Switching).
// 
//              The object classes below are listed in an order that
//              avoids forward references. Required objects, defined
//              by other working groups, are omitted.
// ==================================================================
// Change Log for v2.8 Preliminary
// CR1061 - Add the MPLS Sub-Model that was removed from 2.7 Final.
// CR1128 - Change subclassing from CIM_Dependency to
//          CIM_HostedDependency for identified classes. This is
//          needed as a result of the introduction of HostedDependency
//          by SysDev
// 
// Change Log for v2.7.1
// CR920 - Add missing parenthesis to the Description for MPLSTunnel.
//         IncludeAnyAffinity
// 
// Change Log for v2.7
// CR790 - Add classes to support MPLS
// CR805 - Add MPLSSpecifiedRoute, MPLSSpecifiedNextHop,
//         MPSLComputedNextHop, and RouteSpecifiedForLSP
// CR853 - MPLS Model changes: MPLSQoSPRTrfcProf should subclass from
//         SettingData and several property names are updated in
//         MPLSSegmentStats
// CR905 - MPLS cleanup and updates
//         Add - MPLSTunnel, MPLSReverseDirectionTunnel,
//          MPLSTunnelHops, MPLSNextTunnelHop,
//          MPLSFecOfTunnel and MPLSTunnelStats
//         Remove - MPLSSpecifiedRoute, MPLSSpecifedNextHop,
//          MPLSComputedNextHop, RouteSpecifiedForLSP,
//          MPLSLSPTunnel, MPLSTrafficTrunk,
//          MPLSFecOfTrafficTrunk, MPLSFecOfLSP
//          and MPLSBiDirectionalTrunks
// CR907 - MPLS cleanup and updates
//         Add - MPLSTunnelHop and HostedMPLSTunnelHop
//         Rename MPLSTunnelHops to MPLSHopInTunnel
//         Rename MPLSNextTunnelHop to MPLSNextHopInTunnel
//         Change reference from MPLSTrafficTrunk to MPLSTunnel
//          in MPLSCurrentlyAssignedLSP and MPLSBackupLSP
//         Rename MPLSTunnel.TunnelingSignalingProtocol to
//          TunnelSignalingProtocol
//         Remove .IsPinned, .LocalProtectionAvailable, .IsAdaptive,
//          and .IsDynamicallyRouted properties from MPLSLSP
//         Promote properties of MPLSTEService to MPLSService,
//          and remove MPLSTEService
//         Rename MPLSTunnelStats.MPLSTunnelStateTransitions to
//          TunnelStateTransitions
// 
// ===================================================================

#pragma Locale ("en_US")

// ==================================================================
// MPLSService
// ==================================================================
   [Experimental, Version ("2.7.1000"), Description (
       "This object class contains properties relating to the overall "
       "operation of MPLS on a router.  This service is weak to the "
       "router (modeled as a ComputerSystem) via the association "
       "CIM_HostedService.") ]
class CIM_MPLSService: CIM_Service {

      [Description (
          "Path computation may be configured to be more or less "
          "reactive to network state.  It may be desirable to have "
          "different values on different LSRs.  Also, certain tunnels "
          "may not be re-optimized.  This property specifies the "
          "re-optimization frequency for the LSR, in seconds.  Default "
          "is 3600 (1 hour).  The maximum interval is 604800 seconds "
          "(1 week).  A value of 0 disables re- optimization."), 
       Units ("Seconds"), MaxValue (604800) ]
   uint32 ReoptimizationFreq = 3600;

      [Description (
          "Specifies the time interval in seconds at which traffic "
          "engineering information is flooded.  Shorter intervals lead "
          "to more control overhead, more traffic in the network and "
          "more cycles wasted in processing this information at the "
          "routers.  On the other hand longer intervals, make the "
          "route chosen for the tunnels to be less optimal with "
          "respect to the state of the network."), 
       Units ("Seconds") ]
   uint16 FloodingInterval;

      [Description (
          "This property describes what happens when the MPLSTEService "
          "obtains knowledge about a new link coming into operation.  "
          "The value 'OnLinkUp' (1) denotes that immediately after "
          "detecting the new link, a re-optimization step is "
          "performed.  'NextTimeInSchedule' (2) waits until the next "
          "time a re- optimization needs to take place.  The frequency "
          "is defined by the ReoptimizationFreq property.  And, "
          "'Manual Trigger' (3) means the re-optimization MUST be "
          "triggered by manual interaction such as a human operator "
          "triggering the re-optimization."), 
       ValueMap {"0", "1", "2", "3"}, 
       Values {"Unknown", "OnLinkUp", "NextTimeInSchedule",
          "ManualTrigger"} ]
   uint16 ReoptimizationLinkUp;
};


// ==================================================================
// MPLSCapabilities
// ==================================================================
   [Experimental, Version ("2.7.1000"), Description (
       "This class specifies the capabilities of an MPLSService or "
       "MPLSProtocolEndpoint (interface) on a Label Switched Router "
       "(LSR).  The association CIM_ElementCapabilities relates the "
       "instance with its MPLS Service and/or Endpoint.") ]
class CIM_MPLSCapabilities : CIM_Capabilities {

      [Description (
          "This is the minimum value of an MPLS label that this "
          "Endpoint or MPLSService is willing to receive.  The values "
          "of an MPLSProtocolEndpoint may overrule the values "
          "specified for the LSR as a whole, based on the Endpoint's "
          "boolean property OverruleLSR."), 
       MappingStrings { 
          "MIB.IETF|MPLS-LSR-MIB.MPLSInterfaceLabelMinIn"} ]
   uint32 LabelMinIn;

      [Description (
          "This is the maximum value of an MPLS label that this "
          "Endpoint or MPLSService is willing to receive.  The values "
          "of an MPLSProtocolEndpoint may overrule the values "
          "specified for the LSR as a whole, based on the Endpoint's "
          "boolean property OverruleLSR."), 
       MappingStrings { 
          "MIB.IETF|MPLS-LSR-MIB.MPLSInterfaceLabelMaxIn"} ]
   uint32 LabelMaxIn;

      [Description (
          "This is the minimum value of an MPLS label that this "
          "Endpoint or MPLSService is willing to send.  The values of "
          "an MPLSProtocolEndpoint may overrule the values specified "
          "for the LSR as a whole, based on the Endpoint's boolean "
          "property OverruleLSR."), 
       MappingStrings { 
          "MIB.IETF|MPLS-LSR-MIB.MPLSInterfaceLabelMinOut"} ]
   uint32 LabelMinOut;

      [Description (
          "This is the maximum value of an MPLS label that this "
          "Endpoint or MPLSService is willing to send.  The values of "
          "an MPLSProtocolEndpoint may overrule the values specified "
          "for the LSR as a whole, based on the Endpoint's boolean "
          "property OverruleLSR."), 
       MappingStrings { 
          "MIB.IETF|MPLS-LSR-MIB.MPLSInterfaceLabelMaxOut"} ]
   uint32 LabelMaxOut;
};


// ==================================================================
// MPLSProtocolEndpointStats
// ==================================================================
   [Experimental, Version ("2.7.1000"), Description (
       "This class represents the statistics for an MPLSProtocol "
       "Endpoint.  The statistics are associated with the Endpoint "
       "using the relationship CIM_ElementStatisticalData.") ]
class CIM_MPLSProtocolEndpointStats : CIM_StatisticalData {

      [Description (
          "This object contains the number of top-most labels that are "
          "in use at this point in time on this interface in the "
          "incoming direction."), 
       Gauge, 
       MappingStrings { 
          "MIB.IETF|MPLS-LSR-MIB.MPLSInterfaceInLabelsUsed"} ]
   uint32 InLabelsUsed;

      [Description (
          "This object contains the number of top-most labels that are "
          "in use at this point in time on this interface in the "
          "outgoing direction."), 
       Gauge, 
       MappingStrings { 
          "MIB.IETF|MPLS-LSR-MIB.MPLSInterfaceOutLabelsUsed"} ]
   uint32 OutLabelsUsed;

      [Description (
          "This object counts the number of labeled packets that have "
          "been received on this interface and were discarded because "
          "there was no matching cross-connect entry."), 
       Counter, 
       MappingStrings { 
          "MIB.IETF|MPLS-LSR-MIB.MPLSInterfaceFailedLabelLookup"} ]
   uint32 FailedLabelLookups;

      [Description (
          "This object counts the number of outgoing MPLS packets that "
          "required fragmentation before transmission on this "
          "interface."), 
       Counter, 
       MappingStrings { 
          "MIB.IETF|MPLS-LSR-MIB.MPLSInterfaceOutFragments"} ]
   uint32 NumberOfPacketsFragmented;
};


// ==================================================================
// MPLSLSP
// ==================================================================
   [Experimental, Version ("2.7.1000"), Description (
       "This class is used to represent an MPLS Label Switch Path "
       "(LSP).  This is usually a path from an ingress to an egress "
       "label edge router, through a sequence of label switch "
       "routers.  Sometimes an LSP is a series of hop-by-hop LSPs that "
       "go from the ingress to egress LSRs.  For example, using "
       "unordered downstream unsolicited mode in LDP, the result is a "
       "series of 'mini' LSPs along the path, each with incoming and "
       "outgoing labels, and a FEC to accept traffic onto the 'mini' "
       "LSP at each hop.\n"
       "\n"
       "An instance describes either an existing LSP, or the user's "
       "configurations of one to be established in the network.  The "
       "boolean property, Established, indicates the state of the instance.\n"
       "\n"
       "Note that MPLSLSP subclasses from EnabledLogicalElement.  This "
       "allows (via inherited properties) the explicit enabling and "
       "disabling of the path, as well as the ability to request that "
       "the path be 'tested' or shut down.") ]
class CIM_MPLSLSP : CIM_EnabledLogicalElement {

      [Key, Description (
          "InstanceID opaquely identifies a unique instance of "
          "MPLSLSP.  The InstanceID must be unique within a "
          "namespace.  In order to ensure uniqueness, the value of "
          "InstanceID should be constructed in the following manner: "
          "The instance id consists of the IPAddress of the ingress "
          "LSR, combined with the LocalLSPId found in this class.") ]
   string InstanceID;

      [Write, Description (
          "Boolean indicating whether or not the LSP currently exists "
          "in the network.  Note that if the LSP is not established, "
          "then the OperationalStatus properties inherited from "
          "Managed SystemElement have no meaning.") ]
   boolean Established;

      [Description (
          "Property to indicate the nesting level of this LSP.  Note "
          "that this a shortcut counting the number of instances of "
          "the MPLSLSPInLSP association.  It is advantageous to "
          "determine the nesting level directly, instead of traversing "
          "several associations to do so.") ]
   uint16 NestingLevel;

      [Required, Description (
          "Property indicating a unique (per ingress LSR) LSP ID.") ]
   uint16 LocalLSPId;

      [Description (
          "The IP addresses of the ingress node(s) (LERs) of the "
          "path.  This is an array to allow for multipoint LSPs.") ]
   string IngressIPAddresses[];

      [Description (
          "The IP addresses of the egress node(s) (LERs) of the path.  "
          "This is an array to allow for multipoint LSPs.") ]
   string EgressIPAddresses[];

      [Description (
          "Flag to indicate that the LSP ingress node may choose to "
          "reroute this LSP without tearing it down.") ]
   boolean IngressMayReroute;

      [Description (
          "Flag to indicate that this LSP should be restored "
          "automatically after a failure occurs.") ]
   boolean IsPersistent;
};


// ==================================================================
// MPLSTunnel
// ==================================================================
   [Experimental, Version ("2.7.1000"), Description (
       "This class represents an MPLS traffic engineering tunnel as "
       "defined in RFC 3031.") ]
class CIM_MPLSTunnel : CIM_EnabledLogicalElement {

      [Key, Description (
          "InstanceID opaquely identifies a unique instance of "
          "SettingData.  The InstanceID must be unique within a "
          "namespace.  In order to ensure uniqueness, the value of "
          "InstanceID SHOULD be constructed in the following manner:\n"
          "<Vendor ID><ID>\n"
          "<Vendor ID> MUST include a copyrighted, trademarked or "
          "otherwise unique name that is owned by the business entity "
          "or a registered ID that is assigned to the business entity "
          "that is defining the InstanceID.  (This is similar to the "
          "<Schema Name>_<Class Name> structure of Schema class "
          "names.) The purpose of <Vendor ID> is to ensure that <ID> "
          "is truly unique across multiple vendor implementations.  If "
          "such a name is not used, the defining entity MUST assure "
          "that the <ID> portion of the Instance ID is unique when "
          "compared with other instance providers.  For DMTF defined "
          "instances, the <Vendor ID> is 'CIM'.\n"
          "<ID> MUST include a vendor specified unique identifier.") ]
   string InstanceID;

      [Write, Description (
          "Boolean indicating whether or not the tunnel is currently "
          "signaled.  Note that if the tunnel is not established, then "
          "the OperationalStatus properties inherited from Managed "
          "SystemElement have no meaning.") ]
   boolean Established;

      [Description (
          "The IsResilient property indicates the recovery procedure "
          "to be applied to tunnels whose paths are impacted by "
          "faults.  More specifically, it contains a boolean value "
          "that determines whether the tunnel is to be rerouted or "
          "not, when segments of its path fail.  If set to true, the "
          "tunnel should be rerouted in case of failure; if false, it "
          "should not (which means that other means are applied, e.g.  "
          "lower layer technologies for rerouting.)") ]
   boolean IsResilient;

      [Description (
          "The bandwidth property denotes the complete bandwidth (in "
          "kilobits per second) required to be transported by the "
          "tunnel.  Note, that the bandwidth is not directly "
          "implemented/ configured in a router, but the MPLSTunnel's "
          "Reserved Bandwidth property might be derived from this "
          "information."), 
       Units ("KiloBits per Second") ]
   uint32 Bandwidth;

      [Description (
          "Reserved bandwidth for this tunnel in kilobits per second.  "
          "In a load sharing environment, the bandwidth on each tunnel "
          "is set to be proportional to how traffic should be "
          "balanced.  An LSR then load-shares into the tunnels based "
          "on the aggregate bandwidth.  Note that it is possible to "
          "signal 0 bandwidth for a pure best-effort tunnel."), 
       Units ("KiloBits per Second") ]
   uint32 ReservedBandwidth;

      [Description (
          "Active bandwidth for this tunnel in kilobits per second.  "
          "If the tunnel is not yet Established, then this property "
          "has no meaning.  Knowing current Bandwidth is important "
          "because several path options may be configured for the "
          "tunnel.  Note that it is possible to signal 0 bandwidth for "
          "a pure best- effort tunnel."), 
       Units ("KiloBits per Second") ]
   uint32 ActiveBandwidth;

      [Description (
          "Due to changes in network and traffic characteristics, "
          "there may be a need to periodically change the paths of "
          "tunnels for optimization purposes.  This should not be done "
          "too frequently as it could adversely affect the stability "
          "of the network.  This property indicates how often such "
          "reoptimization should be performed for a specific tunnel.  "
          "Note that the class, CIM_MPLSTEService, also has a "
          "reoptimization frequency property.  The frequency specified "
          "in this class is specific to a particular tunnel, whereas "
          "the MPLSTEService's frequency is per service, on a Label "
          "Switched Router."), 
       Units ("Seconds"), MaxValue (604800) ]
   uint32 ReoptimizationFreq = 3600;

      [Description (
          "Indicates whether the tunnel is a candidate for "
          "re-optimization at all.  If true the ReoptimizationFreq "
          "property should be taken into account.  By default, a "
          "tunnel is re-optimized periodically.") ]
   boolean Lockdown = true;

      [Description (
          "Resource classes and resource class affinities are "
          "described in [RFC2702].  Resource classes can be associated "
          "with links and advertised in routing protocols.  Resource "
          "class affinities are used by RSVP-TE [RFC3209].  In order "
          "to be used, a link MUST pass three tests.  One of them is "
          "against this property.\n"
          "\n"
          "ExcludeAllAffinity is one type of resource class affinity.  "
          "It specifies a set of attribute filters for the tunnel, and "
          "a match on any of the filters renders a link unacceptable "
          "(it is excluded for consideration).  This test takes the form,\n"
          "(MPLSProtocolEndpoint.ResourceClass & ExcludeAllAffinity) "
          "== 0."), 
       MappingStrings { 
          "MIB.IETF|MPLS-TE-MIB.MPLSTunnelExcludeAllAffinity"} ]
   uint32 ExcludeAllAffinity;

      [Description (
          "Resource classes and resource class affinities are "
          "described in [RFC2702].  Resource classes can be associated "
          "with links and advertised in routing protocols.  Resource "
          "class affinities are used by RSVP-TE [RFC3209].  In order "
          "to be used, a link MUST pass three tests.  One of them "
          "against this property.\n"
          "\n"
          "IncludeAllAffinity is one type of resource class affinity.  "
          "It specifies a set of attribute filters for the tunnel, and "
          "all of the filters must match for a link to be acceptable "
          "(i.e., pass this test).  If IncludeAllAffinity is zero, "
          "then the test automatically passes.  The test takes the form,\n"
          "(IncludeAllAffinity == 0) || "
          "(((MPLSProtocolEndpoint.ResourceClass & IncludeAllAffinity) "
          "^ IncludeAllAffinity) == 0)"), 
       MappingStrings { 
          "MIB.IETF|MPLS-TE-MIB.MPLSTunnelIncludeAllAffinity"} ]
   uint32 IncludeAllAffinity;

      [Description (
          "Resource classes and resource class affinities are "
          "described in [RFC2702].  Resource classes can be associated "
          "with links and advertised in routing protocols.  Resource "
          "class affinities are used by RSVP-TE [RFC3209].  In order "
          "to be used, a link MUST pass three tests.  One of them "
          "against this property.\n"
          "\n"
          "IncludeAnyAffinity is one type of resource class affinity.  "
          "It specifies a set of attribute filters for the tunnel, and "
          "any of the filters must match for a link to be acceptable "
          "(i.e., pass this test).  If IncludeAllAffinity is zero, "
          "then the test automatically passes.  The test takes the form,\n"
          "(IncludeAnyAffinity == 0) || "
          "((MPLSProtocolEndpoint.ResourceClass & IncludeAnyAffinity) "
          "!= 0)"), 
       MappingStrings { 
          "MIB.IETF|MPLS-TE-MIB.MPLSTunnelIncludeAnyAffinity"} ]
   uint32 IncludeAnyAffinity;

      [Description (
          "Property to indicate the holding priority of an established "
          "tunnel.  If the tunnel is not yet established, this "
          "property has no meaning.  A new tunnel is allowed to "
          "preempt the resources of this tunnel only if its "
          "SetupPriority is smaller than the HoldingPriority of the "
          "established one.  (See RFC3209 for additional information.) "
          "The value 0 is the highest priority."), 
       MinValue (0), MaxValue (7), 
       MappingStrings {"MIB.IETF|MPLS-TE-MIB.mplsTunnelHoldingPrio"} ]
   uint8 HoldingPriority;

      [Description (
          "Guaranteed bandwidth tunnels can have setup and preemption "
          "priorities associated with them.  These priorities "
          "determine if an existing tunnel can be preempted by a new "
          "one.  The SetupPriority of the new tunnel is compared to "
          "the Holding Priority of the established one, to determine "
          "if the new tunnel can preempt the existing one.  It does "
          "preempt if the SetupPriority in smaller than the "
          "HoldingPriority.  Note that the value 0 is the highest "
          "priority."), 
       MinValue (0), MaxValue (7), 
       MappingStrings {"MIB.IETF|MPLS-TE-MIB.mplsTunnelSetupPrio"} ]
   uint8 SetupPriority;

      [Description (
          "Flag to indicate that this tunnel should be restored "
          "automatically after a failure occurs.") ]
   boolean IsPersistent;

      [Description (
          "Flag to indicate whether the loosely-routed hops of this "
          "tunnel are to be pinned.") ]
   boolean IsPinned;

      [Description (
          "Flag to indicate that transit routers are permitted to use "
          "a local repair mechanism which may result in violation of "
          "the explicit routing of this tunnel.  When a fault is "
          "detected on an adjacent downstream link or node, a transit "
          "router can reroute traffic for fast service restoration.") ]
   boolean LocalProtectionAvailable;

      [Description (
          "In some situations, it is necessary to reroute a tunnel "
          "without disrupting traffic.  This flag indicates whether "
          "the tunnel's route is adaptive.") ]
   boolean IsAdaptive;

      [Description (
          "Flag to indicate whether the route for the tunnel is "
          "selected dynamically based on routing protocols - as "
          "opposed to being specified 'statically' via configuration, "
          "where a network operator or other external entity specifies "
          "the path of the tunnel hop by hop.") ]
   boolean IsDynamicallyRouted;

      [Description (
          "Flag to indicate that the tunnel ingress node may choose to "
          "reroute this tunnel without tearing it down.") ]
   boolean IngressMayReroute;

      [Description (
          "The purpose of this object is to uniquely identity a tunnel "
          "within a network.  When the MPLS signaling protocol is "
          "rsvp(3), this value SHOULD mimic the Extended Tunnel Id "
          "field in the SESSION object.  When the MPLS signaling "
          "protoocol is crldp(4), this value SHOULD mimic the Ingress "
          "LSR Router ID field in the LSPID TLV object."), 
       ModelCorrespondence { 
          "CIM_MPLSTunnel.TunnelingSignalingProtocol"} ]
   uint32 IngressLSRId;

      [Description (
          "ID of egress LSR.") ]
   uint32 EgressLSRId;

      [Override ("ElementName"), Description (
          "The canonical name assigned to the tunnel.  This name can "
          "be used to refer to the tunnel on the LSR's console port.") ]
   string ElementName;

      [Description (
          "The signaling protocol, if any, which was used to setup "
          "this tunnel."), 
       ValueMap {"0", "1", "2", "3", "4"}, 
       Values {"Unknown", "Other", "None", "RSVP", "CRLDP"} ]
   uint8 TunnelSignalingProtocol;

      [Description (
          "Indicates which protocol created and is responsible for "
          "managing this tunnel.  Values rsvp(3) and crldp(4) should "
          "NOT be used at the head-end of an MPLS tunnel."), 
       ValueMap {"0", "1", "2", "3", "4", "5"}, 
       Values {"Unknown", "Other", "Admin", "RSVP", "CRDLP",
           "Policy Agent"} ]
   uint8 TunnelManagementOwner;

      [Description (
          "This value represents the priority for a tunnel in "
          "descending order, with 0 indicating the lowest priority, "
          "within a group of tunnels used for redundancy/load "
          "sharing.  Tunnel group priorities are used to denote the "
          "priority at which a particular tunnel instance will "
          "supercede another.  Instances of tunnels containing the "
          "same TunnelInstancePriority will be used for load sharing.") ]
   uint32 TunnelInstancePriority ;

      [Description (
          "This property signifies the role that this tunnel "
          "entry/instance represents.  The value MUST be set to "
          "head(2) at the originating point of the tunnel, to "
          "transit(3) at transit points along the tunnel (if transit "
          "points are supported), and to tail(4) at the terminating "
          "point of the tunnel (if tunnel tails are supported)."), 
       ValueMap {"0", "2", "3", "4"}, 
       Values {"Unknown", "Head", "Transit", "Tail"} ]
   uint16 TunnelRole;
};


// ==================================================================
// MPLSReverseDirectionTunnel
// ==================================================================
   [Association, Experimental, Version ("2.7.1000"), Description (
       "Tunnels are unidirectional.  This association relates two TE "
       "tunnels that carry traffic in reverse directions, creating a "
       "bi-directional connection.") ]
class CIM_MPLSReverseDirectionTunnel : CIM_Dependency {

      [Override ("Antecedent"), Max (1), Description (
          "An MPLSTunnel, which operates in the reverse direction of "
          "the Dependent reference.") ]
   CIM_MPLSTunnel REF Antecedent;

      [Override ("Dependent"), Max (1), Description (
          "An MPLSTunnel, which operates in the reverse direction of "
          "the Antecedent reference.") ]
   CIM_MPLSTunnel REF Dependent;
};


// ==================================================================
// MPLSTunnelHop
// ==================================================================
   [Experimental, Version ("2.7.1000"), Description (
       "A destination in an MPLS tunnel.  This may be specified by the "
       "user, calculated for the tunnel or actually in use.  These "
       "different aspects are indicated by the HopDerivation "
       "enumeration.") ]
class CIM_MPLSTunnelHop : CIM_RemoteServiceAccessPoint {

      [Description (
          "The method used to determine the destination."), 
       ValueMap {"0", "2", "3"}, 
       Values {"Unknown", "User", "Calculated"} ]
   uint16 HopDerivation;
};


// ==================================================================
// MPLSHopInTunnel
// ==================================================================
   [Association, Experimental, Version ("2.7.1000"), Description (
       "This association represents the relationship between the "
       "tunnel head-end and the first hop in the tunnel's path.  The "
       "hop may be of type Specified, Computed, or Actual.") ]
class CIM_MPLSHopInTunnel : CIM_Dependency {

      [Override ("Antecedent"), Description (
          "The head-end of an MPLS traffic engineering tunnel.") ]
   CIM_MPLSTunnelHop REF Antecedent;

      [Override ("Dependent"), Description (
          "The MPLSTunnel whose first hop is described.") ]
   CIM_MPLSTunnel REF Dependent;
};


// ==================================================================
// MPLSNextHopInTunnel
// ==================================================================
   [Association, Experimental, Version ("2.7.1000"), Description (
       "This association represents the relationship between two "
       "consecutive tunnels hops.") ]
class CIM_MPLSNextHopInTunnel : CIM_Dependency {

      [Override ("Antecedent"), Max (1), Description (
          "Current MPLSTunnel hop.") ]
   CIM_MPLSTunnelHop REF Antecedent;

      [Override ("Dependent"), Max (1), Description (
          "Next MPLSTunnel hop for the traversed path.") ]
   CIM_MPLSTunnelHop REF Dependent;
};


// ==================================================================
// HostedMPLSTunnelHop
// ==================================================================
   [Association, Experimental, Version ("2.7.1000"), Description (
       "HostedMPLSTunnelHop defines a MPLSTunnelHop in the context of "
       "a scoping AutonomousSystem.  It represents a MPLSTunnelHop "
       "that only has meaning in the context of an AutonomousSystem.") ]
class CIM_HostedMPLSTunnelHop : CIM_HostedDependency {

      [Override ("Antecedent"), Min (1), Max (1), Description (
          "The scoping system.") ]
   CIM_AutonomousSystem REF Antecedent;

      [Override ("Dependent"), Description (
          "The collection defined in the context of a system.") ]
   CIM_MPLSTunnelHop REF Dependent;
};


// ==================================================================
// MPLSFecOfTunnel
// ==================================================================
   [Association, Experimental, Version ("2.7.1000"), Description (
       "This association defines the forwarding equivalency class "
       "(FEC) for a traffic engineering tunnel.  It is typically just "
       "an IP destination address - and can be defined using a "
       "FilterList.  Although this is not truly a filter on the "
       "tunnel, the FilterList class is reused to describe the traffic "
       "on the tunnel.") ]
class CIM_MPLSFecOfTunnel : CIM_Dependency {

      [Override ("Antecedent"), Max (1), Description (
          "The FilterList defining the FEC of the MPLSTunnel.") ]
   CIM_FilterList REF Antecedent;

      [Override ("Dependent"), Description (
          "The MPLSTunnel.") ]
   CIM_MPLSTunnel REF Dependent;
};


// ==================================================================
// MPLSTunnelStats
// ==================================================================
   [Experimental, Version ("2.7.1000"), Description (
       "This class represents the statistics for an MPLSTunnel.  The "
       "statistics are associated to the tunnel using the "
       "relationship, CIM_ElementStatisticalData.") ]
class CIM_MPLSTunnelStats : CIM_StatisticalData {

      [Description (
          "Specifies the total time the primary tunnel has been "
          "active.  A primary tunnel is found/designated in situations "
          "where multiple tunnels exist - i.e., when parallel or "
          "backup tunnels are defined."), 
       Units ("Hundredths of a Second"), Counter, MaxValue (4294967295), 
       MappingStrings { "MIB.IETF|MPLS-TE-MIB.MPLSTunnelPrimaryTimeUp"} ]
   uint32 TunnelPrimaryTimeUp;

      [Description (
          "Specifies the number of times the paths have changed for "
          "this tunnel."), 
       Counter, 
       MappingStrings { "MIB.IETF|MPLS-TE-MIB.MPLSTunnelPathChanges"} ]
   uint32 TunnelPathChanges;

      [Description (
          "Specifies the time since the last path change for this "
          "tunnel."), 
       Units ("Hundredths of a Second"), Counter, MaxValue (4294967295), 
       MappingStrings { 
          "MIB.IETF|MPLS-TE-MIB.MPLSTunnelLastPathChange"} ]
   uint32 TunnelLastPathChange;

      [Description (
          "Specifies the number of times the operational status of "
          "this tunnel has changed."), 
       Counter, 
       MappingStrings { 
          "MIB.IETF|MPLS-TE-MIB.MPLSTunnelStateTransitions"} ]
   uint32 TunnelStateTransitions;

      [Description (
          "This value identifies the total time for which the the "
          "OperationalStatus of the tunnel is up (i.e., \"OK\"=2)."), 
       Units ("Hundredths of a Second"), Counter, 
       MappingStrings { 
          "MIB.IETF|MPLS-TE-MIB.MPLSTunnelInstanceUpTime"} ]
   uint32 TunnelInstanceUpTime;
};


// ==================================================================
// MPLSPerformance
// ==================================================================
   [Experimental, Version ("2.7.1000"), Description (
       "This class contains performance information for MPLS entities "
       "such as an MPLS Endpoint or LSP Tunnel.  The statistics are "
       "associated with the MPSL entity, using the general "
       "CIM_ElementStatisticalData relationship.") ]
class CIM_MPLSPerformance: CIM_StatisticalData {

      [Description (
          "Denotes the number of packets lost."), 
       Counter ]
   uint32 NumberOfPacketsLost;

      [Description (
          "Denotes the number of packets successfully transmitted."), 
       Counter ]
   uint32 NumberOfPacketsTransmitted;

      [Description (
          "Denotes the number of octets transmitted."), 
       Counter ]
   uint32 NumberOfOctets;

      [Description (
          "Denotes the average delay of the packets transmitted in "
          "milliseconds."), 
       Units ("MilliSeconds"), Gauge ]
   uint16 Delay;

      [Description (
          "Denotes availability in hundredths of a percent."), 
       Units ("Hundredths of Percent"), MinValue (0), MaxValue (100000) ]
   uint16 Availability;
};


// ==================================================================
// MPLSSegment
// ==================================================================
   [Experimental, Abstract, Version ("2.7.1000"), Description (
       "This class is abstract, and generalizes the notion of incoming "
       "and outgoing MPLS segments on an "
       "interface/MPLSProtocolEndpoint.  (Both In and Out Segment "
       "subclasses are derived from MPLSSegment.) An instance is "
       "defined in the context of an MPLSProtocolEndpoint.  This is "
       "specified using the association, CIM_MPLSSegmentOnProtocolEP.") ]
class CIM_MPLSSegment : CIM_LogicalElement {

      [Key, Description (
          "InstanceID opaquely identifies a unique instance of "
          "MPLSSegment.  The InstanceID must be unique within a "
          "namespace.  In order to ensure uniqueness, the value of "
          "InstanceID should be constructed in the following manner:\n"
          "<ID of the MPLSProtocolEndpoint>.<InLabel or TopLabel>") ]
   string InstanceID;

      [Description (
          "Denotes the entity that created and is responsible for "
          "managing this Segment.  Note that the MappingString is "
          "depending on the instantiated class and corresponds to "
          "InSegmentOwner or OutSegmentOwner."), 
       ValueMap {"0", "1", "2", "3", "4", "5", "6", "7"}, 
       Values {"Unknown", "Other", "SNMP", "LDT", "RSVP", "CR-LDP",
          "Policy Agent", "CLI"}, 
       MappingStrings {"MIB.IETF|MPLS-LSR-MIB.MPLSInSegmentOwner",
          "MIB.IETF|MPLS-LSR-MIB.MPLSIOutSegmentOwner"}, 
       ModelCorrespondence {"CIM_MPLSSegment.OtherOwner"} ]
   uint16 SegmentOwner;

      [Description (
          "If property SegmentOwner has a value 1 (\"Other\"), this "
          "property contains a string explaining the entity that "
          "created and manages the Segment."), 
       ModelCorrespondence {"CIM_MPLSSegment.SegmentOwner"} ]
   string OtherOwner;
};


// ==================================================================
// MPLSSegmentStats
// ==================================================================
   [Experimental, Version ("2.7.1000"), Description (
       "The class represents the statistics for an In or Out "
       "MPLSSegment.  The statistics are associated to the Segment "
       "using the relationship CIM_ElementStatisticalData.") ]
class CIM_MPLSSegmentStats : CIM_StatisticalData {

      [Description (
          "This value represents the total number of octets "
          "received/sent by this Segment.  Whether it denotes In or "
          "Out Segments depends on the instance associated with "
          "MPLSSegmentStats."), 
       Counter, 
       MappingStrings {"MIB.IETF|MPLS-LSR-MIB.MPLSInSegmentOctets",
          "MIB.IETF|MPLS-LSR-MIB.MPLSIOutSegmentOctets"} ]
   uint32 NumberOfOctets;

      [Description (
          "Total number of packets received/sent by this Segment.  "
          "Whether this value denotes In or Out Segments depends on "
          "the instance associated with MPLSSegmentStats."), 
       Counter, 
       MappingStrings {"MIB.IETF|MPLS-LSR-MIB.MPLSInSegmentPackets",
          "MIB.IETF|MPLS-LSR-MIB.MPLSOutSegmentPackets"} ]
   uint32 NumberOfPackets;

      [Description (
          "The number of errored packets received/sent on this "
          "Segment.  Whether this value denotes In or Out Segments "
          "depends on the instance associated with MPLSSegmentStats."), 
       Counter, 
       MappingStrings {"MIB.IETF|MPLS-LSR-MIB.MPLSInSegmentErrors",
          "MIB.IETF|MPLS-LSR-MIB.MPLSIOutSegmentErrors"} ]
   uint32 NumberOfErrors;

      [Description (
          "The number of labeled packets received/sent on this "
          "Segment, which were chosen to be discarded even though no "
          "errors had been detected to prevent their being "
          "transmitted.  One possible reason for discarding such a "
          "labeled packet could be to free up buffer space.  Whether "
          "this value denotes In or Out Segments depends on the "
          "instance associated with MPLSSegmentStats."), 
       Counter, 
       MappingStrings {"MIB.IETF|MPLS-LSR-MIB.MPLSInSegmentDiscards",
          "MIB.IETF|MPLS-LSR-MIB.MPLSIOutSegmentDiscards"} ]
   uint32 NumberOfDiscards;
};


// ==================================================================
// MPLSInSegment
// ==================================================================
   [Experimental, Version ("2.7.1000"), Description (
       "This class represents an incoming Segment on an MPLS "
       "interface.") ]
class CIM_MPLSInSegment : CIM_MPLSSegment {

      [Required, Description (
          "The incoming label for this segment."), 
       MappingStrings {"MIB.IETF|MPLS-LSR-MIB.MPLSInSegmentLabel"} ]
   uint32 InLabel;

      [Description (
          "The number of labels to pop from the incoming packet.  "
          "Normally only the top label is popped from the packet, and "
          "used for all switching decisions.  Note that technologies "
          "which do not support label popping should leave this value "
          "at its default (1)."), 
       MappingStrings {"MIB.IETF|MPLS-LSR-MIB.MPLSInSegmentNPop"} ]
   uint32 NPop = 1;

      [Description (
          "Describes the address type expected on the incoming "
          "Segment.  This is used when the last label is popped to "
          "know to which IP stack the packet is forwarded."), 
       ValueMap {"0", "1", "2"}, 
       Values {"Unknown", "IPv4", "IPv6"}, 
       MappingStrings {"MIB.IETF|MPLS-LSR-MIB.MPLSInSegmentAddrFamily"} ]
   uint16 AddressType;
};


// ==================================================================
// MPLSOutSegment
// ==================================================================
   [Experimental, Version ("2.7.1000"), Description (
       "This class represents an outgoing Segment on an MPLS "
       "interface.") ]
class CIM_MPLSOutSegment : CIM_MPLSSegment {

      [Description (
          "This value indicates whether or not a top label should be "
          "pushed onto the outgoing packet's label stack.  The value "
          "of this variable must be set to true if the outgoing "
          "interface does not support pop- and-go (for example an ATM "
          "interface) or if it is a tunnel origination."), 
       MappingStrings { 
          "MIB.IETF|MPLS-LSR-MIB.MPLSOutSegmentPushTopLabel"} ]
   boolean PushTopLabel = true;

      [Required, Description (
          "If the property, PushTopLabel, is true then this represents "
          "the label that should be pushed onto the top of the "
          "outgoing packet's label stack.  If PushTopLabel is false, "
          "then the value should be 0."), 
       MappingStrings { "MIB.IETF|MPLS-LSR-MIB.MPLSOutSegmentTopLabel"}, 
       ModelCorrespondence {"CIM_MPLSOutSegment.PushTopLabel"} ]
   uint32 TopLabel;
};


// ==================================================================
// MPLSCrossConnect
// ==================================================================
   [Experimental, Version ("2.7.1000"), Description (
       "This class specifies information for switching between "
       "Segments within a LSR.  It is scoped by a Computer System, "
       "that is the Label Switched Router, via the HostedService "
       "association.  Specific In/Out Segments are associated with the "
       "cross-connect using the relationship, MPLSSegmentInXC.  The "
       "service can support point-to-point, point-to-multipoint and "
       "multipoint-to-point connections by defining multiple instances "
       "of the association.  CrossConnect Services can be aggregated "
       "into an overarching MPLSService using the CIM_ServiceComponent "
       "association.  And, the LSP to which the CrossConnect belongs "
       "is indicated by the association, CrossConnectLSP.") ]
class CIM_MPLSCrossConnect : CIM_Service {

      [Description (
          "Denotes whether or not this CrossConnect entry and "
          "associated In and Out Segments should be restored "
          "automatically after failures."), 
       MappingStrings {"MIB.IETF|MPLS-LSR-MIB.MPLSXCIsPersistent"} ]
   boolean IsPersistent;

      [Description (
          "Identifies a stack of labels to be pushed beneath the top "
          "label.  Note that the top label identified in an instance "
          "of OutSegment ensures that all the components of a "
          "multipoint-to-point connection have the same outgoing "
          "label.  This array is 'Ordered' to maintain the sequence of "
          "entries."), 
       ArrayType ("Ordered") ]
   uint16 LabelStack[];
};


// ==================================================================
// MPLSQosPRTrfcProf
// ==================================================================
   [Experimental, Version ("2.7.1000"), Description (
       "A QoS traffic profile, which is associated to an LSP when QoS "
       "is guaranteed.  The association ElementSetting ties the "
       "Setting to the LSP.") ]
class CIM_MPLSQosPRTrfcProf : CIM_SettingData {

      [Description (
          "The peak traffic rate in kilobits per second."), 
       Units ("KiloBits per Second") ]
   uint32 PRRate;

      [Description (
          "Traffic burst size in bytes."), 
       Units ("Bytes") ]
   uint16 PRNormalBurst;

      [Description (
          "Traffic excess burst in bytes."), 
       Units ("Bytes") ]
   uint16 PRExcessBurst;
};


// ==================================================================
// MPLSCRLSPTrfcProf
// ==================================================================
   [Experimental, Version ("2.7.1000"), Description (
       "Class to represent the Constraint-based Routed LSP (CR-LSP) "
       "traffic parameters as specified in [RFC3212].") ]
class CIM_MPLSCRLSPTrfcProf : CIM_MPLSQosPRTrfcProf {

      [Description (
          "Property to indicate at what granularity the CDR (allocated "
          "to the CR-LSP) is made available."), 
       ValueMap {"0", "1", "2"}, 
       Values {"Unspecified", "Frequently", "Very Frequently"} ]
   uint16 CRLSPFrequency;

      [Description (
          "Property to indicate the CR-LSP's relative share (in "
          "percent) of the possible excess bandwidth above its "
          "committed rate."), 
       Units ("Percent"), MinValue (0), MaxValue (100) ]
   uint8 CRLSPWeight;

      [Description (
          "Property to indicate the CR-LSP's committed data rate in "
          "bytes per second."), 
       Units ("Bytes per Second") ]
   uint16 CRLSPCommitedDataRate;

      [Description (
          "Property to indicate the CR-LSP's committed burst size in "
          "bytes."), 
       Units ("Bytes") ]
   uint16 CRLSPCommitedBurstSize;
};


// ==================================================================
// MPLSSegmentOnProtocolEP
// ==================================================================
   [Association, Experimental, Version ("2.7.1000"), Description (
       "An MPLSSegment is defined in the context of an MPLS Endpoint.  "
       "This association makes that relationship explicit.") ]
class CIM_MPLSSegmentOnProtocolEP : CIM_Dependency {

      [Override ("Antecedent"), Min (1), Max (1), Description (
          "The MPLSProtocolEndpoint which scopes the Segment.") ]
   CIM_MPLSProtocolEndpoint REF Antecedent;

      [Override ("Dependent"), Description (
          "An MPLSSegment on the ProtocolEndpoint.") ]
   CIM_MPLSSegment REF Dependent;
};


// ==================================================================
// MPLSSegmentInXC
// ==================================================================
   [Association, Experimental, Version ("2.7.1000"), Description (
       "Defines the association between an In or Out Segment and a "
       "CrossConnect Service.  The Segment is dependent on the Cross "
       "Connect for switching within the LSR.") ]
class CIM_MPLSSegmentInXC : CIM_Dependency {

      [Override ("Antecedent"), Description (
          "The MPLSCrossConnect.") ]
   CIM_MPLSCrossConnect REF Antecedent;

      [Override ("Dependent"), Description (
          "An MPLSSegment dependent on the CrossConnect for "
          "switching.") ]
   CIM_MPLSSegment REF Dependent;
};


// ==================================================================
// MPLSFilterAtXC
// ==================================================================
   [Association, Experimental, Version ("2.7.1000"), Description (
       "The association denotes a filter list defining what traffic is "
       "mapped into the CrossConnect Service.  A filter list is "
       "associated with the CrossConnect at the originating LSR.") ]
class CIM_MPLSFilterAtXC : CIM_Dependency {

      [Override ("Antecedent"), Max (1), Description (
          "A FilterList defining what traffic is mapped into the "
          "CrossConnect Service.") ]
   CIM_FilterList REF Antecedent;

      [Override ("Dependent"), Description (
          "The CrossConnect whose traffic is filtered.") ]
   CIM_MPLSCrossConnect REF Dependent;
};


// ==================================================================
// MPLSCurrentlyAssignedLSP
// ==================================================================
   [Association, Experimental, Version ("2.7.1000"), Description (
       "Associates a traffic trunk with an LSP that is currently "
       "carrying its traffic.") ]
class CIM_MPLSCurrentlyAssignedLSP : CIM_Dependency {

      [Override ("Antecedent"), Description (
          "The LSP carrying the traffic of the trunk.") ]
   CIM_MPLSLSP REF Antecedent;

      [Override ("Dependent"), Description (
          "The MPLSTrafficTrunk which is signaling using the LSP.") ]
   CIM_MPLSTunnel REF Dependent;

      [Description (
          "The preference for the use of the LSP, if more than one LSP "
          "is available to a trunk.  Possible values are 0 to 7, with "
          "7 indicating the highest preference."), 
       MinValue (0), MaxValue (7) ]
   uint16 Preference;

      [Write, Description (
          "This property is used to indicate the relative proportion "
          "of traffic to be carried by parallel LSPs, specified as a "
          "percentage from 0 to 100.  The value is defined by the "
          "network user/administrator to indicate how a LSPtunnel's "
          "bandwidth should be set on a router.  It allows load "
          "distribution across multiple parallel LSP tunnels, between "
          "two nodes.  Quoting from RFC2702, 'In many practical "
          "situations, the aggregate traffic between two nodes may be "
          "such that no single link can carry the load.  In this case, "
          "the only feasible solution is to appropriately divide the "
          "aggregate traffic into sub-streams and route the "
          "sub-streams through multiple paths between the two nodes.  "
          "This problem can be addressed by instantiating multiple LSP "
          "tunnels between the two nodes, such that each traffic trunk "
          "carries a proportion of the aggregate traffic.' The "
          "proportion of traffic carried by each such LSP tunnel is "
          "specified by the TrafficProportion property."), 
       Units ("Percent"), MinValue (0), MaxValue (100) ]
   uint8 TrafficProportion;
};


// ==================================================================
// MPLSBackupLSP
// ==================================================================
   [Association, Experimental, Version ("2.7.1000"), Description (
       "Identifies an LSP as a backup LSP for a traffic trunk.") ]
class CIM_MPLSBackupLSP : CIM_Dependency {

      [Override ("Antecedent"), Description (
          "The backup LSP for the traffic trunk.") ]
   CIM_MPLSLSP REF Antecedent;

      [Override ("Dependent"), Description (
          "The traffic trunk using the LSP for backup.") ]
   CIM_MPLSTunnel REF Dependent;

      [Description (
          "The preference for the use of the LSP, if more than one LSP "
          "is available to a trunk.  Possible values are 0 to 7, with "
          "7 indicating the highest preference."), 
       MinValue (0), MaxValue (7) ]
   uint16 Preference;
};


// ==================================================================
// MPLSLSPInLSP
// ==================================================================
   [Association, Experimental, Aggregation, Composition,
    Version ("2.7.1000"), Description (
       "Defines the nesting relationship of LSPs within LSPs.  "
       "Arbitrary hierarchies of LSPs are possible.") ]
class CIM_MPLSLSPInLSP : CIM_Component {

      [Aggregate, Override ("GroupComponent"), Description (
          "The higher-level LSP containing another LSP.") ]
   CIM_MPLSLSP REF GroupComponent;

      [Override ("PartComponent"), Description (
          "The LSP that is nested in the one referenced as "
          "GroupComponent.") ]
   CIM_MPLSLSP REF PartComponent;
};


// ==================================================================
// MPLSCrossConnectLSP
// ==================================================================
   [Association, Experimental, Version ("2.7.1000"), Description (
       "Defines the LSP to which the CrossConnect belongs.") ]
class CIM_MPLSCrossConnectLSP : CIM_Dependency {

      [Override ("Antecedent"), Max (1), Description (
          "The LSP.") ]
   CIM_MPLSLSP REF Antecedent;

      [Override ("Dependent"), Description (
          "The CrossConnect belonging to the LSP.") ]
   CIM_MPLSCrossConnect REF Dependent;

      [Description (
          "The XcType property defines whether a CrossConnect is at "
          "the terminating end (\"Term\", 1), or originating end "
          "(\"Orig\", 2) of an LSP.  A value of 4, \"Normal\", "
          "indicates the CrossConnect is switching through an LSP on "
          "an intermediate node.  A value of 3, \"Special\", implies a "
          "terminating LSP for special traffic, e.g.  signaling "
          "neighbor discovery, etc.  Reserved MPLS labels with values "
          "0 through 15 are used."), 
       ValueMap {"1", "2", "3", "4"}, 
       Values {"Term", "Orig", "Special", "Normal"} ]
   uint16 XcType;

      [Description (
          "This property defines the order of the CrossConnects in an "
          "LSP.  An incrementally higher number indicates the next "
          "Cross Connect in the ordered sequence.  Note that the first "
          "CrossConnect must be of type 'Orig', and the last of type "
          "'Term' (see the property, XcType).") ]
   uint16 XcOrder;
};


// ===================================================================
// end of file
// ===================================================================

No CVS admin address has been configured
Powered by
ViewCVS 0.9.2