Device\CIM_SCSIMultipathConfigurationCapabilities.mof.mof (HTML version)

Return to index
CIM_SCSIMultipathConfigurationCapabilities Superclass: CIM_Capabilities
A class derived from CIM_Capabilities that models the capabilities of a multipath driver. Note that 'path' in this context refers to end-to-end device paths (for example, SCSI initiator/target) with no understanding of edge paths between interconnect elements such as switches. Load balancing only applies to symmetric multipath devices or to the ports in SCSITargetPortGroups in active access state.
A driver may support different algorithms for load balancing. A few common algorithms are listed. Algorithms for specific device models and software vendor specific algorithms are also accommodated.

An instance of this capabilities class MUST be instantiated whenever SCSIPathConfigurationService is instantiated and they MUST be assocaited one to one using ElementCapabilities. Multiple instances of the service/acapabilities pair MAY exist if multiple multipath drivers are installed. Each LogicalDevice subclass served by the underlying multipath driver is associated to the associated Service instance via ServiceAvailableToELement.
Qualifiers:Experimental Version ( "2.10.0" )
Parameters (local in grey)
MappingStrings { "MP_API.SNIA|MP_PLUGIN_PROPERTIES|pollingRateMax" }
uint32 PollingRateMax ;
The maximum polling rate (in seconds) supported by the driver. A value of zero indicates the driver/plugin does not support polling. This maximum applies to both BadPathPollingRate and InactivePathPollingRate.
MappingStrings { "MP_API.SNIA|MP_PLUGIN_PROPERTIES|maximumWeight" }
uint32 MaximumWeight ;
Describes the range of administer settable path weights supported by the driver. A driver with no path preference capabilities should set this property to zero. A driver with the ability to enable/disable paths should set this property to 1. Drivers with more weight settings can set the property appropriately.
ModelCorrespondence { "CIM_SCSIMultipathConfigurationCapabilities." "SupportedLoadBalanceTypes" , "CIM_SCSIMultipathConfigurationCapabilities." "OtherSupportedLoadBalanceVendorNames" }
MappingStrings { "SPC.INCITS-T10 |Standard Inquiry Response" , "MP_API.SNIA|MP_LOAD_BALANCE_TYPE" , "MP_API.SNIA|MP_DEVICE_PRODUCT_PROPERTIES" }
ArrayType ( "Indexed" )
string OtherSupportedLoadBalanceAlgorithmNames [ ] ;
When the corresponding array entry in SupportedLoadBalanceTypes[] is 'Other', this entry provides a string describing the load balancing algorithm. When the corresponding array entry in SupportedLoadBalanceTypes[] is 'Product Specific', this entry provides a string specifying the SCSI vendor/product/revision and must be formatted as exactly 28 ASCII characters - 8 for vendor, 16 for product, and 4 for revision (see SCSI SPC Inquiry response)
ModelCorrespondence { "CIM_SCSIMultipathConfigurationCapabilities.AutofailbackSupport" , "CIM_SCSIMultipathSettings.AutofailbackEnabled" }
MappingStrings { "MP_API.SNIA|MP_PLUGIN_PROPERTIES|autoFailbackEnabled" }
boolean AutoFailbackEnabled ;
A Boolean indicating that autofailback is enabled to all logical units associated to the CIM_SCSIPathConfigurationService associated with this capabilities instance (unless overridden by CIM_SCSIMultipathSettings AutoFailbackEnabled.
MaxLen ( 256 )
MappingStrings { "MP_API.SNIA|MP_PLUGIN_PROPERTIES|deviceNameFilespace" }
string DeviceNameFilespace ;
A string representing the primary file names the driver uses for multipath logical units, if those filenames do not match the names in Logical Unit osDeviceName as documented in Appendix A of the SNIA MP API specification. The name is expressing in the following format:
'*' represents one or more alphanumeric characters
'#' represents a string of consecutive digits
'%' represents a string of hexadecimal digits
backslash is an escape character for literal presentation of *, #, or %. Any other character is interpreted literally. For example, '/dev/vx/dmp/*'. If the multipath driver creates multipath logical unit device file names in the same namespace as the OS then this property should be left null.
ModelCorrespondence { "CIM_SCSIMultipathConfigurationCapabilities." "SupportedLoadBalanceTypes" }
MappingStrings { "MP_API.SNIA|MP_PLUGIN_PROPERTIES|deviceNameFilespace" }
boolean OnlySupportsSpecifiedProducts = false ;
True if the only supported device types are those described in aggregated CIM_Product instances as described in the description of SupportedLoadBalanceTypes.
ModelCorrespondence { "CIM_SCSIPathConfigurationService.SetOverridePath" }
MappingStrings { "MP_API.SNIA|MP_PLUGIN_PROPERTIES|canOverridePaths" }
boolean CanOverridePaths = false ;
The capability of the driver to support the SetOverridePath and CancelOverridePaths methods. True if the implementation supports path overrides.
Values { "Unknown" , "Other" , "No Load Balancing" , "Round Robin" , "Least Blocks" , "Least IO" , "Product Specific" }
Write
ValueMap { "0" , "1" , "2" , "3" , "4" , "5" , "6" }
MappingStrings { "MP_API.SNIA|MP_PLUGIN_PROPERTIES|defaultLoadBalanceType" }
uint16 DefaultLoadBalanceType ;
The load balance types supported by the driver if not overridden by an administrative action.
ModelCorrespondence { "CIM_SCSIPathConfigurationService.SetTPGAccess" }
MappingStrings { "MP_API.SNIA|MP_PLUGIN_PROPERTIES|canSetTPGAccess" }
boolean CanSetTPGAccess = false ;
The capability of the driver to support the SetTPGAccess method. True if the implementation supports activating target port groups.
ModelCorrespondence { "CIM_SCSIMultipathConfigurationCapabilities." "SupportedLoadBalanceTypes" , "CIM_SCSIMultipathConfigurationCapabilities." "OtherSupportedLoadBalanceAlgorithmNames" }
MappingStrings { "MP_API.SNIA|MP_LOAD_BALANCE_TYPE" }
ArrayType ( "Indexed" )
string OtherSupportedLoadBalanceVendorNames [ ] ;
When the corresponding array entry in SupportedLoadBalanceTypes[] is 'Other', this entry provides a string describing the vendor associated with the load balancing algorithm.
Values { "Unknown" , "Other" , "No Load Balancing" , "Round Robin" , "Least Blocks" , "Least IO" , "LBA Region" , "Product Specific" }
ModelCorrespondence { "CIM_SCSIMultipathConfigurationCapabilities." "OtherSupportedLoadBalanceAlgorithmNames" , "CIM_SCSIMultipathConfigurationCapabilities." "OtherSupportedLoadBalanceVendorNames" }
ValueMap { "0" , "1" , "2" , "3" , "4" , "5" , "6" , "7" }
MappingStrings { "MP_API.SNIA|MP_LOAD_BALANCE_TYPE" }
ArrayType ( "Indexed" )
uint16 SupportedLoadBalanceTypes [ ] ;
The load balance types supported by the driver for all logical units on a target device. If 'Product Specified' is included, one or more instances of CIM_Product must be aggregated to the capabilities instance via ConcreteComponent. Each Product instance provides the SCSI Vendor, Product, and Revision ID of a supported product.
MappingStrings { "MP_API.SNIA|Plugin " "Properties|exposesPathDeviceFiles" }
boolean ExposesPathDeviceFiles ;
False if the MP drivers assure only a single device file name (e.g. /dev/dsk/...) exists for each MP device. True if the implementation exposes (or leaves exposed) device files for the individual paths encapsulated by the multipath device file. This is typically true for MP drivers that sit near the top of the driver stack and false for transport drivers at the bottom of the stack.
Values { "Unknown" , "No Autofailback support" , "Autofailback support service-wide" , "Autofailback support per logical unit" , "Autofailback support per service or logical unit" }
ModelCorrespondence { "CIM_SCSIMultipathConfigurationCapabilities.AutofailbackEnabled" , "CIM_SCSIMultipathSettings.AutofailbackEnabled" }
ValueMap { "0" , "2" , "3" , "4" , "5" }
MappingStrings { "MP_API.SNIA|MP_PLUGIN_PROPERTIES|autofailbackSupport" }
uint16 AutofailbackSupport ;
Specifies whether the implementation supports auto-failback (to re-enable paths that revert to a good state) at the plugin level, the multipath logical unit level, both levels or whether auto-failback is unsupported.
Write
MappingStrings { "MP_API.SNIA|MP_PLUGIN_PROPERTIES|currentPollingRate" }
uint32 CurrentPollingRate ;
The current rate in seconds. Only valid when pollingRateMax is greater than 0 and canAutoFailback are true.
Required
Override ( "ElementName" )
string ElementName ;
The user friendly name for this instance of Capabilities. In addition, the user friendly name can be used as a index property for a search of query. (Note: Name does not have to be unique within a namespace.)
Experimental
Values { "Success" , "Not Supported" , "Unknown" , "Timeout" , "Failed" , "Invalid Parameter" , "Alternative Proposed" , "DMTF Reserved" , "Vendor Specific" }
ValueMap { "0" , "1" , "2" , "3" , "4" , "5" , "6" , ".." , "32768..65535" }
uint16CreateGoalSettings(
If provided, TemplateGoalSettings are elements of class CIM_SettingData, or a derived class, that is used as the template to be matched. .
At most, one instance of each SettingData subclass may be supplied.
All SettingData instances provided by this property are interpreted as a set, relative to this Capabilities instance.
SettingData instances that are not relevant to this instance are ignored.
If not provided, it shall be set to NULL. In that case, a SettingData instance representing the default settings of the associated ManagedElement is used.

Qualifiers:IN EmbeddedInstance ( "CIM_SettingData" )
string TemplateGoalSettings [ ]
SupportedGoalSettings are elements of class CIM_SettingData, or a derived class.
At most, one instance of each SettingData subclass may be supplied.
All SettingData instances provided by this property are interpreted as a set, relative to this Capabilities instance.

To enable a client to provide additional information towards achieving the TemplateGoalSettings, an input set of SettingData instances may be provided. If not provided, this property shall be set to NULL on input.. Note that when provided, what property values are changed, and how, is implementation dependent and may be the subject of other standards.
If provided, the input SettingData instances must be ones that the implementation is able to support relative to the ManagedElement associated via ElementCapabilities. Typically, the input SettingData instances are created by a previous instantiation of CreateGoalSettings.
If the input SupportedGoalSettings is not supported by the implementation, then an 'Invalid Parameter' (5) error is returned by this call. In this case, a corresponding CIM_ERROR should also be returned.
On output, this property is used to return the best supported match to the TemplateGoalSettings.
If the output SupportedGoalSettings matches the input SupportedGoalSettings, then the implementation is unable to improve further towards meeting the TemplateGoalSettings.

Qualifiers:OUT IN EmbeddedInstance ( "CIM_SettingData" )
string SupportedGoalSettings [ ]
)
Method to create a set of supported SettingData elements, from two sets of SettingData elements, provided by the caller.
CreateGoal should be used when the SettingData instances that represents the goal will not persist beyond the execution of the client and where those instances are not intended to be shared with other, non-cooperating clients.
Both TemplateGoalSettings and SupportedGoalSettings are represented as strings containing EmbeddedInstances of a CIM_SettingData subclass. These embedded instances do not exist in the infrastructure supporting this method but are maintained by the caller/client.
This method should return CIM_Error(s) representing that a single named property of a setting (or other) parameter (either reference or embedded object) has an invalid value or that an invalid combination of named properties of a setting (or other) parameter (either reference or embedded object) has been requested.
If the input TemplateGoalSettings is NULL or the empty string, this method returns a default SettingData element that is supported by this Capabilities element.
If the TemplateGoalSettings specifies values that cannot be supported, this method shall return an appropriate CIM_Error and should return a best match for a SupportedGoalSettings.
The client proposes a goal using the TemplateGoalSettings parameter and gets back Success if the TemplateGoalSettings is exactly supportable. It gets back 'Alternative Proposed' if the output SupportedGoalSettings represents a supported alternative. This alternative should be a best match, as defined by the implementation.
If the implementation is conformant to a RegisteredProfile, then that profile may specify the algorithms used to determine best match. A client may compare the returned value of each property against the requested value to determine if it is left unchanged, degraded or upgraded.

Otherwise, if the TemplateGoalSettings is not applicable an 'Invalid Parameter' error is returned.

When a mutually acceptable SupportedGoalSettings has been achieved, the client may use the contained SettingData instances as input to methods for creating a new object ormodifying an existing object. Also the embedded SettingData instances returned in the SupportedGoalSettings may be instantiated via CreateInstance, either by a client or as a side-effect of the execution of an extrinsic method for which the returned SupportedGoalSettings is passed as an embedded instance.
Key
string InstanceID ;
Within the scope of the instantiating Namespace, InstanceID opaquely and uniquely identifies an instance of this class. In order to ensure uniqueness within the NameSpace, the value of InstanceID SHOULD be constructed using the following 'preferred' algorithm:
<OrgID>:<LocalID>
Where <OrgID> and <LocalID> are separated by a colon ':', and where <OrgID> MUST include a copyrighted, trademarked or otherwise unique name that is owned by the business entity creating/defining the InstanceID, or is a registered ID that is assigned to the business entity by a recognized global authority (This is similar to the <Schema Name>_<Class Name> structure of Schema class names.) In addition, to ensure uniqueness <OrgID> MUST NOT contain a colon (':'). When using this algorithm, the first colon to appear in InstanceID MUST appear between <OrgID> and <LocalID>.
<LocalID> is chosen by the business entity and SHOULD not be re-used to identify different underlying (real-world) elements. If the above 'preferred' algorithm is not used, the defining entity MUST assure that the resultant InstanceID is not re-used across any InstanceIDs produced by this or other providers for this instance's NameSpace.
For DMTF defined instances, the 'preferred' algorithm MUST be used with the <OrgID> set to 'CIM'.
MaxLen ( 64 )
string Caption ;
The Caption property is a short textual description (one- line string) of the object.
string Description ;
The Description property provides a textual description of the object.